diff options
Diffstat (limited to 'arch/arm/mach-pxa/palmld.c')
-rw-r--r-- | arch/arm/mach-pxa/palmld.c | 31 |
1 files changed, 10 insertions, 21 deletions
diff --git a/arch/arm/mach-pxa/palmld.c b/arch/arm/mach-pxa/palmld.c index 471a853e548b..1f1917fc2008 100644 --- a/arch/arm/mach-pxa/palmld.c +++ b/arch/arm/mach-pxa/palmld.c | |||
@@ -524,30 +524,18 @@ static struct pxafb_mach_info palmld_lcd_screen = { | |||
524 | /****************************************************************************** | 524 | /****************************************************************************** |
525 | * Power management - standby | 525 | * Power management - standby |
526 | ******************************************************************************/ | 526 | ******************************************************************************/ |
527 | #ifdef CONFIG_PM | 527 | static void __init palmld_pm_init(void) |
528 | static u32 *addr __initdata; | ||
529 | static u32 resume[3] __initdata = { | ||
530 | 0xe3a00101, /* mov r0, #0x40000000 */ | ||
531 | 0xe380060f, /* orr r0, r0, #0x00f00000 */ | ||
532 | 0xe590f008, /* ldr pc, [r0, #0x08] */ | ||
533 | }; | ||
534 | |||
535 | static int __init palmld_pm_init(void) | ||
536 | { | 528 | { |
537 | int i; | 529 | static u32 resume[] = { |
538 | 530 | 0xe3a00101, /* mov r0, #0x40000000 */ | |
539 | /* this is where the bootloader jumps */ | 531 | 0xe380060f, /* orr r0, r0, #0x00f00000 */ |
540 | addr = phys_to_virt(PALMLD_STR_BASE); | 532 | 0xe590f008, /* ldr pc, [r0, #0x08] */ |
541 | 533 | }; | |
542 | for (i = 0; i < 3; i++) | 534 | |
543 | addr[i] = resume[i]; | 535 | /* copy the bootloader */ |
544 | 536 | memcpy(phys_to_virt(PALMLD_STR_BASE), resume, sizeof(resume)); | |
545 | return 0; | ||
546 | } | 537 | } |
547 | 538 | ||
548 | device_initcall(palmld_pm_init); | ||
549 | #endif | ||
550 | |||
551 | /****************************************************************************** | 539 | /****************************************************************************** |
552 | * Machine init | 540 | * Machine init |
553 | ******************************************************************************/ | 541 | ******************************************************************************/ |
@@ -586,6 +574,7 @@ static void __init palmld_init(void) | |||
586 | { | 574 | { |
587 | pxa2xx_mfp_config(ARRAY_AND_SIZE(palmld_pin_config)); | 575 | pxa2xx_mfp_config(ARRAY_AND_SIZE(palmld_pin_config)); |
588 | 576 | ||
577 | palmld_pm_init(); | ||
589 | set_pxa_fb_info(&palmld_lcd_screen); | 578 | set_pxa_fb_info(&palmld_lcd_screen); |
590 | pxa_set_mci_info(&palmld_mci_platform_data); | 579 | pxa_set_mci_info(&palmld_mci_platform_data); |
591 | pxa_set_ac97_info(&palmld_ac97_pdata); | 580 | pxa_set_ac97_info(&palmld_ac97_pdata); |