Lines Matching full:ngd
26 /* NGD (Non-ported Generic Device) registers */
153 struct qcom_slim_ngd *ngd; member
475 req.instance = (ctrl->ngd->id >> 1); in qcom_slim_qmi_init()
765 void __iomem *base = ctrl->ngd->base; in qcom_slim_ngd_interrupt()
1150 u32 cfg = readl_relaxed(ctrl->ngd->base); in qcom_slim_ngd_setup()
1160 /* Enable NGD if it's not already enabled*/ in qcom_slim_ngd_setup()
1164 writel_relaxed(cfg, ctrl->ngd->base); in qcom_slim_ngd_setup()
1170 struct qcom_slim_ngd *ngd = ctrl->ngd; in qcom_slim_ngd_power_up() local
1194 laddr = readl_relaxed(ngd->base + NGD_STATUS); in qcom_slim_ngd_power_up()
1210 * is lost for ngd. in qcom_slim_ngd_power_up()
1214 writel_relaxed(DEF_NGD_INT_MASK, ngd->base + NGD_INT_EN); in qcom_slim_ngd_power_up()
1215 rx_msgq = readl_relaxed(ngd->base + NGD_RX_MSGQ_CFG); in qcom_slim_ngd_power_up()
1218 ngd->base + NGD_RX_MSGQ_CFG); in qcom_slim_ngd_power_up()
1235 for_each_child_of_node(ctrl->ngd->pdev->dev.of_node, node) { in qcom_slim_ngd_notify_slaves()
1423 #define QCOM_SLIM_NGD_DRV_NAME "qcom,slim-ngd"
1427 .compatible = "qcom,slim-ngd-v1.5.0",
1430 .compatible = "qcom,slim-ngd-v2.1.0",
1512 struct qcom_slim_ngd *ngd; in of_qcom_slim_ngd_register() local
1524 ngd = kzalloc(sizeof(*ngd), GFP_KERNEL); in of_qcom_slim_ngd_register()
1525 if (!ngd) { in of_qcom_slim_ngd_register()
1530 ngd->pdev = platform_device_alloc(QCOM_SLIM_NGD_DRV_NAME, id); in of_qcom_slim_ngd_register()
1531 if (!ngd->pdev) { in of_qcom_slim_ngd_register()
1532 kfree(ngd); in of_qcom_slim_ngd_register()
1536 ngd->id = id; in of_qcom_slim_ngd_register()
1537 ngd->pdev->dev.parent = parent; in of_qcom_slim_ngd_register()
1539 ret = driver_set_override(&ngd->pdev->dev, in of_qcom_slim_ngd_register()
1540 &ngd->pdev->driver_override, in of_qcom_slim_ngd_register()
1544 platform_device_put(ngd->pdev); in of_qcom_slim_ngd_register()
1545 kfree(ngd); in of_qcom_slim_ngd_register()
1549 ngd->pdev->dev.of_node = node; in of_qcom_slim_ngd_register()
1550 ctrl->ngd = ngd; in of_qcom_slim_ngd_register()
1552 ret = platform_device_add(ngd->pdev); in of_qcom_slim_ngd_register()
1554 platform_device_put(ngd->pdev); in of_qcom_slim_ngd_register()
1555 kfree(ngd); in of_qcom_slim_ngd_register()
1559 ngd->base = ctrl->base + ngd->id * data->offset + in of_qcom_slim_ngd_register()
1560 (ngd->id - 1) * data->size; in of_qcom_slim_ngd_register()
1628 IRQF_TRIGGER_HIGH, "slim-ngd", ctrl); in qcom_slim_ngd_ctrl_probe()
1702 kfree(ctrl->ngd); in qcom_slim_ngd_remove()
1703 ctrl->ngd = NULL; in qcom_slim_ngd_remove()
1749 .name = "qcom,slim-ngd-ctrl",
1765 MODULE_DESCRIPTION("Qualcomm SLIMBus NGD controller");