[U-Boot-Users] Support Big Endian for ARM926ejs

longbow longbow.cao at gmail.com
Thu Oct 25 15:28:03 CEST 2007


Hello
I'm porting u-boot for my board which using ARM926ejs and big endian mode
My GNU toolchain is for big endian, I use it to build u-boot-1.2.0

For build, do some modification 
u-boot.lds
/*OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")*/
OUTPUT_FORMAT("elf32-bigarm", "elf32-bigarm", "elf32-bigarm ")

Start.S 
cpu_init_crit:
.....
/*
	 * disable MMU stuff and caches
	 */
	mrc	p15, 0, r0, c1, c0, 0
	bic	r0, r0, #0x00002300	/* clear bits 13, 9:8 (--V- --RS) */
	/*bic	r0, r0, #0x00000087	clear bits 7, 2:0 (B--- -CAM) */
	/*orr	r0, r0, #0x00000002	 set bit 2 (A) Align */
	bic	r0, r0, #0x00000007	/* clear bits 2:0 (--- -CAM) */
	orr	r0, r0, #0x00000082	/* set bit 7, 2 (Big)(A) Align */
	orr	r0, r0, #0x00001000	/* set bit 12 (I) I-Cache */
	mcr	p15, 0, r0, c1, c0, 0
	
....
For porting successfully, I want to confirm the source code of u-boot for
arm support big endian ?
Thanks

Longbow







More information about the U-Boot mailing list