Skip to content

Commit

Permalink
Au1[12]00 mmc driver. Only tested on the Au1200 at this point though
Browse files Browse the repository at this point in the history
it should work on the Au1100 as well. Updated defconfig to include driver.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
  • Loading branch information
Pete Popov authored and Ralf Baechle committed Oct 29, 2005
1 parent bab056a commit ba264b3
Show file tree
Hide file tree
Showing 5 changed files with 1,166 additions and 0 deletions.
34 changes: 34 additions & 0 deletions arch/mips/au1000/common/platform.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
* License version 2. This program is licensed "as is" without any
* warranty of any kind, whether express or implied.
*/
#include <linux/config.h>
#include <linux/device.h>
#include <linux/kernel.h>
#include <linux/init.h>
Expand Down Expand Up @@ -114,6 +115,24 @@ static struct resource au1xxx_usb_gdt_resources[] = {
},
};

static struct resource au1xxx_mmc_resources[] = {
[0] = {
.start = SD0_PHYS_ADDR,
.end = SD0_PHYS_ADDR + 0x40,
.flags = IORESOURCE_MEM,
},
[1] = {
.start = SD1_PHYS_ADDR,
.end = SD1_PHYS_ADDR + 0x40,
.flags = IORESOURCE_MEM,
},
[2] = {
.start = AU1200_SD_INT,
.end = AU1200_SD_INT,
.flags = IORESOURCE_IRQ,
}
};

static u64 udc_dmamask = ~(u32)0;

static struct platform_device au1xxx_usb_gdt_device = {
Expand Down Expand Up @@ -207,6 +226,20 @@ static struct platform_device au1200_ide0_device = {
.resource = au1200_ide0_resources,
};

static u64 au1xxx_mmc_dmamask = ~(u32)0;

static struct platform_device au1xxx_mmc_device = {
.name = "au1xxx-mmc",
.id = 0,
.dev = {
.dma_mask = &au1xxx_mmc_dmamask,
.coherent_dma_mask = 0xffffffff,
},
.num_resources = ARRAY_SIZE(au1xxx_mmc_resources),
.resource = au1xxx_mmc_resources,
};
#endif /* #ifdef CONFIG_SOC_AU1200 */

static struct platform_device au1x00_pcmcia_device = {
.name = "au1x00-pcmcia",
.id = 0,
Expand All @@ -226,6 +259,7 @@ static struct platform_device *au1xxx_platform_devices[] __initdata = {
&au1xxx_usb_otg_device,
&au1200_lcd_device,
&au1200_ide0_device,
&au1xxx_mmc_device,
#endif
};

Expand Down
9 changes: 9 additions & 0 deletions drivers/mmc/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -60,4 +60,13 @@ config MMC_WBSD

If unsure, say N.

config MMC_AU1X
tristate "Alchemy AU1XX0 MMC Card Interface support"
depends on SOC_AU1X00 && MMC
help
This selects the AMD Alchemy(R) Multimedia card interface.
iIf you have a Alchemy platform with a MMC slot, say Y or M here.

If unsure, say N.

endmenu
1 change: 1 addition & 0 deletions drivers/mmc/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,6 @@ obj-$(CONFIG_MMC_BLOCK) += mmc_block.o
obj-$(CONFIG_MMC_ARMMMCI) += mmci.o
obj-$(CONFIG_MMC_PXA) += pxamci.o
obj-$(CONFIG_MMC_WBSD) += wbsd.o
obj-$(CONFIG_MMC_AU1X) += au1xmmc.o

mmc_core-y := mmc.o mmc_queue.o mmc_sysfs.o
Loading

0 comments on commit ba264b3

Please sign in to comment.