Quantcast
Channel: Processors
Viewing all articles
Browse latest Browse all 148978

Forum Post: RE: AM335x mmc2

$
0
0

Hi,

I have also an issue with mmc2 @ an AM3352 phyCore and a custom Board.

My muxing and initialisation looks like this:

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 = -EINVAL,
  .ocr_mask       = MMC_VDD_32_33 | MMC_VDD_33_34, /* 3V3 */
 },
 { 
  .mmc = 2,
  .name = "EX_SD",
  .caps = MMC_CAP_4_BIT_DATA,
  .nonremovable = false,
  .gpio_cd = GPIO_TO_PIN(3, 16),
  .gpio_wp = -EINVAL,
  .ocr_mask = MMC_VDD_32_33 | MMC_VDD_33_34, /* 3V3 */
 },
 {
  .mmc            = 0, /* will be set at runtime */
 },
 {}      /* Terminator */
};

 

/* Module pin mux for mmc0 */
static struct pinmux_config mmc0_pin_mux[] = {
 {"mmc0_dat3.mmc0_dat3", OMAP_MUX_MODE0 | AM33XX_PIN_INPUT_PULLUP},
 {"mmc0_dat2.mmc0_dat2", OMAP_MUX_MODE0 | AM33XX_PIN_INPUT_PULLUP},
 {"mmc0_dat1.mmc0_dat1", OMAP_MUX_MODE0 | AM33XX_PIN_INPUT_PULLUP},
 {"mmc0_dat0.mmc0_dat0", OMAP_MUX_MODE0 | AM33XX_PIN_INPUT_PULLUP},
 {"mmc0_clk.mmc0_clk", OMAP_MUX_MODE0 | AM33XX_PIN_INPUT_PULLUP},
 {"mmc0_cmd.mmc0_cmd", OMAP_MUX_MODE0 | AM33XX_PIN_INPUT_PULLUP},
 {"spi0_cs1.mmc0_sdcd",  OMAP_MUX_MODE7 | AM33XX_PIN_INPUT_PULLUP},
 {NULL, 0},
};

/* Module pin mux for mmc2 */
static struct pinmux_config mmc2_pin_mux[] = {
 {"gpmc_ad12.mmc2_dat0", OMAP_MUX_MODE3 | AM33XX_PIN_INPUT_PULLUP},
 {"gpmc_ad13.mmc2_dat1", OMAP_MUX_MODE3 | AM33XX_PIN_INPUT_PULLUP},
 {"gpmc_ad14.mmc2_dat2", OMAP_MUX_MODE3 | AM33XX_PIN_INPUT_PULLUP},
 {"gpmc_ad15.mmc2_dat3", OMAP_MUX_MODE3 | AM33XX_PIN_INPUT_PULLUP},
 {"gpmc_csn3.mmc2_cmd", OMAP_MUX_MODE3 | AM33XX_PIN_INPUT_PULLUP},
 {"mii1_rxd1.mmc2_clk", OMAP_MUX_MODE6 | AM33XX_PIN_INPUT_PULLUP},
 {"mcasp0_axr0.mmc2_sdcd", OMAP_MUX_MODE4 | AM33XX_PIN_INPUT_PULLUP},
 {NULL, 0},
};

static void mmc0_init(void)
{
 setup_pin_mux(mmc0_pin_mux);
 setup_pin_mux(mmc2_pin_mux);
 omap2_hsmmc_init(am335x_mmc);
 return;
}

The inti is called @ boot time.

@ Kernel Booting mmc0 works like a charm. The Kernel and Barebox is booting from it.

But mmc2 doesn't work. I looked at the cmd and clk line. cmd line is @ everytime high due to a 10k Pullup in the Schematic.

Unfortunatly the clk line is @ everytime low. Nothing happens there. And after booting only mmc0 is available. Where is the Problem?? clk is directly connected to the SD-Card without any pullup/down. I tested it with plugging in an SD-Card before and after Kernel booting... nothing. :-(

Can somebody help me?

 

 

 


Viewing all articles
Browse latest Browse all 148978

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>