12345678910111213141516171819202122232425262728293031323334 |
- /* SPDX-License-Identifier: GPL-2.0-only */
- /*
- * Interrupt bottom half (BH).
- *
- * Copyright (c) 2017-2020, Silicon Laboratories, Inc.
- * Copyright (c) 2010, ST-Ericsson
- */
- #ifndef WFX_BH_H
- #define WFX_BH_H
- #include <linux/atomic.h>
- #include <linux/wait.h>
- #include <linux/completion.h>
- #include <linux/workqueue.h>
- struct wfx_dev;
- struct wfx_hif {
- struct work_struct bh;
- struct completion ctrl_ready;
- wait_queue_head_t tx_buffers_empty;
- atomic_t ctrl_reg;
- int rx_seqnum;
- int tx_seqnum;
- int tx_buffers_used;
- };
- void wfx_bh_register(struct wfx_dev *wdev);
- void wfx_bh_unregister(struct wfx_dev *wdev);
- void wfx_bh_request_rx(struct wfx_dev *wdev);
- void wfx_bh_request_tx(struct wfx_dev *wdev);
- void wfx_bh_poll_irq(struct wfx_dev *wdev);
- #endif
|