Hi,
I am trying to boot a UEFI ARM64 system on the net. My tftp server is an
amd64 machine and the UEFI client is a arm64 machine. When I net-boot
the arm64 system I can only see the GRUB's rescue shell and if I press
'ls' I can only see the (hd0) device.
However, I've been trying to run the linux command on the GRUB's shell
as follows:
grub>
grub> set net_default_server=192.168.255.1
grub> set root=(tftp,192.168.255.1)
grub> linux /fedora23Aarch64/vmlinuz
error: timeout: could not resolve hardware address.
grub>
# The tftp server root is in /var/lib/tftpboot and I have vmlinuz there
for now.
When I do this, however, I can see some ARP requests/ replies on the
server side, but the tftp connection never starts.
On the other hand, I've been using available arm64 GRUBs on different
linux distros:
- Ubuntu: https://wiki.ubuntu.com/ARM/Server/Install/UEFI
- Fedora: (Grubaa64.efi)
http://dl.fedoraproject.org/pub/fedora-secondary/releases/23/Server/aarch64/os/EFI/BOOT/
I then tried to create my own grub (maybe those grubs where not allowing
tftp devices) to control all the modules I put on it but I couldn't make
my own GRUB following this (3.2 chapter):
https://wiki.linaro.org/LEG/Engineering/Kernel/UEFI/UEFI_Network_Booting#GRUB
The error I got when doing make after ./autoconf and ./configure is:
In file included from term/efi/serial.c:29:0:
../include/grub/serial.h:25:25: fatal error: grub/cpu/io.h: No such file
or directory
#include <grub/cpu/io.h>
(See attached file for more details).
Hopefully I can have this solved.
Thank you,
Jorge
make all-recursive
make[1]: Entering directory '/home/operations/GRUB_Develpment/grub'
Making all in grub-core/gnulib
make[2]: Entering directory
'/home/operations/GRUB_Develpment/grub/grub-core/gnulib'
make all-recursive
make[3]: Entering directory
'/home/operations/GRUB_Develpment/grub/grub-core/gnulib'
make[4]: Entering directory
'/home/operations/GRUB_Develpment/grub/grub-core/gnulib'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory
'/home/operations/GRUB_Develpment/grub/grub-core/gnulib'
make[3]: Leaving directory
'/home/operations/GRUB_Develpment/grub/grub-core/gnulib'
make[2]: Leaving directory
'/home/operations/GRUB_Develpment/grub/grub-core/gnulib'
Making all in .
make[2]: Entering directory '/home/operations/GRUB_Develpment/grub'
make[2]: Leaving directory '/home/operations/GRUB_Develpment/grub'
Making all in grub-core
make[2]: Entering directory '/home/operations/GRUB_Develpment/grub/grub-core'
make all-am
make[3]: Entering directory '/home/operations/GRUB_Develpment/grub/grub-core'
gcc -DHAVE_CONFIG_H -I. -I.. -Wall -W -DGRUB_MACHINE_EFI=1
-DGRUB_MACHINE=ARM64_EFI -nostdinc -isystem
/usr/lib/gcc/x86_64-linux-gnu/4.9/include -I../include -I../include
-DGRUB_FILE=\"term/efi/serial.c\" -I. -I. -I.. -I.. -I../include -I../include
-I../grub-core/lib/libgcrypt-grub/src/ -D_FILE_OFFSET_BITS=64 -Os -Wall -W
-Wshadow -Wpointer-arith -Wundef -Wchar-subscripts -Wcomment
-Wdeprecated-declarations -Wdisabled-optimization -Wdiv-by-zero -Wfloat-equal
-Wformat-extra-args -Wformat-security -Wformat-y2k -Wimplicit
-Wimplicit-function-declaration -Wimplicit-int -Wmain -Wmissing-braces
-Wmissing-format-attribute -Wmultichar -Wparentheses -Wreturn-type
-Wsequence-point -Wshadow -Wsign-compare -Wswitch -Wtrigraphs -Wunknown-pragmas
-Wunused -Wunused-function -Wunused-label -Wunused-parameter -Wunused-value
-Wunused-variable -Wwrite-strings -Wnested-externs -Wstrict-prototypes -g
-Wredundant-decls -Wmissing-prototypes -Wmissing-declarations -Wcast-align
-Wextra -Wattributes -Wendif-labels -Winit-self -Wint-to-pointer-cast
-Winvalid-pch -Wmissing-field-initializers -Wnonnull -Woverflow -Wvla
-Wpointer-to-int-cast -Wstrict-aliasing -Wvariadic-macros
-Wvolatile-register-var -Wpointer-sign -Wmissing-include-dirs
-Wmissing-prototypes -Wmissing-declarations -Wformat=2 -freg-struct-return
-msoft-float -fno-dwarf2-cfi-asm -mno-stack-arg-probe
-fno-asynchronous-unwind-tables -fno-unwind-tables -Qn -fno-stack-protector
-Wtrampolines -Werror -mcmodel=large -ffreestanding -MT
term/efi/serial_module-serial.o -MD -MP -MF
term/efi/.deps-core/serial_module-serial.Tpo -c -o
term/efi/serial_module-serial.o `test -f 'term/efi/serial.c' || echo
'./'`term/efi/serial.c
In file included from term/efi/serial.c:29:0:
../include/grub/serial.h:25:25: fatal error: grub/cpu/io.h: No such file or
directory
#include <grub/cpu/io.h>
^
compilation terminated.
Makefile:36709: recipe for target 'term/efi/serial_module-serial.o' failed
make[3]: *** [term/efi/serial_module-serial.o] Error 1
make[3]: Leaving directory '/home/operations/GRUB_Develpment/grub/grub-core'
Makefile:23514: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/home/operations/GRUB_Develpment/grub/grub-core'
Makefile:10881: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/operations/GRUB_Develpment/grub'
Makefile:3107: recipe for target 'all' failed
make: *** [all] Error 2
_______________________________________________
Help-grub mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/help-grub