aboutsummaryrefslogtreecommitdiffstats
path: root/roms/u-boot/arch/arm/mach-bcmstb
diff options
context:
space:
mode:
Diffstat (limited to 'roms/u-boot/arch/arm/mach-bcmstb')
-rw-r--r--roms/u-boot/arch/arm/mach-bcmstb/Kconfig43
-rw-r--r--roms/u-boot/arch/arm/mach-bcmstb/Makefile8
-rw-r--r--roms/u-boot/arch/arm/mach-bcmstb/include/mach/gpio.h11
-rw-r--r--roms/u-boot/arch/arm/mach-bcmstb/include/mach/hardware.h11
-rw-r--r--roms/u-boot/arch/arm/mach-bcmstb/include/mach/sdhci.h15
-rw-r--r--roms/u-boot/arch/arm/mach-bcmstb/include/mach/timer.h13
-rw-r--r--roms/u-boot/arch/arm/mach-bcmstb/lowlevel_init.S21
7 files changed, 122 insertions, 0 deletions
diff --git a/roms/u-boot/arch/arm/mach-bcmstb/Kconfig b/roms/u-boot/arch/arm/mach-bcmstb/Kconfig
new file mode 100644
index 000000000..0a56c3c7f
--- /dev/null
+++ b/roms/u-boot/arch/arm/mach-bcmstb/Kconfig
@@ -0,0 +1,43 @@
+if ARCH_BCMSTB
+
+config TARGET_BCM7445
+ bool "Broadcom 7445 TSBL"
+ depends on ARCH_BCMSTB
+ help
+ Support for the Broadcom 7445 SoC. This port assumes BOLT
+ is acting as the second stage bootloader, and U-Boot is
+ acting as the third stage bootloader (TSBL), loaded by BOLT.
+
+config TARGET_BCM7260
+ bool "Broadcom 7260 TSBL"
+ depends on ARCH_BCMSTB
+ help
+ Support for the Broadcom 7260 SoC. This port assumes BOLT
+ is acting as the second stage bootloader, and U-Boot is
+ acting as the third stage bootloader (TSBL), loaded by BOLT.
+
+config SYS_CPU
+ default "armv7"
+
+config SYS_BOARD
+ default "bcmstb"
+
+config SYS_VENDOR
+ default "broadcom"
+
+config SYS_SOC
+ default "bcmstb"
+
+config SYS_CONFIG_NAME
+ default "bcm7445" if TARGET_BCM7445
+ default "bcm7260" if TARGET_BCM7260
+
+config SYS_FDT_SAVE_ADDRESS
+ hex "Address to which the prior stage provided DTB will be copied"
+ default 0x1f00000
+
+config BCMSTB_SDHCI_INDEX
+ int "Index of preferred BCMSTB SDHCI alias in DTB"
+ default 1
+
+endif
diff --git a/roms/u-boot/arch/arm/mach-bcmstb/Makefile b/roms/u-boot/arch/arm/mach-bcmstb/Makefile
new file mode 100644
index 000000000..71e5727e4
--- /dev/null
+++ b/roms/u-boot/arch/arm/mach-bcmstb/Makefile
@@ -0,0 +1,8 @@
+# SPDX-License-Identifier: GPL-2.0+
+#
+# (C) Copyright 2018 Cisco Systems, Inc.
+#
+# Author: Thomas Fitzsimmons <fitzsim@fitzsim.org>
+#
+
+obj-y := lowlevel_init.o
diff --git a/roms/u-boot/arch/arm/mach-bcmstb/include/mach/gpio.h b/roms/u-boot/arch/arm/mach-bcmstb/include/mach/gpio.h
new file mode 100644
index 000000000..bffecf9bd
--- /dev/null
+++ b/roms/u-boot/arch/arm/mach-bcmstb/include/mach/gpio.h
@@ -0,0 +1,11 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * (C) Copyright 2018 Cisco Systems, Inc.
+ *
+ * Author: Thomas Fitzsimmons <fitzsim@fitzsim.org>
+ */
+
+#ifndef _BCMSTB_GPIO_H
+#define _BCMSTB_GPIO_H
+
+#endif /* _BCMSTB_GPIO_H */
diff --git a/roms/u-boot/arch/arm/mach-bcmstb/include/mach/hardware.h b/roms/u-boot/arch/arm/mach-bcmstb/include/mach/hardware.h
new file mode 100644
index 000000000..76f799d02
--- /dev/null
+++ b/roms/u-boot/arch/arm/mach-bcmstb/include/mach/hardware.h
@@ -0,0 +1,11 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * (C) Copyright 2018 Cisco Systems, Inc.
+ *
+ * Author: Thomas Fitzsimmons <fitzsim@fitzsim.org>
+ */
+
+#ifndef _BCMSTB_HARDWARE_H
+#define _BCMSTB_HARDWARE_H
+
+#endif /* _BCMSTB_HARDWARE_H */
diff --git a/roms/u-boot/arch/arm/mach-bcmstb/include/mach/sdhci.h b/roms/u-boot/arch/arm/mach-bcmstb/include/mach/sdhci.h
new file mode 100644
index 000000000..243783d68
--- /dev/null
+++ b/roms/u-boot/arch/arm/mach-bcmstb/include/mach/sdhci.h
@@ -0,0 +1,15 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * (C) Copyright 2018 Cisco Systems, Inc.
+ *
+ * Author: Thomas Fitzsimmons <fitzsim@fitzsim.org>
+ */
+
+#ifndef _BCMSTB_SDHCI_H
+#define _BCMSTB_SDHCI_H
+
+#include <linux/types.h>
+
+int bcmstb_sdhci_init(phys_addr_t regbase);
+
+#endif /* _BCMSTB_SDHCI_H */
diff --git a/roms/u-boot/arch/arm/mach-bcmstb/include/mach/timer.h b/roms/u-boot/arch/arm/mach-bcmstb/include/mach/timer.h
new file mode 100644
index 000000000..039dd664c
--- /dev/null
+++ b/roms/u-boot/arch/arm/mach-bcmstb/include/mach/timer.h
@@ -0,0 +1,13 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * (C) Copyright 2018 Cisco Systems, Inc.
+ *
+ * Author: Thomas Fitzsimmons <fitzsim@fitzsim.org>
+ */
+
+#ifndef _BCMSTB_TIMER_H
+#define _BCMSTB_TIMER_H
+
+uint64_t get_ticks(void);
+
+#endif /* _BCMSTB_TIMER_H */
diff --git a/roms/u-boot/arch/arm/mach-bcmstb/lowlevel_init.S b/roms/u-boot/arch/arm/mach-bcmstb/lowlevel_init.S
new file mode 100644
index 000000000..aa81f7024
--- /dev/null
+++ b/roms/u-boot/arch/arm/mach-bcmstb/lowlevel_init.S
@@ -0,0 +1,21 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * (C) Copyright 2018 Cisco Systems, Inc.
+ *
+ * Author: Thomas Fitzsimmons <fitzsim@fitzsim.org>
+ */
+
+#include <linux/linkage.h>
+
+ENTRY(save_boot_params)
+ ldr r6, =bcmstb_boot_parameters
+ str r0, [r6, #0]
+ str r1, [r6, #4]
+ str r2, [r6, #8]
+ str r3, [r6, #12]
+ str sp, [r6, #16]
+ str lr, [r6, #20]
+ ldr r6, =prior_stage_fdt_address
+ str r2, [r6]
+ b save_boot_params_ret
+ENDPROC(save_boot_params)