diff options
Diffstat (limited to 'arch/arm/mach-pxa/palmt5.c')
-rw-r--r-- | arch/arm/mach-pxa/palmt5.c | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/arch/arm/mach-pxa/palmt5.c b/arch/arm/mach-pxa/palmt5.c index 0680f1a575a3..30662363907b 100644 --- a/arch/arm/mach-pxa/palmt5.c +++ b/arch/arm/mach-pxa/palmt5.c | |||
@@ -64,6 +64,7 @@ static unsigned long palmt5_pin_config[] __initdata = { | |||
64 | GPIO29_AC97_SDATA_IN_0, | 64 | GPIO29_AC97_SDATA_IN_0, |
65 | GPIO30_AC97_SDATA_OUT, | 65 | GPIO30_AC97_SDATA_OUT, |
66 | GPIO31_AC97_SYNC, | 66 | GPIO31_AC97_SYNC, |
67 | GPIO95_AC97_nRESET, | ||
67 | 68 | ||
68 | /* IrDA */ | 69 | /* IrDA */ |
69 | GPIO40_GPIO, /* ir disable */ | 70 | GPIO40_GPIO, /* ir disable */ |
@@ -72,7 +73,7 @@ static unsigned long palmt5_pin_config[] __initdata = { | |||
72 | 73 | ||
73 | /* USB */ | 74 | /* USB */ |
74 | GPIO15_GPIO, /* usb detect */ | 75 | GPIO15_GPIO, /* usb detect */ |
75 | GPIO95_GPIO, /* usb power */ | 76 | GPIO93_GPIO, /* usb power */ |
76 | 77 | ||
77 | /* MATRIX KEYPAD */ | 78 | /* MATRIX KEYPAD */ |
78 | GPIO100_KP_MKIN_0 | WAKEUP_ON_LEVEL_HIGH, | 79 | GPIO100_KP_MKIN_0 | WAKEUP_ON_LEVEL_HIGH, |
@@ -344,7 +345,7 @@ static struct pxaficp_platform_data palmt5_ficp_platform_data = { | |||
344 | static struct pxa2xx_udc_mach_info palmt5_udc_info __initdata = { | 345 | static struct pxa2xx_udc_mach_info palmt5_udc_info __initdata = { |
345 | .gpio_vbus = GPIO_NR_PALMT5_USB_DETECT_N, | 346 | .gpio_vbus = GPIO_NR_PALMT5_USB_DETECT_N, |
346 | .gpio_vbus_inverted = 1, | 347 | .gpio_vbus_inverted = 1, |
347 | .gpio_pullup = GPIO_NR_PALMT5_USB_POWER, | 348 | .gpio_pullup = GPIO_NR_PALMT5_USB_PULLUP, |
348 | .gpio_pullup_inverted = 0, | 349 | .gpio_pullup_inverted = 0, |
349 | }; | 350 | }; |
350 | 351 | ||
@@ -419,10 +420,22 @@ static struct wm97xx_batt_info wm97xx_batt_pdata = { | |||
419 | /****************************************************************************** | 420 | /****************************************************************************** |
420 | * aSoC audio | 421 | * aSoC audio |
421 | ******************************************************************************/ | 422 | ******************************************************************************/ |
422 | static struct palm27x_asoc_info palm27x_asoc_pdata = { | 423 | static struct palm27x_asoc_info palmt5_asoc_pdata = { |
423 | .jack_gpio = GPIO_NR_PALMT5_EARPHONE_DETECT, | 424 | .jack_gpio = GPIO_NR_PALMT5_EARPHONE_DETECT, |
424 | }; | 425 | }; |
425 | 426 | ||
427 | static pxa2xx_audio_ops_t palmt5_ac97_pdata = { | ||
428 | .reset_gpio = 95, | ||
429 | }; | ||
430 | |||
431 | static struct platform_device palmt5_asoc = { | ||
432 | .name = "palm27x-asoc", | ||
433 | .id = -1, | ||
434 | .dev = { | ||
435 | .platform_data = &palmt5_asoc_pdata, | ||
436 | }, | ||
437 | }; | ||
438 | |||
426 | /****************************************************************************** | 439 | /****************************************************************************** |
427 | * Framebuffer | 440 | * Framebuffer |
428 | ******************************************************************************/ | 441 | ******************************************************************************/ |
@@ -485,14 +498,15 @@ static struct platform_device *devices[] __initdata = { | |||
485 | #endif | 498 | #endif |
486 | &palmt5_backlight, | 499 | &palmt5_backlight, |
487 | &power_supply, | 500 | &power_supply, |
501 | &palmt5_asoc, | ||
488 | }; | 502 | }; |
489 | 503 | ||
490 | /* setup udc GPIOs initial state */ | 504 | /* setup udc GPIOs initial state */ |
491 | static void __init palmt5_udc_init(void) | 505 | static void __init palmt5_udc_init(void) |
492 | { | 506 | { |
493 | if (!gpio_request(GPIO_NR_PALMT5_USB_POWER, "UDC Vbus")) { | 507 | if (!gpio_request(GPIO_NR_PALMT5_USB_PULLUP, "UDC Vbus")) { |
494 | gpio_direction_output(GPIO_NR_PALMT5_USB_POWER, 1); | 508 | gpio_direction_output(GPIO_NR_PALMT5_USB_PULLUP, 1); |
495 | gpio_free(GPIO_NR_PALMT5_USB_POWER); | 509 | gpio_free(GPIO_NR_PALMT5_USB_PULLUP); |
496 | } | 510 | } |
497 | } | 511 | } |
498 | 512 | ||
@@ -503,12 +517,11 @@ static void __init palmt5_init(void) | |||
503 | set_pxa_fb_info(&palmt5_lcd_screen); | 517 | set_pxa_fb_info(&palmt5_lcd_screen); |
504 | pxa_set_mci_info(&palmt5_mci_platform_data); | 518 | pxa_set_mci_info(&palmt5_mci_platform_data); |
505 | palmt5_udc_init(); | 519 | palmt5_udc_init(); |
520 | pxa_set_ac97_info(&palmt5_ac97_pdata); | ||
506 | pxa_set_udc_info(&palmt5_udc_info); | 521 | pxa_set_udc_info(&palmt5_udc_info); |
507 | pxa_set_ac97_info(NULL); | ||
508 | pxa_set_ficp_info(&palmt5_ficp_platform_data); | 522 | pxa_set_ficp_info(&palmt5_ficp_platform_data); |
509 | pxa_set_keypad_info(&palmt5_keypad_platform_data); | 523 | pxa_set_keypad_info(&palmt5_keypad_platform_data); |
510 | wm97xx_bat_set_pdata(&wm97xx_batt_pdata); | 524 | wm97xx_bat_set_pdata(&wm97xx_batt_pdata); |
511 | palm27x_asoc_set_pdata(&palm27x_asoc_pdata); | ||
512 | platform_add_devices(devices, ARRAY_SIZE(devices)); | 525 | platform_add_devices(devices, ARRAY_SIZE(devices)); |
513 | } | 526 | } |
514 | 527 | ||