summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2020-04-20 11:14:22 -0400
committerTom Rini <trini@konsulko.com>2020-04-20 11:14:22 -0400
commit62c59545bad51936580012ee1cd2a728f1ca99fd (patch)
treed1d6d8ccbeda7b6019c63e41f97d10b17fd4db63
parentd1bbf833aa7b45c00a42227b9563134643e44237 (diff)
parente7510d443d30776248a2d5b8cc0e6b3161fb391b (diff)
Merge tag 'ti-v2020.07-rc1' of https://gitlab.denx.de/u-boot/custodians/u-boot-ti
- Fix boot on am335x guardian board - Increase OPSI speed on AM65x and J721E devices - Use JTAD register for identifying K3 devices. - Update TI entry in MAINTAINERS file.
-rw-r--r--MAINTAINERS25
-rw-r--r--arch/arm/dts/am335x-guardian.dts29
-rw-r--r--arch/arm/dts/k3-am654-base-board.dts2
-rw-r--r--arch/arm/dts/k3-am654-r5-base-board.dts2
-rw-r--r--arch/arm/dts/k3-j721e-r5-common-proc-board.dts2
-rw-r--r--arch/arm/dts/k3-j721e-som-p0.dtsi2
-rw-r--r--arch/arm/mach-k3/common.c8
-rw-r--r--arch/arm/mach-k3/common.h4
-rw-r--r--arch/arm/mach-k3/include/mach/hardware.h14
-rw-r--r--board/bosch/guardian/board.c4
-rw-r--r--configs/am335x_guardian_defconfig20
-rw-r--r--include/configs/am335x_guardian.h43
12 files changed, 121 insertions, 34 deletions
diff --git a/MAINTAINERS b/MAINTAINERS
index 7ac7e21ba1..0ee358bac6 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -423,8 +423,33 @@ T: git https://gitlab.denx.de/u-boot/custodians/u-boot-ti.git
F: arch/arm/mach-davinci/
F: arch/arm/mach-k3/
F: arch/arm/mach-keystone/
+F: arch/arm/mach-omap2/
F: arch/arm/include/asm/arch-omap*/
F: arch/arm/include/asm/ti-common/
+F: board/ti/
+F: drivers/dma/ti*
+F: drivers/firmware/ti_sci.*
+F: drivers/gpio/omap_gpio.c
+F: drivers/memory/ti-aemif.c
+F: drivers/misc/k3_avs.c
+F: drivers/mailbox/k3-sec-procy.c
+F: drivers/pci/pcie_dw_ti.c
+F: drivers/phy/keystone-usb-phy.c
+F: drivers/phy/omap-usb2-phy.c
+F: drivers/phy/phy-ti-am654.c
+F: drivers/phy/ti-pipe3-phy.c
+F: drivers/ram/k3*
+F: drivers/remoteproc/k3_system_controller.c
+F: drivers/remoteproc/ti*
+F: drivers/reset/reset-ti-sci.c
+F: drivers/rtc/davinci.c
+F: drivers/serial/serial_omap.c
+F: drivers/soc/ti/
+F: drivers/sysreset/sysreset-ti-sci.c
+F: drivers/thermal/ti-bandgap.c
+F: drivers/timer/omap-timer.c
+F: drivers/watchdog/omap_wdt.c
+F: include/linux/soc/ti/
ARM U8500
M: Stephan Gerhold <stephan@gerhold.net>
diff --git a/arch/arm/dts/am335x-guardian.dts b/arch/arm/dts/am335x-guardian.dts
index 5ed2133e78..7e70a96d25 100644
--- a/arch/arm/dts/am335x-guardian.dts
+++ b/arch/arm/dts/am335x-guardian.dts
@@ -58,7 +58,7 @@
label = "guardian:life-led";
gpios = <&gpio1 26 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "heartbeat";
- default-state = "off";
+ default-state = "on";
};
};
@@ -202,8 +202,33 @@
};
partition@6 {
+ label = "u-boot-2";
+ reg = <0x300000 0x100000>;
+ };
+
+ partition@7 {
+ label = "u-boot-2.backup1";
+ reg = <0x400000 0x100000>;
+ };
+
+ partition@8 {
+ label = "u-boot-env";
+ reg = <0x500000 0x40000>;
+ };
+
+ partition@9 {
+ label = "u-boot-env.backup1";
+ reg = <0x540000 0x40000>;
+ };
+
+ partition@10 {
+ label = "splash-screen";
+ reg = <0x580000 0x40000>;
+ };
+
+ partition@11 {
label = "UBI";
- reg = <0x300000 0x1fd00000>;
+ reg = <0x5c0000 0x1fa40000>;
};
};
};
diff --git a/arch/arm/dts/k3-am654-base-board.dts b/arch/arm/dts/k3-am654-base-board.dts
index 5058b6c88e..3ebf4af5e4 100644
--- a/arch/arm/dts/k3-am654-base-board.dts
+++ b/arch/arm/dts/k3-am654-base-board.dts
@@ -191,7 +191,7 @@
reg = <0x0>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <8>;
- spi-max-frequency = <40000000>;
+ spi-max-frequency = <50000000>;
cdns,tshsl-ns = <60>;
cdns,tsd2d-ns = <60>;
cdns,tchsh-ns = <60>;
diff --git a/arch/arm/dts/k3-am654-r5-base-board.dts b/arch/arm/dts/k3-am654-r5-base-board.dts
index 257b56a1b0..e6b78643c1 100644
--- a/arch/arm/dts/k3-am654-r5-base-board.dts
+++ b/arch/arm/dts/k3-am654-r5-base-board.dts
@@ -268,7 +268,7 @@
reg = <0x0>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <8>;
- spi-max-frequency = <40000000>;
+ spi-max-frequency = <50000000>;
cdns,tshsl-ns = <60>;
cdns,tsd2d-ns = <60>;
cdns,tchsh-ns = <60>;
diff --git a/arch/arm/dts/k3-j721e-r5-common-proc-board.dts b/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
index 403b158f49..2dde65d968 100644
--- a/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
+++ b/arch/arm/dts/k3-j721e-r5-common-proc-board.dts
@@ -309,7 +309,7 @@
reg = <0x0>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <8>;
- spi-max-frequency = <40000000>;
+ spi-max-frequency = <50000000>;
cdns,tshsl-ns = <60>;
cdns,tsd2d-ns = <60>;
cdns,tchsh-ns = <60>;
diff --git a/arch/arm/dts/k3-j721e-som-p0.dtsi b/arch/arm/dts/k3-j721e-som-p0.dtsi
index 8497ff3e3e..946de9c3fc 100644
--- a/arch/arm/dts/k3-j721e-som-p0.dtsi
+++ b/arch/arm/dts/k3-j721e-som-p0.dtsi
@@ -87,7 +87,7 @@
reg = <0x0>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <8>;
- spi-max-frequency = <40000000>;
+ spi-max-frequency = <50000000>;
cdns,tshsl-ns = <60>;
cdns,tsd2d-ns = <60>;
cdns,tchsh-ns = <60>;
diff --git a/arch/arm/mach-k3/common.c b/arch/arm/mach-k3/common.c
index efd84ec7eb..80dfa5f0fd 100644
--- a/arch/arm/mach-k3/common.c
+++ b/arch/arm/mach-k3/common.c
@@ -307,15 +307,15 @@ int print_cpuinfo(void)
u32 soc, rev;
char *name;
- soc = (readl(CTRLMMR_WKUP_JTAG_DEVICE_ID) &
- DEVICE_ID_FAMILY_MASK) >> DEVICE_ID_FAMILY_SHIFT;
+ soc = (readl(CTRLMMR_WKUP_JTAG_ID) &
+ JTAG_ID_PARTNO_MASK) >> JTAG_ID_PARTNO_SHIFT;
rev = (readl(CTRLMMR_WKUP_JTAG_ID) &
JTAG_ID_VARIANT_MASK) >> JTAG_ID_VARIANT_SHIFT;
printf("SoC: ");
switch (soc) {
- case AM654:
- name = "AM654";
+ case AM65X:
+ name = "AM65x";
break;
case J721E:
name = "J721E";
diff --git a/arch/arm/mach-k3/common.h b/arch/arm/mach-k3/common.h
index b1cbe116ef..57682e1973 100644
--- a/arch/arm/mach-k3/common.h
+++ b/arch/arm/mach-k3/common.h
@@ -8,8 +8,8 @@
#include <asm/armv7_mpu.h>
-#define AM654 2
-#define J721E 4
+#define AM65X 0xbb5a
+#define J721E 0xbb64
#define REV_PG1_0 0
#define REV_PG2_0 1
diff --git a/arch/arm/mach-k3/include/mach/hardware.h b/arch/arm/mach-k3/include/mach/hardware.h
index d670d5a56e..0ad761418b 100644
--- a/arch/arm/mach-k3/include/mach/hardware.h
+++ b/arch/arm/mach-k3/include/mach/hardware.h
@@ -15,20 +15,10 @@
#endif
/* Assuming these addresses and definitions stay common across K3 devices */
-#define CTRLMMR_WKUP_JTAG_DEVICE_ID 0x43000018
-#define DEVICE_ID_FAMILY_SHIFT 26
-#define DEVICE_ID_FAMILY_MASK (0x3f << 26)
-#define DEVICE_ID_BASE_SHIFT 11
-#define DEVICE_ID_BASE_MASK (0x1fff << 11)
-#define DEVICE_ID_SPEED_SHIFT 6
-#define DEVICE_ID_SPEED_MASK (0x1f << 6)
-#define DEVICE_ID_TEMP_SHIFT 3
-#define DEVICE_ID_TEMP_MASK (0x7 << 3)
-
-#define CTRLMMR_WKUP_JTAG_ID 0x43000014
+#define CTRLMMR_WKUP_JTAG_ID 0x43000014
#define JTAG_ID_VARIANT_SHIFT 28
#define JTAG_ID_VARIANT_MASK (0xf << 28)
#define JTAG_ID_PARTNO_SHIFT 12
-#define JTAG_ID_PARTNO_MASK (0x7ff << 1)
+#define JTAG_ID_PARTNO_MASK (0xffff << 12)
#endif /* _ASM_ARCH_HARDWARE_H_ */
diff --git a/board/bosch/guardian/board.c b/board/bosch/guardian/board.c
index 32ebaf4231..03ba9e8c5e 100644
--- a/board/bosch/guardian/board.c
+++ b/board/bosch/guardian/board.c
@@ -14,6 +14,7 @@
#include <env_internal.h>
#include <errno.h>
#include <i2c.h>
+#include <led.h>
#include <miiphy.h>
#include <panel.h>
#include <power/tps65217.h>
@@ -232,6 +233,9 @@ err:
int board_late_init(void)
{
+#ifdef CONFIG_LED_GPIO
+ led_default_state();
+#endif
set_bootmode_env();
return 0;
}
diff --git a/configs/am335x_guardian_defconfig b/configs/am335x_guardian_defconfig
index 13974f7c0f..b0033810b9 100644
--- a/configs/am335x_guardian_defconfig
+++ b/configs/am335x_guardian_defconfig
@@ -5,10 +5,13 @@ CONFIG_SPL_GPIO_SUPPORT=y
CONFIG_SPL_LIBCOMMON_SUPPORT=y
CONFIG_SPL_LIBGENERIC_SUPPORT=y
CONFIG_ENV_SIZE=0x40000
+CONFIG_ENV_OFFSET=0x500000
CONFIG_AM33XX=y
CONFIG_TARGET_AM335X_GUARDIAN=y
CONFIG_SPL_SERIAL_SUPPORT=y
CONFIG_SPL_DRIVERS_MISC_SUPPORT=y
+CONFIG_BOOTCOUNT_BOOTLIMIT=3
+CONFIG_SYS_BOOTCOUNT_ADDR=0x44E3E000
CONFIG_SPL=y
CONFIG_BOOTSTAGE_STASH_ADDR=0x0
CONFIG_SPL_LIBDISK_SUPPORT=y
@@ -20,6 +23,11 @@ CONFIG_ARCH_MISC_INIT=y
# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
CONFIG_SPL_SEPARATE_BSS=y
# CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR is not set
+CONFIG_ENV_IS_IN_NAND=y
+CONFIG_SYS_REDUNDAND_ENVIRONMENT=y
+CONFIG_ENV_OFFSET_REDUND=0x540000
+CONFIG_SYS_RELOC_GD_ENV_ADDR=y
+CONFIG_SPL_ENV_IS_NOWHERE=y
CONFIG_SPL_ENV_SUPPORT=y
CONFIG_SPL_ETH_SUPPORT=y
CONFIG_SPL_I2C_SUPPORT=y
@@ -37,6 +45,7 @@ CONFIG_CMD_SPL=y
CONFIG_CMD_SPL_NAND_OFS=0x0
CONFIG_CMD_ASKENV=y
# CONFIG_CMD_FLASH is not set
+# CONFIG_CMD_LED is not set
CONFIG_CMD_GPIO=y
CONFIG_CMD_GPT=y
CONFIG_CMD_I2C=y
@@ -46,18 +55,19 @@ CONFIG_CMD_USB=y
# CONFIG_CMD_SETEXPR is not set
CONFIG_CMD_EXT4_WRITE=y
CONFIG_CMD_MTDPARTS=y
-CONFIG_MTDPARTS_DEFAULT="mtdparts=nand.0:256k(SPL),256k(SPL.backup1),256k(SPL.backup2),256k(SPL.backup3),1m(u-boot),1m(u-boot.backup1),-(UBI)"
+CONFIG_MTDPARTS_DEFAULT="mtdparts=nand.0:256k(SPL),256k(SPL.backup1),256k(SPL.backup2),256k(SPL.backup3),1m(u-boot),1m(u-boot.backup1),1m(u-boot-2),1m(u-boot-2.backup1),256k(u-boot-env),256k(u-boot-env.backup1),256k(splash-screen),-(UBI)"
CONFIG_CMD_UBI=y
# CONFIG_SPL_DOS_PARTITION is not set
# CONFIG_ISO_PARTITION is not set
# CONFIG_SPL_EFI_PARTITION is not set
CONFIG_OF_CONTROL=y
-CONFIG_SPL_OF_CONTROL=y
+# CONFIG_SPL_OF_CONTROL is not set
CONFIG_DEFAULT_DEVICE_TREE="am335x-guardian"
-CONFIG_SYS_RELOC_GD_ENV_ADDR=y
CONFIG_SPL_DM=y
CONFIG_BOOTCOUNT_LIMIT=y
-CONFIG_BOOTCOUNT_ENV=y
+CONFIG_BOOTCOUNT_AM33XX=y
+CONFIG_LED=y
+CONFIG_LED_GPIO=y
CONFIG_MISC=y
# CONFIG_MMC is not set
CONFIG_MTD=y
@@ -87,3 +97,5 @@ CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
CONFIG_USB_ETHER=y
CONFIG_SPL_WDT=y
CONFIG_FAT_WRITE=y
+CONFIG_SPL_OF_LIBFDT=y
+# CONFIG_SPL_USE_TINY_PRINTF is not set
diff --git a/include/configs/am335x_guardian.h b/include/configs/am335x_guardian.h
index 0e20d6c728..c34c07a493 100644
--- a/include/configs/am335x_guardian.h
+++ b/include/configs/am335x_guardian.h
@@ -34,23 +34,49 @@
"ramdisk_addr_r=0x88080000\0" \
#define BOOT_TARGET_DEVICES(func) \
- func(UBIFS, ubifs, 0) \
- func(PXE, pxe, na) \
- func(DHCP, dhcp, na)
+ func(UBIFS, ubifs, 0)
#define AM335XX_BOARD_FDTFILE "fdtfile=" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0"
#include <config_distro_bootcmd.h>
+#define GUARDIAN_DEFAULT_PROD_ENV \
+ "factory_assembly_status=0\0" \
+ "main_pcba_part_number=0\0" \
+ "main_pcba_supplier=0\0" \
+ "main_pcba_timestamp=0\0" \
+ "main_pcba_hardware_version=0\0" \
+ "main_pcba_id=0\0" \
+ "main_pcba_aux_1=0\0" \
+ "main_pcba_aux_2=0\0" \
+ "main_pcba_aux_3=0\0" \
+ "main_pcba_aux_4=0\0" \
+
#define CONFIG_EXTRA_ENV_SETTINGS \
AM335XX_BOARD_FDTFILE \
MEM_LAYOUT_ENV_SETTINGS \
BOOTENV \
- "bootlimit=3\0" \
+ GUARDIAN_DEFAULT_PROD_ENV \
"bootubivol=rootfs\0" \
+ "distro_bootcmd=" \
+ "setenv autoload no; " \
+ "setenv rootflags \"bulk_read,chk_data_crc\"; " \
+ "setenv ethact usb_ether; " \
+ "if test \"${swi_status}\" -eq 1; then " \
+ "setenv extrabootargs \"swi_attached\"; " \
+ "if dhcp; then " \
+ "sleep 1; " \
+ "if tftp \"${tftp_load_addr}\" \"bootscript.scr\"; then " \
+ "source \"${tftp_load_addr}\"; " \
+ "fi; " \
+ "fi; " \
+ "fi;" \
+ "run bootcmd_ubifs0;\0" \
"altbootcmd=" \
- "setenv boot_config \"extlinux-rollback.conf\"; " \
- "run distro_bootcmd\0"
+ "setenv boot_syslinux_conf \"extlinux/extlinux-rollback.conf\"; " \
+ "run distro_bootcmd; " \
+ "setenv boot_syslinux_conf \"extlinux/extlinux.conf\"; " \
+ "run bootcmd_ubifs0;\0"
#endif /* ! CONFIG_SPL_BUILD */
@@ -109,4 +135,9 @@
#endif /* CONFIG_MTD_RAW_NAND */
+#define CONFIG_AM335X_USB0
+#define CONFIG_AM335X_USB0_MODE MUSB_PERIPHERAL
+#define CONFIG_AM335X_USB1
+#define CONFIG_AM335X_USB1_MODE MUSB_HOST
+
#endif /* ! __CONFIG_AM335X_GUARDIAN_H */