Lines Matching refs:tmu

63 	struct imx8mm_tmu *tmu = sensor->priv;  in imx8mm_tmu_get_temp()  local
66 val = readl_relaxed(tmu->base + TRITSR) & TRITSR_TEMP0_VAL_MASK; in imx8mm_tmu_get_temp()
77 struct imx8mm_tmu *tmu = sensor->priv; in imx8mp_tmu_get_temp() local
81 val = readl_relaxed(tmu->base + TRITSR); in imx8mp_tmu_get_temp()
101 struct imx8mm_tmu *tmu = sensor->priv; in tmu_get_temp() local
103 return tmu->socdata->get_temp(data, temp); in tmu_get_temp()
110 static void imx8mm_tmu_enable(struct imx8mm_tmu *tmu, bool enable) in imx8mm_tmu_enable() argument
114 val = readl_relaxed(tmu->base + TER); in imx8mm_tmu_enable()
116 writel_relaxed(val, tmu->base + TER); in imx8mm_tmu_enable()
119 static void imx8mm_tmu_probe_sel_all(struct imx8mm_tmu *tmu) in imx8mm_tmu_probe_sel_all() argument
123 val = readl_relaxed(tmu->base + TPS); in imx8mm_tmu_probe_sel_all()
125 writel_relaxed(val, tmu->base + TPS); in imx8mm_tmu_probe_sel_all()
131 struct imx8mm_tmu *tmu; in imx8mm_tmu_probe() local
137 tmu = devm_kzalloc(&pdev->dev, struct_size(tmu, sensors, in imx8mm_tmu_probe()
139 if (!tmu) in imx8mm_tmu_probe()
142 tmu->socdata = data; in imx8mm_tmu_probe()
144 tmu->base = devm_platform_ioremap_resource(pdev, 0); in imx8mm_tmu_probe()
145 if (IS_ERR(tmu->base)) in imx8mm_tmu_probe()
146 return PTR_ERR(tmu->base); in imx8mm_tmu_probe()
148 tmu->clk = devm_clk_get(&pdev->dev, NULL); in imx8mm_tmu_probe()
149 if (IS_ERR(tmu->clk)) in imx8mm_tmu_probe()
150 return dev_err_probe(&pdev->dev, PTR_ERR(tmu->clk), in imx8mm_tmu_probe()
153 ret = clk_prepare_enable(tmu->clk); in imx8mm_tmu_probe()
160 imx8mm_tmu_enable(tmu, false); in imx8mm_tmu_probe()
163 tmu->sensors[i].priv = tmu; in imx8mm_tmu_probe()
164 tmu->sensors[i].tzd = in imx8mm_tmu_probe()
166 &tmu->sensors[i], in imx8mm_tmu_probe()
168 if (IS_ERR(tmu->sensors[i].tzd)) { in imx8mm_tmu_probe()
169 ret = PTR_ERR(tmu->sensors[i].tzd); in imx8mm_tmu_probe()
175 tmu->sensors[i].hw_id = i; in imx8mm_tmu_probe()
178 platform_set_drvdata(pdev, tmu); in imx8mm_tmu_probe()
181 if (tmu->socdata->version == TMU_VER2) in imx8mm_tmu_probe()
182 imx8mm_tmu_probe_sel_all(tmu); in imx8mm_tmu_probe()
185 imx8mm_tmu_enable(tmu, true); in imx8mm_tmu_probe()
190 clk_disable_unprepare(tmu->clk); in imx8mm_tmu_probe()
196 struct imx8mm_tmu *tmu = platform_get_drvdata(pdev); in imx8mm_tmu_remove() local
199 imx8mm_tmu_enable(tmu, false); in imx8mm_tmu_remove()
201 clk_disable_unprepare(tmu->clk); in imx8mm_tmu_remove()