[PATCH v2 19/20] ARM: beagleplay: cleanup board entry

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



We used to genrate a Linux Kernel compatible image that can be started
from U-Boot. This is no longer necessary as we have full 1st stage
support now in barebox. A FIT image to be started from U-Boot can still
be generated with BOARD_GENERIC_FIT.

Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx>
---
 arch/arm/boards/beagleplay/Makefile   |  1 -
 arch/arm/boards/beagleplay/entry.S    | 29 -----------------------------
 arch/arm/boards/beagleplay/lowlevel.c | 18 ++++++------------
 3 files changed, 6 insertions(+), 42 deletions(-)

diff --git a/arch/arm/boards/beagleplay/Makefile b/arch/arm/boards/beagleplay/Makefile
index 396dff29a2..a8c7320bdb 100644
--- a/arch/arm/boards/beagleplay/Makefile
+++ b/arch/arm/boards/beagleplay/Makefile
@@ -1,3 +1,2 @@
 pbl-y += lowlevel.o
-pbl-$(CONFIG_MACH_K3_CORTEX_A) += entry.o
 pbl-$(CONFIG_MACH_K3_CORTEX_R5) += entry-r5.o ddr.o
diff --git a/arch/arm/boards/beagleplay/entry.S b/arch/arm/boards/beagleplay/entry.S
deleted file mode 100644
index 6e4c7196f3..0000000000
--- a/arch/arm/boards/beagleplay/entry.S
+++ /dev/null
@@ -1,29 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-or-later */
-#include <linux/linkage.h>
-#include <asm/barebox-arm64.h>
-#include <asm/image.h>
-
-#define IMAGE_FLAGS \
-	(ARM64_IMAGE_FLAG_PAGE_SIZE_4K << ARM64_IMAGE_FLAG_PAGE_SIZE_SHIFT) | \
-	(ARM64_IMAGE_FLAG_PHYS_BASE << ARM64_IMAGE_FLAG_PHYS_BASE_SHIFT)
-
-.section .text_head_entry_start_beagleplay
-ENTRY("start_beagleplay")
-	adr x1, 0	   	   /* code0 */
-	b 2f                       /* code1 */
-	.xword 0x80000             /* Image load offset */
-	.xword _barebox_image_size /* Effective Image size */
-	.xword IMAGE_FLAGS	   /* Kernel flags */
-	.xword 0                   /* reserved */
-	.xword 0                   /* reserved */
-	.xword 0                   /* reserved */
-	.ascii ARM64_IMAGE_MAGIC   /* magic number */
-	.int   0                   /* reserved (PE-COFF offset) */
-	.asciz "barebox"	   /* unused for now */
-2:
-	mov sp, x1
-	/* Stack now grows into the 0x80000 image load offset specified
-	 * above. This is more than enough until FDT /memory is decoded.
-	 */
-	b beagleplay
-ENTRY_PROC_END(start_beagleplay)
diff --git a/arch/arm/boards/beagleplay/lowlevel.c b/arch/arm/boards/beagleplay/lowlevel.c
index 744f78d009..9430017568 100644
--- a/arch/arm/boards/beagleplay/lowlevel.c
+++ b/arch/arm/boards/beagleplay/lowlevel.c
@@ -10,27 +10,21 @@
 #include <compressed-dtb.h>
 #include <cache.h>
 #include <mach/k3/r5.h>
+#include <mach/k3/common.h>
 
 #include "ddr.h"
 
-/* Called from assembly */
-void beagleplay(void *dtb);
-
-static noinline void beagleplay_continue(void *dtb)
+static noinline void beagleplay_continue(void)
 {
-	unsigned long membase, memsize;
+	unsigned long membase = 0x80000000, memsize;
 	extern char __dtb_k3_am625_beagleplay_start[];
-	unsigned int size;
-
-	fdt_find_mem(__dtb_k3_am625_beagleplay_start, &membase, &memsize);
 
-	if (blob_is_valid_fdt_ptr(dtb, membase, memsize, &size))
-		handoff_data_add(HANDOFF_DATA_EXTERNAL_DT, dtb, size);
+	memsize = am625_sdram_size();
 
 	barebox_arm_entry(membase, memsize, __dtb_k3_am625_beagleplay_start);
 }
 
-void beagleplay(void *dtb)
+ENTRY_FUNCTION_WITHSTACK(start_beagleplay, 0x80800000, r0, r1, r2)
 {
 	putc_ll('>');
 
@@ -40,7 +34,7 @@ void beagleplay(void *dtb)
 
 	setup_c();
 
-	beagleplay_continue(dtb);
+	beagleplay_continue();
 }
 
 extern char __dtb_k3_am625_r5_beagleplay_start[];

-- 
2.39.5





[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux