summaryrefslogtreecommitdiff
path: root/target/linux/pxa/patches-2.6.21/031-mmc-card-detect.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/pxa/patches-2.6.21/031-mmc-card-detect.patch')
-rw-r--r--target/linux/pxa/patches-2.6.21/031-mmc-card-detect.patch76
1 files changed, 0 insertions, 76 deletions
diff --git a/target/linux/pxa/patches-2.6.21/031-mmc-card-detect.patch b/target/linux/pxa/patches-2.6.21/031-mmc-card-detect.patch
deleted file mode 100644
index 890f19578a..0000000000
--- a/target/linux/pxa/patches-2.6.21/031-mmc-card-detect.patch
+++ /dev/null
@@ -1,76 +0,0 @@
---- a/arch/arm/mach-pxa/gumstix.c
-+++ b/arch/arm/mach-pxa/gumstix.c
-@@ -29,19 +29,55 @@
-
- #include "generic.h"
-
--static int gumstix_mci_init(struct device *dev, irqreturn_t (*lubbock_detect_int)(int, void *, struct pt_regs *), void *data)
-+static struct pxamci_platform_data gumstix_mci_platform_data;
-+
-+static int gumstix_mci_init(struct device *dev, irqreturn_t (*gumstix_detect_int)(int, void *, struct pt_regs *), void *data)
- {
-- // Set up MMC controller
-+ int err;
-+
- pxa_gpio_mode(GPIO6_MMCCLK_MD);
- pxa_gpio_mode(GPIO53_MMCCLK_MD);
- pxa_gpio_mode(GPIO8_MMCCS0_MD);
-
-+ pxa_gpio_mode(GUMSTIX_GPIO_nSD_DETECT | GPIO_IN);
-+ set_irq_type(GUMSTIX_IRQ_GPIO_nSD_DETECT, IRQT_BOTHEDGE);
-+ pxa_gpio_mode(GUMSTIX_GPIO_nSD_WP | GPIO_IN);
-+
-+ gumstix_mci_platform_data.detect_delay = msecs_to_jiffies(250);
-+
-+ err = request_irq(GUMSTIX_IRQ_GPIO_nSD_DETECT, gumstix_detect_int, SA_INTERRUPT,
-+ "MMC card detect", data);
-+ if (err) {
-+ printk(KERN_ERR "gumstix_mci_init: MMC/SD: can't request MMC card detect IRQ\n");
-+ return -1;
-+ }
-+
-+ err = set_irq_type(GUMSTIX_IRQ_GPIO_nSD_DETECT, IRQT_BOTHEDGE);
-+
- return 0;
- }
-
-+static int gumstix_mci_get_ro(struct device *dev)
-+{
-+#ifdef CONFIG_ARCH_GUMSTIX_VERDEX
-+ return 0; // microSD is always writable on verdex
-+#else
-+ int ro;
-+ ro = GPLR(GUMSTIX_GPIO_nSD_WP) & GPIO_bit(GUMSTIX_GPIO_nSD_WP);
-+ return ro;
-+#endif
-+}
-+
-+static void gumstix_mci_exit(struct device *dev, void *data)
-+{
-+ free_irq(GUMSTIX_IRQ_GPIO_nSD_DETECT, data);
-+}
-+
- static struct pxamci_platform_data gumstix_mci_platform_data = {
- .ocr_mask = MMC_VDD_32_33|MMC_VDD_33_34,
-- .init = &gumstix_mci_init,
-+ .init = gumstix_mci_init,
-+ .get_ro = gumstix_mci_get_ro,
-+ .exit = gumstix_mci_exit,
- };
-
- static struct pxa2xx_udc_mach_info gumstix_udc_info __initdata = {
---- a/include/asm-arm/arch-pxa/gumstix.h
-+++ b/include/asm-arm/arch-pxa/gumstix.h
-@@ -36,6 +36,12 @@
- #define GPIO_GUMSTIX_USB_GPIOx_CON_MD (GPIO_GUMSTIX_USB_GPIOx | GPIO_OUT)
- #define GPIO_GUMSTIX_USB_GPIOx_DIS_MD (GPIO_GUMSTIX_USB_GPIOx | GPIO_IN)
-
-+/*
-+ * SD/MMC definitions
-+ */
-+#define GUMSTIX_GPIO_nSD_WP 22 /* SD Write Protect */
-+#define GUMSTIX_GPIO_nSD_DETECT 11 /* MMC/SD Card Detect */
-+#define GUMSTIX_IRQ_GPIO_nSD_DETECT IRQ_GPIO(GUMSTIX_GPIO_nSD_DETECT)
-
- /*
- * SMC Ethernet definitions