From: 黄涛 Date: Tue, 27 Mar 2012 09:23:19 +0000 (+0800) Subject: rk30: add cpu axi init X-Git-Tag: firefly_0821_release~9560^2~38 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=10b29c39d57849ff74f31cda1534fdd471354d9a;p=firefly-linux-kernel-4.4.55.git rk30: add cpu axi init --- diff --git a/arch/arm/mach-rk30/common.c b/arch/arm/mach-rk30/common.c index a248992d9827..b44b9ad0316b 100755 --- a/arch/arm/mach-rk30/common.c +++ b/arch/arm/mach-rk30/common.c @@ -13,7 +13,24 @@ #include #include - +static void __init rk30_cpu_axi_init(void) +{ + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x0088); + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x0108); + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x0188); + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x0388); + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x4008); + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x5008); + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x6008); + writel_relaxed(0xa, RK30_CPU_AXI_BUS_BASE + 0x7008); + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x7088); + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x7108); + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x7188); + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x7208); + writel_relaxed(0x0, RK30_CPU_AXI_BUS_BASE + 0x7288); + writel_relaxed(0x3f, RK30_CPU_AXI_BUS_BASE + 0x0014); + dsb(); +} static void __init rk30_l2_cache_init(void) { @@ -68,6 +85,7 @@ void __init rk30_map_io(void) { rk30_map_common_io(); rk29_setup_early_printk(); + rk30_cpu_axi_init(); rk29_sram_init(); board_clock_init(); rk30_l2_cache_init(); diff --git a/arch/arm/mach-rk30/include/mach/io.h b/arch/arm/mach-rk30/include/mach/io.h index 3cbcf6e1432d..619589191484 100644 --- a/arch/arm/mach-rk30/include/mach/io.h +++ b/arch/arm/mach-rk30/include/mach/io.h @@ -72,6 +72,7 @@ #define RK30_UART1_BASE RK30_IO_TO_VIRT0(RK30_UART1_PHYS) #define RK30_UART1_SIZE SZ_8K #define RK30_CPU_AXI_BUS_PHYS 0x10128000 +#define RK30_CPU_AXI_BUS_BASE RK30_IO_TO_VIRT0(RK30_CPU_AXI_BUS_PHYS) #define RK30_CPU_AXI_BUS_SIZE SZ_32K #define RK30_L2C_PHYS 0x10138000 diff --git a/arch/arm/mach-rk30/io.c b/arch/arm/mach-rk30/io.c index b370cd6e8035..e3f05b8de29d 100644 --- a/arch/arm/mach-rk30/io.c +++ b/arch/arm/mach-rk30/io.c @@ -29,6 +29,7 @@ static struct map_desc rk30_io_desc[] __initdata = { RK30_DEVICE(CORE), + RK30_DEVICE(CPU_AXI_BUS), #if CONFIG_RK_DEBUG_UART == 0 RK30_DEVICE(UART0), #elif CONFIG_RK_DEBUG_UART == 1