summaryrefslogtreecommitdiffstats
path: root/arch/arm/boards/microchip-ksz9477-evb
diff options
context:
space:
mode:
authorAhmad Fatoum <a.fatoum@pengutronix.de>2018-10-30 15:36:05 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2018-11-05 15:53:35 +0100
commit15afd9d25eaf421d57ad7e7f5a44151db0ed71e0 (patch)
tree4afd8b46bbc6d3a3d1be21c71166ff4c2a1bf165 /arch/arm/boards/microchip-ksz9477-evb
parent8635785af5a69ab23e78d47805838382efd68e88 (diff)
downloadbarebox-15afd9d25eaf421d57ad7e7f5a44151db0ed71e0.tar.gz
barebox-15afd9d25eaf421d57ad7e7f5a44151db0ed71e0.tar.xz
ARM: at91: Add initial support for the EVB-KSZ9477 eval board
The EVB-KSZ9477 is an evaluation board for the KSZ9477 ethernet switch. This board is equipped with a atsama5d3 SoC with 256MiB of SDRAM, 256MiB of NAND flash and a SD card slot. For now only second stage booting is supported with AT91bootstrap as first stage loader. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/boards/microchip-ksz9477-evb')
-rw-r--r--arch/arm/boards/microchip-ksz9477-evb/Makefile1
-rw-r--r--arch/arm/boards/microchip-ksz9477-evb/lowlevel.c28
2 files changed, 29 insertions, 0 deletions
diff --git a/arch/arm/boards/microchip-ksz9477-evb/Makefile b/arch/arm/boards/microchip-ksz9477-evb/Makefile
new file mode 100644
index 0000000000..b08c4a93ca
--- /dev/null
+++ b/arch/arm/boards/microchip-ksz9477-evb/Makefile
@@ -0,0 +1 @@
+lwl-y += lowlevel.o
diff --git a/arch/arm/boards/microchip-ksz9477-evb/lowlevel.c b/arch/arm/boards/microchip-ksz9477-evb/lowlevel.c
new file mode 100644
index 0000000000..639958a459
--- /dev/null
+++ b/arch/arm/boards/microchip-ksz9477-evb/lowlevel.c
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2018 Ahmad Fatoum, Pengutronix
+ *
+ * Under GPLv2
+ */
+
+#include <common.h>
+#include <init.h>
+
+#include <asm/barebox-arm-head.h>
+#include <asm/barebox-arm.h>
+
+#include <mach/hardware.h>
+
+extern char __dtb_at91_microchip_ksz9477_evb_start[];
+
+ENTRY_FUNCTION(start_sama5d3_xplained_ung8071, r0, r1, r2)
+{
+ void *fdt;
+
+ arm_cpu_lowlevel_init();
+
+ arm_setup_stack(SAMA5D3_SRAM_BASE + SAMA5D3_SRAM_SIZE - 16);
+
+ fdt = __dtb_at91_microchip_ksz9477_evb_start + get_runtime_offset();
+
+ barebox_arm_entry(SAMA5_DDRCS, SZ_256M, fdt);
+}