diff options
Diffstat (limited to 'arch/arm/mach-pxa/palmtx.c')
-rw-r--r-- | arch/arm/mach-pxa/palmtx.c | 34 |
1 files changed, 28 insertions, 6 deletions
diff --git a/arch/arm/mach-pxa/palmtx.c b/arch/arm/mach-pxa/palmtx.c index 59d0c1cba556..e2d44b1a8a9b 100644 --- a/arch/arm/mach-pxa/palmtx.c +++ b/arch/arm/mach-pxa/palmtx.c | |||
@@ -40,6 +40,7 @@ | |||
40 | #include <mach/irda.h> | 40 | #include <mach/irda.h> |
41 | #include <mach/pxa27x_keypad.h> | 41 | #include <mach/pxa27x_keypad.h> |
42 | #include <mach/udc.h> | 42 | #include <mach/udc.h> |
43 | #include <mach/palmasoc.h> | ||
43 | 44 | ||
44 | #include "generic.h" | 45 | #include "generic.h" |
45 | #include "devices.h" | 46 | #include "devices.h" |
@@ -64,6 +65,7 @@ static unsigned long palmtx_pin_config[] __initdata = { | |||
64 | GPIO29_AC97_SDATA_IN_0, | 65 | GPIO29_AC97_SDATA_IN_0, |
65 | GPIO30_AC97_SDATA_OUT, | 66 | GPIO30_AC97_SDATA_OUT, |
66 | GPIO31_AC97_SYNC, | 67 | GPIO31_AC97_SYNC, |
68 | GPIO95_AC97_nRESET, | ||
67 | 69 | ||
68 | /* IrDA */ | 70 | /* IrDA */ |
69 | GPIO40_GPIO, /* ir disable */ | 71 | GPIO40_GPIO, /* ir disable */ |
@@ -75,7 +77,7 @@ static unsigned long palmtx_pin_config[] __initdata = { | |||
75 | 77 | ||
76 | /* USB */ | 78 | /* USB */ |
77 | GPIO13_GPIO, /* usb detect */ | 79 | GPIO13_GPIO, /* usb detect */ |
78 | GPIO95_GPIO, /* usb power */ | 80 | GPIO93_GPIO, /* usb power */ |
79 | 81 | ||
80 | /* PCMCIA */ | 82 | /* PCMCIA */ |
81 | GPIO48_nPOE, | 83 | GPIO48_nPOE, |
@@ -359,7 +361,7 @@ static struct pxaficp_platform_data palmtx_ficp_platform_data = { | |||
359 | static struct pxa2xx_udc_mach_info palmtx_udc_info __initdata = { | 361 | static struct pxa2xx_udc_mach_info palmtx_udc_info __initdata = { |
360 | .gpio_vbus = GPIO_NR_PALMTX_USB_DETECT_N, | 362 | .gpio_vbus = GPIO_NR_PALMTX_USB_DETECT_N, |
361 | .gpio_vbus_inverted = 1, | 363 | .gpio_vbus_inverted = 1, |
362 | .gpio_pullup = GPIO_NR_PALMTX_USB_POWER, | 364 | .gpio_pullup = GPIO_NR_PALMTX_USB_PULLUP, |
363 | .gpio_pullup_inverted = 0, | 365 | .gpio_pullup_inverted = 0, |
364 | }; | 366 | }; |
365 | 367 | ||
@@ -433,6 +435,25 @@ static struct wm97xx_batt_info wm97xx_batt_pdata = { | |||
433 | }; | 435 | }; |
434 | 436 | ||
435 | /****************************************************************************** | 437 | /****************************************************************************** |
438 | * aSoC audio | ||
439 | ******************************************************************************/ | ||
440 | static struct palm27x_asoc_info palmtx_asoc_pdata = { | ||
441 | .jack_gpio = GPIO_NR_PALMTX_EARPHONE_DETECT, | ||
442 | }; | ||
443 | |||
444 | static pxa2xx_audio_ops_t palmtx_ac97_pdata = { | ||
445 | .reset_gpio = 95, | ||
446 | }; | ||
447 | |||
448 | static struct platform_device palmtx_asoc = { | ||
449 | .name = "palm27x-asoc", | ||
450 | .id = -1, | ||
451 | .dev = { | ||
452 | .platform_data = &palmtx_asoc_pdata, | ||
453 | }, | ||
454 | }; | ||
455 | |||
456 | /****************************************************************************** | ||
436 | * Framebuffer | 457 | * Framebuffer |
437 | ******************************************************************************/ | 458 | ******************************************************************************/ |
438 | static struct pxafb_mode_info palmtx_lcd_modes[] = { | 459 | static struct pxafb_mode_info palmtx_lcd_modes[] = { |
@@ -494,6 +515,7 @@ static struct platform_device *devices[] __initdata = { | |||
494 | #endif | 515 | #endif |
495 | &palmtx_backlight, | 516 | &palmtx_backlight, |
496 | &power_supply, | 517 | &power_supply, |
518 | &palmtx_asoc, | ||
497 | }; | 519 | }; |
498 | 520 | ||
499 | static struct map_desc palmtx_io_desc[] __initdata = { | 521 | static struct map_desc palmtx_io_desc[] __initdata = { |
@@ -514,9 +536,9 @@ static void __init palmtx_map_io(void) | |||
514 | /* setup udc GPIOs initial state */ | 536 | /* setup udc GPIOs initial state */ |
515 | static void __init palmtx_udc_init(void) | 537 | static void __init palmtx_udc_init(void) |
516 | { | 538 | { |
517 | if (!gpio_request(GPIO_NR_PALMTX_USB_POWER, "UDC Vbus")) { | 539 | if (!gpio_request(GPIO_NR_PALMTX_USB_PULLUP, "UDC Vbus")) { |
518 | gpio_direction_output(GPIO_NR_PALMTX_USB_POWER, 1); | 540 | gpio_direction_output(GPIO_NR_PALMTX_USB_PULLUP, 1); |
519 | gpio_free(GPIO_NR_PALMTX_USB_POWER); | 541 | gpio_free(GPIO_NR_PALMTX_USB_PULLUP); |
520 | } | 542 | } |
521 | } | 543 | } |
522 | 544 | ||
@@ -528,8 +550,8 @@ static void __init palmtx_init(void) | |||
528 | set_pxa_fb_info(&palmtx_lcd_screen); | 550 | set_pxa_fb_info(&palmtx_lcd_screen); |
529 | pxa_set_mci_info(&palmtx_mci_platform_data); | 551 | pxa_set_mci_info(&palmtx_mci_platform_data); |
530 | palmtx_udc_init(); | 552 | palmtx_udc_init(); |
553 | pxa_set_ac97_info(&palmtx_ac97_pdata); | ||
531 | pxa_set_udc_info(&palmtx_udc_info); | 554 | pxa_set_udc_info(&palmtx_udc_info); |
532 | pxa_set_ac97_info(NULL); | ||
533 | pxa_set_ficp_info(&palmtx_ficp_platform_data); | 555 | pxa_set_ficp_info(&palmtx_ficp_platform_data); |
534 | pxa_set_keypad_info(&palmtx_keypad_platform_data); | 556 | pxa_set_keypad_info(&palmtx_keypad_platform_data); |
535 | wm97xx_bat_set_pdata(&wm97xx_batt_pdata); | 557 | wm97xx_bat_set_pdata(&wm97xx_batt_pdata); |