
Descript how to boot Kernel with Fast Boot and record booting messages here.
Signed-off-by: Rick Chen rick@andestech.com --- doc/board/AndesTech/ax25-ae350.rst | 140 +++++++++++++++++++++++++++++ 1 file changed, 140 insertions(+)
diff --git a/doc/board/AndesTech/ax25-ae350.rst b/doc/board/AndesTech/ax25-ae350.rst index b46f427f4b..01b7159117 100644 --- a/doc/board/AndesTech/ax25-ae350.rst +++ b/doc/board/AndesTech/ax25-ae350.rst @@ -522,3 +522,143 @@ Messages of U-Boot SPL boots Kernel on AE350 board nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
~ # + + +Fast-Boot on AE350 +------------------ +In hope of reducing the boot time, Andes U-Boot is implemented with a feature similar to +U-Boot FALCON mode. The boot flow using this feature, called Fast Boot, initializes memory +with the U-Boot SPL at the first stage, just like what a regular booting process +(i.e. Normal Boot) does in the beginning. Instead of jumping to the U-Boot proper (normal mode) +from OpenSBI before booting kernel, the Fast Boot process jumps directly to kernel to enabl +shorter boot time. + + +Fast-Boot flow +-------------- +U-Boot SPL --> openSBI --> Linux Kernel + +How to run Fast-Boot on AE350 +------------------------------- +1. Copy Kernel Image (arch/riscv/boot/Image) into U-Boot root directory. +2. make ae350_rv[32|64]_spl_fastboot_defconfig and build. +3. linux.itb will be generated here. + + +Messages of Fast-Boot Kernel on AE350 board +------------------------------------------- +U-Boot SPL 2023.01-rc1-00100-gf854773d8a-dirty (Dec 05 2022 - 13:54:20 +0800) +Trying to boot from RAM +[ 0.000000] OF: fdt: Ignoring memory range 0x0 - 0x1800000 +[ 0.000000] Linux version 5.4.192-18651-gf2d0487a5fb8-dirty (rick@atcsqa06) (gcc version 10.3.0 (2022-05-13_nds64le-linux-glibc-v5d-_experimental)) #2 SMP PREEMPT Thu Oct 13 10:39:07 CST 2022 +[ 0.000000] earlycon: sbi0 at I/O port 0x0 (options '') +[ 0.000000] printk: bootconsole [sbi0] enabled +[ 0.000000] initrd not found or empty - disabling initrd +[ 0.000000] Zone ranges: +[ 0.000000] DMA32 [mem 0x0000000001800000-0x000000003fffffff] +[ 0.000000] Normal empty +[ 0.000000] Movable zone start for each node +[ 0.000000] Early memory node ranges +[ 0.000000] node 0: [mem 0x0000000001800000-0x000000003fffffff] +[ 0.000000] Initmem setup node 0 [mem 0x0000000001800000-0x000000003fffffff] +[ 0.000000] SBI specification v0.3 detected +[ 0.000000] SBI implementation ID=0x1 Version=0x10000 +[ 0.000000] SBI v0.2 TIME extension detected +[ 0.000000] SBI v0.2 IPI extension detected +[ 0.000000] SBI v0.2 RFENCE extension detected +[ 0.000000] SBI SRST extension detected +[ 0.000000] SBI v0.2 HSM extension detected +[ 0.000000] percpu: Embedded 16 pages/cpu s28120 r8192 d29224 u65536 +[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 252500 +[ 0.000000] Kernel command line: console=ttyS0,38400n8 debug loglevel=7 earlycon=sbi +[ 0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear) +[ 0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear) +[ 0.000000] Sorting __ex_table... +[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off +[ 0.000000] Memory: 994544K/1024000K available (4565K kernel code, 290K rwdata, 1655K rodata, 7083K init, 189K bss, 29456K reserved, 0K cma-reserved) +[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 +[ 0.000000] rcu: Preemptible hierarchical RCU implementation. +[ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=8 to nr_cpu_ids=1. +[ 0.000000] Tasks RCU enabled. +[ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies. +[ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1 +[ 0.000000] NR_IRQS: 72, nr_irqs: 72, preallocated irqs: 0 +[ 0.000000] plic: mapped 71 interrupts with 1 handlers for 2 contexts. +[ 0.000000] riscv_timer_init_dt: Registering clocksource cpuid [0] hartid [0] +[ 0.000000] clocksource: riscv_clocksource: mask: 0xffffffffffffffff max_cycles: 0x1bacf917bf, max_idle_ns: 881590412290 ns +[ 0.000091] sched_clock: 64 bits at 60MHz, resolution 16ns, wraps every 4398046511098ns +[ 0.025459] Console: colour dummy device 40x30 +[ 0.039116] Calibrating delay loop (skipped), value calculated using timer frequency.. 120.00 BogoMIPS (lpj=600000) +[ 0.070377] pid_max: default: 32768 minimum: 301 +[ 0.086700] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear) +[ 0.109186] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear) +[ 0.160697] rcu: Hierarchical SRCU implementation. +[ 0.181706] smp: Bringing up secondary CPUs ... +[ 0.195674] smp: Brought up 1 node, 1 CPU +[ 0.213734] devtmpfs: initialized +[ 0.247406] random: get_random_u32 called from bucket_table_alloc.isra.0+0x74/0xb8 with crng_init=0 +[ 0.282986] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns +[ 0.312829] futex hash table entries: 256 (order: 2, 16384 bytes, linear) +[ 0.339998] NET: Registered protocol family 16 +[ 0.607366] v5dmac f0c00000.dma: Atcdmac300 DMA Controller (cpy,slave), 8 channels +[ 0.647193] Advanced Linux Sound Architecture Driver Initialized. +[ 0.674732] clocksource: Switched to clocksource riscv_clocksource +[ 0.872703] NET: Registered protocol family 2 +[ 0.889217] IP idents hash table entries: 16384 (order: 5, 131072 bytes, linear) +[ 0.932178] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear) +[ 0.958401] TCP established hash table entries: 8192 (order: 4, 65536 bytes, linear) +[ 0.983903] TCP bind hash table entries: 8192 (order: 5, 131072 bytes, linear) +[ 1.008992] TCP: Hash tables configured (established 8192 bind 8192) +[ 1.030897] UDP hash table entries: 512 (order: 2, 16384 bytes, linear) +[ 1.051467] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear) +[ 1.075246] NET: Registered protocol family 1 +[ 1.097767] RPC: Registered named UNIX socket transport module. +[ 1.116128] RPC: Registered udp transport module. +[ 1.130363] RPC: Registered tcp transport module. +[ 1.145122] RPC: Registered tcp NFSv4.1 backchannel transport module. +[ 8.899871] workingset: timestamp_bits=62 max_order=18 bucket_order=0 +[ 9.091511] NFS: Registering the id_resolver key type +[ 9.107526] Key type id_resolver registered +[ 9.120225] Key type id_legacy registered +[ 9.132533] nfs4filelayout_init: NFSv4 File Layout Driver Registering... +[ 9.152713] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering... +[ 9.383847] io scheduler mq-deadline registered +[ 9.398487] io scheduler kyber registered +[ 9.418464] ATCGPIO100 module inserted +[ 9.437279] faradayfb_main: faradayfb_probe() ... +[ 9.494962] Console: switching to colour frame buffer device 40x30 +[ 10.642421] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled +[ 10.689547] printk: console [ttyS0] disabled +[ 10.704113] f0300000.serial: ttyS0 at MMIO 0xf0300020 (irq = 9, base_baud = 1228800) is a 16550A +[ 10.731684] printk: console [ttyS0] enabled +[ 10.731684] printk: console [ttyS0] enabled +[ 10.757732] printk: bootconsole [sbi0] disabled +[ 10.757732] printk: bootconsole [sbi0] disabled +[ 10.957472] loop: module loaded +[ 10.980597] atcspi200 f0b00000.spi: Andes SPI driver. +[ 10.997877] tun: Universal TUN/TAP device driver, 1.6 +[ 11.016613] ftmac100: Loading version 0.2 ... +[ 11.040706] ftmac100 e0100000.mac eth0: irq 19, mapped at (____ptrval____) +[ 11.062414] ftmac100 e0100000.mac eth0: generated random MAC address 02:b3:ca:d8:86:9a +[ 11.089307] i2c /dev entries driver +[ 11.107427] atciic100 f0a00000.i2c: Andes i2c bus driver. +[ 11.138486] ftsdc010g f0e00000.mmc: using dma0chan0 for DMA transfers +[ 11.452749] ftsdc010g f0e00000.mmc: mmc0 - using hw SDIO IRQ +[ 11.608849] mmc0: new SDHC card at address 5048 +[ 11.652622] mmcblk0: mmc0:5048 SD16G 14.5 GiB +[ 11.681174] ftssp010 card registered! +[ 11.710825] mmcblk0: p1 p2 +[ 11.753339] NET: Registered protocol family 10 +[ 11.785663] Segment Routing with IPv6 +[ 11.798553] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver +[ 11.827247] NET: Registered protocol family 17 +[ 11.841395] NET: Registered protocol family 15 +[ 11.866431] ALSA device list: +[ 11.876385] #0: ftssp_ac97 controller +[ 12.011649] Freeing unused kernel memory: 7080K +[ 12.026235] This architecture does not have kernel memory protection. +[ 12.045926] Run /init as init process +Sysinit starting +Mon Sep 26 16:26:43 CST 2022 + +/root #