mx6: Remove lowlevel_init.S
Subsystems (2)
PATCH v2 1/1 mx6: Remove lowlevel_init.S
From: Fabio Estevam <[email protected]>
lowlevel_init.S is not used on mx6, so remove the file and the associated calls.
---
Changes since v1:
- Also remove SOBJS
arch/arm/cpu/armv7/mx6/Makefile | 5 ++--- arch/arm/cpu/armv7/mx6/lowlevel_init.S | 25 ------------------------- arch/arm/cpu/armv7/start.S | 24 ------------------------ 3 files changed, 2 insertions(+), 52 deletions(-) delete mode 100644 arch/arm/cpu/armv7/mx6/lowlevel_init.S
arch/arm/cpu/armv7/mx6/Makefile +2 -3
@@ -28,10 +28,9 @@ include $(TOPDIR)/config.mk LIB = $(obj)lib$(SOC).o COBJS = soc.o clock.o -SOBJS = lowlevel_init.o -SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) -OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) +SRCS := $(COBJS:.o=.c) +OBJS := $(addprefix $(obj), $(COBJS)) all: $(obj).depend $(LIB)
arch/arm/cpu/armv7/mx6/lowlevel_init.S deleted +0 -25
@@ -1,25 +0,0 @@ -/* - * Copyright (C) 2010-2011 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - */ -.section ".text.init", "x" - -#include <linux/linkage.h> - -ENTRY(lowlevel_init) - mov pc, lr -ENDPROC(lowlevel_init)
arch/arm/cpu/armv7/start.S +0 -24
@@ -152,7 +152,6 @@ reset: /* the mask ROM code should have PLL and others stable */ #ifndef CONFIG_SKIP_LOWLEVEL_INIT bl cpu_init_cp15 - bl cpu_init_crit #endif /* Set stackpointer in internal RAM to call board_init_f */
@@ -353,29 +352,6 @@ ENTRY(cpu_init_cp15) mov pc, lr @ back to my caller ENDPROC(cpu_init_cp15) -#ifndef CONFIG_SKIP_LOWLEVEL_INIT -/************************************************************************* - * - * CPU_init_critical registers - * - * setup important registers - * setup memory timing - * - *************************************************************************/ -ENTRY(cpu_init_crit) - /* - * Jump to board specific initialization... - * The Mask ROM will have already initialized - * basic memory. Go here to bump up clock rate and handle - * wake up conditions. - */ - mov ip, lr @ persevere link reg across call - bl lowlevel_init @ go setup pll,mux,memory - mov lr, ip @ restore link - mov pc, lr @ back to my caller -ENDPROC(cpu_init_crit) -#endif - #ifndef CONFIG_SPL_BUILD /* *************************************************************************
Signature · 1 line
1.7.9.5
PATCH v2 1/1 mx6: Remove lowlevel_init.S
Quoted 6 lines · Fabio Estevam
From: Fabio Estevam <[email protected]>
lowlevel_init.Sis not used on mx6, so remove the file and the associated calls.Signed-off-by Fabio Estevam <[email protected]>---
Applied to u-boot-imx, next branch, thanks.
Best regards,
Stefano Babic
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================
PATCH v2 1/1 mx6: Remove lowlevel_init.S
In reply to Fabio EstevamQuoted 6 lines · Fabio Estevam
From: Fabio Estevam <[email protected]>
lowlevel_init.Sis not used on mx6, so remove the file and the associated calls.Signed-off-by Fabio Estevam <[email protected]>---
Hi Fabio,
I am testing the -next branch. MX5 does not boot anymore - I have tested on MX53. In fact:
Quoted 62 lines
Changes since v1:
- Also remove SOBJSarch/arm/cpu/armv7/mx6/Makefile | 5 ++--- arch/arm/cpu/armv7/mx6/lowlevel_init.S | 25 ------------------------- arch/arm/cpu/armv7/start.S | 24 ------------------------ 3 files changed, 2 insertions(+), 52 deletions(-) delete mode 100644 arch/arm/cpu/armv7/mx6/lowlevel_init.Sarch/arm/cpu/armv7/mx6/Makefile +2
-3@@ -28,10 +28,9 @@ include $(TOPDIR)/config.mk LIB = $(obj)lib$(SOC).o COBJS = soc.o clock.o -SOBJS = lowlevel_init.o -SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) -OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) +SRCS := $(COBJS:.o=.c) +OBJS := $(addprefix $(obj), $(COBJS)) all: $(obj).depend $(LIB)arch/arm/cpu/armv7/mx6/lowlevel_init.S deleted +0
-25@@ -1,25 +0,0 @@ -/* - * Copyright (C) 2010-2011 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - */ -.section ".text.init", "x" - -#include <linux/linkage.h> - -ENTRY(lowlevel_init) - mov pc, lr -ENDPROC(lowlevel_init)arch/arm/cpu/armv7/start.S +0
-0
arch/arm/cpu/armv7/start.S reset: · line 155
Quoted 4 lines
arch/arm/cpu/armv7/start.S +0
-1@@ -152,7 +152,6 @@ reset: /* the mask ROM code should have PLL and others stable */ #ifndef CONFIG_SKIP_LOWLEVEL_INIT bl cpu_init_cp15 - bl cpu_init_crit
What does happen now to the poor MX5 ? lowlevel_init is not called anymore, I presume...
Maybe it is better to add a weak function in MX6 cpu code. This let Eric to add a custom lowlevel_init, as he asked.
Do you agree ?
Best regards,
Stefano
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================
PATCH v2 1/1 mx6: Remove lowlevel_init.S
Hi Stefano,
Quoted 2 lines · Stefano Babic
What does happen now to the poor MX5 ?
lowlevel_initis not called anymore, I presume...
Which board did you test this with, please?
Regards,
Fabio Estevam
PATCH v2 1/1 mx6: Remove lowlevel_init.S
Hi Fabio,
Quoted 9 lines · Fabio Estevam
Hi Stefano,
Quoted 2 lines · Stefano Babic
What does happen now to the poor MX5 ?
lowlevel_initis not called anymore, I presume...Which board did you test this with, please?
I have the same issue with a custom i.MX51 board. I guess all i.MX5 boards are affected because armv7 start.S should not have been altered by this patch.
Please use an empty weak default implementation for i.MX6 as Stefano suggested.
Best regards,
Beno?t
PATCH v2 1/1 mx6: Remove lowlevel_init.S
Quoted 14 lines · Beno?t Th?baudeau
Hi Fabio,
Quoted 10 lines · Fabio Estevam
Hi Stefano,
Quoted 3 lines · Stefano Babic
What does happen now to the poor MX5 ?
lowlevel_initis not called
anymore, I presume...Which board did you test this with, please?
Quoted 7 lines
I have the same issue with a custom i.MX51 board. I guess all i.MX5 boards are
affected because armv7start.Sshould not have been altered by this patch.Please use an empty weak default implementation for i.MX6 as Stefano suggested.
Note that this default implementation can be put in start.S like what was done for save_boot_params().
Best regards,
Beno?t
PATCH v2 1/1 mx6: Remove lowlevel_init.S
In reply to Fabio EstevamQuoted 8 lines · Fabio Estevam
Hi Stefano,
Quoted 2 lines · Stefano Babic
What does happen now to the poor MX5 ?
lowlevel_initis not called anymore, I presume...Which board did you test this with, please?
I tested on a mx53qsb, but I think it affects all MX5 boards.
Regards,
Stefano
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================
PATCH v2 1/1 mx6: Remove lowlevel_init.S
In reply to Stefano BabicHi Stefano/Beno?t,
Quoted 3 lines · Stefano Babic
I am testing the -next branch. MX5 does not boot anymore - I have tested on MX53. In fact:
Sorry for the breakage, the correct patch would be:
--- arch/arm/cpu/armv7/mx6/Makefile | 3 +-- arch/arm/cpu/armv7/mx6/lowlevel_init.S | 25 ------------------------- 2 files changed, 1 insertion(+), 27 deletions(-) delete mode 100644 arch/arm/cpu/armv7/mx6/lowlevel_init.S
arch/arm/cpu/armv7/mx6/Makefile +1 -2
@@ -28,10 +28,9 @@ include $(TOPDIR)/config.mk LIB = $(obj)lib$(SOC).o COBJS = soc.o clock.o -SOBJS = lowlevel_init.o SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c) -OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) +OBJS := $(addprefix $(obj),$(COBJS)) all: $(obj).depend $(LIB)
(quoted diff) +0 -0
b/arch/arm/cpu/armv7/mx6/lowlevel_init.S
deleted file mode 100644
index acadef2..0000000
arch/arm/cpu/armv7/mx6/lowlevel_init.S deleted +0 -25
@@ -1,25 +0,0 @@ -/* - * Copyright (C) 2010-2011 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - */ -.section ".text.init", "x" - -#include <linux/linkage.h> - -ENTRY(lowlevel_init) - mov pc, lr -ENDPROC(lowlevel_init)
Signature · 8 lines
1.7.9.5 Please drop my original patch from your next tree and then I can send this modified version. Thanks, Fabio Estevam
PATCH v2 1/1 mx6: Remove lowlevel_init.S
Hi Fabio,
Quoted 25 lines · Fabio Estevam
Hi Stefano/Beno?t,
Quoted 4 lines · Stefano Babic
I am testing the -next branch. MX5 does not boot anymore - I have tested
on MX53. In fact:Sorry for the breakage, the correct patch would be:
--- arch/arm/cpu/armv7/mx6/Makefile | 3 +-- arch/arm/cpu/armv7/mx6/lowlevel_init.S | 25 ------------------------- 2 files changed, 1 insertion(+), 27 deletions(-) delete mode 100644 arch/arm/cpu/armv7/mx6/lowlevel_init.Sarch/arm/cpu/armv7/mx6/Makefile +0
-0
arch/arm/cpu/armv7/mx6/Makefile include $(TOPDIR)/config.mk · line 32
Quoted 6 lines
arch/arm/cpu/armv7/mx6/Makefile +0
-1@@ -28,10 +28,9 @@ include $(TOPDIR)/config.mk LIB = $(obj)lib$(SOC).o COBJS = soc.o clock.o -SOBJS = lowlevel_init.o SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
You forgot the following lines from your v2:
-SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
+SRCS := $(COBJS:.o=.c)
Quoted 40 lines
arch/arm/cpu/armv7/mx6/Makefile +1
-1-OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS)) +OBJS := $(addprefix $(obj),$(COBJS)) all: $(obj).depend $(LIB)arch/arm/cpu/armv7/mx6/lowlevel_init.S deleted +0
-26@@ -1,25 +0,0 @@ -/* - * Copyright (C) 2010-2011 Freescale Semiconductor, Inc. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, - * MA 02111-1307 USA - */ -.section ".text.init", "x" - -#include <linux/linkage.h> - -ENTRY(lowlevel_init) - mov pc, lr -ENDPROC(lowlevel_init) --1.7.9.5
Quoted 2 lines
Please drop my original patch from your next tree and then I can send this modified version.
Also, can link succeed for i.MX6 with this patch? Isn't there something missing? I mean: lowlevel_init() is still called but no longer defined, so shouldn't the following be added to armv7's start.S?
ENTRY(lowlevel_init)
bx lr @ back to my callerENDPROC(lowlevel_init)
.weak lowlevel_init
Best regards,
Beno?t
PATCH v2 1/1 mx6: Remove lowlevel_init.S
Hi Beno?t,
Quoted 2 lines · Beno?t Th?baudeau
Also, can link succeed for i.MX6 with this patch? Isn't there something missing? I mean:
lowlevel_init()is still called but no longer defined, so shouldn't the
Yes, you are right, thanks.
I suggest Stefano just drop my original patch.
Regards,
Fabio Estevam
PATCH v2 1/1 mx6: Remove lowlevel_init.S
Quoted 11 lines · Fabio Estevam
Hi Beno?t,
Quoted 2 lines · Beno?t Th?baudeau
Also, can link succeed for i.MX6 with this patch? Isn't there something missing? I mean:
lowlevel_init()is still called but no longer defined, so shouldn't theYes, you are right, thanks.
I suggest Stefano just drop my original patch.
Yes, I already did.
Regards,
Stefano
Signature · 5 lines
===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de =====================================================================