Skip to content

Commit 3aff48c

Browse files
Jared McArthurgregkh
authored andcommitted
arm64: dts: ti: k3-j7200: Fix register map for main domain pmx
[ Upstream commit b7af8b4 ] Commit 0d0a0b4 ("arm64: dts: ti: k3-j7200: fix main pinmux range") split the main_pmx0 into two nodes: main_pmx0 and main_pmx1 due to a non-addressable region, but incorrectly represented the ranges. As a result, the memory map for the pinctrl is incorrect. Fix this by introducing the correct ranges. The ranges are taken from the J7200 TRM [1] (Table 5-695. CTRL_MMR0 Registers). Padconfig starting addresses and ranges: - 0 to 66: 0x11c000, 0x10c - 68: 0x11c110, 0x004 - 71 to 73: 0x11c11c, 0x00c - 89 to 90: 0x11c164, 0x008 The datasheet [2] doesn't contain PADCONFIG63 (Table 6-106. Pin Multiplexing), but the pin is necessary for enabling the MMC1 CLKLP pad loopback and should be included in the pinmux register map. Due to the change in pinmux node addresses, change the pinmux node for the USB0_DRVVBUS pin to main_pmx2. The offset has not changed since the new main_pmx2 node has the same base address and range as the original main_pmx1 node. All other pinmuxing done within J7200 dts or dtso files only uses main_pmx0 which has not changed. [1] https://www.ti.com/lit/pdf/spruiu1 [2] https://www.ti.com/lit/gpn/dra821u Fixes: 0d0a0b4 ("arm64: dts: ti: k3-j7200: fix main pinmux range") Signed-off-by: Aniket Limaye <a-limaye@ti.com> Signed-off-by: Jared McArthur <j-mcarthur@ti.com> Reviewed-by: Vaishnav Achath <vaishnav.a@ti.com> Link: https://lore.kernel.org/r/20240926102533.398139-1-a-limaye@ti.com Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
1 parent 96e1ff3 commit 3aff48c

2 files changed

Lines changed: 21 additions & 3 deletions

File tree

arch/arm64/boot/dts/ti/k3-j7200-common-proc-board.dts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@
254254
};
255255
};
256256

257-
&main_pmx1 {
257+
&main_pmx2 {
258258
main_usbss0_pins_default: main-usbss0-default-pins {
259259
pinctrl-single,pins = <
260260
J721E_IOPAD(0x04, PIN_OUTPUT, 0) /* (T4) USB0_DRVVBUS */

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

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -426,10 +426,28 @@
426426
pinctrl-single,function-mask = <0xffffffff>;
427427
};
428428

429-
main_pmx1: pinctrl@11c11c {
429+
main_pmx1: pinctrl@11c110 {
430430
compatible = "ti,j7200-padconf", "pinctrl-single";
431431
/* Proxy 0 addressing */
432-
reg = <0x00 0x11c11c 0x00 0xc>;
432+
reg = <0x00 0x11c110 0x00 0x004>;
433+
#pinctrl-cells = <1>;
434+
pinctrl-single,register-width = <32>;
435+
pinctrl-single,function-mask = <0xffffffff>;
436+
};
437+
438+
main_pmx2: pinctrl@11c11c {
439+
compatible = "ti,j7200-padconf", "pinctrl-single";
440+
/* Proxy 0 addressing */
441+
reg = <0x00 0x11c11c 0x00 0x00c>;
442+
#pinctrl-cells = <1>;
443+
pinctrl-single,register-width = <32>;
444+
pinctrl-single,function-mask = <0xffffffff>;
445+
};
446+
447+
main_pmx3: pinctrl@11c164 {
448+
compatible = "ti,j7200-padconf", "pinctrl-single";
449+
/* Proxy 0 addressing */
450+
reg = <0x00 0x11c164 0x00 0x008>;
433451
#pinctrl-cells = <1>;
434452
pinctrl-single,register-width = <32>;
435453
pinctrl-single,function-mask = <0xffffffff>;

0 commit comments

Comments
 (0)