Lines Matching refs:data

74 	struct armada_thermal_data *data;
124 } data;
141 struct armada_thermal_data *data = priv->data;
144 regmap_read(priv->syscon, data->syscon_control1_off, &reg);
154 regmap_write(priv->syscon, data->syscon_control1_off, reg);
157 regmap_write(priv->syscon, data->syscon_control1_off, reg);
160 regmap_read(priv->syscon, data->syscon_status_off, &reg);
162 regmap_write(priv->syscon, data->syscon_status_off, reg);
168 struct armada_thermal_data *data = priv->data;
171 regmap_read(priv->syscon, data->syscon_control1_off, &reg);
181 regmap_write(priv->syscon, data->syscon_control1_off, reg);
189 struct armada_thermal_data *data = priv->data;
192 regmap_read(priv->syscon, data->syscon_control1_off, &reg);
196 regmap_write(priv->syscon, data->syscon_control1_off, reg);
201 regmap_write(priv->syscon, data->syscon_control1_off, reg);
211 priv->data->syscon_status_off, reg,
212 reg & priv->data->is_valid_bit,
220 struct armada_thermal_data *data = priv->data;
224 regmap_read(priv->syscon, data->syscon_control1_off, &reg);
227 regmap_write(priv->syscon, data->syscon_control1_off, reg);
230 regmap_read(priv->syscon, data->syscon_control0_off, &reg);
233 regmap_write(priv->syscon, data->syscon_control0_off, reg);
239 struct armada_thermal_data *data = priv->data;
242 regmap_read(priv->syscon, data->syscon_control0_off, &reg);
252 regmap_write(priv->syscon, data->syscon_control0_off, reg);
258 struct armada_thermal_data *data = priv->data;
264 regmap_read(priv->syscon, data->syscon_control0_off, &reg);
266 regmap_write(priv->syscon, data->syscon_control0_off, reg);
269 regmap_read(priv->syscon, data->syscon_control1_off, &reg);
272 regmap_write(priv->syscon, data->syscon_control1_off, reg);
279 if (!priv->data->is_valid_bit)
282 regmap_read(priv->syscon, priv->data->syscon_status_off, &reg);
284 return reg & priv->data->is_valid_bit;
289 struct armada_thermal_data *data = priv->data;
293 regmap_read(priv->syscon, data->dfx_irq_cause_off, &reg);
296 regmap_read(priv->syscon, data->dfx_irq_mask_off, &reg);
297 reg |= data->dfx_overheat_irq;
298 regmap_write(priv->syscon, data->dfx_irq_mask_off, reg);
301 regmap_read(priv->syscon, data->dfx_server_irq_mask_off, &reg);
302 reg |= data->dfx_server_irq_en;
303 regmap_write(priv->syscon, data->dfx_server_irq_mask_off, reg);
306 regmap_read(priv->syscon, data->syscon_control1_off, &reg);
308 regmap_write(priv->syscon, data->syscon_control1_off, reg);
314 struct armada_thermal_data *data = priv->data;
317 regmap_read(priv->syscon, data->syscon_control1_off, &reg);
319 regmap_write(priv->syscon, data->syscon_control1_off, reg);
325 struct armada_thermal_data *data = priv->data;
328 if (channel < 0 || channel > priv->data->cpu_nr)
335 regmap_read(priv->syscon, data->syscon_control0_off, &ctrl0);
337 regmap_write(priv->syscon, data->syscon_control0_off, ctrl0);
353 regmap_write(priv->syscon, data->syscon_control0_off, ctrl0);
358 regmap_write(priv->syscon, data->syscon_control0_off, ctrl0);
363 * actual data.
379 regmap_read(priv->syscon, priv->data->syscon_status_off, &reg);
380 reg = (reg >> priv->data->temp_shift) & priv->data->temp_mask;
381 if (priv->data->signed_sample)
383 sample = sign_extend32(reg, fls(priv->data->temp_mask) - 1);
388 b = priv->data->coef_b;
389 m = priv->data->coef_m;
390 div = priv->data->coef_div;
392 if (priv->data->inverted)
457 static unsigned int armada_mc_to_reg_temp(struct armada_thermal_data *data,
460 s64 b = data->coef_b;
461 s64 m = data->coef_m;
462 s64 div = data->coef_div;
465 if (data->inverted)
470 return sample & data->temp_mask;
481 static unsigned int armada_mc_to_reg_hyst(struct armada_thermal_data *data,
495 return i & data->hyst_mask;
501 struct armada_thermal_data *data = priv->data;
502 unsigned int threshold = armada_mc_to_reg_temp(data, thresh_mc);
503 unsigned int hysteresis = armada_mc_to_reg_hyst(data, hyst_mc);
506 regmap_read(priv->syscon, data->syscon_control1_off, &ctrl1);
510 ctrl1 &= ~(data->temp_mask << data->thresh_shift);
511 ctrl1 |= threshold << data->thresh_shift;
517 ctrl1 &= ~(data->hyst_mask << data->hyst_shift);
518 ctrl1 |= hysteresis << data->hyst_shift;
522 regmap_write(priv->syscon, data->syscon_control1_off, ctrl1);
562 regmap_read(priv->syscon, priv->data->dfx_irq_cause_off, &dummy);
673 .data = &armadaxp_data,
677 .data = &armada370_data,
681 .data = &armada375_data,
685 .data = &armada380_data,
689 .data = &armada_ap806_data,
693 .data = &armada_cp110_data,
711 struct armada_thermal_data *data = priv->data;
728 if (((unsigned long)base & ~PAGE_MASK) < data->syscon_status_off)
730 base -= data->syscon_status_off;
840 priv->data = (struct armada_thermal_data *)match->data;
864 priv->data->init(pdev, priv);
884 drvdata->data.tz = tz;
895 priv->data->init(pdev, priv);
897 drvdata->data.priv = priv;
921 for (sensor_id = 0; sensor_id <= priv->data->cpu_nr; sensor_id++) {
962 thermal_zone_device_unregister(drvdata->data.tz);