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] *发送时间:* 2014年4月24日 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