|
@@ -83,11 +83,13 @@ static struct {
|
|
|
int usb_pwr_level;
|
|
|
int reset_gpio;
|
|
|
int usr_button_gpio;
|
|
|
+ int mmc_caps;
|
|
|
} beagle_config = {
|
|
|
.mmc1_gpio_wp = -EINVAL,
|
|
|
.usb_pwr_level = GPIOF_OUT_INIT_LOW,
|
|
|
.reset_gpio = 129,
|
|
|
.usr_button_gpio = 4,
|
|
|
+ .mmc_caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA,
|
|
|
};
|
|
|
|
|
|
static struct gpio omap3_beagle_rev_gpios[] __initdata = {
|
|
@@ -145,10 +147,12 @@ static void __init omap3_beagle_init_rev(void)
|
|
|
printk(KERN_INFO "OMAP3 Beagle Rev: xM Ax/Bx\n");
|
|
|
omap3_beagle_version = OMAP3BEAGLE_BOARD_XM;
|
|
|
beagle_config.usb_pwr_level = GPIOF_OUT_INIT_HIGH;
|
|
|
+ beagle_config.mmc_caps &= ~MMC_CAP_8_BIT_DATA;
|
|
|
break;
|
|
|
case 2:
|
|
|
printk(KERN_INFO "OMAP3 Beagle Rev: xM C\n");
|
|
|
omap3_beagle_version = OMAP3BEAGLE_BOARD_XMC;
|
|
|
+ beagle_config.mmc_caps &= ~MMC_CAP_8_BIT_DATA;
|
|
|
break;
|
|
|
default:
|
|
|
printk(KERN_INFO "OMAP3 Beagle Rev: unknown %hd\n", beagle_rev);
|
|
@@ -251,7 +255,7 @@ static void __init beagle_display_init(void)
|
|
|
static struct omap2_hsmmc_info mmc[] = {
|
|
|
{
|
|
|
.mmc = 1,
|
|
|
- .caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA,
|
|
|
+ .caps = MMC_CAP_4_BIT_DATA,
|
|
|
.gpio_wp = -EINVAL,
|
|
|
.deferred = true,
|
|
|
},
|
|
@@ -523,6 +527,7 @@ static void __init omap3_beagle_init(void)
|
|
|
|
|
|
if (beagle_config.mmc1_gpio_wp != -EINVAL)
|
|
|
omap_mux_init_gpio(beagle_config.mmc1_gpio_wp, OMAP_PIN_INPUT);
|
|
|
+ mmc[0].caps = beagle_config.mmc_caps;
|
|
|
omap_hsmmc_init(mmc);
|
|
|
|
|
|
omap3_beagle_i2c_init();
|