[U-Boot-Users] Cortex-M1 support

Hi all,
i have ported u-boot on Cortex-M1 series - It does not use the conventional arm routines in lib_arm (as Cortex M1 need these in Thumb-2). What is the correct method of integrating it in to u-boot ? For now I have a new directory named lib_armv6-m. Is it better to use place the lib files in existing arm folder ?
Best regards, Vishal Oliyil Kunnil

-----Original Message----- From: u-boot-users-bounces@lists.sourceforge.net [mailto:u-boot-users-bounces@lists.sourceforge.net] On Behalf Of Vishal Oliyil Kunnil Sent: 03 March 2008 09:18 To: U-Boot-Users@lists.sourceforge.net Cc: wd@denx.de Subject: [U-Boot-Users] Cortex-M1 support
Hi all,
i have ported u-boot on Cortex-M1 series - It does not use the conventional arm routines in lib_arm (as Cortex M1 need these in Thumb-2). What is the correct method of integrating it in to u-boot ? For now I have a new directory named lib_armv6-m. Is it better to use place the lib files in existing arm folder ?
Best regards, Vishal Oliyil Kunnil
Vishal Currently I'm envisaging
./lib_arm Existing armv4,v5 assembly code ./lib_armv6 New v6 arm assembly code ./lib_armv6m New v6 thumb assembly code ./lib_armv7 New v7 arm assembly code ./lib_armv7m New v7m thumb assembly code ./cpu/armxxx Existing arm v4,v5 cpus ./cpu/armv6 New v6 arm cpus ./cpu/armv6m New v6 thumb cpus ./cpu/armv7 New v7 arm cpus ./cpu/armv7m New v7 thumb cpus ./include/asm-arm/arch-v6 v6 socs ./include/asm-arm/arch-v6m v6 thumb socs ./include/asm-arm/arch-v7 v7 socs ./include/asm-arm/arch-v7m v7 thumb socs
However it may be possible to reduce this depending on toolchains, use of unified assembler code, ifdefs etc
I suggest you submit a patch with any v6m dependent code split out as above.
Please try to keep as much code as possible in existing locations, rather than making identical copies.
I assume you are using the Code Sourcery toolchain....
Regards
Peter

In message 000001c87d22$0da9c8d0$9a4d010a@Emea.Arm.com you wrote:
Currently I'm envisaging
./lib_arm Existing armv4,v5 assembly code ./lib_armv6 New v6 arm assembly code ./lib_armv6m New v6 thumb assembly code ./lib_armv7 New v7 arm assembly code ./lib_armv7m New v7m thumb assembly code ./cpu/armxxx Existing arm v4,v5 cpus ./cpu/armv6 New v6 arm cpus ./cpu/armv6m New v6 thumb cpus ./cpu/armv7 New v7 arm cpus ./cpu/armv7m New v7 thumb cpus ./include/asm-arm/arch-v6 v6 socs ./include/asm-arm/arch-v6m v6 thumb socs ./include/asm-arm/arch-v7 v7 socs ./include/asm-arm/arch-v7m v7 thumb socs
Do we really need all these directories? No chance to use common code at least for some of them?
Best regards,
Wolfgang Denk

On Mon, Mar 3, 2008 at 5:20 PM, Wolfgang Denk wd@denx.de wrote:
In message 000001c87d22$0da9c8d0$9a4d010a@Emea.Arm.com you wrote:
Currently I'm envisaging ./lib_arm Existing armv4,v5 assembly code ./lib_armv6 New v6 arm assembly code ./lib_armv6m New v6 thumb assembly code ./lib_armv7 New v7 arm assembly code ./lib_armv7m New v7m thumb assembly code ./cpu/armxxx Existing arm v4,v5 cpus ./cpu/armv6 New v6 arm cpus ./cpu/armv6m New v6 thumb cpus ./cpu/armv7 New v7 arm cpus ./cpu/armv7m New v7 thumb cpus ./include/asm-arm/arch-v6 v6 socs ./include/asm-arm/arch-v6m v6 thumb socs ./include/asm-arm/arch-v7 v7 socs ./include/asm-arm/arch-v7m v7 thumb socs
Do we really need all these directories? No chance to use common code at least for some of them?
Best regards,
Wolfgang Denk
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de Is not that the nature of men and women -- that the pleasure is in the learning of each other? -- Natira, the High Priestess of Yonada, "For the World is Hollow and I Have Touched the Sky", stardate 5476.3.
This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Hi,
If we move all the startup code and lib routines to thumb instructions we could maintain a single directory for all the ARM architectures and upward compatible too :-)
Thanks & Regards, Shinose.

On Mon, Mar 3, 2008 at 5:31 PM, Shinose shinose@gmail.com wrote:
On Mon, Mar 3, 2008 at 5:20 PM, Wolfgang Denk wd@denx.de wrote:
In message 000001c87d22$0da9c8d0$9a4d010a@Emea.Arm.com you wrote:
Currently I'm envisaging ./lib_arm Existing armv4,v5 assembly code ./lib_armv6 New v6 arm assembly code ./lib_armv6m New v6 thumb assembly code ./lib_armv7 New v7 arm assembly code ./lib_armv7m New v7m thumb assembly code ./cpu/armxxx Existing arm v4,v5 cpus ./cpu/armv6 New v6 arm cpus ./cpu/armv6m New v6 thumb cpus ./cpu/armv7 New v7 arm cpus ./cpu/armv7m New v7 thumb cpus ./include/asm-arm/arch-v6 v6 socs ./include/asm-arm/arch-v6m v6 thumb socs ./include/asm-arm/arch-v7 v7 socs ./include/asm-arm/arch-v7m v7 thumb socs
Do we really need all these directories? No chance to use common code at least for some of them?
Best regards,
Wolfgang Denk
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de Is not that the nature of men and women -- that the pleasure is in the learning of each other? -- Natira, the High Priestess of Yonada, "For the World is Hollow and I Have Touched the Sky", stardate 5476.3.
This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users
Hi,
If we move all the startup code and lib routines to thumb instructions we could maintain a single directory for all the ARM architectures and upward compatible too :-)
Thanks & Regards, Shinose.
How about ./arm, ./armt2 with generic boot code in ARM and Thumb-2 assembly?
Best Regards, Vishal Oliyil Kunnil

-----Original Message----- From: wd@denx.de [mailto:wd@denx.de] Sent: 03 March 2008 11:51 To: Peter Pearse Cc: 'Vishal Oliyil Kunnil'; u-boot-users@lists.sourceforge.net Subject: Re: [U-Boot-Users] Cortex-M1 support
--snip--
Do we really need all these directories? No chance to use common code at least for some of them?
Provided we assume that the ARM Unified Assembler Language will eventually be supported in the mainline gcc code, we could manage with new directories:
./lib_armv6 ./cpu/armv6 ./cpu/armv7 ./include/asm-arm/arch-v6 ./include/asm-arm/arch-v7
,using ifdefs until the UAL support arrives.
The only code in these directories would be any assembler code required.
Currently arm directories hold about 150K assember code (.S) files Some of this code is common. Were this to be removed I believe the v6/v7/thumb support could be added without overall increase in the U-Boot source size.
Regards
Peter
participants (4)
-
Peter Pearse
-
Shinose
-
Vishal Oliyil Kunnil
-
Wolfgang Denk