* [PATCH 0/2] arm64: Initial support for Texas Instruments AM642 SK
@ 2021-01-21 14:39 ` Lokesh Vutla
0 siblings, 0 replies; 16+ messages in thread
From: Lokesh Vutla @ 2021-01-21 14:39 UTC (permalink / raw)
To: Nishanth Menon, Rob Herring
Cc: Linux ARM Mailing List, Device Tree Mailing List, Sekhar Nori,
Vignesh R, Kishon Vijay Abraham I, Dave Gerlach, Lokesh Vutla
AM642 StarterKit (SK) board is a low cost, small form factor board
designed for TI’s AM642 SoC. This series introduces basic support for
AM642 SK.
Depends on Dave's series for adding AM642 SoC:
https://patchwork.kernel.org/project/linux-arm-kernel/list/?series=418539
Lokesh Vutla (2):
dt-bindings: arm: ti: Add bindings for AM642 SK
arm64: dts: ti: Add support for AM642 SK
.../devicetree/bindings/arm/ti/k3.yaml | 1 +
arch/arm64/boot/dts/ti/Makefile | 3 +-
arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 ++++++++++++++++++
3 files changed, 148 insertions(+), 1 deletion(-)
create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
--
2.30.0
^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 0/2] arm64: Initial support for Texas Instruments AM642 SK
@ 2021-01-21 14:39 ` Lokesh Vutla
0 siblings, 0 replies; 16+ messages in thread
From: Lokesh Vutla @ 2021-01-21 14:39 UTC (permalink / raw)
To: Nishanth Menon, Rob Herring
Cc: Device Tree Mailing List, Vignesh R, Dave Gerlach, Lokesh Vutla,
Sekhar Nori, Kishon Vijay Abraham I, Linux ARM Mailing List
AM642 StarterKit (SK) board is a low cost, small form factor board
designed for TI’s AM642 SoC. This series introduces basic support for
AM642 SK.
Depends on Dave's series for adding AM642 SoC:
https://patchwork.kernel.org/project/linux-arm-kernel/list/?series=418539
Lokesh Vutla (2):
dt-bindings: arm: ti: Add bindings for AM642 SK
arm64: dts: ti: Add support for AM642 SK
.../devicetree/bindings/arm/ti/k3.yaml | 1 +
arch/arm64/boot/dts/ti/Makefile | 3 +-
arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 ++++++++++++++++++
3 files changed, 148 insertions(+), 1 deletion(-)
create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
--
2.30.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 1/2] dt-bindings: arm: ti: Add bindings for AM642 SK
2021-01-21 14:39 ` Lokesh Vutla
@ 2021-01-21 14:39 ` Lokesh Vutla
-1 siblings, 0 replies; 16+ messages in thread
From: Lokesh Vutla @ 2021-01-21 14:39 UTC (permalink / raw)
To: Nishanth Menon, Rob Herring
Cc: Linux ARM Mailing List, Device Tree Mailing List, Sekhar Nori,
Vignesh R, Kishon Vijay Abraham I, Dave Gerlach, Lokesh Vutla
AM642 StarterKit (SK) board is a low cost, small form factor board
designed for TI’s AM642 SoC.
Add DT binding documentation for AM642 SK.
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
---
Documentation/devicetree/bindings/arm/ti/k3.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/ti/k3.yaml b/Documentation/devicetree/bindings/arm/ti/k3.yaml
index 393f94a64f8d..a9e7f981631e 100644
--- a/Documentation/devicetree/bindings/arm/ti/k3.yaml
+++ b/Documentation/devicetree/bindings/arm/ti/k3.yaml
@@ -37,6 +37,7 @@ properties:
items:
- enum:
- ti,am642-evm
+ - ti,am642-sk
- const: ti,am642
additionalProperties: true
--
2.30.0
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH 1/2] dt-bindings: arm: ti: Add bindings for AM642 SK
@ 2021-01-21 14:39 ` Lokesh Vutla
0 siblings, 0 replies; 16+ messages in thread
From: Lokesh Vutla @ 2021-01-21 14:39 UTC (permalink / raw)
To: Nishanth Menon, Rob Herring
Cc: Device Tree Mailing List, Vignesh R, Dave Gerlach, Lokesh Vutla,
Sekhar Nori, Kishon Vijay Abraham I, Linux ARM Mailing List
AM642 StarterKit (SK) board is a low cost, small form factor board
designed for TI’s AM642 SoC.
Add DT binding documentation for AM642 SK.
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
---
Documentation/devicetree/bindings/arm/ti/k3.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/ti/k3.yaml b/Documentation/devicetree/bindings/arm/ti/k3.yaml
index 393f94a64f8d..a9e7f981631e 100644
--- a/Documentation/devicetree/bindings/arm/ti/k3.yaml
+++ b/Documentation/devicetree/bindings/arm/ti/k3.yaml
@@ -37,6 +37,7 @@ properties:
items:
- enum:
- ti,am642-evm
+ - ti,am642-sk
- const: ti,am642
additionalProperties: true
--
2.30.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH 2/2] arm64: dts: ti: Add support for AM642 SK
2021-01-21 14:39 ` Lokesh Vutla
@ 2021-01-21 14:39 ` Lokesh Vutla
-1 siblings, 0 replies; 16+ messages in thread
From: Lokesh Vutla @ 2021-01-21 14:39 UTC (permalink / raw)
To: Nishanth Menon, Rob Herring
Cc: Linux ARM Mailing List, Device Tree Mailing List, Sekhar Nori,
Vignesh R, Kishon Vijay Abraham I, Dave Gerlach, Lokesh Vutla
AM642 StarterKit (SK) board is a low cost, small form factor board
designed for TI’s AM642 SoC. It supports the following interfaces:
* 2 GB LPDDR4 RAM
* x2 Gigabit Ethernet interfaces capable of working in switch and MAC mode
* x1 USB 3.0 Type-A port
* x1 UHS-1 capable µSD card slot
* 2.4/5 GHz WLAN + Bluetooth 4.2 through WL1837
* 512 Mbit OSPI flash
* x2 UART through UART-USB bridge
* XDS110 for onboard JTAG debug using USB
* Temperature sensors, user push buttons and LEDs
* 40-pin Raspberry Pi compatible GPIO header
* 24-pin header for peripherals in MCU island (I2C, UART, SPI, IO)
* 54-pin header for Programmable Realtime Unit (PRU) IO pins
* Interface for remote automation (power and reset, boot mode change)
Add basic support for AM642 SK.
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
---
arch/arm64/boot/dts/ti/Makefile | 3 +-
arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 +++++++++++++++++++++++++
2 files changed, 147 insertions(+), 1 deletion(-)
create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
index c687739e2bca..6aa642eb56d4 100644
--- a/arch/arm64/boot/dts/ti/Makefile
+++ b/arch/arm64/boot/dts/ti/Makefile
@@ -12,4 +12,5 @@ dtb-$(CONFIG_ARCH_K3) += k3-j721e-common-proc-board.dtb
dtb-$(CONFIG_ARCH_K3) += k3-j7200-common-proc-board.dtb
-dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb
+dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb \
+ k3-am642-sk.dtb
diff --git a/arch/arm64/boot/dts/ti/k3-am642-sk.dts b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
new file mode 100644
index 000000000000..5b473aaa225d
--- /dev/null
+++ b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
@@ -0,0 +1,145 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include "k3-am642.dtsi"
+
+/ {
+ compatible = "ti,am642-evm", "ti,am642";
+ model = "Texas Instruments AM642 SK";
+
+ chosen {
+ stdout-path = "serial2:115200n8";
+ bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
+ };
+
+ memory@80000000 {
+ device_type = "memory";
+ /* 2G RAM */
+ reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
+
+ };
+
+ reserved-memory {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ secure_ddr: optee@9e800000 {
+ reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
+ alignment = <0x1000>;
+ no-map;
+ };
+ };
+
+ vusb_main: fixed-regulator-vusb-main5v0 {
+ /* USB MAIN INPUT 5V DC */
+ compatible = "regulator-fixed";
+ regulator-name = "vusb_main5v0";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ vcc_3v3_sys: fixedregulator-vcc-3v3-sys {
+ /* output of LP8733xx */
+ compatible = "regulator-fixed";
+ regulator-name = "vcc_3v3_sys";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ vin-supply = <&vusb_main>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ vdd_mmc1: fixed-regulator-sd {
+ /* TPS2051BD */
+ compatible = "regulator-fixed";
+ regulator-name = "vdd_mmc1";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-boot-on;
+ enable-active-high;
+ vin-supply = <&vcc_3v3_sys>;
+ gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
+ };
+};
+
+&main_pmx0 {
+ main_mmc1_pins_default: main-mmc1-pins-default {
+ 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 */
+ >;
+ };
+
+ main_i2c1_pins_default: main-i2c1-pins-default {
+ pinctrl-single,pins = <
+ AM64X_IOPAD(0x0268, PIN_INPUT_PULLUP, 0) /* (C18) I2C1_SCL */
+ AM64X_IOPAD(0x026c, PIN_INPUT_PULLUP, 0) /* (B19) I2C1_SDA */
+ >;
+ };
+};
+
+&main_uart1 {
+ /* main_uart1 is reserved for firmware usage */
+ status = "reserved";
+};
+
+&main_uart2 {
+ status = "disabled";
+};
+
+&main_uart3 {
+ status = "disabled";
+};
+
+&main_uart4 {
+ status = "disabled";
+};
+
+&main_uart5 {
+ status = "disabled";
+};
+
+&main_uart6 {
+ status = "disabled";
+};
+
+&main_i2c1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&main_i2c1_pins_default>;
+ clock-frequency = <400000>;
+
+ exp1: gpio@70 {
+ compatible = "nxp,pca9538";
+ reg = <0x70>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST",
+ "PRU_DETECT", "MMC1_SD_EN",
+ "VPP_LDO_EN", "RPI_PS_3V3_En",
+ "RPI_PS_5V0_En", "RPI_HAT_DETECT";
+ };
+};
+
+&sdhci1 {
+ /* SD/MMC */
+ vmmc-supply = <&vdd_mmc1>;
+ pinctrl-names = "default";
+ bus-width = <4>;
+ pinctrl-0 = <&main_mmc1_pins_default>;
+ ti,driver-strength-ohm = <50>;
+ disable-wp;
+};
--
2.30.0
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH 2/2] arm64: dts: ti: Add support for AM642 SK
@ 2021-01-21 14:39 ` Lokesh Vutla
0 siblings, 0 replies; 16+ messages in thread
From: Lokesh Vutla @ 2021-01-21 14:39 UTC (permalink / raw)
To: Nishanth Menon, Rob Herring
Cc: Device Tree Mailing List, Vignesh R, Dave Gerlach, Lokesh Vutla,
Sekhar Nori, Kishon Vijay Abraham I, Linux ARM Mailing List
AM642 StarterKit (SK) board is a low cost, small form factor board
designed for TI’s AM642 SoC. It supports the following interfaces:
* 2 GB LPDDR4 RAM
* x2 Gigabit Ethernet interfaces capable of working in switch and MAC mode
* x1 USB 3.0 Type-A port
* x1 UHS-1 capable µSD card slot
* 2.4/5 GHz WLAN + Bluetooth 4.2 through WL1837
* 512 Mbit OSPI flash
* x2 UART through UART-USB bridge
* XDS110 for onboard JTAG debug using USB
* Temperature sensors, user push buttons and LEDs
* 40-pin Raspberry Pi compatible GPIO header
* 24-pin header for peripherals in MCU island (I2C, UART, SPI, IO)
* 54-pin header for Programmable Realtime Unit (PRU) IO pins
* Interface for remote automation (power and reset, boot mode change)
Add basic support for AM642 SK.
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
---
arch/arm64/boot/dts/ti/Makefile | 3 +-
arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 +++++++++++++++++++++++++
2 files changed, 147 insertions(+), 1 deletion(-)
create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
index c687739e2bca..6aa642eb56d4 100644
--- a/arch/arm64/boot/dts/ti/Makefile
+++ b/arch/arm64/boot/dts/ti/Makefile
@@ -12,4 +12,5 @@ dtb-$(CONFIG_ARCH_K3) += k3-j721e-common-proc-board.dtb
dtb-$(CONFIG_ARCH_K3) += k3-j7200-common-proc-board.dtb
-dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb
+dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb \
+ k3-am642-sk.dtb
diff --git a/arch/arm64/boot/dts/ti/k3-am642-sk.dts b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
new file mode 100644
index 000000000000..5b473aaa225d
--- /dev/null
+++ b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
@@ -0,0 +1,145 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include "k3-am642.dtsi"
+
+/ {
+ compatible = "ti,am642-evm", "ti,am642";
+ model = "Texas Instruments AM642 SK";
+
+ chosen {
+ stdout-path = "serial2:115200n8";
+ bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
+ };
+
+ memory@80000000 {
+ device_type = "memory";
+ /* 2G RAM */
+ reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
+
+ };
+
+ reserved-memory {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ secure_ddr: optee@9e800000 {
+ reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
+ alignment = <0x1000>;
+ no-map;
+ };
+ };
+
+ vusb_main: fixed-regulator-vusb-main5v0 {
+ /* USB MAIN INPUT 5V DC */
+ compatible = "regulator-fixed";
+ regulator-name = "vusb_main5v0";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ vcc_3v3_sys: fixedregulator-vcc-3v3-sys {
+ /* output of LP8733xx */
+ compatible = "regulator-fixed";
+ regulator-name = "vcc_3v3_sys";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ vin-supply = <&vusb_main>;
+ regulator-always-on;
+ regulator-boot-on;
+ };
+
+ vdd_mmc1: fixed-regulator-sd {
+ /* TPS2051BD */
+ compatible = "regulator-fixed";
+ regulator-name = "vdd_mmc1";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-boot-on;
+ enable-active-high;
+ vin-supply = <&vcc_3v3_sys>;
+ gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
+ };
+};
+
+&main_pmx0 {
+ main_mmc1_pins_default: main-mmc1-pins-default {
+ 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 */
+ >;
+ };
+
+ main_i2c1_pins_default: main-i2c1-pins-default {
+ pinctrl-single,pins = <
+ AM64X_IOPAD(0x0268, PIN_INPUT_PULLUP, 0) /* (C18) I2C1_SCL */
+ AM64X_IOPAD(0x026c, PIN_INPUT_PULLUP, 0) /* (B19) I2C1_SDA */
+ >;
+ };
+};
+
+&main_uart1 {
+ /* main_uart1 is reserved for firmware usage */
+ status = "reserved";
+};
+
+&main_uart2 {
+ status = "disabled";
+};
+
+&main_uart3 {
+ status = "disabled";
+};
+
+&main_uart4 {
+ status = "disabled";
+};
+
+&main_uart5 {
+ status = "disabled";
+};
+
+&main_uart6 {
+ status = "disabled";
+};
+
+&main_i2c1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&main_i2c1_pins_default>;
+ clock-frequency = <400000>;
+
+ exp1: gpio@70 {
+ compatible = "nxp,pca9538";
+ reg = <0x70>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST",
+ "PRU_DETECT", "MMC1_SD_EN",
+ "VPP_LDO_EN", "RPI_PS_3V3_En",
+ "RPI_PS_5V0_En", "RPI_HAT_DETECT";
+ };
+};
+
+&sdhci1 {
+ /* SD/MMC */
+ vmmc-supply = <&vdd_mmc1>;
+ pinctrl-names = "default";
+ bus-width = <4>;
+ pinctrl-0 = <&main_mmc1_pins_default>;
+ ti,driver-strength-ohm = <50>;
+ disable-wp;
+};
--
2.30.0
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ti: Add support for AM642 SK
2021-01-21 14:39 ` Lokesh Vutla
@ 2021-01-21 15:36 ` Nishanth Menon
-1 siblings, 0 replies; 16+ messages in thread
From: Nishanth Menon @ 2021-01-21 15:36 UTC (permalink / raw)
To: Lokesh Vutla
Cc: Rob Herring, Linux ARM Mailing List, Device Tree Mailing List,
Sekhar Nori, Vignesh R, Kishon Vijay Abraham I, Dave Gerlach
On 20:09-20210121, Lokesh Vutla wrote:
> AM642 StarterKit (SK) board is a low cost, small form factor board
> designed for TI’s AM642 SoC. It supports the following interfaces:
> * 2 GB LPDDR4 RAM
> * x2 Gigabit Ethernet interfaces capable of working in switch and MAC mode
> * x1 USB 3.0 Type-A port
> * x1 UHS-1 capable µSD card slot
> * 2.4/5 GHz WLAN + Bluetooth 4.2 through WL1837
> * 512 Mbit OSPI flash
> * x2 UART through UART-USB bridge
> * XDS110 for onboard JTAG debug using USB
> * Temperature sensors, user push buttons and LEDs
> * 40-pin Raspberry Pi compatible GPIO header
> * 24-pin header for peripherals in MCU island (I2C, UART, SPI, IO)
> * 54-pin header for Programmable Realtime Unit (PRU) IO pins
> * Interface for remote automation (power and reset, boot mode change)
might be nice to state "power measurement and reset control"
>
> Add basic support for AM642 SK.
>
> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
> ---
> arch/arm64/boot/dts/ti/Makefile | 3 +-
> arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 +++++++++++++++++++++++++
> 2 files changed, 147 insertions(+), 1 deletion(-)
> create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
>
> diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
> index c687739e2bca..6aa642eb56d4 100644
> --- a/arch/arm64/boot/dts/ti/Makefile
> +++ b/arch/arm64/boot/dts/ti/Makefile
> @@ -12,4 +12,5 @@ dtb-$(CONFIG_ARCH_K3) += k3-j721e-common-proc-board.dtb
>
> dtb-$(CONFIG_ARCH_K3) += k3-j7200-common-proc-board.dtb
>
> -dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb
> +dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb \
> + k3-am642-sk.dtb
no please. Just:
+dtb-$(CONFIG_ARCH_K3) += k3-am642-sk.dtb
See arch/arm64/boot/dts/nvidia/Makefile for example.
> diff --git a/arch/arm64/boot/dts/ti/k3-am642-sk.dts b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
> new file mode 100644
> index 000000000000..5b473aaa225d
> --- /dev/null
> +++ b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
> @@ -0,0 +1,145 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
> + */
> +
> +/dts-v1/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include "k3-am642.dtsi"
> +
> +/ {
> + compatible = "ti,am642-evm", "ti,am642";
> + model = "Texas Instruments AM642 SK";
> +
> + chosen {
> + stdout-path = "serial2:115200n8";
> + bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
> + };
> +
> + memory@80000000 {
> + device_type = "memory";
> + /* 2G RAM */
> + reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
> +
> + };
> +
> + reserved-memory {
> + #address-cells = <2>;
> + #size-cells = <2>;
> + ranges;
> +
> + secure_ddr: optee@9e800000 {
> + reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
> + alignment = <0x1000>;
> + no-map;
> + };
> + };
> +
> + vusb_main: fixed-regulator-vusb-main5v0 {
> + /* USB MAIN INPUT 5V DC */
> + compatible = "regulator-fixed";
> + regulator-name = "vusb_main5v0";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + vcc_3v3_sys: fixedregulator-vcc-3v3-sys {
> + /* output of LP8733xx */
> + compatible = "regulator-fixed";
> + regulator-name = "vcc_3v3_sys";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + vin-supply = <&vusb_main>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + vdd_mmc1: fixed-regulator-sd {
> + /* TPS2051BD */
> + compatible = "regulator-fixed";
> + regulator-name = "vdd_mmc1";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-boot-on;
> + enable-active-high;
> + vin-supply = <&vcc_3v3_sys>;
> + gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
> + };
> +};
> +
> +&main_pmx0 {
> + main_mmc1_pins_default: main-mmc1-pins-default {
> + 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 */
> + >;
> + };
> +
> + main_i2c1_pins_default: main-i2c1-pins-default {
> + pinctrl-single,pins = <
> + AM64X_IOPAD(0x0268, PIN_INPUT_PULLUP, 0) /* (C18) I2C1_SCL */
> + AM64X_IOPAD(0x026c, PIN_INPUT_PULLUP, 0) /* (B19) I2C1_SDA */
> + >;
> + };
> +};
> +
> +&main_uart1 {
> + /* main_uart1 is reserved for firmware usage */
> + status = "reserved";
> +};
> +
> +&main_uart2 {
> + status = "disabled";
> +};
> +
> +&main_uart3 {
> + status = "disabled";
> +};
> +
> +&main_uart4 {
> + status = "disabled";
> +};
> +
> +&main_uart5 {
> + status = "disabled";
> +};
> +
> +&main_uart6 {
> + status = "disabled";
> +};
I think disabling &mcu_uart0 and &mcu_uart1 might also be a good idea?
> +
> +&main_i2c1 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&main_i2c1_pins_default>;
> + clock-frequency = <400000>;
> +
> + exp1: gpio@70 {
> + compatible = "nxp,pca9538";
> + reg = <0x70>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST",
> + "PRU_DETECT", "MMC1_SD_EN",
> + "VPP_LDO_EN", "RPI_PS_3V3_En",
> + "RPI_PS_5V0_En", "RPI_HAT_DETECT";
> + };
> +};
Disable main_i2c0, spi nodes, sdhci0 or are those nodes being used for
something else that will be fixedup in a follow on series?
> +
> +&sdhci1 {
> + /* SD/MMC */
> + vmmc-supply = <&vdd_mmc1>;
> + pinctrl-names = "default";
> + bus-width = <4>;
> + pinctrl-0 = <&main_mmc1_pins_default>;
> + ti,driver-strength-ohm = <50>;
> + disable-wp;
> +};
> --
> 2.30.0
>
--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ti: Add support for AM642 SK
@ 2021-01-21 15:36 ` Nishanth Menon
0 siblings, 0 replies; 16+ messages in thread
From: Nishanth Menon @ 2021-01-21 15:36 UTC (permalink / raw)
To: Lokesh Vutla
Cc: Device Tree Mailing List, Vignesh R, Dave Gerlach, Sekhar Nori,
Kishon Vijay Abraham I, Rob Herring, Linux ARM Mailing List
On 20:09-20210121, Lokesh Vutla wrote:
> AM642 StarterKit (SK) board is a low cost, small form factor board
> designed for TI’s AM642 SoC. It supports the following interfaces:
> * 2 GB LPDDR4 RAM
> * x2 Gigabit Ethernet interfaces capable of working in switch and MAC mode
> * x1 USB 3.0 Type-A port
> * x1 UHS-1 capable µSD card slot
> * 2.4/5 GHz WLAN + Bluetooth 4.2 through WL1837
> * 512 Mbit OSPI flash
> * x2 UART through UART-USB bridge
> * XDS110 for onboard JTAG debug using USB
> * Temperature sensors, user push buttons and LEDs
> * 40-pin Raspberry Pi compatible GPIO header
> * 24-pin header for peripherals in MCU island (I2C, UART, SPI, IO)
> * 54-pin header for Programmable Realtime Unit (PRU) IO pins
> * Interface for remote automation (power and reset, boot mode change)
might be nice to state "power measurement and reset control"
>
> Add basic support for AM642 SK.
>
> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
> ---
> arch/arm64/boot/dts/ti/Makefile | 3 +-
> arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 +++++++++++++++++++++++++
> 2 files changed, 147 insertions(+), 1 deletion(-)
> create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
>
> diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
> index c687739e2bca..6aa642eb56d4 100644
> --- a/arch/arm64/boot/dts/ti/Makefile
> +++ b/arch/arm64/boot/dts/ti/Makefile
> @@ -12,4 +12,5 @@ dtb-$(CONFIG_ARCH_K3) += k3-j721e-common-proc-board.dtb
>
> dtb-$(CONFIG_ARCH_K3) += k3-j7200-common-proc-board.dtb
>
> -dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb
> +dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb \
> + k3-am642-sk.dtb
no please. Just:
+dtb-$(CONFIG_ARCH_K3) += k3-am642-sk.dtb
See arch/arm64/boot/dts/nvidia/Makefile for example.
> diff --git a/arch/arm64/boot/dts/ti/k3-am642-sk.dts b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
> new file mode 100644
> index 000000000000..5b473aaa225d
> --- /dev/null
> +++ b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
> @@ -0,0 +1,145 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
> + */
> +
> +/dts-v1/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include "k3-am642.dtsi"
> +
> +/ {
> + compatible = "ti,am642-evm", "ti,am642";
> + model = "Texas Instruments AM642 SK";
> +
> + chosen {
> + stdout-path = "serial2:115200n8";
> + bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
> + };
> +
> + memory@80000000 {
> + device_type = "memory";
> + /* 2G RAM */
> + reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
> +
> + };
> +
> + reserved-memory {
> + #address-cells = <2>;
> + #size-cells = <2>;
> + ranges;
> +
> + secure_ddr: optee@9e800000 {
> + reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
> + alignment = <0x1000>;
> + no-map;
> + };
> + };
> +
> + vusb_main: fixed-regulator-vusb-main5v0 {
> + /* USB MAIN INPUT 5V DC */
> + compatible = "regulator-fixed";
> + regulator-name = "vusb_main5v0";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + vcc_3v3_sys: fixedregulator-vcc-3v3-sys {
> + /* output of LP8733xx */
> + compatible = "regulator-fixed";
> + regulator-name = "vcc_3v3_sys";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + vin-supply = <&vusb_main>;
> + regulator-always-on;
> + regulator-boot-on;
> + };
> +
> + vdd_mmc1: fixed-regulator-sd {
> + /* TPS2051BD */
> + compatible = "regulator-fixed";
> + regulator-name = "vdd_mmc1";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-boot-on;
> + enable-active-high;
> + vin-supply = <&vcc_3v3_sys>;
> + gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
> + };
> +};
> +
> +&main_pmx0 {
> + main_mmc1_pins_default: main-mmc1-pins-default {
> + 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 */
> + >;
> + };
> +
> + main_i2c1_pins_default: main-i2c1-pins-default {
> + pinctrl-single,pins = <
> + AM64X_IOPAD(0x0268, PIN_INPUT_PULLUP, 0) /* (C18) I2C1_SCL */
> + AM64X_IOPAD(0x026c, PIN_INPUT_PULLUP, 0) /* (B19) I2C1_SDA */
> + >;
> + };
> +};
> +
> +&main_uart1 {
> + /* main_uart1 is reserved for firmware usage */
> + status = "reserved";
> +};
> +
> +&main_uart2 {
> + status = "disabled";
> +};
> +
> +&main_uart3 {
> + status = "disabled";
> +};
> +
> +&main_uart4 {
> + status = "disabled";
> +};
> +
> +&main_uart5 {
> + status = "disabled";
> +};
> +
> +&main_uart6 {
> + status = "disabled";
> +};
I think disabling &mcu_uart0 and &mcu_uart1 might also be a good idea?
> +
> +&main_i2c1 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&main_i2c1_pins_default>;
> + clock-frequency = <400000>;
> +
> + exp1: gpio@70 {
> + compatible = "nxp,pca9538";
> + reg = <0x70>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST",
> + "PRU_DETECT", "MMC1_SD_EN",
> + "VPP_LDO_EN", "RPI_PS_3V3_En",
> + "RPI_PS_5V0_En", "RPI_HAT_DETECT";
> + };
> +};
Disable main_i2c0, spi nodes, sdhci0 or are those nodes being used for
something else that will be fixedup in a follow on series?
> +
> +&sdhci1 {
> + /* SD/MMC */
> + vmmc-supply = <&vdd_mmc1>;
> + pinctrl-names = "default";
> + bus-width = <4>;
> + pinctrl-0 = <&main_mmc1_pins_default>;
> + ti,driver-strength-ohm = <50>;
> + disable-wp;
> +};
> --
> 2.30.0
>
--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 0/2] arm64: Initial support for Texas Instruments AM642 SK
2021-01-21 14:39 ` Lokesh Vutla
@ 2021-01-21 15:41 ` Kishon Vijay Abraham I
-1 siblings, 0 replies; 16+ messages in thread
From: Kishon Vijay Abraham I @ 2021-01-21 15:41 UTC (permalink / raw)
To: Lokesh Vutla, Nishanth Menon, Rob Herring
Cc: Linux ARM Mailing List, Device Tree Mailing List, Sekhar Nori,
Vignesh R, Dave Gerlach
On 21/01/21 8:09 pm, Lokesh Vutla wrote:
> AM642 StarterKit (SK) board is a low cost, small form factor board
> designed for TI’s AM642 SoC. This series introduces basic support for
> AM642 SK.
>
> Depends on Dave's series for adding AM642 SoC:
> https://patchwork.kernel.org/project/linux-arm-kernel/list/?series=418539
Tested this with MMC rootfs after applying
https://lore.kernel.org/linux-devicetree/20210113115908.3882-3-a-govindraju@ti.com/
Logs: https://pastebin.ubuntu.com/p/xGRMjXb5q5/
Tested-by: Kishon Vijay Abraham I <kishon@ti.com>
Thanks
Kishon
>
> Lokesh Vutla (2):
> dt-bindings: arm: ti: Add bindings for AM642 SK
> arm64: dts: ti: Add support for AM642 SK
>
> .../devicetree/bindings/arm/ti/k3.yaml | 1 +
> arch/arm64/boot/dts/ti/Makefile | 3 +-
> arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 ++++++++++++++++++
> 3 files changed, 148 insertions(+), 1 deletion(-)
> create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 0/2] arm64: Initial support for Texas Instruments AM642 SK
@ 2021-01-21 15:41 ` Kishon Vijay Abraham I
0 siblings, 0 replies; 16+ messages in thread
From: Kishon Vijay Abraham I @ 2021-01-21 15:41 UTC (permalink / raw)
To: Lokesh Vutla, Nishanth Menon, Rob Herring
Cc: Device Tree Mailing List, Sekhar Nori, Vignesh R,
Linux ARM Mailing List, Dave Gerlach
On 21/01/21 8:09 pm, Lokesh Vutla wrote:
> AM642 StarterKit (SK) board is a low cost, small form factor board
> designed for TI’s AM642 SoC. This series introduces basic support for
> AM642 SK.
>
> Depends on Dave's series for adding AM642 SoC:
> https://patchwork.kernel.org/project/linux-arm-kernel/list/?series=418539
Tested this with MMC rootfs after applying
https://lore.kernel.org/linux-devicetree/20210113115908.3882-3-a-govindraju@ti.com/
Logs: https://pastebin.ubuntu.com/p/xGRMjXb5q5/
Tested-by: Kishon Vijay Abraham I <kishon@ti.com>
Thanks
Kishon
>
> Lokesh Vutla (2):
> dt-bindings: arm: ti: Add bindings for AM642 SK
> arm64: dts: ti: Add support for AM642 SK
>
> .../devicetree/bindings/arm/ti/k3.yaml | 1 +
> arch/arm64/boot/dts/ti/Makefile | 3 +-
> arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 ++++++++++++++++++
> 3 files changed, 148 insertions(+), 1 deletion(-)
> create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 0/2] arm64: Initial support for Texas Instruments AM642 SK
2021-01-21 15:41 ` Kishon Vijay Abraham I
@ 2021-01-21 15:52 ` Nishanth Menon
-1 siblings, 0 replies; 16+ messages in thread
From: Nishanth Menon @ 2021-01-21 15:52 UTC (permalink / raw)
To: Kishon Vijay Abraham I
Cc: Lokesh Vutla, Rob Herring, Linux ARM Mailing List,
Device Tree Mailing List, Sekhar Nori, Vignesh R, Dave Gerlach
On 21:11-20210121, Kishon Vijay Abraham I wrote:
>
>
> On 21/01/21 8:09 pm, Lokesh Vutla wrote:
> > AM642 StarterKit (SK) board is a low cost, small form factor board
> > designed for TI’s AM642 SoC. This series introduces basic support for
> > AM642 SK.
> >
> > Depends on Dave's series for adding AM642 SoC:
> > https://patchwork.kernel.org/project/linux-arm-kernel/list/?series=418539
>
> Tested this with MMC rootfs after applying
> https://lore.kernel.org/linux-devicetree/20210113115908.3882-3-a-govindraju@ti.com/
>
> Logs: https://pastebin.ubuntu.com/p/xGRMjXb5q5/
>
> Tested-by: Kishon Vijay Abraham I <kishon@ti.com>
Thanks, but can you confirm this works with logs against linux-next?
I see you have tested against 5.11.0-rc1 which does need the patch
applied.
--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 0/2] arm64: Initial support for Texas Instruments AM642 SK
@ 2021-01-21 15:52 ` Nishanth Menon
0 siblings, 0 replies; 16+ messages in thread
From: Nishanth Menon @ 2021-01-21 15:52 UTC (permalink / raw)
To: Kishon Vijay Abraham I
Cc: Device Tree Mailing List, Vignesh R, Dave Gerlach, Lokesh Vutla,
Sekhar Nori, Rob Herring, Linux ARM Mailing List
On 21:11-20210121, Kishon Vijay Abraham I wrote:
>
>
> On 21/01/21 8:09 pm, Lokesh Vutla wrote:
> > AM642 StarterKit (SK) board is a low cost, small form factor board
> > designed for TI’s AM642 SoC. This series introduces basic support for
> > AM642 SK.
> >
> > Depends on Dave's series for adding AM642 SoC:
> > https://patchwork.kernel.org/project/linux-arm-kernel/list/?series=418539
>
> Tested this with MMC rootfs after applying
> https://lore.kernel.org/linux-devicetree/20210113115908.3882-3-a-govindraju@ti.com/
>
> Logs: https://pastebin.ubuntu.com/p/xGRMjXb5q5/
>
> Tested-by: Kishon Vijay Abraham I <kishon@ti.com>
Thanks, but can you confirm this works with logs against linux-next?
I see you have tested against 5.11.0-rc1 which does need the patch
applied.
--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ti: Add support for AM642 SK
2021-01-21 15:36 ` Nishanth Menon
@ 2021-01-26 16:50 ` Suman Anna
-1 siblings, 0 replies; 16+ messages in thread
From: Suman Anna @ 2021-01-26 16:50 UTC (permalink / raw)
To: Nishanth Menon, Lokesh Vutla
Cc: Rob Herring, Linux ARM Mailing List, Device Tree Mailing List,
Sekhar Nori, Vignesh R, Kishon Vijay Abraham I, Dave Gerlach
Hi Lokesh,
On 1/21/21 9:36 AM, Nishanth Menon wrote:
> On 20:09-20210121, Lokesh Vutla wrote:
>> AM642 StarterKit (SK) board is a low cost, small form factor board
>> designed for TI’s AM642 SoC. It supports the following interfaces:
>> * 2 GB LPDDR4 RAM
>> * x2 Gigabit Ethernet interfaces capable of working in switch and MAC mode
>> * x1 USB 3.0 Type-A port
>> * x1 UHS-1 capable µSD card slot
>> * 2.4/5 GHz WLAN + Bluetooth 4.2 through WL1837
>> * 512 Mbit OSPI flash
>> * x2 UART through UART-USB bridge
>> * XDS110 for onboard JTAG debug using USB
>> * Temperature sensors, user push buttons and LEDs
>> * 40-pin Raspberry Pi compatible GPIO header
>> * 24-pin header for peripherals in MCU island (I2C, UART, SPI, IO)
>> * 54-pin header for Programmable Realtime Unit (PRU) IO pins
>> * Interface for remote automation (power and reset, boot mode change)
>
> might be nice to state "power measurement and reset control"
>
>>
>> Add basic support for AM642 SK.
>>
>> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
>> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
>> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
>> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
>> ---
>> arch/arm64/boot/dts/ti/Makefile | 3 +-
>> arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 +++++++++++++++++++++++++
>> 2 files changed, 147 insertions(+), 1 deletion(-)
>> create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
>>
>> diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
>> index c687739e2bca..6aa642eb56d4 100644
>> --- a/arch/arm64/boot/dts/ti/Makefile
>> +++ b/arch/arm64/boot/dts/ti/Makefile
>> @@ -12,4 +12,5 @@ dtb-$(CONFIG_ARCH_K3) += k3-j721e-common-proc-board.dtb
>>
>> dtb-$(CONFIG_ARCH_K3) += k3-j7200-common-proc-board.dtb
>>
>> -dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb
>> +dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb \
>> + k3-am642-sk.dtb
>
> no please. Just:
> +dtb-$(CONFIG_ARCH_K3) += k3-am642-sk.dtb
>
> See arch/arm64/boot/dts/nvidia/Makefile for example.
>
>> diff --git a/arch/arm64/boot/dts/ti/k3-am642-sk.dts b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
>> new file mode 100644
>> index 000000000000..5b473aaa225d
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
>> @@ -0,0 +1,145 @@
>> +// SPDX-License-Identifier: GPL-2.0
>> +/*
>> + * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
>> + */
>> +
>> +/dts-v1/;
>> +
>> +#include <dt-bindings/gpio/gpio.h>
>> +#include "k3-am642.dtsi"
>> +
>> +/ {
>> + compatible = "ti,am642-evm", "ti,am642";
Looks like a copy-paste error. As per patch 1, you should be using ti,am642-sk
and not ti,am642-evm.
>> + model = "Texas Instruments AM642 SK";
>> +
>> + chosen {
>> + stdout-path = "serial2:115200n8";
>> + bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
>> + };
>> +
>> + memory@80000000 {
>> + device_type = "memory";
>> + /* 2G RAM */
>> + reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
>> +
>> + };
>> +
>> + reserved-memory {
>> + #address-cells = <2>;
>> + #size-cells = <2>;
>> + ranges;
>> +
>> + secure_ddr: optee@9e800000 {
>> + reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
>> + alignment = <0x1000>;
>> + no-map;
>> + };
>> + };
>> +
>> + vusb_main: fixed-regulator-vusb-main5v0 {
>> + /* USB MAIN INPUT 5V DC */
>> + compatible = "regulator-fixed";
>> + regulator-name = "vusb_main5v0";
>> + regulator-min-microvolt = <5000000>;
>> + regulator-max-microvolt = <5000000>;
>> + regulator-always-on;
>> + regulator-boot-on;
>> + };
>> +
>> + vcc_3v3_sys: fixedregulator-vcc-3v3-sys {
>> + /* output of LP8733xx */
>> + compatible = "regulator-fixed";
>> + regulator-name = "vcc_3v3_sys";
>> + regulator-min-microvolt = <3300000>;
>> + regulator-max-microvolt = <3300000>;
>> + vin-supply = <&vusb_main>;
>> + regulator-always-on;
>> + regulator-boot-on;
>> + };
>> +
>> + vdd_mmc1: fixed-regulator-sd {
>> + /* TPS2051BD */
>> + compatible = "regulator-fixed";
>> + regulator-name = "vdd_mmc1";
>> + regulator-min-microvolt = <3300000>;
>> + regulator-max-microvolt = <3300000>;
>> + regulator-boot-on;
>> + enable-active-high;
>> + vin-supply = <&vcc_3v3_sys>;
>> + gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
>> + };
>> +};
>> +
>> +&main_pmx0 {
>> + main_mmc1_pins_default: main-mmc1-pins-default {
>> + 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 */
>> + >;
>> + };
>> +
>> + main_i2c1_pins_default: main-i2c1-pins-default {
>> + pinctrl-single,pins = <
>> + AM64X_IOPAD(0x0268, PIN_INPUT_PULLUP, 0) /* (C18) I2C1_SCL */
>> + AM64X_IOPAD(0x026c, PIN_INPUT_PULLUP, 0) /* (B19) I2C1_SDA */
>> + >;
>> + };
>> +};
>> +
>> +&main_uart1 {
>> + /* main_uart1 is reserved for firmware usage */
>> + status = "reserved";
>> +};
>> +
>> +&main_uart2 {
>> + status = "disabled";
>> +};
>> +
>> +&main_uart3 {
>> + status = "disabled";
>> +};
>> +
>> +&main_uart4 {
>> + status = "disabled";
>> +};
>> +
>> +&main_uart5 {
>> + status = "disabled";
>> +};
>> +
>> +&main_uart6 {
>> + status = "disabled";
>> +};
>
> I think disabling &mcu_uart0 and &mcu_uart1 might also be a good idea?
>> +
>> +&main_i2c1 {
>> + pinctrl-names = "default";
>> + pinctrl-0 = <&main_i2c1_pins_default>;
>> + clock-frequency = <400000>;
>> +
>> + exp1: gpio@70 {
>> + compatible = "nxp,pca9538";
>> + reg = <0x70>;
>> + gpio-controller;
>> + #gpio-cells = <2>;
>> + gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST",
>> + "PRU_DETECT", "MMC1_SD_EN",
>> + "VPP_LDO_EN", "RPI_PS_3V3_En",
>> + "RPI_PS_5V0_En", "RPI_HAT_DETECT";
>> + };
>> +};
>
> Disable main_i2c0, spi nodes, sdhci0 or are those nodes being used for
> something else that will be fixedup in a follow on series?
+1
regards
Suman
>
>> +
>> +&sdhci1 {
>> + /* SD/MMC */
>> + vmmc-supply = <&vdd_mmc1>;
>> + pinctrl-names = "default";
>> + bus-width = <4>;
>> + pinctrl-0 = <&main_mmc1_pins_default>;
>> + ti,driver-strength-ohm = <50>;
>> + disable-wp;
>> +};
>> --
>> 2.30.0
>>
>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ti: Add support for AM642 SK
@ 2021-01-26 16:50 ` Suman Anna
0 siblings, 0 replies; 16+ messages in thread
From: Suman Anna @ 2021-01-26 16:50 UTC (permalink / raw)
To: Nishanth Menon, Lokesh Vutla
Cc: Device Tree Mailing List, Vignesh R, Dave Gerlach, Sekhar Nori,
Kishon Vijay Abraham I, Rob Herring, Linux ARM Mailing List
Hi Lokesh,
On 1/21/21 9:36 AM, Nishanth Menon wrote:
> On 20:09-20210121, Lokesh Vutla wrote:
>> AM642 StarterKit (SK) board is a low cost, small form factor board
>> designed for TI’s AM642 SoC. It supports the following interfaces:
>> * 2 GB LPDDR4 RAM
>> * x2 Gigabit Ethernet interfaces capable of working in switch and MAC mode
>> * x1 USB 3.0 Type-A port
>> * x1 UHS-1 capable µSD card slot
>> * 2.4/5 GHz WLAN + Bluetooth 4.2 through WL1837
>> * 512 Mbit OSPI flash
>> * x2 UART through UART-USB bridge
>> * XDS110 for onboard JTAG debug using USB
>> * Temperature sensors, user push buttons and LEDs
>> * 40-pin Raspberry Pi compatible GPIO header
>> * 24-pin header for peripherals in MCU island (I2C, UART, SPI, IO)
>> * 54-pin header for Programmable Realtime Unit (PRU) IO pins
>> * Interface for remote automation (power and reset, boot mode change)
>
> might be nice to state "power measurement and reset control"
>
>>
>> Add basic support for AM642 SK.
>>
>> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
>> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
>> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
>> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
>> ---
>> arch/arm64/boot/dts/ti/Makefile | 3 +-
>> arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 +++++++++++++++++++++++++
>> 2 files changed, 147 insertions(+), 1 deletion(-)
>> create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
>>
>> diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
>> index c687739e2bca..6aa642eb56d4 100644
>> --- a/arch/arm64/boot/dts/ti/Makefile
>> +++ b/arch/arm64/boot/dts/ti/Makefile
>> @@ -12,4 +12,5 @@ dtb-$(CONFIG_ARCH_K3) += k3-j721e-common-proc-board.dtb
>>
>> dtb-$(CONFIG_ARCH_K3) += k3-j7200-common-proc-board.dtb
>>
>> -dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb
>> +dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb \
>> + k3-am642-sk.dtb
>
> no please. Just:
> +dtb-$(CONFIG_ARCH_K3) += k3-am642-sk.dtb
>
> See arch/arm64/boot/dts/nvidia/Makefile for example.
>
>> diff --git a/arch/arm64/boot/dts/ti/k3-am642-sk.dts b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
>> new file mode 100644
>> index 000000000000..5b473aaa225d
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
>> @@ -0,0 +1,145 @@
>> +// SPDX-License-Identifier: GPL-2.0
>> +/*
>> + * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
>> + */
>> +
>> +/dts-v1/;
>> +
>> +#include <dt-bindings/gpio/gpio.h>
>> +#include "k3-am642.dtsi"
>> +
>> +/ {
>> + compatible = "ti,am642-evm", "ti,am642";
Looks like a copy-paste error. As per patch 1, you should be using ti,am642-sk
and not ti,am642-evm.
>> + model = "Texas Instruments AM642 SK";
>> +
>> + chosen {
>> + stdout-path = "serial2:115200n8";
>> + bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
>> + };
>> +
>> + memory@80000000 {
>> + device_type = "memory";
>> + /* 2G RAM */
>> + reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
>> +
>> + };
>> +
>> + reserved-memory {
>> + #address-cells = <2>;
>> + #size-cells = <2>;
>> + ranges;
>> +
>> + secure_ddr: optee@9e800000 {
>> + reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
>> + alignment = <0x1000>;
>> + no-map;
>> + };
>> + };
>> +
>> + vusb_main: fixed-regulator-vusb-main5v0 {
>> + /* USB MAIN INPUT 5V DC */
>> + compatible = "regulator-fixed";
>> + regulator-name = "vusb_main5v0";
>> + regulator-min-microvolt = <5000000>;
>> + regulator-max-microvolt = <5000000>;
>> + regulator-always-on;
>> + regulator-boot-on;
>> + };
>> +
>> + vcc_3v3_sys: fixedregulator-vcc-3v3-sys {
>> + /* output of LP8733xx */
>> + compatible = "regulator-fixed";
>> + regulator-name = "vcc_3v3_sys";
>> + regulator-min-microvolt = <3300000>;
>> + regulator-max-microvolt = <3300000>;
>> + vin-supply = <&vusb_main>;
>> + regulator-always-on;
>> + regulator-boot-on;
>> + };
>> +
>> + vdd_mmc1: fixed-regulator-sd {
>> + /* TPS2051BD */
>> + compatible = "regulator-fixed";
>> + regulator-name = "vdd_mmc1";
>> + regulator-min-microvolt = <3300000>;
>> + regulator-max-microvolt = <3300000>;
>> + regulator-boot-on;
>> + enable-active-high;
>> + vin-supply = <&vcc_3v3_sys>;
>> + gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
>> + };
>> +};
>> +
>> +&main_pmx0 {
>> + main_mmc1_pins_default: main-mmc1-pins-default {
>> + 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 */
>> + >;
>> + };
>> +
>> + main_i2c1_pins_default: main-i2c1-pins-default {
>> + pinctrl-single,pins = <
>> + AM64X_IOPAD(0x0268, PIN_INPUT_PULLUP, 0) /* (C18) I2C1_SCL */
>> + AM64X_IOPAD(0x026c, PIN_INPUT_PULLUP, 0) /* (B19) I2C1_SDA */
>> + >;
>> + };
>> +};
>> +
>> +&main_uart1 {
>> + /* main_uart1 is reserved for firmware usage */
>> + status = "reserved";
>> +};
>> +
>> +&main_uart2 {
>> + status = "disabled";
>> +};
>> +
>> +&main_uart3 {
>> + status = "disabled";
>> +};
>> +
>> +&main_uart4 {
>> + status = "disabled";
>> +};
>> +
>> +&main_uart5 {
>> + status = "disabled";
>> +};
>> +
>> +&main_uart6 {
>> + status = "disabled";
>> +};
>
> I think disabling &mcu_uart0 and &mcu_uart1 might also be a good idea?
>> +
>> +&main_i2c1 {
>> + pinctrl-names = "default";
>> + pinctrl-0 = <&main_i2c1_pins_default>;
>> + clock-frequency = <400000>;
>> +
>> + exp1: gpio@70 {
>> + compatible = "nxp,pca9538";
>> + reg = <0x70>;
>> + gpio-controller;
>> + #gpio-cells = <2>;
>> + gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST",
>> + "PRU_DETECT", "MMC1_SD_EN",
>> + "VPP_LDO_EN", "RPI_PS_3V3_En",
>> + "RPI_PS_5V0_En", "RPI_HAT_DETECT";
>> + };
>> +};
>
> Disable main_i2c0, spi nodes, sdhci0 or are those nodes being used for
> something else that will be fixedup in a follow on series?
+1
regards
Suman
>
>> +
>> +&sdhci1 {
>> + /* SD/MMC */
>> + vmmc-supply = <&vdd_mmc1>;
>> + pinctrl-names = "default";
>> + bus-width = <4>;
>> + pinctrl-0 = <&main_mmc1_pins_default>;
>> + ti,driver-strength-ohm = <50>;
>> + disable-wp;
>> +};
>> --
>> 2.30.0
>>
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ti: Add support for AM642 SK
2021-01-26 16:50 ` Suman Anna
@ 2021-02-02 7:12 ` Lokesh Vutla
-1 siblings, 0 replies; 16+ messages in thread
From: Lokesh Vutla @ 2021-02-02 7:12 UTC (permalink / raw)
To: Suman Anna, Nishanth Menon
Cc: Rob Herring, Linux ARM Mailing List, Device Tree Mailing List,
Sekhar Nori, Vignesh R, Kishon Vijay Abraham I, Dave Gerlach
On 26/01/21 10:20 pm, Suman Anna wrote:
> Hi Lokesh,
>
> On 1/21/21 9:36 AM, Nishanth Menon wrote:
>> On 20:09-20210121, Lokesh Vutla wrote:
>>> AM642 StarterKit (SK) board is a low cost, small form factor board
>>> designed for TI’s AM642 SoC. It supports the following interfaces:
>>> * 2 GB LPDDR4 RAM
>>> * x2 Gigabit Ethernet interfaces capable of working in switch and MAC mode
>>> * x1 USB 3.0 Type-A port
>>> * x1 UHS-1 capable µSD card slot
>>> * 2.4/5 GHz WLAN + Bluetooth 4.2 through WL1837
>>> * 512 Mbit OSPI flash
>>> * x2 UART through UART-USB bridge
>>> * XDS110 for onboard JTAG debug using USB
>>> * Temperature sensors, user push buttons and LEDs
>>> * 40-pin Raspberry Pi compatible GPIO header
>>> * 24-pin header for peripherals in MCU island (I2C, UART, SPI, IO)
>>> * 54-pin header for Programmable Realtime Unit (PRU) IO pins
>>> * Interface for remote automation (power and reset, boot mode change)
>>
>> might be nice to state "power measurement and reset control"
Sure will fix in v2.
>>
>>>
>>> Add basic support for AM642 SK.
>>>
>>> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
>>> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
>>> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
>>> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
>>> ---
>>> arch/arm64/boot/dts/ti/Makefile | 3 +-
>>> arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 +++++++++++++++++++++++++
>>> 2 files changed, 147 insertions(+), 1 deletion(-)
>>> create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
>>>
>>> diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
>>> index c687739e2bca..6aa642eb56d4 100644
>>> --- a/arch/arm64/boot/dts/ti/Makefile
>>> +++ b/arch/arm64/boot/dts/ti/Makefile
>>> @@ -12,4 +12,5 @@ dtb-$(CONFIG_ARCH_K3) += k3-j721e-common-proc-board.dtb
>>>
>>> dtb-$(CONFIG_ARCH_K3) += k3-j7200-common-proc-board.dtb
>>>
>>> -dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb
>>> +dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb \
>>> + k3-am642-sk.dtb
>>
>> no please. Just:
>> +dtb-$(CONFIG_ARCH_K3) += k3-am642-sk.dtb
Okay.
>>
>> See arch/arm64/boot/dts/nvidia/Makefile for example.
>>
>>> diff --git a/arch/arm64/boot/dts/ti/k3-am642-sk.dts b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
>>> new file mode 100644
>>> index 000000000000..5b473aaa225d
>>> --- /dev/null
>>> +++ b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
>>> @@ -0,0 +1,145 @@
>>> +// SPDX-License-Identifier: GPL-2.0
>>> +/*
>>> + * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
>>> + */
>>> +
>>> +/dts-v1/;
>>> +
>>> +#include <dt-bindings/gpio/gpio.h>
>>> +#include "k3-am642.dtsi"
>>> +
>>> +/ {
>>> + compatible = "ti,am642-evm", "ti,am642";
>
> Looks like a copy-paste error. As per patch 1, you should be using ti,am642-sk
> and not ti,am642-evm.
Oops. Good catch, will fix in v2.
>
>>> + model = "Texas Instruments AM642 SK";
>>> +
>>> + chosen {
>>> + stdout-path = "serial2:115200n8";
>>> + bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
>>> + };
>>> +
>>> + memory@80000000 {
>>> + device_type = "memory";
>>> + /* 2G RAM */
>>> + reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
>>> +
>>> + };
>>> +
>>> + reserved-memory {
>>> + #address-cells = <2>;
>>> + #size-cells = <2>;
>>> + ranges;
>>> +
>>> + secure_ddr: optee@9e800000 {
>>> + reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
>>> + alignment = <0x1000>;
>>> + no-map;
>>> + };
>>> + };
>>> +
>>> + vusb_main: fixed-regulator-vusb-main5v0 {
>>> + /* USB MAIN INPUT 5V DC */
>>> + compatible = "regulator-fixed";
>>> + regulator-name = "vusb_main5v0";
>>> + regulator-min-microvolt = <5000000>;
>>> + regulator-max-microvolt = <5000000>;
>>> + regulator-always-on;
>>> + regulator-boot-on;
>>> + };
>>> +
>>> + vcc_3v3_sys: fixedregulator-vcc-3v3-sys {
>>> + /* output of LP8733xx */
>>> + compatible = "regulator-fixed";
>>> + regulator-name = "vcc_3v3_sys";
>>> + regulator-min-microvolt = <3300000>;
>>> + regulator-max-microvolt = <3300000>;
>>> + vin-supply = <&vusb_main>;
>>> + regulator-always-on;
>>> + regulator-boot-on;
>>> + };
>>> +
>>> + vdd_mmc1: fixed-regulator-sd {
>>> + /* TPS2051BD */
>>> + compatible = "regulator-fixed";
>>> + regulator-name = "vdd_mmc1";
>>> + regulator-min-microvolt = <3300000>;
>>> + regulator-max-microvolt = <3300000>;
>>> + regulator-boot-on;
>>> + enable-active-high;
>>> + vin-supply = <&vcc_3v3_sys>;
>>> + gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
>>> + };
>>> +};
>>> +
>>> +&main_pmx0 {
>>> + main_mmc1_pins_default: main-mmc1-pins-default {
>>> + 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 */
>>> + >;
>>> + };
>>> +
>>> + main_i2c1_pins_default: main-i2c1-pins-default {
>>> + pinctrl-single,pins = <
>>> + AM64X_IOPAD(0x0268, PIN_INPUT_PULLUP, 0) /* (C18) I2C1_SCL */
>>> + AM64X_IOPAD(0x026c, PIN_INPUT_PULLUP, 0) /* (B19) I2C1_SDA */
>>> + >;
>>> + };
>>> +};
>>> +
>>> +&main_uart1 {
>>> + /* main_uart1 is reserved for firmware usage */
>>> + status = "reserved";
>>> +};
>>> +
>>> +&main_uart2 {
>>> + status = "disabled";
>>> +};
>>> +
>>> +&main_uart3 {
>>> + status = "disabled";
>>> +};
>>> +
>>> +&main_uart4 {
>>> + status = "disabled";
>>> +};
>>> +
>>> +&main_uart5 {
>>> + status = "disabled";
>>> +};
>>> +
>>> +&main_uart6 {
>>> + status = "disabled";
>>> +};
>>
>> I think disabling &mcu_uart0 and &mcu_uart1 might also be a good idea?
Agreed. Will fix in v2.
>>> +
>>> +&main_i2c1 {
>>> + pinctrl-names = "default";
>>> + pinctrl-0 = <&main_i2c1_pins_default>;
>>> + clock-frequency = <400000>;
>>> +
>>> + exp1: gpio@70 {
>>> + compatible = "nxp,pca9538";
>>> + reg = <0x70>;
>>> + gpio-controller;
>>> + #gpio-cells = <2>;
>>> + gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST",
>>> + "PRU_DETECT", "MMC1_SD_EN",
>>> + "VPP_LDO_EN", "RPI_PS_3V3_En",
>>> + "RPI_PS_5V0_En", "RPI_HAT_DETECT";
>>> + };
>>> +};
>>
>> Disable main_i2c0, spi nodes, sdhci0 or are those nodes being used for
>> something else that will be fixedup in a follow on series?
main_i2c0 has eeprom, shdci0 is used for wlan. Will mark other nodes as disabled.
Thanks and regards,
Lokesh
>
> +1
>
> regards
> Suman
>
>>
>>> +
>>> +&sdhci1 {
>>> + /* SD/MMC */
>>> + vmmc-supply = <&vdd_mmc1>;
>>> + pinctrl-names = "default";
>>> + bus-width = <4>;
>>> + pinctrl-0 = <&main_mmc1_pins_default>;
>>> + ti,driver-strength-ohm = <50>;
>>> + disable-wp;
>>> +};
>>> --
>>> 2.30.0
>>>
>>
>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 2/2] arm64: dts: ti: Add support for AM642 SK
@ 2021-02-02 7:12 ` Lokesh Vutla
0 siblings, 0 replies; 16+ messages in thread
From: Lokesh Vutla @ 2021-02-02 7:12 UTC (permalink / raw)
To: Suman Anna, Nishanth Menon
Cc: Device Tree Mailing List, Vignesh R, Dave Gerlach, Sekhar Nori,
Kishon Vijay Abraham I, Rob Herring, Linux ARM Mailing List
On 26/01/21 10:20 pm, Suman Anna wrote:
> Hi Lokesh,
>
> On 1/21/21 9:36 AM, Nishanth Menon wrote:
>> On 20:09-20210121, Lokesh Vutla wrote:
>>> AM642 StarterKit (SK) board is a low cost, small form factor board
>>> designed for TI’s AM642 SoC. It supports the following interfaces:
>>> * 2 GB LPDDR4 RAM
>>> * x2 Gigabit Ethernet interfaces capable of working in switch and MAC mode
>>> * x1 USB 3.0 Type-A port
>>> * x1 UHS-1 capable µSD card slot
>>> * 2.4/5 GHz WLAN + Bluetooth 4.2 through WL1837
>>> * 512 Mbit OSPI flash
>>> * x2 UART through UART-USB bridge
>>> * XDS110 for onboard JTAG debug using USB
>>> * Temperature sensors, user push buttons and LEDs
>>> * 40-pin Raspberry Pi compatible GPIO header
>>> * 24-pin header for peripherals in MCU island (I2C, UART, SPI, IO)
>>> * 54-pin header for Programmable Realtime Unit (PRU) IO pins
>>> * Interface for remote automation (power and reset, boot mode change)
>>
>> might be nice to state "power measurement and reset control"
Sure will fix in v2.
>>
>>>
>>> Add basic support for AM642 SK.
>>>
>>> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
>>> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
>>> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
>>> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
>>> ---
>>> arch/arm64/boot/dts/ti/Makefile | 3 +-
>>> arch/arm64/boot/dts/ti/k3-am642-sk.dts | 145 +++++++++++++++++++++++++
>>> 2 files changed, 147 insertions(+), 1 deletion(-)
>>> create mode 100644 arch/arm64/boot/dts/ti/k3-am642-sk.dts
>>>
>>> diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
>>> index c687739e2bca..6aa642eb56d4 100644
>>> --- a/arch/arm64/boot/dts/ti/Makefile
>>> +++ b/arch/arm64/boot/dts/ti/Makefile
>>> @@ -12,4 +12,5 @@ dtb-$(CONFIG_ARCH_K3) += k3-j721e-common-proc-board.dtb
>>>
>>> dtb-$(CONFIG_ARCH_K3) += k3-j7200-common-proc-board.dtb
>>>
>>> -dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb
>>> +dtb-$(CONFIG_ARCH_K3) += k3-am642-evm.dtb \
>>> + k3-am642-sk.dtb
>>
>> no please. Just:
>> +dtb-$(CONFIG_ARCH_K3) += k3-am642-sk.dtb
Okay.
>>
>> See arch/arm64/boot/dts/nvidia/Makefile for example.
>>
>>> diff --git a/arch/arm64/boot/dts/ti/k3-am642-sk.dts b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
>>> new file mode 100644
>>> index 000000000000..5b473aaa225d
>>> --- /dev/null
>>> +++ b/arch/arm64/boot/dts/ti/k3-am642-sk.dts
>>> @@ -0,0 +1,145 @@
>>> +// SPDX-License-Identifier: GPL-2.0
>>> +/*
>>> + * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
>>> + */
>>> +
>>> +/dts-v1/;
>>> +
>>> +#include <dt-bindings/gpio/gpio.h>
>>> +#include "k3-am642.dtsi"
>>> +
>>> +/ {
>>> + compatible = "ti,am642-evm", "ti,am642";
>
> Looks like a copy-paste error. As per patch 1, you should be using ti,am642-sk
> and not ti,am642-evm.
Oops. Good catch, will fix in v2.
>
>>> + model = "Texas Instruments AM642 SK";
>>> +
>>> + chosen {
>>> + stdout-path = "serial2:115200n8";
>>> + bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000";
>>> + };
>>> +
>>> + memory@80000000 {
>>> + device_type = "memory";
>>> + /* 2G RAM */
>>> + reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
>>> +
>>> + };
>>> +
>>> + reserved-memory {
>>> + #address-cells = <2>;
>>> + #size-cells = <2>;
>>> + ranges;
>>> +
>>> + secure_ddr: optee@9e800000 {
>>> + reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
>>> + alignment = <0x1000>;
>>> + no-map;
>>> + };
>>> + };
>>> +
>>> + vusb_main: fixed-regulator-vusb-main5v0 {
>>> + /* USB MAIN INPUT 5V DC */
>>> + compatible = "regulator-fixed";
>>> + regulator-name = "vusb_main5v0";
>>> + regulator-min-microvolt = <5000000>;
>>> + regulator-max-microvolt = <5000000>;
>>> + regulator-always-on;
>>> + regulator-boot-on;
>>> + };
>>> +
>>> + vcc_3v3_sys: fixedregulator-vcc-3v3-sys {
>>> + /* output of LP8733xx */
>>> + compatible = "regulator-fixed";
>>> + regulator-name = "vcc_3v3_sys";
>>> + regulator-min-microvolt = <3300000>;
>>> + regulator-max-microvolt = <3300000>;
>>> + vin-supply = <&vusb_main>;
>>> + regulator-always-on;
>>> + regulator-boot-on;
>>> + };
>>> +
>>> + vdd_mmc1: fixed-regulator-sd {
>>> + /* TPS2051BD */
>>> + compatible = "regulator-fixed";
>>> + regulator-name = "vdd_mmc1";
>>> + regulator-min-microvolt = <3300000>;
>>> + regulator-max-microvolt = <3300000>;
>>> + regulator-boot-on;
>>> + enable-active-high;
>>> + vin-supply = <&vcc_3v3_sys>;
>>> + gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
>>> + };
>>> +};
>>> +
>>> +&main_pmx0 {
>>> + main_mmc1_pins_default: main-mmc1-pins-default {
>>> + 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 */
>>> + >;
>>> + };
>>> +
>>> + main_i2c1_pins_default: main-i2c1-pins-default {
>>> + pinctrl-single,pins = <
>>> + AM64X_IOPAD(0x0268, PIN_INPUT_PULLUP, 0) /* (C18) I2C1_SCL */
>>> + AM64X_IOPAD(0x026c, PIN_INPUT_PULLUP, 0) /* (B19) I2C1_SDA */
>>> + >;
>>> + };
>>> +};
>>> +
>>> +&main_uart1 {
>>> + /* main_uart1 is reserved for firmware usage */
>>> + status = "reserved";
>>> +};
>>> +
>>> +&main_uart2 {
>>> + status = "disabled";
>>> +};
>>> +
>>> +&main_uart3 {
>>> + status = "disabled";
>>> +};
>>> +
>>> +&main_uart4 {
>>> + status = "disabled";
>>> +};
>>> +
>>> +&main_uart5 {
>>> + status = "disabled";
>>> +};
>>> +
>>> +&main_uart6 {
>>> + status = "disabled";
>>> +};
>>
>> I think disabling &mcu_uart0 and &mcu_uart1 might also be a good idea?
Agreed. Will fix in v2.
>>> +
>>> +&main_i2c1 {
>>> + pinctrl-names = "default";
>>> + pinctrl-0 = <&main_i2c1_pins_default>;
>>> + clock-frequency = <400000>;
>>> +
>>> + exp1: gpio@70 {
>>> + compatible = "nxp,pca9538";
>>> + reg = <0x70>;
>>> + gpio-controller;
>>> + #gpio-cells = <2>;
>>> + gpio-line-names = "GPIO_CPSW2_RST", "GPIO_CPSW1_RST",
>>> + "PRU_DETECT", "MMC1_SD_EN",
>>> + "VPP_LDO_EN", "RPI_PS_3V3_En",
>>> + "RPI_PS_5V0_En", "RPI_HAT_DETECT";
>>> + };
>>> +};
>>
>> Disable main_i2c0, spi nodes, sdhci0 or are those nodes being used for
>> something else that will be fixedup in a follow on series?
main_i2c0 has eeprom, shdci0 is used for wlan. Will mark other nodes as disabled.
Thanks and regards,
Lokesh
>
> +1
>
> regards
> Suman
>
>>
>>> +
>>> +&sdhci1 {
>>> + /* SD/MMC */
>>> + vmmc-supply = <&vdd_mmc1>;
>>> + pinctrl-names = "default";
>>> + bus-width = <4>;
>>> + pinctrl-0 = <&main_mmc1_pins_default>;
>>> + ti,driver-strength-ohm = <50>;
>>> + disable-wp;
>>> +};
>>> --
>>> 2.30.0
>>>
>>
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2021-02-02 7:14 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-21 14:39 [PATCH 0/2] arm64: Initial support for Texas Instruments AM642 SK Lokesh Vutla
2021-01-21 14:39 ` Lokesh Vutla
2021-01-21 14:39 ` [PATCH 1/2] dt-bindings: arm: ti: Add bindings for " Lokesh Vutla
2021-01-21 14:39 ` Lokesh Vutla
2021-01-21 14:39 ` [PATCH 2/2] arm64: dts: ti: Add support " Lokesh Vutla
2021-01-21 14:39 ` Lokesh Vutla
2021-01-21 15:36 ` Nishanth Menon
2021-01-21 15:36 ` Nishanth Menon
2021-01-26 16:50 ` Suman Anna
2021-01-26 16:50 ` Suman Anna
2021-02-02 7:12 ` Lokesh Vutla
2021-02-02 7:12 ` Lokesh Vutla
2021-01-21 15:41 ` [PATCH 0/2] arm64: Initial support for Texas Instruments " Kishon Vijay Abraham I
2021-01-21 15:41 ` Kishon Vijay Abraham I
2021-01-21 15:52 ` Nishanth Menon
2021-01-21 15:52 ` Nishanth Menon
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.