mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-17 14:38:58 +00:00
board: phytec: am62x: Add PHYTEC phyCORE-AM62x SoM
Add basic support for PHYTEC phyCORE-AM62x SoM. Supported features: - 2GB DDR4 RAM - eMMC Flash - OSPI NOR Flash - external uSD - Ethernet - debug UART Product page SoM: https://www.phytec.com/product/phycore-am62x Device trees were taken from Linux v6.7-rc3. Signed-off-by: Wadim Egorov <w.egorov@phytec.de> Reviewed-by: Dhruva Gole <d-gole@ti.com>
This commit is contained in:
parent
53157bfa99
commit
085cd6459d
20 changed files with 5312 additions and 1 deletions
|
@ -1422,7 +1422,9 @@ dtb-$(CONFIG_SOC_K3_AM625) += k3-am625-sk.dtb \
|
|||
k3-am625-beagleplay.dtb \
|
||||
k3-am625-r5-beagleplay.dtb \
|
||||
k3-am625-verdin-wifi-dev.dtb \
|
||||
k3-am625-verdin-r5.dtb
|
||||
k3-am625-verdin-r5.dtb \
|
||||
k3-am625-phyboard-lyra-rdk.dtb \
|
||||
k3-am625-r5-phycore-som-2gb.dtb
|
||||
|
||||
dtb-$(CONFIG_SOC_K3_AM62A7) += k3-am62a7-sk.dtb \
|
||||
k3-am62a7-r5-sk.dtb
|
||||
|
|
2190
arch/arm/dts/k3-am62-phycore-som-ddr4-2gb.dtsi
Normal file
2190
arch/arm/dts/k3-am62-phycore-som-ddr4-2gb.dtsi
Normal file
File diff suppressed because it is too large
Load diff
324
arch/arm/dts/k3-am62-phycore-som.dtsi
Normal file
324
arch/arm/dts/k3-am62-phycore-som.dtsi
Normal file
|
@ -0,0 +1,324 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Copyright (C) 2022 - 2023 PHYTEC Messtechnik GmbH
|
||||
* Author: Wadim Egorov <w.egorov@phytec.de>
|
||||
*
|
||||
* Product homepage:
|
||||
* https://www.phytec.com/product/phycore-am62x
|
||||
*/
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
#include <dt-bindings/net/ti-dp83867.h>
|
||||
|
||||
/ {
|
||||
model = "PHYTEC phyCORE-AM62x";
|
||||
compatible = "phytec,am62-phycore-som", "ti,am625";
|
||||
|
||||
aliases {
|
||||
ethernet0 = &cpsw_port1;
|
||||
gpio0 = &main_gpio0;
|
||||
gpio1 = &main_gpio1;
|
||||
i2c0 = &main_i2c0;
|
||||
mmc0 = &sdhci0;
|
||||
rtc0 = &i2c_som_rtc;
|
||||
rtc1 = &wkup_rtc0;
|
||||
spi0 = &ospi0;
|
||||
};
|
||||
|
||||
memory@80000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
|
||||
};
|
||||
|
||||
reserved_memory: reserved-memory {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
ramoops@9ca00000 {
|
||||
compatible = "ramoops";
|
||||
reg = <0x00 0x9ca00000 0x00 0x00100000>;
|
||||
record-size = <0x8000>;
|
||||
console-size = <0x8000>;
|
||||
ftrace-size = <0x00>;
|
||||
pmsg-size = <0x8000>;
|
||||
};
|
||||
|
||||
secure_tfa_ddr: tfa@9e780000 {
|
||||
reg = <0x00 0x9e780000 0x00 0x80000>;
|
||||
alignment = <0x1000>;
|
||||
no-map;
|
||||
};
|
||||
|
||||
secure_ddr: optee@9e800000 {
|
||||
reg = <0x00 0x9e800000 0x00 0x01800000>; /* for OP-TEE */
|
||||
alignment = <0x1000>;
|
||||
no-map;
|
||||
};
|
||||
|
||||
wkup_r5fss0_core0_dma_memory_region: r5f-dma-memory@9db00000 {
|
||||
compatible = "shared-dma-pool";
|
||||
reg = <0x00 0x9db00000 0x00 0x00c00000>;
|
||||
no-map;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_5v0_som: regulator-vcc-5v0-som {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VCC_5V0_SOM";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
vdd_1v8: regulator-vdd-1v8 {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VDD_1V8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
vin-supply = <&vcc_5v0_som>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&leds_pins_default>;
|
||||
|
||||
led-0 {
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
gpios = <&main_gpio0 13 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "heartbeat";
|
||||
function = LED_FUNCTION_HEARTBEAT;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&main_pmx0 {
|
||||
leds_pins_default: leds-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x034, PIN_OUTPUT, 7) /* (H21) OSPI0_CSN2.GPIO0_13 */
|
||||
>;
|
||||
};
|
||||
|
||||
main_i2c0_pins_default: main-i2c0-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x1e0, PIN_INPUT_PULLUP, 0) /* (B16) I2C0_SCL */
|
||||
AM62X_IOPAD(0x1e4, PIN_INPUT_PULLUP, 0) /* (A16) I2C0_SDA */
|
||||
>;
|
||||
};
|
||||
|
||||
main_mdio1_pins_default: main-mdio1-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x160, PIN_OUTPUT, 0) /* (AD24) MDIO0_MDC */
|
||||
AM62X_IOPAD(0x15c, PIN_INPUT, 0) /* (AB22) MDIO0_MDIO */
|
||||
>;
|
||||
};
|
||||
|
||||
main_mmc0_pins_default: main-mmc0-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x220, PIN_INPUT_PULLUP, 0) /* (Y3) MMC0_CMD */
|
||||
AM62X_IOPAD(0x218, PIN_INPUT_PULLDOWN, 0) /* (AB1) MMC0_CLK */
|
||||
AM62X_IOPAD(0x214, PIN_INPUT_PULLUP, 0) /* (AA2) MMC0_DAT0 */
|
||||
AM62X_IOPAD(0x210, PIN_INPUT_PULLUP, 0) /* (AA1) MMC0_DAT1 */
|
||||
AM62X_IOPAD(0x20c, PIN_INPUT_PULLUP, 0) /* (AA3) MMC0_DAT2 */
|
||||
AM62X_IOPAD(0x208, PIN_INPUT_PULLUP, 0) /* (Y4) MMC0_DAT3 */
|
||||
AM62X_IOPAD(0x204, PIN_INPUT_PULLUP, 0) /* (AB2) MMC0_DAT4 */
|
||||
AM62X_IOPAD(0x200, PIN_INPUT_PULLUP, 0) /* (AC1) MMC0_DAT5 */
|
||||
AM62X_IOPAD(0x1fc, PIN_INPUT_PULLUP, 0) /* (AD2) MMC0_DAT6 */
|
||||
AM62X_IOPAD(0x1f8, PIN_INPUT_PULLUP, 0) /* (AC2) MMC0_DAT7 */
|
||||
>;
|
||||
};
|
||||
|
||||
main_rgmii1_pins_default: main-rgmii1-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x14c, PIN_INPUT, 0) /* (AB17) RGMII1_RD0 */
|
||||
AM62X_IOPAD(0x150, PIN_INPUT, 0) /* (AC17) RGMII1_RD1 */
|
||||
AM62X_IOPAD(0x154, PIN_INPUT, 0) /* (AB16) RGMII1_RD2 */
|
||||
AM62X_IOPAD(0x158, PIN_INPUT, 0) /* (AA15) RGMII1_RD3 */
|
||||
AM62X_IOPAD(0x148, PIN_INPUT, 0) /* (AD17) RGMII1_RXC */
|
||||
AM62X_IOPAD(0x144, PIN_INPUT, 0) /* (AE17) RGMII1_RX_CTL */
|
||||
AM62X_IOPAD(0x134, PIN_OUTPUT, 0) /* (AE20) RGMII1_TD0 */
|
||||
AM62X_IOPAD(0x138, PIN_OUTPUT, 0) /* (AD20) RGMII1_TD1 */
|
||||
AM62X_IOPAD(0x13c, PIN_OUTPUT, 0) /* (AE18) RGMII1_TD2 */
|
||||
AM62X_IOPAD(0x140, PIN_OUTPUT, 0) /* (AD18) RGMII1_TD3 */
|
||||
AM62X_IOPAD(0x130, PIN_OUTPUT, 0) /* (AE19) RGMII1_TXC */
|
||||
AM62X_IOPAD(0x12c, PIN_OUTPUT, 0) /* (AD19) RGMII1_TX_CTL */
|
||||
>;
|
||||
};
|
||||
|
||||
ospi0_pins_default: ospi0-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x000, PIN_OUTPUT, 0) /* (H24) OSPI0_CLK */
|
||||
AM62X_IOPAD(0x02c, PIN_OUTPUT, 0) /* (F23) OSPI0_CSn0 */
|
||||
AM62X_IOPAD(0x00c, PIN_INPUT, 0) /* (E25) OSPI0_D0 */
|
||||
AM62X_IOPAD(0x010, PIN_INPUT, 0) /* (G24) OSPI0_D1 */
|
||||
AM62X_IOPAD(0x014, PIN_INPUT, 0) /* (F25) OSPI0_D2 */
|
||||
AM62X_IOPAD(0x018, PIN_INPUT, 0) /* (F24) OSPI0_D3 */
|
||||
AM62X_IOPAD(0x01c, PIN_INPUT, 0) /* (J23) OSPI0_D4 */
|
||||
AM62X_IOPAD(0x020, PIN_INPUT, 0) /* (J25) OSPI0_D5 */
|
||||
AM62X_IOPAD(0x024, PIN_INPUT, 0) /* (H25) OSPI0_D6 */
|
||||
AM62X_IOPAD(0x028, PIN_INPUT, 0) /* (J22) OSPI0_D7 */
|
||||
AM62X_IOPAD(0x008, PIN_INPUT, 0) /* (J24) OSPI0_DQS */
|
||||
>;
|
||||
};
|
||||
|
||||
pmic_irq_pins_default: pmic-irq-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x01f4, PIN_INPUT, 0) /* (D16) EXTINTn */
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&cpsw3g {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_rgmii1_pins_default>;
|
||||
};
|
||||
|
||||
&cpsw_port1 {
|
||||
phy-mode = "rgmii-rxid";
|
||||
phy-handle = <&cpsw3g_phy1>;
|
||||
};
|
||||
|
||||
&cpsw3g_mdio {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_mdio1_pins_default>;
|
||||
status = "okay";
|
||||
|
||||
cpsw3g_phy1: ethernet-phy@1 {
|
||||
compatible = "ethernet-phy-id2000.a231", "ethernet-phy-ieee802.3-c22";
|
||||
reg = <1>;
|
||||
ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
|
||||
ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
|
||||
};
|
||||
};
|
||||
|
||||
&main_i2c0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_i2c0_pins_default>;
|
||||
clock-frequency = <400000>;
|
||||
status = "okay";
|
||||
|
||||
pmic@30 {
|
||||
compatible = "ti,tps65219";
|
||||
reg = <0x30>;
|
||||
buck1-supply = <&vcc_5v0_som>;
|
||||
buck2-supply = <&vcc_5v0_som>;
|
||||
buck3-supply = <&vcc_5v0_som>;
|
||||
ldo1-supply = <&vdd_3v3>;
|
||||
ldo2-supply = <&vdd_1v8>;
|
||||
ldo3-supply = <&vcc_5v0_som>;
|
||||
ldo4-supply = <&vcc_5v0_som>;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pmic_irq_pins_default>;
|
||||
interrupt-parent = <&gic500>;
|
||||
interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <1>;
|
||||
|
||||
ti,power-button;
|
||||
system-power-controller;
|
||||
|
||||
regulators {
|
||||
vdd_core: buck1 {
|
||||
regulator-name = "VDD_CORE";
|
||||
regulator-min-microvolt = <750000>;
|
||||
regulator-max-microvolt = <750000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vdd_3v3: buck2 {
|
||||
regulator-name = "VDD_3V3";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vdd_ddr4: buck3 {
|
||||
regulator-name = "VDD_DDR4";
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vddshv5_sdio: ldo1 {
|
||||
regulator-name = "VDDSHV5_SDIO";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-allow-bypass;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vddr_core: ldo2 {
|
||||
regulator-name = "VDDR_CORE";
|
||||
regulator-min-microvolt = <850000>;
|
||||
regulator-max-microvolt = <850000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vdda_1v8: ldo3 {
|
||||
regulator-name = "VDDA_1V8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vdd_2v5: ldo4 {
|
||||
regulator-name = "VDD_2V5";
|
||||
regulator-min-microvolt = <2500000>;
|
||||
regulator-max-microvolt = <2500000>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
eeprom@50 {
|
||||
compatible = "atmel,24c32";
|
||||
pagesize = <32>;
|
||||
reg = <0x50>;
|
||||
};
|
||||
|
||||
i2c_som_rtc: rtc@52 {
|
||||
compatible = "microcrystal,rv3028";
|
||||
reg = <0x52>;
|
||||
};
|
||||
};
|
||||
|
||||
&ospi0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ospi0_pins_default>;
|
||||
status = "okay";
|
||||
|
||||
serial_flash: flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0x0>;
|
||||
spi-tx-bus-width = <8>;
|
||||
spi-rx-bus-width = <8>;
|
||||
spi-max-frequency = <25000000>;
|
||||
cdns,tshsl-ns = <60>;
|
||||
cdns,tsd2d-ns = <60>;
|
||||
cdns,tchsh-ns = <60>;
|
||||
cdns,tslch-ns = <60>;
|
||||
cdns,read-delay = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
&sdhci0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_mmc0_pins_default>;
|
||||
ti,driver-strength-ohm = <50>;
|
||||
disable-wp;
|
||||
non-removable;
|
||||
status = "okay";
|
||||
};
|
166
arch/arm/dts/k3-am625-phyboard-lyra-rdk-u-boot.dtsi
Normal file
166
arch/arm/dts/k3-am625-phyboard-lyra-rdk-u-boot.dtsi
Normal file
|
@ -0,0 +1,166 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* phyCORE-AM62x dts file for SPLs
|
||||
* Copyright (C) 2022 - 2023 Phytec Messtechnik GmbH
|
||||
* Author: Wadim Egorov <w.egorov@phytec.de>
|
||||
*
|
||||
* Product homepage:
|
||||
* https://www.phytec.com/product/phyboard-am62x
|
||||
*/
|
||||
|
||||
#include "k3-am625-phycore-som-binman.dtsi"
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
stdout-path = "serial2:115200n8";
|
||||
tick-timer = &main_timer0;
|
||||
};
|
||||
|
||||
aliases {
|
||||
mmc0 = &sdhci0;
|
||||
mmc1 = &sdhci1;
|
||||
};
|
||||
|
||||
memory@80000000 {
|
||||
bootph-all;
|
||||
};
|
||||
};
|
||||
|
||||
&cpsw3g {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&cpsw_port1 {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&cpsw_port2 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&cpsw3g_phy1 {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&dmsc {
|
||||
k3_sysreset: sysreset-controller {
|
||||
compatible = "ti,sci-sysreset";
|
||||
bootph-all;
|
||||
};
|
||||
};
|
||||
|
||||
&fss {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&main_bcdma {
|
||||
bootph-all;
|
||||
reg = <0x00 0x485c0100 0x00 0x100>,
|
||||
<0x00 0x4c000000 0x00 0x20000>,
|
||||
<0x00 0x4a820000 0x00 0x20000>,
|
||||
<0x00 0x4aa40000 0x00 0x20000>,
|
||||
<0x00 0x4bc00000 0x00 0x100000>,
|
||||
<0x00 0x48600000 0x00 0x8000>,
|
||||
<0x00 0x484a4000 0x00 0x2000>,
|
||||
<0x00 0x484c2000 0x00 0x2000>;
|
||||
reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt",
|
||||
"ringrt" , "cfg", "tchan", "rchan";
|
||||
};
|
||||
|
||||
&main_gpio0 {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&main_mdio1_pins_default {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&main_i2c0 {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&main_i2c0_pins_default {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&main_mmc0_pins_default {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&main_mmc1_pins_default {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&main_pktdma {
|
||||
bootph-all;
|
||||
reg = <0x00 0x485c0000 0x00 0x100>,
|
||||
<0x00 0x4a800000 0x00 0x20000>,
|
||||
<0x00 0x4aa00000 0x00 0x20000>,
|
||||
<0x00 0x4b800000 0x00 0x200000>,
|
||||
<0x00 0x485e0000 0x00 0x10000>,
|
||||
<0x00 0x484a0000 0x00 0x2000>,
|
||||
<0x00 0x484c0000 0x00 0x2000>,
|
||||
<0x00 0x48430000 0x00 0x1000>;
|
||||
reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt",
|
||||
"cfg", "tchan", "rchan", "rflow";
|
||||
};
|
||||
|
||||
&main_rgmii1_pins_default {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&main_timer0 {
|
||||
clock-frequency = <25000000>;
|
||||
};
|
||||
|
||||
&main_uart0 {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&main_uart0_pins_default {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&main_uart1 {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&main_uart1_pins_default {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&ospi0 {
|
||||
bootph-all;
|
||||
|
||||
flash@0 {
|
||||
bootph-all;
|
||||
};
|
||||
};
|
||||
|
||||
&ospi0_pins_default {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&sdhci0 {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&sdhci1 {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&vcc_3v3_mmc {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&vcc_5v0_som {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&vddshv5_sdio {
|
||||
bootph-all;
|
||||
};
|
||||
|
||||
&wkup_uart0 {
|
||||
bootph-all;
|
||||
};
|
266
arch/arm/dts/k3-am625-phyboard-lyra-rdk.dts
Normal file
266
arch/arm/dts/k3-am625-phyboard-lyra-rdk.dts
Normal file
|
@ -0,0 +1,266 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Copyright (C) 2022 - 2023 PHYTEC Messtechnik GmbH
|
||||
* Author: Wadim Egorov <w.egorov@phytec.de>
|
||||
*
|
||||
* Product homepage:
|
||||
* https://www.phytec.com/product/phyboard-am62x
|
||||
*/
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
#include <dt-bindings/net/ti-dp83867.h>
|
||||
#include "k3-am625.dtsi"
|
||||
#include "k3-am62-phycore-som.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "phytec,am625-phyboard-lyra-rdk",
|
||||
"phytec,am62-phycore-som", "ti,am625";
|
||||
model = "PHYTEC phyBOARD-Lyra AM625";
|
||||
|
||||
aliases {
|
||||
serial2 = &main_uart0;
|
||||
serial3 = &main_uart1;
|
||||
mmc1 = &sdhci1;
|
||||
usb0 = &usb0;
|
||||
usb1 = &usb1;
|
||||
ethernet1 = &cpsw_port2;
|
||||
};
|
||||
|
||||
can_tc1: can-phy0 {
|
||||
compatible = "ti,tcan1042";
|
||||
#phy-cells = <0>;
|
||||
max-bitrate = <5000000>;
|
||||
standby-gpios = <&gpio_exp 1 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
autorepeat;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&gpio_keys_pins_default>;
|
||||
|
||||
key-home {
|
||||
label = "home";
|
||||
linux,code = <KEY_HOME>;
|
||||
gpios = <&main_gpio1 23 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
key-menu {
|
||||
label = "menu";
|
||||
linux,code = <KEY_MENU>;
|
||||
gpios = <&gpio_exp 4 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&leds_pins_default>, <&user_leds_pins_default>;
|
||||
|
||||
led-1 {
|
||||
gpios = <&main_gpio0 32 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "mmc0";
|
||||
};
|
||||
|
||||
led-2 {
|
||||
gpios = <&gpio_exp 2 GPIO_ACTIVE_HIGH>;
|
||||
linux,default-trigger = "mmc1";
|
||||
};
|
||||
};
|
||||
|
||||
vcc_3v3_mmc: regulator-vcc-3v3-mmc {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VCC_3V3_MMC";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
};
|
||||
|
||||
&main_pmx0 {
|
||||
gpio_keys_pins_default: gpio-keys-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x1d4, PIN_INPUT, 7) /* (B15) UART0_RTSn.GPIO1_23 */
|
||||
>;
|
||||
};
|
||||
|
||||
gpio_exp_int_pins_default: gpio-exp-int-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x244, PIN_INPUT, 7) /* (C17) MMC1_SDWP.GPIO1_49 */
|
||||
>;
|
||||
};
|
||||
|
||||
main_i2c1_pins_default: main-i2c1-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x1e8, PIN_INPUT_PULLUP, 0) /* (B17) I2C1_SCL */
|
||||
AM62X_IOPAD(0x1ec, PIN_INPUT_PULLUP, 0) /* (A17) I2C1_SDA */
|
||||
>;
|
||||
};
|
||||
|
||||
main_mcan0_pins_default: main-mcan0-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x1dc, PIN_INPUT, 0) /* (E15) MCAN0_RX */
|
||||
AM62X_IOPAD(0x1d8, PIN_OUTPUT, 0) /* (C15) MCAN0_TX */
|
||||
>;
|
||||
};
|
||||
|
||||
main_mmc1_pins_default: main-mmc1-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x23c, PIN_INPUT_PULLUP, 0) /* (A21) MMC1_CMD */
|
||||
AM62X_IOPAD(0x234, PIN_INPUT_PULLDOWN, 0) /* (B22) MMC1_CLK */
|
||||
AM62X_IOPAD(0x230, PIN_INPUT_PULLUP, 0) /* (A22) MMC1_DAT0 */
|
||||
AM62X_IOPAD(0x22c, PIN_INPUT_PULLUP, 0) /* (B21) MMC1_DAT1 */
|
||||
AM62X_IOPAD(0x228, PIN_INPUT_PULLUP, 0) /* (C21) MMC1_DAT2 */
|
||||
AM62X_IOPAD(0x224, PIN_INPUT_PULLUP, 0) /* (D22) MMC1_DAT3 */
|
||||
AM62X_IOPAD(0x240, PIN_INPUT_PULLUP, 0) /* (D17) MMC1_SDCD */
|
||||
>;
|
||||
};
|
||||
|
||||
main_rgmii2_pins_default: main-rgmii2-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x184, PIN_INPUT, 0) /* (AE23) RGMII2_RD0 */
|
||||
AM62X_IOPAD(0x188, PIN_INPUT, 0) /* (AB20) RGMII2_RD1 */
|
||||
AM62X_IOPAD(0x18c, PIN_INPUT, 0) /* (AC21) RGMII2_RD2 */
|
||||
AM62X_IOPAD(0x190, PIN_INPUT, 0) /* (AE22) RGMII2_RD3 */
|
||||
AM62X_IOPAD(0x180, PIN_INPUT, 0) /* (AD23) RGMII2_RXC */
|
||||
AM62X_IOPAD(0x17c, PIN_INPUT, 0) /* (AD22) RGMII2_RX_CTL */
|
||||
AM62X_IOPAD(0x16c, PIN_OUTPUT, 0) /* (Y18) RGMII2_TD0 */
|
||||
AM62X_IOPAD(0x170, PIN_OUTPUT, 0) /* (AA18) RGMII2_TD1 */
|
||||
AM62X_IOPAD(0x174, PIN_OUTPUT, 0) /* (AD21) RGMII2_TD2 */
|
||||
AM62X_IOPAD(0x178, PIN_OUTPUT, 0) /* (AC20) RGMII2_TD3 */
|
||||
AM62X_IOPAD(0x168, PIN_OUTPUT, 0) /* (AE21) RGMII2_TXC */
|
||||
AM62X_IOPAD(0x164, PIN_OUTPUT, 0) /* (AA19) RGMII2_TX_CTL */
|
||||
>;
|
||||
};
|
||||
|
||||
main_uart0_pins_default: main-uart0-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x1c8, PIN_INPUT, 0) /* (D14) UART0_RXD */
|
||||
AM62X_IOPAD(0x1cc, PIN_OUTPUT, 0) /* (E14) UART0_TXD */
|
||||
>;
|
||||
};
|
||||
|
||||
main_uart1_pins_default: main-uart1-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x194, PIN_INPUT, 2) /* (B19) MCASP0_AXR3.UART1_CTSn */
|
||||
AM62X_IOPAD(0x198, PIN_OUTPUT, 2) /* (A19) MCASP0_AXR2.UART1_RTSn */
|
||||
AM62X_IOPAD(0x1ac, PIN_INPUT, 2) /* (E19) MCASP0_AFSR.UART1_RXD */
|
||||
AM62X_IOPAD(0x1b0, PIN_OUTPUT, 2) /* (A20) MCASP0_ACLKR.UART1_TXD */
|
||||
>;
|
||||
};
|
||||
|
||||
main_usb1_pins_default: main-usb1-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x258, PIN_OUTPUT, 0) /* (F18) USB1_DRVVBUS */
|
||||
>;
|
||||
};
|
||||
|
||||
user_leds_pins_default: user-leds-default-pins {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_IOPAD(0x084, PIN_OUTPUT, 7) /* (L23) GPMC0_ADVn_ALE.GPIO0_32 */
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&cpsw3g {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_rgmii1_pins_default>, <&main_rgmii2_pins_default>;
|
||||
};
|
||||
|
||||
&cpsw_port2 {
|
||||
phy-mode = "rgmii-rxid";
|
||||
phy-handle = <&cpsw3g_phy3>;
|
||||
};
|
||||
|
||||
&cpsw3g_mdio {
|
||||
cpsw3g_phy3: ethernet-phy@3 {
|
||||
compatible = "ethernet-phy-id2000.a231", "ethernet-phy-ieee802.3-c22";
|
||||
reg = <3>;
|
||||
ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
|
||||
ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
|
||||
};
|
||||
};
|
||||
|
||||
&main_i2c1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_i2c1_pins_default>;
|
||||
clock-frequency = <400000>;
|
||||
status = "okay";
|
||||
|
||||
gpio_exp: gpio-expander@21 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&gpio_exp_int_pins_default>;
|
||||
compatible = "nxp,pcf8574";
|
||||
reg = <0x21>;
|
||||
interrupt-parent = <&main_gpio1>;
|
||||
interrupts = <49 0>;
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
interrupt-controller;
|
||||
#interrupt-cells = <2>;
|
||||
gpio-line-names = "GPIO0_HDMI_RST", "GPIO1_CAN0_nEN",
|
||||
"GPIO2_LED2", "GPIO3_LVDS_GPIO",
|
||||
"GPIO4_BUT2", "GPIO5_LVDS_BKLT_EN",
|
||||
"GPIO6_ETH1_USER_RESET", "GPIO7_AUDIO_USER_RESET";
|
||||
};
|
||||
|
||||
eeprom@51 {
|
||||
compatible = "atmel,24c02";
|
||||
pagesize = <16>;
|
||||
reg = <0x51>;
|
||||
};
|
||||
};
|
||||
|
||||
&main_mcan0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_mcan0_pins_default>;
|
||||
phys = <&can_tc1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&main_uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_uart0_pins_default>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&main_uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_uart1_pins_default>;
|
||||
/* Main UART1 may be used by TIFS firmware */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdhci1 {
|
||||
vmmc-supply = <&vcc_3v3_mmc>;
|
||||
vqmmc-supply = <&vddshv5_sdio>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_mmc1_pins_default>;
|
||||
ti,driver-strength-ohm = <50>;
|
||||
disable-wp;
|
||||
no-1-8-v;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbss0 {
|
||||
ti,vbus-divider;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbss1 {
|
||||
ti,vbus-divider;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb0 {
|
||||
dr_mode = "peripheral";
|
||||
};
|
||||
|
||||
&usb1 {
|
||||
dr_mode = "host";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_usb1_pins_default>;
|
||||
};
|
314
arch/arm/dts/k3-am625-phycore-som-binman.dtsi
Normal file
314
arch/arm/dts/k3-am625-phycore-som-binman.dtsi
Normal file
|
@ -0,0 +1,314 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* Based on k3-am625-sk-binman.dtsi
|
||||
*
|
||||
* Copyright (C) 2022 - 2023 PHYTEC Messtechnik GmbH
|
||||
* Author: Wadim Egorov <w.egorov@phytec.de>
|
||||
*/
|
||||
|
||||
#include "k3-binman.dtsi"
|
||||
|
||||
#ifdef CONFIG_TARGET_PHYCORE_AM62X_R5
|
||||
&binman {
|
||||
tiboot3-am62x-hs-phycore-som.bin {
|
||||
filename = "tiboot3-am62x-hs-phycore-som.bin";
|
||||
ti-secure-rom {
|
||||
content = <&u_boot_spl>, <&ti_fs_enc>, <&combined_tifs_cfg>,
|
||||
<&combined_dm_cfg>, <&sysfw_inner_cert>;
|
||||
combined;
|
||||
dm-data;
|
||||
sysfw-inner-cert;
|
||||
keyfile = "custMpk.pem";
|
||||
sw-rev = <1>;
|
||||
content-sbl = <&u_boot_spl>;
|
||||
content-sysfw = <&ti_fs_enc>;
|
||||
content-sysfw-data = <&combined_tifs_cfg>;
|
||||
content-sysfw-inner-cert = <&sysfw_inner_cert>;
|
||||
content-dm-data = <&combined_dm_cfg>;
|
||||
load = <0x43c00000>;
|
||||
load-sysfw = <0x40000>;
|
||||
load-sysfw-data = <0x67000>;
|
||||
load-dm-data = <0x43c3a800>;
|
||||
};
|
||||
u_boot_spl: u-boot-spl {
|
||||
no-expanded;
|
||||
};
|
||||
ti_fs_enc: ti-fs-enc.bin {
|
||||
filename = "ti-sysfw/ti-fs-firmware-am62x-hs-enc.bin";
|
||||
type = "blob-ext";
|
||||
optional;
|
||||
};
|
||||
combined_tifs_cfg: combined-tifs-cfg.bin {
|
||||
filename = "combined-tifs-cfg.bin";
|
||||
type = "blob-ext";
|
||||
};
|
||||
sysfw_inner_cert: sysfw-inner-cert {
|
||||
filename = "ti-sysfw/ti-fs-firmware-am62x-hs-cert.bin";
|
||||
type = "blob-ext";
|
||||
optional;
|
||||
};
|
||||
combined_dm_cfg: combined-dm-cfg.bin {
|
||||
filename = "combined-dm-cfg.bin";
|
||||
type = "blob-ext";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&binman {
|
||||
tiboot3-am62x-hs-fs-phycore-som.bin {
|
||||
filename = "tiboot3-am62x-hs-fs-phycore-som.bin";
|
||||
symlink = "tiboot3.bin";
|
||||
ti-secure-rom {
|
||||
content = <&u_boot_spl_fs>, <&ti_fs_enc_fs>, <&combined_tifs_cfg_fs>,
|
||||
<&combined_dm_cfg_fs>, <&sysfw_inner_cert_fs>;
|
||||
combined;
|
||||
dm-data;
|
||||
sysfw-inner-cert;
|
||||
keyfile = "custMpk.pem";
|
||||
sw-rev = <1>;
|
||||
content-sbl = <&u_boot_spl_fs>;
|
||||
content-sysfw = <&ti_fs_enc_fs>;
|
||||
content-sysfw-data = <&combined_tifs_cfg_fs>;
|
||||
content-sysfw-inner-cert = <&sysfw_inner_cert_fs>;
|
||||
content-dm-data = <&combined_dm_cfg_fs>;
|
||||
load = <0x43c00000>;
|
||||
load-sysfw = <0x40000>;
|
||||
load-sysfw-data = <0x67000>;
|
||||
load-dm-data = <0x43c3a800>;
|
||||
};
|
||||
u_boot_spl_fs: u-boot-spl {
|
||||
no-expanded;
|
||||
};
|
||||
ti_fs_enc_fs: ti-fs-enc.bin {
|
||||
filename = "ti-sysfw/ti-fs-firmware-am62x-hs-fs-enc.bin";
|
||||
type = "blob-ext";
|
||||
optional;
|
||||
};
|
||||
combined_tifs_cfg_fs: combined-tifs-cfg.bin {
|
||||
filename = "combined-tifs-cfg.bin";
|
||||
type = "blob-ext";
|
||||
};
|
||||
sysfw_inner_cert_fs: sysfw-inner-cert {
|
||||
filename = "ti-sysfw/ti-fs-firmware-am62x-hs-fs-cert.bin";
|
||||
type = "blob-ext";
|
||||
optional;
|
||||
};
|
||||
combined_dm_cfg_fs: combined-dm-cfg.bin {
|
||||
filename = "combined-dm-cfg.bin";
|
||||
type = "blob-ext";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&binman {
|
||||
tiboot3-am62x-gp-phycore-som.bin {
|
||||
filename = "tiboot3-am62x-gp-phycore-som.bin";
|
||||
ti-secure-rom {
|
||||
content = <&u_boot_spl_unsigned>, <&ti_fs_gp>,
|
||||
<&combined_tifs_cfg_gp>, <&combined_dm_cfg_gp>;
|
||||
combined;
|
||||
dm-data;
|
||||
content-sbl = <&u_boot_spl_unsigned>;
|
||||
load = <0x43c00000>;
|
||||
content-sysfw = <&ti_fs_gp>;
|
||||
load-sysfw = <0x40000>;
|
||||
content-sysfw-data = <&combined_tifs_cfg_gp>;
|
||||
load-sysfw-data = <0x67000>;
|
||||
content-dm-data = <&combined_dm_cfg_gp>;
|
||||
load-dm-data = <0x43c3a800>;
|
||||
sw-rev = <1>;
|
||||
keyfile = "ti-degenerate-key.pem";
|
||||
};
|
||||
u_boot_spl_unsigned: u-boot-spl {
|
||||
no-expanded;
|
||||
};
|
||||
ti_fs_gp: ti-fs-gp.bin {
|
||||
filename = "ti-sysfw/ti-fs-firmware-am62x-gp.bin";
|
||||
type = "blob-ext";
|
||||
optional;
|
||||
};
|
||||
combined_tifs_cfg_gp: combined-tifs-cfg-gp.bin {
|
||||
filename = "combined-tifs-cfg.bin";
|
||||
type = "blob-ext";
|
||||
};
|
||||
combined_dm_cfg_gp: combined-dm-cfg-gp.bin {
|
||||
filename = "combined-dm-cfg.bin";
|
||||
type = "blob-ext";
|
||||
};
|
||||
};
|
||||
};
|
||||
#endif /* CONFIG_TARGET_PHYCORE_AM62X_R5 */
|
||||
|
||||
#ifdef CONFIG_TARGET_PHYCORE_AM62X_A53
|
||||
#define SPL_AM625_PHYBOARD_LYRA_DTB "spl/dts/k3-am625-phyboard-lyra-rdk.dtb"
|
||||
#define AM625_PHYBOARD_LYRA_DTB "u-boot.dtb"
|
||||
|
||||
&binman {
|
||||
ti-dm {
|
||||
filename = "ti-dm.bin";
|
||||
blob-ext {
|
||||
filename = "ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f";
|
||||
};
|
||||
};
|
||||
ti-spl {
|
||||
insert-template = <&ti_spl_template>;
|
||||
|
||||
fit {
|
||||
|
||||
images {
|
||||
dm {
|
||||
ti-secure {
|
||||
content = <&dm>;
|
||||
keyfile = "custMpk.pem";
|
||||
};
|
||||
dm: blob-ext {
|
||||
filename = "ti-dm.bin";
|
||||
};
|
||||
};
|
||||
|
||||
fdt-0 {
|
||||
description = "k3-am625-phyboard-lyra-rdk";
|
||||
type = "flat_dt";
|
||||
arch = "arm";
|
||||
compression = "none";
|
||||
ti-secure {
|
||||
content = <&spl_am625_phyboard_lyra_dtb>;
|
||||
keyfile = "custMpk.pem";
|
||||
};
|
||||
spl_am625_phyboard_lyra_dtb: blob-ext {
|
||||
filename = SPL_AM625_PHYBOARD_LYRA_DTB;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
configurations {
|
||||
default = "conf-0";
|
||||
|
||||
conf-0 {
|
||||
description = "k3-am625-phyboard-lyra-rdk";
|
||||
firmware = "atf";
|
||||
loadables = "tee", "dm", "spl";
|
||||
fdt = "fdt-0";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&binman {
|
||||
u-boot {
|
||||
insert-template = <&u_boot_template>;
|
||||
|
||||
fit {
|
||||
images {
|
||||
uboot {
|
||||
description = "U-Boot for phyCORE-AM62x";
|
||||
};
|
||||
|
||||
fdt-0 {
|
||||
description = "k3-am625-phyboard-lyra-rdk";
|
||||
type = "flat_dt";
|
||||
arch = "arm";
|
||||
compression = "none";
|
||||
ti-secure {
|
||||
content = <&am625_phyboard_lyra_dtb>;
|
||||
keyfile = "custMpk.pem";
|
||||
};
|
||||
am625_phyboard_lyra_dtb: blob-ext {
|
||||
filename = AM625_PHYBOARD_LYRA_DTB;
|
||||
};
|
||||
hash {
|
||||
algo = "crc32";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
configurations {
|
||||
default = "conf-0";
|
||||
|
||||
conf-0 {
|
||||
description = "k3-am625-phyboard-lyra-rdk";
|
||||
firmware = "uboot";
|
||||
loadables = "uboot";
|
||||
fdt = "fdt-0";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&binman {
|
||||
ti-spl_unsigned {
|
||||
insert-template = <&ti_spl_unsigned_template>;
|
||||
|
||||
fit {
|
||||
images {
|
||||
dm {
|
||||
blob-ext {
|
||||
filename = "ti-dm.bin";
|
||||
};
|
||||
};
|
||||
|
||||
fdt-0 {
|
||||
description = "k3-am625-phyboard-lyra-rdk";
|
||||
type = "flat_dt";
|
||||
arch = "arm";
|
||||
compression = "none";
|
||||
spl_am625_phyboard_lyra_dtb_unsigned: blob {
|
||||
filename = SPL_AM625_PHYBOARD_LYRA_DTB;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
configurations {
|
||||
default = "conf-0";
|
||||
|
||||
conf-0 {
|
||||
description = "k3-am625-phyboard-lyra-rdk";
|
||||
firmware = "atf";
|
||||
loadables = "tee", "dm", "spl";
|
||||
fdt = "fdt-0";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&binman {
|
||||
u-boot_unsigned {
|
||||
insert-template = <&u_boot_unsigned_template>;
|
||||
|
||||
fit {
|
||||
images {
|
||||
uboot {
|
||||
description = "U-Boot for phyCORE-AM62x";
|
||||
};
|
||||
|
||||
fdt-0 {
|
||||
description = "k3-am625-phyboard-lyra-rdk";
|
||||
type = "flat_dt";
|
||||
arch = "arm";
|
||||
compression = "none";
|
||||
am625_phyboard_lyra_dtb_unsigned: blob {
|
||||
filename = AM625_PHYBOARD_LYRA_DTB;
|
||||
};
|
||||
hash {
|
||||
algo = "crc32";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
configurations {
|
||||
default = "conf-0";
|
||||
|
||||
conf-0 {
|
||||
description = "k3-am625-phyboard-lyra-rdk";
|
||||
firmware = "uboot";
|
||||
loadables = "uboot";
|
||||
fdt = "fdt-0";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
#endif /* CONFIG_TARGET_PHYCORE_AM62X_A53 */
|
119
arch/arm/dts/k3-am625-r5-phycore-som-2gb.dts
Normal file
119
arch/arm/dts/k3-am625-r5-phycore-som-2gb.dts
Normal file
|
@ -0,0 +1,119 @@
|
|||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* phyCORE-AM62x dts file for R5 SPL with 2GB RAM
|
||||
* Copyright (C) 2022 - 2023 Phytec Messtechnik GmbH
|
||||
* Author: Wadim Egorov <w.egorov@phytec.de>
|
||||
*/
|
||||
|
||||
#include "k3-am625-phyboard-lyra-rdk.dts"
|
||||
#include "k3-am62-phycore-som-ddr4-2gb.dtsi"
|
||||
#include "k3-am62-ddr.dtsi"
|
||||
|
||||
#include "k3-am625-phyboard-lyra-rdk-u-boot.dtsi"
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
remoteproc0 = &sysctrler;
|
||||
remoteproc1 = &a53_0;
|
||||
serial0 = &wkup_uart0;
|
||||
serial3 = &main_uart1;
|
||||
};
|
||||
|
||||
a53_0: a53@0 {
|
||||
compatible = "ti,am654-rproc";
|
||||
reg = <0x00 0x00a90000 0x00 0x10>;
|
||||
power-domains = <&k3_pds 61 TI_SCI_PD_EXCLUSIVE>,
|
||||
<&k3_pds 135 TI_SCI_PD_EXCLUSIVE>,
|
||||
<&k3_pds 166 TI_SCI_PD_EXCLUSIVE>;
|
||||
resets = <&k3_reset 135 0>;
|
||||
clocks = <&k3_clks 61 0>;
|
||||
assigned-clocks = <&k3_clks 61 0>, <&k3_clks 135 0>;
|
||||
assigned-clock-parents = <&k3_clks 61 2>;
|
||||
assigned-clock-rates = <200000000>, <1200000000>;
|
||||
ti,sci = <&dmsc>;
|
||||
ti,sci-proc-id = <32>;
|
||||
ti,sci-host-id = <10>;
|
||||
bootph-pre-ram;
|
||||
};
|
||||
|
||||
dm_tifs: dm-tifs {
|
||||
compatible = "ti,j721e-dm-sci";
|
||||
ti,host-id = <36>;
|
||||
ti,secure-host;
|
||||
mbox-names = "rx", "tx";
|
||||
mboxes= <&secure_proxy_main 22>,
|
||||
<&secure_proxy_main 23>;
|
||||
bootph-pre-ram;
|
||||
};
|
||||
|
||||
memory@80000000 {
|
||||
device_type = "memory";
|
||||
/* 2G RAM */
|
||||
reg = <0x00000000 0x80000000 0x00000000 0x80000000>;
|
||||
bootph-pre-ram;
|
||||
};
|
||||
};
|
||||
|
||||
&secure_proxy_sa3 {
|
||||
/* We require this for boot handshake */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&cbass_main {
|
||||
sysctrler: sysctrler {
|
||||
compatible = "ti,am654-system-controller";
|
||||
mboxes= <&secure_proxy_main 1>, <&secure_proxy_main 0>, <&secure_proxy_sa3 0>;
|
||||
mbox-names = "tx", "rx", "boot_notify";
|
||||
bootph-pre-ram;
|
||||
};
|
||||
};
|
||||
|
||||
&dmsc {
|
||||
mboxes= <&secure_proxy_main 0>,
|
||||
<&secure_proxy_main 1>,
|
||||
<&secure_proxy_main 0>;
|
||||
mbox-names = "rx", "tx", "notify";
|
||||
ti,host-id = <35>;
|
||||
ti,secure-host;
|
||||
};
|
||||
|
||||
&main_bcdma {
|
||||
ti,sci = <&dm_tifs>;
|
||||
};
|
||||
|
||||
&main_pktdma {
|
||||
ti,sci = <&dm_tifs>;
|
||||
};
|
||||
|
||||
/* Main UART1 is used for TIFS firmware logs */
|
||||
&main_uart1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&main_uart1_pins_default>;
|
||||
status = "okay";
|
||||
bootph-pre-ram;
|
||||
};
|
||||
|
||||
&mcu_pmx0 {
|
||||
wkup_uart0_pins_default: wkup-uart0-pins-default {
|
||||
pinctrl-single,pins = <
|
||||
AM62X_MCU_IOPAD(0x02c, PIN_INPUT, 0) /* (C6) WKUP_UART0_CTSn */
|
||||
AM62X_MCU_IOPAD(0x030, PIN_OUTPUT, 0) /* (A4) WKUP_UART0_RTSn */
|
||||
AM62X_MCU_IOPAD(0x024, PIN_INPUT, 0) /* (B4) WKUP_UART0_RXD */
|
||||
AM62X_MCU_IOPAD(0x028, PIN_OUTPUT, 0) /* (C5) WKUP_UART0_TXD */
|
||||
>;
|
||||
bootph-pre-ram;
|
||||
};
|
||||
};
|
||||
|
||||
&ospi0 {
|
||||
reg = <0x00 0x0fc40000 0x00 0x100>,
|
||||
<0x00 0x60000000 0x00 0x08000000>;
|
||||
};
|
||||
|
||||
/* WKUP UART0 is used for DM firmware logs */
|
||||
&wkup_uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&wkup_uart0_pins_default>;
|
||||
status = "okay";
|
||||
bootph-pre-ram;
|
||||
};
|
|
@ -25,6 +25,22 @@ config TARGET_AM625_R5_EVM
|
|||
select BINMAN
|
||||
imply SYS_K3_SPL_ATF
|
||||
|
||||
config TARGET_PHYCORE_AM62X_A53
|
||||
bool "PHYTEC phyCORE-AM62x running on A53"
|
||||
select ARM64
|
||||
select BINMAN
|
||||
|
||||
config TARGET_PHYCORE_AM62X_R5
|
||||
bool "PHYTEC phyCORE-AM62x running on R5"
|
||||
select CPU_V7R
|
||||
select SYS_THUMB_BUILD
|
||||
select K3_LOAD_SYSFW
|
||||
select RAM
|
||||
select SPL_RAM
|
||||
select K3_DDRSS
|
||||
select BINMAN
|
||||
imply SYS_K3_SPL_ATF
|
||||
|
||||
config TARGET_VERDIN_AM62_A53
|
||||
bool "Toradex Verdin AM62 running on A53"
|
||||
select ARM64
|
||||
|
@ -44,6 +60,7 @@ config TARGET_VERDIN_AM62_R5
|
|||
endchoice
|
||||
|
||||
source "board/beagle/beagleplay/Kconfig"
|
||||
source "board/phytec/phycore_am62x/Kconfig"
|
||||
source "board/ti/am62x/Kconfig"
|
||||
source "board/toradex/verdin-am62/Kconfig"
|
||||
|
||||
|
|
33
board/phytec/phycore_am62x/Kconfig
Normal file
33
board/phytec/phycore_am62x/Kconfig
Normal file
|
@ -0,0 +1,33 @@
|
|||
# SPDX-License-Identifier: GPL-2.0+
|
||||
#
|
||||
# Copyright (C) 2022 - 2023 PHYTEC Messtechnik GmbH
|
||||
# Author: Wadim Egorov <w.egorov@phytec.de>
|
||||
|
||||
if TARGET_PHYCORE_AM62X_A53
|
||||
|
||||
config SYS_BOARD
|
||||
default "phycore_am62x"
|
||||
|
||||
config SYS_VENDOR
|
||||
default "phytec"
|
||||
|
||||
config SYS_CONFIG_NAME
|
||||
default "phycore_am62x"
|
||||
|
||||
endif
|
||||
|
||||
if TARGET_PHYCORE_AM62X_R5
|
||||
|
||||
config SYS_BOARD
|
||||
default "phycore_am62x"
|
||||
|
||||
config SYS_VENDOR
|
||||
default "phytec"
|
||||
|
||||
config SYS_CONFIG_NAME
|
||||
default "phycore_am62x"
|
||||
|
||||
config SPL_LDSCRIPT
|
||||
default "arch/arm/mach-omap2/u-boot-spl.lds"
|
||||
|
||||
endif
|
15
board/phytec/phycore_am62x/MAINTAINERS
Normal file
15
board/phytec/phycore_am62x/MAINTAINERS
Normal file
|
@ -0,0 +1,15 @@
|
|||
phyCORE-AM62x
|
||||
M: Wadim Egorov <w.egorov@phytec.de>
|
||||
W: https://www.phytec.com/product/phycore-am62x
|
||||
S: Maintained
|
||||
F: arch/arm/dts/k3-am62-phycore-som-ddr4-2gb.dtsi
|
||||
F: arch/arm/dts/k3-am62-phycore-som.dtsi
|
||||
F: arch/arm/dts/k3-am625-phyboard-lyra-rdk-u-boot.dtsi
|
||||
F: arch/arm/dts/k3-am625-phyboard-lyra-rdk.dts
|
||||
F: arch/arm/dts/k3-am625-phycore-som-binman.dtsi
|
||||
F: arch/arm/dts/k3-am625-r5-phycore-som-2gb.dts
|
||||
F: board/phytec/phycore_am62x/
|
||||
F: configs/phycore_am62x_a53_defconfig
|
||||
F: configs/phycore_am62x_r5_defconfig
|
||||
F: include/configs/phycore_am62x.h
|
||||
F: doc/board/phytec/phycore-am62x.rst
|
8
board/phytec/phycore_am62x/Makefile
Normal file
8
board/phytec/phycore_am62x/Makefile
Normal file
|
@ -0,0 +1,8 @@
|
|||
#
|
||||
# Copyright (C) 2022 - 2023 PHYTEC Messtechnik GmbH
|
||||
# Author: Wadim Egorov <w.egorov@phytec.de>
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0+
|
||||
#
|
||||
|
||||
obj-y += phycore-am62x.o
|
36
board/phytec/phycore_am62x/board-cfg.yaml
Normal file
36
board/phytec/phycore_am62x/board-cfg.yaml
Normal file
|
@ -0,0 +1,36 @@
|
|||
# SPDX-License-Identifier: GPL-2.0+
|
||||
# Copyright (C) 2022-2023 Texas Instruments Incorporated - https://www.ti.com/
|
||||
#
|
||||
# Board configuration for AM62
|
||||
#
|
||||
|
||||
---
|
||||
|
||||
board-cfg:
|
||||
rev:
|
||||
boardcfg_abi_maj : 0x0
|
||||
boardcfg_abi_min : 0x1
|
||||
control:
|
||||
subhdr:
|
||||
magic: 0xC1D3
|
||||
size: 7
|
||||
main_isolation_enable : 0x5A
|
||||
main_isolation_hostid : 0x2
|
||||
secproxy:
|
||||
subhdr:
|
||||
magic: 0x1207
|
||||
size: 7
|
||||
scaling_factor : 0x1
|
||||
scaling_profile : 0x1
|
||||
disable_main_nav_secure_proxy : 0
|
||||
msmc:
|
||||
subhdr:
|
||||
magic: 0xA5C3
|
||||
size: 5
|
||||
msmc_cache_size : 0x0
|
||||
debug_cfg:
|
||||
subhdr:
|
||||
magic: 0x020C
|
||||
size: 8
|
||||
trace_dst_enables : 0x00
|
||||
trace_src_enables : 0x00
|
59
board/phytec/phycore_am62x/phycore-am62x.c
Normal file
59
board/phytec/phycore_am62x/phycore-am62x.c
Normal file
|
@ -0,0 +1,59 @@
|
|||
// SPDX-License-Identifier: GPL-2.0+
|
||||
/*
|
||||
* Copyright (C) 2022 - 2023 PHYTEC Messtechnik GmbH
|
||||
* Author: Wadim Egorov <w.egorov@phytec.de>
|
||||
*/
|
||||
|
||||
#include <asm/io.h>
|
||||
#include <env.h>
|
||||
#include <env_internal.h>
|
||||
#include <spl.h>
|
||||
#include <fdt_support.h>
|
||||
#include <asm/arch/hardware.h>
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
int board_init(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
int dram_init(void)
|
||||
{
|
||||
return fdtdec_setup_mem_size_base();
|
||||
}
|
||||
|
||||
int dram_init_banksize(void)
|
||||
{
|
||||
return fdtdec_setup_memory_banksize();
|
||||
}
|
||||
|
||||
#define CTRLMMR_USB0_PHY_CTRL 0x43004008
|
||||
#define CTRLMMR_USB1_PHY_CTRL 0x43004018
|
||||
#define CORE_VOLTAGE 0x80000000
|
||||
|
||||
#ifdef CONFIG_SPL_BOARD_INIT
|
||||
void spl_board_init(void)
|
||||
{
|
||||
u32 val;
|
||||
|
||||
/* Set USB0 PHY core voltage to 0.85V */
|
||||
val = readl(CTRLMMR_USB0_PHY_CTRL);
|
||||
val &= ~(CORE_VOLTAGE);
|
||||
writel(val, CTRLMMR_USB0_PHY_CTRL);
|
||||
|
||||
/* Set USB1 PHY core voltage to 0.85V */
|
||||
val = readl(CTRLMMR_USB1_PHY_CTRL);
|
||||
val &= ~(CORE_VOLTAGE);
|
||||
writel(val, CTRLMMR_USB1_PHY_CTRL);
|
||||
|
||||
/* We have 32k crystal, so lets enable it */
|
||||
val = readl(MCU_CTRL_LFXOSC_CTRL);
|
||||
val &= ~(MCU_CTRL_LFXOSC_32K_DISABLE_VAL);
|
||||
writel(val, MCU_CTRL_LFXOSC_CTRL);
|
||||
/* Add any TRIM needed for the crystal here.. */
|
||||
/* Make sure to mux up to take the SoC 32k from the crystal */
|
||||
writel(MCU_CTRL_DEVICE_CLKOUT_LFOSC_SELECT_VAL,
|
||||
MCU_CTRL_DEVICE_CLKOUT_32K_CTRL);
|
||||
}
|
||||
#endif
|
23
board/phytec/phycore_am62x/phycore_am62x.env
Normal file
23
board/phytec/phycore_am62x/phycore_am62x.env
Normal file
|
@ -0,0 +1,23 @@
|
|||
fdtaddr=0x88000000
|
||||
loadaddr=0x82000000
|
||||
scriptaddr=0x80000000
|
||||
fdt_addr_r=0x88000000
|
||||
kernel_addr_r=0x82000000
|
||||
ramdisk_addr_r=0x88080000
|
||||
fdtoverlay_addr_r=0x89000000
|
||||
|
||||
fdtfile=CONFIG_DEFAULT_FDT_FILE
|
||||
mmcdev=1
|
||||
mmcroot=2
|
||||
mmcpart=1
|
||||
console=ttyS2,115200n8
|
||||
mmcargs=setenv bootargs console=${console} earlycon=ns16550a,mmio32,0x02800000
|
||||
root=/dev/mmcblk${mmcdev}p${mmcroot} rootwait rw
|
||||
loadimage=load mmc ${mmcdev}:${mmcpart} ${loadaddr} Image
|
||||
loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdtaddr} ${fdtfile}
|
||||
mmcboot=run mmcargs;
|
||||
mmc dev ${mmcdev};
|
||||
mmc rescan;
|
||||
run loadimage;
|
||||
run loadfdt;
|
||||
booti ${loadaddr} - ${fdtaddr}
|
12
board/phytec/phycore_am62x/pm-cfg.yaml
Normal file
12
board/phytec/phycore_am62x/pm-cfg.yaml
Normal file
|
@ -0,0 +1,12 @@
|
|||
# SPDX-License-Identifier: GPL-2.0+
|
||||
# Copyright (C) 2022-2023 Texas Instruments Incorporated - https://www.ti.com/
|
||||
#
|
||||
# Power management configuration for AM62
|
||||
#
|
||||
|
||||
---
|
||||
|
||||
pm-cfg:
|
||||
rev:
|
||||
boardcfg_abi_maj : 0x0
|
||||
boardcfg_abi_min : 0x1
|
1088
board/phytec/phycore_am62x/rm-cfg.yaml
Normal file
1088
board/phytec/phycore_am62x/rm-cfg.yaml
Normal file
File diff suppressed because it is too large
Load diff
379
board/phytec/phycore_am62x/sec-cfg.yaml
Normal file
379
board/phytec/phycore_am62x/sec-cfg.yaml
Normal file
|
@ -0,0 +1,379 @@
|
|||
# SPDX-License-Identifier: GPL-2.0+
|
||||
# Copyright (C) 2022-2023 Texas Instruments Incorporated - https://www.ti.com/
|
||||
#
|
||||
# Security management configuration for AM62
|
||||
#
|
||||
|
||||
---
|
||||
|
||||
sec-cfg:
|
||||
rev:
|
||||
boardcfg_abi_maj : 0x0
|
||||
boardcfg_abi_min : 0x1
|
||||
processor_acl_list:
|
||||
subhdr:
|
||||
magic: 0xF1EA
|
||||
size: 164
|
||||
proc_acl_entries:
|
||||
- #1
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #2
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #3
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #4
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #5
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #6
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #7
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #8
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #9
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #10
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #11
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #12
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #13
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #14
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #15
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #16
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #17
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #18
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #19
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #20
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #21
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #22
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #23
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #24
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #25
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #26
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #27
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #28
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #29
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #30
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #31
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
- #32
|
||||
processor_id: 0
|
||||
proc_access_master: 0
|
||||
proc_access_secondary: [0, 0, 0]
|
||||
host_hierarchy:
|
||||
subhdr:
|
||||
magic: 0x8D27
|
||||
size: 68
|
||||
host_hierarchy_entries:
|
||||
- #1
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #2
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #3
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #4
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #5
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #6
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #7
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #8
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #9
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #10
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #11
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #12
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #13
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #14
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #15
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #16
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #17
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #18
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #19
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #20
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #21
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #22
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #23
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #24
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #25
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #26
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #27
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #28
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #29
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #30
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #31
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
- #32
|
||||
host_id: 0
|
||||
supervisor_host_id: 0
|
||||
otp_config:
|
||||
subhdr:
|
||||
magic: 0x4081
|
||||
size: 69
|
||||
write_host_id : 0
|
||||
otp_entry:
|
||||
- #1
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #2
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #3
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #4
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #5
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #6
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #7
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #8
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #9
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #10
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #11
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #12
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #13
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #14
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #15
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #16
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #17
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #18
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #19
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #20
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #21
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #22
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #23
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #24
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #25
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #26
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #27
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #28
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #29
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #30
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #31
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
- #32
|
||||
host_id: 0
|
||||
host_perms: 0
|
||||
dkek_config:
|
||||
subhdr:
|
||||
magic: 0x5170
|
||||
size: 12
|
||||
allowed_hosts: [128, 0, 0, 0]
|
||||
allow_dkek_export_tisci : 0x5A
|
||||
rsvd: [0, 0, 0]
|
||||
sa2ul_cfg:
|
||||
subhdr:
|
||||
magic: 0x23BE
|
||||
size : 0
|
||||
auth_resource_owner: 0
|
||||
enable_saul_psil_global_config_writes: 0x5A
|
||||
rsvd: [0, 0]
|
||||
sec_dbg_config:
|
||||
subhdr:
|
||||
magic: 0x42AF
|
||||
size: 16
|
||||
allow_jtag_unlock : 0x5A
|
||||
allow_wildcard_unlock : 0x5A
|
||||
allowed_debug_level_rsvd: 0
|
||||
rsvd: 0
|
||||
min_cert_rev : 0x0
|
||||
jtag_unlock_hosts: [0, 0, 0, 0]
|
||||
sec_handover_cfg:
|
||||
subhdr:
|
||||
magic: 0x608F
|
||||
size: 10
|
||||
handover_msg_sender : 0
|
||||
handover_to_host_id : 0
|
||||
rsvd: [0, 0, 0, 0]
|
115
configs/phycore_am62x_a53_defconfig
Normal file
115
configs/phycore_am62x_a53_defconfig
Normal file
|
@ -0,0 +1,115 @@
|
|||
CONFIG_ARM=y
|
||||
CONFIG_ARCH_K3=y
|
||||
CONFIG_SYS_MALLOC_F_LEN=0x8000
|
||||
CONFIG_SPL_LIBCOMMON_SUPPORT=y
|
||||
CONFIG_SPL_LIBGENERIC_SUPPORT=y
|
||||
CONFIG_NR_DRAM_BANKS=2
|
||||
CONFIG_SOC_K3_AM625=y
|
||||
CONFIG_K3_ATF_LOAD_ADDR=0x9e780000
|
||||
CONFIG_TARGET_PHYCORE_AM62X_A53=y
|
||||
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
||||
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x80b80000
|
||||
CONFIG_SF_DEFAULT_SPEED=25000000
|
||||
CONFIG_ENV_SIZE=0x2000
|
||||
CONFIG_ENV_OFFSET=0xFFFFD000
|
||||
CONFIG_SPL_DM_SPI=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="k3-am625-phyboard-lyra-rdk"
|
||||
CONFIG_SPL_TEXT_BASE=0x80080000
|
||||
CONFIG_OF_LIBFDT_OVERLAY=y
|
||||
CONFIG_DM_RESET=y
|
||||
CONFIG_SPL_MMC=y
|
||||
CONFIG_SPL_SERIAL=y
|
||||
CONFIG_SPL_STACK_R_ADDR=0x82000000
|
||||
CONFIG_SPL_SIZE_LIMIT=0x40000
|
||||
CONFIG_SPL_SIZE_LIMIT_PROVIDE_STACK=0x800
|
||||
CONFIG_SPL_FS_FAT=y
|
||||
CONFIG_SPL_LIBDISK_SUPPORT=y
|
||||
CONFIG_SPL_SPI_FLASH_SUPPORT=y
|
||||
CONFIG_SPL_SPI=y
|
||||
# CONFIG_PSCI_RESET is not set
|
||||
# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
|
||||
CONFIG_SPL_LOAD_FIT=y
|
||||
CONFIG_SPL_LOAD_FIT_ADDRESS=0x81000000
|
||||
CONFIG_BOOTSTD_FULL=y
|
||||
CONFIG_BOOTSTD_DEFAULTS=y
|
||||
CONFIG_SYS_BOOTM_LEN=0x800000
|
||||
CONFIG_BOOTCOMMAND="run mmcboot; bootflow scan -lb"
|
||||
CONFIG_DEFAULT_FDT_FILE="oftree"
|
||||
CONFIG_SPL_MAX_SIZE=0x58000
|
||||
CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
|
||||
CONFIG_SPL_BSS_START_ADDR=0x80c80000
|
||||
CONFIG_SPL_BSS_MAX_SIZE=0x80000
|
||||
CONFIG_SPL_SYS_REPORT_STACK_F_USAGE=y
|
||||
CONFIG_SPL_SYS_MALLOC_SIMPLE=y
|
||||
CONFIG_SPL_STACK_R=y
|
||||
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
|
||||
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
|
||||
CONFIG_SPL_ENV_SUPPORT=y
|
||||
CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
|
||||
CONFIG_SPL_DM_MAILBOX=y
|
||||
CONFIG_SPL_DM_SPI_FLASH=y
|
||||
CONFIG_SPL_POWER_DOMAIN=y
|
||||
# CONFIG_SPL_SPI_FLASH_TINY is not set
|
||||
CONFIG_SPL_SPI_FLASH_SFDP_SUPPORT=y
|
||||
CONFIG_SPL_SPI_LOAD=y
|
||||
CONFIG_SYS_SPI_U_BOOT_OFFS=0x280000
|
||||
CONFIG_SPL_YMODEM_SUPPORT=y
|
||||
CONFIG_CMD_MMC=y
|
||||
CONFIG_OF_CONTROL=y
|
||||
CONFIG_SPL_OF_CONTROL=y
|
||||
CONFIG_MULTI_DTB_FIT=y
|
||||
CONFIG_SPL_MULTI_DTB_FIT=y
|
||||
CONFIG_SPL_MULTI_DTB_FIT_NO_COMPRESSION=y
|
||||
CONFIG_ENV_IS_IN_MMC=y
|
||||
CONFIG_SYS_MMC_ENV_DEV=1
|
||||
CONFIG_NET_RANDOM_ETHADDR=y
|
||||
CONFIG_SPL_DM=y
|
||||
CONFIG_SPL_DM_SEQ_ALIAS=y
|
||||
CONFIG_REGMAP=y
|
||||
CONFIG_SPL_REGMAP=y
|
||||
CONFIG_SPL_OF_TRANSLATE=y
|
||||
CONFIG_CLK=y
|
||||
CONFIG_SPL_CLK=y
|
||||
CONFIG_CLK_TI_SCI=y
|
||||
CONFIG_DMA_CHANNELS=y
|
||||
CONFIG_TI_K3_NAVSS_UDMA=y
|
||||
CONFIG_TI_SCI_PROTOCOL=y
|
||||
CONFIG_DM_MAILBOX=y
|
||||
CONFIG_K3_SEC_PROXY=y
|
||||
CONFIG_SUPPORT_EMMC_BOOT=y
|
||||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_ADMA=y
|
||||
CONFIG_SPL_MMC_SDHCI_ADMA=y
|
||||
CONFIG_MMC_SDHCI_AM654=y
|
||||
CONFIG_DM_SPI_FLASH=y
|
||||
CONFIG_SPI_FLASH_SFDP_SUPPORT=y
|
||||
# CONFIG_SPI_FLASH_SMART_HWCAPS is not set
|
||||
CONFIG_SPI_FLASH_SOFT_RESET=y
|
||||
CONFIG_SPI_FLASH_SOFT_RESET_ON_BOOT=y
|
||||
CONFIG_SPI_FLASH_SPANSION=y
|
||||
CONFIG_SPI_FLASH_S28HX_T=y
|
||||
CONFIG_SPI_FLASH_STMICRO=y
|
||||
CONFIG_SPI_FLASH_MT35XU=y
|
||||
CONFIG_PHY_TI_DP83867=y
|
||||
CONFIG_PHY_FIXED=y
|
||||
CONFIG_TI_AM65_CPSW_NUSS=y
|
||||
CONFIG_PHY=y
|
||||
CONFIG_PINCTRL=y
|
||||
CONFIG_SPL_PINCTRL=y
|
||||
CONFIG_PINCTRL_SINGLE=y
|
||||
CONFIG_POWER_DOMAIN=y
|
||||
CONFIG_TI_SCI_POWER_DOMAIN=y
|
||||
CONFIG_K3_SYSTEM_CONTROLLER=y
|
||||
CONFIG_REMOTEPROC_TI_K3_ARM64=y
|
||||
CONFIG_RESET_TI_SCI=y
|
||||
CONFIG_DM_SERIAL=y
|
||||
CONFIG_SOC_DEVICE=y
|
||||
CONFIG_SOC_DEVICE_TI_K3=y
|
||||
CONFIG_SOC_TI=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_DM_SPI=y
|
||||
CONFIG_CADENCE_QSPI=y
|
||||
CONFIG_SYSRESET=y
|
||||
CONFIG_SPL_SYSRESET=y
|
||||
CONFIG_SYSRESET_TI_SCI=y
|
||||
CONFIG_FS_FAT_MAX_CLUSTSIZE=16384
|
130
configs/phycore_am62x_r5_defconfig
Normal file
130
configs/phycore_am62x_r5_defconfig
Normal file
|
@ -0,0 +1,130 @@
|
|||
CONFIG_ARM=y
|
||||
CONFIG_ARCH_K3=y
|
||||
CONFIG_SYS_MALLOC_LEN=0x08000000
|
||||
CONFIG_SYS_MALLOC_F_LEN=0x9000
|
||||
CONFIG_SPL_LIBCOMMON_SUPPORT=y
|
||||
CONFIG_SPL_LIBGENERIC_SUPPORT=y
|
||||
CONFIG_NR_DRAM_BANKS=2
|
||||
CONFIG_SOC_K3_AM625=y
|
||||
CONFIG_TARGET_PHYCORE_AM62X_R5=y
|
||||
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
|
||||
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x43c3a7f0
|
||||
CONFIG_SF_DEFAULT_SPEED=25000000
|
||||
CONFIG_SF_DEFAULT_MODE=0
|
||||
CONFIG_ENV_SIZE=0x20000
|
||||
CONFIG_DM_GPIO=y
|
||||
CONFIG_SPL_DM_SPI=y
|
||||
CONFIG_DEFAULT_DEVICE_TREE="k3-am625-r5-phycore-som-2gb"
|
||||
CONFIG_SPL_TEXT_BASE=0x43c00000
|
||||
CONFIG_DM_RESET=y
|
||||
CONFIG_SPL_MMC=y
|
||||
CONFIG_SPL_SERIAL=y
|
||||
CONFIG_SPL_DRIVERS_MISC=y
|
||||
CONFIG_SPL_STACK_R_ADDR=0x82000000
|
||||
CONFIG_SPL_SYS_MALLOC_F_LEN=0x7000
|
||||
CONFIG_SPL_SIZE_LIMIT=0x3A7F0
|
||||
CONFIG_SPL_SIZE_LIMIT_PROVIDE_STACK=0x3500
|
||||
CONFIG_SPL_FS_FAT=y
|
||||
CONFIG_SPL_LIBDISK_SUPPORT=y
|
||||
CONFIG_SPL_SPI_FLASH_SUPPORT=y
|
||||
CONFIG_SPL_SPI=y
|
||||
CONFIG_SPL_LOAD_FIT=y
|
||||
CONFIG_SPL_LOAD_FIT_ADDRESS=0x80080000
|
||||
# CONFIG_DISPLAY_CPUINFO is not set
|
||||
CONFIG_SPL_SIZE_LIMIT_SUBTRACT_GD=y
|
||||
CONFIG_SPL_SIZE_LIMIT_SUBTRACT_MALLOC=y
|
||||
CONFIG_SPL_MAX_SIZE=0x3B000
|
||||
CONFIG_SPL_PAD_TO=0x0
|
||||
CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
|
||||
CONFIG_SPL_BSS_START_ADDR=0x43c3b000
|
||||
CONFIG_SPL_BSS_MAX_SIZE=0x3000
|
||||
CONFIG_SPL_SYS_REPORT_STACK_F_USAGE=y
|
||||
CONFIG_SPL_SYS_MALLOC_SIMPLE=y
|
||||
CONFIG_SPL_STACK_R=y
|
||||
CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN=0x200000
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
CONFIG_SPL_SYS_MALLOC=y
|
||||
CONFIG_SPL_HAS_CUSTOM_MALLOC_START=y
|
||||
CONFIG_SPL_CUSTOM_SYS_MALLOC_ADDR=0x84000000
|
||||
CONFIG_SPL_SYS_MALLOC_SIZE=0x1000000
|
||||
CONFIG_SPL_EARLY_BSS=y
|
||||
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
|
||||
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x400
|
||||
CONFIG_SPL_DM_MAILBOX=y
|
||||
CONFIG_SPL_DM_SPI_FLASH=y
|
||||
CONFIG_SPL_DM_RESET=y
|
||||
CONFIG_SPL_POWER_DOMAIN=y
|
||||
CONFIG_SPL_RAM_SUPPORT=y
|
||||
CONFIG_SPL_RAM_DEVICE=y
|
||||
CONFIG_SPL_REMOTEPROC=y
|
||||
# CONFIG_SPL_SPI_FLASH_TINY is not set
|
||||
CONFIG_SPL_SPI_FLASH_SFDP_SUPPORT=y
|
||||
CONFIG_SPL_SPI_LOAD=y
|
||||
CONFIG_SYS_SPI_U_BOOT_OFFS=0x80000
|
||||
CONFIG_SPL_YMODEM_SUPPORT=y
|
||||
CONFIG_HUSH_PARSER=y
|
||||
CONFIG_CMD_ASKENV=y
|
||||
CONFIG_CMD_DFU=y
|
||||
CONFIG_CMD_GPT=y
|
||||
CONFIG_CMD_MMC=y
|
||||
CONFIG_CMD_REMOTEPROC=y
|
||||
# CONFIG_CMD_SETEXPR is not set
|
||||
CONFIG_CMD_TIME=y
|
||||
CONFIG_CMD_FAT=y
|
||||
CONFIG_OF_CONTROL=y
|
||||
CONFIG_SPL_OF_CONTROL=y
|
||||
CONFIG_SPL_MULTI_DTB_FIT=y
|
||||
CONFIG_SPL_MULTI_DTB_FIT_NO_COMPRESSION=y
|
||||
CONFIG_SYS_RELOC_GD_ENV_ADDR=y
|
||||
CONFIG_SPL_DM=y
|
||||
CONFIG_SPL_DM_SEQ_ALIAS=y
|
||||
CONFIG_REGMAP=y
|
||||
CONFIG_SPL_REGMAP=y
|
||||
CONFIG_SPL_OF_TRANSLATE=y
|
||||
CONFIG_CLK=y
|
||||
CONFIG_SPL_CLK=y
|
||||
CONFIG_SPL_CLK_CCF=y
|
||||
CONFIG_SPL_CLK_K3_PLL=y
|
||||
CONFIG_SPL_CLK_K3=y
|
||||
CONFIG_TI_SCI_PROTOCOL=y
|
||||
CONFIG_DA8XX_GPIO=y
|
||||
CONFIG_DM_MAILBOX=y
|
||||
CONFIG_K3_SEC_PROXY=y
|
||||
CONFIG_SPL_MISC=y
|
||||
CONFIG_ESM_K3=y
|
||||
CONFIG_SUPPORT_EMMC_BOOT=y
|
||||
CONFIG_MMC_SDHCI=y
|
||||
CONFIG_MMC_SDHCI_ADMA=y
|
||||
CONFIG_SPL_MMC_SDHCI_ADMA=y
|
||||
CONFIG_MMC_SDHCI_AM654=y
|
||||
CONFIG_DM_SPI_FLASH=y
|
||||
CONFIG_SPI_FLASH_SFDP_SUPPORT=y
|
||||
# CONFIG_SPI_FLASH_SMART_HWCAPS is not set
|
||||
CONFIG_SPI_FLASH_SOFT_RESET=y
|
||||
CONFIG_SPI_FLASH_SOFT_RESET_ON_BOOT=y
|
||||
CONFIG_SPI_FLASH_SPANSION=y
|
||||
CONFIG_SPI_FLASH_STMICRO=y
|
||||
CONFIG_SPI_FLASH_MT35XU=y
|
||||
CONFIG_PINCTRL=y
|
||||
# CONFIG_PINCTRL_GENERIC is not set
|
||||
CONFIG_SPL_PINCTRL=y
|
||||
# CONFIG_SPL_PINCTRL_GENERIC is not set
|
||||
CONFIG_PINCTRL_SINGLE=y
|
||||
CONFIG_POWER_DOMAIN=y
|
||||
CONFIG_TI_POWER_DOMAIN=y
|
||||
CONFIG_K3_SYSTEM_CONTROLLER=y
|
||||
CONFIG_REMOTEPROC_TI_K3_ARM64=y
|
||||
CONFIG_RESET_TI_SCI=y
|
||||
CONFIG_SPECIFY_CONSOLE_INDEX=y
|
||||
CONFIG_DM_SERIAL=y
|
||||
CONFIG_SOC_DEVICE=y
|
||||
CONFIG_SOC_DEVICE_TI_K3=y
|
||||
CONFIG_SOC_TI=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_DM_SPI=y
|
||||
CONFIG_CADENCE_QSPI=y
|
||||
CONFIG_TIMER=y
|
||||
CONFIG_SPL_TIMER=y
|
||||
CONFIG_OMAP_TIMER=y
|
||||
CONFIG_LIB_RATIONAL=y
|
||||
CONFIG_SPL_LIB_RATIONAL=y
|
15
include/configs/phycore_am62x.h
Normal file
15
include/configs/phycore_am62x.h
Normal file
|
@ -0,0 +1,15 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ */
|
||||
/*
|
||||
* Configuration header file for PHYTEC phyCORE-AM62x
|
||||
*
|
||||
* Copyright (C) 2023 PHYTEC Messtechnik GmbH
|
||||
* Author: Wadim Egorov <w.egorov@phytec.de>
|
||||
*/
|
||||
|
||||
#ifndef __PHYCORE_AM62X_H
|
||||
#define __PHYCORE_AM62X_H
|
||||
|
||||
/* DDR Configuration */
|
||||
#define CFG_SYS_SDRAM_BASE 0x80000000
|
||||
|
||||
#endif /* __PHYCORE_AM62X_H */
|
Loading…
Add table
Reference in a new issue