AnsweredAssumed Answered

Imx6QP :Why galcore spend a lot of time loading resources?

Question asked by zhuchao zhu on Mar 27, 2017
Latest reply on Mar 29, 2017 by zhuchao zhu

Hi , my friends

 

      I encountered a problem for optimizing boot time, I would like to cut useless modules to save startup time, but I found the Galcore module spend nearly 700ms loading resources ,and I felt incredible, so I wanted someone to tell me how to save this time.

      At the same time, I also want someone to give me some advice, how to cut uboot ,kernel and ramdisk start time, my boot log as follows:

 

[ 0.001] U-Boot 2015.04-gf33537e (Mar 27 2017 - 20:19:04)

[ 0.007] Board: MX6Q-PARIS3 revA
[ 0.010] I2C: ready
[ 0.012] DRAM: 2 GiB
MMC: FSL_SDHC: 0
[ 0.171] No MMC card found
[ 0.174] In: serial
[ 0.176] Out: serial
[ 0.178] Err: serial
[ 0.189] Normal Boot
[ 0.191] Hit any key to stop autoboot: 0
Loading Kernel Image ... OK
[ 0.375]
[ 0.376] Starting kernel ...

[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 4.1.15 (zhuchao@zhuchao-HP) (gcc version 5.2.0 (GCC) ) #2 SMP PREEMPT Tue Mar 28 10:30:24 CST 2017
[ 0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine model: Freescale i.MX6 Quad/Solo SABRE Automotive Board
[ 0.000000] iAuto Linux Crash Dump: reserved 2 MiB at 7fd00000
[ 0.000000] [MPU_MEMALLOC]:(func:mpu_reserve_memory)ipu phys=0x76500000
[ 0.000000] [MPU_MEMALLOC]:(func:mpu_reserve_memory)vpu phys=0x70100000
[ 0.000000] Reserved memory: created CMA memory pool at 0x48000000, size 320 MiB
[ 0.000000] Reserved memory: initialized node linux,cma, compatible id shared-dma-pool
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] Falcon BIOS is not found.
[ 0.000000] PERCPU: Embedded 11 pages/cpu @ccec6000 s16192 r8192 d20672 u45056
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 456236
[ 0.000000] Kernel command line: vmalloc=800M bootmode=0 submode=0 console=ttymxc0,115200 androidboot.console=ttymxc0 init=/init arm_freq=800 lpj=7905280
[ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Dentry cache hash table entries: 262144 (order: 8, 1048576 bytes)
[ 0.000000] Inode-cache hash table entries: 131072 (order: 7, 524288 bytes)
[ 0.000000] Memory: 1477784K/1836032K available (5143K kernel code, 192K rwdata, 1704K rodata, 416K init, 321K bss, 30568K reserved, 327680K cma-reserved, 574464K highmem)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000] vmalloc : 0xcd800000 - 0xff000000 ( 792 MB)
[ 0.000000] lowmem : 0x80000000 - 0xcd000000 (1232 MB)
[ 0.000000] pkmap : 0x7fe00000 - 0x80000000 ( 2 MB)
[ 0.000000] modules : 0x7f000000 - 0x7fe00000 ( 14 MB)
[ 0.000000] .text : 0x80008000 - 0x806b7f30 (6848 kB)
[ 0.000000] .init : 0x806b8000 - 0x80720000 ( 416 kB)
[ 0.000000] .data : 0x80720000 - 0x80750140 ( 193 kB)
[ 0.000000] .bss : 0x80753000 - 0x807a3774 ( 322 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] Additional per-CPU info printed with stalls.
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] L2C-310 erratum 769419 enabled
[ 0.000000] L2C-310 enabling early BRESP for Cortex-A9
[ 0.000000] L2C-310 full line of zeros enabled for Cortex-A9
[ 0.000000] L2C-310 ID prefetch enabled, offset 16 lines
[ 0.000000] L2C-310 dynamic clock gating enabled, standby mode enabled
[ 0.000000] L2C-310 cache controller enabled, 16 ways, 1024 kB
[ 0.000000] L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76070001
[ 0.000000] mxc_clocksource_init 3000000
[ 0.000000] Switching to timer-based delay loop, resolution 333ns
[ 0.000007] sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 715827882841ns
[ 0.000026] clocksource mxc_timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 637086815595 ns
[ 0.000946] Console: colour dummy device 80x30
[ 0.000966] Calibrating delay loop (skipped) preset value.. 1581.05 BogoMIPS (lpj=7905280)
[ 0.000982] pid_max: default: 32768 minimum: 301
[ 0.001093] Mount-cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.001107] Mountpoint-cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.001787] Initializing cgroup subsys blkio
[ 0.001806] Initializing cgroup subsys memory
[ 0.001841] Initializing cgroup subsys devices
[ 0.001857] Initializing cgroup subsys freezer
[ 0.001872] Initializing cgroup subsys perf_event
[ 0.001899] CPU: Testing write buffer coherency: ok
[ 0.002201] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.002298] Setting up static identity map for 0x10008280 - 0x100082d8
[ 0.080275] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.100243] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[ 0.120258] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[ 0.120335] Brought up 4 CPUs
[ 0.120361] SMP: Total of 4 processors activated (6324.22 BogoMIPS).
[ 0.120370] CPU: All CPU(s) started in SVC mode.
[ 0.129993] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
[ 0.130386] clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.148837] pinctrl core: initialized pinctrl subsystem
[ 0.149798] NET: Registered protocol family 16
[ 0.158139] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.159052] mxc_arch_reset_init: failed to get wdog clock
[ 0.159063] CPU identified as i.MX6QP, silicon rev 1.0
[ 0.200301] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
[ 0.200316] hw-breakpoint: maximum watchpoint size is 4 bytes.
[ 0.201081] imx6q-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver
[ 0.202216] imx-gpc 20dc000.gpc: no fsl,ldo-bypass found!
[ 0.232395] mxs-dma 110000.dma-apbh: initialized
[ 0.250312] SCSI subsystem initialized
[ 0.250600] usbcore: registered new interface driver usbfs
[ 0.250666] usbcore: registered new interface driver hub
[ 0.250777] usbcore: registered new device driver usb
[ 0.250949] 2000000.aips-bus:usbphy_nop1 supply vcc not found, using dummy regulator
[ 0.251064] 2000000.aips-bus:usbphy_nop2 supply vcc not found, using dummy regulator
[ 0.251590] Linux video capture interface: v2.00
[ 0.269755] imx-ipuv3 2400000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)
[ 0.272177] *** ipu_iauto_alloc_init: ipu_iauto_alloc_zone phys=0x76500000, virt=0xCE000000
[ 0.289751] imx-ipuv3 2800000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)
[ 0.291298] Galcore version 5.0.11.41671
[ 0.912672] Switched to clocksource mxc_timer1
[ 0.915894] NET: Registered protocol family 2
[ 0.916494] TCP established hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.916646] TCP bind hash table entries: 16384 (order: 5, 131072 bytes)
[ 0.916907] TCP: Hash tables configured (established 16384 bind 16384)
[ 0.917049] UDP hash table entries: 1024 (order: 3, 32768 bytes)
[ 0.917112] UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes)
[ 0.917352] NET: Registered protocol family 1
[ 0.917631] Unpacking initramfs...
[ 1.146761] Freeing initrd memory: 3204K (80e00000 - 81121000)
[ 1.147145] CPU PMU: Failed to parse /soc/pmu/interrupt-affinity[0]
[ 1.147211] hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available
[ 1.148742] Bus freq driver module loaded
[ 1.149873] futex hash table entries: 1024 (order: 4, 65536 bytes)
[ 1.159271] bounce: pool size: 64 pages
[ 1.159289] io scheduler noop registered
[ 1.159304] io scheduler deadline registered
[ 1.159461] io scheduler cfq registered (default)
[ 1.159490] LinuxCrashDump[Debug]: Init the linux crash dump driver
[ 1.159762] LinuxCrashDump[Debug]: Probe the linux crash dump driver
[ 1.159855] LinuxCrashDumpDebugModule: linux crash dump physical address=0x7fd00000,size=0x200000,virtual address=0xd7c00000
[ 1.160275] imx-weim 21b8000.weim: Driver registered.
[ 1.160724] ldb 2000000.aips-bus:ldb@020e0008: split mode
[ 1.160960] ldb 2000000.aips-bus:ldb@020e0008: split mode or dual mode, ignoring second output
[ 1.161647] mxc_sdc_fb fb@0: registered mxc display driver ldb
[ 1.202797] imx-ipuv3 2800000.ipu: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7)
[ 1.280154] Console: switching to colour frame buffer device 240x45
[ 1.371896] imx-sdma 20ec000.sdma: no iram assigned, using external mem
[ 1.374693] imx-sdma 20ec000.sdma: loaded firmware 3.3
[ 1.377383] imx-sdma 20ec000.sdma: initialized
[ 1.378198] 2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 22, base_baud = 5000000) is a IMX
[ 2.112913] console [ttymxc0] enabled
[ 2.118539] PDRD call pdrd_proc_init() --start
[ 2.123295] PDRD create proc file: pdrd_switch
[ 2.128010] PDRD call pdrd_proc_init() --end
[ 2.132948] [drm] Initialized drm 1.1.0 20060810
[ 2.137926] [drm] Initialized vivante 1.0.0 20120216 on minor 0
[ 2.144994] spi_imx 2018000.ecspi: probed
[ 2.149427] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 2.156007] ehci-mxc: Freescale On-Chip EHCI Host driver
[ 2.161699] usbcore: registered new interface driver usb-storage
[ 2.167808] usbcore: registered new interface driver usb_ehset_test
[ 2.175102] 2184800.usbmisc supply vbus-wakeup not found, using dummy regulator
[ 2.191313] ci_hdrc ci_hdrc.1: EHCI Host Controller
[ 2.196259] ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1
[ 2.222713] ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00
[ 2.228827] hub 1-0:1.0: USB hub found
[ 2.232627] hub 1-0:1.0: 1 port detected
[ 2.238097] snvs_rtc 20cc000.snvs:snvs-rtc-lp: rtc core: registered 20cc000.snvs:snvs-r as rtc0
[ 2.246951] i2c /dev entries driver
[ 2.251976] sdhci: Secure Digital Host Controller Interface driver
[ 2.258194] sdhci: Copyright(c) Pierre Ossman
[ 2.262569] sdhci-pltfm: SDHCI platform and OF driver helper
[ 2.268934] /soc/aips-bus@02100000/usdhc@02198000: voltage-ranges unspecified
[ 2.276149] sdhci-esdhc-imx 2198000.usdhc: assigned as wifi host
[ 2.284115] sdhci-esdhc-imx 2198000.usdhc: No vmmc regulator found
[ 2.290312] sdhci-esdhc-imx 2198000.usdhc: No vqmmc regulator found
[ 2.343739] mmc2: SDHCI controller on 2198000.usdhc [2198000.usdhc] using ADMA
[ 2.361717] /soc/aips-bus@02100000/usdhc@0219c000: voltage-ranges unspecified
[ 2.370958] sdhci-esdhc-imx 219c000.usdhc: Got CD GPIO
[ 2.377194] sdhci-esdhc-imx 219c000.usdhc: No vmmc regulator found
[ 2.383454] sdhci-esdhc-imx 219c000.usdhc: No vqmmc regulator found
[ 2.398706] mmc2: queuing unknown CIS tuple 0x80 (2 bytes)
[ 2.407292] mmc2: queuing unknown CIS tuple 0x80 (7 bytes)
[ 2.417289] mmc2: queuing unknown CIS tuple 0x80 (6 bytes)
[ 2.432835] mmc0: SDHCI controller on 219c000.usdhc [219c000.usdhc] using ADMA
[ 2.441188] mxc_vpu 2040000.vpu_fsl: VPU initialized
[ 2.447566] *** vpu_iauto_alloc_init: vpu_iauto_alloc_zone phys=0x70100000, virt=0xD8000000
[ 2.456448] mxc_vdoa 21e4000.vdoa: i.MX Video Data Order Adapter(VDOA) driver probed
[ 2.464697] ashmem: initialized
[ 2.468539] oprofile: using arm/armv7-ca9
[ 2.473431] NET: Registered protocol family 10
[ 2.478884] NET: Registered protocol family 17
[ 2.486653] snvs_rtc 20cc000.snvs:snvs-rtc-lp: setting system clock to 1970-01-01 00:00:00 UTC (0)
[ 2.506491] usb_otg_vbus: disabling
[ 2.511152] Freeing unused kernel memory: 416K (806b8000 - 80720000)
[ 2.520399] (II) init: command 'loglevel' r=0
[ 2.524845] init (1): /proc/1/oom_adj is deprecated, please use /proc/1/oom_score_adj instead.
[ 2.533503] (II) init: command 'write' r=0
[ 2.537632] (!!) init: starting 'ueventd'
[ 2.541930] (II) init: command 'start' r=0
[ 2.546422] (II) init: command 'async' r=0
[ 2.546650] (!!) init: + process(async system-mount) started
[ 2.546719] (II) init: + process(async system-mount) command 'setprio' r=0
[ 2.554780] mmc2: queuing unknown CIS tuple 0x91 (3 bytes)
[ 2.554823] mmc2: new high speed SDIO card at address 0001
[ 2.574497] (!!) init: processing action 0xac118 (early-init)
[ 2.580315] (EE) init: command 'insmod /lib/modules/softdog.ko #insmod /lib/modules/fuse.ko', r=-1
[ 2.589321] (!!) init: processing action 0xac788 (wait_for_coldboot_done)
[ 2.596140] (II) init: wait for /dev/.coldboot_done
[ 2.601041] (II) init: command 'wait_for_coldboot_done' r=0
[ 2.606679] (!!) init: processing action 0xac7d0 (property_init)
[ 2.612710] (II) init: property init
[ 2.616579] (II) init: command 'property_init' r=0
[ 2.621392] (!!) init: processing action 0xac818 (console_init)
[ 2.627509] (II) init: command 'console_init' r=0
[ 2.632236] (!!) init: processing action 0xac860 (set_init_properties)
[ 2.638062] mmc0: MAN_BKOPS_EN bit is not set
[ 2.643506] (II) init: command 'set_init_properties' r=0
[ 2.648836] (!!) init: processing action 0xaadc8 (init)
[ 2.654101] (II) init: command 'sysclktz' r=0
[ 2.656423] mmc0: new DDR MMC card at address 0001
[ 2.662783] mmcblk0: mmc0:0001 MMC08G 7.25 GiB
[ 2.662903] mmcblk0boot0: mmc0:0001 MMC08G partition 1 8.00 MiB
[ 2.663003] mmcblk0boot1: mmc0:0001 MMC08G partition 2 8.00 MiB
[ 2.663107] mmcblk0rpmb: mmc0:0001 MMC08G partition 3 128 KiB
[ 2.663958] mmcblk0: p1 p2 p3
[ 2.674374] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Opts: journal_checksum
[ 2.674407] (II) init: + process(async system-mount) command 'mount' r=0
[ 2.674629] (!!) init: + process(async system-mount) exited
[ 2.710123] (II) init: command 'export' r=0
[ 2.714338] (II) init: command 'export' r=0
[ 2.718528] (II) init: command 'export' r=0
[ 2.722735] (II) init: command 'export' r=0
[ 2.726934] (II) init: command 'export' r=0
[ 2.731129] (II) init: command 'export' r=0
[ 2.735340] (II) init: command 'export' r=0
[ 2.739559] (II) init: command 'symlink' r=0
[ 2.743875] (II) init: command 'symlink' r=0
[ 2.748187] (II) init: command 'mkdir' r=0
[ 2.752308] (II) init: command 'mkdir' r=0
[ 2.756453] (II) init: command 'mkdir' r=0
[ 2.760646] (II) init: command 'mount' r=0
[ 2.764781] (!!) init: processing action 0xac170 (init)
[ 2.770020] (II) init: command 'export' r=0
[ 2.774235] (II) init: command 'export' r=0
[ 2.778429] (!!) init: processing action 0xac1f0 (fs)
[ 2.783520] (!!) init: command(retry 3) 'check' begin
[ 2.788600] (!!) init: command(retry 3) 'check' r=0
[ 2.793543] (II) init: command 'mkdir' r=0
[ 2.797679] (II) init: command 'mkdir' r=0
[ 2.801802] (II) init: command 'mkdir' r=0
[ 2.805965] (II) init: command 'symlink' r=0
[ 2.810255] (II) init: command 'symlink' r=0
[ 2.814572] (II) init: command 'symlink' r=0
[ 2.818868] (II) init: command 'symlink' r=0
[ 2.823183] (II) init: command 'symlink' r=0
[ 2.827481] (II) init: command 'symlink' r=0
[ 2.831791] (II) init: command 'symlink' r=0
[ 2.836109] (II) init: command 'symlink' r=0
[ 2.840399] (II) init: command 'symlink' r=0
[ 2.844700] (!!) init: processing action 0xac8a8 (property_service_init)
[ 2.860433] (II) init: Created socket '/dev/socket/property_service' with mode '666', user '0', group '0'
[ 2.870062] (II) init: command 'property_service_init' r=0
[ 2.875581] (!!) init: processing action 0xac8f0 (signal_init)
[ 2.881477] (!!) init: waitpid returned pid 77, status = 00000000
[ 2.887607] (II) init: command 'signal_init' r=0
[ 2.892239] (!!) init: processing action 0xab038 (post-fs)
[ 2.897778] (II) init: command 'mount' r=0
[ 2.901890] (II) init: command 'class_start' r=0
[ 2.906537] (!!) init: processing action 0xac440 (post-fs)
[ 2.912312] (II) init: command 'async' r=0
[ 2.912550] (!!) init: + process(async data-mount) started
[ 2.912610] (II) init: + process(async data-mount) command 'setprio' r=0
[ 2.957792] EXT4-fs (mmcblk0p3): recovery complete
[ 2.975586] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: nodelalloc,journal_checksum
[ 2.981383] EXT4-fs (mmcblk0p2): recovery complete
[ 2.983208] EXT4-fs (mmcblk0IQp9e }�[ 2.983245] (II) init: command 'mount' r=0
[ 2.983260] (!!) init: processing action 0xab178 (boot)
[ 2.983292] (EE) init: command 'mkdir /data/system 0775 system system', r=-30
[ 2.983741] (II) init: command 'mkdir' r=0
[ 2.983772] (!!) init: starting 'hotplug_event'
[ 2.984106] (!!) init: starting 'mount'
[ 2.984558] (!!) init: starting 'inswifi'
[ 2.985887] (EE) init: cannot execve('/sbin/mount.sh'): Exec format error
[ 2.991599] (!!) init: starting 'dashboard'
[ 2.991963] (II) init: command 'class_start' r=0
[ 2.992056] (!!) init: waitpid returned pid 91, status = 00007f00
[ 2.992074] (!!) init: process 'mount', pid 91 exited
[ 2.992212] (!!) init: processing action 0xac558 (boot)
[ 2.992278] (II) init: command 'symlink' r=0
[ 2.992311] (II) init: command 'symlink' r=0
[ 2.992342] (II) init: command 'symlink' r=0
[ 2.992358] (!!) init: processing action 0xac938 (queue_propety_triggers)
[ 2.992373] (II) init: command 'queue_propety_triggers' r=0
[ 2.992388] (!!) init: processing action 0xab2e8 (property:ro.debuggable=1)
[ 2.992412] (!!) init: starting 'console'
[ 2.992814] (II) init: command 'start' r=0
[ 3.099486] (II) init: + process(async data-mount) command 'mount' r=0
[ 3.106409] (!!) init: + process(async data-mount) exited
[ 3.112370] (!!) init: waitpid returned pid 85, status = 00000000
uid=0 gid=1007@nutshell:/ # [ 3.211288] dhd_module_init in
[ 3.214775] Power-up adapter 'DHD generic adapter'
[ 3.249490] DHD: dongle ram size is set to 786432(orig 786432) at 0x180000
[ 3.256794] CFG80211-ERROR) wl_setup_wiphy : Registering Vendor80211)
[ 3.264774] CFG80211-ERROR) wl_event_handler :
[ 3.269651] dhd_deferred_work_init: work queue initialized
[ 3.275524] tsk Enter, tsk = 0xb47a143c
[ 3.603066] dhd_bus_init: enable 0x06, ready 0x06 (waited 0us)
[ 3.604772] random: nonblocking pool is initialized
[ 3.626203] Firmware up: op_mode=0x0005, MAC=90:b6:86:f1:ca:38
[ 3.655935] Firmware version = wl0: Feb 17 2016 12:06:31 version 6.37.39.36 (r614533)
[ 3.664897] dhd_wlfc_init(): successfully enabled bdcv2 tlv signaling, 79
[ 3.673206] dhd_wlfc_init(): wlfc_mode=0x0, ret=-23
[ 3.679650]
[ 3.679650] Dongle Host Driver, version 1.141.91 (r)
[ 3.679650] Compiled from
[ 3.690875] Register interface [wlan0] MAC: 90:b6:86:f1:ca:38
[ 3.690875]
[ 3.700562] (!!) init: waitpid returned pid 92, status = 00000000
[ 3.706760] (!!) init: process 'inswifi', pid 92 exited

 

Best Regards

Outcomes