This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3352 custom board does not find the filesystem which is visible in u-boot

Other Parts Discussed in Thread: AM3352

Dear Support,

    I have an AM3352 custom board which has a SD card on port 0 and a eMMC on port 1 (as in the beaglebone black).

The mmc 0 is partitioned as follows:

Partition Map for MMC device 0  --   Partition Type: DOS

Part    Start Sector    Num Sectors     UUID            Type
  1     63              144522          00000000-01     0c Boot
  2     160650          3743145         00000000-02     83

I am not able to boot the kernel from SD card since the filesystem is not found and I get:

[    2.662186] Please append a correct "root=" boot option; here are the available partitions:
[    2.671052] b300         3776512 mmcblk0  driver: mmcblk
[    2.676685]   b301         3774447 mmcblk0p1 fc4854ef-8d93-ec43-bdef-11bd350d61d6
[    2.684586] b310           16384 mmcblk0boot1  (driver?)
[    2.690185] b308           16384 mmcblk0boot0  (driver?)
[    2.695799] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,2)

The SD card has two partitions, one for MLO, u-boot and zImage an the second ext3 partition for the rootfs.

I am able to list files of the rootfs from u-boot.

U-Boot# ls mmc 0:2
<DIR>       4096 .
<DIR>       4096 ..
<DIR>       4096 tmp
<DIR>       4096 srv
<DIR>       4096 var
<DIR>       4096 lib
<DIR>       4096 proc
<DIR>       4096 run
<DIR>       4096 mnt
<DIR>       4096 media
<DIR>       4096 boot
<DIR>       4096 dev
<DIR>       4096 bin
<DIR>       4096 usr
<DIR>       4096 etc
<DIR>       4096 sbin
<DIR>       4096 home
<DIR>       4096 sys


The kernel support the ext3 filesystem.

I'am going crazy since I don't understand the reason since the filesystem is not seen by the kernel.

Below the environment and the boot messages until the kernel hangs.

Thank you in advance for the support!

U-Boot SPL 2014.07-00107-gd28f2b9-dirty (Jun 30 2015 - 17:04:05)
Ermes DDR3 Init.
Using ERMES ST452 Definitions 
Ermes PinMux Init.
Using ERMES ST452 Definitions 
Configure pinmux for ST452.Pinmux Done.
Ermes enable VTT for SDRAM.
Using ERMES ST452 Definitions 
enablig VTT...
done
SDRAM init done
Ermes Board Init.
Using ERMES ST452 Definitions 
reading args
spl_load_image_fat_os: error reading image args, err - -1
reading u-boot.img
reading u-boot.img


U-Boot 2014.07-00107-gd28f2b9-dirty (Jun 30 2015 - 17:04:05)

I2C:   ready
DRAM:  256 MiB
NAND:  0 MiB
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
reading uboot.env
Ermes Board Late Init.
Using ERMES ST452 Definitions 
Net:   Ermes ETH Init.
Using ERMES ST452 Definitions 
ST452 ETH setup.
Ermes ETH Init Done.
cpsw, usb_ether
Hit any key to stop autoboot:  0 
U-Boot# printenv
arch=arm
baudrate=115200
board=am335x
board_name=A3352_ER
board_rev=M
boot_fdt=try
bootargs=console=ttyO0,115200n8 root=ubi0:rootfs rw ubi.mtd=NAND.file-system,2048 rootfstype=ubifs rootwait=1
bootcmd=run findfdt; run mmcboot;setenv mmcdev 1; setenv bootpart 1:2; run mmcboot;run nandboot;
bootcount=1
bootdelay=1
bootenv=uEnv.txt
bootfile=zImage
bootm_size=0x10000000
bootpart=0:1
console=ttyO0,115200n8
cpu=armv7
dfu_alt_info_emmc=rawemmc raw 0 3751936;boot part 1 1;rootfs part 1 2;MLO fat 1 1;MLO.raw raw 0x100 0x100;u-boot.img.raw raw 0x300 0x1
dfu_alt_info_mmc=boot part 0 1;rootfs part 0 2;MLO fat 0 1;MLO.raw raw 0x100 0x100;u-boot.img.raw raw 0x300 0x400;spl-os-args.raw raw1
dfu_alt_info_nand=SPL part 0 1;SPL.backup1 part 0 2;SPL.backup2 part 0 3;SPL.backup3 part 0 4;u-boot part 0 5;u-boot-spl-os part 0 6;9
dfu_alt_info_ram=kernel ram 0x80200000 0xD80000;fdt ram 0x80F80000 0x80000;ramdisk ram 0x81000000 0x4000000
eth1addr=68:c9:0b:2e:62:42
ethact=cpsw
ethaddr=08:11:23:32:12:77
fdt_addr_r=0x88000000
fdtaddr=0x80F80000
fdtboot=run mmc_args; run mmcargs; bootz ${loadaddr} - ${fdtaddr}
fdtfile=am335x-ermes.dtb
filesize=24f
findfdt=if test $board_name = A335BONE; then setenv fdtfile am335x-bone.dtb; fi; if test $board_name = A335BNLT; then setenv fdtfile  
gatewayip=192.168.0.1
importbootenv=echo Importing environment from mmc ...; env import -t -r $loadaddr $filesize
ipaddr=192.168.0.220
kernel_addr_r=0x82000000
loadaddr=0x80007fc0
loadbootenv=load mmc ${mmcdev} ${loadaddr} ${bootenv}
loadfdt=fatload mmc 0:1 ${fdtaddr} ${fdtfile}
loadimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile}
loadramdisk=load mmc ${mmcdev} ${rdaddr} ramdisk.gz
loaduimage=fatload mmc 0:1 ${loadaddr} ${bootfile}
mmc_args=setenv bootargs console=${console} ${optargs} root=${mmcroot} rootfstype=${mmcrootfstype}
mmcargs=setenv bootargs console=${console} ${optargs} root=${mmcroot} rootfstype=${mmcrootfstype}
mmcboot=mmc dev ${mmcdev}; if mmc rescan; then echo SD/MMC found on device ${mmcdev};if run loadbootenv; then echo Loaded environment;
mmcdev=1
mmcloados=run mmcargs; if test ${boot_fdt} = yes || test ${boot_fdt} = try; then if run loadfdt; then bootz ${loadaddr} - ${fdtaddr};;
mmcroot=/dev/mmcblk0p2 rw
mmcrootfstype=ext3 rootwait
mtdids=nand0=nand.0
mtdparts=mtdparts=nand.0:128k(NAND.SPL),128k(NAND.SPL.backup1),128k(NAND.SPL.backup2),128k(NAND.SPL.backup3),256k(NAND.u-boot-spl-os))
nandargs=setenv bootargs console=${console} ${optargs} root=${nandroot} rootfstype=${nandrootfstype}
nandboot=echo Booting from nand ...; run nandargs; nand read ${fdtaddr} NAND.u-boot-spl-os; nand read ${loadaddr} NAND.kernel; bootz }
nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,2048
nandrootfstype=ubifs rootwait=1
netargs=setenv bootargs console=${console} ${optargs} root=/dev/nfs nfsroot=${serverip}:${rootpath},${nfsopts} rw ip=dhcp
netboot=echo Booting from network ...; setenv autoload no; dhcp; tftp ${loadaddr} ${bootfile}; tftp ${fdtaddr} ${fdtfile}; run netarg}
netmask=255.255.255.0
nfsopts=nolock
partitions=uuid_disk=${uuid_gpt_disk};name=rootfs,start=2MiB,size=-,uuid=${uuid_gpt_rootfs}
ramargs=setenv bootargs console=${console} ${optargs} root=${ramroot} rootfstype=${ramrootfstype}
ramboot=echo Booting from ramdisk ...; run ramargs; bootz ${loadaddr} ${rdaddr} ${fdtaddr}
ramdisk_addr_r=0x88080000
ramroot=/dev/ram0 rw
ramrootfstype=ext2
rdaddr=0x88080000
rootpath=/export/rootfs
serverip=192.168.0.1
soc=am33xx
spiargs=setenv bootargs console=${console} ${optargs} root=${spiroot} rootfstype=${spirootfstype}
spiboot=echo Booting from spi ...; run spiargs; sf probe ${spibusno}:0; sf read ${loadaddr} ${spisrcaddr} ${spiimgsize}; bootz ${load}
spibusno=0
spiimgsize=0x362000
spiroot=/dev/mtdblock4 rw
spirootfstype=jffs2
spisrcaddr=0xe0000
static_ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}::off
stderr=serial
stdin=serial
stdout=serial
uenvcmd=mmc rescan; run loaduimage; run loadfdt; run fdtboot
usbnet_devaddr=68:c9:0b:2e:62:42
uuid_gpt_disk=5a6ac7df-04b5-418b-ab71-f08e29480f0c
uuid_gpt_rootfs=ef5448fc-938d-43ec-bdef-11bd350d61d6
vendor=ti
ver=U-Boot 2014.07-00107-gd28f2b9-dirty (Jun 30 2015 - 17:04:05)

Environment size: 5295/131068 bytes
U-Boot# boot
switch to partitions #0, OK
mmc1(part 0) is current device
SD/MMC found on device 1
Failed to mount ext2 filesystem...
** Unrecognized filesystem type **
Running uenvcmd ...
reading zImage
4282984 bytes read in 594 ms (6.9 MiB/s)
reading am335x-ermes.dtb
32097 bytes read in 20 ms (1.5 MiB/s)
Kernel image @ 0x80007fc0 [ 0x000000 - 0x415a68 ]
## Flattened Device Tree blob at 80f80000
   Booting using the fdt blob at 0x80f80000
   Loading Device Tree to 8e714000, end 8e71ed60 ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 3.14.26-g07d13c6-dirty (ermes@linux-ermes) (gcc version 4.7.3 20130226 (prerelease) (crosstool-NG linaro5
[    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine model: TI AM335x Ermes ST452
[    0.000000] cma: CMA: reserved 24 MiB at 8c800000
[    0.000000] Memory policy: Data cache writeback
[    0.000000] CPU: All CPU(s) started in SVC mode.
[    0.000000] AM335X ES2.1 (neon )
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 64512
[    0.000000] Kernel command line: console=ttyO0,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait
[    0.000000] PID hash table entries: 1024 (order: 0, 4096 bytes)
[    0.000000] Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
[    0.000000] Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
[    0.000000] Memory: 224352K/260096K available (5791K kernel code, 313K rwdata, 2088K rodata, 269K init, 231K bss, 35744K reserved,)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xd0800000 - 0xff000000   ( 744 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)
[    0.000000]     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
[    0.000000]     modules : 0xbf000000 - 0xbfe00000   (  14 MB)
[    0.000000]       .text : 0xc0008000 - 0xc07ba054   (7881 kB)
[    0.000000]       .init : 0xc07bb000 - 0xc07fe454   ( 270 kB)
[    0.000000]       .data : 0xc0800000 - 0xc084e760   ( 314 kB)
[    0.000000]        .bss : 0xc084e760 - 0xc0888738   ( 232 kB)
[    0.000000] NR_IRQS:16 nr_irqs:16 16
[    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: timer2 at 24000000 Hz
[    0.000029] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956969942ns
[    0.000076] OMAP clocksource: timer1 at 24000000 Hz
[    0.000696] Console: colour dummy device 80x30
[    0.000765] Calibrating delay loop... 298.59 BogoMIPS (lpj=1492992)
[    0.068530] pid_max: default: 32768 minimum: 301
[    0.068759] Security Framework initialized
[    0.068876] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.068903] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.085339] CPU: Testing write buffer coherency: ok
[    0.086086] Setting up static identity map for 0x805ad920 - 0x805ad978
[    0.088173] devtmpfs: initialized
[    0.092778] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[    0.110786] omap_hwmod: tptc0 using broken dt data from edma
[    0.110996] omap_hwmod: tptc1 using broken dt data from edma
[    0.111185] omap_hwmod: tptc2 using broken dt data from edma
[    0.117553] omap_hwmod: debugss: _wait_target_disable failed
[    0.188227] pinctrl core: initialized pinctrl subsystem
[    0.190616] regulator-dummy: no parameters
[    0.195484] NET: Registered protocol family 16
[    0.200503] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.206628] cpuidle: using governor ladder
[    0.206662] cpuidle: using governor menu
[    0.223817] syscon 44e10000.control_module: regmap [mem 0x44e10000-0x44e107fb] registered
[    0.227444] platform 49000000.edma: alias fck already exists
[    0.227507] platform 49000000.edma: alias fck already exists
[    0.227545] platform 49000000.edma: alias fck already exists
[    0.230387] OMAP GPIO hardware version 0.1
[    0.263762] No ATAGs?
[    0.263813] hw-breakpoint: debug architecture 0x4 unsupported.
[    0.330181] bio: create slab <bio-0> at 0
[    0.370148] edma-dma-engine edma-dma-engine.0: TI EDMA DMA engine driver
[    0.372442] vmmcsd_fixed: 3300 mV 
[    0.373651] vtt: 1500 mV 
[    0.381319] vgaarb: loaded
[    0.382608] i2c-core: driver [palmas] using legacy suspend method
[    0.382635] i2c-core: driver [palmas] using legacy resume method
[    0.384411] SCSI subsystem initialized
[    0.388020] usbcore: registered new interface driver usbfs
[    0.388473] usbcore: registered new interface driver hub
[    0.389066] usbcore: registered new device driver usb
[    0.391415] omap_i2c 44e0b000.i2c: could not find pctldev for node /pinmux@44e10800/pinmux_i2c0_pins, deferring probe
[    0.391482] platform 44e0b000.i2c: Driver omap_i2c requests probe deferral
[    0.392439] pps_core: LinuxPPS API ver. 1 registered
[    0.392467] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.392802] PTP clock support registered
[    0.397565] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
[    0.399735] Advanced Linux Sound Architecture Driver Initialized.
[    0.403491] Switched to clocksource timer1
[    0.452694] NET: Registered protocol family 2
[    0.454835] TCP established hash table entries: 2048 (order: 1, 8192 bytes)
[    0.454924] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
[    0.454998] TCP: Hash tables configured (established 2048 bind 2048)
[    0.455144] TCP: reno registered
[    0.455174] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.455227] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.455692] NET: Registered protocol family 1
[    0.456530] RPC: Registered named UNIX socket transport module.
[    0.456561] RPC: Registered udp transport module.
[    0.456577] RPC: Registered tcp transport module.
[    0.456595] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.458874] hw perfevents: enabled with ARMv7 Cortex-A8 PMU driver, 5 counters available
[    0.465629] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.903244] VFS: Disk quotas dquot_6.5.2
[    0.903389] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    0.904702] NFS: Registering the id_resolver key type
[    0.904875] Key type id_resolver registered
[    0.904896] Key type id_legacy registered
[    0.904987] jffs2: version 2.2. (NAND) (SUMMARY)  �© 2001-2006 Red Hat, Inc.
[    0.905402] msgmni has been set to 486
[    0.909006] NET: Registered protocol family 38
[    0.909097] io scheduler noop registered
[    0.909118] io scheduler deadline registered
[    0.909168] io scheduler cfq registered (default)
[    0.913132] pinctrl-single 44e10800.pinmux: 142 pins at pa f9e10800 size 568
[    0.925156] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    0.932562] omap_uart 44e09000.serial: no wakeirq for uart0
[    0.932916] 44e09000.serial: ttyO0 at MMIO 0x44e09000 (irq = 88, base_baud = 3000000) is a OMAP UART0
[    1.576706] console [ttyO0] enabled
[    1.583691] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20
[    1.591594] [drm] Initialized drm 1.1.0 20060810
[    1.623899] brd: module loaded
[    1.641041] loop: module loaded
[    1.645272] (hci_tty): inside hci_tty_init
[    1.650647] (hci_tty): allocated 249, 0
[    1.661159] mtdoops: mtd device (mtddev=name/number) must be supplied
[    1.677437] usbcore: registered new interface driver asix
[    1.683731] usbcore: registered new interface driver ax88179_178a
[    1.690503] usbcore: registered new interface driver cdc_ether
[    1.697179] usbcore: registered new interface driver smsc95xx
[    1.703740] usbcore: registered new interface driver net1080
[    1.710046] usbcore: registered new interface driver cdc_subset
[    1.716728] usbcore: registered new interface driver zaurus
[    1.723188] usbcore: registered new interface driver cdc_ncm
[    1.730337] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.737265] ehci-pci: EHCI PCI platform driver
[    1.742415] ehci-omap: OMAP-EHCI Host Controller driver
[    1.749077] usbcore: registered new interface driver cdc_wdm
[    1.755636] usbcore: registered new interface driver usb-storage
[    1.764586] mousedev: PS/2 mouse device common for all mice
[    1.775231] i2c-core: driver [rtc-ds1307] using legacy suspend method
[    1.782015] i2c-core: driver [rtc-ds1307] using legacy resume method
[    1.790452] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
[    1.799996] i2c /dev entries driver
[    1.804138] Driver for 1-wire Dallas network protocol.
[    1.814521] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
[    1.911497] ledtrig-cpu: registered to indicate activity on CPUs
[    1.918885] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
[    1.931088] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
[    1.940803] usbcore: registered new interface driver usbhid
[    1.946759] usbhid: USB HID core driver
[    1.951388] platform 44d00000.wkup_m3: Driver wkup_m3 requests probe deferral
[    1.967098] oprofile: using arm/armv7
[    1.971634] TCP: cubic registered
[    1.975297] Initializing XFRM netlink socket
[    1.979880] mmc1: BKOPS_EN bit is not set
[    1.984370] NET: Registered protocol family 17
[    1.989189] NET: Registered protocol family 15
[    1.994226] Key type dns_resolver registered
[    2.000571] cpu cpu0: of_pm_voltdm_notifier_register: Failed to get cpu0 regulator/voltdm: -517
[    2.009896] cpu cpu0: cpu0 clock notifier not ready, retry
[    2.015966] platform cpufreq-cpu0.0: Driver cpufreq-cpu0 requests probe deferral
[    2.023892] mmc1: new high speed MMC card at address 0001
[    2.031759] PM: bootloader does not support rtc-only!
[    2.037857] mmcblk0: mmc1:0001 MMC04G 3.60 GiB 
[    2.042883] ThumbEE CPU extension supported.
[    2.047819] mmcblk0boot0: mmc1:0001 MMC04G partition 1 16.0 MiB
[    2.054133] Registering SWP/SWPB emulation handler
[    2.060190] mmcblk0boot1: mmc1:0001 MMC04G partition 2 16.0 MiB
[    2.069480] regulator-dummy: disabling
[    2.079440] slave hdmi.6: could not get i2c
[    2.084570] platform hdmi.6: Driver slave requests probe deferral
[    2.093744] platform 4830e000.lcdc: Driver tilcdc requests probe deferral
[    2.101556]  mmcblk0: p1
[    2.109359]  mmcblk0boot1: unknown partition table
[    2.120676]  mmcblk0boot0: unknown partition table
[    2.130988] DCDC1: at 1500 mV 
[    2.136262] vdd_mpu: 925 <--> 1375 mV at 1100 mV 
[    2.143127] vdd_core: 925 <--> 1150 mV at 1100 mV 
[    2.150092] LDO1: at 1800 mV 
[    2.155108] LDO2: at 3300 mV 
[    2.160074] LDO3: 1800 mV 
[    2.164790] LDO4: at 3300 mV 
[    2.169906] tps65217 0-0024: TPS65217 ID 0xe version 1.2
[    2.175634] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
[    2.182782]  remoteproc0: wkup_m3 is available
[    2.187561]  remoteproc0: Note: remoteproc is still under development and considered experimental.
[    2.197007]  remoteproc0: THE BINARY FORMAT IS NOT YET FINALIZED, and backward compatibility isn't yet guaranteed.
[    2.208210]  remoteproc0: Direct firmware load failed with error -2
[    2.214894]  remoteproc0: Falling back to user helper
[    2.221169] cpu cpu0: of_pm_voltdm_notifier_register: Fail calculating voltage latency[950000<->1100000]:-22
[    2.239408] dummy 0-0034: Error -121 writing to cec:0xff
[    2.245235] tda998x 0-0070: Error -121 writing to REG_CURPAGE
[    2.251378] tda998x 0-0070: Error -121 reading from 0xa
[    2.256983] tda998x 0-0070: Error -121 writing to 0xa
[    2.313570] tda998x 0-0070: Error -121 reading from 0xa
[    2.319142] tda998x 0-0070: Error -121 writing to 0xa
[    2.383564] tda998x 0-0070: Error -121 reading from 0x1
[    2.389132] tda998x 0-0070: Error -121 writing to 0x1
[    2.394533] tda998x 0-0070: Error -121 reading from 0x1
[    2.400099] tda998x 0-0070: Error -121 writing to 0x1
[    2.405499] tda998x 0-0070: Error -121 writing to REG_CURPAGE
[    2.411614] tda998x 0-0070: Error -121 writing to 0x200
[    2.417197] tda998x 0-0070: Error -121 writing to 0x201
[    2.422763] tda998x 0-0070: Error -121 writing to 0x202
[    2.428346] tda998x 0-0070: Error -121 writing to 0x203
[    2.433929] tda998x 0-0070: Error -121 writing to 0x204
[    2.439495] tda998x 0-0070: Error -121 writing to 0x205
[    2.445078] tda998x 0-0070: Error -121 writing to 0x20e
[    2.450644] tda998x 0-0070: Error -121 writing to 0x211
[    2.456228] tda998x 0-0070: Error -121 writing to 0x207
[    2.461794] tda998x 0-0070: Error -121 writing to 0x208
[    2.467377] tda998x 0-0070: Error -121 writing to 0x209
[    2.472943] tda998x 0-0070: Error -121 writing to 0x20a
[    2.478526] tda998x 0-0070: Error -121 writing to 0x206
[    2.484107] tda998x 0-0070: Error -121 writing to REG_CURPAGE
[    2.490223] tda998x 0-0070: Error -121 writing to 0x27
[    2.495713] tda998x 0-0070: Error -121 reading from 0x0
[    2.501279] tda998x 0-0070: Error -121 reading from 0x2
[    2.507408] tilcdc 4830e000.lcdc: no encoders/connectors found
[    2.513664] tilcdc 4830e000.lcdc: failed to initialize mode setting
[    2.583565] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
[    2.590011] davinci_mdio 4a101000.mdio: detected phy mask fffffffc
[    2.598308] libphy: 4a101000.mdio: probed
[    2.602548] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver SMSC LAN8710/LAN8720
[    2.612217] davinci_mdio 4a101000.mdio: phy[1]: device 4a101000.mdio:01, driver SMSC LAN8710/LAN8720
[    2.622983] cpsw 4a100000.ethernet: Detected MACID = 08:11:23:32:12:77
[    2.632571] omap_rtc 44e3e000.rtc: setting system clock to 2000-01-01 00:00:01 UTC (946684801)
[    2.645957] ALSA device list:
[    2.649116]   No soundcards found.
[    2.653841] VFS: Cannot open root device "mmcblk0p2" or unknown-block(179,2): error -6
[    2.662186] Please append a correct "root=" boot option; here are the available partitions:
[    2.671052] b300         3776512 mmcblk0  driver: mmcblk
[    2.676685]   b301         3774447 mmcblk0p1 fc4854ef-8d93-ec43-bdef-11bd350d61d6
[    2.684586] b310           16384 mmcblk0boot1  (driver?)
[    2.690185] b308           16384 mmcblk0boot0  (driver?)
[    2.695799] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,2)


  • Hi,

    Please share which TI SDK version are you using? 

    Can you try to partition your sdcard with the script provided with the lates SDK1.0, attached bellow:

    8611.create-sdcard.sh.txt

    Rename the script to create-sdcard.sh and execute. 

    Best Regards, 

    Yordan

  • Hi,

    Please ensure that you have enabled "ext3" filesystem support in kernel.

       2.015966] platform cpufreq-cpu0.0: Driver cpufreq-cpu0 requests probe deferral

    [    2.023892] mmc1: new high speed MMC card at address 0001

    [    2.031759] PM: bootloader does not support rtc-only!

    [    2.037857] mmcblk0: mmc1:0001 MMC04G 3.60 GiB

    [    2.042883] ThumbEE CPU extension supported.

    [    2.047819] mmcblk0boot0: mmc1:0001 MMC04G partition 1 16.0 MiB

    [    2.054133] Registering SWP/SWPB emulation handler

    [    2.060190] mmcblk0boot1: mmc1:0001 MMC04G partition 2 16.0 MiB

    [    2.069480] regulator-dummy: disabling

    [    2.079440] slave hdmi.6: could not get i2c

    [    2.084570] platform hdmi.6: Driver slave requests probe deferral

    [    2.093744] platform 4830e000.lcdc: Driver tilcdc requests probe deferral

    [    2.101556]  mmcblk0: p1

    [    2.109359]  mmcblk0boot1: unknown partition table

    [    2.120676]  mmcblk0boot0: unknown partition table

    From your logs, not able to see the 2nd partition of MMC0 for mounting.

    Please ensure that you have formatted the MMC0'th 2nd partition with ext3.

    I would like you to use NFS filesystem and make sure that MMC0 is working good and able to mount then you can try to mount the filesystem through SD/MMC.

  • Dear Yordan, Titus,

       thank you for your support.

    I was using SDK 8 (ti-sdk-am335x-evm-08.00.00.00).

    I have rebuild the kernel adding support for the following filesystems (even if they were already enabled in the .config): ext2, ext3, ext4, but nothing changes.

    Here the filesystems section in .config:

    #
    # File systems
    #
    CONFIG_DCACHE_WORD_ACCESS=y
    CONFIG_EXT2_FS=y
    # CONFIG_EXT2_FS_XATTR is not set
    # CONFIG_EXT2_FS_XIP is not set
    CONFIG_EXT3_FS=y
    CONFIG_EXT3_DEFAULTS_TO_ORDERED=y
    # CONFIG_EXT3_FS_XATTR is not set
    CONFIG_EXT4_FS=y
    # CONFIG_EXT4_FS_POSIX_ACL is not set
    # CONFIG_EXT4_FS_SECURITY is not set
    # CONFIG_EXT4_DEBUG is not set
    CONFIG_JBD=y
    # CONFIG_JBD_DEBUG is not set
    CONFIG_JBD2=y
    # CONFIG_JBD2_DEBUG is not set
    CONFIG_FS_MBCACHE=y
    # CONFIG_REISERFS_FS is not set
    # CONFIG_JFS_FS is not set
    # CONFIG_XFS_FS is not set
    # CONFIG_GFS2_FS is not set
    # CONFIG_OCFS2_FS is not set
    # CONFIG_BTRFS_FS is not set
    # CONFIG_NILFS2_FS is not set
    CONFIG_FS_POSIX_ACL=y
    CONFIG_FILE_LOCKING=y
    CONFIG_FSNOTIFY=y
    CONFIG_DNOTIFY=y
    CONFIG_INOTIFY_USER=y
    # CONFIG_FANOTIFY is not set
    CONFIG_QUOTA=y
    # CONFIG_QUOTA_NETLINK_INTERFACE is not set
    CONFIG_PRINT_QUOTA_WARNING=y
    # CONFIG_QUOTA_DEBUG is not set
    CONFIG_QUOTA_TREE=y
    # CONFIG_QFMT_V1 is not set
    CONFIG_QFMT_V2=y
    CONFIG_QUOTACTL=y
    # CONFIG_AUTOFS4_FS is not set
    # CONFIG_FUSE_FS is not set

    The rootfs was partitioned with the ext3 filesystem using the SDK script. Yordan, i tried with the SDK1.0 script but the result does not change.

    I can see ext3 fs the partition both inserting the SD on a PC,

    /dev/sdd1      vfat         71133       512     70621   1% /media/ermes/boot
    /dev/sdd2      ext3       1809356    706392   1009388  42% /media/ermes/rootfs

    and from u-boot:

    Partition Map for MMC device 0  --   Partition Type: DOS
    Part    Start Sector    Num Sectors     UUID            Type
      1     63              144522          00000000-01     0c Boot
      2     160650          3743145         00000000-02     83

    from u-boot i can also list the rootfs files.

    Titus I understand the problem is in the kernel, but I can not image why the partition is not mounted. Is there something missing in the environment variables?

    In the meanwhile I am going to proceed with NFS...

    Thank you again.

  • This is what I see from Linux while I have a 2Gb SD card inserted and a 4Gb eMMC chip.
    The 4G partition /dev/mmcblk0p1 is the eMMC. Effectively the rootfs on the SD is not seen.



    sfdisk -l -uM

    Disk /dev/mmcblk0: 118016 cylinders, 4 heads, 16 sectors/track
    sfdisk: Warning: The partition table looks like it was made
    for C/H/S=*/1/0 (instead of 118016/4/16).
    For this listing I'll assume that geometry.
    Units: 1MiB = 1024*1024 bytes, blocks of 1024 bytes, counting from 0

    Device Boot Start End MiB #blocks Id System
    /dev/mmcblk0p1 0+ 3688- 3688 3776512 ee GPT
    /dev/mmcblk0p2 0 - 0 0 0 Empty
    /dev/mmcblk0p3 0 - 0 0 0 Empty
    /dev/mmcblk0p4 0 - 0 0 0 Empty

    Disk /dev/mmcblk0boot1: 512 cylinders, 4 heads, 16 sectors/track

    Disk /dev/mmcblk0boot0: 512 cylinders, 4 heads, 16 sectors/track
  • Hi,
    1) Try to use some other SD card.
    2) Could you try to format the SD card in target itself (just ext3 fs alone and not fat etc.,).
    3) Able to detect the ext3 filesytem in target board with any storage type (pendrive,eMMC,SD/MMC)

    Did you modify MMC linux kernel driver side ?

    If you have AM335x EVM board, then you can try that SD card on that board (SDK8).
  • Hi Titus,
        finally I was able to partition and install the boot files and the filesystem on the eMMC connected the the mmc1 port.

    Regarding the SD card I am not able to boot from this device. If I boot from eMMC, then I insert the SD and I type "fdisk -l" the SD is not visible. The same procedure on the Beagle Bone Black make the SD card visible. Have I to manage the CD (card detect) signal in some way?

    When I boot from SD the problem is the "unsupported optional features (240)" for the ext3 filesystem. The problem seems to be related to the ext3 optional features, in any case I recompiled the kernel with all the ext3 options enabled.

    [    2.635034] EXT3-fs (mmcblk0p2): error: couldn't mount because of unsupported optional features (240)
    [    2.645113] List of all partitions:
    [    2.648836] b300         3776512 mmcblk0  driver: mmcblk
    [    2.654481]   b301           16384 mmcblk0p1 902b26b0-01
    [    2.660077]   b302         3759104 mmcblk0p2 902b26b0-02
    [    2.665694] b310           16384 mmcblk0boot1  (driver?)
    [    2.671292] b308           16384 mmcblk0boot0  (driver?)
    [    2.676897] No filesystem could mount root, tried:  ext3
    [    2.682517] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,2)

    Thank you for the support.

  • Hi,
    Always I would like to boot the board with NFS and try to mount the SD card.
    So please do that, initially try with simple SD card in single partition of VAT format then try other fs ext3, ext4 etc.,
    This will rule of that CD suspect.
    Please ensure that you have mentioned "rootfstype=ext3" in u-boot bootargs.

    You are facing the problem only while mounting with ext3 ?
  • Titus,

       I tried as you suggested:

    1) Boot in NFS

    2) Insert a simple SD card, with a single partition (FAT16, FAT32, ext3,.. )

    3) mount the SD card partition.... but I can't mount the partition because I can not see any partition on the SD

    fdisk -l shows only the eMMC partitions on port mmc1.

    Device         Boot     Start       End  Blocks  Id System
    /dev/mmcblk0p1 *         2048     34815   16384   e W95 FAT16 (LBA)
    /dev/mmcblk0p2          34816   7553023 3759104  83 Linux

    However the SD on mmc0 port works since I can load u-boot from this when I define by a jumper to boot from the mmc0.

    Thank you for the support.

  • Hi,

    fdisk -l shows only the eMMC partitions on port mmc1.

    Device         Boot     Start       End  Blocks  Id System

    /dev/mmcblk0p1 *         2048     34815   16384   e W95 FAT16 (LBA)

    /dev/mmcblk0p2          34816   7553023 3759104  83 Linux

    It looks like for SD card (MMC0), please check.

  • Hi Titus,

     mmcblk0 is the eMMC on mmc1 port. I can see this from device size bu also with the following test: I remove the SD, then I can still mount the two partitions /dev/mmcblk0p1 and /dev/mmcblk0p2 and browse the files.

    The same happen with BBB (BeagleBone Black) where the eMMC partitions (port mmc1) are mounted as /dev/mmcblk0.

    The difference is that with BBB, when I insert a SD card (mmc0 port), fdisk -l shows a new device /dev/mmcblk1. In my board this does not happen.

    A difference between BBB and my board is that the SD CD (card detect) is muxed as GPIO0_6 in the BBB, while in my board it is pinmuxed as mmc0_SDCD (In any case I tried the GPIO0_6 pinmux).


    Regards,

  • Hi,
    Thanks, I too checked the BBB schematics.
    Able to get any printks when you connect the SD card ? any failure or error msg etc., ?
    I doubt that the SD card has been detected at u-boot.
    Please put some particular file like "SD_detected.txt" in SD card then check this file present in SD card at u-boot stage.
    If detected, then u-boot should have MMC driver and linux kernel is no need to initialize anything for SD card.
    Are you modified any code in linux kernel for SD pins etc., but anyway you have to enable SD/MMC Linux driver ?

    If u-boot is initialized the SD/MMC then comment it out the SD/MMC initialization and pinmux settings in linux board file or dts file.
    Also please check the .config of both BBB .config and yours .config (custom).
  • Solved defining SD card detect signal in the DTS file an rebuilding the kernel with all the options for ext3 and ext4 fs.

    Thank you again for the support.
  • Sounds good.
    Thanks for your update.