ARM: iPAQ: convert H3100 IrDA to use generic gpio support

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
Russell King 2009-10-06 14:36:05 +01:00
parent 0831e3e4cf
commit 9c196f0f8d
2 changed files with 17 additions and 3 deletions

View File

@ -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);
}

View File

@ -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)