Dear Mr.Wolfgang Denk, Your reply had helped me a lot in figuring out the solution, but I run into another issue.
I had identified the kernel file where load address is defined: kexec-bzimage64.c:#define MIN_KERNEL_LOAD_ADDR 0x100000 I am using the following command to create uImage. Here in the architecture argument I am not seeing any option corresponding to the Intel-x86_64. So I had used x86, which I am not sure is valid or not. The kernel is 64 bit. mkimage -A x86 -O linux -T kernel -C none -a 0x100000 -e 0x00000 -n Linux -d vmlinux-4.4.6-ina uImage Image Name: Linux Created: Fri Jun 24 10:35:40 2016 Image Type: Intel x86 Linux Kernel Image (uncompressed) Data Size: 21966248 Bytes = 21451.41 kB = 20.95 MB Load Address: 00100000 Entry Point: 00000000 The bootcmd is "bootcmd fatload mmc 1:1 02000000 uImage \; bootm 02000000". Now after copying the kernel to RAM I am seeing the following error messages: Error: Invalid Boot Flag (found 0x0000, expected 0xaa55) Setup at 0x000000 Magic signature not found Is is I need to load setup.bin also? After Starting Kernel I am seeing the following message: Invalid Opcode (Undefined Opcode) EIP: 0010:[<00000058>] EFLAGS: 00010006 Original EIP :[<849a4058>] EAX: 05050616 EBX: 00000000 ECX: 00000000 EDX: 00000000 ESI: 00000000 EDI: 00000000 EBP: 00000000 ESP: 7b348150 DS: 0018 ES: 0018 FS: 0020 GS: 0018 SS: 0018 CR0: 00000033 CR2: 00000000 CR3: 00000000 CR4: 00000600 DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000 DR6: ffff0ff0 DR7: 00000400 Stack: 0x7b348190 : 0x00009000 0x7b34818c : 0x7b5cf088 0x7b348188 : 0x00000007 0x7b348184 : 0x7b5ae4e8 0x7b348180 : 0x00010000 0x7b34817c : 0x00000000 0x7b348178 : 0x7b3481bc 0x7b348174 : 0x00000001 0x7b348170 : 0xcb6e3ac1 0x7b34816c : 0x7b55f663 0x7b348168 : 0x7b36035c 0x7b348164 : 0x00000000 0x7b348160 : 0x00000400 0x7b34815c : 0x7b5cf088 0x7b348158 : 0x00000000 0x7b348154 : 0x00000000 --->0x7b348150 : 0x00009000 0x7b34814c : 0x00010006 0x7b348148 : 0x00000010 0x7b348144 : 0x00000058 ### ERROR ### Please RESET the board ### I didn't understand what#s happening here? Do I need to load the *.dtb file also or this will be done internally by the u-boot. Thanks & Regards, Vinothkumar On Thu, Jun 23, 2016 at 8:21 PM, Wolfgang Denk <w...@denx.de> wrote: > Dear Vinoth, > > In message <CAJst-kGA9s24O= > bka8eswmtg-hgz8opc+i1h0bjwc0_c1uc...@mail.gmail.com> you wrote: > > > > 1) What's the address in the bootcmd corresponds to , I think it is > > Define "bootcmd" - this can be anything. > > > the address where we want the u-boot to load the Linux kernel image > > into RAM > > > > For ex: fatload mmc 0:1 01000000 bzImage; zboot 01000000 > > This does not apply to your previous question. We were talking about > the address entries in uImage files - but there you use a bzImage > which does not include the uImage header, and so it doesn not have any > "load address" or "entry point address" settings stored in the image. > Here you need to know these yourself. > > > Here 01000000 is the address and bzImage is the compressed Linux > > kernel stored in mmc0 partition1. Once the Kernel is copied to RAM we > > are using zboot command to start the kernel, so after it Kernel > > unpacks itself and starts running > > Correct - but this is a totally different scenario. > > Note also that th enotation of "kernel unpacks itself" is dependent on > the image type and to some parts on the architecture. > > > 2) I want to use uncompressed Kernel(vmlinux) instead of bzImage. > > U-boot directly doesn't support running vmlinux, so I need to generate > > the uImage using the mkImage tool. So the payload in my case in > > uncompressed kernel. To generate this I want two addresses , load > > address and entry point address. You have mentioned that the addresses > > are often fixed. How can I get these addresses? > > They are defined in the kerel build process; check Linux Makefiles, > and/or study the linker commands used when linking the kernel image. > > > I am using the same address in bootcmd: fatload mmc 0:1 01000000 > > uImage; bootm 01000000 > > In this case 0x01000000 is what I usually call the "download address", > i. e. the location where the uImage is stored in memory. This has > nothing to do with the load address or entry pint address (except that > you will likely run into trouble if these should be the same or close > to it). > > Best regards, > > Wolfgang Denk > > -- > DENX Software Engineering GmbH, Managing Director: Wolfgang Denk > HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany > Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de > You get a wonderful view from the point of no return. > - Terry Pratchett, _Making_Money_ > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot