From 9c196f0f8db928ef9a2a935d86d75a218a7131b1 Mon Sep 17 00:00:00 2001 From: Russell King Date: Tue, 6 Oct 2009 14:36:05 +0100 Subject: ARM: iPAQ: convert H3100 IrDA to use generic gpio support Signed-off-by: Russell King --- arch/arm/mach-sa1100/h3600.c | 11 ++++++++--- arch/arm/mach-sa1100/include/mach/h3600_gpio.h | 9 +++++++++ 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/arch/arm/mach-sa1100/h3600.c b/arch/arm/mach-sa1100/h3600.c index 2b545a4baa0..c53ad651835 100644 --- a/arch/arm/mach-sa1100/h3600.c +++ b/arch/arm/mach-sa1100/h3600.c @@ -347,14 +347,13 @@ static void __init h3100_map_io(void) */ static int h3100_irda_set_power(struct device *dev, unsigned int state) { - assign_h3100_egpio(IPAQ_EGPIO_IR_ON, state); - + gpio_set_value(H3100_GPIO_IR_ON, state); return 0; } static void h3100_irda_set_speed(struct device *dev, unsigned int speed) { - assign_h3100_egpio(IPAQ_EGPIO_IR_FSEL, !(speed < 4000000)); + gpio_set_value(H3100_GPIO_IR_FSEL, !(speed < 4000000)); } static struct irda_platform_data h3100_irda_data = { @@ -362,8 +361,14 @@ static struct irda_platform_data h3100_irda_data = { .set_speed = h3100_irda_set_speed, }; +static struct gpio_default_state h3100_default_gpio[] = { + { H3100_GPIO_IR_ON, GPIO_MODE_OUT0, "IrDA power" }, + { H3100_GPIO_IR_FSEL, GPIO_MODE_OUT0, "IrDA fsel" }, +}; + static void h3100_mach_init(void) { + h3xxx_init_gpio(h3100_default_gpio, ARRAY_SIZE(h3100_default_gpio)); h3xxx_mach_init(); sa11x0_register_irda(&h3100_irda_data); } diff --git a/arch/arm/mach-sa1100/include/mach/h3600_gpio.h b/arch/arm/mach-sa1100/include/mach/h3600_gpio.h index a36ca76d018..d4d0b22d019 100644 --- a/arch/arm/mach-sa1100/include/mach/h3600_gpio.h +++ b/arch/arm/mach-sa1100/include/mach/h3600_gpio.h @@ -39,6 +39,15 @@ #define GPIO_H3100_IR_ON GPIO_GPIO (8) #define GPIO_H3100_IR_FSEL GPIO_GPIO (9) +/* gpiolib versions of the above */ +#define H3100_GPIO_BT_ON 2 +#define H3100_GPIO_QMUTE 4 +#define H3100_GPIO_LCD_3V_ON 5 +#define H3100_GPIO_AUD_ON 6 +#define H3100_GPIO_AUD_PWR_ON 7 +#define H3100_GPIO_IR_ON 8 +#define H3100_GPIO_IR_FSEL 9 + /* for H3600, audio sample rate clock generator */ #define GPIO_H3600_CLK_SET0 GPIO_GPIO (12) #define GPIO_H3600_CLK_SET1 GPIO_GPIO (13) -- cgit v1.2.3-70-g09d2