From: Stephen Rothwell Date: Sun, 11 Dec 2011 23:47:40 +0000 (+1100) Subject: Merge remote-tracking branch 'arm-soc/for-next' X-Git-Tag: next-20111212~93 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=7adf5cf33043a74e4f2986f426aaf5cfff3feb72;p=karo-tx-linux.git Merge remote-tracking branch 'arm-soc/for-next' Conflicts: arch/arm/mach-at91/at91cap9.c arch/arm/mach-at91/at91sam9260.c arch/arm/mach-at91/at91sam9261.c arch/arm/mach-at91/at91sam9263.c arch/arm/mach-at91/at91sam9g45.c arch/arm/mach-at91/at91sam9rl.c arch/arm/mach-at91/setup.c arch/arm/mach-mxs/include/mach/common.h --- 7adf5cf33043a74e4f2986f426aaf5cfff3feb72 diff --cc arch/arm/mach-at91/at91cap9.c index 29373397d2df,506a26c3fff6..edb879ac04c8 --- a/arch/arm/mach-at91/at91cap9.c +++ b/arch/arm/mach-at91/at91cap9.c @@@ -333,10 -328,16 +328,16 @@@ static void __init at91cap9_map_io(void at91_init_sram(0, AT91CAP9_SRAM_BASE, AT91CAP9_SRAM_SIZE); } + static void __init at91cap9_ioremap_registers(void) + { + at91_ioremap_shdwc(AT91CAP9_BASE_SHDWC); + at91sam926x_ioremap_pit(AT91CAP9_BASE_PIT); + at91sam9_ioremap_smc(0, AT91CAP9_BASE_SMC); + } + static void __init at91cap9_initialize(void) { - at91_arch_reset = at91cap9_reset; + arm_pm_restart = at91cap9_restart; - pm_power_off = at91cap9_poweroff; at91_extern_irq = (1 << AT91CAP9_ID_IRQ0) | (1 << AT91CAP9_ID_IRQ1); /* Register GPIO subsystem */ diff --cc arch/arm/mach-at91/at91rm9200.c index 430a9fdc3dbf,9163d7d5f76e..99c3174e24a2 --- a/arch/arm/mach-at91/at91rm9200.c +++ b/arch/arm/mach-at91/at91rm9200.c @@@ -307,9 -308,13 +308,13 @@@ static void __init at91rm9200_map_io(vo iotable_init(at91rm9200_io_desc, ARRAY_SIZE(at91rm9200_io_desc)); } + static void __init at91rm9200_ioremap_registers(void) + { + } + static void __init at91rm9200_initialize(void) { - at91_arch_reset = at91rm9200_reset; + arm_pm_restart = at91rm9200_restart; at91_extern_irq = (1 << AT91RM9200_ID_IRQ0) | (1 << AT91RM9200_ID_IRQ1) | (1 << AT91RM9200_ID_IRQ2) | (1 << AT91RM9200_ID_IRQ3) | (1 << AT91RM9200_ID_IRQ4) | (1 << AT91RM9200_ID_IRQ5) diff --cc arch/arm/mach-at91/at91sam9260.c index e76cd49ebc9e,3a960d2740b6..5e46e4a96430 --- a/arch/arm/mach-at91/at91sam9260.c +++ b/arch/arm/mach-at91/at91sam9260.c @@@ -325,10 -320,16 +320,16 @@@ static void __init at91sam9260_map_io(v } } + static void __init at91sam9260_ioremap_registers(void) + { + at91_ioremap_shdwc(AT91SAM9260_BASE_SHDWC); + at91sam926x_ioremap_pit(AT91SAM9260_BASE_PIT); + at91sam9_ioremap_smc(0, AT91SAM9260_BASE_SMC); + } + static void __init at91sam9260_initialize(void) { - at91_arch_reset = at91sam9_alt_reset; + arm_pm_restart = at91sam9_alt_restart; - pm_power_off = at91sam9260_poweroff; at91_extern_irq = (1 << AT91SAM9260_ID_IRQ0) | (1 << AT91SAM9260_ID_IRQ1) | (1 << AT91SAM9260_ID_IRQ2); diff --cc arch/arm/mach-at91/at91sam9261.c index 19ac7c0729a0,a0538c5c2520..b85b9ea60170 --- a/arch/arm/mach-at91/at91sam9261.c +++ b/arch/arm/mach-at91/at91sam9261.c @@@ -285,10 -278,16 +278,16 @@@ static void __init at91sam9261_map_io(v at91_init_sram(0, AT91SAM9261_SRAM_BASE, AT91SAM9261_SRAM_SIZE); } + static void __init at91sam9261_ioremap_registers(void) + { + at91_ioremap_shdwc(AT91SAM9261_BASE_SHDWC); + at91sam926x_ioremap_pit(AT91SAM9261_BASE_PIT); + at91sam9_ioremap_smc(0, AT91SAM9261_BASE_SMC); + } + static void __init at91sam9261_initialize(void) { - at91_arch_reset = at91sam9_alt_reset; + arm_pm_restart = at91sam9_alt_restart; - pm_power_off = at91sam9261_poweroff; at91_extern_irq = (1 << AT91SAM9261_ID_IRQ0) | (1 << AT91SAM9261_ID_IRQ1) | (1 << AT91SAM9261_ID_IRQ2); diff --cc arch/arm/mach-at91/at91sam9263.c index 50d016310031,5ffbbb024c1e..79e3669b1117 --- a/arch/arm/mach-at91/at91sam9263.c +++ b/arch/arm/mach-at91/at91sam9263.c @@@ -303,10 -298,17 +298,17 @@@ static void __init at91sam9263_map_io(v at91_init_sram(1, AT91SAM9263_SRAM1_BASE, AT91SAM9263_SRAM1_SIZE); } + static void __init at91sam9263_ioremap_registers(void) + { + at91_ioremap_shdwc(AT91SAM9263_BASE_SHDWC); + at91sam926x_ioremap_pit(AT91SAM9263_BASE_PIT); + at91sam9_ioremap_smc(0, AT91SAM9263_BASE_SMC0); + at91sam9_ioremap_smc(1, AT91SAM9263_BASE_SMC1); + } + static void __init at91sam9263_initialize(void) { - at91_arch_reset = at91sam9_alt_reset; + arm_pm_restart = at91sam9_alt_restart; - pm_power_off = at91sam9263_poweroff; at91_extern_irq = (1 << AT91SAM9263_ID_IRQ0) | (1 << AT91SAM9263_ID_IRQ1); /* Register GPIO subsystem */ diff --cc arch/arm/mach-at91/at91sam9g45.c index ff21f7a60c63,f61eb64e6b39..7032dd32cdf0 --- a/arch/arm/mach-at91/at91sam9g45.c +++ b/arch/arm/mach-at91/at91sam9g45.c @@@ -338,10 -333,16 +333,16 @@@ static void __init at91sam9g45_map_io(v init_consistent_dma_size(SZ_4M); } + static void __init at91sam9g45_ioremap_registers(void) + { + at91_ioremap_shdwc(AT91SAM9G45_BASE_SHDWC); + at91sam926x_ioremap_pit(AT91SAM9G45_BASE_PIT); + at91sam9_ioremap_smc(0, AT91SAM9G45_BASE_SMC); + } + static void __init at91sam9g45_initialize(void) { - at91_arch_reset = at91sam9g45_reset; + arm_pm_restart = at91sam9g45_restart; - pm_power_off = at91sam9g45_poweroff; at91_extern_irq = (1 << AT91SAM9G45_ID_IRQ0); /* Register GPIO subsystem */ diff --cc arch/arm/mach-at91/at91sam9rl.c index 61cbb46f5b0e,96247f68b9d2..d6bcb1da11df --- a/arch/arm/mach-at91/at91sam9rl.c +++ b/arch/arm/mach-at91/at91sam9rl.c @@@ -290,10 -283,16 +283,16 @@@ static void __init at91sam9rl_map_io(vo at91_init_sram(0, AT91SAM9RL_SRAM_BASE, sram_size); } + static void __init at91sam9rl_ioremap_registers(void) + { + at91_ioremap_shdwc(AT91SAM9RL_BASE_SHDWC); + at91sam926x_ioremap_pit(AT91SAM9RL_BASE_PIT); + at91sam9_ioremap_smc(0, AT91SAM9RL_BASE_SMC); + } + static void __init at91sam9rl_initialize(void) { - at91_arch_reset = at91sam9_alt_reset; + arm_pm_restart = at91sam9_alt_restart; - pm_power_off = at91sam9rl_poweroff; at91_extern_irq = (1 << AT91SAM9RL_ID_IRQ0); /* Register GPIO subsystem */ diff --cc arch/arm/mach-at91/generic.h index 7f4503bc4cbb,40309588f360..4866b8180d66 --- a/arch/arm/mach-at91/generic.h +++ b/arch/arm/mach-at91/generic.h @@@ -57,8 -58,11 +58,11 @@@ extern void at91_irq_suspend(void) extern void at91_irq_resume(void); /* reset */ -extern void at91sam9_alt_reset(void); +extern void at91sam9_alt_restart(char, const char *); + /* shutdown */ + extern void at91_ioremap_shdwc(u32 base_addr); + /* GPIO */ #define AT91RM9200_PQFP 3 /* AT91RM9200 PQFP package has 3 banks */ #define AT91RM9200_BGA 4 /* AT91RM9200 BGA package has 4 banks */ diff --cc arch/arm/mach-at91/setup.c index cf98a8f94dc5,242c26b2368d..8bdcc3cb6012 --- a/arch/arm/mach-at91/setup.c +++ b/arch/arm/mach-at91/setup.c @@@ -73,9 -75,24 +75,6 @@@ static struct map_desc at91_io_desc __i .type = MT_DEVICE, }; - #define AT91_DBGU0 0xfffff200 - #define AT91_DBGU1 0xffffee00 -void __iomem *at91_ioremap(unsigned long p, size_t size, unsigned int type) -{ - if (p >= AT91_BASE_SYS && p <= (AT91_BASE_SYS + SZ_16K - 1)) - return (void __iomem *)AT91_IO_P2V(p); - - return __arm_ioremap_caller(p, size, type, __builtin_return_address(0)); -} -EXPORT_SYMBOL(at91_ioremap); - -void at91_iounmap(volatile void __iomem *addr) -{ - unsigned long virt = (unsigned long)addr; - - if (virt >= VMALLOC_START && virt < VMALLOC_END) - __iounmap(addr); -} -EXPORT_SYMBOL(at91_iounmap); -- static void __init soc_detect(u32 dbgu_base) { u32 cidr, socid; diff --cc arch/arm/mach-mxs/include/mach/common.h index 1388485414c9,3bbb94f4bbe1..e1237ab25862 --- a/arch/arm/mach-mxs/include/mach/common.h +++ b/arch/arm/mach-mxs/include/mach/common.h @@@ -16,7 -16,7 +16,8 @@@ struct clk extern const u32 *mxs_get_ocotp(void); extern int mxs_reset_block(void __iomem *); extern void mxs_timer_init(struct clk *, int); +extern void mxs_restart(char, const char *); + extern int mxs_saif_clkmux_select(unsigned int clkmux); extern int mx23_register_gpios(void); extern int mx23_clocks_init(void);