[glsdk/meta-ti-glsdk.git] / recipes-kernel / linux / linux-ti33x-psp-3.0+3.1rc / 0001-am335x-Add-pin-mux-and-init-for-beaglebone-specific-.patch
diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.0+3.1rc/0001-am335x-Add-pin-mux-and-init-for-beaglebone-specific-.patch b/recipes-kernel/linux/linux-ti33x-psp-3.0+3.1rc/0001-am335x-Add-pin-mux-and-init-for-beaglebone-specific-.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-From 5be793dc9de7e694d9256396aecfdc136c8e2cf6 Mon Sep 17 00:00:00 2001
-From: Joel A Fernandes <joelagnel@ti.com>
-Date: Mon, 17 Oct 2011 02:00:39 -0400
-Subject: [PATCH] am335x: Add pin mux and init for beaglebone specific devices
-
-Currently added for following:
- * User LEDs (added by Koen Kooi <k-kooi@ti.com>)
- * BeagleBone tester
-
-Signed-off-by: Joel A Fernandes <joelagnel@ti.com>
----
- arch/arm/mach-omap2/board-am335xevm.c | 69 +++++++++++++++++++++++++++++++++
- arch/arm/mach-omap2/mux33xx.c | 2 +-
- 2 files changed, 70 insertions(+), 1 deletions(-)
-
-diff --git a/arch/arm/mach-omap2/board-am335xevm.c b/arch/arm/mach-omap2/board-am335xevm.c
-index f625510..6beaa23 100644
---- a/arch/arm/mach-omap2/board-am335xevm.c
-+++ b/arch/arm/mach-omap2/board-am335xevm.c
-@@ -17,6 +17,7 @@
- #include <linux/i2c.h>
- #include <linux/i2c/at24.h>
- #include <linux/gpio.h>
-+#include <linux/leds.h>
- #include <linux/spi/spi.h>
- #include <linux/spi/flash.h>
- #include <linux/mtd/mtd.h>
-@@ -590,6 +591,61 @@ static struct pinmux_config usb1_pin_mux[] = {
- {NULL, 0},
- };
-
-+/* LEDS - gpio1_21 -> gpio1_24 */
-+
-+#define BEAGLEBONE_USR1_LED GPIO_TO_PIN(1, 21)
-+#define BEAGLEBONE_USR2_LED GPIO_TO_PIN(1, 22)
-+#define BEAGLEBONE_USR3_LED GPIO_TO_PIN(1, 23)
-+#define BEAGLEBONE_USR4_LED GPIO_TO_PIN(1, 24)
-+
-+static struct gpio_led gpio_leds[] = {
-+ {
-+ .name = "beaglebone::usr0",
-+ .default_trigger = "heartbeat",
-+ .gpio = BEAGLEBONE_USR1_LED,
-+ },
-+ {
-+ .name = "beaglebone::usr1",
-+ .default_trigger = "mmc0",
-+ .gpio = BEAGLEBONE_USR2_LED,
-+ },
-+ {
-+ .name = "beaglebone::usr2",
-+ .gpio = BEAGLEBONE_USR3_LED,
-+ },
-+ {
-+ .name = "beaglebone::usr3",
-+ .gpio = BEAGLEBONE_USR4_LED,
-+ },
-+};
-+
-+static struct gpio_led_platform_data gpio_led_info = {
-+ .leds = gpio_leds,
-+ .num_leds = ARRAY_SIZE(gpio_leds),
-+};
-+
-+static struct platform_device leds_gpio = {
-+ .name = "leds-gpio",
-+ .id = -1,
-+ .dev = {
-+ .platform_data = &gpio_led_info,
-+ },
-+};
-+
-+static struct platform_device *bone_devices[] __initdata = {
-+ &leds_gpio,
-+};
-+
-+static struct pinmux_config bone_pin_mux[] = {
-+ /* User LED gpios (gpio1_21 to gpio1_24) */
-+ {"gpmc_a5.rgmii2_td0", OMAP_MUX_MODE7 | AM33XX_PIN_OUTPUT},
-+ {"gpmc_a6.rgmii2_tclk", OMAP_MUX_MODE7 | AM33XX_PIN_OUTPUT},
-+ {"gpmc_a7.rgmii2_rclk", OMAP_MUX_MODE7 | AM33XX_PIN_OUTPUT},
-+ {"gpmc_a8.rgmii2_rd3", OMAP_MUX_MODE7 | AM33XX_PIN_OUTPUT},
-+ /* Grounding gpio1_6 (pin 3 Conn A) signals bone tester to start diag tests */
-+ {"gpmc_ad6.gpio1_6", OMAP_MUX_MODE7 | AM33XX_PIN_INPUT_PULLUP},
-+};
-+
- /* Module pin mux for eCAP0 */
- static struct pinmux_config ecap0_pin_mux[] = {
- {"ecap0_in_pwm0_out.gpio0_7", AM33XX_PIN_OUTPUT},
-@@ -698,6 +754,18 @@ static void tsc_init(int evm_id, int profile)
- pr_err("failed to register touchscreen device\n");
- }
-
-+/*
-+ * Initialization of BeagleBone specific devices
-+ */
-+static void bone_init(int evm_id, int profil )
-+{
-+ int err;
-+ setup_pin_mux(bone_pin_mux);
-+ err = platform_add_devices(bone_devices, ARRAY_SIZE(bone_devices));
-+ if (err)
-+ pr_err("failed to register LEDS\n");
-+}
-+
- static void rgmii1_init(int evm_id, int profile)
- {
- setup_pin_mux(rgmii1_pin_mux);
-@@ -1103,6 +1171,7 @@ static struct evm_dev_cfg beaglebone_dev_cfg[] = {
- {usb0_init, DEV_ON_BASEBOARD, PROFILE_NONE},
- {usb1_init, DEV_ON_BASEBOARD, PROFILE_NONE},
- {mmc0_init, DEV_ON_BASEBOARD, PROFILE_NONE},
-+ {bone_init, DEV_ON_BASEBOARD, PROFILE_ALL},
- {NULL, 0, 0},
- };
-
-diff --git a/arch/arm/mach-omap2/mux33xx.c b/arch/arm/mach-omap2/mux33xx.c
-index 0286c4f..f09e827 100644
---- a/arch/arm/mach-omap2/mux33xx.c
-+++ b/arch/arm/mach-omap2/mux33xx.c
-@@ -49,7 +49,7 @@ static struct omap_mux __initdata am33xx_muxmodes[] = {
- NULL, NULL, NULL, NULL),
- _AM33XX_MUXENTRY(GPMC_AD6, 0,
- "gpmc_ad6", "mmc1_dat6", NULL, NULL,
-- NULL, NULL, NULL, NULL),
-+ NULL, NULL, NULL, "gpio1_6"),
- _AM33XX_MUXENTRY(GPMC_AD7, 0,
- "gpmc_ad7", "mmc1_dat7", NULL, NULL,
- NULL, NULL, NULL, NULL),
---
-1.7.1
-