MMC: OMAP: Make board-h2.c uses new board-h2-mmc.c code.
Subsystems (3)
PATCH 16/17 MMC: OMAP: Make board-h2.c uses new board-h2-mmc.c code.
From: Felipe Balbi <[email protected]>
Make board-h2.c file uses new board-h2-mmc.c code. This patch also introduces a new gpio_switch to get events when inserting and removing MMC/SD/SDIO cards to/from the slot.
Signed-off-by Felipe Balbi <[email protected]>
Signed-off-by Anderson Briglia <[email protected]>
Signed-off-by Carlos Eduardo Aguiar <[email protected]>
Signed-off-by David Cohen <[email protected]>
Signed-off-by Eduardo Valentin <[email protected]>
Make board-h2.c file uses new board-h2-mmc.c code. This patch also introduces a new gpio_switch to get events when inserting and removing MMC/SD/SDIO cards to/from the slot.
Signed-off-by Felipe Balbi <[email protected]>
igned-off-by Anderson Briglia <[email protected]>
Signed-off-by Carlos Eduardo Aguiar <[email protected]>
Signed-off-by David Cohen <[email protected]>
Signed-off-by Eduardo Valentin <[email protected]>
arch/arm/mach-omap1/Makefile +1 -1
@@ -19,7 +19,7 @@ mmu_mach-objs := mmu.o led-y := leds.o # Specific board support -obj-$(CONFIG_MACH_OMAP_H2) += board-h2.o +obj-$(CONFIG_MACH_OMAP_H2) += board-h2.o board-h2-mmc.o obj-$(CONFIG_MACH_OMAP_INNOVATOR) += board-innovator.o obj-$(CONFIG_MACH_OMAP_GENERIC) += board-generic.o obj-$(CONFIG_MACH_OMAP_PERSEUS2) += board-perseus2.o
arch/arm/mach-omap1/board-h2.c +17 -12
@@ -39,6 +39,7 @@#include <asm/mach/map.h> #include <asm/arch/gpio.h> +#include <asm/arch/gpio-switch.h> #include <asm/arch/mux.h> #include <asm/arch/tc.h> #include <asm/arch/irda.h>
@@ -457,16 +458,6 @@ static struct omap_usb_config h2_usb_con .pins[1] = 3, }; -static struct omap_mmc_config h2_mmc_config__initdata = { - .mmc [0 ] = { - .enabled =1 , - .wire4 =1 , - .wp_pin =OMAP_MPUIO (3 ), - .power_pin =-1 ,/* tps65010 gpio3 */ - .switch_pin =OMAP_MPUIO (1 ), - }, -}; -static struct omap_uart_config h2_uart_config__initdata = { .enabled_uarts = ((1 <<0 ) | (1 <<1 ) | (1 <<2 )), };
@@ -476,12 +467,23 @@ static struct omap_lcd_config h2_lcd_con };static struct omap_board_config_kernel h2_config[]__initdata = { - {OMAP_TAG_USB , &h2_usb_config }, - {OMAP_TAG_MMC , &h2_mmc_config }, + {OMAP_TAG_USB , &h2_usb_config }, {OMAP_TAG_UART , &h2_uart_config }, {OMAP_TAG_LCD , &h2_lcd_config }, }; +static struct omap_gpio_switch h2_gpio_switches[]__initdata = { + { + .name ="mmc_slot" , + .gpio =OMAP_MPUIO (1 ), + .type =OMAP_GPIO_SWITCH_TYPE_COVER , + .debounce_rising =100 , + .debounce_falling =0 , + .notify = h2_mmc_slot_cover_handler, + .notify_data =NULL , + }, +}; +#define H2_NAND_RB_GPIO_PIN 62static int h2_nand_dev_ready (struct nand_platform_data *data)
@@ -530,6 +532,9 @@ static void __init h2_init(void) omap_board_config = h2_config; omap_board_config_size =ARRAY_SIZE (h2_config);omap_serial_init (); +h2_mmc_init (); +omap_register_gpio_switches (h2_gpio_switches, +ARRAY_SIZE (h2_gpio_switches)); }static void __init h2_map_io (void )