diff mbox

ARM: shmobile: r8a7793: Add thermal device to DT

Message ID 1446795048-29767-1-git-send-email-horms+renesas@verge.net.au (mailing list archive)
State Accepted
Commit 0fddfb5b609f3b037006bcd467c540a7968a2dc7
Headers show

Commit Message

Simon Horman Nov. 6, 2015, 7:30 a.m. UTC
Instantiate the thermal sensor in the r8a7793 device tree.

Based on very similar work for the r8a7790 by Magnus Damm.

Cc: Magnus Damm <damm@opensource.se>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>

---
 arch/arm/boot/dts/r8a7793.dtsi | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

Comments

Geert Uytterhoeven Nov. 6, 2015, 8:50 a.m. UTC | #1
On Fri, Nov 6, 2015 at 8:30 AM, Simon Horman <horms+renesas@verge.net.au> wrote:
> Instantiate the thermal sensor in the r8a7793 device tree.
>
> Based on very similar work for the r8a7790 by Magnus Damm.

Given the similarity of R-Car M2-N and M2-W, I would have referred
to r8a7791 ;-)

> Cc: Magnus Damm <damm@opensource.se>
> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>

Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Simon Horman Nov. 6, 2015, 9:17 a.m. UTC | #2
On Fri, Nov 06, 2015 at 09:50:27AM +0100, Geert Uytterhoeven wrote:
> On Fri, Nov 6, 2015 at 8:30 AM, Simon Horman <horms+renesas@verge.net.au> wrote:
> > Instantiate the thermal sensor in the r8a7793 device tree.
> >
> > Based on very similar work for the r8a7790 by Magnus Damm.
> 
> Given the similarity of R-Car M2-N and M2-W, I would have referred
> to r8a7791 ;-)

True. Though for thermal the datasheet indicates H2 is also quite similar.

I also prepared a very similar patch to add thermal to the r8a7794 (E2).
But the driver reports the sensor is broken - my inspection of the code
leads me to believe its not able to get a proper reading from the sensor.

I'm wondering if anyone knows about this issue. Perhaps its specific
to my Alt board. Or a limitation of the E2?

> > Cc: Magnus Damm <damm@opensource.se>
> > Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
> 
> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>
> 
> Gr{oetje,eeting}s,
> 
>                         Geert
> 
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
> 
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
>                                 -- Linus Torvalds
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Geert Uytterhoeven Nov. 6, 2015, 10 a.m. UTC | #3
Hi Simon,

On Fri, Nov 6, 2015 at 10:17 AM, Simon Horman <horms@verge.net.au> wrote:
> On Fri, Nov 06, 2015 at 09:50:27AM +0100, Geert Uytterhoeven wrote:
>> On Fri, Nov 6, 2015 at 8:30 AM, Simon Horman <horms+renesas@verge.net.au> wrote:
>> > Instantiate the thermal sensor in the r8a7793 device tree.
>> >
>> > Based on very similar work for the r8a7790 by Magnus Damm.
>>
>> Given the similarity of R-Car M2-N and M2-W, I would have referred
>> to r8a7791 ;-)
>
> True. Though for thermal the datasheet indicates H2 is also quite similar.
>
> I also prepared a very similar patch to add thermal to the r8a7794 (E2).
> But the driver reports the sensor is broken - my inspection of the code
> leads me to believe its not able to get a proper reading from the sensor.
>
> I'm wondering if anyone knows about this issue. Perhaps its specific
> to my Alt board. Or a limitation of the E2?

Using the same kernel image as on other boards? I.e. it's not an MSTP
clock issue?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Simon Horman Nov. 9, 2015, 1:15 a.m. UTC | #4
On Fri, Nov 06, 2015 at 11:00:17AM +0100, Geert Uytterhoeven wrote:
> Hi Simon,
> 
> On Fri, Nov 6, 2015 at 10:17 AM, Simon Horman <horms@verge.net.au> wrote:
> > On Fri, Nov 06, 2015 at 09:50:27AM +0100, Geert Uytterhoeven wrote:
> >> On Fri, Nov 6, 2015 at 8:30 AM, Simon Horman <horms+renesas@verge.net.au> wrote:
> >> > Instantiate the thermal sensor in the r8a7793 device tree.
> >> >
> >> > Based on very similar work for the r8a7790 by Magnus Damm.
> >>
> >> Given the similarity of R-Car M2-N and M2-W, I would have referred
> >> to r8a7791 ;-)
> >
> > True. Though for thermal the datasheet indicates H2 is also quite similar.
> >
> > I also prepared a very similar patch to add thermal to the r8a7794 (E2).
> > But the driver reports the sensor is broken - my inspection of the code
> > leads me to believe its not able to get a proper reading from the sensor.
> >
> > I'm wondering if anyone knows about this issue. Perhaps its specific
> > to my Alt board. Or a limitation of the E2?
> 
> Using the same kernel image as on other boards? I.e. it's not an MSTP
> clock issue?

I am using the same kernel image.
I wonder if it is an MSTP issue.

Looking over the datasheet I see:

For the r8a779[0-4] Thermal in MSTPSR5, RMSTPCR5.
I.e. there is a bit for thermal in those registers for all R-Car Gen-2
SoCs covered by the datasheet.

But only on the r8a779[0-3] I see thermal in SRCR5, SRSTCLR5.
I.e. there is no bit for thermal in those registers for the r8a7794
which is different from the other R-Car Gen-2 SoCs covered by the datasheet.
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Geert Uytterhoeven Nov. 9, 2015, 8:02 a.m. UTC | #5
Hi Simon,

On Mon, Nov 9, 2015 at 2:15 AM, Simon Horman <horms@verge.net.au> wrote:
> On Fri, Nov 06, 2015 at 11:00:17AM +0100, Geert Uytterhoeven wrote:
>> On Fri, Nov 6, 2015 at 10:17 AM, Simon Horman <horms@verge.net.au> wrote:
>> > On Fri, Nov 06, 2015 at 09:50:27AM +0100, Geert Uytterhoeven wrote:
>> >> On Fri, Nov 6, 2015 at 8:30 AM, Simon Horman <horms+renesas@verge.net.au> wrote:
>> >> > Instantiate the thermal sensor in the r8a7793 device tree.
>> >> >
>> >> > Based on very similar work for the r8a7790 by Magnus Damm.
>> >>
>> >> Given the similarity of R-Car M2-N and M2-W, I would have referred
>> >> to r8a7791 ;-)
>> >
>> > True. Though for thermal the datasheet indicates H2 is also quite similar.
>> >
>> > I also prepared a very similar patch to add thermal to the r8a7794 (E2).
>> > But the driver reports the sensor is broken - my inspection of the code
>> > leads me to believe its not able to get a proper reading from the sensor.
>> >
>> > I'm wondering if anyone knows about this issue. Perhaps its specific
>> > to my Alt board. Or a limitation of the E2?
>>
>> Using the same kernel image as on other boards? I.e. it's not an MSTP
>> clock issue?
>
> I am using the same kernel image.
> I wonder if it is an MSTP issue.
>
> Looking over the datasheet I see:
>
> For the r8a779[0-4] Thermal in MSTPSR5, RMSTPCR5.
> I.e. there is a bit for thermal in those registers for all R-Car Gen-2
> SoCs covered by the datasheet.
>
> But only on the r8a779[0-3] I see thermal in SRCR5, SRSTCLR5.
> I.e. there is no bit for thermal in those registers for the r8a7794
> which is different from the other R-Car Gen-2 SoCs covered by the datasheet.

Indeed, strange. Those are the reset registers, which we don't use yet.

Can you please check from U-Boot that the thermal module is not held in reset?
On r8a7791/koelsch I get:

=> md.l 0xe61500c4 1
e61500c4: 00000000    ....
=> md.l 0xe6150954 1
e6150954: 00000000    ....

I.e. no reset or reset clear bit is set.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Simon Horman Nov. 9, 2015, 8:51 a.m. UTC | #6
On Mon, Nov 09, 2015 at 09:02:51AM +0100, Geert Uytterhoeven wrote:
> Hi Simon,
> 
> On Mon, Nov 9, 2015 at 2:15 AM, Simon Horman <horms@verge.net.au> wrote:
> > On Fri, Nov 06, 2015 at 11:00:17AM +0100, Geert Uytterhoeven wrote:
> >> On Fri, Nov 6, 2015 at 10:17 AM, Simon Horman <horms@verge.net.au> wrote:
> >> > On Fri, Nov 06, 2015 at 09:50:27AM +0100, Geert Uytterhoeven wrote:
> >> >> On Fri, Nov 6, 2015 at 8:30 AM, Simon Horman <horms+renesas@verge.net.au> wrote:
> >> >> > Instantiate the thermal sensor in the r8a7793 device tree.
> >> >> >
> >> >> > Based on very similar work for the r8a7790 by Magnus Damm.
> >> >>
> >> >> Given the similarity of R-Car M2-N and M2-W, I would have referred
> >> >> to r8a7791 ;-)
> >> >
> >> > True. Though for thermal the datasheet indicates H2 is also quite similar.
> >> >
> >> > I also prepared a very similar patch to add thermal to the r8a7794 (E2).
> >> > But the driver reports the sensor is broken - my inspection of the code
> >> > leads me to believe its not able to get a proper reading from the sensor.
> >> >
> >> > I'm wondering if anyone knows about this issue. Perhaps its specific
> >> > to my Alt board. Or a limitation of the E2?
> >>
> >> Using the same kernel image as on other boards? I.e. it's not an MSTP
> >> clock issue?
> >
> > I am using the same kernel image.
> > I wonder if it is an MSTP issue.
> >
> > Looking over the datasheet I see:
> >
> > For the r8a779[0-4] Thermal in MSTPSR5, RMSTPCR5.
> > I.e. there is a bit for thermal in those registers for all R-Car Gen-2
> > SoCs covered by the datasheet.
> >
> > But only on the r8a779[0-3] I see thermal in SRCR5, SRSTCLR5.
> > I.e. there is no bit for thermal in those registers for the r8a7794
> > which is different from the other R-Car Gen-2 SoCs covered by the datasheet.
> 
> Indeed, strange. Those are the reset registers, which we don't use yet.

Thanks for clearing up that mystery for me.

> Can you please check from U-Boot that the thermal module is not held in reset?
> On r8a7791/koelsch I get:
> 
> => md.l 0xe61500c4 1
> e61500c4: 00000000    ....
> => md.l 0xe6150954 1
> e6150954: 00000000    ....
> 
> I.e. no reset or reset clear bit is set.

I see the same as above.
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Simon Horman Nov. 10, 2015, 12:10 a.m. UTC | #7
On Fri, Nov 06, 2015 at 09:50:27AM +0100, Geert Uytterhoeven wrote:
> On Fri, Nov 6, 2015 at 8:30 AM, Simon Horman <horms+renesas@verge.net.au> wrote:
> > Instantiate the thermal sensor in the r8a7793 device tree.
> >
> > Based on very similar work for the r8a7790 by Magnus Damm.
> 
> Given the similarity of R-Car M2-N and M2-W, I would have referred
> to r8a7791 ;-)
> 
> > Cc: Magnus Damm <damm@opensource.se>
> > Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
> 
> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be>

Thanks, I have queued this up.
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/arm/boot/dts/r8a7793.dtsi b/arch/arm/boot/dts/r8a7793.dtsi
index fcafa87616fa..6c7bae4318c9 100644
--- a/arch/arm/boot/dts/r8a7793.dtsi
+++ b/arch/arm/boot/dts/r8a7793.dtsi
@@ -53,6 +53,14 @@ 
 		interrupts = <1 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>;
 	};
 
+	thermal@e61f0000 {
+		compatible = "renesas,thermal-r8a7793", "renesas,rcar-thermal";
+		reg = <0 0xe61f0000 0 0x14>, <0 0xe61f0100 0 0x38>;
+		interrupts = <0 69 IRQ_TYPE_LEVEL_HIGH>;
+		clocks = <&mstp5_clks R8A7793_CLK_THERMAL>;
+		power-domains = <&cpg_clocks>;
+	};
+
 	timer {
 		compatible = "arm,armv7-timer";
 		interrupts = <1 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
@@ -329,6 +337,14 @@ 
 			clock-indices = <R8A7793_CLK_IRQC>;
 			clock-output-names = "irqc";
 		};
+		mstp5_clks: mstp5_clks@e6150144 {
+			compatible = "renesas,r8a7793-mstp-clocks", "renesas,cpg-mstp-clocks";
+			reg = <0 0xe6150144 0 4>, <0 0xe615003c 0 4>;
+			clocks = <&extal_clk>;
+			#clock-cells = <1>;
+			clock-indices = <R8A7793_CLK_THERMAL>;
+			clock-output-names = "thermal";
+		};
 		mstp7_clks: mstp7_clks@e615014c {
 			compatible = "renesas,r8a7793-mstp-clocks",
 				     "renesas,cpg-mstp-clocks";