Lines Matching refs:btcvsd
15 #define BTCVSD_SND_NAME "mtk-btcvsd-snd"
1278 struct mtk_btcvsd_snd *btcvsd;
1281 /* init btcvsd private data */
1282 btcvsd = devm_kzalloc(dev, sizeof(*btcvsd), GFP_KERNEL);
1283 if (!btcvsd)
1285 platform_set_drvdata(pdev, btcvsd);
1286 btcvsd->dev = dev;
1289 btcvsd->rx = devm_kzalloc(btcvsd->dev, sizeof(*btcvsd->rx), GFP_KERNEL);
1290 if (!btcvsd->rx)
1293 btcvsd->tx = devm_kzalloc(btcvsd->dev, sizeof(*btcvsd->tx), GFP_KERNEL);
1294 if (!btcvsd->tx)
1297 spin_lock_init(&btcvsd->tx_lock);
1298 spin_lock_init(&btcvsd->rx_lock);
1300 init_waitqueue_head(&btcvsd->tx_wait);
1301 init_waitqueue_head(&btcvsd->rx_wait);
1303 mtk_btcvsd_snd_tx_init(btcvsd);
1304 mtk_btcvsd_snd_rx_init(btcvsd);
1313 (void *)btcvsd);
1319 btcvsd->irq_id = irq_id;
1322 btcvsd->bt_pkv_base = of_iomap(dev->of_node, 0);
1323 if (!btcvsd->bt_pkv_base) {
1328 btcvsd->bt_sram_bank2_base = of_iomap(dev->of_node, 1);
1329 if (!btcvsd->bt_sram_bank2_base) {
1335 btcvsd->infra = syscon_regmap_lookup_by_phandle(dev->of_node,
1337 if (IS_ERR(btcvsd->infra)) {
1339 PTR_ERR(btcvsd->infra));
1340 ret = PTR_ERR(btcvsd->infra);
1352 btcvsd->infra_misc_offset = offset[0];
1353 btcvsd->conn_bt_cvsd_mask = offset[1];
1354 btcvsd->cvsd_mcu_read_offset = offset[2];
1355 btcvsd->cvsd_mcu_write_offset = offset[3];
1356 btcvsd->cvsd_packet_indicator = offset[4];
1358 btcvsd->bt_reg_pkt_r = btcvsd->bt_pkv_base +
1359 btcvsd->cvsd_mcu_read_offset;
1360 btcvsd->bt_reg_pkt_w = btcvsd->bt_pkv_base +
1361 btcvsd->cvsd_mcu_write_offset;
1362 btcvsd->bt_reg_ctl = btcvsd->bt_pkv_base +
1363 btcvsd->cvsd_packet_indicator;
1366 mtk_btcvsd_snd_set_state(btcvsd, btcvsd->tx, BT_SCO_STATE_IDLE);
1367 mtk_btcvsd_snd_set_state(btcvsd, btcvsd->rx, BT_SCO_STATE_IDLE);
1377 iounmap(btcvsd->bt_sram_bank2_base);
1379 iounmap(btcvsd->bt_pkv_base);
1385 struct mtk_btcvsd_snd *btcvsd = dev_get_drvdata(&pdev->dev);
1387 iounmap(btcvsd->bt_pkv_base);
1388 iounmap(btcvsd->bt_sram_bank2_base);
1392 { .compatible = "mediatek,mtk-btcvsd-snd", },
1399 .name = "mtk-btcvsd-snd",