diff mbox

[U-Boot] Exynos5250: Remove lowlevelinit

Message ID 1392366168-20296-1-git-send-email-rajeshwari.s@samsung.com
State Accepted
Delegated to: Albert ARIBAUD
Headers show

Commit Message

Rajeshwari Birje Feb. 14, 2014, 8:22 a.m. UTC
From: Rajeshwari S Shinde <rajeshwari.s@samsung.com>

Since we use CONFIG_SKIP_LOWLEVEL_INIT for Exynos baords, we dont need to a 
lowlevel_init.S file.

Signed-off-by: Rajeshwari S Shinde <rajeshwari.s@samsung.com>
---
 board/samsung/smdk5250/lowlevel_init.S | 82 ----------------------------------
 1 file changed, 82 deletions(-)
 delete mode 100644 board/samsung/smdk5250/lowlevel_init.S

Comments

Albert ARIBAUD Feb. 14, 2014, 9:41 a.m. UTC | #1
Hi Rajeshwari,

On Fri, 14 Feb 2014 13:52:48 +0530, Rajeshwari Shinde
<rajeshwari.s@samsung.com> wrote:

> From: Rajeshwari S Shinde <rajeshwari.s@samsung.com>
> 
> Since we use CONFIG_SKIP_LOWLEVEL_INIT for Exynos baords, we dont need to a 
> lowlevel_init.S file.
> 
> Signed-off-by: Rajeshwari S Shinde <rajeshwari.s@samsung.com>
> ---

Builds fine on my side, and as it just removes dead code, I've assigned
this patch to myself and will include it in my next PR. Thanks!

Amicalement,
Rajeshwari Birje Feb. 14, 2014, 1:03 p.m. UTC | #2
Hi Albert,

On Fri, Feb 14, 2014 at 3:11 PM, Albert ARIBAUD
<albert.u.boot@aribaud.net> wrote:
> Hi Rajeshwari,
>
> On Fri, 14 Feb 2014 13:52:48 +0530, Rajeshwari Shinde
> <rajeshwari.s@samsung.com> wrote:
>
>> From: Rajeshwari S Shinde <rajeshwari.s@samsung.com>
>>
>> Since we use CONFIG_SKIP_LOWLEVEL_INIT for Exynos baords, we dont need to a
>> lowlevel_init.S file.
>>
>> Signed-off-by: Rajeshwari S Shinde <rajeshwari.s@samsung.com>
>> ---
>
> Builds fine on my side, and as it just removes dead code, I've assigned
> this patch to myself and will include it in my next PR. Thanks!

Sure Thanx
Simon Glass Feb. 14, 2014, 4:23 p.m. UTC | #3
On 14 February 2014 01:22, Rajeshwari Shinde <rajeshwari.s@samsung.com> wrote:
> From: Rajeshwari S Shinde <rajeshwari.s@samsung.com>
>
> Since we use CONFIG_SKIP_LOWLEVEL_INIT for Exynos baords, we dont need to a
> lowlevel_init.S file.
>
> Signed-off-by: Rajeshwari S Shinde <rajeshwari.s@samsung.com>

Acked-by: Simon Glass <sjg@chromium.org>
Albert ARIBAUD Feb. 19, 2014, 9:47 a.m. UTC | #4
Hi Rajeshwari,

On Fri, 14 Feb 2014 13:52:48 +0530, Rajeshwari Shinde
<rajeshwari.s@samsung.com> wrote:

> From: Rajeshwari S Shinde <rajeshwari.s@samsung.com>
> 
> Since we use CONFIG_SKIP_LOWLEVEL_INIT for Exynos baords, we dont need to a 
> lowlevel_init.S file.
> 
> Signed-off-by: Rajeshwari S Shinde <rajeshwari.s@samsung.com>
> ---
>  board/samsung/smdk5250/lowlevel_init.S | 82 ----------------------------------
>  1 file changed, 82 deletions(-)
>  delete mode 100644 board/samsung/smdk5250/lowlevel_init.S
> 
> diff --git a/board/samsung/smdk5250/lowlevel_init.S b/board/samsung/smdk5250/lowlevel_init.S
> deleted file mode 100644
> index 9003e2d..0000000
> --- a/board/samsung/smdk5250/lowlevel_init.S
> +++ /dev/null
> @@ -1,82 +0,0 @@
> -/*
> - * Lowlevel setup for SMDK5250 board based on S5PC520
> - *
> - * Copyright (C) 2012 Samsung Electronics
> - *
> - * SPDX-License-Identifier:	GPL-2.0+
> - */
> -
> -#include <config.h>
> -#include <version.h>
> -#include <asm/arch/cpu.h>
> -
> -_TEXT_BASE:
> -	.word	CONFIG_SYS_TEXT_BASE
> -
> -	.globl lowlevel_init
> -lowlevel_init:
> -
> -	/* use iRAM stack in bl2 */
> -	ldr	sp, =CONFIG_IRAM_STACK
> -	stmdb	r13!, {ip,lr}
> -
> -	/* check reset status */
> -	ldr	r0, =(EXYNOS5_POWER_BASE + INFORM1_OFFSET)
> -	ldr	r1, [r0]
> -
> -	/* AFTR wakeup reset */
> -	ldr	r2, =S5P_CHECK_DIDLE
> -	cmp	r1, r2
> -	beq	exit_wakeup
> -
> -	/* LPA wakeup reset */
> -	ldr	r2, =S5P_CHECK_LPA
> -	cmp	r1, r2
> -	beq	exit_wakeup
> -
> -	/* Sleep wakeup reset */
> -	ldr	r2, =S5P_CHECK_SLEEP
> -	cmp	r1, r2
> -	beq	wakeup_reset
> -
> -	/*
> -	 * If U-boot is already running in RAM, no need to relocate U-Boot.
> -	 * Memory controller must be configured before relocating U-Boot
> -	 * in ram.
> -	 */
> -	ldr	r0, =0x0ffffff		/* r0 <- Mask Bits*/
> -	bic	r1, pc, r0		/* pc <- current addr of code */
> -					/* r1 <- unmasked bits of pc */
> -	ldr	r2, _TEXT_BASE		/* r2 <- original base addr in ram */
> -	bic	r2, r2, r0		/* r2 <- unmasked bits of r2*/
> -	cmp	r1, r2			/* compare r1, r2 */
> -	beq	1f			/* r0 == r1 then skip sdram init */
> -
> -	/* init system clock */
> -	bl	system_clock_init
> -
> -	/* Memory initialize */
> -	bl	mem_ctrl_init
> -
> -1:
> -	bl	arch_cpu_init
> -	bl	tzpc_init
> -	ldmia	r13!, {ip,pc}
> -
> -wakeup_reset:
> -	bl	system_clock_init
> -	bl	mem_ctrl_init
> -	bl	arch_cpu_init
> -	bl	tzpc_init
> -
> -exit_wakeup:
> -	/* Load return address and jump to kernel */
> -	ldr	r0, =(EXYNOS5_POWER_BASE + INFORM0_OFFSET)
> -
> -	/* r1 = physical address of exynos5_cpu_resume function*/
> -	ldr	r1, [r0]
> -
> -	/* Jump to kernel */
> -	mov	pc, r1
> -	nop
> -	nop

Applied to u-boot-arm/master, thanks!

Amicalement,
diff mbox

Patch

diff --git a/board/samsung/smdk5250/lowlevel_init.S b/board/samsung/smdk5250/lowlevel_init.S
deleted file mode 100644
index 9003e2d..0000000
--- a/board/samsung/smdk5250/lowlevel_init.S
+++ /dev/null
@@ -1,82 +0,0 @@ 
-/*
- * Lowlevel setup for SMDK5250 board based on S5PC520
- *
- * Copyright (C) 2012 Samsung Electronics
- *
- * SPDX-License-Identifier:	GPL-2.0+
- */
-
-#include <config.h>
-#include <version.h>
-#include <asm/arch/cpu.h>
-
-_TEXT_BASE:
-	.word	CONFIG_SYS_TEXT_BASE
-
-	.globl lowlevel_init
-lowlevel_init:
-
-	/* use iRAM stack in bl2 */
-	ldr	sp, =CONFIG_IRAM_STACK
-	stmdb	r13!, {ip,lr}
-
-	/* check reset status */
-	ldr	r0, =(EXYNOS5_POWER_BASE + INFORM1_OFFSET)
-	ldr	r1, [r0]
-
-	/* AFTR wakeup reset */
-	ldr	r2, =S5P_CHECK_DIDLE
-	cmp	r1, r2
-	beq	exit_wakeup
-
-	/* LPA wakeup reset */
-	ldr	r2, =S5P_CHECK_LPA
-	cmp	r1, r2
-	beq	exit_wakeup
-
-	/* Sleep wakeup reset */
-	ldr	r2, =S5P_CHECK_SLEEP
-	cmp	r1, r2
-	beq	wakeup_reset
-
-	/*
-	 * If U-boot is already running in RAM, no need to relocate U-Boot.
-	 * Memory controller must be configured before relocating U-Boot
-	 * in ram.
-	 */
-	ldr	r0, =0x0ffffff		/* r0 <- Mask Bits*/
-	bic	r1, pc, r0		/* pc <- current addr of code */
-					/* r1 <- unmasked bits of pc */
-	ldr	r2, _TEXT_BASE		/* r2 <- original base addr in ram */
-	bic	r2, r2, r0		/* r2 <- unmasked bits of r2*/
-	cmp	r1, r2			/* compare r1, r2 */
-	beq	1f			/* r0 == r1 then skip sdram init */
-
-	/* init system clock */
-	bl	system_clock_init
-
-	/* Memory initialize */
-	bl	mem_ctrl_init
-
-1:
-	bl	arch_cpu_init
-	bl	tzpc_init
-	ldmia	r13!, {ip,pc}
-
-wakeup_reset:
-	bl	system_clock_init
-	bl	mem_ctrl_init
-	bl	arch_cpu_init
-	bl	tzpc_init
-
-exit_wakeup:
-	/* Load return address and jump to kernel */
-	ldr	r0, =(EXYNOS5_POWER_BASE + INFORM0_OFFSET)
-
-	/* r1 = physical address of exynos5_cpu_resume function*/
-	ldr	r1, [r0]
-
-	/* Jump to kernel */
-	mov	pc, r1
-	nop
-	nop