From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dirk Behme Date: Sat, 02 May 2009 08:00:54 +0200 Subject: [U-Boot] [PATCH V2] arm: timer and interrupt init rework In-Reply-To: <20090501232305.GI3291@game.jcrosoft.org> References: <1240047101-6787-1-git-send-email-plagnioj@jcrosoft.com> <1241216732-13765-1-git-send-email-plagnioj@jcrosoft.com> <49FB7F1A.6090101@googlemail.com> <20090501232305.GI3291@game.jcrosoft.org> Message-ID: <49FBE196.5060106@googlemail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Dear Jean-Christophe, Jean-Christophe PLAGNIOL-VILLARD wrote: > On 01:00 Sat 02 May , Dirk Behme wrote: >> Dear Jean-Christophe, >> >> Jean-Christophe PLAGNIOL-VILLARD wrote: >>> actually the timer init use the interrupt_init as init callback >>> which make the interrupt and timer implementation difficult to follow >>> >>> so now rename it as int timer_init(void) and use interrupt_init for interrupt >>> >>> btw also remane the corresponding file to the functionnality implemented >>> >>> as ixp arch implement two timer - one based on interrupt - so all the timer >>> related code is moved to timer.c >>> >>> as some timer need interrupt and we need delay in the board init >>> >>> the new init sequence is now >>> interrupt_init (if used) >>> timer_init >>> board_init >>> >>> Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD >> ... >>> diff --git a/cpu/arm_cortexa8/omap3/Makefile b/cpu/arm_cortexa8/omap3/Makefile >>> index b96b3dd..edf5cb2 100644 >>> --- a/cpu/arm_cortexa8/omap3/Makefile >>> +++ b/cpu/arm_cortexa8/omap3/Makefile >>> @@ -26,7 +26,13 @@ include $(TOPDIR)/config.mk >>> LIB = $(obj)lib$(SOC).a >>> SOBJS := lowlevel_init.o >>> -COBJS := sys_info.o board.o clock.o interrupts.o mem.o syslib.o >>> + >>> +COBJS += board.o >>> +COBJS += clock.o >>> +COBJS += mem.o >>> +COBJS += syslib.o >>> +COBJS += sys_info.o >>> +COBJS += timer.o >> What do we win with this? > simple to allow vertical patch to be applied instead of have merge problem > > so yes it's needed Please elaborate more: What is "vertical patch"? Why to "to be applied"? I can't find any note in this patch that mentions a dependency to any other patch. Which "merge problem" do you expect? So for what "it's needed"? >>> diff --git a/lib_arm/board.c b/lib_arm/board.c >>> index 5d05d9b..b678a63 100644 >>> --- a/lib_arm/board.c >>> +++ b/lib_arm/board.c >>> @@ -265,8 +265,11 @@ init_fnc_t *init_sequence[] = { >>> #if defined(CONFIG_ARCH_CPU_INIT) >>> arch_cpu_init, /* basic arch cpu dependent setup */ >>> #endif >>> - board_init, /* basic board dependent setup */ >>> +#if defined(CONFIG_USE_IRQ) >>> interrupt_init, /* set up exceptions */ >>> +#endif >>> + timer_init, /* initialize timer */ >>> + board_init, /* basic board dependent setup */ >>> env_init, /* initialize environment */ >>> init_baudrate, /* initialze baudrate settings */ >>> serial_init, /* serial communications setup */ >> ... if you tested this on an OMAP3 board: I'm not sure, but it seems to >> me that the initialization order might change by this? > maybe read the commit message will answer your question I understand this as confirmation that the initialization order changes by this patch. Please answer the additional questions in http://lists.denx.de/pipermail/u-boot/2009-May/051925.html http://lists.denx.de/pipermail/u-boot/2009-May/051928.html then. Dirk