Re: ABE/AESS on modern kernel: clocks, hwmods etc.

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

 



Hi,

> Am 05.09.2023 um 16:44 schrieb Andreas Kemnade <andreas@xxxxxxxxxxxx>:
> 
> On Tue, 5 Sep 2023 14:42:03 +0200
> "H. Nikolaus Schaller" <hns@xxxxxxxxxxxxx> wrote:
> 
>> Hi Tony,
>> 
>>> Am 05.09.2023 um 08:12 schrieb Tony Lindgren <tony@xxxxxxxxxxx>:
>>> 
>>> The key observation is that the abe_iclk references in the DTS seem to be nowhere referenced  
>>>> (which may or may not be an issue):
>>>> 
>>>> https://github.com/goldelico/letux-kernel/blob/letux/aess-v12/arch/arm/boot/dts/ti/omap/omap44xx-clocks.dtsi#L509
>>>> https://github.com/goldelico/letux-kernel/blob/letux/aess-v12/arch/arm/boot/dts/ti/omap/omap54xx-clocks.dtsi#L161  
>>> 
>>> So I guess the ick is in the dts the ocp_abe_iclk@528 for omap4 and
>>> abe_iclk@528 for omap5. Seems like the driver should request them, I recall
>>> that the interconnect target module does not need the ick to access sysc
>>> and revision registers.  
>> 
>> Yes, that is what I suspect but I don't know how to request them.
>> 
> add ,"ick" to the clock-names line in the target-module?
> and ,<&ocp_abe_iclk> to the target module?

You mean

diff --git a/arch/arm/boot/dts/ti/omap/omap4-l4-abe.dtsi b/arch/arm/boot/dts/ti/omap/omap4-l4-abe.dtsi
index 7ca7b369b4e59..aa140a8bb9f29 100644
--- a/arch/arm/boot/dts/ti/omap/omap4-l4-abe.dtsi
+++ b/arch/arm/boot/dts/ti/omap/omap4-l4-abe.dtsi
@@ -482,8 +482,8 @@ target-module@f1000 {                       /* 0x401f1000, ap 32 20.0 */
                                        <SYSC_IDLE_NO>,
                                        <SYSC_IDLE_SMART>;
                        /* Domains (V, P, C): iva, abe_pwrdm, abe_clkdm */
-                       clocks = <&abe_clkctrl OMAP4_AESS_CLKCTRL 0>;
-                       clock-names = "fck";
+                       clocks = <&abe_clkctrl OMAP4_AESS_CLKCTRL 0>, <&ocp_abe_iclk>;
+                       clock-names = "fck", "ick";
                        #address-cells = <1>;
                        #size-cells = <1>;
 
diff --git a/arch/arm/boot/dts/ti/omap/omap5-l4-abe.dtsi b/arch/arm/boot/dts/ti/omap/omap5-l4-abe.dtsi
index 611c92e04fe7a..647f34e38c431 100644
--- a/arch/arm/boot/dts/ti/omap/omap5-l4-abe.dtsi
+++ b/arch/arm/boot/dts/ti/omap/omap5-l4-abe.dtsi
@@ -421,8 +421,8 @@ target-module@f1000 {                       /* 0x401f1000, ap 32 20.0 */
                                        <SYSC_IDLE_NO>,
                                        <SYSC_IDLE_SMART>;
                        /* Domains (V, P, C): iva, abe_pwrdm, abe_clkdm */
-                       clocks = <&abe_clkctrl OMAP5_AESS_CLKCTRL 0>;
-                       clock-names = "fck";
+                       clocks = <&abe_clkctrl OMAP5_AESS_CLKCTRL 0>, <&abe_iclk>;
+                       clock-names = "fck", "ick";
                        #address-cells = <1>;
                        #size-cells = <1>;
 

Well, certainly worth trying!

BR,
Nikolaus



[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux