Dear Albert ARIBAUD, In message <4d6680e4.1070...@free.fr> you wrote: > > Do you mean a first commit to turn _end into _bss_end everywhere in > U-Boot, then a second commit to reintroduce _end and fix the issue with > monitor protection? Or even maybe a single commit for both?
We should re-check if the current use of _end; excluding the linker scripts, I see these uses: arch/powerpc/cpu/74xx_7xx/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/74xx_7xx/start.S: lwz r4,GOT(_end) arch/powerpc/cpu/mpc512x/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/mpc512x/start.S: lwz r4,GOT(_end) arch/powerpc/cpu/mpc5xx/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/mpc5xx/start.S: lwz r4,GOT(_end) arch/powerpc/cpu/mpc5xxx/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/mpc5xxx/start.S: lwz r4,GOT(_end) arch/powerpc/cpu/mpc8220/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/mpc8220/start.S: lwz r4,GOT(_end) arch/powerpc/cpu/mpc824x/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/mpc824x/start.S: lwz r4,GOT(_end) arch/powerpc/cpu/mpc8260/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/mpc8260/start.S: lwz r4,GOT(_end) arch/powerpc/cpu/mpc83xx/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/mpc83xx/start.S: lwz r4,GOT(_end) arch/powerpc/cpu/mpc85xx/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/mpc85xx/start.S: lwz r4,GOT(_end) arch/powerpc/cpu/mpc86xx/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/mpc86xx/start.S: lwz r4,GOT(_end) arch/powerpc/cpu/mpc8xx/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/mpc8xx/start.S: lwz r4,GOT(_end) arch/powerpc/cpu/ppc4xx/start.S: GOT_ENTRY(_end) arch/powerpc/cpu/ppc4xx/start.S: lwz r4,GOT(_end) arch/powerpc/lib/board.c:extern ulong _end; arch/powerpc/lib/board.c: len = (ulong)&_end - CONFIG_SYS_MONITOR_BASE; arch/arm/cpu/arm1136/start.S: .word _end - _start arch/arm/cpu/arm1176/start.S: .word _end - _start arch/arm/cpu/arm720t/start.S: .word _end - _start arch/arm/cpu/arm920t/start.S: .word _end - _start arch/arm/cpu/arm925t/start.S: .word _end - _start arch/arm/cpu/arm926ejs/start.S: .word _end - _start arch/arm/cpu/arm946es/start.S: .word _end - _start arch/arm/cpu/arm_intcm/start.S: .word _end - _start arch/arm/cpu/ixp/start.S: .word _end - _start arch/arm/cpu/lh7a40x/start.S: .word _end - _start arch/arm/cpu/pxa/start.S: .word _end - _start arch/arm/cpu/s3c44b0/start.S: .word _end - _start arch/arm/cpu/sa1100/start.S: .word _end - _start arch/arm/cpu/armv7/start.S: .word _end - _start arch/avr32/cpu/start.S: lda.w r9, _end arch/avr32/include/asm/sections.h:extern char _end[]; arch/avr32/lib/board.c: (unsigned long)_data, (unsigned long)_end); arch/avr32/lib/board.c: monitor_len = _end - _text; arch/m68k/lib/board.c:extern ulong _end; arch/m68k/lib/board.c: len = (ulong)&_end - CONFIG_SYS_MONITOR_BASE; arch/microblaze/cpu/start.S: addi r4, r0, __end arch/microblaze/cpu/start.S: rsub r4, r5, r4 /* size = __end - __text_start */ arch/nios2/cpu/start.S: * and between __bss_start and _end. arch/nios2/cpu/start.S: movhi r6, %hi(_end) arch/nios2/cpu/start.S: ori r6, r6, %lo(_end) board/mousse/u-boot.lds.ram: _end = . ; board/mousse/u-boot.lds.rom: _end = . ; examples/standalone/stubs.c:extern unsigned long __bss_start, _end; examples/standalone/stubs.c: while (cp < (unsigned char *)&_end) { As far as I can tell, arch/powerpc/lib/board.c , arch/avr32/lib/board.c and examples/standalone/stubs.c actually all mean __bss_end, as well as all the start.S files, so this seems to be consistently used at least. 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: w...@denx.de Another dream that failed. There's nothing sadder. -- Kirk, "This side of Paradise", stardate 3417.3 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot