From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hebbar Date: Mon, 22 Sep 2008 02:46:59 -0700 (PDT) Subject: [U-Boot] U-Boot on ARM9 In-Reply-To: <40a670230809220012j1bab5602gdd07eeab9e8db482@mail.gmail.com> References: <40a670230809220012j1bab5602gdd07eeab9e8db482@mail.gmail.com> Message-ID: <19604726.post@talk.nabble.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi, >> >>I have a few questions on arm926 initialization code, located in >>${U_BOOT}/cpu/arm926ejs/start.S: >>1) what is the point of deliberately setting up SVC mode, as it's >>already in this mode right upon the reset? What if the target board has a custom bootmonitor & you use U-Boot as secondary bootloader. This is a precautionary measure. >>2) I can't quite understand what 'CONFIG_USE_IRQ' is used for. It is >>defined on just a few targets. Generally bootloader doesnt use IRQ for running. But if u need to use IRQ/FIQ u need to setup stacks for the Same. And also When Interrupt occurs you need to set sp to pint to proper stacks, save registers & then jump to irq handler. U_Boot provides a common envelope for all interrupt related functions. >>3) The stack set up -- commonly startup code initializes stacks for >>all modes, but it's not clear how it's done in 'start.S'. Seems like >>somehow stacks are run-time configured, but I didn't perceive how. U-boot Initially sets up Stack for SVC Mode. Upon Interrupt Triggers, Stacks are setup for the IRQ/FIQ Modes. This is done in the ${U_BOOT}/cpu/arm926ejs/start.S for SVC Mode ---> @ line 173 for IRQ Mode ---> @ line 327 for FIQ Mode ---> @ line 331 Hope this would clear your doubts. Regards Gururaja -- View this message in context: http://www.nabble.com/-U-Boot--U-Boot-on-ARM9-tp19602930p19604726.html Sent from the Uboot - Users mailing list archive at Nabble.com.