Hi Eduardo, On Thu, Nov 06, 2014 at 09:30:20PM -0400, Eduardo Valentin wrote: > Hello Caesar, > > On Sat, Nov 01, 2014 at 10:44:29AM +0800, Caesar Wang wrote: > > Thermal is TS-ADC Controller module supports > > user-defined mode and automatic mode. > > > > User-defined mode refers,TSADC all the control signals entirely by > > software writing to register for direct control. > > > > Automaic mode refers to the module automatically poll TSADC output, > > and the results were checked.If you find that the temperature High > > in a period of time,an interrupt is generated to the processor > > down-measures taken;If the temperature over a period of time High, > > the resulting TSHUT gave CRU module,let it reset the entire chip, > > or via GPIO give PMIC. > > > > First thing, very good progress in this driver! > > > Signed-off-by: zhaoyifeng <zyf@xxxxxxxxxxxxxx> > > Signed-off-by: Caesar Wang <caesar.wang@xxxxxxxxxxxxxx> > > Reviewed-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> > > Just for the sake of code / documentation history, this patch, which > adds the driver, should come after patch 2, which adds dt documentation. > > > --- > > drivers/thermal/Kconfig | 9 + > > drivers/thermal/Makefile | 1 + > > drivers/thermal/rockchip_thermal.c | 711 +++++++++++++++++++++++++++++++++++++ > > 3 files changed, 721 insertions(+) > > create mode 100644 drivers/thermal/rockchip_thermal.c > > <big cut> > > > +static int > > +rockchip_thermal_register_sensor(struct platform_device *pdev, > > + struct rockchip_thermal_data *thermal, > > + struct rockchip_thermal_sensor *sensor, > > + enum sensor_id id) > > +{ > > + const struct rockchip_tsadc_chip *tsadc = thermal->chip; > > + int error; > > + > > + tsadc->set_tshut_mode(id, thermal->regs, thermal->tshut_mode); > > + tsadc->set_tshut_temp(id, thermal->regs, thermal->tshut_temp); > > + > > + sensor->thermal = thermal; > > + sensor->id = id; > > + sensor->tzd = thermal_zone_of_sensor_register(&pdev->dev, id, sensor, > > + rockchip_thermal_get_temp, > > + NULL, > > + rockchip_thermal_set_trips); > > So, did I miss something here? Looks like you have extended the of > thermal, and I haven't seen the patch. > CC [M] drivers/thermal/rockchip_thermal.o > drivers/thermal/rockchip_thermal.c: In function > `rockchip_thermal_register_sensor': > drivers/thermal/rockchip_thermal.c:482:7: error: too many arguments to > function `thermal_zone_of_sensor_register' > rockchip_thermal_set_trips); Yes, it relies on patch by Mikko Perttunen adding support for hardware-supported trip points. It allows us to reduce polling frequency while still being able to react when we cross the tripping point. See https://lkml.org/lkml/2014/6/27/76 Thanks. -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html