Re: [PATCH V3 2/5] thermal: bcm2835: add thermal driver for bcm2835 soc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Eric Anholt <eric@xxxxxxxxxx> writes:

> kernel@xxxxxxxxxxxxxxxx writes:
>
>> From: Martin Sperl <kernel@xxxxxxxxxxxxxxxx>
>>
>> Add basic thermal driver for bcm2835 SOC.
>>
>> This driver currently relies on the firmware setting up the
>> tsense HW block and does not set it up itself.
>>
>> Signed-off-by: Martin Sperl <kernel@xxxxxxxxxxxxxxxx>
>>
>> ChangeLog:
>>  V1 -> V2: added specific settings depending on compatiblity
>> 	   added trip point based on register
>> 	   setting up ctrl-register if HW is not enabled by firmware
>> 	     as per recommendation of Eric (untested)
>> 	   check that clock frequency is in range
>> 	     (1.9 - 5MHz - as per comment in clk-bcm2835.c)
>> ---
>
>> diff --git a/drivers/thermal/bcm/Makefile b/drivers/thermal/bcm/Makefile
>> new file mode 100644
>> index 0000000..13456d2
>> --- /dev/null
>> +++ b/drivers/thermal/bcm/Makefile
>> @@ -0,0 +1 @@
>> +obj-$(CONFIG_BCM2835_THERMAL)		:= bcm2835_thermal.o
>> diff --git a/drivers/thermal/bcm/bcm2835_thermal.c b/drivers/thermal/bcm/bcm2835_thermal.c
>> new file mode 100644
>> index 0000000..73138cb
>> --- /dev/null
>> +++ b/drivers/thermal/bcm/bcm2835_thermal.c
>
>> +static const struct of_device_id bcm2835_thermal_of_match_table[];
>> +static int bcm2835_thermal_probe(struct platform_device *pdev)
>> +{
>
>> +	/* enable clock and check rate */
>> +	clk_prepare_enable(data->clk);
>> +	rate = clk_get_rate(data->clk);
>> +	if ((rate < 1920000) || (rate > 5000000)) {
>> +		dev_warn(&pdev->dev,
>> +			 "Clock %pCn is running at %pCr Hz, which is outside the recommended range of 1.9 to 5.0 MHz\n",
>> +			 data->clk, data->clk);
>> +	}
>> +
>> +	/* register it */
>> +	tz = thermal_zone_device_register("bcm2835_thermal",
>> +					  1, 0, data,
>> +					  &bcm2835_thermal_ops,
>> +					  NULL, 0, 0);
>
> I notice that the polling_delay is set to 0, but we're not using
> interrupts to trigger the trip.  Is it valid to expose a trip without a
> polling_delay or interrupts?  Should passive_delay be set as well?
>
> This is up to the thermal maintainers.  As far as I'm concerned, it's:
>
> Acked-by: Eric Anholt <eric@xxxxxxxxxx>
>
> One it lands I'll pull the defconfig and DT bits.

Ping on this question to thermal maintainers.  I'd still love to see
this driver land.

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux