[U-Boot] [PATCH v4 0/9] LS2080ARDB: Enable EFI boot support
Prabhakar Kushwaha
prabhakar.kushwaha at nxp.com
Thu Jun 23 07:30:35 CEST 2016
Hi Alex,
> -----Original Message-----
> From: Alexander Graf [mailto:agraf at suse.de]
> Sent: Tuesday, June 21, 2016 4:37 AM
> To: u-boot at lists.denx.de
> Cc: york sun <york.sun at nxp.com>; Prabhakar Kushwaha
> <prabhakar.kushwaha at nxp.com>
> Subject: [PATCH v4 0/9] LS2080ARDB: Enable EFI boot support
>
> We now have EFI support in U-Boot which worked out of the box on all
> systems that I tried it on so far. Except for the LS2080ARDB. With this patch
> set I can successfully boot grub2 and Linux from there on such a system -
> even using PXE.
>
> v3 -> v4:
>
> - Add CONFIG_CMD_FS_GENERIC to defconfig
> - Move code into generic quiesce weak function
> - Exit device for real when going to Linux
> - Only apply DPL if we have something to apply
> - New: armv8: ls2080a: Declare spin tables as reserved for efi loader
> - New: efi_loader: Allow boards to implement get_time and reset_system
> - New: armv8: fsl-layerscape: Add support for efi_loader RTS reset
> - New: efi_loader: Declare secure memory as reserved
> - New: efi_loader: Allow bouncing for network
>
> Alexander Graf (9):
> ls2080: Exit dpaa only right before exiting U-Boot
> efi_loader: AArch64: Run EFI payloads in EL2 if U-Boot runs in EL3
> ls2080ardb: Reserve DP-DDR RAM
> ls2080ardb: Convert to distro boot
> armv8: ls2080a: Declare spin tables as reserved for efi loader
> efi_loader: Allow boards to implement get_time and reset_system
> armv8: fsl-layerscape: Add support for efi_loader RTS reset
> efi_loader: Declare secure memory as reserved
> efi_loader: Allow bouncing for network
>
> arch/arm/cpu/armv8/fsl-layerscape/cpu.c | 33 +++++++++-
> arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 6 ++
> arch/arm/include/asm/armv8/mmu.h | 19 +++---
> arch/arm/include/asm/u-boot-arm.h | 1 +
> arch/arm/lib/bootm.c | 7 +++
> board/freescale/ls2080a/ls2080a.c | 6 +-
> board/freescale/ls2080aqds/ls2080aqds.c | 11 ++--
> board/freescale/ls2080ardb/ls2080ardb.c | 20 ++++--
> cmd/bootefi.c | 15 +++++
> configs/ls2080a_emu_defconfig | 1 +
> configs/ls2080a_simu_defconfig | 1 +
> configs/ls2080aqds_SECURE_BOOT_defconfig | 1 +
> configs/ls2080aqds_defconfig | 1 +
> configs/ls2080aqds_nand_defconfig | 1 +
> configs/ls2080ardb_SECURE_BOOT_defconfig | 1 +
> configs/ls2080ardb_defconfig | 1 +
> configs/ls2080ardb_nand_defconfig | 1 +
> drivers/net/fsl-mc/mc.c | 24 +++++++-
> include/configs/ls2080ardb.h | 26 +++++++-
> include/efi_loader.h | 18 ++++++
> lib/efi_loader/efi_boottime.c | 2 +
> lib/efi_loader/efi_memory.c | 15 +++++
> lib/efi_loader/efi_net.c | 7 +++
> lib/efi_loader/efi_runtime.c | 101 +++++++++++++++++++++++++++-
> ---
I am testing your patch set on ls2080ardb.
Observation:-
1. Linux boot no more crashing with e1000#0, DPMAC5 at XSGMII. Even tried with default bootcmd.
2. Grub2 crash while booting :(
I have applied your patch on top of commit " 9f823615af919c6b89f0b80197f009f78299dcde"
Please find log below.
=> usb start
starting USB...
USB0: Register 200017f NbrPorts 2
Starting the controller
USB XHCI 1.00
scanning bus 0 for devices... 2 USB Device(s) found
USB1: Register 200017f NbrPorts 2
Starting the controller
USB XHCI 1.00
scanning bus 1 for devices... 1 USB Device(s) found
scanning usb for storage devices... 1 Storage Device(s) found
=> edit ethact
edit: DPMAC5 at xgmii
=> tftp 0x80000000 fsl-ls2080a-rdb.dtb; fdt addr 0x80000000; fdt boardsetup;tftp 0xa0000000 grubaa64.efi; bootefi a0000000 0x80000000
Using DPMAC5 at xgmii device
TFTP from server 192.168.1.1; our IP address is 192.168.1.34
Filename 'fsl-ls2080a-rdb.dtb'.
Load address: 0x80000000
Loading: ###
2 KiB/s
done
Bytes transferred = 10549 (2935 hex)
WARNING: could not set reg FDT_ERR_NOSPACE.
ERROR: could not set fsl,usb-erratum-a008751 for snps,dwc3: FDT_ERR_NOSPACE.
ERROR: could not set fsl,usb-erratum-a008751 for snps,dwc3: FDT_ERR_NOSPACE.
Using DPMAC5 at xgmii device
TFTP from server 192.168.1.1; our IP address is 192.168.1.34
Filename 'grubaa64.efi'.
Load address: 0xa0000000
Loading: #################################################################
#################################################################
###########################################
85.9 KiB/s
done
Bytes transferred = 884224 (d7e00 hex)
## Starting EFI application at 0xa0000000 ...
Scanning disks on scsi...
Scanning disks on usb...
Scanning disks on mmc...
MMC: no card present
MMC Device 1 not found
MMC Device 2 not found
MMC Device 3 not found
Found 4 disks
"Synchronous Abort" handler, esr 0x8a000000
ELR: 97ffeee9d5033fdf
LR: fff03d0c
x0 : 00000000fff87250 x1 : 00000000fff90720
x2 : 97ffeee9d5033fdf x3 : 00000000fff897a0
x4 : 0000000000000000 x5 : 00000000fff897b0
x6 : 0000000000000008 x7 : 0000000000000001
x8 : 0000000000000003 x9 : 000000000000000c
x10: 000000000a200023 x11: 0000000000000002
x12: 0000000000000002 x13: 00000000fff7ccd1
x14: 00000000fff7cccb x15: 00000000ffefeb50
x16: 00000000fff7ccc0 x17: 00000000fff7ccba
x18: 00000000ffcf7d78 x19: 00000000fff87250
x20: 0000000080000000 x21: 0000000000000003
x22: 00000000ffd1bf50 x23: 0000000000000003
x24: 00000000fff9e4a4 x25: 0000000000000000
x26: 0000000000000000 x27: 00000000fff87250
x28: 00000000fff87000 x29: 00000000fff03c40
Resetting CPU ...
### ERROR ### Please RESET the board ###
--prabhakar
More information about the U-Boot
mailing list