Skip to content

Commit 7287d42

Browse files
arm64: dts: ti: k3-j784s4-main: Add system controller and SERDES lane mux
The system controller node manages the CTRL_MMR0 region. Add serdes_ln_ctrl node which is used for controlling the SERDES lane mux. Signed-off-by: Siddharth Vadapalli <[email protected]> [[email protected]: Fix serdes_ln_ctrl node] Signed-off-by: Jayesh Choudhary <[email protected]> Reviewed-by: Roger Quadros <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Vignesh Raghavendra <[email protected]>
1 parent 56bc311 commit 7287d42

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

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

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@
55
* Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
66
*/
77

8+
#include <dt-bindings/mux/mux.h>
9+
10+
#include "k3-serdes.h"
11+
812
&cbass_main {
913
msmc_ram: sram@70000000 {
1014
compatible = "mmio-sram";
@@ -26,6 +30,42 @@
2630
};
2731
};
2832

33+
scm_conf: bus@100000 {
34+
compatible = "simple-bus";
35+
reg = <0x00 0x00100000 0x00 0x1c000>;
36+
#address-cells = <1>;
37+
#size-cells = <1>;
38+
ranges = <0x00 0x00 0x00100000 0x1c000>;
39+
40+
serdes_ln_ctrl: mux-controller@4080 {
41+
compatible = "reg-mux";
42+
reg = <0x00004080 0x30>;
43+
#mux-control-cells = <1>;
44+
mux-reg-masks = <0x4080 0x3>, <0x4084 0x3>, /* SERDES0 lane0/1 select */
45+
<0x4088 0x3>, <0x408c 0x3>, /* SERDES0 lane2/3 select */
46+
<0x4090 0x3>, <0x4094 0x3>, /* SERDES1 lane0/1 select */
47+
<0x4098 0x3>, <0x409c 0x3>, /* SERDES1 lane2/3 select */
48+
<0x40a0 0x3>, <0x40a4 0x3>, /* SERDES2 lane0/1 select */
49+
<0x40a8 0x3>, <0x40ac 0x3>; /* SERDES2 lane2/3 select */
50+
idle-states = <J784S4_SERDES0_LANE0_PCIE1_LANE0>,
51+
<J784S4_SERDES0_LANE1_PCIE1_LANE1>,
52+
<J784S4_SERDES0_LANE2_IP3_UNUSED>,
53+
<J784S4_SERDES0_LANE3_USB>,
54+
<J784S4_SERDES1_LANE0_PCIE0_LANE0>,
55+
<J784S4_SERDES1_LANE1_PCIE0_LANE1>,
56+
<J784S4_SERDES1_LANE2_PCIE0_LANE2>,
57+
<J784S4_SERDES1_LANE3_PCIE0_LANE3>,
58+
<J784S4_SERDES2_LANE0_IP2_UNUSED>,
59+
<J784S4_SERDES2_LANE1_IP2_UNUSED>,
60+
<J784S4_SERDES2_LANE2_QSGMII_LANE1>,
61+
<J784S4_SERDES2_LANE3_QSGMII_LANE2>,
62+
<J784S4_SERDES4_LANE0_EDP_LANE0>,
63+
<J784S4_SERDES4_LANE1_EDP_LANE1>,
64+
<J784S4_SERDES4_LANE2_EDP_LANE2>,
65+
<J784S4_SERDES4_LANE3_EDP_LANE3>;
66+
};
67+
};
68+
2969
gic500: interrupt-controller@1800000 {
3070
compatible = "arm,gic-v3";
3171
#address-cells = <2>;

0 commit comments

Comments
 (0)