Lines Matching refs:drvdata
50 static void funnel_enable_hw(struct funnel_drvdata *drvdata, int port) in funnel_enable_hw() argument
54 CS_UNLOCK(drvdata->base); in funnel_enable_hw()
56 functl = readl_relaxed(drvdata->base + FUNNEL_FUNCTL); in funnel_enable_hw()
60 writel_relaxed(functl, drvdata->base + FUNNEL_FUNCTL); in funnel_enable_hw()
61 writel_relaxed(drvdata->priority, drvdata->base + FUNNEL_PRICTL); in funnel_enable_hw()
63 CS_LOCK(drvdata->base); in funnel_enable_hw()
69 struct funnel_drvdata *drvdata = dev_get_drvdata(csdev->dev.parent); in funnel_enable() local
72 ret = clk_prepare_enable(drvdata->clk); in funnel_enable()
76 funnel_enable_hw(drvdata, inport); in funnel_enable()
78 dev_info(drvdata->dev, "FUNNEL inport %d enabled\n", inport); in funnel_enable()
82 static void funnel_disable_hw(struct funnel_drvdata *drvdata, int inport) in funnel_disable_hw() argument
86 CS_UNLOCK(drvdata->base); in funnel_disable_hw()
88 functl = readl_relaxed(drvdata->base + FUNNEL_FUNCTL); in funnel_disable_hw()
90 writel_relaxed(functl, drvdata->base + FUNNEL_FUNCTL); in funnel_disable_hw()
92 CS_LOCK(drvdata->base); in funnel_disable_hw()
98 struct funnel_drvdata *drvdata = dev_get_drvdata(csdev->dev.parent); in funnel_disable() local
100 funnel_disable_hw(drvdata, inport); in funnel_disable()
102 clk_disable_unprepare(drvdata->clk); in funnel_disable()
104 dev_info(drvdata->dev, "FUNNEL inport %d disabled\n", inport); in funnel_disable()
119 struct funnel_drvdata *drvdata = dev_get_drvdata(dev->parent); in priority_show() local
120 unsigned long val = drvdata->priority; in priority_show()
131 struct funnel_drvdata *drvdata = dev_get_drvdata(dev->parent); in priority_store() local
137 drvdata->priority = val; in priority_store()
142 static u32 get_funnel_ctrl_hw(struct funnel_drvdata *drvdata) in get_funnel_ctrl_hw() argument
146 CS_UNLOCK(drvdata->base); in get_funnel_ctrl_hw()
147 functl = readl_relaxed(drvdata->base + FUNNEL_FUNCTL); in get_funnel_ctrl_hw()
148 CS_LOCK(drvdata->base); in get_funnel_ctrl_hw()
158 struct funnel_drvdata *drvdata = dev_get_drvdata(dev->parent); in funnel_ctrl_show() local
160 ret = clk_prepare_enable(drvdata->clk); in funnel_ctrl_show()
164 val = get_funnel_ctrl_hw(drvdata); in funnel_ctrl_show()
165 clk_disable_unprepare(drvdata->clk); in funnel_ctrl_show()
183 struct funnel_drvdata *drvdata; in funnel_probe() local
195 drvdata = devm_kzalloc(dev, sizeof(*drvdata), GFP_KERNEL); in funnel_probe()
196 if (!drvdata) in funnel_probe()
199 drvdata->dev = &adev->dev; in funnel_probe()
200 dev_set_drvdata(dev, drvdata); in funnel_probe()
207 drvdata->base = base; in funnel_probe()
209 drvdata->clk = adev->pclk; in funnel_probe()
221 drvdata->csdev = coresight_register(desc); in funnel_probe()
222 if (IS_ERR(drvdata->csdev)) in funnel_probe()
223 return PTR_ERR(drvdata->csdev); in funnel_probe()
231 struct funnel_drvdata *drvdata = amba_get_drvdata(adev); in funnel_remove() local
233 coresight_unregister(drvdata->csdev); in funnel_remove()