flake: configure u-boot to autoboot kernel #11

Merged
sb10q merged 1 commits from fsagbuya/nix-servo:uboot into master 2023-12-20 16:32:55 +08:00
Collaborator

Description

This patch aims to:

  1. Configure u-boot to automatically boot the not-os kernel.

zc706 device test log:

Xilinx First Stage Boot Loader 
Release 2019.2    Jan  1 1980-00:00:00
Devcfg driver initialized 
Silicon Version 3.1
Boot mode is SD
SD: rc= 0
SD Init Done 
Flash Base Address: 0xE0100000
Reboot status register: 0x60400000
Multiboot Register: 0x0000C000
Image Start Address: 0x00000000
Partition Header Offset:0x00000C80
Partition Count: 2
Partition Number: 1
Header Dump
Image Word Len: 0x0003F8A6
Data Word Len: 0x0003F8A6
Partition Word Len:0x0003F8A6
Load Addr: 0x04000000
Exec Addr: 0x04000000
Partition Start: 0x000075D0
Partition Attr: 0x00000010
Partition Checksum Offset: 0x00000000
Section Count: 0x00000001
Checksum: 0xF7F39DDC
Application
Handoff Address: 0x04000000
In FsblHookBeforeHandoff function 
SUCCESSFUL_HANDOFF
FSBL Status = 0x1


U-Boot 2023.07.02 (Jul 11 2023 - 15:20:44 +0000)

CPU:   Zynq 7z045
Silicon: v3.1
Model: Xilinx ZC706 board
DRAM:  ECC disabled 1 GiB
Core:  30 devices, 19 uclasses, devicetree: board
Flash: 0 Bytes
NAND:  0 MiB
MMC:   mmc@e0100000: 0
Loading Environment from FAT... *** Error - No Valid Environment Area found
*** Warning - bad env area, using default environment

In:    serial@e0001000
Out:   serial@e0001000
Err:   serial@e0001000
Net:   
ZYNQ GEM: e000b000, mdio bus e000b000, phyaddr 7, interface rgmii-id

Warning: ethernet@e000b000 (eth0) using random MAC address - d2:90:85:e4:d8:23
eth0: ethernet@e000b000
Hit any key to stop autoboot:  0 
14828096 bytes read in 937 ms (15.1 MiB/s)
17645 bytes read in 16 ms (1.1 MiB/s)
2098143 bytes read in 144 ms (13.9 MiB/s)
## Booting kernel from Legacy Image at 06400000 ...
   Image Name:   Linux-6.1.58
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    14828032 Bytes = 14.1 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 0a400000 ...
   Image Name:   
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    2098079 Bytes = 2 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 08000000
   Booting using the fdt blob at 0x8000000
Working FDT set to 8000000
   Loading Kernel Image
   Loading Ramdisk to 2fdff000, end 2ffff39f ... OK
   Loading Device Tree to 2fdf7000, end 2fdfe4ec ... OK
Working FDT set to 2fdf7000

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 6.1.58 (nixbld@localhost) (armv7l-unknown-linux-gnueabihf-gcc (GCC) 12.3.0, GNU ld (GNU Binutils) 2.40) #1 SMP Tue Dec  5 05:16:12 UTC 2023
[    0.000000] CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: Xilinx ZC706 board
...
### Description This patch aims to: 1. Configure `u-boot` to automatically boot the `not-os` kernel. zc706 device test log: ``` Xilinx First Stage Boot Loader Release 2019.2 Jan 1 1980-00:00:00 Devcfg driver initialized Silicon Version 3.1 Boot mode is SD SD: rc= 0 SD Init Done Flash Base Address: 0xE0100000 Reboot status register: 0x60400000 Multiboot Register: 0x0000C000 Image Start Address: 0x00000000 Partition Header Offset:0x00000C80 Partition Count: 2 Partition Number: 1 Header Dump Image Word Len: 0x0003F8A6 Data Word Len: 0x0003F8A6 Partition Word Len:0x0003F8A6 Load Addr: 0x04000000 Exec Addr: 0x04000000 Partition Start: 0x000075D0 Partition Attr: 0x00000010 Partition Checksum Offset: 0x00000000 Section Count: 0x00000001 Checksum: 0xF7F39DDC Application Handoff Address: 0x04000000 In FsblHookBeforeHandoff function SUCCESSFUL_HANDOFF FSBL Status = 0x1 U-Boot 2023.07.02 (Jul 11 2023 - 15:20:44 +0000) CPU: Zynq 7z045 Silicon: v3.1 Model: Xilinx ZC706 board DRAM: ECC disabled 1 GiB Core: 30 devices, 19 uclasses, devicetree: board Flash: 0 Bytes NAND: 0 MiB MMC: mmc@e0100000: 0 Loading Environment from FAT... *** Error - No Valid Environment Area found *** Warning - bad env area, using default environment In: serial@e0001000 Out: serial@e0001000 Err: serial@e0001000 Net: ZYNQ GEM: e000b000, mdio bus e000b000, phyaddr 7, interface rgmii-id Warning: ethernet@e000b000 (eth0) using random MAC address - d2:90:85:e4:d8:23 eth0: ethernet@e000b000 Hit any key to stop autoboot: 0 14828096 bytes read in 937 ms (15.1 MiB/s) 17645 bytes read in 16 ms (1.1 MiB/s) 2098143 bytes read in 144 ms (13.9 MiB/s) ## Booting kernel from Legacy Image at 06400000 ... Image Name: Linux-6.1.58 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 14828032 Bytes = 14.1 MiB Load Address: 00008000 Entry Point: 00008000 Verifying Checksum ... OK ## Loading init Ramdisk from Legacy Image at 0a400000 ... Image Name: Image Type: ARM Linux RAMDisk Image (gzip compressed) Data Size: 2098079 Bytes = 2 MiB Load Address: 00000000 Entry Point: 00000000 Verifying Checksum ... OK ## Flattened Device Tree blob at 08000000 Booting using the fdt blob at 0x8000000 Working FDT set to 8000000 Loading Kernel Image Loading Ramdisk to 2fdff000, end 2ffff39f ... OK Loading Device Tree to 2fdf7000, end 2fdfe4ec ... OK Working FDT set to 2fdf7000 Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 6.1.58 (nixbld@localhost) (armv7l-unknown-linux-gnueabihf-gcc (GCC) 12.3.0, GNU ld (GNU Binutils) 2.40) #1 SMP Tue Dec 5 05:16:12 UTC 2023 [ 0.000000] CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache [ 0.000000] OF: fdt: Machine model: Xilinx ZC706 board ...
fsagbuya added 1 commit 2023-12-18 15:45:58 +08:00
Signed-off-by: Florian Agbuya <fa@m-labs.ph>
sb10q merged commit 52675eefd4 into master 2023-12-20 16:32:55 +08:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: M-Labs/nix-servo#11
No description provided.