Lines Matching refs:mdev
28 struct mt76_dev *mdev = container_of(sdio, struct mt76_dev, sdio); in mt7921s_txrx_worker() local
29 struct mt7921_dev *dev = container_of(mdev, struct mt7921_dev, mt76); in mt7921s_txrx_worker()
32 queue_work(mdev->wq, &dev->pm.wake_work); in mt7921s_txrx_worker()
125 struct mt76_dev *mdev; in mt7921s_probe() local
128 mdev = mt76_alloc_device(&func->dev, sizeof(*dev), &mt7921_ops, in mt7921s_probe()
130 if (!mdev) in mt7921s_probe()
133 dev = container_of(mdev, struct mt7921_dev, mt76); in mt7921s_probe()
138 ret = mt76s_init(mdev, func, &mt7921s_ops); in mt7921s_probe()
142 ret = mt76s_hw_init(mdev, func, MT76_CONNAC2_SDIO); in mt7921s_probe()
146 mdev->rev = (mt76_rr(dev, MT_HW_CHIPID) << 16) | in mt7921s_probe()
148 dev_dbg(mdev->dev, "ASIC revision: %04x\n", mdev->rev); in mt7921s_probe()
150 mdev->sdio.parse_irq = mt7921s_parse_intr; in mt7921s_probe()
151 mdev->sdio.intr_data = devm_kmalloc(mdev->dev, in mt7921s_probe()
154 if (!mdev->sdio.intr_data) { in mt7921s_probe()
159 ret = mt76s_alloc_rx_queue(mdev, MT_RXQ_MAIN); in mt7921s_probe()
163 ret = mt76s_alloc_rx_queue(mdev, MT_RXQ_MCU); in mt7921s_probe()
167 ret = mt76s_alloc_tx(mdev); in mt7921s_probe()
171 ret = mt76_worker_setup(mt76_hw(dev), &mdev->sdio.txrx_worker, in mt7921s_probe()
176 sched_set_fifo_low(mdev->sdio.txrx_worker.task); in mt7921s_probe()
203 struct mt76_dev *mdev = &dev->mt76; in mt7921s_suspend() local
207 set_bit(MT76_STATE_SUSPEND, &mdev->phy.state); in mt7921s_suspend()
220 mt76_connac_mcu_set_deep_sleep(mdev, true); in mt7921s_suspend()
223 mt76_worker_disable(&mdev->tx_worker); in mt7921s_suspend()
224 mt76_worker_disable(&mdev->sdio.status_worker); in mt7921s_suspend()
225 cancel_work_sync(&mdev->sdio.stat_work); in mt7921s_suspend()
227 mt76_tx_status_check(mdev, true); in mt7921s_suspend()
229 mt76_worker_schedule(&mdev->sdio.txrx_worker); in mt7921s_suspend()
234 err = mt76_connac_mcu_set_hif_suspend(mdev, true); in mt7921s_suspend()
238 mt76_worker_disable(&mdev->sdio.txrx_worker); in mt7921s_suspend()
239 mt76_worker_disable(&mdev->sdio.net_worker); in mt7921s_suspend()
250 mt76_worker_enable(&mdev->sdio.net_worker); in mt7921s_suspend()
251 mt76_worker_enable(&mdev->sdio.txrx_worker); in mt7921s_suspend()
252 mt76_connac_mcu_set_hif_suspend(mdev, false); in mt7921s_suspend()
255 mt76_worker_enable(&mdev->tx_worker); in mt7921s_suspend()
256 mt76_worker_enable(&mdev->sdio.status_worker); in mt7921s_suspend()
259 mt76_connac_mcu_set_deep_sleep(mdev, false); in mt7921s_suspend()
262 clear_bit(MT76_STATE_SUSPEND, &mdev->phy.state); in mt7921s_suspend()
276 struct mt76_dev *mdev = &dev->mt76; in mt7921s_resume() local
279 clear_bit(MT76_STATE_SUSPEND, &mdev->phy.state); in mt7921s_resume()
285 mt76_worker_enable(&mdev->tx_worker); in mt7921s_resume()
286 mt76_worker_enable(&mdev->sdio.txrx_worker); in mt7921s_resume()
287 mt76_worker_enable(&mdev->sdio.status_worker); in mt7921s_resume()
288 mt76_worker_enable(&mdev->sdio.net_worker); in mt7921s_resume()
292 mt76_connac_mcu_set_deep_sleep(mdev, false); in mt7921s_resume()
294 err = mt76_connac_mcu_set_hif_suspend(mdev, false); in mt7921s_resume()