Skip to content

Commit

Permalink
ARM: 7335/1: mach-u300: do away with MMC config files
Browse files Browse the repository at this point in the history
All the special stuff (like registering input device and so on)
for the U300 MMC is now done away with. We don't need these
special MMC setup kludges, merge this into core.c and be done
with it.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
Linus Walleij authored and Russell King committed Feb 23, 2012
1 parent c997e51 commit a64ae39
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 88 deletions.
1 change: 0 additions & 1 deletion arch/arm/mach-u300/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ obj-n :=
obj- :=

obj-$(CONFIG_ARCH_U300) += u300.o
obj-$(CONFIG_MMC) += mmc.o
obj-$(CONFIG_SPI_PL022) += spi.o
obj-$(CONFIG_MACH_U300_SPIDUMMY) += dummyspichip.o
obj-$(CONFIG_I2C_STU300) += i2c.o
Expand Down
38 changes: 21 additions & 17 deletions arch/arm/mach-u300/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
#include <linux/termios.h>
#include <linux/dmaengine.h>
#include <linux/amba/bus.h>
#include <linux/amba/mmci.h>
#include <linux/amba/serial.h>
#include <linux/platform_device.h>
#include <linux/gpio.h>
Expand All @@ -43,9 +44,9 @@
#include <mach/gpio-u300.h>

#include "clock.h"
#include "mmc.h"
#include "spi.h"
#include "i2c.h"
#include "u300-gpio.h"

/*
* Static I/O mappings that are needed for booting the U300 platforms. The
Expand Down Expand Up @@ -116,20 +117,33 @@ static AMBA_APB_DEVICE(uart1, "uart1", 0, U300_UART1_BASE,
/* AHB device at 0x4000 offset */
static AMBA_APB_DEVICE(pl172, "pl172", 0, U300_EMIF_CFG_BASE, { }, NULL);


/*
* Everything within this next ifdef deals with external devices connected to
* the APP SPI bus.
*/
/* Fast device at 0x6000 offset */
static AMBA_APB_DEVICE(pl022, "pl022", 0, U300_SPI_BASE,
{ IRQ_U300_SPI }, NULL);

/* Fast device at 0x1000 offset */
#define U300_MMCSD_IRQS { IRQ_U300_MMCSD_MCIINTR0, IRQ_U300_MMCSD_MCIINTR1 }

static struct mmci_platform_data mmcsd_platform_data = {
/*
* Do not set ocr_mask or voltage translation function,
* we have a regulator we can control instead.
*/
.f_max = 24000000,
.gpio_wp = -1,
.gpio_cd = U300_GPIO_PIN_MMC_CD,
.cd_invert = true,
.capabilities = MMC_CAP_MMC_HIGHSPEED |
MMC_CAP_SD_HIGHSPEED | MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA,
#ifdef CONFIG_COH901318
.dma_filter = coh901318_filter_id,
.dma_rx_param = (void *) U300_DMA_MMCSD_RX_TX,
/* Don't specify a TX channel, this RX channel is bidirectional */
#endif
};

static AMBA_APB_DEVICE(mmcsd, "mmci", 0, U300_MMCSD_BASE,
U300_MMCSD_IRQS, NULL);
U300_MMCSD_IRQS, &mmcsd_platform_data);

/*
* The order of device declaration may be important, since some devices
Expand Down Expand Up @@ -1826,16 +1840,6 @@ void __init u300_init_devices(void)
writew(val, U300_SYSCON_VBASE + U300_SYSCON_SMCR);
}

static int core_module_init(void)
{
/*
* This needs to be initialized later: it needs the input framework
* to be initialized first.
*/
return mmc_init(&mmcsd_device);
}
module_init(core_module_init);

/* Forward declare this function from the watchdog */
void coh901327_watchdog_reset(void);

Expand Down
52 changes: 0 additions & 52 deletions arch/arm/mach-u300/mmc.c

This file was deleted.

18 changes: 0 additions & 18 deletions arch/arm/mach-u300/mmc.h

This file was deleted.

0 comments on commit a64ae39

Please sign in to comment.