[U-Boot-Users] uImage starting problem on Virtex-4 (PPC405)

Hi All,
I have successfully built u-boot 1.2.0 on my Avnet evaluation board (ml403 like) which uses virtex-4 xilinx FPGA with built-in ppc405 processor. The u-boot was configured to deal with UART lite.
I have build also zImage.elf which runs very well on my board. I have however difficulties to run kernel image via u-boot.
My board has 32 MB of RAM memory (address range 0x000000 - 0x1ffffff)
The steps which I have done are as following:
1. I have build u-boot and loaded it via jtag to my board XMD% dow u-boot1a.elf section, .text: 0x01a00000-0x01a0d838 section, .resetvec: 0x01a122f0-0x01a122f4 section, .rodata: 0x01a0d838-0x01a0fc5b section, .reloc: 0x01a0fd00-0x01a102a8 section, .data: 0x01a102a8-0x01a10740 section, .data.rel: 0x01a10740-0x01a1076c section, .data.rel.local: 0x01a1076c-0x01a10ba4 section, .u_boot_cmd: 0x01a10ba4-0x01a10db4 section, .bss: 0x01a10e00-0x01a122f0 Downloaded Program u-boot1a.elf
2. I have loaded the uImage via jtag to the memory location 0x600000
3. I have started u-boot:
U-Boot 1.2.0 (Aug 31 2007 - 10:49:57) ### No HW ID - assuming ML403 DRAM: 32 MB Using default environment In: serial Out: serial Err: serial
Hit any key to stop autoboot: 0
4. I have started uImage
=> bootm 0x600000 ## Booting image at 00600000 ... Image Name: Linux-2.6.21-rc6 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 981837 Bytes = 958.8 kB Load Address: 00a00000 Entry Point: 00a00000 Verifying Checksum ... OK Uncompressing Kernel Image ... OK ## Current stack ends at 0x01FCC668 => set upper limit to 0x00800000 No initrd ## Transferring control to Linux (at address 00a00000) ...
5. After that the system just hangs
6. I have tried as well to run zImage.elf from u-boot (zImage.elf runs well when started straight from jtag):
=> bootelf 0x600000 Loading .text @ 0x00400000 (14140 bytes) Loading .data @ 0x00404000 (987136 bytes) Clearing .bss @ 0x004f5000 (8504 bytes) ## Starting application at 0x00400000 ... loaded at: 00400000 004F7138 board data at: 004F5120 004F5138 relocated to: 004040B4 004040CC zimage at: 00404EA9 004F49F5 avail ram: 004F8000 01FFFFFF Linux/PPC load: console=ttyUL0,9600 root=/dev/nfs rw nfsroot=129.117.144.113:/opt/eldk41/ppc_4xx,tcp ip=::::virtex4-mirek:eth0:dhcp panic=1 Uncompressing Linux...
7. After that system just hangs
My observation is that: - when launching zImage from u-boot, the system blocks during zImage uncompressing - when launching uImage from u-boot the system blocks after u-boot uncompresses the uImage
I do not know what I do wrong. Maybe the processor is not set to the correct mode of the apportion or the memory locations are not correct.
I do not also know what should be the proper: Load Address and Entry Point for uImage. The zImage refers to the location 0x400000 (as listed above).
I attache to this post my Avnet board u-boot configuration.
Any suggestion is welcome
Best Regards
Mirek

On 8/31/07, Miroslaw Dach miroslaw.dach@psi.ch wrote:
Hi All,
I have successfully built u-boot 1.2.0 on my Avnet evaluation
board (ml403 like) which uses virtex-4 xilinx FPGA with built-in ppc405 processor. The u-boot was configured to deal with UART lite.
I have build also zImage.elf which runs very well on my board. I have however difficulties to run kernel image via u-boot.
I just thought of something. You're using kernel v. 2.6.21-rc6. However, it wasn't until 2.6.22 that the kernel tree was updated to use the same board info structure as u-boot. (specifically commit 9be4dcb606e647854760fafd0bb1cb3e1a804d16)
You probably have a u-boot/kernel board info mismatch.
Cheers, g.
My board has 32 MB of RAM memory (address range 0x000000 - 0x1ffffff)
The steps which I have done are as following:
- I have build u-boot and loaded it via jtag to my board
XMD% dow u-boot1a.elf section, .text: 0x01a00000-0x01a0d838 section, .resetvec: 0x01a122f0-0x01a122f4 section, .rodata: 0x01a0d838-0x01a0fc5b section, .reloc: 0x01a0fd00-0x01a102a8 section, .data: 0x01a102a8-0x01a10740 section, .data.rel: 0x01a10740-0x01a1076c section, .data.rel.local: 0x01a1076c-0x01a10ba4 section, .u_boot_cmd: 0x01a10ba4-0x01a10db4 section, .bss: 0x01a10e00-0x01a122f0 Downloaded Program u-boot1a.elf
I have loaded the uImage via jtag to the memory location 0x600000
I have started u-boot:
U-Boot 1.2.0 (Aug 31 2007 - 10:49:57) ### No HW ID - assuming ML403 DRAM: 32 MB Using default environment In: serial Out: serial Err: serial
Hit any key to stop autoboot: 0
- I have started uImage
=> bootm 0x600000 ## Booting image at 00600000 ... Image Name: Linux-2.6.21-rc6 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 981837 Bytes = 958.8 kB Load Address: 00a00000 Entry Point: 00a00000 Verifying Checksum ... OK Uncompressing Kernel Image ... OK ## Current stack ends at 0x01FCC668 => set upper limit to 0x00800000 No initrd ## Transferring control to Linux (at address 00a00000) ...
After that the system just hangs
I have tried as well to run zImage.elf from u-boot (zImage.elf runs
well when started straight from jtag):
=> bootelf 0x600000 Loading .text @ 0x00400000 (14140 bytes) Loading .data @ 0x00404000 (987136 bytes) Clearing .bss @ 0x004f5000 (8504 bytes) ## Starting application at 0x00400000 ... loaded at: 00400000 004F7138 board data at: 004F5120 004F5138 relocated to: 004040B4 004040CC zimage at: 00404EA9 004F49F5 avail ram: 004F8000 01FFFFFF Linux/PPC load: console=ttyUL0,9600 root=/dev/nfs rw nfsroot=129.117.144.113:/opt/eldk41/ppc_4xx,tcp ip=::::virtex4-mirek:eth0:dhcp panic=1 Uncompressing Linux...
- After that system just hangs
My observation is that:
- when launching zImage from u-boot, the system blocks during zImage uncompressing
- when launching uImage from u-boot the system blocks after u-boot uncompresses the uImage
I do not know what I do wrong. Maybe the processor is not set to the correct mode of the apportion or the memory locations are not correct.
I do not also know what should be the proper: Load Address and Entry Point for uImage. The zImage refers to the location 0x400000 (as listed above).
I attache to this post my Avnet board u-boot configuration.
Any suggestion is welcome
Best Regards
Mirek
--
Miroslaw Dach (Miroslaw.Dach@psi.ch) - SLS/Controls Group PSI - Paul Scherrer Institut CH-5232 Villigen
=============================================================================
This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users

Hi Grant,
What would you suggest me to do ?
I just thought of something. You're using kernel v. 2.6.21-rc6. However, it wasn't until 2.6.22 that the kernel tree was updated to use the same board info structure as u-boot. (specifically commit 9be4dcb606e647854760fafd0bb1cb3e1a804d16)
You probably have a u-boot/kernel board info mismatch.
What would you suggest me to do ? How to sort out this problem?
Best Regards
Mirek
Cheers, g.
My board has 32 MB of RAM memory (address range 0x000000 - 0x1ffffff)
The steps which I have done are as following:
- I have build u-boot and loaded it via jtag to my board
XMD% dow u-boot1a.elf section, .text: 0x01a00000-0x01a0d838 section, .resetvec: 0x01a122f0-0x01a122f4 section, .rodata: 0x01a0d838-0x01a0fc5b section, .reloc: 0x01a0fd00-0x01a102a8 section, .data: 0x01a102a8-0x01a10740 section, .data.rel: 0x01a10740-0x01a1076c section, .data.rel.local: 0x01a1076c-0x01a10ba4 section, .u_boot_cmd: 0x01a10ba4-0x01a10db4 section, .bss: 0x01a10e00-0x01a122f0 Downloaded Program u-boot1a.elf
I have loaded the uImage via jtag to the memory location 0x600000
I have started u-boot:
U-Boot 1.2.0 (Aug 31 2007 - 10:49:57) ### No HW ID - assuming ML403 DRAM: 32 MB Using default environment In: serial Out: serial Err: serial
Hit any key to stop autoboot: 0
- I have started uImage
=> bootm 0x600000 ## Booting image at 00600000 ... Image Name: Linux-2.6.21-rc6 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 981837 Bytes = 958.8 kB Load Address: 00a00000 Entry Point: 00a00000 Verifying Checksum ... OK Uncompressing Kernel Image ... OK ## Current stack ends at 0x01FCC668 => set upper limit to 0x00800000 No initrd ## Transferring control to Linux (at address 00a00000) ...
After that the system just hangs
I have tried as well to run zImage.elf from u-boot (zImage.elf runs
well when started straight from jtag):
=> bootelf 0x600000 Loading .text @ 0x00400000 (14140 bytes) Loading .data @ 0x00404000 (987136 bytes) Clearing .bss @ 0x004f5000 (8504 bytes) ## Starting application at 0x00400000 ... loaded at: 00400000 004F7138 board data at: 004F5120 004F5138 relocated to: 004040B4 004040CC zimage at: 00404EA9 004F49F5 avail ram: 004F8000 01FFFFFF Linux/PPC load: console=ttyUL0,9600 root=/dev/nfs rw nfsroot=129.117.144.113:/opt/eldk41/ppc_4xx,tcp ip=::::virtex4-mirek:eth0:dhcp panic=1 Uncompressing Linux...
- After that system just hangs
My observation is that:
- when launching zImage from u-boot, the system blocks during zImage uncompressing
- when launching uImage from u-boot the system blocks after u-boot uncompresses the uImage
I do not know what I do wrong. Maybe the processor is not set to the correct mode of the apportion or the memory locations are not correct.
I do not also know what should be the proper: Load Address and Entry Point for uImage. The zImage refers to the location 0x400000 (as listed above).
I attache to this post my Avnet board u-boot configuration.
Any suggestion is welcome
Best Regards
Mirek
--
Miroslaw Dach (Miroslaw.Dach@psi.ch) - SLS/Controls Group PSI - Paul Scherrer Institut CH-5232 Villigen
=============================================================================
This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users

On 8/31/07, Miroslaw Dach miroslaw.dach@psi.ch wrote:
Hi Grant,
What would you suggest me to do ?
I just thought of something. You're using kernel v. 2.6.21-rc6. However, it wasn't until 2.6.22 that the kernel tree was updated to use the same board info structure as u-boot. (specifically commit 9be4dcb606e647854760fafd0bb1cb3e1a804d16)
You probably have a u-boot/kernel board info mismatch.
What would you suggest me to do ? How to sort out this problem?
Upgrade your kernel (preferred) or backport the changes to your kernel (not recommended)
g.

Is there any patch for kernel version 2.6.21-rc6 to have the same board info as in u-boot1.2.0?
Best Regards
Mirek
On Fri, 31 Aug 2007, Grant Likely wrote:
On 8/31/07, Miroslaw Dach miroslaw.dach@psi.ch wrote:
Hi Grant,
What would you suggest me to do ?
I just thought of something. You're using kernel v. 2.6.21-rc6. However, it wasn't until 2.6.22 that the kernel tree was updated to use the same board info structure as u-boot. (specifically commit 9be4dcb606e647854760fafd0bb1cb3e1a804d16)
You probably have a u-boot/kernel board info mismatch.
What would you suggest me to do ? How to sort out this problem?
Upgrade your kernel (preferred) or backport the changes to your kernel (not recommended)
g.

Hi Grant,
As regards the board info I have verified that board info structure is the same in kernel 2.6.21 and kernel2.4:
typedef struct board_info { unsigned int bi_memsize; /* DRAM installed, in bytes */ unsigned char bi_enetaddr[6]; /* Local Ethernet MAC address */ unsigned int bi_intfreq; /* Processor speed, in Hz */ unsigned int bi_busfreq; /* Bus speed, in Hz */ unsigned int bi_pci_busfreq; /* PCI Bus speed, in Hz */ } bd_t;
The location of that structure is only different. In the kernel 2.6.21 is located in : ./arch/ppc/platforms/4xx/virtex.h and in the kernel 2.4: ./arch/ppc/platforms/xilinx_ml*.h
Could you please confirm if the board info you mentioned in your last post is the structure listed above or something else? I am just trying to sort out the problem with booting my kernel from u-boot and still no success.
Best Regards
Mirek
Grant Likely-2 wrote:
On 8/31/07, Miroslaw Dach miroslaw.dach@psi.ch wrote:
Hi Grant,
What would you suggest me to do ?
I just thought of something. You're using kernel v. 2.6.21-rc6. However, it wasn't until 2.6.22 that the kernel tree was updated to use the same board info structure as u-boot. (specifically commit 9be4dcb606e647854760fafd0bb1cb3e1a804d16)
You probably have a u-boot/kernel board info mismatch.
What would you suggest me to do ? How to sort out this problem?
Upgrade your kernel (preferred) or backport the changes to your kernel (not recommended)
g.
-- Grant Likely, B.Sc., P.Eng. Secret Lab Technologies Ltd. grant.likely@secretlab.ca (403) 399-0195
This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ U-Boot-Users mailing list U-Boot-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/u-boot-users

On 9/4/07, Mirek23 miroslaw.dach@psi.ch wrote:
Hi Grant,
As regards the board info I have verified that board info structure is the same in kernel 2.6.21 and kernel2.4:
... which is different from the structure used by u-boot. Stock u-boot and stock kernels earlier than 2.6.22 do *not* work together. 2.6.21 eliminates the structure you mentioned and goes back to using the one defined in ppcboot.h
g.

Hi Grant,
I have followed your suggestion and I have built the kernel 2.6.23-rc2 (by You). And this time I had absolutely no problem to load uImage from u-boot1.2.0 !!! This is great!
I have tried just by curiosity to loaded zImage from u-boot by means of bootelf command and this does not work.
Of course I will be using uImage in conjunction with u-boot but I am just wondering why zImage fails to run. The system hangs during uncompression.
Best Regards and many thanks
Mirek
participants (3)
-
Grant Likely
-
Mirek23
-
Miroslaw Dach