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.

SD card not detected at boot-up

Hi,

We have a custom board based on  DM8148 EVM.

When booting up the board with an SD card in, the SD card is not recognized and the linux driver output a message "mmc: error -101 whilst initialising".  I believe the 101 code is a timeout notification (am I wrong?).

Ejecting and re-inserting the SD card works and the SD card is recognized just fine.

Testing further, we try and boot the sytem, SD card out while u-boot is running and inserting the SD card when the kernel just starts. In that case the SD card is recognized normally by the kernel.

Could there be a problem of any sort  when passing control of the SD reader from the u-boot to the kernel?

Any help would be much appreciated

Thanks in advance

 

  • CIM,

    What is the size of your SD card? How exactly you have create it? Have you try the EZSDK script?

    ti-ezsdk_dm814x-evm_5_05_02_00/docs/DM814x_EZ_Software_Developers_Guide.pdf, 6.6 How to create an SD card

    ti-ezsdk_dm814x-evm_5_05_02_00/bin/mksdboot.sh

    Regards,
    Pavel

  • Hi Pavel,

    Thanks for your answer.

    I've tried with different SD cards of 4GB and 8GB.

    The sd card is not use to boot the system, it is booting from NAND. The SD card is used to read and write data. The SD card not being recognized, we can't mount it to use as a atorage device.

    I've tried re-formatting the card, both using windows PC formatting function and with our board. Each time the card is recognized just fine in PC or when the board is already started, but not on board boot up.

    Regards

    Claire

  • Claire,

    ClM said:
    Each time the card is recognized just fine in PC or when the board is already started, but not on board boot up.

    Can you provide me full log (console output)? What is your PSP version, is it psp04.04.00.01 or else?

    Regards,
    Pavel

  • Claire,

    ClM said:
    The sd card is not use to boot the system, it is booting from NAND. The SD card is used to read and write data. The SD card not being recognized, we can't mount it to use as a atorage device.

    I tried this on my side - boot from NAND and use MMC/SD card only as a storage device, on the DM814x TI EVM. And it works fine, the MMC/SD card is plugged from the very beginning and is detected properly in linux kernel and then can be accessed fine from user space. I am using MMC/SD card created with the mksdboot.sh script, see the full boot up log:

    picocom v1.4
    
    port is        : /dev/ttyUSB0
    flowcontrol    : none
    baudrate is    : 115200
    parity is      : none
    databits are   : 8
    escape is      : C-a
    noinit is      : no
    noreset is     : no
    nolock is      : no
    send_cmd is    : sx -vv
    receive_cmd is : rz -vv
    
    Terminal ready
    
    
    U-Boot 2010.06 (Oct 17 2014 - 16:33:14)
    
    TI8148-GP rev 2.1
    
    ARM clk: 600MHz
    DDR clk: 400MHz
    
    DRAM:  1 GiB
    DCACHE:  Off
    NAND:  HW ECC BCH8 Selected
    256 MiB
    Using default environment
    
    The 2nd stage U-Boot will now be auto-loaded
    Please do not interrupt the countdown till TI8148_EVM prompt if 2nd stage is already flashed
    Hit any key to stop autoboot:  0 
    
    NAND read: device 0 offset 0x20000, size 0x40000
     262144 bytes read: OK
    ## Starting application at 0x81000000 ...
    
    
    U-Boot 2010.06 (Oct 17 2014 - 16:34:42)
    
    TI8148-GP rev 2.1
    
    ARM clk: 600MHz
    DDR clk: 400MHz
    
    I2C:   ready
    DRAM:  1 GiB
    DCACHE:  On
    NAND:  HW ECC BCH8 Selected
    256 MiB
    MMC:   OMAP SD/MMC: 0
    *** Warning - bad CRC or NAND, using default environment
    
                              .:;rrr;;.                   
                        ,5#@@@@#####@@@@@@#2,             
                     ,A@@@hi;;;r5;;;;r;rrSG@@@A,          
                   r@@#i;:;s222hG;rrsrrrrrr;ri#@@r        
                 :@@hr:r;SG3ssrr2r;rrsrsrsrsrr;rh@@:      
                B@H;;rr;3Hs;rrr;sr;;rrsrsrsrsrsr;;H@B     
               @@s:rrs;5#;;rrrr;r#@H:;;rrsrsrsrsrr:s@@    
              @@;;srs&X#9;r;r;;,2@@@rrr:;;rrsrsrsrr;;@@   
             @@;;rrsrrs@MB#@@@@@###@@@@@@#rsrsrsrsrr;;@@  
            G@r;rrsrsr;#X;SX25Ss#@@#M@#9H9rrsrsrsrsrs;r@G 
            @9:srsrsrs;2@;:;;:.X@@@@@H::;rrsrsrsrsrsrr:3@ 
           X@;rrsrsrsrr;XAi;;:&@@#@Bs:rrsrsrsrsrsrsrsrr;@X
           @#;rsrsrsrsrr;r2ir@@@###::rrsrsrsrsrsrsrsrsr:@@
           @A:rrsrsrsrr;:2@29@@M@@@;:;rrrrsrsrsrsrsrsrs;H@
           @&;rsrsrsrr;A@@@@@@###@@@s::;:;;rrsrsrsrsrsr;G@
           @#:rrsrsrsr;G@5Hr25@@@#@@@#9XG9s:rrrrsrsrsrs:#@
           M@;rsrsrsrs;r@&#;::S@@@@@@@M@@@@Grr:;rsrsrsr;@#
           :@s;rsrsrsrr:M#Msrr;;&#@@@@@@@@@@H@@5;rsrsr;s@,
            @@:rrsrsrsr;S@rrrsr;:;r3MH@@#@M5,S@@irrsrr:@@ 
             @A:rrsrsrsrrrrrsrsrrr;::;@##@r:;rH@h;srr:H@  
             ;@9:rrsrsrsrrrsrsrsrsr;,S@Hi@i:;s;MX;rr:h@;  
              r@B:rrrrsrsrsrsrsrr;;sA@#i,i@h;r;S5;r:H@r   
               ,@@r;rrrsrsrsrsrr;2BM3r:;r:G@:rrr;;r@@,    
                 B@Mr;rrrrsrsrsr@@S;;;rrr:5M;rr;rM@H      
                  .@@@i;;rrrrsrs2i;rrrrr;r@M:;i@@@.       
                    .A@@#5r;;;r;;;rrr;r:r#AsM@@H.         
                       ;&@@@@MhXS5i5SX9B@@@@G;            
                           :ihM#@@@@@##hs,                
    
    Net:   <ethaddr> not set. Reading from E-fuse
    Detected MACID:90:d7:eb:d5:13:96
    cpsw
    Hit any key to stop autoboot:  0 
    TI8148_EVM#nand read.i 0x81000000 280000 0x2A3000
    
    NAND read: device 0 offset 0x280000, size 0x2a3000
     2764800 bytes read: OK
    TI8148_EVM#setenv bootargs 'console=ttyO0,115200n8 noinitrd mem=256M rw ubi.mtd=9,2048 rootfstype=ubifs root=ubi0:rootfs init=/init'
    TI8148_EVM#bootm 0x81000000
    ## Booting kernel from Legacy Image at 81000000 ...
       Image Name:   Linux-2.6.37
       Image Type:   ARM Linux Kernel Image (uncompressed)
       Data Size:    2761184 Bytes = 2.6 MiB
       Load Address: 80008000
       Entry Point:  80008000
       Verifying Checksum ... OK
       Loading Kernel Image ... OK
    OK
    
    Starting kernel ...
    
    Uncompressing Linux... done, booting the kernel.
    Linux version 2.6.37 (pbotev@pbotev) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #1 Wed Oct 22 16:41:59 EEST 2014
    CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7f
    CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
    Machine: ti8148evm
    ti81xx_reserve: ### Reserved DDR region @8ff00000
    reserved size = 52428800 at 0x0
    FB: Reserving 52428800 bytes SDRAM for VRAM
    Memory policy: ECC disabled, Data cache writeback
    OMAP chip is TI8148 2.1
    SRAM: Mapped pa 0x402f1000 to va 0xfe400000 size: 0xf000
    Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 51968
    Kernel command line: console=ttyO0,115200n8 noinitrd mem=256M rw ubi.mtd=9,2048 rootfstype=ubifs root=ubi0:rootfs init=/init
    PID hash table entries: 1024 (order: 0, 4096 bytes)
    Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
    Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
    Memory: 204MB 1MB = 205MB total
    Memory: 201704k/201704k available, 60440k reserved, 0K highmem
    Virtual kernel memory layout:
        vector  : 0xffff0000 - 0xffff1000   (   4 kB)
        fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
        DMA     : 0xffc00000 - 0xffe00000   (   2 MB)
        vmalloc : 0xd0800000 - 0xf8000000   ( 632 MB)
        lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)
        pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
        modules : 0xbf000000 - 0xbfe00000   (  14 MB)
          .init : 0xc0008000 - 0xc0042000   ( 232 kB)
          .text : 0xc0042000 - 0xc053e000   (5104 kB)
          .data : 0xc053e000 - 0xc058b580   ( 310 kB)
    SLUB: Genslabs=11, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    NR_IRQS:407
    IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrupts
    Total of 128 interrupts on 1 active controller
    GPMC revision 6.0
    Trying to install interrupt handler for IRQ400
    Trying to install interrupt handler for IRQ401
    Trying to install interrupt handler for IRQ402
    Trying to install interrupt handler for IRQ403
    Trying to install interrupt handler for IRQ404
    Trying to install interrupt handler for IRQ405
    Trying to install interrupt handler for IRQ406
    Trying to install type control for IRQ407
    Trying to set irq flags for IRQ407
    OMAP clockevent source: GPTIMER1 at 20000000 Hz
    Console: colour dummy device 80x30
    Calibrating delay loop... 598.01 BogoMIPS (lpj=2990080)
    pid_max: default: 32768 minimum: 301
    Security Framework initialized
    Mount-cache hash table entries: 512
    CPU: Testing write buffer coherency: ok
    devtmpfs: initialized
    TI81XX: Map 0x8ff00000 to 0xfe500000 for dram barrier
    TI81XX: Map 0x40300000 to 0xfe600000 for sram barrier
    omap_voltage_early_init: voltage driver support not added
    regulator: core version 0.5
    regulator: dummy: 
    NET: Registered protocol family 16
    omap_voltage_domain_lookup: Voltage driver init not yet happened.Faulting!
    omap_voltage_add_dev: VDD specified does not exist!
    OMAP GPIO hardware version 0.1
    OMAP GPIO hardware version 0.1
    OMAP GPIO hardware version 0.1
    OMAP GPIO hardware version 0.1
    omap_mux_init: Add partition: #1: core, flags: 4
    NOR: Can't request GPMC CS
    Cannot clk_get ck_32
    Debugfs: Only enabling/disabling deep sleep and wakeup timer is supported now
    registered ti81xx_vpss device
    registered ti81xx_vidout device
    registered ti81xx on-chip HDMI device
    registered ti81xx_fb device
    registered ti81xx_vin device
    ti81xx_pcie: Invoking PCI BIOS...
    ti81xx_pcie: Setting up Host Controller...
    ti81xx_pcie: Register base mapped @0xd0820000
    ti81xx_pcie: forcing link width - x1
    ti81xx_pcie: Starting PCI scan...
    PCI: bus0: Fast back to back transfers enabled
    ti81xx_pcie: PCI scan done.
    bio: create slab <bio-0> at 0
    vgaarb: loaded
    SCSI subsystem initialized
    usbcore: registered new interface driver usbfs
    usbcore: registered new interface driver hub
    usbcore: registered new device driver usb
    USBSS revision 4ea2080b
    registerd cppi-dma Intr @ IRQ 17
    Cppi41 Init Done
    omap_i2c omap_i2c.1: bus 1 rev4.0 at 100 kHz
    pcf857x 1-0021: gpios 128..143 on a pcf8575
    regulator: VRTC: 1800 mV 
    regulator: VIO: 1500 mV 
    regulator: VDD1: 600 <--> 1500 mV at 1200 mV 
    regulator: VDD2: 600 <--> 1500 mV at 1200 mV 
    regulator: VDDCTRL: 600 <--> 1400 mV at 1200 mV 
    regulator: LDO1: 1100 <--> 3300 mV at 1800 mV 
    regulator: LDO2: 1100 <--> 3300 mV at 1800 mV 
    regulator: LDO3: 1100 <--> 3300 mV at 3300 mV 
    regulator: LDO4: 1100 <--> 3300 mV at 1800 mV 
    regulator: LDO5: 1100 <--> 3300 mV at 3300 mV 
    regulator: LDO6: 1100 <--> 3300 mV at 3300 mV 
    regulator: LDO7: 1100 <--> 3300 mV at 3300 mV 
    regulator: LDO8: 1100 <--> 3300 mV at 1800 mV 
    tps65910 1-002d: No interrupt support, no core IRQ
    omap_i2c omap_i2c.3: bus 3 rev4.0 at 100 kHz
    Advanced Linux Sound Architecture Driver Version 1.0.23.
    Switching to clocksource gp timer
    musb-hdrc: version 6.0, host, debug=0
    musb-hdrc musb-hdrc.0: dma type: dma-cppi41
    MUSB controller-0 revision 4ea20800
    usb2phy: computed values rxcalib(15)DACs(30 15 15)
    usb2phy: override computed values rxcalib(15)DACs(30 15 15)
    usb2phy_config: musb(0) rxcalib done, rxcalib read value 6f6f5f7e
    musb-hdrc musb-hdrc.0: MUSB HDRC host driver
    musb-hdrc musb-hdrc.0: new USB bus registered, assigned bus number 1
    usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
    usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    usb usb1: Product: MUSB HDRC host driver
    usb usb1: Manufacturer: Linux 2.6.37 musb-hcd
    usb usb1: SerialNumber: musb-hdrc.0
    hub 1-0:1.0: USB hub found
    hub 1-0:1.0: 1 port detected
    musb-hdrc musb-hdrc.0: USB Host mode controller at d081e000 using DMA, IRQ 18
    musb-hdrc musb-hdrc.1: dma type: dma-cppi41
    MUSB controller-1 revision 4ea20800
    usb2phy: computed values rxcalib(15)DACs(28 14 14)
    usb2phy: override computed values rxcalib(15)DACs(28 14 14)
    usb2phy_config: musb(1) rxcalib done, rxcalib read value 6f6e5d76
    musb-hdrc musb-hdrc.1: MUSB HDRC host driver
    musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus number 2
    usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
    usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
    usb usb2: Product: MUSB HDRC host driver
    usb usb2: Manufacturer: Linux 2.6.37 musb-hcd
    usb usb2: SerialNumber: musb-hdrc.1
    hub 2-0:1.0: USB hub found
    hub 2-0:1.0: 1 port detected
    musb-hdrc musb-hdrc.1: USB Host mode controller at d0826800 using DMA, IRQ 19
    NET: Registered protocol family 2
    IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
    TCP established hash table entries: 8192 (order: 4, 65536 bytes)
    TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
    TCP: Hash tables configured (established 8192 bind 8192)
    TCP reno registered
    UDP hash table entries: 256 (order: 0, 4096 bytes)
    UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    NET: Registered protocol family 1
    RPC: Registered udp transport module.
    RPC: Registered tcp transport module.
    RPC: Registered tcp NFSv4.1 backchannel transport module.
    NetWinder Floating Point Emulator V0.97 (double precision)
    PMU: registered new PMU device of type 0
    omap-iommu omap-iommu.0: ducati registered
    omap-iommu omap-iommu.1: sys registered
    JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
    msgmni has been set to 393
    io scheduler noop registered
    io scheduler deadline registered
    io scheduler cfq registered (default)
    Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
    omap_uart.0: ttyO0 at MMIO 0x48020000 (irq = 72) is a OMAP UART0
    console [ttyO0] enabled
    omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
    omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
    omap_uart.3: ttyO3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3
    omap_uart.4: ttyO4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4
    omap_uart.5: ttyO5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5
    brd: module loaded
    loop: module loaded
    ahci probe: devid name is ahci
    ahci CAP register dump =0x6726ff80
    Modified ahci CAP register dump =0x6f26ff80
    ahci ahci.0: forcing PORTS_IMPL to 0x1
    ahci: SSS flag set, parallel bus scan disabled
    ahci ahci.0: AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl platform mode
    ahci ahci.0: flags: ncq sntf stag pm led clo only pmp pio slum part ccc apst 
    scsi0 : ahci_platform
    ata1: SATA max UDMA/133 mmio [mem 0x4a140000-0x4a150fff] port 0x100 irq 16
    m25p80 spi1.0: w25x32 (4096 Kbytes)
    Creating 5 MTD partitions on "spi_flash":
    0x000000000000-0x000000020000 : "U-Boot-min"
    0x000000020000-0x000000060000 : "U-Boot"
    0x000000060000-0x000000062000 : "U-Boot Env"
    0x000000062000-0x0000002e2000 : "Kernel"
    0x0000002e2000-0x000000400000 : "File System"
    omap2-nand driver initializing
    ONFI param page 0 valid
    ONFI flash detected
    NAND device: Manufacturer ID: 0x2c, Chip ID: 0xca (Micron NAND 256MiB 3,3V 16-bit)
    omap2-nand: detected x16 NAND flash 
    Creating 6 MTD partitions on "omap2-nand.0":
    0x000000000000-0x000000020000 : "U-Boot-min"
    0x000000020000-0x000000260000 : "U-Boot"
    0x000000260000-0x000000280000 : "U-Boot Env"
    0x000000280000-0x0000006c0000 : "Kernel"
    0x0000006c0000-0x00000cee0000 : "File System"
    0x00000cee0000-0x000010000000 : "Reserved"
    UBI: attaching mtd9 to ubi0
    UBI: physical eraseblock size:   131072 bytes (128 KiB)
    UBI: logical eraseblock size:    126976 bytes
    UBI: smallest flash I/O unit:    2048
    UBI: sub-page size:              512
    UBI: VID header offset:          2048 (aligned 2048)
    UBI: data offset:                4096
    ata1: SATA link down (SStatus 0 SControl 300)
    UBI: max. sequence number:       16
    UBI: attached mtd9 to ubi0
    UBI: MTD device name:            "File System"
    UBI: MTD device size:            200 MiB
    UBI: number of good PEBs:        1599
    UBI: number of bad PEBs:         2
    UBI: number of corrupted PEBs:   0
    UBI: max. allowed volumes:       128
    UBI: wear-leveling threshold:    4096
    UBI: number of internal volumes: 1
    UBI: number of user volumes:     1
    UBI: available PEBs:             0
    UBI: total number of reserved PEBs: 1599
    UBI: number of PEBs reserved for bad PEB handling: 15
    UBI: max/mean erase counter: 1/0
    UBI: image sequence number:  258703184
    UBI: background thread "ubi_bgt0d" started, PID 50
    davinci_mdio davinci_mdio.0: davinci mdio revision 1.6
    davinci_mdio davinci_mdio.0: detected phy mask fffffffc
    davinci_mdio.0: probed
    davinci_mdio davinci_mdio.0: phy[0]: device 0:00, driver unknown
    davinci_mdio davinci_mdio.0: phy[1]: device 0:01, driver unknown
    CAN device driver interface
    CAN bus driver for Bosch D_CAN controller 1.0
    d_can d_can: d_can device registered (irq=52, irq_obj=53)
    usbcore: registered new interface driver cdc_ether
    usbcore: registered new interface driver dm9601
    usbcore: registered new interface driver cdc_acm
    cdc_acm: v0.26:USB Abstract Control Model driver for USB modems and ISDN adapters
    Initializing USB Mass Storage driver...
    usbcore: registered new interface driver usb-storage
    USB Mass Storage support registered.
    mice: PS/2 mouse device common for all mice
    qt602240_ts 1-004a: Family ID: 128 Variant ID: 1 Version: 22 Build: 171
    qt602240_ts 1-004a: Matrix X Size: 18 Matrix Y Size: 12 Object Num: 17
    input: AT42QT602240/ATMXT224 Touchscreen as /devices/platform/omap/omap_i2c.1/i2c-1/1-004a/input/input0
    omap_rtc omap_rtc: rtc core: registered omap_rtc as rtc0
    i2c /dev entries driver
    Linux video capture interface: v2.00
    usbcore: registered new interface driver uvcvideo
    USB Video Class driver (v1.0.0)
    OMAP Watchdog Timer Rev 0x00: initial timeout 60 sec
    usbcore: registered new interface driver usbhid
    usbhid: USB HID core driver
    usbcore: registered new interface driver snd-usb-audio
    asoc: tlv320aic3x-hifi <-> davinci-mcasp.2 mapping ok
    ALSA device list:
      #0: TI81XX EVM
    TCP cubic registered
    NET: Registered protocol family 17
    can: controller area network core (rev 20090105 abi 8)
    NET: Registered protocol family 29
    can: raw protocol (rev 20090105)
    can: broadcast manager protocol (rev 20090105 t)
    Registering the dns_resolver key type
    VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
    omap_voltage_late_init: Voltage driver support not added
    Power Management for TI81XX.
    Detected MACID=90:d7:eb:d5:13:96
    omap_rtc omap_rtc: setting system clock to 2000-01-01 00:00:00 UTC (946684800)
    UBIFS: mounted UBI device 0, volume 0, name "rootfs"
    UBIFS: file system size:   199225344 bytes (194556 KiB, 189 MiB, 1569 LEBs)
    UBIFS: journal size:       9023488 bytes (8812 KiB, 8 MiB, 72 LEBs)
    UBIFS: media format:       w4/r0 (latest is w4/r0)
    UBIFS: default compressor: lzo
    UBIFS: reserved for root:  0 bytes (0 KiB)
    VFS: Mounted root (ubifs filesystem) on device 0:14.
    devtmpfs: mounted
    Freeing init memory: 232K
    Failed to execute /init.  Attempting defaults...
    INIT: version 2.86 bootingmmc0: host does not support reading read-only switch. assuming write-enable.
    
    mmc0: new high speed SDHC card at address aaaa
    mmcblk0: mmc0:aaaa SU04G 3.69 GiB 
     mmcblk0: p1 p2
    Please wait: booting...
    Error opening /dev/fb0: No such file or directory
    Starting udev
    udevd (88): /proc/88/oom_adj is deprecated, please use /proc/88/oom_score_adj instead.
    tlc59108: disagrees about version of symbol module_layout
    tlc59108: disagrees about version of symbol module_layout
    FAT: bogus number of reserved sectors
    VFS: Can't find a valid FAT filesystem on dev mmcblk0.
    EXT3-fs: barriers not enabled
    kjournald starting.  Commit interval 5 seconds
    EXT3-fs (mmcblk0p2): warning: mounting fs with errors, running e2fsck is recommended
    EXT3-fs (mmcblk0p2): using internal journal
    EXT3-fs (mmcblk0p2): recovery complete
    EXT3-fs (mmcblk0p2): mounted filesystem with writeback data mode
    Root filesystem already rw, not remounting
    Caching udev devnodes
    ALSA: Restoring mixer settings...
    Configuring network interfaces... 
    CPSW phy found : id is : 0x4dd074
    
    CPSW phy found : id is : 0x4dd074
    udhcpc (v1.13.2) started
    Sending discover...
    PHY: 0:01 - Link is Up - 0/Half
    PHY: 0:01 - Link is Down
    Sending discover...
    Sending discover...
    No lease, forking to background
    done.
    Setting up IP spoofing protection: rp_filter.
    Mon Dec 31 10:37:00 UTC 2012
    INIT: Entering runlevel: 5
    Starting system message bus: dbus.
    Starting telnet daemon.
    Starting syslogd/klogd: ipv6: disagrees about version of symbol module_layout
    done
    Starting thttpdipv6: disagrees about version of symbol module_layout
    .
    ipv6: disagrees about version of symbol module_layout
    
     _____                    _____           _         _   
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_ 
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
                  |___|                    |___|            
    
    Arago Project http://arago-project.org dm814x-evm ttyO0
    
    Arago 2011.09 dm814x-evm ttyO0
    
    dm814x-evm login: root
    root@dm814x-evm:~# ls
    a.txt       sample.txt
    root@dm814x-evm:~# cd /
    root@dm814x-evm:/# ls
    bin      dev      home     linuxrc  mnt      sbin     sys      usr
    boot     etc      lib      media    proc     srv      tmp      var
    root@dm814x-evm:/# cd media/
    root@dm814x-evm:/media# ls
    card       hdd        mmcblk0p1  net        realroot
    cf         mmc1       mmcblk0p2  ram        union
    root@dm814x-evm:/media# cd mmcblk0p2
    root@dm814x-evm:/media/mmcblk0p2# ls
    Q75_88kHz_6ch_24bits_WMA10.wma  media
    Settings                        mnt
    Test.wav                        opt
    WaveData.wav                    proc
    bin                             rd-jffs2.bin
    boot                            sbin
    dev                             srv
    etc                             sys
    home                            tmp
    lib                             usr
    linuxrc                         var
    lost+found                      wav5196.wav
    root@dm814x-evm:/media/mmcblk0p2# cd ..
    root@dm814x-evm:/media# cd mmcblk0p1/
    root@dm814x-evm:/media/mmcblk0p1# ls
    MLO                 boot.scr            u-boot.bin
    README.boot.scr     g_ether.ko          u-boot.min.nand
    audio_test          g_zero.ko           uImage
    audio_test_ok       ti_logo.bmp         windows_users.htm
    boot.cmd            top_ti814x_evm.png
    root@dm814x-evm:/media/mmcblk0p1# 
    
    
    

    And I am using u-boot and linux kernel from the latest DM814x code base:

    http://arago-project.org/git/projects/u-boot-omap3.git?p=projects/u-boot-omap3.git;a=shortlog;h=refs/heads/ti81xx-master

    http://arago-project.org/git/projects/?p=linux-omap3.git;a=shortlog;h=refs/heads/ti81xx-master

    I have not done any MMC/SD specific modifications in the linux kernel, but all that is included in the ti8148_evm_defconfig.

    BR
    Pavel

  • Claire,

    I tried also with other MMC/SD card, created with the DM816x EZSDK script. And I can also access it properly, when MMC/SD card is plugged in the DM814x TI EVM from the very beginning. This is what I have:

    dm814x-evm login: root
    root@dm814x-evm:~# ls
    a.txt       sample.txt
    root@dm814x-evm:~# cd /
    root@dm814x-evm:/# ls
    bin      dev      home     linuxrc  mnt      sbin     sys      usr
    boot     etc      lib      media    proc     srv      tmp      var
    root@dm814x-evm:/# cd media/
    root@dm814x-evm:/media# ls
    card       hdd        mmcblk0p1  net        realroot
    cf         mmc1       mmcblk0p2  ram        union
    root@dm814x-evm:/media# cd mmcblk0p1/
    root@dm814x-evm:/media/mmcblk0p1# ls
    MLO                 ti_logo.bmp         uImage
    README.boot.scr     top_ti816x_evm.png  windows_users.htm
    boot.cmd            u-boot.bin
    boot.scr            u-boot.noxip.bin
    root@dm814x-evm:/media/mmcblk0p1# cd ..
    root@dm814x-evm:/media# cd mmcblk0p2/
    root@dm814x-evm:/media/mmcblk0p2# ls
    Settings    etc         lost+found  proc        tmp
    bin         home        media       sbin        usr
    boot        lib         mnt         srv         var
    dev         linuxrc     opt         sys
    root@dm814x-evm:/media/mmcblk0p2#

    BR
    Pavel

  • Hi Pavel,

     

    We've been using psp04.04.00.01. u-boot and linux sources comes from the same archive. I'll look and see if there are any changes that might help with the version you indicate.

    Regards

  • Hi Pavel,

    I've been looking a bit more in deep where the "mmc: error -101 whilst initialising in SD card" is generated in the code.

    The card is managed in SD mode. The driver follows initialisation procedure and send the ACMD41 command asking for supported voltages and wait for the SD card to set the bit 31 in OCR to 1 (Card power status bit). The matter is that the card does not put that bit to 1 and the driver gives up after 1s (100 retries, waiting 10ms between retries). I've tried increasing the delay but to no change (code is in drivers/mmc/core/sd_ops.c, function mmc_send_app_op_cond, l 155).

    The request is sent with value 0x40200000

    The response is 0x00ff8000

    I have no clue as to why the SD card would not go out of the busy/initialisation state. That same SD card does not show any problem on both a windows and a linux PC.

    Would you have any idea where to search next?

    Many thanks

  • Claire,

    ClM said:

    I have no clue as to why the SD card would not go out of the busy/initialisation state. That same SD card does not show any problem on both a windows and a linux PC.

    Would you have any idea where to search next?

    I suspect this might be HW issue. Can you try this MMC/SD card on DM814x TI EVM (not testing just on custom board)? Do you have the same at the DM814x TI EVM?

    BR
    Pavel