diff options
| author | Stefan Schmidt <stefan@datenfreihafen.org> | 2008-11-14 23:43:33 +0000 |
|---|---|---|
| committer | Stefan Schmidt <stefan@datenfreihafen.org> | 2008-11-14 23:43:33 +0000 |
| commit | c3ddec6575892bd802b98db7a608cd4b57ae625b (patch) | |
| tree | 42a2cd5a355d8330ebd2c77802d2cc5b028dd77a /packages/linux/linux-omap/fix-mmc.diff | |
| parent | 625b6fa7dc58ae4c67891a8805cd5729424c3090 (diff) | |
| parent | 4a66c132ce2282f4a14b97d08e3557f855eb7b0e (diff) | |
Merge branch 'org.openembedded.dev' of git@git.openembedded.net:openembedded into org.openembedded.dev
Diffstat (limited to 'packages/linux/linux-omap/fix-mmc.diff')
| -rw-r--r-- | packages/linux/linux-omap/fix-mmc.diff | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/packages/linux/linux-omap/fix-mmc.diff b/packages/linux/linux-omap/fix-mmc.diff new file mode 100644 index 0000000000..dfc531c3ef --- /dev/null +++ b/packages/linux/linux-omap/fix-mmc.diff @@ -0,0 +1,39 @@ +Oops.. Haven't thought to try it without gpio_cd set up, in which case c->mmc +is not set initialized.. Please try the following patch: + + +diff --git a/arch/arm/mach-omap2/mmc-twl4030.c b/arch/arm/mach-omap2/mmc-twl4030.c +index 0ea6ba6..626d668 100644 +--- a/arch/arm/mach-omap2/mmc-twl4030.c ++++ b/arch/arm/mach-omap2/mmc-twl4030.c +@@ -239,6 +239,7 @@ static int twl_mmc1_set_power(struct device *dev, int slot, int power_on, + u32 reg; + int ret = 0; + struct twl_mmc_controller *c = &hsmmc[0]; ++ struct omap_mmc_platform_data *mmc = dev->platform_data; + + if (power_on) { + if (cpu_is_omap2430()) { +@@ -250,7 +251,7 @@ static int twl_mmc1_set_power(struct device *dev, int slot, int power_on, + omap_ctrl_writel(reg, OMAP243X_CONTROL_DEVCONF1); + } + +- if (c->mmc->slots[0].internal_clock) { ++ if (mmc->slots[0].internal_clock) { + reg = omap_ctrl_readl(OMAP2_CONTROL_DEVCONF0); + reg |= OMAP2_MMCSDIO1ADPCLKISEL; + omap_ctrl_writel(reg, OMAP2_CONTROL_DEVCONF0); +@@ -293,11 +294,11 @@ static int twl_mmc1_set_power(struct device *dev, int slot, int power_on, + static int twl_mmc2_set_power(struct device *dev, int slot, int power_on, int vdd) + { + int ret; +- + struct twl_mmc_controller *c = &hsmmc[1]; ++ struct omap_mmc_platform_data *mmc = dev->platform_data; + + if (power_on) { +- if (c->mmc->slots[0].internal_clock) { ++ if (mmc->slots[0].internal_clock) { + u32 reg; + + reg = omap_ctrl_readl(control_devconf1_offset); |
