Skip to content

Commit 25aadf5

Browse files
danish-tinmenon
authored andcommitted
arm64: dts: ti: k3-am64-main: Switch ICSSG clock to core clock
ICSSG has 7 available clocks per instance. Add all the cloks to ICSSG nodes. ICSSG currently uses ICSSG_ICLK (clk id 20) which operates at 250MHz. Switch ICSSG clock to ICSSG_CORE clock (clk id 0) which operates at 333MHz. ICSSG_CORE clock will help get the most out of ICSSG as more cycles are needed to fully support all ICSSG features. This commit also changes assigned-clock-parents of coreclk-mux to ICSSG_CORE clock from ICSSG_ICLK. Performance update in dual mac mode With ICSSG_CORE Clk @ 333MHz Tx throughput - 934 Mbps Rx throughput - 914 Mbps, With ICSSG_ICLK clk @ 250MHz, Tx throughput - 920 Mbps Rx throughput - 706 Mbps Signed-off-by: MD Danish Anwar <[email protected]> Tested-by: Wadim Egorov <[email protected]> Reviewed-by: Roger Quadros <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Nishanth Menon <[email protected]>
1 parent f7ed5ae commit 25aadf5

File tree

1 file changed

+20
-2
lines changed

1 file changed

+20
-2
lines changed

arch/arm64/boot/dts/ti/k3-am64-main.dtsi

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1227,6 +1227,15 @@
12271227
#address-cells = <1>;
12281228
#size-cells = <1>;
12291229
ranges = <0x0 0x00 0x30000000 0x80000>;
1230+
clocks = <&k3_clks 81 0>, /* icssg0_core_clk */
1231+
<&k3_clks 81 3>, /* icssg0_iep_clk */
1232+
<&k3_clks 81 16>, /* icssg0_rgmii_mhz_250_clk */
1233+
<&k3_clks 81 17>, /* icssg0_rgmii_mhz_50_clk */
1234+
<&k3_clks 81 18>, /* icssg0_rgmii_mhz_5_clk */
1235+
<&k3_clks 81 19>, /* icssg0_uart_clk */
1236+
<&k3_clks 81 20>; /* icssg0_iclk */
1237+
assigned-clocks = <&k3_clks 81 0>;
1238+
assigned-clock-parents = <&k3_clks 81 2>;
12301239

12311240
icssg0_mem: memories@0 {
12321241
reg = <0x0 0x2000>,
@@ -1252,7 +1261,7 @@
12521261
clocks = <&k3_clks 81 0>, /* icssg0_core_clk */
12531262
<&k3_clks 81 20>; /* icssg0_iclk */
12541263
assigned-clocks = <&icssg0_coreclk_mux>;
1255-
assigned-clock-parents = <&k3_clks 81 20>;
1264+
assigned-clock-parents = <&k3_clks 81 0>;
12561265
};
12571266

12581267
icssg0_iepclk_mux: iepclk-mux@30 {
@@ -1397,6 +1406,15 @@
13971406
#address-cells = <1>;
13981407
#size-cells = <1>;
13991408
ranges = <0x0 0x00 0x30080000 0x80000>;
1409+
clocks = <&k3_clks 82 0>, /* icssg1_core_clk */
1410+
<&k3_clks 82 3>, /* icssg1_iep_clk */
1411+
<&k3_clks 82 16>, /* icssg1_rgmii_mhz_250_clk */
1412+
<&k3_clks 82 17>, /* icssg1_rgmii_mhz_50_clk */
1413+
<&k3_clks 82 18>, /* icssg1_rgmii_mhz_5_clk */
1414+
<&k3_clks 82 19>, /* icssg1_uart_clk */
1415+
<&k3_clks 82 20>; /* icssg1_iclk */
1416+
assigned-clocks = <&k3_clks 82 0>;
1417+
assigned-clock-parents = <&k3_clks 82 2>;
14001418

14011419
icssg1_mem: memories@0 {
14021420
reg = <0x0 0x2000>,
@@ -1422,7 +1440,7 @@
14221440
clocks = <&k3_clks 82 0>, /* icssg1_core_clk */
14231441
<&k3_clks 82 20>; /* icssg1_iclk */
14241442
assigned-clocks = <&icssg1_coreclk_mux>;
1425-
assigned-clock-parents = <&k3_clks 82 20>;
1443+
assigned-clock-parents = <&k3_clks 82 0>;
14261444
};
14271445

14281446
icssg1_iepclk_mux: iepclk-mux@30 {

0 commit comments

Comments
 (0)