2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2025-01-02 18:54:10 +08:00

ARM: OMAP: Mark Beagleboard-xM MMC bus as 4-bit

On Beagleboard-xM (all revisions) only MMC1_DAT0-MMC1_DAT3 are wired up.
Tested on Beagleboard-xM Rev C1 and Beagleboard Rev B4.

Signed-off-by: Russ Dill <Russ.Dill@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
This commit is contained in:
Russ Dill 2012-05-09 14:19:15 -07:00 committed by Tony Lindgren
parent 44bb3198d7
commit 1afb82e452

View File

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