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.

how to declare in linux a second sd card in linux AM3352 custom board

Other Parts Discussed in Thread: AM3352

Hello

I have a custom board based on AM3352 with 2 SD cards, but only one mmc0  is recognized and working well in linux :

[    2.499206] mmc0: host does not support reading read-only switch. assuming wr
ite-enable.                                                                     
[    2.509399] mmc0: new high speed SD card at address 0260                     
[    2.515594] mmcblk0: mmc0:0260 SD    977 MiB                                 
[    2.523162]  mmcblk0: p1 p2 < >                                              

in the board-am335Xevm.c file i added the mmc1_init call with the correct pinmux.

Where must we declare the number of SD-card for linux

regards

thanks

  • Hi,

    For reference look how this is done in the evm_dev_cfg structure for the General Purpose EVM inside board-am335xevm.c:

    {mmc1_init,    DEV_ON_DGHTR_BRD, PROFILE_2},

    Please note that this only works in CPLD profile 2 of the EVM, because otherwise these pins are used for the NAND flash.

    Best regards,
    Miroslav

  • And make sure you have that line before the mmc0_init.

    Steve K.

  • Hello

    thanks for your reply; i have made the following modifications for my second SD card :

    1° call mmc1_init :

       {mmc1_init,    DEV_ON_BASEBOARD, PROFILE_ALL}, /* added */
        {mmc0_init,    DEV_ON_BASEBOARD, PROFILE_ALL},

    2° update mmc1 init according to my GPIOs for CD and WP :

    static void mmc1_init(int evm_id, int profile)
    {
        setup_pin_mux(mmc1_common_pin_mux);

        am335x_mmc[1].mmc = 2;
        am335x_mmc[1].caps = MMC_CAP_4_BIT_DATA;

        am335x_mmc[1].gpio_cd = GPIO_TO_PIN(0, 14);  //GPIO0_14

        am335x_mmc[1].gpio_wp = GPIO_TO_PIN(3, 18); //GPIO3_18

        am335x_mmc[1].ocr_mask = MMC_VDD_32_33 | MMC_VDD_33_34; /* 3V3 */

        /* mmc will be initialized when mmc0_init is called */
        return;
    }

    3° update mmc1_common_pin_mux according to my GPIOs

    static struct pinmux_config mmc1_common_pin_mux[] = {
        {"gpmc_ad11.mmc1_dat3",    OMAP_MUX_MODE1 | AM33XX_PIN_INPUT_PULLUP},
        {"gpmc_ad10.mmc1_dat2",    OMAP_MUX_MODE1 | AM33XX_PIN_INPUT_PULLUP},
        {"gpmc_ad9.mmc1_dat1",    OMAP_MUX_MODE1 | AM33XX_PIN_INPUT_PULLUP},
        {"gpmc_ad8.mmc1_dat0",    OMAP_MUX_MODE1 | AM33XX_PIN_INPUT_PULLUP},
        {"mcasp0_aclkr.gpio3_18", OMAP_MUX_MODE7 | AM33XX_PIN_INPUT_PULLUP}, //WP
        {"uart1_rxd.gpio0_14", OMAP_MUX_MODE7 | AM33XX_PIN_INPUT_PULLUP}, //CD
        {"gpmc_csn1.mmc1_clk",    OMAP_MUX_MODE2 | AM33XX_PIN_INPUT_PULLUP},
        {"gpmc_csn2.mmc1_cmd",    OMAP_MUX_MODE2 | AM33XX_PIN_INPUT_PULLUP},
        {NULL, 0},

    4°keep the following struture

    static struct omap2_hsmmc_info am335x_mmc[] __initdata = {
        {
            .mmc            = 1,
            .caps           = MMC_CAP_4_BIT_DATA,
            .gpio_cd        = GPIO_TO_PIN(0, 6),
            .gpio_wp        = GPIO_TO_PIN(3, 18),
            .ocr_mask       = MMC_VDD_32_33 | MMC_VDD_33_34, /* 3V3 */
        },
        {
            .mmc            = 0,    /* will be set at runtime */
        },
        {
            .mmc            = 0,    /* will be set at runtime */
        },
        {}      /* Terminator */
    };

    The only line concerning mmc1 is the following : mmc1: mmc_rescan_try_freq: trying to init card at 400000 Hz  

    -> I put the MMC_DEBUG_TRACE and get trace about  wl12xx_sdio : can it be the problem ; how can i suppress that ?

    -> Have you any clue why my SD2 is not recognize  ?

    -> should am335x_mmc structure be modified ?

    Thanks a lot

    Here is the entire linux trace :

     Booting kernel from Legacy Image at 80007fc0 ...                             
       Image Name:   Linux-3.2.0                                                    
       Image Type:   ARM Linux Kernel Image (uncompressed)                          
       Data Size:    3157960 Bytes = 3 MiB                                          
       Load Address: 80008000                                                       
       Entry Point:  80008000                                                       
       Verifying Checksum ... OK                                                    
       XIP Kernel Image ... OK                                                      
    OK                                                                              
                                                                                    
    Starting kernel ...                                                             
                                                                                    
    Uncompressing Linux... done, booting the kernel.                                
    [    0.000000] Linux version 3.2.0 (pengwyn@pengwyn-desktop) (gcc version 4.5.3
    20110311 (prerelease) (GCC) ) #104 Mon May 19 08:04:58 CEST 2014                
    [    0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c53c7d  
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instructio
    n cache                                                                         
    [    0.000000] Machine: am335xevm                                               
    [    0.000000] Memory policy: ECC disabled, Data cache writeback                
    [    0.000000] AM335X ES2.0 (neon )                                             
    [    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pag
    es: 130048                                                                      
    [    0.000000] Kernel command line: console=ttyO0,115200n8 root=/dev/nfs nfsroot
    =192.168.213.44:/home/pengwyn/ti-sdk-am335x-evm-05.06.00.00/targetNFS,proto=tcp,
    port=2049 rw ip=dhcp                                                            
    [    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: 513152k/513152k available, 11136k 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 - 0xc059e000   (5720 kB)                
    [    0.000000]       .init : 0xc059e000 - 0xc05dc000   ( 248 kB)                
    [    0.000000]       .data : 0xc05dc000 - 0xc06469e8   ( 427 kB)                
    [    0.000000]        .bss : 0xc0646a0c - 0xc0671ec4   ( 174 kB)                
    [    0.000000] NR_IRQS:396                                                      
    [    0.000000] IRQ: Found an INTC at 0xfa200000 (revision 5.0) with 128 interrup
    ts                                                                              
    [    0.000000] Total of 128 interrupts on 1 active controller                   
    [    0.000000] OMAP clockevent source: GPTIMER2 at 24000000 Hz                  
    [    0.000000] OMAP clocksource: GPTIMER1 at 32768 Hz                           
    [    0.000000] sched_clock: 32 bits at 32kHz, resolution 30517ns, wraps every 13
    1071999ms                                                                       
    [    0.000000] Console: colour dummy device 80x30                               
    [    0.000183] Calibrating delay loop... 548.86 BogoMIPS (lpj=2744320)          
    [    0.047149] pid_max: default: 32768 minimum: 301                             
    [    0.047302] Security Framework initialized                                   
    [    0.047424] Mount-cache hash table entries: 512                              
    [    0.047851] CPU: Testing write buffer coherency: ok                          
    [    0.068817] omap_hwmod: gfx: failed to hardreset                             
    [    0.084991] omap_hwmod: pruss: failed to hardreset                           
    [    0.086273] print_constraints: dummy:                                        
    [    0.086700] NET: Registered protocol family 16                               
    [    0.089202] OMAP GPIO hardware version 0.1                                   
    [    0.092102] am335x_ucr_init**                                                
    [    0.092346] omap_mux_init: Add partition: #1: core, flags: 0                 
    [    0.094512]  omap_i2c.1: alias fck already exists                            
    [    0.094787]  omap_i2c.2: alias fck already exists                            
    [    0.095611]  d_can.1: alias fck already exists                               
    [    0.095886] am33xx_d_can_init(1) for UCR                                     
    [    0.096252]  omap2_mcspi.1: alias fck already exists                         
    [    0.096496]  omap2_mcspi.2: alias fck already exists                         
    [    0.097656]  edma.0: alias fck already exists                                
    [    0.097686]  edma.0: alias fck already exists                                
    [    0.097686]  edma.0: alias fck already exists                                
    [    0.131225] bio: create slab <bio-0> at 0                                    
    [    0.134002] SCSI subsystem initialized                                       
    [    0.135986] usbcore: registered new interface driver usbfs                   
    [    0.136352] usbcore: registered new interface driver hub                     
    [    0.136596] usbcore: registered new device driver usb                        
    [    0.136749] musb-ti81xx musb-ti81xx: musb0, board_mode=0x13, plat_mode=0x3   
    [    0.137084] musb-ti81xx musb-ti81xx: musb1, board_mode=0x13, plat_mode=0x1   
    [    0.153625] omap_i2c omap_i2c.1: bus 1 rev2.4.0 at 100 kHz                   
    [    0.154632] pcf857x: probe of 1-0040 failed with error -121                  
    [    0.154907] i2c i2c-1: Invalid 7-bit I2C address 0xa0                        
    [    0.154937] i2c i2c-1: Can't create device at 0xa0                           
    [    0.172943] omap_i2c omap_i2c.2: bus 2 rev2.4.0 at 100 kHz                   
    [    0.173675] pcf857x: probe of 2-0040 failed with error -121                  
    [    0.174194] i2c i2c-2: Invalid 7-bit I2C address 0xa0                        
    [    0.174224] i2c i2c-2: Can't create device at 0xa0                           
    [    0.175354] Advanced Linux Sound Architecture Driver Version 1.0.24.         
    [    0.176666] Switching to clocksource gp timer                                
    [    0.195892] musb-hdrc: version 6.0, ?dma?, otg (peripheral+host)             
    [    0.196105] musb-hdrc musb-hdrc.0: dma type: pio                             
    [    0.196502] MUSB0 controller's USBSS revision = 4ea20800                     
    [    0.196533] musb0: Enabled SW babble control                                 
    [    0.197387] musb-hdrc musb-hdrc.0: USB OTG mode controller at e083c000 using
    PIO, IRQ 18                                                                     
    [    0.197570] musb-hdrc musb-hdrc.1: dma type: pio                             
    [    0.197937] MUSB1 controller's USBSS revision = 4ea20800                     
    [    0.197967] musb1: Enabled SW babble control                                 
    [    0.198181] musb-hdrc musb-hdrc.1: MUSB HDRC host driver                     
    [    0.198272] musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus numbe
    r 1                                                                             
    [    0.198425] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002    
    [    0.198425] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=
    1                                                                               
    [    0.198455] usb usb1: Product: MUSB HDRC host driver                         
    [    0.198455] usb usb1: Manufacturer: Linux 3.2.0 musb-hcd                     
    [    0.198486] usb usb1: SerialNumber: musb-hdrc.1                              
    [    0.199493] hub 1-0:1.0: USB hub found                                       
    [    0.199554] hub 1-0:1.0: 1 port detected                                     
    [    0.200164] musb-hdrc musb-hdrc.1: USB Host mode controller at e083e800 using
     PIO, IRQ 19                                                                    
    [    0.200653] NET: Registered protocol family 2                                
    [    0.200866] IP route cache hash table entries: 4096 (order: 2, 16384 bytes)  
    [    0.201202] TCP established hash table entries: 16384 (order: 5, 131072 bytes
    )                                                                               
    [    0.201568] TCP bind hash table entries: 16384 (order: 4, 65536 bytes)       
    [    0.201782] TCP: Hash tables configured (established 16384 bind 16384)       
    [    0.201812] TCP reno registered                                              
    [    0.201812] UDP hash table entries: 256 (order: 0, 4096 bytes)               
    [    0.201843] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)          
    [    0.202056] NET: Registered protocol family 1                                
    [    0.202362] RPC: Registered named UNIX socket transport module.              
    [    0.202392] RPC: Registered udp transport module.                            
    [    0.202392] RPC: Registered tcp transport module.                            
    [    0.202392] RPC: Registered tcp NFSv4.1 backchannel transport module.        
    [    0.202667] NetWinder Floating Point Emulator V0.97 (double precision)       
    [    0.221893] VFS: Disk quotas dquot_6.5.2                                     
    [    0.221984] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)       
    [    0.222625] msgmni has been set to 1002                                      
    [    0.226257] alg: No test for stdrng (krng)                                   
    [    0.227111] io scheduler noop registered                                     
    [    0.227142] io scheduler deadline registered                                 
    [    0.227203] io scheduler cfq registered (default)                            
    [    0.229064] omap_uart.0: ttyO0 at MMIO 0x44e09000 (irq = 72) is a OMAP UART0
    [    0.824890] console [ttyO0] enabled                                          
    [    0.829162] omap_uart.1: ttyO1 at MMIO 0x48022000 (irq = 73) is a OMAP UART1
    [    0.836822] omap_uart.2: ttyO2 at MMIO 0x48024000 (irq = 74) is a OMAP UART2
    [    0.844482] omap_uart.3: ttyO3 at MMIO 0x481a6000 (irq = 44) is a OMAP UART3
    [    0.852111] omap_uart.4: ttyO4 at MMIO 0x481a8000 (irq = 45) is a OMAP UART4
    [    0.859771] omap_uart.5: ttyO5 at MMIO 0x481aa000 (irq = 46) is a OMAP UART5
    [    0.867950] omap4_rng omap4_rng: OMAP4 Random Number Generator ver. 2.00     
    [    0.886260] brd: module loaded                                               
    [    0.895477] loop: module loaded                                              
    [    0.898925] i2c-core: driver [tsl2550] using legacy suspend method           
    [    0.905151] i2c-core: driver [tsl2550] using legacy resume method            
    [    0.911407] at24 1-0050: 32768 byte 24c256 EEPROM, writable, 64 bytes/write  
    [    0.918487] MAC address Pengwyn                                              
    [    0.921630] UCR Board                                                        
    [    0.923950] Board name: UCR                                                  
    [    0.926849] Board version: #1.0                                              
    [    0.930053] The board is UCR.                                                
    [    0.933929] _omap_mux_get_by_name: Could not find signal mcasp0_aclkr.gpio3_1
    5                                                                               
    [    0.941345]  omap_hsmmc.0: alias fck already exists                          
    [    0.946685]  omap_hsmmc.1: alias fck already exists                          
    [    0.951934] board-am335xevm.c : UCR !!!!!!!!mM33XX_CPSW_MODE_RGMII.          
    [    0.958312] UCR!!!!!!devices.c  mode=2 phy_id0= (null) phy_id1= (null)       
    [    0.964904] UCR!!!!!!devices.c  mode=2 phy_id0= (null) phy_id1= (null)       
    [    0.972503] registered am33xx_sr device                                      
    [    0.978607] mtdoops: mtd device (mtddev=name/number) must be supplied        
    [    0.985565] omap2-nand driver initializing                                   
    [    0.990020] OneNAND driver initializing                                      
    [    0.996185] vcan: Virtual CAN interface driver                               
    [    1.000701] CAN device driver interface                                      
    [    1.004577] CAN bus driver for Bosch D_CAN controller 1.0                    
    [    1.010955] d_can d_can.1: device registered (irq=55, irq_obj=56)            
    [    1.047393] usb 1-1: new high-speed USB device number 2 using musb-hdrc      
    [    1.067230] davinci_mdio davinci_mdio.0: davinci mdio revision 1.6           
    [    1.073486] davinci_mdio davinci_mdio.0: detected phy mask effeffff          
    [    1.081329] davinci_mdio.0: probed                                           
    [    1.084777] davinci_mdio davinci_mdio.0: phy[16]: device 0:10, driver Marvell
     88E3018                                                                        
    [    1.092712] davinci_mdio davinci_mdio.0: phy[28]: device 0:1c, driver Marvell
     88E1118                                                                        
    [    1.101074] usbcore: registered new interface driver cdc_ether               
    [    1.107177] usbcore: registered new interface driver cdc_eem                 
    [    1.113159] usbcore: registered new interface driver dm9601                  
    [    1.118896] cdc_ncm: 04-Aug-2011                                             
    [    1.122375] usbcore: registered new interface driver cdc_ncm                 
    [    1.128143] Initializing USB Mass Storage driver...                          
    [    1.133361] usbcore: registered new interface driver usb-storage             
    [    1.139465] USB Mass Storage support registered.                             
    [    1.144531] usbcore: registered new interface driver usbserial               
    [    1.150634] USB Serial support registered for generic                        
    [    1.187438] usb 1-1: New USB device found, idVendor=0424, idProduct=2513     
    [    1.194244] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
    [    1.202484] hub 1-1:1.0: USB hub found                                       
    [    1.206359] hub 1-1:1.0: 3 ports detected                                    
    [    1.211578] usbcore: registered new interface driver usbserial_generic       
    [    1.218231] usbserial: USB Serial Driver core                                
    [    1.222808] USB Serial support registered for FTDI USB Serial Device         
    [    1.229675] usbcore: registered new interface driver ftdi_sio                
    [    1.235473] ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver               
    [    1.241943] mousedev: PS/2 mouse device common for all mice                  
    [    1.248748] omap_rtc am33xx-rtc: rtc core: registered am33xx-rtc as rtc0     
    [    1.255767] i2c /dev entries driver                                          
    [    1.260101] Linux video capture interface: v2.00                             
    [    1.265167] usbcore: registered new interface driver uvcvideo                
    [    1.271026] USB Video Class driver (1.1.1)                                   
    [    2.287322] omap_i2c omap_i2c.2: timeout waiting for bus ready               
    [    2.293243] lm75: probe of 2-0048 failed with error -121                     
    [    2.301757] OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec             
    [    2.308166] _regulator_get: deviceless supply vdd_mpu not found, using dummy
    regulator                                                                       
    [    2.316680] cpuidle: using governor ladder                                   
    [    2.321472] cpuidle: using governor menu                                     
    [    2.327911] mmc0: mmc_rescan_try_freq: trying to init card at 400000 Hz      
    [    2.336456] omap4_aes_mod_init: loading AM33X AES driver                     
    [    2.342010] omap4-aes omap4-aes: AM33X AES hw accel rev: 3.02                
    [    2.348693] omap4_aes_probe: probe() done                                    
    [    2.353027] omap4_sham_mod_init: loading AM33X SHA/MD5 driver                
    [    2.359008] omap4-sham omap4-sham: AM33X SHA/MD5 hw accel rev: 4.03          
    [    2.379028] omap4_sham_probe: probe() done                                   
    [    2.386444] usbcore: registered new interface driver usbhid                  
    [    2.392120] usbhid: USB HID core driver                                      
    [    2.396728] usbcore: registered new interface driver snd-usb-audio           
    [    2.405090] ALSA device list:                                                
    [    2.408142]   No soundcards found.                                           
    [    2.411590] oprofile: hardware counters not available                        
    [    2.416687] oprofile: using timer interrupt.                                 
    [    2.421051] nf_conntrack version 0.5.0 (8018 buckets, 32072 max)             
    [    2.427764] ip_tables: (C) 2000-2006 Netfilter Core Team                     
    [    2.433258] TCP cubic registered                                             
    [    2.436523] NET: Registered protocol family 17                               
    [    2.441070] can: controller area network core (rev 20090105 abi 8)           
    [    2.447448] NET: Registered protocol family 29                               
    [    2.451934] can: raw protocol (rev 20090105)                                 
    [    2.456268] can: broadcast manager protocol (rev 20090105 t)                 
    [    2.462036] Registering the dns_resolver key type                            
    [    2.466918] VFP support v0.3: implementor 41 architecture 3 part 30 variant c
     rev 3                                                                          
    [    2.474700] ThumbEE CPU extension supported.                                 
    [    2.479095] mux: Failed to setup hwmod io irq -22                            
    [    2.484527] Power Management for AM33XX family                               
    [    2.489257] Trying to load am335x-pm-firmware.bin (60 secs timeout)          
    [    2.495727] Copied the M3 firmware to UMEM                                   
    [    2.500061] smartreflex smartreflex: am33xx_sr_probe: Smartreflex requires ES
     1.0                                                                            
    [    2.507659] smartreflex: probe of smartreflex failed with error -22          
    [    2.514648] sr_init: platform driver register failed                         
    [    2.523529] clock: disabling unused clocks to save power                     
    [    2.544799] Detected MACID=1c:ba:8c:b7:27:3e                                 
    [    2.551116] omap_rtc am33xx-rtc: setting system clock to 2000-01-01 00:00:01
    UTC (946684801)                                                                 
    [    2.562347] PHY 0:1C not found                                               
    [    2.567718] net eth0: CPSW phy found : id is : 0x1410e20                     
    [    2.585723] mmc0: host does not support reading read-only switch. assuming wr
    ite-enable.                                                                     
    [    2.596099] mmc0: new high speed SD card at address 0260                     
    [    2.602355] mmcblk0: mmc0:0260 SD    977 MiB                                 
    [    2.609130]  mmcblk0: p1 p2                                                  
    [    2.613250] mmc1: mmc_rescan_try_freq: trying to init card at 400000 Hz      
    [    5.568725] PHY: 0:10 - Link is Up - 100/Full                                
    [    5.597930] Sending DHCP requests ., OK                                      
    [    5.618377] IP-Config: Got DHCP answer from 0.0.0.0, my address is 192.168.21
    3.67                                                                            
    [    5.626190] IP-Config: Complete:                                             
    [    5.629486]      device=eth0, addr=192.168.213.67, mask=255.255.255.0, gw=192
    .168.213.254,                                                                   
    [    5.637603]      host=192.168.213.67, domain=le.corp, nis-domain=(none),     
    [    5.644378]      bootserver=0.0.0.0, rootserver=192.168.213.44, rootpath=    
    [    5.680755] VFS: Mounted root (nfs filesystem) on device 0:14.               
    [    5.687103] Freeing init memory: 248K                                        
    INIT: version 2.88 booting                                                      
    /etc/rcS.d/S00psplash.sh: line 10: /dev/fb0: No such device                     
    Starting udev                                                                   
    [    9.917144] kjournald starting.  Commit interval 5 seconds                   
    [    9.922973] EXT3-fs (mmcblk0p2): warning: mounting fs with errors, running e2
    fsck is recommended                                                             
    [   10.007263] EXT3-fs (mmcblk0p2): using internal journal                      
    [   10.012634] EXT3-fs (mmcblk0p2): recovery complete                           
    [   10.017486] EXT3-fs (mmcblk0p2): mounted filesystem with ordered data mode   
    Starting Bootlog daemon: bootlogd: cannot allocate pseudo tty: No such file or d
    irectory                                                                        
    bootlogd.                                                                       
    ALSA: Restoring mixer settings...                                               
    /usr/sbin/alsactl: load_state:1686: No soundcards found...                      
    NOT configuring network interfaces: / is an NFS mount                           
    Mon Dec 17 06:07:00 UTC 2012                                                    
    INIT: Entering runlevel: 5                                                      
    Starting system message bus: dbus.                                              
    Starting Dropbear SSH server: dropbear.                                         
    Starting telnet daemon.                                                         
    Performing wifi calibration...                                                  
    rm: can't remove '/lib/firmware/ti-connectivity/wl1271-nvs.bin': No such file or
     directory                                                                      
    ERROR: Module wl12xx_sdio does not exist in /proc/modules                       
    nl80211 not found.                                                              
    [   11.857727] Disabling lock debugging due to kernel taint                     
    [   11.863403] wl12xx_sdio: disagrees about version of symbol sdio_release_host
    [   11.870544] wl12xx_sdio: Unknown symbol sdio_release_host (err -22)          
    [   11.876922] wl12xx_sdio: disagrees about version of symbol sdio_disable_func
    [   11.884063] wl12xx_sdio: Unknown symbol sdio_disable_func (err -22)          
    [   11.890411] wl12xx_sdio: disagrees about version of symbol sdio_set_block_siz
    e                                                                               
    [   11.897705] wl12xx_sdio: Unknown symbol sdio_set_block_size (err -22)        
    [   11.904266] wl12xx_sdio: disagrees about version of symbol sdio_claim_host   
    [   11.911224] wl12xx_sdio: Unknown symbol sdio_claim_host (err -22)            
    [   11.917388] wl12xx_sdio: disagrees about version of symbol sdio_memcpy_fromio
    [   11.924621] wl12xx_sdio: Unknown symbol sdio_memcpy_fromio (err -22)         
    [   11.931060] wl12xx_sdio: disagrees about version of symbol sdio_register_driv
    er                                                                              
    [   11.938446] wl12xx_sdio: Unknown symbol sdio_register_driver (err -22)       
    [   11.945129] wl12xx_sdio: disagrees about version of symbol sdio_memcpy_toio  
    [   11.952178] wl12xx_sdio: Unknown symbol sdio_memcpy_toio (err -22)           
    [   11.958435] wl12xx_sdio: disagrees about version of symbol mmc_power_restore_
    host                                                                            
    [   11.966003] wl12xx_sdio: Unknown symbol mmc_power_restore_host (err -22)     
    [   11.972808] wl12xx_sdio: disagrees about version of symbol mmc_power_save_hos
    t                                                                               
    [   11.980133] wl12xx_sdio: Unknown symbol mmc_power_save_host (err -22)        
    [   11.986633] wl12xx_sdio: disagrees about version of symbol sdio_f0_readb     
    [   11.993438] wl12xx_sdio: Unknown symbol sdio_f0_readb (err -22)              
    [   11.999450] wl12xx_sdio: disagrees about version of symbol sdio_set_host_pm_f
    lags                                                                            
    [   12.007049] wl12xx_sdio: Unknown symbol sdio_set_host_pm_flags (err -22)     
    [   12.013824] wl12xx_sdio: disagrees about version of symbol sdio_f0_writeb    
    [   12.020721] wl12xx_sdio: Unknown symbol sdio_f0_writeb (err -22)             
    [   12.026794] wl12xx_sdio: disagrees about version of symbol sdio_unregister_dr
    iver                                                                            
    [   12.034362] wl12xx_sdio: Unknown symbol sdio_unregister_driver (err -22)     
    [   12.041168] wl12xx_sdio: disagrees about version of symbol sdio_readsb       
    [   12.047760] wl12xx_sdio: Unknown symbol sdio_readsb (err -22)                
    [   12.053649] wl12xx_sdio: disagrees about version of symbol sdio_get_host_pm_c
    aps                                                                             
    [   12.061126] wl12xx_sdio: Unknown symbol sdio_get_host_pm_caps (err -22)      
    [   12.067840] wl12xx_sdio: Unknown symbol wl12xx_get_platform_data (err 0)     
    [   12.074645] wl12xx_sdio: disagrees about version of symbol sdio_enable_func  
    [   12.081695] wl12xx_sdio: Unknown symbol sdio_enable_func (err -22)           
    [   12.087951] wl12xx_sdio: disagrees about version of symbol sdio_writesb      
    [   12.094635] wl12xx_sdio: Unknown symbol sdio_writesb (err -22)               
    FATAL: Error inserting wl12xx_sdio (/lib/modules/3.2.0/updates/drivers/net/wirel
    ess/wl12xx/wl12xx_sdio.ko): Invalid argument                                    
    Starting network benchmark server: netserver.                                   
    Starting syslogd/klogd: done                                                    
    Starting thttpd.                                                                
    Starting Lighttpd Web Server: lighttpd.                                         
    2012-12-17 06:07:01: (log.c.166) server started                                 
    /                                                                               
    Starting Matrix GUI application.                                                
    [   13.638702] g_mass_storage: disagrees about version of symbol wake_up_process
    [   13.645935] g_mass_storage: Unknown symbol wake_up_process (err -22)         
    FATAL: Error inserting g_mass_storage (/lib/modules/3.2.0/kernel/drivers/usb/gad
    get/g_mass_storage.ko): Invalid argument                                        
    ***************************************************************                 
    ***************************************************************                 
    NOTICE: This file system contains the followin GPLv3 packages:                  
            binutils-symlinks                                                       
            binutils                                                                
            gdbserver                                                               
                                                                                    
    If you do not wish to distribute GPLv3 components please remove                 
    the above packages prior to distribution.  This can be done using               
    the opkg remove command.  i.e.:                                                 
        opkg remove <package>                                                       
    Where <package> is the name printed in the list above                           
                                                                                    
    NOTE: If the package is a dependency of another package you                     
          will be notified of the dependent packages.  You should                   
          use the --force-removal-of-dependent-packages option to                   
          also remove the dependent packages as well                                
    ***************************************************************                 
    ***************************************************************                 
    Stopping Bootlog daemon: bootlogd.                                              
    umount: can't umount /mnt/.psplash: Invalid argument                            
                                                                                    
     _____                    _____           _         _                           
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_                         
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|                        
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|                          
                  |___|                    |___|                                    
                                                                                    
    Arago Project http://arago-project.org am335x-evm ttyO0                         
                                                                                    
    Arago 2012.10 am335x-evm ttyO0                                                  
                                                                                    
    am335x-evm login: root                                                          
    root@am335x-evm:~# ls /media/mmc                                                
    ls: /media/mmc: No such file or directory                                       
    root@am335x-evm:~# ls /media/mmc*                                               
    /media/mmc1:                                                                    
                                                                                    
    /media/mmcblk0p2:                                                               
    bin         home        media       root        sys         var                 
    dev         lib         mnt         run         tmp                             
    etc         lost+found  proc        sbin        usr                             
    root@am335x-evm:~# more /etc/fstab                                              
    # stock fstab - you probably want to override this with a machine specific one  
                                                                                    
    rootfs               /                    auto       defaults              1  1
    proc                 /proc                proc       defaults              0  0
    devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
    usbfs                /proc/bus/usb        usbfs      defaults              0  0
    tmpfs                /var/volatile        tmpfs      defaults,size=16M     0  0
    tmpfs                /dev/shm             tmpfs      mode=0777             0  0
    tmpfs                /media/ram           tmpfs      defaults,size=16M     0  0
                                                                                    
    # uncomment this if your device has a SD/MMC/Transflash slot                    
    #/dev/mmcblk0p1       /media/card          auto       defaults,sync,noauto  0  0
                                                                                    
    root@am335x-evm:~#

  • Hello

    thanks for the reply; that's what i have done...

    regards

  • Hello

    is there a way to suppress "Performing wifi calibration...      "
    and disable the wl12xx_sdio loading ? (maybe it is making trouble on my mmc1 ?)

    thanks

  • trichet christophe said:
    is there a way to suppress "Performing wifi calibration...      "

    and disable the wl12xx_sdio loading ? (maybe it is making trouble on my mmc1 ?)

    The calibration is done by the /etc/init.d/calibrate.sh script. You can remove this script from the Runtime Control with the following command:

    update-rc.d -f <script_name> remove

    Best regards,
    Miroslav

  • Hello

    thanks for your reply, that's correct, i don't have any more trace about wl12xx, but my mmc1 is still not working...

    Have you any idea ?

    [    2.551696] mmc0: host does not support reading read-only switch. assuming wr
    ite-enable.                                                                     
    [    2.562164] mmc0: new high speed SD card at address 0260                     
    [    2.568511] mmcblk0: mmc0:0260 SD    977 MiB                                 
    [    2.576324]  mmcblk0: p1 p2 < >                                              
    [    2.581115] mmc1: mmc_rescan_try_freq: trying to init card at 400000 Hz : this is the only trace i have about mmn1

    i have made the following modifications to have a second SD card reader :

    1° call mmc1_init :

       {mmc1_init,    DEV_ON_BASEBOARD, PROFILE_ALL}, /* added */
        {mmc0_init,    DEV_ON_BASEBOARD, PROFILE_ALL},

    2° update mmc1 init according to my GPIOs for CD and WP :

    static void mmc1_init(int evm_id, int profile)
    {
        setup_pin_mux(mmc1_common_pin_mux);

        am335x_mmc[1].mmc = 2;
        am335x_mmc[1].caps = MMC_CAP_4_BIT_DATA;

        am335x_mmc[1].gpio_cd = GPIO_TO_PIN(0, 14);  //GPIO0_14

        am335x_mmc[1].gpio_wp = GPIO_TO_PIN(3, 18); //GPIO3_18

        am335x_mmc[1].ocr_mask = MMC_VDD_32_33 | MMC_VDD_33_34; /* 3V3 */

        /* mmc will be initialized when mmc0_init is called */
        return;
    }

    3° update mmc1_common_pin_mux according to my GPIOs

    static struct pinmux_config mmc1_common_pin_mux[] = {
        {"gpmc_ad11.mmc1_dat3",    OMAP_MUX_MODE1 | AM33XX_PIN_INPUT_PULLUP},
        {"gpmc_ad10.mmc1_dat2",    OMAP_MUX_MODE1 | AM33XX_PIN_INPUT_PULLUP},
        {"gpmc_ad9.mmc1_dat1",    OMAP_MUX_MODE1 | AM33XX_PIN_INPUT_PULLUP},
        {"gpmc_ad8.mmc1_dat0",    OMAP_MUX_MODE1 | AM33XX_PIN_INPUT_PULLUP},
        {"mcasp0_aclkr.gpio3_18", OMAP_MUX_MODE7 | AM33XX_PIN_INPUT_PULLUP}, //WP
        {"uart1_rxd.gpio0_14", OMAP_MUX_MODE7 | AM33XX_PIN_INPUT_PULLUP}, //CD
        {"gpmc_csn1.mmc1_clk",    OMAP_MUX_MODE2 | AM33XX_PIN_INPUT_PULLUP},
        {"gpmc_csn2.mmc1_cmd",    OMAP_MUX_MODE2 | AM33XX_PIN_INPUT_PULLUP},
        {NULL, 0},

    4°keep the following struture

    static struct omap2_hsmmc_info am335x_mmc[] __initdata = {
        {
            .mmc            = 1,
            .caps           = MMC_CAP_4_BIT_DATA,
            .gpio_cd        = GPIO_TO_PIN(0, 6),
            .gpio_wp        = GPIO_TO_PIN(3, 18),
            .ocr_mask       = MMC_VDD_32_33 | MMC_VDD_33_34, /* 3V3 */
        },
        {
            .mmc            = 0,    /* will be set at runtime */
        },
        {
            .mmc            = 0,    /* will be set at runtime */
        },
        {}      /* Terminator */
    };

    regards

  • Hi all,

    Just for future reference, I'm posting a link to this problem's solution inside the Linux forum: http://e2e.ti.com/support/embedded/linux/f/354/p/342533/1197101.aspx#1197101

    Best regards,
    Miroslav

  • Hi,:

    I have got the same problem like you.The kernel log only has the info "mmc1: mmc_rescan_try_freq: trying to init card at 400000 Hz".

    I use the mmc_data as MODE_2,it doesn't work.How did you resolve the problem?

    Thank U very much!