Re: [PATCH 3/4] hwmon: Add a simple driver to read the MXS SoC temperature
From: Alexandre Belloni <hidden>
Date: 2013-06-27 19:26:36
Also in:
linux-arm-kernel, linux-iio, lkml
Hi, On 27/06/2013 16:27, Guenter Roeck wrote:
On Thu, Jun 27, 2013 at 11:17:32AM +0200, Maxime Ripard wrote:quoted
On Wed, Jun 26, 2013 at 07:39:27AM -0700, Guenter Roeck wrote:quoted
On Wed, Jun 26, 2013 at 10:51:12AM +0200, Alexandre Belloni wrote:quoted
The low resolution ADC of the mxs is able to read an internal temperature sensor, expose that using hwmon. Signed-off-by: Alexandre Belloni <alexandre.belloni-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org> ---Wouldn't it make more sense to use iio-hwmon and improve it if necessary ?Actually, I wonder if we should not just put the hwmon driver capabilities directly into the mxs-lradc driver, just like it's already been done in this driver for the touchscreen support. The probing of this hwmon driver doesn't really belong to the DT, it's not really realistic to probe it from the machine definition, and it really is the IP that is wired that way.Merging iio-hwmon functionality into an adc driver seems just as bad (or even worse) as copying it into a new driver. If the lradc driver knows that the ADC channels are temperature sensors, it should register them with the iio subsystem as IIO_TEMP type. Then you should be able to use iio_hwmon as is.
They are already registered as IIO_TEMP but only implement read_raw. Also, iio_hwmon_read_val() is using iio_read_channel_processed() and that will basically only read one of the 2 channels. As I documented, you actually need to read both channel 8 and channel 9 and then compute the value in Kelvins. I'm not sure how you want me to do that in the current framework. Regards, -- Alexandre Belloni, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com