TI中文支持网
TI专业的中文技术问题搜集分享网站

AM335X如何加快UBI文件系统挂载时间?

Other Parts Discussed in Thread:TPS65217

使用AM335X板子,运行Linux系统,每次启动时,根据打印信息来看,都会卡在 "UBI: max. sequence number: xx",每次卡住5秒左右,之后系统就正常启动,完整的启动信息如下:

U-Boot SPL 2013.01.01 (Mar 10 2021 – 16:51:52)

U-Boot 2013.01.01 (Mar 10 2021 – 16:51:52)

I2C:   ready
DRAM:  512 MiB
WARNING: Caches not enabled
Configurou interrupcao
Configurou LCD
NAND:  1024 MiB
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
*** Warning – bad CRC, using default environment

Net:   <ethaddr> not set. Validating first E-fuse MAC
cpsw:0 is connected to cpsw.  Reconnecting to cpsw
cpsw
Hit any key to Login Boot:  0Booting from nand …

NAND read: device 0 offset 0x480000, size 0x500000
 5242880 bytes read: OK
## Booting kernel from Legacy Image at 80200000 …
   Image Name:   Linux-3.2.0
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3861968 Bytes = 3.7 MiB
   Load Address: 80008000
   Entry Point:  80008000
   Loading Kernel Image … OK
OK

Starting kernel …

Message Booting System —-
[    0.000000] Linux version 3.2.0 (haitianxiong@ubuntu) (gcc version 4.9.3 20150413 (prerelease) (Linaro GCC 4.9-2015.05) ) #89 Thu Mar 11 09:34:30 CST 2021
[    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine: am335xevm
[    0.000000] Memory policy: ECC disabled, Data cache writeback
[    0.000000] AM335X ES2.1 (sgx neon )
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 130048
[    0.000000] Kernel command line: console=ttyO0,115200n8 root=ubi0:rootfs rw ubi.mtd=7,4096 rootfstype=ubifs rootwait=1 screentype=R screensize=800×480-7 ethaddr=b0:7e:11:c0:bf:85 ethaddr1=b0:7e:11:c0:7
[    0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Memory: 512MB = 512MB total
[    0.000000] Memory: 511168k/511168k available, 13120k reserved, 0K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 – 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 – 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xe0800000 – 0xff000000   ( 488 MB)
[    0.000000]     lowmem  : 0xc0000000 – 0xe0000000   ( 512 MB)
[    0.000000]     modules : 0xbf000000 – 0xc0000000   (  16 MB)
[    0.000000]       .text : 0xc0008000 – 0xc0704000   (7152 kB)
[    0.000000]       .init : 0xc0704000 – 0xc079b000   ( 604 kB)
[    0.000000]       .data : 0xc079c000 – 0xc0827cc0   ( 560 kB)
[    0.000000]        .bss : 0xc0827ce4 – 0xc08611a8   ( 230 kB)
[    0.000000] NR_IRQS:396
[    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
[    0.000000] Total of 128 interrupts on 1 active controller
[    0.000000] OMAP clockevent source: GPTIMER2 at 24000000 Hz
[    0.000000] omap_dm_timer_switch_src: Switching to HW default clocksource(sys_clkin_ck) for timer1, this may impact timekeeping in low power state
[    0.000000] OMAP clocksource: GPTIMER1 at 24000000 Hz
[    0.000000] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956ms
[    0.000000] Console: colour dummy device 80×30
[    0.000171] Calibrating delay loop… 996.14 BogoMIPS (lpj=4980736)
[    0.087758] pid_max: default: 32768 minimum: 301
[    0.087853] Security Framework initialized
[    0.087939] Mount-cache hash table entries: 512
[    0.088272] CPU: Testing write buffer coherency: ok
[    0.088918] devtmpfs: initialized
[    0.107588] omap_hwmod: pruss: failed to hardreset
[    0.108541] print_constraints: dummy:[    0.108840] NET: Registered protocol family 16
[    0.110547] OMAP GPIO hardware version 0.1
[    0.112538] omap_mux_init: Add partition: #1: core, flags: 0
[    0.113965]  omap_i2c.1: alias fck already exists
[    0.114778]  omap_hsmmc.0: alias fck already exists
[    0.115144]  da8xx_lcdc.0: alias fck already exists
[    0.115359]  omap_i2c.2: alias fck already exists
[    0.116355]  d_can.0: alias fck already exists
[    0.117290]  omap2_mcspi.1: alias fck already exists
[    0.117455]  omap2_mcspi.2: alias fck already exists
[    0.117654]  edma.0: alias fck already exists
[    0.117670]  edma.0: alias fck already exists
[    0.117685]  edma.0: alias fck already exists
[    0.146174] bio: create slab <bio-0> at 0
[    0.148087] SCSI subsystem initialized
[    0.149659] usbcore: registered new interface driver usbfs
[    0.149907] usbcore: registered new interface driver hub
[    0.150067] usbcore: registered new device driver usb
[    0.150328] registerd cppi-dma Intr @ IRQ 17
[    0.150339] Cppi41 Init Done Qmgr-base(e087a000) dma-base(e0878000)
[    0.150346] Cppi41 Init Done
[    0.150368] musb-ti81xx musb-ti81xx: musb0, board_mode=0x11, plat_mode=0x1
[    0.150596] musb-ti81xx musb-ti81xx: musb1, board_mode=0x11, plat_mode=0x1
[    0.151473] omap_i2c omap_i2c.1: bus 1 rev2.4.0 at 100 kHz
[    0.153066] tps65217 1-0024: TPS65217 ID 0xe version 1.2
[    0.154938] print_constraints: DCDC1: 900 <–> 1800 mV at 1500 mV[    0.156813] print_constraints: DCDC2: 900 <–> 3300 mV at 1325 mV[    0.158652] print_constraints: DCDC3: 900 <–> 1500 mV at 1125 mV[    0.160499] print_constraints: LDO1: 1000 <–> 3300 mV at 1800 mV[    0.162347] print_constraints: LDO2: 900 <–> 3300 mV at 3300 mV[    0.164195] print_constraints: LDO3: 1800 <–> 3300 mV at 1800 mV[    0.166039] print_constraints: LDO4: 1800 <–> 3300 mV at 3300 mV[    0.177771] omap_i2c omap_i2c.2: bus 2 rev2.4.0 at 100 kHz
[    0.179794] Bluetooth: Core ver 2.16
[    0.179951] NET: Registered protocol family 31
[    0.179961] Bluetooth: HCI device and connection manager initialized
[    0.179975] Bluetooth: HCI socket layer initialized
[    0.179983] Bluetooth: L2CAP socket layer initialized
[    0.180005] Bluetooth: SCO socket layer initialized
[    0.180482] cfg80211: Calling CRDA to update world regulatory domain
[    0.180597] Switching to clocksource gp timer
[    0.194203] musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)
[    0.194380] musb-hdrc musb-hdrc.0: dma type: dma-cppi41
[    0.194644] MUSB0 controller's USBSS revision = 4ea20800
[    0.194673] musb0: Enabled SW babble control
[    0.195080] musb-hdrc musb-hdrc.0: MUSB HDRC host driver
[    0.195161] musb-hdrc musb-hdrc.0: new USB bus registered, assigned bus number 1
[    0.195287] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    0.195300] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.195310] usb usb1: Product: MUSB HDRC host driver
[    0.195318] usb usb1: Manufacturer: Linux 3.2.0 musb-hcd
[    0.195326] usb usb1: SerialNumber: musb-hdrc.0
[    0.196059] hub 1-0:1.0: USB hub found
[    0.196087] hub 1-0:1.0: 1 port detected
[    0.196572] musb-hdrc musb-hdrc.0: USB Host mode controller at e083e000 using DMA, IRQ 18
[    0.196730] musb-hdrc musb-hdrc.1: dma type: dma-cppi41
[    0.196978] MUSB1 controller's USBSS revision = 4ea20800
[    0.197004] musb1: Enabled SW babble control
[    0.197386] musb-hdrc musb-hdrc.1: MUSB HDRC host driver
[    0.197425] musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus number 2
[    0.197508] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
[    0.197519] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    0.197528] usb usb2: Product: MUSB HDRC host driver
[    0.197536] usb usb2: Manufacturer: Linux 3.2.0 musb-hcd
[    0.197544] usb usb2: SerialNumber: musb-hdrc.1
[    0.198214] hub 2-0:1.0: USB hub found
[    0.198237] hub 2-0:1.0: 1 port detected
[    0.198693] musb-hdrc musb-hdrc.1: USB Host mode controller at e084a800 using DMA, IRQ 19
[    0.199198] NET: Registered protocol family 2
[    0.199373] IP route cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.199685] TCP established hash table entries: 16384 (order: 5, 131072 bytes)
[    0.199902] TCP bind hash table entries: 16384 (order: 4, 65536 bytes)
[    0.200028] TCP: Hash tables configured (established 16384 bind 16384)
[    0.200038] TCP reno registered
[    0.200047] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.200074] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.200229] NET: Registered protocol family 1
[    0.200454] RPC: Registered named UNIX socket transport module.
[    0.200468] RPC: Registered udp transport module.
[    0.200475] RPC: Registered tcp transport module.
[    0.200481] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.200731] NetWinder Floating Point Emulator V0.97 (double precision)
[    0.200941] omap-gpmc omap-gpmc: GPMC revision 6.0
[    0.219356] VFS: Disk quotas dquot_6.5.2
[    0.219416] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.219886] msgmni has been set to 998
[    0.222528] alg: No test for stdrng (krng)
[    0.222589] io scheduler noop registered
[    0.222598] io scheduler deadline registered
[    0.222685] io scheduler cfq registered (default)
[    0.223976] da8xx_lcdc da8xx_lcdc.0: GLCD: Found NHD-7.0-ATXI#-T-1 panel
[    0.237648] Console: switching to colour frame buffer device 100×30
[    0.338333] omap_uart.0: ttyO0 at MMIO 0x44e09000 (irq = 72) is a OMAP UART0
[    1.107667] console [ttyO0] enabled
[    1.112066] omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
[    1.119886] omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
[    1.127684] omap_uart.3: ttyO3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3
[    1.135472] omap_uart.4: ttyO4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4
[    1.143240] omap_uart.5: ttyO5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5
[    1.158638] brd: module loaded
[    1.166069] loop: module loaded
[    1.169908] at24 1-0050: 32768 byte 24c256 EEPROM, writable, 1 bytes/write
[    1.179163] mtdoops: mtd device (mtddev=name/number) must be supplied
[    1.186435] omap2-nand driver initializing
[    1.190810] info->phys_base 8000000
[    1.194509] ONFI flash detected
[    1.197902] ONFI param page 0 valid
[    1.201570] NAND device: Manufacturer ID: 0x2c, Chip ID: 0x38 (Micron MT29F8G08ABABAWP)
[    1.209937] omap2-nand: detected x8 NAND flash[    1.214677] Page size 4096 Select ECC BCH16
[    1.219046] Nand ECC BCH16 HW
[    1.222400] Creating 8 MTD partitions on "omap2-nand.0":
[    1.227967] 0x000000000000-0x000000080000 : "SPL"
[    1.234149] 0x000000080000-0x000000100000 : "SPL.backup1"
[    1.240939] 0x000000100000-0x000000180000 : "SPL.backup2"
[    1.247637] 0x000000180000-0x000000200000 : "SPL.backup3"
[    1.254404] 0x000000200000-0x000000400000 : "U-Boot"
[    1.260828] 0x000000400000-0x000000480000 : "U-Boot Env"
[    1.267522] 0x000000480000-0x000000980000 : "Kernel"
[    1.274060] 0x000000980000-0x000040000000 : "File System"
[    1.332862] UBI: attaching mtd7 to ubi0
[    1.336883] UBI: physical eraseblock size:   524288 bytes (512 KiB)
[    1.343462] UBI: logical eraseblock size:    516096 bytes
[    1.349106] UBI: smallest flash I/O unit:    4096
[    1.354024] UBI: sub-page size:              1024
[    1.358940] UBI: VID header offset:          4096 (aligned 4096)
[    1.365221] UBI: data offset:                8192
[    1.451778] usb 2-1: new high-speed USB device number 2 using musb-hdrc
[    1.624045] usb 2-1: New USB device found, idVendor=0424, idProduct=2514
[    1.631067] usb 2-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    1.663001] hub 2-1:1.0: USB hub found
[    1.666987] hub 2-1:1.0: 4 ports detected
[    2.005123] usb 2-1.4: new high-speed USB device number 3 using musb-hdrc
[    2.175167] usb 2-1.4: New USB device found, idVendor=0bda, idProduct=b720
[    2.182369] usb 2-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    2.190011] usb 2-1.4: Product: 802.11n WLAN Adapter
[    2.195204] usb 2-1.4: Manufacturer: Realtek
[    2.199663] usb 2-1.4: SerialNumber: 00e04c000001
[    6.754576] UBI: max. sequence number:       14
[    6.778396] UBI: attached mtd7 to ubi0
[    6.782372] UBI: MTD device name:            "File System"
[    6.788108] UBI: MTD device size:            1014 MiB
[    6.793392] UBI: number of good PEBs:        2029
[    6.798303] UBI: number of bad PEBs:         0
[    6.802950] UBI: number of corrupted PEBs:   0
[    6.807590] UBI: max. allowed volumes:       128
[    6.812419] UBI: wear-leveling threshold:    4096
[    6.817330] UBI: number of internal volumes: 1
[    6.821975] UBI: number of user volumes:     1
[    6.826616] UBI: available PEBs:             0
[    6.831260] UBI: total number of reserved PEBs: 2029
[    6.836447] UBI: number of PEBs reserved for bad PEB handling: 20
[    6.842818] UBI: max/mean erase counter: 2/0
[    6.847276] UBI: image sequence number:  501158088
[    6.852360] UBI: background thread "ubi_bgt0d" started, PID 1158
[    6.859621] tun: Universal TUN/TAP device driver, 1.6
[    6.864926] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[    6.871633] CAN device driver interface
[    6.875639] CAN bus driver for Bosch D_CAN controller 1.0
[    6.882052] d_can d_can.0: device registered (irq=52, irq_obj=53)
[    6.930632] davinci_mdio davinci_mdio.0: davinci mdio revision 1.6
[    6.937100] davinci_mdio davinci_mdio.0: detected phy mask fffffffe
[    6.944480] davinci_mdio.0: probed
[    6.948037] davinci_mdio davinci_mdio.0: phy[0]: device 0:00, driver unknown
[    6.955558] RTL871X: module init start
[    6.959474] RTL871X: rtl8723bu v4.3.9.3_13200.20150106_BTCOEX20140929-5443
[    6.966673] RTL871X: build time: Mar  1 2021 10:28:32
[    6.971956] RTL871X: rtl8723bu BT-Coex version = BTCOEX20140929-5443
[    7.031951] RTL871X: rtw_ndev_init(wlan0)
[    7.036997] RTL871X: rtw_ndev_init(wlan1)
[    7.042299] usbcore: registered new interface driver rtl8723bu
[    7.048403] RTL871X: module init ret=0
[    7.052548] GobiNet: Quectel_Linux_GobiNet_SR01A02V16
[    7.057988] usbcore: registered new interface driver GobiNet
[    7.064156] usbcore: registered new interface driver cdc_acm
[    7.070070] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[    7.078606] usbcore: registered new interface driver usblp
[    7.084352] Initializing USB Mass Storage driver…
[    7.089686] usbcore: registered new interface driver usb-storage
[    7.095975] USB Mass Storage support registered.
[    7.101094] usbcore: registered new interface driver usbserial
[    7.107303] USB Serial support registered for generic
[    7.112808] usbcore: registered new interface driver usbserial_generic
[    7.119631] usbserial: USB Serial Driver core
[    7.124313] USB Serial support registered for GSM modem (1-port)
[    7.130941] usbcore: registered new interface driver option
[    7.136770] option: v0.7.2:USB Driver for GSM modems
[    7.142073] USB Serial support registered for pl2303
[    7.147409] usbcore: registered new interface driver pl2303
[    7.153248] pl2303: Prolific PL2303 USB to serial adaptor driver
[    7.159628] USB Serial support registered for Vizzini USB serial port
[    7.166486] usbcore: registered new interface driver vizzini
[    7.172414] USB Driver for Vizzini USB serial port: v.1.1
[    7.178572] mousedev: PS/2 mouse device common for all mice
[    7.184816] [wds tsc probe]x.min=140,x.max=3946,y.min=319,y.max=3865,x.inverted=0,y.inverted=1
[    7.194173] input: ti-tsc as /devices/platform/omap/ti_tscadc/tsc/input/input0
[    7.204298] rtc-rx8010 2-0032: Frequency stop was detected, probably due to a supply voltage drop
[    7.213601] rtc-rx8010 2-0032: Update timer was detected
[    7.219778] rtc-rx8010 2-0032: bad conditions detected, resetting date
[    7.232479] rtc-rx8010 2-0032: rtc core: registered rx8010 as rtc0
[    7.238942] rtc-rx8010 2-0032: IRQ 31 supplied
[    7.243858] i2c /dev entries driver
[    7.248080] Linux video capture interface: v2.00
[    7.253220] usbcore: registered new interface driver uvcvideo
[    7.259226] USB Video Class driver (1.1.1)
[    7.263744] lm75: probe of 2-0048 failed with error -121
[    7.501521] OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
[    7.509057] cpuidle: using governor ladder
[    7.513750] cpuidle: using governor menu
[    7.522963] usbcore: registered new interface driver usbhid
[    7.528805] usbhid: USB HID core driver
[    7.533395] tiadc tiadc: attached adc driver
[    7.537963] oprofile: hardware counters not available
[    7.543269] oprofile: using timer interrupt.
[    7.547891] nf_conntrack version 0.5.0 (7987 buckets, 31948 max)
[    7.554632] ip_tables: (C) 2000-2006 Netfilter Core Team
[    7.560287] TCP cubic registered
[    7.563782] NET: Registered protocol family 10
[    7.569181] ip6_tables: (C) 2000-2006 Netfilter Core Team
[    7.574952] IPv6 over IPv4 tunneling driver
[    7.580143] NET: Registered protocol family 17
[    7.584873] can: controller area network core (rev 20090105 abi 8)
[    7.591492] NET: Registered protocol family 29
[    7.596159] can: raw protocol (rev 20090105)
[    7.600636] can: broadcast manager protocol (rev 20090105 t)
[    7.606682] Bluetooth: RFCOMM TTY layer initialized
[    7.611807] Bluetooth: RFCOMM socket layer initialized
[    7.617176] Bluetooth: RFCOMM ver 1.11
[    7.621099] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    7.626650] Bluetooth: BNEP filters: protocol multicast
[    7.632116] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[    7.638655] Registering the dns_resolver key type
[    7.643660] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[    7.651690] ThumbEE CPU extension supported.
[    7.656211] mux: Failed to setup hwmod io irq -22
[    7.661760] Power Management for AM33XX family
[    7.666617] Trying to load am335x-pm-firmware.bin (60 secs timeout)
[    7.673323] Copied the M3 firmware to UMEM
[    7.677674] Cortex M3 Firmware Version = 0x181
[    7.686820] clock: disabling unused clocks to save power
[    7.694270] U-Boot MACID=b0:7e:11:c0:bf:85
[    7.699742] cpsw: U-Boot MACID = b0:7e:11:c0:bf:87
[    7.707034] rtc-rx8010 2-0032: setting system clock to 1970-01-01 00:00:00 UTC (0)
[    8.049633] UBIFS: recovery needed
[    8.832233] UBIFS: recovery completed
[    8.836087] UBIFS: mounted UBI device 0, volume 0, name "rootfs"
[    8.842383] UBIFS: file system size:   975421440 bytes (952560 KiB, 930 MiB, 1890 LEBs)
[    8.850758] UBIFS: journal size:       10452992 bytes (10208 KiB, 9 MiB, 21 LEBs)
[    8.858579] UBIFS: media format:       w4/r0 (latest is w4/r0)
[    8.864681] UBIFS: default compressor: lzo
[    8.868957] UBIFS: reserved for root:  0 bytes (0 KiB)
[    8.877083] VFS: Mounted root (ubifs filesystem) on device 0:14.
[    8.887373] devtmpfs: mounted
[    8.891303] Freeing init memory: 604K
INIT: version 2.88 booting
Starting udev
[   10.534151] udevd[1294]: starting version 182
[   11.746975] usbcore: registered new interface driver rtk_btusb
[   11.753192] rtk_btusb: btusb_open hdev->promisc ==0
[   11.863547] rtk_btcoex: Open BTCOEX
[   11.867291] rtk_btcoex: create_udpsocket: sock bind error, err = -99
[   14.209171] rtk_btcoex: Close BTCOEX
Tue Nov  1 10:00:31 UTC 2016
INIT: Entering runlevel: 5
starting powervr…[   15.956863] Disabling lock debugging due to kernel taint
done.

root@DJ-335X:~#root@DJ-335X:~#

从[    2.199663] usb 2-1.4: SerialNumber: 00e04c000001 一直到 [    6.754576] UBI: max. sequence number:       14

花了将近5秒,求解这个问题该如何解决?

Nancy Wang:

请参考以下链接提供的几种优化的方式,看一下是否有帮助。
DMA vs Non DMA Mode (PIO Mode)
Performance optimizations on NAND
Tweaking UBIFS
software-dl.ti.com/…/NAND.html

赞(0)
未经允许不得转载:TI中文支持网 » AM335X如何加快UBI文件系统挂载时间?
分享到: 更多 (0)