Lines Matching refs:drvdata
63 static void tpiu_enable_hw(struct tpiu_drvdata *drvdata) in tpiu_enable_hw() argument
65 CS_UNLOCK(drvdata->base); in tpiu_enable_hw()
69 CS_LOCK(drvdata->base); in tpiu_enable_hw()
74 struct tpiu_drvdata *drvdata = dev_get_drvdata(csdev->dev.parent); in tpiu_enable() local
76 tpiu_enable_hw(drvdata); in tpiu_enable()
82 static void tpiu_disable_hw(struct tpiu_drvdata *drvdata) in tpiu_disable_hw() argument
84 CS_UNLOCK(drvdata->base); in tpiu_disable_hw()
87 writel_relaxed(FFCR_STOP_FI, drvdata->base + TPIU_FFCR); in tpiu_disable_hw()
89 writel_relaxed(FFCR_STOP_FI | FFCR_FON_MAN, drvdata->base + TPIU_FFCR); in tpiu_disable_hw()
91 coresight_timeout(drvdata->base, TPIU_FFCR, FFCR_FON_MAN_BIT, 0); in tpiu_disable_hw()
93 coresight_timeout(drvdata->base, TPIU_FFSR, FFSR_FT_STOPPED_BIT, 1); in tpiu_disable_hw()
95 CS_LOCK(drvdata->base); in tpiu_disable_hw()
100 struct tpiu_drvdata *drvdata = dev_get_drvdata(csdev->dev.parent); in tpiu_disable() local
105 tpiu_disable_hw(drvdata); in tpiu_disable()
126 struct tpiu_drvdata *drvdata; in tpiu_probe() local
134 drvdata = devm_kzalloc(dev, sizeof(*drvdata), GFP_KERNEL); in tpiu_probe()
135 if (!drvdata) in tpiu_probe()
138 drvdata->atclk = devm_clk_get(&adev->dev, "atclk"); /* optional */ in tpiu_probe()
139 if (!IS_ERR(drvdata->atclk)) { in tpiu_probe()
140 ret = clk_prepare_enable(drvdata->atclk); in tpiu_probe()
144 dev_set_drvdata(dev, drvdata); in tpiu_probe()
151 drvdata->base = base; in tpiu_probe()
154 tpiu_disable_hw(drvdata); in tpiu_probe()
166 drvdata->csdev = coresight_register(&desc); in tpiu_probe()
168 if (!IS_ERR(drvdata->csdev)) { in tpiu_probe()
173 return PTR_ERR(drvdata->csdev); in tpiu_probe()
178 struct tpiu_drvdata *drvdata = dev_get_drvdata(&adev->dev); in tpiu_remove() local
180 coresight_unregister(drvdata->csdev); in tpiu_remove()
188 struct tpiu_drvdata *drvdata = dev_get_drvdata(dev); in tpiu_runtime_suspend() local
190 if (drvdata && !IS_ERR(drvdata->atclk)) in tpiu_runtime_suspend()
191 clk_disable_unprepare(drvdata->atclk); in tpiu_runtime_suspend()
198 struct tpiu_drvdata *drvdata = dev_get_drvdata(dev); in tpiu_runtime_resume() local
200 if (drvdata && !IS_ERR(drvdata->atclk)) in tpiu_runtime_resume()
201 clk_prepare_enable(drvdata->atclk); in tpiu_runtime_resume()