From 3ad9d4965ec8a305c0163d58cd4e13cefb76b543 Mon Sep 17 00:00:00 2001 From: Stefan Eichenberger Date: Mon, 16 Jan 2023 14:35:34 +0100 Subject: [PATCH] device-tree: am64x: gemini: updated device tree version Update devicetrees for gemini platfrom. --- arch/arm/dts/k3-am642-gemini-v1.dts | 74 ++++++++++++++++++++++++-- arch/arm/dts/k3-am642-r5-gemini-v1.dts | 49 +++++++++++------ 2 files changed, 105 insertions(+), 18 deletions(-) diff --git a/arch/arm/dts/k3-am642-gemini-v1.dts b/arch/arm/dts/k3-am642-gemini-v1.dts index 072663c5fe..6166baf554 100644 --- a/arch/arm/dts/k3-am642-gemini-v1.dts +++ b/arch/arm/dts/k3-am642-gemini-v1.dts @@ -16,7 +16,8 @@ model = "NetModule AM642 based Gemini"; aliases { - i2c0 = &main_i2c1; + i2c0 = &main_i2c0; + i2c1 = &main_i2c1; i2c1 = &main_i2c2; }; @@ -50,7 +51,7 @@ pinctrl-single,pins = < AM64X_IOPAD(0x0294, PIN_INPUT, 0) /* (J19) MMC1_CMD */ AM64X_IOPAD(0x0290, PIN_INPUT, 0) /* (#N/A) MMC1_CLKLB */ - AM64X_IOPAD(0x028c, PIN_INPUT, 0) /* (L20) MMC1_CLK */ + AM64X_IOPAD(0x028c, PIN_INPUT_PULLDOWN, 0) /* (L20) MMC1_CLK */ AM64X_IOPAD(0x0288, PIN_INPUT, 0) /* (K21) MMC1_DAT0 */ AM64X_IOPAD(0x0284, PIN_INPUT, 0) /* (L21) MMC1_DAT1 */ AM64X_IOPAD(0x0280, PIN_INPUT, 0) /* (K19) MMC1_DAT2 */ @@ -159,6 +160,14 @@ AM64X_IOPAD(0x026c, PIN_INPUT_PULLUP, 0) /* (B19) I2C1_SDA */ >; }; + + + main_i2c0_pins_default: main-i2c0-pins-default { + pinctrl-single,pins = < + AM64X_IOPAD(0x0260, PIN_INPUT_PULLUP, 0) /* (P19) I2C2_SCL */ + AM64X_IOPAD(0x0264, PIN_INPUT_PULLUP, 0) /* (R21) I2C2_SDA */ + >; + }; }; &usbss0 { @@ -173,6 +182,14 @@ pinctrl-0 = <&main_usb0_pins_default>; }; +&main_i2c0 { + status = "okay"; + + pinctrl-names = "default"; + pinctrl-0 = <&main_i2c0_pins_default>; + clock-frequency = <100000>; +}; + /* SYS_I2C */ &main_i2c1 { status = "okay"; @@ -244,7 +261,14 @@ &sdhci1 { status = "disabled"; - /delete-property/ pinctrl-0; + pinctrl-names = "default"; + bus-width = <4>; + pinctrl-0 = <&main_mmc1_pins_default>; + ti,driver-strength-ohm = <50>; + disable-wp; + broken-cd; + /delete-property/ ti,otap-del-sel-hs200; + /delete-property/ ti,otap-del-sel-hs400; }; &cpsw3g { @@ -267,8 +291,52 @@ }; }; +&main_gpio0 { + status = "okay"; + ti,ngpio = <87>; + pinctrl-names = "default"; + pinctrl-0 = <&gpio0_pins>; + wlan_en { + gpio-hog; + gpios = <5 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "WLAN_EN"; + }; + + canfd0_en { + gpio-hog; + gpios = <74 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "CANFD0_CTRL_EN"; + }; + + canfd1_en { + gpio-hog; + gpios = <72 GPIO_ACTIVE_HIGH>; + output-high; + line-name = "CANFD1_CTRL_EN"; + }; + + canfd0_stb { + gpio-hog; + gpios = <55 GPIO_ACTIVE_HIGH>; + output-low; + /* In V1 this is high active even though it is STB~ */ + line-name = "CANFD0_CTRL_STB"; + }; + + canfd1_stb { + gpio-hog; + gpios = <54 GPIO_ACTIVE_HIGH>; + output-low; + /* In V1 this is high active even though it is STB~ */ + line-name = "CANFD1_CTRL_STB"; + }; +}; + &main_gpio1 { status = "okay"; + ti,ngpio = <88>; phy_reset { gpio-hog; diff --git a/arch/arm/dts/k3-am642-r5-gemini-v1.dts b/arch/arm/dts/k3-am642-r5-gemini-v1.dts index dc1424e107..a199dd8069 100644 --- a/arch/arm/dts/k3-am642-r5-gemini-v1.dts +++ b/arch/arm/dts/k3-am642-r5-gemini-v1.dts @@ -104,16 +104,34 @@ >; }; - main_mmc1_pins_default: main-mmc1-pins-default { + main_mmc0_pins_default: main-mmc0-pins-default { + u-boot,dm-spl; pinctrl-single,pins = < - AM64X_IOPAD(0x0294, PIN_INPUT, 0) /* (J19) MMC1_CMD */ - AM64X_IOPAD(0x0290, PIN_INPUT, 0) /* (#N/A) MMC1_CLKLB */ - AM64X_IOPAD(0x028c, PIN_INPUT, 0) /* (L20) MMC1_CLK */ - AM64X_IOPAD(0x0288, PIN_INPUT, 0) /* (K21) MMC1_DAT0 */ - AM64X_IOPAD(0x0284, PIN_INPUT, 0) /* (L21) MMC1_DAT1 */ - AM64X_IOPAD(0x0280, PIN_INPUT, 0) /* (K19) MMC1_DAT2 */ - AM64X_IOPAD(0x027c, PIN_INPUT, 0) /* (K18) MMC1_DAT3 */ - AM64X_IOPAD(0x0298, PIN_INPUT, 0) /* (D19) MMC1_SDCD */ + AM64X_IOPAD(0x01a8, PIN_INPUT_PULLDOWN, 0) /* (B25) MMC0_CLK */ + AM64X_IOPAD(0x01aC, PIN_INPUT_PULLUP, 0) /* (B27) MMC0_CMD */ + AM64X_IOPAD(0x01a4, PIN_INPUT_PULLUP, 0) /* (A26) MMC0_DAT0 */ + AM64X_IOPAD(0x01a0, PIN_INPUT_PULLUP, 0) /* (E25) MMC0_DAT1 */ + AM64X_IOPAD(0x019c, PIN_INPUT_PULLUP, 0) /* (C26) MMC0_DAT2 */ + AM64X_IOPAD(0x0198, PIN_INPUT_PULLUP, 0) /* (A25) MMC0_DAT3 */ + AM64X_IOPAD(0x0194, PIN_INPUT_PULLUP, 0) /* (E24) MMC0_DAT4 */ + AM64X_IOPAD(0x0190, PIN_INPUT_PULLUP, 0) /* (A24) MMC0_DAT5 */ + AM64X_IOPAD(0x018c, PIN_INPUT_PULLUP, 0) /* (B26) MMC0_DAT6 */ + AM64X_IOPAD(0x0188, PIN_INPUT_PULLUP, 0) /* (D25) MMC0_DAT7 */ + AM64X_IOPAD(0x01b0, PIN_INPUT, 0) /* (C25) MMC0_DS */ + >; + }; + + main_mmc1_pins_default: main-mmc1-pins-default { + u-boot,dm-spl; + pinctrl-single,pins = < + AM64X_IOPAD(0x0294, PIN_INPUT_PULLUP, 0) /* (J19) MMC1_CMD */ + AM64X_IOPAD(0x028c, PIN_INPUT_PULLDOWN, 0) /* (L20) MMC1_CLK */ + AM64X_IOPAD(0x0288, PIN_INPUT_PULLUP, 0) /* (K21) MMC1_DAT0 */ + AM64X_IOPAD(0x0284, PIN_INPUT_PULLUP, 0) /* (L21) MMC1_DAT1 */ + AM64X_IOPAD(0x0280, PIN_INPUT_PULLUP, 0) /* (K19) MMC1_DAT2 */ + AM64X_IOPAD(0x027c, PIN_INPUT_PULLUP, 0) /* (K18) MMC1_DAT3 */ + AM64X_IOPAD(0x0298, PIN_INPUT_PULLUP, 0) /* (D19) MMC1_SDCD */ + AM64X_IOPAD(0x029c, PIN_INPUT_PULLUP, 0) /* (C20) MMC1_SDWP */ >; }; @@ -165,13 +183,18 @@ clock-names = "clk_xin"; ti,driver-strength-ohm = <50>; disable-wp; + pinctrl-0 = <&main_mmc0_pins_default>; /delete-property/ ti,otap-del-sel-hs200; /delete-property/ ti,otap-del-sel-hs400; }; &sdhci1 { - status = "disabled"; - /delete-property/ pinctrl-0; + /delete-property/ power-domains; + clocks = <&clk_200mhz>; + clock-names = "clk_xin"; + ti,driver-strength-ohm = <50>; + disable-wp; + pinctrl-0 = <&main_mmc1_pins_default>; }; &main_gpio0 { @@ -196,10 +219,6 @@ /delete-property/ power-domains; }; -&main_gpio0 { - u-boot,dm-spl; -}; - &memorycontroller { // ti,ddr-freq0 = <200000000>; };