Re: [PATCH v3 1/4] thermal: rockchip: add driver for thermal
From: Arnd Bergmann <arnd@arndb.de>
Date: 2014-08-28 16:17:30
Also in:
linux-arm-kernel, linux-iio, linux-pm, lkml
From: Arnd Bergmann <arnd@arndb.de>
Date: 2014-08-28 16:17:30
Also in:
linux-arm-kernel, linux-iio, linux-pm, lkml
On Thursday 28 August 2014 18:11:43 Heiko Stübner wrote:
Am Donnerstag, 28. August 2014, 10:37:35 schrieb Eduardo Valentin:quoted
quoted
On the driver side, I believe the correct way to deal with this setup is to split your driver into a generic drivers/iio/adc/rockchips-tsadc.c file, and a smaller thermal driver that uses the iio in-kernel interfaces, ideally one that is independent of the underlying hardware and can work on any ADC implementation.Agreed. If you can write such interface and make your driver to work in such way, that would be great.But I currently don't see how you would model the temperature handling parts from a generic thermal driver to a generic adc driver for the rk3288-tsadc. I guess the general temperature irq handling would use iio-triggers? But how does the target temperature get into the TSADC_COMP1_INT register. Also when getting the temperature, Caesar's driver compares it to its trip points and sets the next trip point depending on the current temperature (passive <-> critical) in rockchip_get_temp. Maybe there is some completely easy way for this, but currently I don't see it.
Eduardo earlier today replied to an email about a generic driver for thermal, which was posted in February but hasn't been merged. See https://lkml.org/lkml/2014/2/5/810 There may be a newer version of this patch, which I haven't found. Arnd