* [U-Boot] Uboot and ARM SMP support @ 2009-06-25 4:03 Sudeep K N 2009-06-25 7:14 ` Jean-Christophe PLAGNIOL-VILLARD 0 siblings, 1 reply; 17+ messages in thread From: Sudeep K N @ 2009-06-25 4:03 UTC (permalink / raw) To: u-boot Hi, I have seen the latest Uboot code there is no support for Cortex A9. What I would like to know is that can we reuse ARM Cortex A8 code for ARM Cortex A9 SMP system as bootloader must run in single core. Reference: http://www.linux-arm.org/LinuxBootLoader/SMPBoot -- Regards, Sudeep ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 4:03 [U-Boot] Uboot and ARM SMP support Sudeep K N @ 2009-06-25 7:14 ` Jean-Christophe PLAGNIOL-VILLARD 2009-06-25 7:38 ` Sudeep K N 0 siblings, 1 reply; 17+ messages in thread From: Jean-Christophe PLAGNIOL-VILLARD @ 2009-06-25 7:14 UTC (permalink / raw) To: u-boot On 09:33 Thu 25 Jun , Sudeep K N wrote: > Hi, > > I have seen the latest Uboot code there is no support for Cortex A9. > What I would like to know is that can we reuse ARM Cortex A8 code > for ARM Cortex A9 SMP system as bootloader must run in single core. Yes you can re-use the A8 code but you will need to update the cache management to boot you soc in smp mode In U-Boot you will use and active only one core, the others will be active in the kernel Best Regards, J. ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 7:14 ` Jean-Christophe PLAGNIOL-VILLARD @ 2009-06-25 7:38 ` Sudeep K N 2009-06-25 8:10 ` Jean-Christophe PLAGNIOL-VILLARD 0 siblings, 1 reply; 17+ messages in thread From: Sudeep K N @ 2009-06-25 7:38 UTC (permalink / raw) To: u-boot >> I have seen the latest Uboot code there is no support for Cortex A9. >> What I would like to know is that can we reuse ARM Cortex A8 code >> for ARM Cortex A9 SMP system as bootloader must run in single core. > Yes you can re-use the A8 code but you will need to update the cache > management to boot you soc in smp mode Do we need this if the bootmonitor/prebootloader is putting second core to WFE state? -- Regards, Sudeep ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 7:38 ` Sudeep K N @ 2009-06-25 8:10 ` Jean-Christophe PLAGNIOL-VILLARD 2009-06-25 9:11 ` Sudeep K N 0 siblings, 1 reply; 17+ messages in thread From: Jean-Christophe PLAGNIOL-VILLARD @ 2009-06-25 8:10 UTC (permalink / raw) To: u-boot On 13:08 Thu 25 Jun , Sudeep K N wrote: > >> I have seen the latest Uboot code there is no support for Cortex A9. > >> What I would like to know is that can we reuse ARM Cortex A8 code > >> for ARM Cortex A9 SMP system as bootloader must run in single core. > > Yes you can re-use the A8 code but you will need to update the cache > > management to boot you soc in smp mode > Do we need this if the bootmonitor/prebootloader is putting second > core to WFE state? I do not known what do other preloader and always try avoid it but in u-boot we will use only one core we can boot amp on some soc but no arm for now Best Regards, J. ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 8:10 ` Jean-Christophe PLAGNIOL-VILLARD @ 2009-06-25 9:11 ` Sudeep K N 2009-06-25 9:47 ` Nishanth Menon 0 siblings, 1 reply; 17+ messages in thread From: Sudeep K N @ 2009-06-25 9:11 UTC (permalink / raw) To: u-boot Sorry, may be I confused you. I indent to use only one core for u-boot. I wanted to ask whether we need to update the cache management to boot for ARM Cortex A9 SMP if we take ARM Cortex A8 code as base. I have tried and did not require any change on top of A8 code to run u-boot on A9 SMP. Is that right approach? -- Regards, Sudeep ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 9:11 ` Sudeep K N @ 2009-06-25 9:47 ` Nishanth Menon 2009-06-25 12:44 ` Jean-Christophe PLAGNIOL-VILLARD 2009-06-25 15:55 ` Peter Pearse 0 siblings, 2 replies; 17+ messages in thread From: Nishanth Menon @ 2009-06-25 9:47 UTC (permalink / raw) To: u-boot Sudeep K N said the following on 06/25/2009 12:11 PM: > Sorry, may be I confused you. > I indent to use only one core for u-boot. > I wanted to ask whether we need to update the cache > management to boot for ARM Cortex A9 SMP if we take > ARM Cortex A8 code as base. > I have tried and did not require any change on top of A8 code > to run u-boot on A9 SMP. > Is that right approach? > > you may want to see [1] how this was done for OMAP4 (which has a SMP cortex A9)-> we can discuss how to setup cortex_a9 in mainline u-boot. My thought would be: cpu/arm_cortexa9 - considering that a9 cores could be from 1 to 4 or so if my memory serves right -> btw, I wonder how SMP handling is done in u-boot today.. Regards, Nishanth Menon Ref: [1] http://git.omapzoom.org/?p=repo/u-boot.git;a=tree;h=refs/heads/omap4_dev;hb=refs/heads/omap4_dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 9:47 ` Nishanth Menon @ 2009-06-25 12:44 ` Jean-Christophe PLAGNIOL-VILLARD 2009-06-25 13:02 ` Pandita, Vikram 2009-06-25 15:55 ` Peter Pearse 1 sibling, 1 reply; 17+ messages in thread From: Jean-Christophe PLAGNIOL-VILLARD @ 2009-06-25 12:44 UTC (permalink / raw) To: u-boot On 12:47 Thu 25 Jun , Nishanth Menon wrote: > Sudeep K N said the following on 06/25/2009 12:11 PM: > > Sorry, may be I confused you. > > I indent to use only one core for u-boot. > > I wanted to ask whether we need to update the cache > > management to boot for ARM Cortex A9 SMP if we take > > ARM Cortex A8 code as base. > > I have tried and did not require any change on top of A8 code > > to run u-boot on A9 SMP. > > Is that right approach? > > > > > you may want to see [1] how this was done for OMAP4 (which has a SMP > cortex A9)-> we can discuss how to setup cortex_a9 in mainline u-boot. > > My thought would be: cpu/arm_cortexa9 - considering that a9 cores could > be from 1 to 4 or so if my memory serves right -> btw, I wonder how SMP > handling is done in u-boot today.. for arm I've only a theorical design as I've no SMP board for now but I want to see SMP boot & AMP boot supported in Mainline Best Regards, J. ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 12:44 ` Jean-Christophe PLAGNIOL-VILLARD @ 2009-06-25 13:02 ` Pandita, Vikram 2009-06-25 13:06 ` Sudeep K N 2009-06-25 13:51 ` Shilimkar, Santosh 0 siblings, 2 replies; 17+ messages in thread From: Pandita, Vikram @ 2009-06-25 13:02 UTC (permalink / raw) To: u-boot Adding Santosh to loop who has pushed the OMAP4 SMP support into Kernel.org >-----Original Message----- >From: Jean-Christophe PLAGNIOL-VILLARD [mailto:plagnioj at jcrosoft.com] >Sent: Thursday, June 25, 2009 7:44 AM >To: Nishanth Menon >Cc: Sudeep K N; u-boot at lists.denx.de; Pandita, Vikram; Tom >Subject: Re: [U-Boot] Uboot and ARM SMP support > >On 12:47 Thu 25 Jun , Nishanth Menon wrote: >> Sudeep K N said the following on 06/25/2009 12:11 PM: >> > Sorry, may be I confused you. >> > I indent to use only one core for u-boot. >> > I wanted to ask whether we need to update the cache >> > management to boot for ARM Cortex A9 SMP if we take >> > ARM Cortex A8 code as base. >> > I have tried and did not require any change on top of A8 code >> > to run u-boot on A9 SMP. >> > Is that right approach? >> > >> > >> you may want to see [1] how this was done for OMAP4 (which has a SMP >> cortex A9)-> we can discuss how to setup cortex_a9 in mainline u-boot. >> >> My thought would be: cpu/arm_cortexa9 - considering that a9 cores could >> be from 1 to 4 or so if my memory serves right -> btw, I wonder how SMP >> handling is done in u-boot today.. >for arm I've only a theorical design as I've no SMP board for now >but I want to see SMP boot & AMP boot supported in Mainline > >Best Regards, >J. ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 13:02 ` Pandita, Vikram @ 2009-06-25 13:06 ` Sudeep K N 2009-06-25 13:51 ` Shilimkar, Santosh 1 sibling, 0 replies; 17+ messages in thread From: Sudeep K N @ 2009-06-25 13:06 UTC (permalink / raw) To: u-boot >for arm I've only a theorical design as I've no SMP board for now >but I want to see SMP boot & AMP boot supported in Mainline Could you please provide your idea/theorical design so that we can try out on the real hardware? Regards, Sudeep ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 13:02 ` Pandita, Vikram 2009-06-25 13:06 ` Sudeep K N @ 2009-06-25 13:51 ` Shilimkar, Santosh 2009-06-25 14:15 ` Nishanth Menon 2009-06-25 15:48 ` Dirk Behme 1 sibling, 2 replies; 17+ messages in thread From: Shilimkar, Santosh @ 2009-06-25 13:51 UTC (permalink / raw) To: u-boot > -----Original Message----- > From: Pandita, Vikram > Sent: Thursday, June 25, 2009 6:32 PM > To: Jean-Christophe PLAGNIOL-VILLARD; Nishanth Menon; > Shilimkar, Santosh > Cc: Sudeep K N; u-boot at lists.denx.de; Tom > Subject: RE: [U-Boot] Uboot and ARM SMP support > > Adding Santosh to loop who has pushed the OMAP4 SMP support > into Kernel.org > > > >-----Original Message----- > >From: Jean-Christophe PLAGNIOL-VILLARD [mailto:plagnioj at jcrosoft.com] > >Sent: Thursday, June 25, 2009 7:44 AM > >To: Nishanth Menon > >Cc: Sudeep K N; u-boot at lists.denx.de; Pandita, Vikram; Tom > >Subject: Re: [U-Boot] Uboot and ARM SMP support > > > >On 12:47 Thu 25 Jun , Nishanth Menon wrote: > >> Sudeep K N said the following on 06/25/2009 12:11 PM: > >> > Sorry, may be I confused you. > >> > I indent to use only one core for u-boot. > >> > I wanted to ask whether we need to update the cache > >> > management to boot for ARM Cortex A9 SMP if we take > >> > ARM Cortex A8 code as base. > >> > I have tried and did not require any change on top of A8 code > >> > to run u-boot on A9 SMP. > >> > Is that right approach? > >> > > >> > > >> you may want to see [1] how this was done for OMAP4 (which > has a SMP > >> cortex A9)-> we can discuss how to setup cortex_a9 in > mainline u-boot. > >> > >> My thought would be: cpu/arm_cortexa9 - considering that > a9 cores could > >> be from 1 to 4 or so if my memory serves right -> btw, I > wonder how SMP > >> handling is done in u-boot today.. > >for arm I've only a theorical design as I've no SMP board for now > >but I want to see SMP boot & AMP boot supported in Mainline > > The approach is perfect and that's what is most of the SMP systems are doing.. If one look at the linux framework, U-boot need not know about the secondary cores. As far as caches goes, the SCU is not enabled at u-boot level so there is no coherency between L1 caches.L2 is external and not enabled at u-boot level for time being. At the point when u-boot transfer control to kernel, the caches are flushed in the clean-up path so you need not do any explicit stuff. In case you want to enable L2 cache ( if preset ), then you need to add support for that in the u-boot. So essentially u-boot would be almost same as Cortex-A8 except you should avoid programming AuxControl register because the bit definitions are different. Hope this helps Regards, Santosh ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 13:51 ` Shilimkar, Santosh @ 2009-06-25 14:15 ` Nishanth Menon 2009-06-25 15:18 ` Tom 2009-06-25 15:48 ` Dirk Behme 1 sibling, 1 reply; 17+ messages in thread From: Nishanth Menon @ 2009-06-25 14:15 UTC (permalink / raw) To: u-boot Shilimkar, Santosh said the following on 06/25/2009 04:51 PM: >> -----Original Message----- >> From: Pandita, Vikram >> Sent: Thursday, June 25, 2009 6:32 PM >> To: Jean-Christophe PLAGNIOL-VILLARD; Nishanth Menon; >> Shilimkar, Santosh >> Cc: Sudeep K N; u-boot at lists.denx.de; Tom >> Subject: RE: [U-Boot] Uboot and ARM SMP support >> >> Adding Santosh to loop who has pushed the OMAP4 SMP support >> into Kernel.org >> >> >> >>> -----Original Message----- >>> From: Jean-Christophe PLAGNIOL-VILLARD [mailto:plagnioj at jcrosoft.com] >>> Sent: Thursday, June 25, 2009 7:44 AM >>> To: Nishanth Menon >>> Cc: Sudeep K N; u-boot at lists.denx.de; Pandita, Vikram; Tom >>> Subject: Re: [U-Boot] Uboot and ARM SMP support >>> >>> On 12:47 Thu 25 Jun , Nishanth Menon wrote: >>> >>>> Sudeep K N said the following on 06/25/2009 12:11 PM: >>>> >>>>> Sorry, may be I confused you. >>>>> I indent to use only one core for u-boot. >>>>> I wanted to ask whether we need to update the cache >>>>> management to boot for ARM Cortex A9 SMP if we take >>>>> ARM Cortex A8 code as base. >>>>> I have tried and did not require any change on top of A8 code >>>>> to run u-boot on A9 SMP. >>>>> Is that right approach? >>>>> >>>>> >>>>> >>>> you may want to see [1] how this was done for OMAP4 (which >>>> >> has a SMP >> >>>> cortex A9)-> we can discuss how to setup cortex_a9 in >>>> >> mainline u-boot. >> >>>> My thought would be: cpu/arm_cortexa9 - considering that >>>> >> a9 cores could >> >>>> be from 1 to 4 or so if my memory serves right -> btw, I >>>> >> wonder how SMP >> >>>> handling is done in u-boot today.. >>>> >>> for arm I've only a theorical design as I've no SMP board for now >>> but I want to see SMP boot & AMP boot supported in Mainline >>> >>> > > The approach is perfect and that's what is most of the SMP systems are doing.. > If one look at the linux framework, U-boot need not know about the secondary cores. > > As far as caches goes, the SCU is not enabled at u-boot level so there is no coherency > between L1 caches.L2 is external and not enabled at u-boot level for time being. > At the point when u-boot transfer control to kernel, the caches are flushed in the > clean-up path so you need not do any explicit stuff. > > In case you want to enable L2 cache ( if preset ), then you need to add support for > that in the u-boot. > > So essentially u-boot would be almost same as Cortex-A8 except you should avoid programming AuxControl > register because the bit definitions are different. > > Hope this helps > so how would the new arch look like? do we do: cpu/arm_cortexa8_9 and common code there? Regards, Nishanth Menon ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 14:15 ` Nishanth Menon @ 2009-06-25 15:18 ` Tom 2009-06-25 22:09 ` Jean-Christophe PLAGNIOL-VILLARD 0 siblings, 1 reply; 17+ messages in thread From: Tom @ 2009-06-25 15:18 UTC (permalink / raw) To: u-boot Nishanth Menon wrote: > Shilimkar, Santosh said the following on 06/25/2009 04:51 PM: > <snip> >> >> So essentially u-boot would be almost same as Cortex-A8 except you should avoid programming AuxControl >> register because the bit definitions are different. >> >> Hope this helps >> >> > so how would the new arch look like? do we do: > cpu/arm_cortexa8_9 and common code there? > Given my recent experience with common code for i2c on omp24xx and omap3, I would prefer if they were separate and had no common code. cpu/arm_cortexa8 cpu/arm_cortexa9 So A8 can be more easily maintained. As A9 matures, it will diverge more from A8. Tom > Regards, > Nishanth Menon > ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 15:18 ` Tom @ 2009-06-25 22:09 ` Jean-Christophe PLAGNIOL-VILLARD 0 siblings, 0 replies; 17+ messages in thread From: Jean-Christophe PLAGNIOL-VILLARD @ 2009-06-25 22:09 UTC (permalink / raw) To: u-boot On 10:18 Thu 25 Jun , Tom wrote: > Nishanth Menon wrote: > >Shilimkar, Santosh said the following on 06/25/2009 04:51 PM: > <snip> > >> > >>So essentially u-boot would be almost same as Cortex-A8 except you should avoid programming AuxControl > >>register because the bit definitions are different. > >> > >>Hope this helps > >so how would the new arch look like? do we do: > >cpu/arm_cortexa8_9 and common code there? > Given my recent experience with common code for i2c on omp24xx and omap3, > I would prefer if they were separate and had no common code. no sorry I'm bored to copy & paster of code everywhere specialy on arm > > cpu/arm_cortexa8 > cpu/arm_cortexa9 I do not want to see this anymore > > So A8 can be more easily maintained. it will be a mess on start.S for 2 or 3 specific code line so no > As A9 matures, it will diverge more from A8. for now I think merge them make more sense if it will require in the futur to separte them we will see but for now no Best Regards, J. ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 13:51 ` Shilimkar, Santosh 2009-06-25 14:15 ` Nishanth Menon @ 2009-06-25 15:48 ` Dirk Behme 2009-06-26 5:10 ` Shilimkar, Santosh 1 sibling, 1 reply; 17+ messages in thread From: Dirk Behme @ 2009-06-25 15:48 UTC (permalink / raw) To: u-boot Shilimkar, Santosh wrote: >> -----Original Message----- >> From: Pandita, Vikram >> Sent: Thursday, June 25, 2009 6:32 PM >> To: Jean-Christophe PLAGNIOL-VILLARD; Nishanth Menon; >> Shilimkar, Santosh >> Cc: Sudeep K N; u-boot at lists.denx.de; Tom >> Subject: RE: [U-Boot] Uboot and ARM SMP support >> >> Adding Santosh to loop who has pushed the OMAP4 SMP support >> into Kernel.org >> >> >>> -----Original Message----- >>> From: Jean-Christophe PLAGNIOL-VILLARD [mailto:plagnioj at jcrosoft.com] >>> Sent: Thursday, June 25, 2009 7:44 AM >>> To: Nishanth Menon >>> Cc: Sudeep K N; u-boot at lists.denx.de; Pandita, Vikram; Tom >>> Subject: Re: [U-Boot] Uboot and ARM SMP support >>> >>> On 12:47 Thu 25 Jun , Nishanth Menon wrote: >>>> Sudeep K N said the following on 06/25/2009 12:11 PM: >>>>> Sorry, may be I confused you. >>>>> I indent to use only one core for u-boot. >>>>> I wanted to ask whether we need to update the cache >>>>> management to boot for ARM Cortex A9 SMP if we take >>>>> ARM Cortex A8 code as base. >>>>> I have tried and did not require any change on top of A8 code >>>>> to run u-boot on A9 SMP. >>>>> Is that right approach? >>>>> >>>>> >>>> you may want to see [1] how this was done for OMAP4 (which >> has a SMP >>>> cortex A9)-> we can discuss how to setup cortex_a9 in >> mainline u-boot. >>>> My thought would be: cpu/arm_cortexa9 - considering that >> a9 cores could >>>> be from 1 to 4 or so if my memory serves right -> btw, I >> wonder how SMP >>>> handling is done in u-boot today.. >>> for arm I've only a theorical design as I've no SMP board for now >>> but I want to see SMP boot & AMP boot supported in Mainline >>> > > The approach is perfect and that's what is most of the SMP systems are doing.. > If one look at the linux framework, U-boot need not know about the secondary cores. > > As far as caches goes, the SCU is not enabled at u-boot level so there is no coherency > between L1 caches.L2 is external and not enabled at u-boot level for time being. > At the point when u-boot transfer control to kernel, the caches are flushed in the > clean-up path so you need not do any explicit stuff. > > In case you want to enable L2 cache ( if preset ), then you need to add support for > that in the u-boot. > > So essentially u-boot would be almost same as Cortex-A8 except you should avoid programming AuxControl > register because the bit definitions are different. Yes. What I think what I (hopefully correctly) understood looking at Peter's (looping him in, btw) U-Boot branch http://www.linux-arm.org/git?p=u-boot-armdev.git;a=summary is: * Regarding U-Boot (ARM) SMP support: There isn't any need for U-Boot (cpu directory) to deal with it. Concept seems to be "handle ARM11 MPcore as ARM11 single core and Cortex A9 SMP as Cortex A8" at U-Boot level. I.e. boot only the master processor and cover it with existing single processor code in cpu directory. Then use board specific low_levelinit.S to put other (slave) processors into WFI mode. That's all. * Regarding cpu/cortex_a9 directory: No need for it. I don't know A9, but looking e.g. at http://www.linux-arm.org/git?p=u-boot-armdev.git;a=blobdiff;f=MAKEALL;h=84f4bf8862cd49f109174de62777e4bd3499ab03;hp=67030a7355d56d751fdc4499e3c82d8fdb615d6e;hb=eb72ea08d09b7e7ac96d7dc3f428a63f53d266e1;hpb=2e6979454a2ea76c6b2889e40cde2e0ee9ad5e50 http://www.linux-arm.org/git?p=u-boot-armdev.git;a=blobdiff;f=MAKEALL;h=67030a7355d56d751fdc4499e3c82d8fdb615d6e;hp=72cc4ee0d90b5feb90ffe1fc48ddb6c3a0850907;hb=2e6979454a2ea76c6b2889e40cde2e0ee9ad5e50;hpb=ecad37d06857bb4f57bb95e0e0246a68b4d58161 and above idea of re-using single processor core cpu/arm* code, I would propose to rename cpu/cortex_a8 to cpu/cortex_ax. And cover A9 with this, too. As I don't have an A9 nor know the details, I'm not sure if this would work in real life, but the basic idea sounds good for. Maybe Peter can share his ideas or experience? Best regards Dirk ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 15:48 ` Dirk Behme @ 2009-06-26 5:10 ` Shilimkar, Santosh 0 siblings, 0 replies; 17+ messages in thread From: Shilimkar, Santosh @ 2009-06-26 5:10 UTC (permalink / raw) To: u-boot > -----Original Message----- > From: Dirk Behme [mailto:dirk.behme at googlemail.com] > Sent: Thursday, June 25, 2009 9:19 PM > To: Shilimkar, Santosh > Cc: Pandita, Vikram; Jean-Christophe PLAGNIOL-VILLARD; > Nishanth Menon; u-boot at lists.denx.de; Tom; Peter Pearse > Subject: Re: [U-Boot] Uboot and ARM SMP support > > Shilimkar, Santosh wrote: > >> -----Original Message----- > >> From: Pandita, Vikram > >> Sent: Thursday, June 25, 2009 6:32 PM > >> To: Jean-Christophe PLAGNIOL-VILLARD; Nishanth Menon; > >> Shilimkar, Santosh > >> Cc: Sudeep K N; u-boot at lists.denx.de; Tom > >> Subject: RE: [U-Boot] Uboot and ARM SMP support > >> > >> Adding Santosh to loop who has pushed the OMAP4 SMP support > >> into Kernel.org > >> > >> > >>> -----Original Message----- > >>> From: Jean-Christophe PLAGNIOL-VILLARD > [mailto:plagnioj at jcrosoft.com] > >>> Sent: Thursday, June 25, 2009 7:44 AM > >>> To: Nishanth Menon > >>> Cc: Sudeep K N; u-boot at lists.denx.de; Pandita, Vikram; Tom > >>> Subject: Re: [U-Boot] Uboot and ARM SMP support > >>> > >>> On 12:47 Thu 25 Jun , Nishanth Menon wrote: > >>>> Sudeep K N said the following on 06/25/2009 12:11 PM: > >>>>> Sorry, may be I confused you. > >>>>> I indent to use only one core for u-boot. > >>>>> I wanted to ask whether we need to update the cache > >>>>> management to boot for ARM Cortex A9 SMP if we take > >>>>> ARM Cortex A8 code as base. > >>>>> I have tried and did not require any change on top of A8 code > >>>>> to run u-boot on A9 SMP. > >>>>> Is that right approach? > >>>>> > >>>>> > >>>> you may want to see [1] how this was done for OMAP4 (which > >> has a SMP > >>>> cortex A9)-> we can discuss how to setup cortex_a9 in > >> mainline u-boot. > >>>> My thought would be: cpu/arm_cortexa9 - considering that > >> a9 cores could > >>>> be from 1 to 4 or so if my memory serves right -> btw, I > >> wonder how SMP > >>>> handling is done in u-boot today.. > >>> for arm I've only a theorical design as I've no SMP board for now > >>> but I want to see SMP boot & AMP boot supported in Mainline > >>> > > > > The approach is perfect and that's what is most of the SMP > systems are doing.. > > If one look at the linux framework, U-boot need not know > about the secondary cores. > > > > As far as caches goes, the SCU is not enabled at u-boot > level so there is no coherency > > between L1 caches.L2 is external and not enabled at u-boot > level for time being. > > At the point when u-boot transfer control to kernel, the > caches are flushed in the > > clean-up path so you need not do any explicit stuff. > > > > In case you want to enable L2 cache ( if preset ), then you > need to add support for > > that in the u-boot. > > > > So essentially u-boot would be almost same as Cortex-A8 > except you should avoid programming AuxControl > > register because the bit definitions are different. > > Yes. > > What I think what I (hopefully correctly) understood looking at > Peter's (looping him in, btw) U-Boot branch > > http://www.linux-arm.org/git?p=u-boot-armdev.git;a=summary > > is: > > * Regarding U-Boot (ARM) SMP support: > > There isn't any need for U-Boot (cpu directory) to deal with it. > Concept seems to be "handle ARM11 MPcore as ARM11 single core and > Cortex A9 SMP as Cortex A8" at U-Boot level. I.e. boot only > the master > processor and cover it with existing single processor code in cpu > directory. Then use board specific low_levelinit.S to put other > (slave) processors into WFI mode. That's all. This perfectly summarises that we don't need to have A9 specific Directory. Regarding doing something on secondary core, it can be handled In boot monitor(ROM code) or as suggested in u-boot itself. > * Regarding cpu/cortex_a9 directory: > > No need for it. I don't know A9, but looking e.g. at > > http://www.linux-arm.org/git?p=u-boot-armdev.git;a=blobdiff;f= > MAKEALL;h=84f4bf8862cd49f109174de62777e4bd3499ab03;hp=67030a73 55d56d751fdc4499e3c82d8fdb615d6e;hb=eb72ea08d09b7e7ac96d7dc3f428a63f53d266e1;hpb=> 2e6979454a2ea76c6b2889e40cde2e0ee9ad5e50 > http://www.linux-arm.org/git?p=u-boot-armdev.git;a=blobdiff;f= > MAKEALL;h=67030a7355d56d751fdc4499e3c82d8fdb615d6e;hp=72cc4ee0 d90b5feb90ffe1fc48ddb6c3a0850907;hb=> 2e6979454a2ea76c6b2889e40cde2e0ee9ad5e50;hpb=ecad37d06857bb4f5 > 7bb95e0e0246a68b4d58161 > > and above idea of re-using single processor core cpu/arm* code, I > would propose to rename cpu/cortex_a8 to cpu/cortex_ax. And cover A9 > with this, too. This looks good to me. We just need to handle AuxControl reg bits and L2 cache Bit differntly for A9. > As I don't have an A9 nor know the details, I'm not sure if > this would > work in real life, but the basic idea sounds good for. > > Maybe Peter can share his ideas or experience? Regards, Santosh ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 9:47 ` Nishanth Menon 2009-06-25 12:44 ` Jean-Christophe PLAGNIOL-VILLARD @ 2009-06-25 15:55 ` Peter Pearse 2009-06-25 17:02 ` Nishanth Menon 1 sibling, 1 reply; 17+ messages in thread From: Peter Pearse @ 2009-06-25 15:55 UTC (permalink / raw) To: u-boot Those interested in SMP booting on ARM may be interested in http://www.linux-arm.org/LinuxBootLoader/SMPBoot On ARM supplied development boards we rely on the pre-installed ARM Boot Monitor to provide the necessary setup to allow U-Boot to run uni-core. I am about to look at a patch for the ARM Fast Model A9 multicore in order to boot it without an ARM Boot Monitor. I'll cc this list once it is added to git://linux-arm.org/u-boot-armdev Apologies for the disclaimer - our sys admins seemd to have decided to close my open-source account....... Regards Peter > -----Original Message----- > From: u-boot-bounces at lists.denx.de > [mailto:u-boot-bounces at lists.denx.de] On Behalf Of Nishanth Menon > Sent: 25 June 2009 10:48 > To: Sudeep K N > Cc: u-boot at lists.denx.de; Pandita, Vikram; Tom > Subject: Re: [U-Boot] Uboot and ARM SMP support > > Sudeep K N said the following on 06/25/2009 12:11 PM: > > Sorry, may be I confused you. > > I indent to use only one core for u-boot. > > I wanted to ask whether we need to update the cache > management to boot > > for ARM Cortex A9 SMP if we take ARM Cortex A8 code as base. > > I have tried and did not require any change on top of A8 > code to run > > u-boot on A9 SMP. > > Is that right approach? > > > > > you may want to see [1] how this was done for OMAP4 (which > has a SMP cortex A9)-> we can discuss how to setup cortex_a9 > in mainline u-boot. > > My thought would be: cpu/arm_cortexa9 - considering that a9 > cores could be from 1 to 4 or so if my memory serves right -> > btw, I wonder how SMP handling is done in u-boot today.. > > Regards, > Nishanth Menon > Ref: > [1] > http://git.omapzoom.org/?p=repo/u-boot.git;a=tree;h=refs/heads > /omap4_dev;hb=refs/heads/omap4_dev > > _______________________________________________ > U-Boot mailing list > U-Boot at lists.denx.de > http://lists.denx.de/mailman/listinfo/u-boot > -- IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you. ^ permalink raw reply [flat|nested] 17+ messages in thread
* [U-Boot] Uboot and ARM SMP support 2009-06-25 15:55 ` Peter Pearse @ 2009-06-25 17:02 ` Nishanth Menon 0 siblings, 0 replies; 17+ messages in thread From: Nishanth Menon @ 2009-06-25 17:02 UTC (permalink / raw) To: u-boot Peter Pearse said the following on 06/25/2009 06:55 PM: > Those interested in SMP booting on ARM may be interested in > > http://www.linux-arm.org/LinuxBootLoader/SMPBoot > > > On ARM supplied development boards we rely on the pre-installed > > ARM Boot Monitor to provide the necessary setup to allow U-Boot to run uni-core. > > > I am about to look at a patch for the ARM Fast Model A9 multicore > > in order to boot it without an ARM Boot Monitor. I'll cc this list > > once it is added to git://linux-arm.org/u-boot-armdev > > > Apologies for the disclaimer - our sys admins seemd to have decided to close my open-source account....... > > It might be exciting to look at boot and peripheral support planned: a) unicore Vs multicore support at u-boot level? b) single thread scheduling? c) interrrupt handling? d) peripheral and flash handling could be concurrent? e) anything else which could affect common systems? f) any kernel/"other OS" specific features? Regards, Nishanth Menon ^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2009-06-26 5:10 UTC | newest] Thread overview: 17+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2009-06-25 4:03 [U-Boot] Uboot and ARM SMP support Sudeep K N 2009-06-25 7:14 ` Jean-Christophe PLAGNIOL-VILLARD 2009-06-25 7:38 ` Sudeep K N 2009-06-25 8:10 ` Jean-Christophe PLAGNIOL-VILLARD 2009-06-25 9:11 ` Sudeep K N 2009-06-25 9:47 ` Nishanth Menon 2009-06-25 12:44 ` Jean-Christophe PLAGNIOL-VILLARD 2009-06-25 13:02 ` Pandita, Vikram 2009-06-25 13:06 ` Sudeep K N 2009-06-25 13:51 ` Shilimkar, Santosh 2009-06-25 14:15 ` Nishanth Menon 2009-06-25 15:18 ` Tom 2009-06-25 22:09 ` Jean-Christophe PLAGNIOL-VILLARD 2009-06-25 15:48 ` Dirk Behme 2009-06-26 5:10 ` Shilimkar, Santosh 2009-06-25 15:55 ` Peter Pearse 2009-06-25 17:02 ` Nishanth Menon
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox