二十八亩地儿 发表于 2021-12-22 10:05:04

RV1126 Debug改普通串口后,系统启动变慢。不知道哪里耗时了

修改如下:
内核配置中取消:[ ] FIQ Mode Serial Debugger
设备树中:disable fiq_debugger。
                   &fiq_debugger {
                status = "disabled";        //okay改为disabled
        };
                   去掉console=ttyFIQ0
                           chosen {
                bootargs = "earlycon=uart8250,mmio32,0xff570000 ro root=PARTLABEL=rootfs rootfstype=ext4 rootwait overlayroot=device:dev=PARTLABEL=userdata,fstype=ext4,mkfs=1 cgroup_enable=memory swapaccount=1 snd_aloop.index=7";

//console=ttyFIQ0
                开启UART2
                &uart2 {
                dma-names = "tx", "rx";
                pinctrl-names = "default";
                pinctrl-0 = <&uart2m1_xfer>;
                status = "okay";
        };

板蓝根 发表于 2021-12-22 10:52:03

耗时多长了?,板子上有两盏led 灯,你可以尝试在 uboot kernel rootfs 控制一下这两盏灯看看板子启动在哪里耗时长

二十八亩地儿 发表于 2021-12-22 11:00:20

板蓝根 发表于 2021-12-22 10:52
耗时多长了?,板子上有两盏led 灯,你可以尝试在 uboot kernel rootfs 控制一下这两盏灯看看板子启动在哪 ...

我做了一个点亮LED启动脚本,不修改调试串口的时候,从复位到启动9S。修改之后25S左右。

修改之后的启动日志如下
DDR Version V1.05 20201214
DDR4, 328MHz
BW=32 Col=10 Bk=4 BG=2 CS0 Row=15 CS=1 Die BW=16 Size=1024MB
change to: 328MHz
change to: 528MHz
change to: 784MHz
change to: 924MHz(final freq)
out
U-Boot SPL board init
U-Boot SPL 2017.09() (Dec 22 2021 - 09:53:44)
unknown raw ID phN
unrecognized JEDEC id bytes: 00, 00, 00
Trying to boot from MMC2
MMC error: The cmd index is 1, ret is -110
Card did not respond to voltage select!
mmc_init: -95, time 16
spl: mmc init failed with error: -95
Trying to boot from MMC1
Magic is incorrect.
Error validating A/B metadata from disk. Resetting and writing new A/B metadata to disk.
SPL: A/B-slot: _a, successful: 0, tries-remain: 7
## Verified-boot: 0
## Checking optee 0x08400000 ... sha256+ OK
## Checking uboot 0x00400000 ... sha256+ OK
## Checking fdt 0x004b1cb0 ... sha256+ OK
Jumping to U-Boot(0x00400000) via OP-TEE(0x08400000)
Total: 206.324 ms

I/TC:
I/TC: cpu feature:0x0
I/TC: cpu_st=0xe0
I/TC: OP-TEE version: 3.6.0-319-g6aaba70b #36 Tue May 25 03:24:10 UTC 2021 arm
I/TC: Next entry point address: 0x00400000
I/TC: Initialized


U-Boot 2017.09() (Dec 22 2021 - 09:53:44 +0800)

Model: Rockchip RV1126 Evaluation Board
PreSerial: 2, raw, 0xff570000
DRAM:1021.7 MiB
Sysmem: init
Relocation Offset: 00000000, fdt: 3bcf9a98
Using default environment

dwmmc@ffc50000: 0, dwmmc@ffc60000: 1
Bootdev(atags): mmc 0
MMC0: HS200, 200Mhz
PartType: EFI
boot mode: None
DTB: rk-kernel.dtb
FIT: no signed, no conf required
HASH(c): OK
I2c0 speed: 400000Hz
PMIC:RK8090 (on=0x14, off=0x00)
vdd_npu_vepu 800000 uV
vdd_arm 800000 uV
io-domain: OK
Can't get crtc id, default set to id = 0
Model: Jinmuyu jmy942
Rockchip UBOOT DRM driver version: v1.0.1
Using display timing dts
Detailed mode clock 70000 kHz, flags
    H: 0800 0980 0990 1000
    V: 1280 1288 1292 1296
bus_format: 1009
final DSI-Link bandwidth: 500 Mbps x 4
CLK: (sync kernel. arm: enter 816000 KHz, init 816000 KHz, kernel 0N/A)
apll 816000 KHz
dpll 462000 KHz
gpll 1188000 KHz
cpll 500000 KHz
hpll 1400000 KHz
aclk_pdbus 500000 KHz
hclk_pdbus 198000 KHz
pclk_pdbus 99000 KHz
aclk_pdphp 297000 KHz
hclk_pdphp 198000 KHz
hclk_pdaudio 148500 KHz
hclk_pdcore 198000 KHz
pclk_pdpmu 99000 KHz
Net:   eth0: ethernet@ffc40000
Hit key to stop autoboot('CTRL+C'):0
## Booting FIT Image at 0x3acf8c80 with size 0x00dfde00
Fdt Ramdisk skip relocation
## Loading kernel from FIT Image at 3acf8c80 ...
   Using 'conf' configuration
optee api revision: 2.0
TEEC: Waring: Could not find security partition
## Verified-boot: 0
   Trying 'kernel' kernel subimage
   Description:unavailable
   Type:         Kernel Image
   Compression:uncompressed
   Data Start:   0x3ad11680
   Data Size:    5409784 Bytes = 5.2 MiB
   Architecture: ARM
   OS:         Linux
   Load Address: 0x02008000
   Entry Point:0x02008000
   Hash algo:    sha256
   Hash value:   97cf66c13093b892d4a88c308050cef0b2053c411f6c971122d09b80394f189d
   Verifying Hash Integrity ... sha256+ OK
## Loading ramdisk from FIT Image at 3acf8c80 ...
   Using 'conf' configuration
   Trying 'ramdisk' ramdisk subimage
   Description:unavailable
   Type:         RAMDisk Image
   Compression:uncompressed
   Data Start:   0x3b23a280
   Data Size:    9160505 Bytes = 8.7 MiB
   Architecture: ARM
   OS:         Linux
   Load Address: 0x0a200000
   Entry Point:unavailable
   Hash algo:    sha256
   Hash value:   34c8dbec64a0c800281419dccd445b0b6ff60dcb9c431584b823cc4088347bde
   Verifying Hash Integrity ... sha256+ OK
   Loading ramdisk from 0x3b23a280 to 0x0a200000
## Loading fdt from FIT Image at 3acf8c80 ...
   Using 'conf' configuration
   Trying 'fdt' fdt subimage
   Description:unavailable
   Type:         Flat Device Tree
   Compression:uncompressed
   Data Start:   0x3acf9480
   Data Size:    98597 Bytes = 96.3 KiB
   Architecture: ARM
   Load Address: 0x08300000
   Hash algo:    sha256
   Hash value:   74340bb788f7c6ab88c1e9c623303e5ec41898d656db40c42b56c00b769da475
   Verifying Hash Integrity ... sha256+ OK
   Loading fdt from 0x08300000 to 0x08300000
   Booting using the fdt blob at 0x08300000
   Loading Kernel Image from 0x3ad11680 to 0x02008000 ... OK
'reserved-memory' ramoops@8000000: addr=8000000 size=100000
   Using Device Tree in place at 08300000, end 0831b124
Adding bank: 0x00000000 - 0x08400000 (size: 0x08400000)
Adding bank: 0x08648000 - 0x40000000 (size: 0x379b8000)
Total: 1319.519 ms

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0xf00
[    0.000000] Linux version 4.19.111 (root@ubuntu) () (gcc version 6.3.1 20170404 (Linaro GCC 6.3-2017.05)) #2 SMP PREEMPT Fri Dec 17 15:13:55 CST 2021
[    0.000000] CPU: ARMv7 Processor revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: Jinmuyu jmy942
[    0.000000] earlycon: uart8250 at MMIO32 0xff570000 (options '')
[    0.000000] bootconsole enabled
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] Reserved memory: created CMA memory pool at 0x3f800000, size 8 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] Reserved memory: created CMA memory pool at 0x2dc00000, size 256 MiB
[    0.000000] OF: reserved mem: initialized node isp, compatible id shared-dma-pool
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.0 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.0
[    0.000000] percpu: Embedded 15 pages/cpu s31436 r8192 d21812 u61440
[    0.000000] Built 1 zonelists, mobility grouping on.Total pages: 259512
[    0.000000] Kernel command line: user_debug=31 storagemedia=emmc androidboot.storagemedia=emmc androidboot.mode=normalro rootwait earlycon=uart8250,mmio32,0xff570000 root=PARTLABEL=rootfs rootfstype=ext4 overlayroot=device:dev=PARTLABEL=userdata,fstype=ext4,mkfs=1 cgroup_enable=memory swapaccount=1 snd_aloop.index=7
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 743188K/1046240K available (7168K kernel code, 258K rwdata, 1688K rodata, 1024K init, 906K bss, 32716K reserved, 270336K cma-reserved, 0K highmem)
[    0.000000] Virtual kernel memory layout:
[    0.000000]   vector: 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]   fixmap: 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]   vmalloc : 0xf0800000 - 0xff800000   ( 240 MB)
[    0.000000]   lowmem: 0xb0000000 - 0xf0000000   (1024 MB)
[    0.000000]   pkmap   : 0xafe00000 - 0xb0000000   (   2 MB)
[    0.000000]   modules : 0xaf000000 - 0xafe00000   (14 MB)
[    0.000000]       .text : 0x(ptrval) - 0x(ptrval)   (8160 kB)
[    0.000000]       .init : 0x(ptrval) - 0x(ptrval)   (1024 kB)
[    0.000000]       .data : 0x(ptrval) - 0x(ptrval)   ( 259 kB)
[    0.000000]      .bss : 0x(ptrval) - 0x(ptrval)   ( 907 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000]Tasks RCU enabled.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] random: random: get_random_bytes called from start_kernel+0x328/0x4a8 with crng_init=0
[    0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (virt).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000009] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.008054] Switching to timer-based delay loop, resolution 41ns
[    0.015388] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=80000)
[    0.025706] pid_max: default: 4096 minimum: 301
[    0.030486] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.037167] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.045224] CPU: Testing write buffer coherency: ok
[    0.050968] /cpus/cpu@f00 missing clock-frequency property
[    0.056943] /cpus/cpu@f01 missing clock-frequency property
[    0.062494] /cpus/cpu@f02 missing clock-frequency property
[    0.068079] /cpus/cpu@f03 missing clock-frequency property
[    0.073683] CPU0: thread -1, cpu 0, socket 15, mpidr 80000f00
[    0.080195] Setting up static identity map for 0x100000 - 0x100060
[    0.086665] rcu: Hierarchical SRCU implementation.
[    0.092362] smp: Bringing up secondary CPUs ...
[    0.097867] CPU1: thread -1, cpu 1, socket 15, mpidr 80000f01
[    0.098869] CPU2: thread -1, cpu 2, socket 15, mpidr 80000f02
[    0.099808] CPU3: thread -1, cpu 3, socket 15, mpidr 80000f03
[    0.099941] smp: Brought up 1 node, 4 CPUs
[    0.122250] SMP: Total of 4 processors activated (192.00 BogoMIPS).
[    0.128648] CPU: All CPU(s) started in SVC mode.
[    0.134063] devtmpfs: initialized
[    0.164171] Unpacking initramfs...
[    0.171791] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    0.180725] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 6370867519511994 ns
[    0.191367] futex hash table entries: 16 (order: -2, 1024 bytes)
[    0.198040] pinctrl core: initialized pinctrl subsystem
[    0.204978] NET: Registered protocol family 16
[    0.210468] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.220369] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    0.229121] hw-breakpoint: maximum watchpoint size is 8 bytes.
[    0.237703] console enabled
[    0.241982] pstore: Registered ramoops as persistent store backend
[    0.248752] ramoops: attached 0x100000@0x8000000, ecc: 0/0
[    0.296860] cryptd: max_cpu_qlen set to 1000
[    0.302164] rockchip-pm rockchip-suspend: not set pwm-regulator-config
[    0.314784] rk_iommu ffb00f00.iommu: version = 1
[    0.320509] rk_iommu ffb90800.iommu: version = 1
[    0.326661] SCSI subsystem initialized
[    0.331089] usbcore: registered new interface driver usbfs
[    0.337063] usbcore: registered new interface driver hub
[    0.343108] usbcore: registered new device driver usb
[    0.348772] pps_core: LinuxPPS API ver. 1 registered
[    0.354177] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.364184] PTP clock support registered
[    0.370748] rockchip-cpuinfo cpuinfo: SoC            : 11260000
[    0.376247] rockchip-cpuinfo cpuinfo: Serial         : bd3159cb2b2adb77
[    0.383780] clocksource: Switched to clocksource arch_sys_counter
[    0.392919] NET: Registered protocol family 2
[    0.398691] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 6144 bytes)
[    0.407124] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
[    0.414952] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[    0.422165] TCP: Hash tables configured (established 8192 bind 8192)
[    0.429232] UDP hash table entries: 512 (order: 2, 16384 bytes)
[    0.435720] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[    0.442922] NET: Registered protocol family 1
[    0.448381] RPC: Registered named UNIX socket transport module.
[    0.454809] RPC: Registered udp transport module.
[    0.459993] RPC: Registered tcp transport module.
[    0.465101] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.473398] hw perfevents: enabled with armv7_cortex_a7 PMU driver, 5 counters available
[    0.484969] Initialise system trusted keyrings
[    0.490134] workingset: timestamp_bits=29 max_order=18 bucket_order=0
[    0.505205] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.512464] NFS: Registering the id_resolver key type
[    0.518042] Key type id_resolver registered
[    0.522629] Key type id_legacy registered
[    0.527038] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    0.534338] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[    0.545109] Key type asymmetric registered
[    0.549632] Asymmetric key parser 'x509' registered
[    0.555017] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
[    0.563105] io scheduler noop registered
[    0.567398] io scheduler deadline registered
[    0.572073] io scheduler cfq registered (default)
[    0.577241] io scheduler mq-deadline registered
[    0.582202] io scheduler kyber registered
[    0.586747] io scheduler bfq registered
[    0.594244] phy phy-ff4c0000.usb2-phy.1: Linked as a consumer to regulator.5
[    0.604218] phy phy-ff4c8000.usb2-phy.2: Linked as a consumer to regulator.4
[    0.615819] pwm-backlight backlight: backlight supply power not found, using dummy regulator
[    0.625040] pwm-backlight backlight: Linked as a consumer to regulator.0
[    0.632767] mpp_service mpp-srv: unknown mpp version for missing VCS info
[    0.640188] mpp_service mpp-srv: probe start
[    0.646369] iommu: Adding device ffb90400.vdpu to group 1
[    0.652351] mpp_vdpu2 ffb90400.vdpu: Linked as a consumer to ffb90800.iommu
[    0.660083] mpp_vdpu2 ffb90400.vdpu: probe device
[    0.665849] mpp_vdpu2 ffb90400.vdpu: reset_group->rw_sem_on=0
[    0.672192] mpp_vdpu2 ffb90400.vdpu: reset_group->rw_sem_on=0
[    0.678757] mpp_vdpu2 ffb90400.vdpu: probing finish
[    0.684749] iommu: Adding device ffb90000.vepu to group 1
[    0.690638] mpp_vepu2 ffb90000.vepu: Linked as a consumer to ffb90800.iommu
[    0.698320] mpp_vepu2 ffb90000.vepu: probe device
[    0.704053] mpp_vepu2 ffb90000.vepu: reset_group->rw_sem_on=0
[    0.710355] mpp_vepu2 ffb90000.vepu: reset_group->rw_sem_on=0
[    0.716923] mpp_vepu2 ffb90000.vepu: probing finish
[    0.722831] mpp_service mpp-srv: probe success
[    0.732837] dma-pl330 ff4e0000.dma-controller: Loaded driver for PL330 DMAC-241330
[    0.741124] dma-pl330 ff4e0000.dma-controller:       DBUFF-128x8bytes Num_Chans-8 Num_Peri-32 Num_Events-16
[    0.753464] rockchip-system-monitor rockchip-system-monitor: system monitor probe
[    0.762601] Serial: 8250/16550 driver, 6 ports, IRQ sharing disabled
[    0.770527] ff410000.serial: ttyS1 at MMIO 0xff410000 (irq = 30, base_baud = 1500000) is a 16550A
[    0.781174] ff560000.serial: ttyS0 at MMIO 0xff560000 (irq = 32, base_baud = 1500000) is a 16550A
[    0.791235] console enabled
[    0.836840] bootconsole disabled

二十八亩地儿 发表于 2021-12-22 11:14:06

板蓝根 发表于 2021-12-22 10:52
耗时多长了?,板子上有两盏led 灯,你可以尝试在 uboot kernel rootfs 控制一下这两盏灯看看板子启动在哪 ...

我在rcS文件中添加点灯脚本。#!/bin/sh


# Start all init scripts in /etc/init.d
# executing them in numerical order.
#
`echo 1 > /sys/devices/platform/leds/leds/jmy\:led1/brightness`      #-----   耗时20S

for i in /etc/init.d/S??* ;do

   # Ignore dangling symlinks (if any).
   [ ! -f "$i" ] && continue

   case "$i" in
        *.sh)
          # Source shell script for speed.
          (
                trap - INT QUIT TSTP
                set start
                . $i
          )
          ;;
        *)
          # No sh extension, so fork subprocess.
          $i start
          ;;
    esac
done

`echo 1 > /sys/devices/platform/leds/leds/jmy\:led2/brightness`    #-----   耗时23S
ifconfig eth0 192.168.0.126
route add default gw 192.168.0.1

./test.sh
页: [1]
查看完整版本: RV1126 Debug改普通串口后,系统启动变慢。不知道哪里耗时了