From db7d33cfd7ed93c1c4a58320589b142f4348284a Mon Sep 17 00:00:00 2001 From: James <> Date: Tue, 11 Feb 2014 11:49:23 +0000 Subject: fish --- master/tpl3040-sdcard-spi | 119 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 master/tpl3040-sdcard-spi (limited to 'master/tpl3040-sdcard-spi') diff --git a/master/tpl3040-sdcard-spi b/master/tpl3040-sdcard-spi new file mode 100644 index 0000000..9ccce4e --- /dev/null +++ b/master/tpl3040-sdcard-spi @@ -0,0 +1,119 @@ +diff --git a/target/linux/ar71xx/patches-3.8/999-2-sdcard-spi b/target/linux/ar71xx/patches-3.8/999-2-sdcard-spi +new file mode 100644 +index 0000000..cb31388 +--- /dev/null ++++ b/target/linux/ar71xx/patches-3.8/999-2-sdcard-spi +@@ -0,0 +1,113 @@ ++Index: linux-3.6.10/arch/mips/ath79/mach-tl-mr11u.c ++=================================================================== ++--- linux-3.6.10.orig/arch/mips/ath79/mach-tl-mr11u.c +++++ linux-3.6.10/arch/mips/ath79/mach-tl-mr11u.c ++@@ -12,7 +12,14 @@ ++ #include ++ ++ #include +++#include +++#include +++#include +++#include +++#include +++#include ++ +++#include "common.h" ++ #include "dev-eth.h" ++ #include "dev-gpio-buttons.h" ++ #include "dev-leds-gpio.h" ++@@ -34,6 +41,47 @@ ++ #define TL_MR11U_KEYS_POLL_INTERVAL 20 /* msecs */ ++ #define TL_MR11U_KEYS_DEBOUNCE_INTERVAL (3 * TL_MR11U_KEYS_POLL_INTERVAL) ++ +++#define TL_MR3040_GPIO_MMC_SCK 15 +++#define TL_MR3040_GPIO_MMC_MOSI 16 +++#define TL_MR3040_GPIO_MMC_MISO 13 +++#define TL_MR3040_GPIO_MMC_CS 1 +++ +++ +++static struct mmc_spi_platform_data tl_mr3040_mmc_data = { +++ .ocr_mask = MMC_VDD_32_33 | MMC_VDD_33_34, +++}; +++ +++static struct spi_board_info tl_mr3040_spi_info[] = { +++ { +++ .bus_num = 1, +++ .chip_select = 0, +++ .max_speed_hz = 25000000, +++ .modalias = "mmc_spi", +++ .mode = SPI_MODE_0, +++ .controller_data = (void *) TL_MR3040_GPIO_MMC_CS, +++ .platform_data = &tl_mr3040_mmc_data, +++ }, +++}; +++ +++static struct spi_gpio_platform_data tl_mr3040_spi_data = { +++ .sck = TL_MR3040_GPIO_MMC_SCK, +++ .miso = TL_MR3040_GPIO_MMC_MISO, +++ .mosi = TL_MR3040_GPIO_MMC_MOSI, +++ .num_chipselect = 1, +++}; +++ +++static struct platform_device tl_mr3040_spi_device = { +++#if 0 +++ .name = "tl_mr3040_spi", +++#else +++ .name = "spi_gpio", +++#endif +++ .id = 1, +++ .dev = { +++ .platform_data = &tl_mr3040_spi_data, +++ }, +++}; +++ ++ static const char *tl_mr11u_part_probes[] = { ++ "tp-link", ++ NULL, ++@@ -119,6 +167,10 @@ MIPS_MACHINE(ATH79_MACH_TL_MR11U, "TL-MR ++ ++ static void __init tl_mr3040_setup(void) ++ { +++ ath79_gpio_function_disable(AR933X_GPIO_FUNC_ETH_SWITCH_LED0_EN | +++ AR933X_GPIO_FUNC_ETH_SWITCH_LED2_EN| +++ AR933X_GPIO_FUNC_ETH_SWITCH_LED3_EN); +++ ++ common_setup(); ++ ++ ath79_register_gpio_keys_polled(-1, TL_MR11U_KEYS_POLL_INTERVAL, ++@@ -126,6 +178,10 @@ static void __init tl_mr3040_setup(void) ++ gpio_request_one(TL_MR3040_GPIO_USB_POWER, ++ GPIOF_OUT_INIT_HIGH | GPIOF_EXPORT_DIR_FIXED, ++ "USB power"); +++ +++ +++ spi_register_board_info(tl_mr3040_spi_info, ARRAY_SIZE(tl_mr3040_spi_info)); +++ platform_device_register(&tl_mr3040_spi_device); ++ } ++ ++ MIPS_MACHINE(ATH79_MACH_TL_MR3040, "TL-MR3040", "TP-LINK TL-MR3040", ++Index: linux-3.6.10/drivers/spi/spi-tl_mr3040.c ++=================================================================== ++--- /dev/null +++++ linux-3.6.10/drivers/spi/spi-tl_mr3040.c ++@@ -0,0 +1,7 @@ +++#define DRIVER_NAME "tl_mr3040_spi" +++#define SPI_MISO_GPIO 13 +++#define SPI_MOSI_GPIO 16 +++#define SPI_SCK_GPIO 15 +++#define SPI_N_CHIPSEL 1 +++#undef NEED_SPIDELAY +++#include "spi-gpio.c" ++Index: linux-3.6.10/drivers/spi/Makefile ++=================================================================== ++--- linux-3.6.10.orig/drivers/spi/Makefile +++++ linux-3.6.10/drivers/spi/Makefile ++@@ -14,6 +14,7 @@ obj-$(CONFIG_SPI_ALTERA) += spi-altera. ++ obj-$(CONFIG_SPI_ATMEL) += spi-atmel.o ++ obj-$(CONFIG_SPI_AP83) += spi-ap83.o ++ obj-$(CONFIG_SPI_ATH79) += spi-ath79.o +++obj-$(CONFIG_SPI_ATH79) += spi-tl_mr3040.o ++ obj-$(CONFIG_SPI_AU1550) += spi-au1550.o ++ obj-$(CONFIG_SPI_BCM63XX) += spi-bcm63xx.o ++ obj-$(CONFIG_SPI_BFIN5XX) += spi-bfin5xx.o -- cgit v1.2.3