Xieguotao,

Please check my article on UEFI network booting here: https://wiki.linaro.org/LEG/Enginering/Kernel/UEFI/UEFI_Network_Booting
It has instructions how to run TFTP with UEFI. In my case I was obtaining GRUB via TFTP and then run it in UEFI. In your case it's zImage, but it doesn't make a big difference, both GRUB and zImage are just EFI applications.


On 24 April 2014 04:43, Xieguotao <xieguotao@huawei.com> wrote:

Hi Leif and Roy,

 

       Thank you very much for your help!

       1.I have changed the setting,but it cannot work either,the log’s as follows:

    -----------------------------------------------------------------------------------------

The default boot selection will start in  10 seconds                           

[1] Ramdisk                                                                    

        - VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/uImage 

        - Initrd: VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/

initrd                                                                         

        - Arguments: mem=256M console=ttyAMA0,9600                              

        - LoaderType: Linux kernel with ATAG data                              

-----------------------                                                        

Global FDT Config                                                               

        - not configured                                                       

-----------------------                                                        

[a] Boot Manager                                                               

[b] EBL                                                                        

[c] GO                                                                         

Start: a                                                                       

[1] Add Boot Device Entry                                                      

[2] Update Boot Device Entry                                                   

[3] Remove Boot Device Entry                                                   

[4] Update FDT path                                                             

[5] Return to main menu                                                        

Choice: 1                                                                      

[1]  (29 MB)                                                                    

        - VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)        

[2]  (978 MB)                                                                  

        - Pci(0x0,0x0)/Sata(0x0,0x0,0x0)/HD(1,MBR,0x00000000,0x3F,0x1EA3FE)    

[3]  (978 MB)                                                                  

        - Pci(0x0,0x0)/Sata(0x0,0x0,0x0)/HD(2,MBR,0x00000000,0x1EA43D,0x1EA43D)

[4]  (978 MB)                                                                   

        - Pci(0x0,0x0)/Sata(0x0,0x0,0x0)/HD(3,MBR,0x00000000,0x3D487A,0x1EA43D)

[5] VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)              

        - VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)         

[6] PXE on MAC Address: 0E:00:FF:0C:FF:FE                                      

        - MAC(0E00FF0CFFFE,0x1)                                                

[7] TFTP on MAC Address: 0E:00:FF:0C:FF:FE                                     

        - MAC(0E00FF0CFFFE,0x1)                                                

Select the Boot Device: 7                                                      

Get the IP address from DHCP: [y/n] y                                          

Get the TFTP server IP address: 192.168.10.100                                 

File path of the EFI Application or the kernel : zImage                        

Is an EFI Application? [y/n] y                                                 

Is your application is an OS loader? [y/n] y                                   

Description for this new Entry: OS                                             

[1] Add Boot Device Entry                                                      

[2] Update Boot Device Entry                                                   

[3] Remove Boot Device Entry                                                   

[4] Update FDT path                                                            

[5] Return to main menu                                                         

Choice: 5                                                                      

[1] Ramdisk                                                                    

        - VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/uImage 

        - Initrd: VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/

initrd                                                                         

        - Arguments: mem=256M console=ttyAMA0,9600                              

        - LoaderType: Linux kernel with ATAG data                              

[2] OS                                                                         

        - MAC(0E00FF0CFFFE,0x1)/IPv4(192.168.10.100)                            

        - LoaderType: EFI Application                                          

-----------------------                                                        

Global FDT Config                                                               

        - not configured                                                       

-----------------------                                                        

[a] Boot Manager                                                               

[b] EBL                                                                         

[c] GO                                                                         

Start: 2                                                                       

AllocatePoolPages: failed to allocate 322561 pages                             

AllocatePool: failed to allocate 1321205792 bytes                              

AllocatePoolPages: failed to allocate 322561 pages                             

AllocatePool: failed to allocate 1321205792 bytes                              

AllocatePoolPages: failed to allocate 322561 pages      

----------------------------------------------------------------------------------------- 

 

2.There’s no ‘ping’ command in our shell,but we can use the command of ‘ifconfig’ to configure IP of board:

-----------------------------------------------------------------------------------------

D01 >cd fs0:                                                                   

D01 fs0:\>dir                                                                  

D01 fs0:\>ifconfig -s eth0 192.168.10.50 255.255.255.0 192.168.10.1            

Please wait......................................                              

Your console may stop responding for a while ....                              

The default address is: 192.168.10.50                                          

D01 fs0:\>provision 192.168.10.100  -u admin -p admin -f D01.fd                

Please select the destination disk partition:                                  

1.Label founded succ is 0x6C282010                                             

2.Label founded succ is 0x6C282010                                             

3.Label founded succ is 0x6C282010                                              

4.Label founded succ is 0x6C282010                                             

Please input the index(or input 'q' to quit):1                                 

Connected to the ftp server.                                                    

Download file D01.fd from server.                                              

###                                                                            

CurFileSize = 100000                                                            

Download file D01.fd succ!                                                     

D01 fs0:\>dir                                                                  

         <DIR> boot                                                            

D01 fs0:\>cd boot                                                              

D01 fs0:\boot>dir                                                              

         <DIR> .                                                               

         <DIR> ..                                                              

     1,048,576 D01.fd                                                          

D01 fs0:\boot>       

-----------------------------------------------------------------------------------------                                                         

I am sure that the network is OK,because the board can download files from PC which it connect to.

At the same time,the board can boot kernel by PXE:

-----------------------------------------------------------------------------------------   

[1] Ramdisk                                                                     

        - VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/uImage 

        - Initrd: VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/

initrd                                                                         

        - Arguments: mem=256M console=ttyAMA0,9600                             

        - LoaderType: Linux kernel with ATAG data                              

-----------------------                                                        

Global FDT Config                                                              

        - not configured                                                       

-----------------------                                                         

[a] Boot Manager                                                               

[b] EBL                                                                        

[c] GO                                                                          

Start: a                                                                       

[1] Add Boot Device Entry                                                      

[2] Update Boot Device Entry                                                    

[3] Remove Boot Device Entry                                                   

[4] Update FDT path                                                            

[5] Return to main menu                                                         

Choice: 1                                                                      

[1]  (29 MB)                                                                   

        - VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)         

[2]  (978 MB)                                                                  

        - Pci(0x0,0x0)/Sata(0x0,0x0,0x0)/HD(1,MBR,0x00000000,0x3F,0x1EA3FE)    

[3]  (978 MB)                                                                  

        - Pci(0x0,0x0)/Sata(0x0,0x0,0x0)/HD(2,MBR,0x00000000,0x1EA43D,0x1EA43D)

[4]  (978 MB)                                                                  

        - Pci(0x0,0x0)/Sata(0x0,0x0,0x0)/HD(3,MBR,0x00000000,0x3D487A,0x1EA43D)

[5] VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)              

        - VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)        

[6] PXE on MAC Address: 0E:00:FF:0C:FF:FE                                      

        - MAC(0E00FF0CFFFE,0x1)                                                

[7] TFTP on MAC Address: 0E:00:FF:0C:FF:FE                                     

        - MAC(0E00FF0CFFFE,0x1)                                                

Select the Boot Device: 6                                                      

Description for this new Entry: PXe                                            

[1] Add Boot Device Entry                                                      

[2] Update Boot Device Entry                                                   

[3] Remove Boot Device Entry                                                   

[4] Update FDT path                                                            

[5] Return to main menu                                                         

Choice: 5                                                                      

[1] Ramdisk                                                                    

        - VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/uImage 

        - Initrd: VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/

initrd                                                                         

        - Arguments: mem=256M console=ttyAMA0,9600                              

        - LoaderType: Linux kernel with ATAG data                              

[2] PXe                                                                        

        - MAC(0E00FF0CFFFE,0x1)                                                 

        - LoaderType: EFI Application                                          

-----------------------                                                        

Global FDT Config                                                              

        - not configured                                                       

-----------------------                                                        

[a] Boot Manager                                                               

[b] EBL                                                                         

[c] GO                                                                         

Start: 2                                                                       

[DJ]: BdsFileSystemSupport : 397                                                

[DJ]: BdsFirmwareVolumeSupport : 535                                           

[DJ]: BdsMemoryMapSupport : 480                                                

..Loading driver at 0x0006ACDA000 EntryPoint=0x0006ACDA400                     

Welcome to GRUB!     

-----------------------------------------------------------------------------------------   

3.Are there boards which can boot kernel by Tftp?

I’m sorry for taking your time,thank you!

Best regards,

Guotao Xie

 

 

发件人: Roy Franz [mailto:roy.franz@linaro.org]
发送时间: 2014424 6:31
收件人: Leif Lindholm
抄送: Xieguotao; linaro-uefi@lists.linaro.org
主题: Re: [Linaro-uefi] The problem in Booting Kernel

 

Hi Xieguotao,

 

  Does the 'ping' command from the EFI shell work in your configuration?

 

Roy

 

 

On Wed, Apr 23, 2014 at 2:19 PM, Leif Lindholm <leif.lindholm@linaro.org> wrote:

Hi Xieguotao,

I am sorry, I have only one possible idea:
For the configuration option
---

Is your application is an OS loader? [y/n] n

---
I believe that the setting should be 'y' - the stub is indeed an OS loader.

I have asked some who have experimented with UEFI network boot to
chime in with their experiences.

Best Regards,

Leif


On 23 April 2014 09:49, Xieguotao <xieguotao@huawei.com> wrote:
> Hi all,
>
>
>
>          I have a problem,can you please help me out?
>
> We want boot zImage(zImage is comprised of EFI stub and Linux kernel) by
> Tftp in Bootmanager,but we found an error:
>
>
>
> D01 >exit
>
> unload symbols_only
> c:\uefi_linaro_workspace\binary_give\uefi-next-d95896d\Build
>
> \D01\DEBUG_RVCT\ARM\HisiPkg\D01BoardPkg\Application\Ebl\Ebl\DEBUG\Ebl.dll
>
> [1] Ramdisk
>
>         -
> VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/uImage
>
>         - Initrd:
> VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/
>
> initrd
>
>         - Arguments: mem=256M console=ttyAMA0,9600
>
>         - LoaderType: Linux kernel with ATAG data
>
> -----------------------
>
> Global FDT Config
>
>         - not configured
>
> -----------------------
>
> [a] Boot Manager
>
> [b] EBL
>
> [c] GO
>
> Start: a
>
> [1] Add Boot Device Entry
>
> [2] Update Boot Device Entry
>
> [3] Remove Boot Device Entry
>
> [4] Update FDT path
>
> [5] Return to main menu
>
> Choice: 1
>
> [1]  (29 MB)
>
>         - VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)
>
> [2]  (978 MB)
>
>         - Pci(0x0,0x0)/Sata(0x0,0x0,0x0)/HD(1,MBR,0x00000000,0x3F,0x1EA3FE)
>
> [3]  (978 MB)
>
>         -
> Pci(0x0,0x0)/Sata(0x0,0x0,0x0)/HD(2,MBR,0x00000000,0x1EA43D,0x1EA43D)
>
> [4]  (978 MB)
>
>         -
> Pci(0x0,0x0)/Sata(0x0,0x0,0x0)/HD(3,MBR,0x00000000,0x3D487A,0x1EA43D)
>
> [5] VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)
>
>         - VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)
>
> [6] PXE on MAC Address: 0E:00:FF:0C:FF:FE
>
>         - MAC(0E00FF0CFFFE,0x1)
>
> [7] TFTP on MAC Address: 0E:00:FF:0C:FF:FE
>
>         - MAC(0E00FF0CFFFE,0x1)
>
> Select the Boot Device: 7
>
> Get the IP address from DHCP: [y/n] y
>
> Get the TFTP server IP address: 192.168.10.100
>
> File path of the EFI Application or the kernel : zImage
>
> Is an EFI Application? [y/n] y
>
> Is your application is an OS loader? [y/n] n
>
> Description for this new Entry: OS
>
> [1] Add Boot Device Entry
>
> [2] Update Boot Device Entry
>
> [3] Remove Boot Device Entry
>
> [4] Update FDT path
>
> [5] Return to main menu
>
> Choice: 5
>
> [1] Ramdisk
>
>         -
> VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/uImage
>
>         - Initrd:
> VenMsg(06ED4DD0-FF78-11D3-BDC4-00A0C94053D1,0000000000000000)/
>
> initrd
>
>         - Arguments: mem=256M console=ttyAMA0,9600
>
>         - LoaderType: Linux kernel with ATAG data
>
> [2] OS
>
>         - MAC(0E00FF0CFFFE,0x1)/IPv4(192.168.10.100)
>
>         - LoaderType: EFI Application
>
> -----------------------
>
> Global FDT Config
>
>         - not configured
>
> -----------------------
>
> [a] Boot Manager
>
> [b] EBL
>
> [c] GO
>
> Start: 2
>
> AllocatePoolPages: failed to allocate 322561 pages
>
> AllocatePool: failed to allocate 1321205792 bytes
>
> AllocatePoolPages: failed to allocate 322561 pages
>
> AllocatePool: failed to allocate 1321205792 bytes
>
>
>
>
>
> The error happened in BdsLoadImage-> BdsConnectDevicePath.Actually, Handle
> is no use in BdsTftpLoadImage,so I modify BdsLoadImage for test,then we can
> download zImage,but we still cannot boot it;
>
> (We can boot linux by Grub)
>
>
>
> Can you give me some advice?
>
>
>
>

> _______________________________________________
> Linaro-uefi mailing list
> Linaro-uefi@lists.linaro.org
> http://lists.linaro.org/mailman/listinfo/linaro-uefi
>

_______________________________________________
Linaro-uefi mailing list
Linaro-uefi@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-uefi

 


_______________________________________________
Linaro-uefi mailing list
Linaro-uefi@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-uefi