Lines Matching full:sdio

15 #include "../sdio.h"
27 struct mt76_sdio *sdio = container_of(w, struct mt76_sdio, in mt7921s_txrx_worker() local
29 struct mt76_dev *mdev = container_of(sdio, struct mt76_dev, sdio); in mt7921s_txrx_worker()
37 mt76s_txrx_worker(sdio); in mt7921s_txrx_worker()
59 struct mt76_sdio *sdio = &dev->sdio; in mt7921s_parse_intr() local
60 struct mt7921_sdio_intr *irq_data = sdio->intr_data; in mt7921s_parse_intr()
63 sdio_claim_host(sdio->func); in mt7921s_parse_intr()
64 err = sdio_readsb(sdio->func, irq_data, MCR_WHISR, sizeof(*irq_data)); in mt7921s_parse_intr()
65 sdio_release_host(sdio->func); in mt7921s_parse_intr()
157 mdev->sdio.parse_irq = mt7921s_parse_intr; in mt7921s_probe()
158 mdev->sdio.intr_data = devm_kmalloc(mdev->dev, in mt7921s_probe()
161 if (!mdev->sdio.intr_data) { in mt7921s_probe()
178 ret = mt76_worker_setup(mt76_hw(dev), &mdev->sdio.txrx_worker, in mt7921s_probe()
179 mt7921s_txrx_worker, "sdio-txrx"); in mt7921s_probe()
183 sched_set_fifo_low(mdev->sdio.txrx_worker.task); in mt7921s_probe()
233 mt76_worker_disable(&mdev->sdio.status_worker); in mt7921s_suspend()
234 mt76_worker_disable(&mdev->sdio.stat_worker); in mt7921s_suspend()
238 mt76_worker_schedule(&mdev->sdio.txrx_worker); in mt7921s_suspend()
239 wait_event_timeout(dev->mt76.sdio.wait, in mt7921s_suspend()
242 /* It is supposed that SDIO bus is idle at the point */ in mt7921s_suspend()
247 mt76_worker_disable(&mdev->sdio.txrx_worker); in mt7921s_suspend()
248 mt76_worker_disable(&mdev->sdio.net_worker); in mt7921s_suspend()
259 mt76_worker_enable(&mdev->sdio.net_worker); in mt7921s_suspend()
260 mt76_worker_enable(&mdev->sdio.txrx_worker); in mt7921s_suspend()
265 mt76_worker_enable(&mdev->sdio.status_worker); in mt7921s_suspend()
266 mt76_worker_enable(&mdev->sdio.stat_worker); in mt7921s_suspend()
296 mt76_worker_enable(&mdev->sdio.txrx_worker); in mt7921s_resume()
297 mt76_worker_enable(&mdev->sdio.status_worker); in mt7921s_resume()
298 mt76_worker_enable(&mdev->sdio.net_worker); in mt7921s_resume()
299 mt76_worker_enable(&mdev->sdio.stat_worker); in mt7921s_resume()
315 MODULE_DEVICE_TABLE(sdio, mt7921s_table);
329 MODULE_DESCRIPTION("MediaTek MT7921S (SDIO) wireless driver");