Hi everyone,
I'm having some problems with my imx28 (again ^^).
1- The first problem is the boot time. I'm around 25 seconds and I need to achieve less then 4 seconds. Here's my boot log :
[ 0.000000] Linux version 4.0.4-fslc+g48548f7 (user@adress) (gcc version 4.9.2 (GCC) ) #1 Mon Sep 7 10:23:51 UTC 2015
[ 0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=0005317f
[ 0.000000] CPU: VIVT data cache, VIVT instruction cache
[ 0.000000] Machine model: Freescale i.MX28 Evaluation Kit
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 32512
[ 0.000000] Kernel command line: console=ttyAMA0,115200 root=/dev/mmcblk0p3 rw rootwait
[ 0.000000] PID hash table entries: 512 (order: -1, 2048 bytes)
[ 0.000000] Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
[ 0.000000] Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.000000] Memory: 113928K/131072K available (5111K kernel code, 281K rwdata, 2020K rodata, 248K init, 8170K bss, 17144K reserved, 0K cma-reserv)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000] vmalloc : 0xc8800000 - 0xff000000 ( 872 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xc8000000 ( 128 MB)
[ 0.000000] modules : 0xbf000000 - 0xc0000000 ( 16 MB)
[ 0.000000] .text : 0xc0008000 - 0xc06ff038 (7133 kB)
[ 0.000000] .init : 0xc0700000 - 0xc073e000 ( 248 kB)
[ 0.000000] .data : 0xc073e000 - 0xc0784500 ( 282 kB)
[ 0.000000] .bss : 0xc0784500 - 0xc0f7ed48 (8171 kB)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000048] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956969942ns
[ 0.001892] Console: colour dummy device 80x30
[ 0.002066] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
[ 0.002099] ... MAX_LOCKDEP_SUBCLASSES: 8
[ 0.002124] ... MAX_LOCK_DEPTH: 48
[ 0.002147] ... MAX_LOCKDEP_KEYS: 8191
[ 0.002168] ... CLASSHASH_SIZE: 4096
[ 0.002190] ... MAX_LOCKDEP_ENTRIES: 32768
[ 0.002212] ... MAX_LOCKDEP_CHAINS: 65536
[ 0.002233] ... CHAINHASH_SIZE: 32768
[ 0.002255] memory used by lock dependency info: 5167 kB
[ 0.002277] per task-struct memory footprint: 1152 bytes
[ 0.002415] Calibrating delay loop... 226.09 BogoMIPS (lpj=1130496)
[ 0.071252] pid_max: default: 32768 minimum: 301
[ 0.071945] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.072015] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.079302] CPU: Testing write buffer coherency: ok
[ 0.083187] Setting up static identity map for 0x404dcc10 - 0x404dcc68
[ 0.098305] devtmpfs: initialized
[ 0.106765] pinctrl core: initialized pinctrl subsystem
[ 0.184628] NET: Registered protocol family 16
[ 0.187091] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.302841] Serial: AMBA PL011 UART driver
[ 0.305705] 80074000.serial: ttyAMA0 at MMIO 0x80074000 (irq = 234, base_baud = 0) is a PL011 rev2
[ 0.590527] console [ttyAMA0] enabled
[ 0.669181] mxs-dma 80004000.dma-apbh: initialized
[ 0.688880] mxs-dma 80024000.dma-apbx: initialized
[ 0.713411] SCSI subsystem initialized
[ 0.719913] usbcore: registered new interface driver usbfs
[ 0.726020] usbcore: registered new interface driver hub
[ 0.732111] usbcore: registered new device driver usb
[ 0.746103] pps_core: LinuxPPS API ver. 1 registered
[ 0.751121] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.760637] PTP clock support registered
[ 0.767724] Advanced Linux Sound Architecture Driver Initialized.
[ 0.781838] Switched to clocksource mxs_timer
[ 1.165139] NET: Registered protocol family 2
[ 1.174744] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[ 1.182281] TCP bind hash table entries: 1024 (order: 3, 36864 bytes)
[ 1.189684] TCP: Hash tables configured (established 1024 bind 1024)
[ 1.197816] TCP: reno registered
[ 1.201165] UDP hash table entries: 256 (order: 2, 20480 bytes)
[ 1.207769] UDP-Lite hash table entries: 256 (order: 2, 20480 bytes)
[ 1.216617] NET: Registered protocol family 1
[ 1.224600] RPC: Registered named UNIX socket transport module.
[ 1.230590] RPC: Registered udp transport module.
[ 1.235475] RPC: Registered tcp transport module.
[ 1.240231] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 1.256496] futex hash table entries: 256 (order: 1, 11264 bytes)
[ 1.381170] NFS: Registering the id_resolver key type
[ 1.387577] Key type id_resolver registered
[ 1.391959] Key type id_legacy registered
[ 1.396726] jffs2: version 2.2. (NAND) �© 2001-2006 Red Hat, Inc.
[ 1.421463] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249)
[ 1.429777] io scheduler noop registered (default)
[ 1.441133] backlight supply power not found, using dummy regulator
[ 1.485549] Console: switching to colour frame buffer device 100x30
[ 1.508979] mxsfb 80030000.lcdif: initialized
[ 2.122211] uart-pl011 80074000.serial: no DMA platform data
[ 2.129937] 80070000.serial: ttyAPP3 at MMIO 0x80070000 (irq = 233, base_baud = 1500000) is a 80070000.serial
[ 2.142922] mxs-auart 80070000.serial: Found APPUART 3.1.0
[ 2.149908] at24 0-0051: 4096 byte 24c32 EEPROM, writable, 32 bytes/write
[ 2.193404] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xf1
[ 2.199815] nand: Micron MT29F1G08ABAEAWP
[ 2.203968] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[ 2.211980] Scanning device for bad blocks
[ 2.691187] gpmi-nand 8000c000.gpmi-nand: driver registered.
[ 2.835389] libphy: fec_enet_mii_bus: probed
[ 2.845966] 800f4000.ethernet supply phy not found, using dummy regulator
[ 2.860471] usbcore: registered new interface driver asix
[ 2.866881] usbcore: registered new interface driver ax88179_178a
[ 2.873645] usbcore: registered new interface driver cdc_ether
[ 2.880161] usbcore: registered new interface driver smsc95xx
[ 2.886565] usbcore: registered new interface driver net1080
[ 2.892879] usbcore: registered new interface driver cdc_subset
[ 2.899314] usbcore: registered new interface driver zaurus
[ 2.905875] usbcore: registered new interface driver cdc_ncm
[ 2.911627] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 2.919037] usbcore: registered new interface driver usb-storage
[ 2.952396] ci_hdrc ci_hdrc.1: EHCI Host Controller
[ 2.958265] ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1
[ 2.982163] ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00
[ 3.002985] hub 1-0:1.0: USB hub found
[ 3.007308] hub 1-0:1.0: 1 port detected
[ 3.025872] mousedev: PS/2 mouse device common for all mice
[ 3.037749] stmp3xxx-rtc 80056000.rtc: rtc core: registered 80056000.rtc as rtc0
[ 3.047002] i2c /dev entries driver
[ 3.061431] stmp3xxx_rtc_wdt stmp3xxx_rtc_wdt: initialized watchdog with heartbeat 19s
[ 3.070176] Driver 'mmcblk' needs updating - please use bus_type methods
[ 3.080625] mxs-mmc 80010000.ssp: Got WP GPIO
[ 3.122149] mxs-mmc 80010000.ssp: initialized
[ 3.157460] usbcore: registered new interface driver usbhid
[ 3.163249] usbhid: USB HID core driver
[ 3.177558] input: mxs-lradc as /devices/soc0/80000000.apb/80040000.apbx/80050000.lradc/input/input0
[ 3.212743] sgtl5000 0-000a: Failed to get mclock: -517
[ 3.219947] i2c 0-000a: Driver sgtl5000 requests probe deferral
[ 3.234314] mxs-sgtl5000 sound: ASoC: CODEC DAI sgtl5000 not registered
[ 3.241276] mxs-sgtl5000 sound: snd_soc_register_card failed (-517)
[ 3.248115] platform sound: Driver mxs-sgtl5000 requests probe deferral
[ 3.256465] TCP: cubic registered
[ 3.259904] NET: Registered protocol family 17
[ 3.265953] Key type dns_resolver registered
[ 3.280727] registered taskstats version 1
[ 3.288902] mmc0: new high speed SDHC card at address e624
[ 3.308456] sgtl5000 0-000a: sgtl5000 revision 0x11
[ 3.314644] mmcblk0: mmc0:e624 SS04G 3.69 GiB
[ 3.348697] mmcblk0: p1 p2 p3
[ 3.369576] sgtl5000 0-000a: Using internal LDO instead of VDDD
[ 3.398503] mxs-sgtl5000 sound: sgtl5000 <-> 80042000.saif mapping ok
[ 3.407194] mxs-sgtl5000 sound: sgtl5000 <-> 80046000.saif mapping ok
[ 3.435091] stmp3xxx-rtc 80056000.rtc: setting system clock to 2015-09-07 11:02:28 UTC (1441623748)
[ 3.486099] can-3v3: disabling
[ 3.489251] usb0_vbus: disabling
[ 3.493076] ALSA device list:
[ 3.496093] #0: mxs_sgtl5000
�[ 3.522333] kjournald starting. Commit interval 5 seconds
[ 3.533060] EXT3-fs (mmcblk0p3): using internal journal
[ 3.538354] EXT3-fs (mmcblk0p3): mounted filesystem with ordered data mode
[ 3.545725] VFS: Mounted root (ext3 filesystem) on device 179:3.
[ 3.557450] devtmpfs: mounted
[ 3.562637] Freeing unused kernel memory: 248K (c0700000 - c073e000)
INIT: version 2.88 booting
Starting udev
[ 6.127034] udevd[77]: starting version 182
[ 9.355162] random: dd urandom read with 79 bits of entropy available
INIT: Entering runlevel: 5
Configuring network interfaces... [ 11.527838] fec 800f0000.ethernet eth0: Freescale FEC PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=800f0)
udhcpc (v1.23.2) started
Sending discover...
Sending discover...
Sending discover...
No lease, forking to background
done.
Starting syslogd/klogd: done
The red text takes most of the boot time. It seems to be a udev and a network issue. I don't need a network interface or the eth0 driver.
Any Idea about how to fix the udev start ? Maybe it's related to the device tree ? And how to remove the configuring network interface from tho boot routine ?
2- I'm trying to use a GSM board with the USB interface of the IMX. The problem is that when I plug the GSM board on the "Usb host" of the imx, I receive the message :
usb 1-1: new high-speed USB device number 0 using ci_hdrc
root@vubox-mockup:/dev# lsusb
Bus 001 Device 004: ID 1519:0020 Comneon HSIC Device
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
But there's nothing on /dev/ttyUSBx. And when I lunch "top", I find a "/dev/udev" process going on. Again, it may be related to the device tree ?
I don't know if the long time taken by udev to start is directly connected to the USB issue but, I do need to find my GSM board on /dev/ttyUSBx and to boot in less then 4 seconds...
Thank you !
NB : Here the USB driver of my GSM board Sierra Wireless - Support Center
And a documentation : AirPrime_HL_Series_Development_Kit AirPrime HL 8548
NB2: I'm using Yocto :-)
It's ok for the "Configuring network interfaces" ! I used a .bbappend in my yocto sources to disable the dhcp task.
It's ok for the USB issue too, I just needed the USB_ACM driver on my imx28.
Thank you :smileyhappy:
Any idea about the udev long time booting ?
please try to add ip=none in bootargs.
for the udev, I think you can find the 'udev' in your filesystem. so you can stop the udev running at the beginning.
for example:
under /etc/, type ' find . -type f -exec grep -H udev {} \; '