diff mbox

[17/17] ARM: dts: Add missing hwmod related properties for dra7

Message ID 20170828211918.11573-18-tony@atomide.com (mailing list archive)
State New, archived
Headers show

Commit Message

Tony Lindgren Aug. 28, 2017, 9:19 p.m. UTC
On dra7 we're missing the smartreflex and hdq nodes with their
related "ti,hwmods" property that the SoC interconnect code needs.

Note that this will only show up as a bug with "doesn't have
mpu register target base" boot errors when the legacy platform
data is removed.

Note that the related driver also needs to be updated to probe
using device tree and get the platform data passed to it using
auxdata with arch/arm/mach-omap2/pdata-quirks.c.

Let's also update the related binding documentation while at it.

Cc: Nishanth Menon <nm@ti.com>
Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Cc: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 .../devicetree/bindings/power/ti-smartreflex.txt     |  2 ++
 arch/arm/boot/dts/dra7.dtsi                          | 20 ++++++++++++++++++++
 2 files changed, 22 insertions(+)

Comments

Nishanth Menon Aug. 28, 2017, 9:34 p.m. UTC | #1
On 08/28/2017 04:19 PM, Tony Lindgren wrote:
> On dra7 we're missing the smartreflex and hdq nodes with their
> related "ti,hwmods" property that the SoC interconnect code needs.
> 
> Note that this will only show up as a bug with "doesn't have
> mpu register target base" boot errors when the legacy platform
> data is removed.
> 
> Note that the related driver also needs to be updated to probe
> using device tree and get the platform data passed to it using
> auxdata with arch/arm/mach-omap2/pdata-quirks.c.
> 
> Let's also update the related binding documentation while at it.
> 
> Cc: Nishanth Menon <nm@ti.com>
> Cc: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> Cc: Tero Kristo <t-kristo@ti.com>
> Signed-off-by: Tony Lindgren <tony@atomide.com>
> ---
>   .../devicetree/bindings/power/ti-smartreflex.txt     |  2 ++
>   arch/arm/boot/dts/dra7.dtsi                          | 20 ++++++++++++++++++++
>   2 files changed, 22 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/power/ti-smartreflex.txt b/Documentation/devicetree/bindings/power/ti-smartreflex.txt
> --- a/Documentation/devicetree/bindings/power/ti-smartreflex.txt
> +++ b/Documentation/devicetree/bindings/power/ti-smartreflex.txt
> @@ -11,6 +11,8 @@ compatible: Shall be one of the following:
>   	    "ti,omap4-smartreflex-core"
>   	    "ti,omap4-smartreflex-mpu"
>   	    "ti,omap4-smartreflex-iva"
> +	    "ti,dra7-smartreflex-core"
> +	    "ti,dra7-smartreflex-mpu"
>   
>   reg: Shall contain the device instance IO range
>   
> diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
> --- a/arch/arm/boot/dts/dra7.dtsi
> +++ b/arch/arm/boot/dts/dra7.dtsi
> @@ -457,6 +457,7 @@
>   			#dma-cells = <1>;
>   			dma-channels = <32>;
>   			dma-requests = <127>;
> +			ti,hwmods = "dma_system";
>   		};
>   
>   		edma: edma@43300000 {
> @@ -1069,6 +1070,13 @@
>   			max-frequency = <192000000>;
>   		};
>   
> +		hdqw1w: 1w@480b2000 {
> +			compatible = "ti,omap3-1w";
> +			reg = <0x480b2000 0x1000>;
> +			interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
> +			ti,hwmods = "hdq1w";
> +		};
> +
>   		mmc2: mmc@480b4000 {
>   			compatible = "ti,omap4-hsmmc";
>   			reg = <0x480b4000 0x400>;
> @@ -1489,6 +1497,18 @@
>   			};
>   		};
>   
> +		smartreflex_core: smartreflex4a0dd000 {
> +			compatible = "ti,dra7-smartreflex-core";
> +			ti,hwmods = "smartreflex_core";
> +			reg = <0x4a0dd000 0x80>;
> +		};
> +
> +		smartreflex_mpu: smartreflex@4a0d9000 {
> +			compatible = "ti,dra7-smartreflex-mpu";
> +			ti,hwmods = "smartreflex_mpu";
> +			reg = <0x4a0d9000 0x80>;
> +		};


Have you checked TRM for these? 
http://www.ti.com/lit/ug/sprui30d/sprui30d.pdf

These are disabled on the SoC and marked as reserved.
Tony Lindgren Aug. 28, 2017, 9:37 p.m. UTC | #2
* Nishanth Menon <nm@ti.com> [170828 14:35]:
> On 08/28/2017 04:19 PM, Tony Lindgren wrote:
> > On dra7 we're missing the smartreflex and hdq nodes with their
> > related "ti,hwmods" property that the SoC interconnect code needs.
> > 
> > Note that this will only show up as a bug with "doesn't have
> > mpu register target base" boot errors when the legacy platform
> > data is removed.
> > 
> > Note that the related driver also needs to be updated to probe
> > using device tree and get the platform data passed to it using
> > auxdata with arch/arm/mach-omap2/pdata-quirks.c.
> > 
> > Let's also update the related binding documentation while at it.
...
> > @@ -1489,6 +1497,18 @@
> >   			};
> >   		};
> > +		smartreflex_core: smartreflex4a0dd000 {
> > +			compatible = "ti,dra7-smartreflex-core";
> > +			ti,hwmods = "smartreflex_core";
> > +			reg = <0x4a0dd000 0x80>;
> > +		};
> > +
> > +		smartreflex_mpu: smartreflex@4a0d9000 {
> > +			compatible = "ti,dra7-smartreflex-mpu";
> > +			ti,hwmods = "smartreflex_mpu";
> > +			reg = <0x4a0d9000 0x80>;
> > +		};
> 
> 
> Have you checked TRM for these?
> http://www.ti.com/lit/ug/sprui30d/sprui30d.pdf
> 
> These are disabled on the SoC and marked as reserved.

Then why do we still have legacy hwmod data for them?

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Nishanth Menon Aug. 28, 2017, 9:52 p.m. UTC | #3
On 08/28/2017 04:37 PM, Tony Lindgren wrote:
> * Nishanth Menon <nm@ti.com> [170828 14:35]:
>> On 08/28/2017 04:19 PM, Tony Lindgren wrote:
>>> On dra7 we're missing the smartreflex and hdq nodes with their
>>> related "ti,hwmods" property that the SoC interconnect code needs.
>>>
>>> Note that this will only show up as a bug with "doesn't have
>>> mpu register target base" boot errors when the legacy platform
>>> data is removed.
>>>
>>> Note that the related driver also needs to be updated to probe
>>> using device tree and get the platform data passed to it using
>>> auxdata with arch/arm/mach-omap2/pdata-quirks.c.
>>>
>>> Let's also update the related binding documentation while at it.
> ...
>>> @@ -1489,6 +1497,18 @@
>>>    			};
>>>    		};
>>> +		smartreflex_core: smartreflex4a0dd000 {
>>> +			compatible = "ti,dra7-smartreflex-core";
>>> +			ti,hwmods = "smartreflex_core";
>>> +			reg = <0x4a0dd000 0x80>;
>>> +		};
>>> +
>>> +		smartreflex_mpu: smartreflex@4a0d9000 {
>>> +			compatible = "ti,dra7-smartreflex-mpu";
>>> +			ti,hwmods = "smartreflex_mpu";
>>> +			reg = <0x4a0d9000 0x80>;
>>> +		};
>>
>>
>> Have you checked TRM for these?
>> http://www.ti.com/lit/ug/sprui30d/sprui30d.pdf
>>
>> These are disabled on the SoC and marked as reserved.
> 
> Then why do we still have legacy hwmod data for them?

We should probably drop them - probably legacy of autogeneration at 
some point in history.
Tony Lindgren Aug. 28, 2017, 10:27 p.m. UTC | #4
* Nishanth Menon <nm@ti.com> [170828 14:53]:
> On 08/28/2017 04:37 PM, Tony Lindgren wrote:
> > * Nishanth Menon <nm@ti.com> [170828 14:35]:
> > > On 08/28/2017 04:19 PM, Tony Lindgren wrote:
> > > > On dra7 we're missing the smartreflex and hdq nodes with their
> > > > related "ti,hwmods" property that the SoC interconnect code needs.
> > > > 
> > > > Note that this will only show up as a bug with "doesn't have
> > > > mpu register target base" boot errors when the legacy platform
> > > > data is removed.
> > > > 
> > > > Note that the related driver also needs to be updated to probe
> > > > using device tree and get the platform data passed to it using
> > > > auxdata with arch/arm/mach-omap2/pdata-quirks.c.
> > > > 
> > > > Let's also update the related binding documentation while at it.
> > ...
> > > > @@ -1489,6 +1497,18 @@
> > > >    			};
> > > >    		};
> > > > +		smartreflex_core: smartreflex4a0dd000 {
> > > > +			compatible = "ti,dra7-smartreflex-core";
> > > > +			ti,hwmods = "smartreflex_core";
> > > > +			reg = <0x4a0dd000 0x80>;
> > > > +		};
> > > > +
> > > > +		smartreflex_mpu: smartreflex@4a0d9000 {
> > > > +			compatible = "ti,dra7-smartreflex-mpu";
> > > > +			ti,hwmods = "smartreflex_mpu";
> > > > +			reg = <0x4a0d9000 0x80>;
> > > > +		};
> > > 
> > > 
> > > Have you checked TRM for these?
> > > http://www.ti.com/lit/ug/sprui30d/sprui30d.pdf
> > > 
> > > These are disabled on the SoC and marked as reserved.
> > 
> > Then why do we still have legacy hwmod data for them?
> 
> We should probably drop them - probably legacy of autogeneration at some
> point in history.

OK thanks, will drop them and update this patch accordingly.

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" 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/Documentation/devicetree/bindings/power/ti-smartreflex.txt b/Documentation/devicetree/bindings/power/ti-smartreflex.txt
--- a/Documentation/devicetree/bindings/power/ti-smartreflex.txt
+++ b/Documentation/devicetree/bindings/power/ti-smartreflex.txt
@@ -11,6 +11,8 @@  compatible: Shall be one of the following:
 	    "ti,omap4-smartreflex-core"
 	    "ti,omap4-smartreflex-mpu"
 	    "ti,omap4-smartreflex-iva"
+	    "ti,dra7-smartreflex-core"
+	    "ti,dra7-smartreflex-mpu"
 
 reg: Shall contain the device instance IO range
 
diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi
--- a/arch/arm/boot/dts/dra7.dtsi
+++ b/arch/arm/boot/dts/dra7.dtsi
@@ -457,6 +457,7 @@ 
 			#dma-cells = <1>;
 			dma-channels = <32>;
 			dma-requests = <127>;
+			ti,hwmods = "dma_system";
 		};
 
 		edma: edma@43300000 {
@@ -1069,6 +1070,13 @@ 
 			max-frequency = <192000000>;
 		};
 
+		hdqw1w: 1w@480b2000 {
+			compatible = "ti,omap3-1w";
+			reg = <0x480b2000 0x1000>;
+			interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
+			ti,hwmods = "hdq1w";
+		};
+
 		mmc2: mmc@480b4000 {
 			compatible = "ti,omap4-hsmmc";
 			reg = <0x480b4000 0x400>;
@@ -1489,6 +1497,18 @@ 
 			};
 		};
 
+		smartreflex_core: smartreflex4a0dd000 {
+			compatible = "ti,dra7-smartreflex-core";
+			ti,hwmods = "smartreflex_core";
+			reg = <0x4a0dd000 0x80>;
+		};
+
+		smartreflex_mpu: smartreflex@4a0d9000 {
+			compatible = "ti,dra7-smartreflex-mpu";
+			ti,hwmods = "smartreflex_mpu";
+			reg = <0x4a0d9000 0x80>;
+		};
+
 		omap_dwc3_1: omap_dwc3_1@48880000 {
 			compatible = "ti,dwc3";
 			ti,hwmods = "usb_otg_ss1";