[PATCH] ARM: ux500: get rid of static maps
Arnd Bergmann
arnd at arndb.de
Wed May 13 05:00:05 PDT 2015
On Wednesday 13 May 2015 12:53:07 Linus Walleij wrote:
> The static mappings of the GPIO blocks, clock/reset controller
> and MTU timer are clearly superfluous. These are all probed
> exclusively from the device tree. Tested on the U8500.
>
> Signed-off-by: Linus Walleij <linus.walleij at linaro.org>
> ---
> Hi ARM SoC-guys: please apply this single clean-up patch
> directly to the ARM SoC-tree where apropriate.
Applied to next/cleanup, very nice!
> arch/arm/mach-ux500/cpu-db8500.c | 13 +------------
> 1 file changed, 1 insertion(+), 12 deletions(-)
>
> diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
> index 6f63954c8bde..537a7753afc1 100644
> --- a/arch/arm/mach-ux500/cpu-db8500.c
> +++ b/arch/arm/mach-ux500/cpu-db8500.c
> @@ -48,25 +48,14 @@ static struct map_desc u8500_uart_io_desc[] __initdata = {
> __IO_DEV_DESC(U8500_UART0_BASE, SZ_4K),
> __IO_DEV_DESC(U8500_UART2_BASE, SZ_4K),
> };
> +
> /* U8500 and U9540 common io_desc */
> static struct map_desc u8500_common_io_desc[] __initdata = {
> /* SCU base also covers GIC CPU BASE and TWD with its 4K page */
> __IO_DEV_DESC(U8500_SCU_BASE, SZ_4K),
> __IO_DEV_DESC(U8500_GIC_DIST_BASE, SZ_4K),
> __IO_DEV_DESC(U8500_L2CC_BASE, SZ_4K),
> - __IO_DEV_DESC(U8500_MTU0_BASE, SZ_4K),
> __IO_DEV_DESC(U8500_BACKUPRAM0_BASE, SZ_8K),
Could you have a look at removing the other ones as well? I think
that would be a nice cleanup. I think it can be done like this:
U8500_UART?_BASE: obsolete if you call debug_ll_io_init() or have an empty
map_io function
U8500_SCU_BASE: add a local variable in platsmp.c and use of_iomap, or
ioremap with a fixed physical address if the DT node is missing
U8500_GIC_DIST_BASE: I don't really understand what's going on. We could
just move the two users into local functions of the cpuidle driver and
use ioremap of the GIC, but there might be a proper solution.
U8500_L2CC_BASE: it looks like ux500_l2x0_unlock() can be deleted, the
l2x0_of_init() function already does this in l2c_unlock
U8500_BACKUPRAM0_BASE: the right solution is probably to use the generic
sram, but ioremap() of the physical address in wakeup_secondary would
also work
U8500_PRCMU_BASE: use a local variable in ux500_init_irq, and do an
of_iomap() to pass a virtual address. Currently the callee already
does an ioremap, so it's probably not needed.
U8500_PRCMU_TCDM_BASE: unused?
Arnd
More information about the linux-arm-kernel
mailing list