public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* MMC3 Overo
@ 2009-07-30 15:49 John Sarman
  2009-07-30 19:23 ` John Sarman
  2009-08-05  8:32 ` Grazvydas Ignotas
  0 siblings, 2 replies; 30+ messages in thread
From: John Sarman @ 2009-07-30 15:49 UTC (permalink / raw)
  To: linux-omap

I am trying to use mmc3 on the Overo Gumstix board with no luck.  I
have patched the kernel with the latest changes and have yet to see a
clk pulse, both before and after the patches.
So far I have reconfigured the pins with uboot to GPIO and tested each
pin to verify that the signals are connected properly.  That test
passed.
Then I reconfigured them back to MODE 2(mmc modes) for each pin.  I am
confident that the level transceiver(TXS0108ERGYR) is operating
properly. This transceiver is automatic so no external controls are
necessary.


<u-boot_snip>
 MUX_VAL(CP(ETK_CLK_ES2),       (IDIS | PTU | EN  | M2)) /*MMC3_CLK*/\
 MUX_VAL(CP(ETK_CTL_ES2),       (IEN  | PTU | EN  | M2)) /*MMC3_CMD*/\
 MUX_VAL(CP(ETK_D3_ES2),        (IEN  | PTU | EN  | M2)) /*MMC3_DAT3*/\
 MUX_VAL(CP(ETK_D4_ES2),        (IEN  | PTU | EN  | M2)) /*MMC3_DAT0*/\
 MUX_VAL(CP(ETK_D5_ES2),        (IEN  | PTU | EN  | M2)) /*MMC3_DAT1*/\
 MUX_VAL(CP(ETK_D6_ES2),        (IEN  | PTU | EN  | M2)) /*MMC3_DAT2*/\
</u-boot_snip>

<mmc_params>
// I Switched mmc 2 and 3 in a feeble attempt.  Also I removed 2 in an
earlier attempt and the kernel would not boot ???????
// Also I have tested working gpio connected to CD and WP but not
attempting to tackle that yet.
static struct twl4030_hsmmc_info mmc[] = {
        {
                .mmc            = 1,
                .wires          = 4,
                .gpio_cd        = -EINVAL,
                .gpio_wp        = -EINVAL,
        },
        {
                .mmc            = 3,
                .wires          = 4,
                .gpio_cd        = -EINVAL,
                .gpio_wp        = -EINVAL,
        },
        {
                .mmc            = 2,
                .wires          = 4,
                .gpio_cd        = -EINVAL,
                .gpio_wp        = -EINVAL,
                .transceiver    = true,
                .ocr_mask       = 0x00100000,   /* 3.3V */
        },
        {}      /* Terminator */
};
</mmc_params>

<twl_setup>

static int overo_twl_gpio_setup(struct device *dev,
                unsigned gpio, unsigned ngpio)
{
        twl4030_mmc_init(mmc);        <-- mmc params    passed to init

        overo_vmmc1_supply.dev = mmc[0].dev;

        return 0;
}
static struct twl4030_gpio_platform_data overo_gpio_data = {
        .gpio_base      = OMAP_MAX_GPIO_LINES,
        .irq_base       = TWL4030_GPIO_IRQ_BASE,
        .irq_end        = TWL4030_GPIO_IRQ_END,
        .setup          = overo_twl_gpio_setup,
<-----    setup passed into the twl4030 gpio platform data
};

static struct twl4030_platform_data overo_twldata = {
        .irq_base       = TWL4030_IRQ_BASE,
        .irq_end        = TWL4030_IRQ_END,
        .gpio           = &overo_gpio_data,
<--- gpio data passed into twl4030 plat data
        .usb            = &overo_usb_data,
        .power          = GENERIC3430_T2SCRIPTS_DATA,
        .vmmc1          = &overo_vmmc1,
};

static struct i2c_board_info __initdata overo_i2c_boardinfo[] = {
        {
                I2C_BOARD_INFO("tps65950", 0x48),
                .flags = I2C_CLIENT_WAKE,
                .irq = INT_34XX_SYS_NIRQ,
                .platform_data = &overo_twldata,
        },
};

static int __init overo_i2c_init(void)
{
        omap_register_i2c_bus(1, 2600, overo_i2c_boardinfo,
                        ARRAY_SIZE(overo_i2c_boardinfo));
        /* i2c2 pins are used for gpio */
        omap_register_i2c_bus(3, 400, NULL, 0);
        return 0;
}

// i2c_init called first in init.
static void __init overo_init(void)
{
        overo_i2c_init();
 .....
 </twl_setup>


So the way I see it working is i2c is initialized, which sets up the
twl4030.  When the twl4030 configures gpio it initializes the mmc.
mmc0 comes up fine (I have a root File System), but I never get a clk
on mmc3.

Any help would be greatly appreciated.

Thanks
John Sarman

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2009-08-07 13:24 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-07-30 15:49 MMC3 Overo John Sarman
2009-07-30 19:23 ` John Sarman
2009-08-03  1:20   ` Paul Walmsley
2009-08-03 10:33     ` John Sarman
     [not found]       ` <52AC0DF6-BA95-421B-8C56-5F3DC62279DF@mac.com>
     [not found]         ` <bb2708720908030356p6d7b1cdegf0bd8c39a5c4ecd9@mail.gmail.com>
2009-08-03 10:57           ` Fwd: " John Sarman
2009-08-03 11:11       ` Paul Walmsley
2009-08-04 12:21     ` John Sarman
2009-08-05  8:32 ` Grazvydas Ignotas
     [not found]   ` <bb2708720908050901lbc67b1cx5a75a7667fa36fd1@mail.gmail.com>
2009-08-05 16:02     ` Fwd: " John Sarman
2009-08-05 16:25       ` Kevin Hilman
2009-08-05 16:35         ` John Sarman
2009-08-05 17:51           ` Steve Sakoman
2009-08-05 17:56             ` Gadiyar, Anand
2009-08-05 17:58             ` Kevin Hilman
2009-08-05 18:21               ` Steve Sakoman
2009-08-05 18:35                 ` Kevin Hilman
2009-08-05 18:55                   ` Philip Balister
2009-08-06  2:13                     ` Hunyue Yau
     [not found]                   ` <bb2708720908051229x49f10094w9b19b468d4bfaec8@mail.gmail.com>
2009-08-06  2:02                     ` John Sarman
2009-08-06  6:44                       ` Tony Lindgren
2009-08-06 14:30                       ` Kevin Hilman
2009-08-06 14:44                         ` Vladimir Pantelic
2009-08-06 15:16                           ` Kevin Hilman
2009-08-06 15:35                             ` Steve Sakoman
2009-08-06 15:09                         ` Philip Balister
2009-08-06 16:09                           ` Peter Barada
2009-08-07  8:21                             ` Tony Lindgren
2009-08-07  9:24                               ` Vladimir Pantelic
2009-08-07  9:55                                 ` Tony Lindgren
2009-08-07 13:24                                   ` Steve Sakoman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox