.settinginfo=wm831x_gpio_settinginfo,
.settinginfolen=ARRAY_SIZE(wm831x_gpio_settinginfo),
.pin_type_init = wm831x_init_pin_type,
- .irq_base= NR_AIC_IRQS + 2*NUM_GROUP + TCA6424_TOTOL_GPIO_IRQ_NUM + CONFIG_SPI_FPGA_GPIO_IRQ_NUM,
+ .irq_base= NR_AIC_IRQS + 7*NUM_GROUP,
#endif
.backlight = &wm831x_backlight_platdata,
//#endif
#ifdef CONFIG_RK_HEADSET_DET
-#define HEADSET_GPIO RK29_PIN4_PD2
+#define HEADSET_GPIO RK29_PIN3_PA6
struct rk2818_headset_data rk2818_headset_info = {
.gpio = HEADSET_GPIO,
.irq_type = IRQF_TRIGGER_RISING,//IRQF_TRIGGER_RISING -- ÉÏÉýÑØ IRQF_TRIGGER_FALLING -- ϽµÑØ
#ifdef CONFIG_RK29_PWM_REGULATOR
rk29_mux_api_set(REGULATOR_PWM_MUX_NAME,REGULATOR_PWM_MUX_MODE);
#endif
+ #ifdef CONFIG_RK_HEADSET_DET
+ rk29_mux_api_set(GPIO3A6_SMCADDR14_HOSTDATA14_NAME,GPIO3L_GPIO3A6);
+ #endif
}
static struct platform_device *devices[] __initdata = {
.settinginfo=wm831x_gpio_settinginfo,
.settinginfolen=ARRAY_SIZE(wm831x_gpio_settinginfo),
.pin_type_init = wm831x_init_pin_type,
- .irq_base= NR_AIC_IRQS + 2*NUM_GROUP + TCA6424_TOTOL_GPIO_IRQ_NUM + CONFIG_SPI_FPGA_GPIO_IRQ_NUM,
+ .irq_base= NR_AIC_IRQS + 7*NUM_GROUP,
#endif
.backlight = &wm831x_backlight_platdata,
DBG("headsetobserve: request gpio_request failed\n");
return ret;
}
- gpio_pull_updown(prk2818_headset_info->gpio, GPIONormal);
+ gpio_pull_updown(prk2818_headset_info->gpio, PullDisable);
gpio_direction_input(prk2818_headset_info->gpio);
prk2818_headset_info->irq = gpio_to_irq(prk2818_headset_info->gpio);