diff options
author | Russ Dill <Russ.Dill@ti.com> | 2012-05-09 17:19:15 -0400 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2012-05-09 17:19:15 -0400 |
commit | 1afb82e4529f7e1876f6c2ceebc40ac284558eec (patch) | |
tree | 9b775288db33b0331b0fba3bee1804d74d823ca6 /arch/arm/mach-omap2/board-omap3beagle.c | |
parent | 44bb3198d7213af23bfc065e817dc8e7a1b907f9 (diff) |
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>
Diffstat (limited to 'arch/arm/mach-omap2/board-omap3beagle.c')
-rw-r--r-- | arch/arm/mach-omap2/board-omap3beagle.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c index 7be8d659d91d..ae7d3a737baf 100644 --- a/arch/arm/mach-omap2/board-omap3beagle.c +++ b/arch/arm/mach-omap2/board-omap3beagle.c | |||
@@ -83,11 +83,13 @@ static struct { | |||
83 | int usb_pwr_level; | 83 | int usb_pwr_level; |
84 | int reset_gpio; | 84 | int reset_gpio; |
85 | int usr_button_gpio; | 85 | int usr_button_gpio; |
86 | int mmc_caps; | ||
86 | } beagle_config = { | 87 | } beagle_config = { |
87 | .mmc1_gpio_wp = -EINVAL, | 88 | .mmc1_gpio_wp = -EINVAL, |
88 | .usb_pwr_level = GPIOF_OUT_INIT_LOW, | 89 | .usb_pwr_level = GPIOF_OUT_INIT_LOW, |
89 | .reset_gpio = 129, | 90 | .reset_gpio = 129, |
90 | .usr_button_gpio = 4, | 91 | .usr_button_gpio = 4, |
92 | .mmc_caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA, | ||
91 | }; | 93 | }; |
92 | 94 | ||
93 | static struct gpio omap3_beagle_rev_gpios[] __initdata = { | 95 | static struct gpio omap3_beagle_rev_gpios[] __initdata = { |
@@ -145,10 +147,12 @@ static void __init omap3_beagle_init_rev(void) | |||
145 | printk(KERN_INFO "OMAP3 Beagle Rev: xM Ax/Bx\n"); | 147 | printk(KERN_INFO "OMAP3 Beagle Rev: xM Ax/Bx\n"); |
146 | omap3_beagle_version = OMAP3BEAGLE_BOARD_XM; | 148 | omap3_beagle_version = OMAP3BEAGLE_BOARD_XM; |
147 | beagle_config.usb_pwr_level = GPIOF_OUT_INIT_HIGH; | 149 | beagle_config.usb_pwr_level = GPIOF_OUT_INIT_HIGH; |
150 | beagle_config.mmc_caps &= ~MMC_CAP_8_BIT_DATA; | ||
148 | break; | 151 | break; |
149 | case 2: | 152 | case 2: |
150 | printk(KERN_INFO "OMAP3 Beagle Rev: xM C\n"); | 153 | printk(KERN_INFO "OMAP3 Beagle Rev: xM C\n"); |
151 | omap3_beagle_version = OMAP3BEAGLE_BOARD_XMC; | 154 | omap3_beagle_version = OMAP3BEAGLE_BOARD_XMC; |
155 | beagle_config.mmc_caps &= ~MMC_CAP_8_BIT_DATA; | ||
152 | break; | 156 | break; |
153 | default: | 157 | default: |
154 | printk(KERN_INFO "OMAP3 Beagle Rev: unknown %hd\n", beagle_rev); | 158 | printk(KERN_INFO "OMAP3 Beagle Rev: unknown %hd\n", beagle_rev); |
@@ -251,7 +255,7 @@ static void __init beagle_display_init(void) | |||
251 | static struct omap2_hsmmc_info mmc[] = { | 255 | static struct omap2_hsmmc_info mmc[] = { |
252 | { | 256 | { |
253 | .mmc = 1, | 257 | .mmc = 1, |
254 | .caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA, | 258 | .caps = MMC_CAP_4_BIT_DATA, |
255 | .gpio_wp = -EINVAL, | 259 | .gpio_wp = -EINVAL, |
256 | .deferred = true, | 260 | .deferred = true, |
257 | }, | 261 | }, |
@@ -523,6 +527,7 @@ static void __init omap3_beagle_init(void) | |||
523 | 527 | ||
524 | if (beagle_config.mmc1_gpio_wp != -EINVAL) | 528 | if (beagle_config.mmc1_gpio_wp != -EINVAL) |
525 | omap_mux_init_gpio(beagle_config.mmc1_gpio_wp, OMAP_PIN_INPUT); | 529 | omap_mux_init_gpio(beagle_config.mmc1_gpio_wp, OMAP_PIN_INPUT); |
530 | mmc[0].caps = beagle_config.mmc_caps; | ||
526 | omap_hsmmc_init(mmc); | 531 | omap_hsmmc_init(mmc); |
527 | 532 | ||
528 | omap3_beagle_i2c_init(); | 533 | omap3_beagle_i2c_init(); |