Module Name: src Committed By: matt Date: Mon Apr 20 01:33:22 UTC 2015
Modified Files: src/sys/arch/arm/allwinner: awin_board.c awin_gpio.c awin_io.c awin_var.h awin_wdt.c files.awin src/sys/arch/evbarm/awin: awin_machdep.c Removed Files: src/sys/arch/arm/allwinner: awin_space.c Log Message: Switch to armv7_generic bus_space. To generate a diff of this commit: cvs rdiff -u -r1.34 -r1.35 src/sys/arch/arm/allwinner/awin_board.c \ src/sys/arch/arm/allwinner/awin_var.h cvs rdiff -u -r1.17 -r1.18 src/sys/arch/arm/allwinner/awin_gpio.c cvs rdiff -u -r1.42 -r1.43 src/sys/arch/arm/allwinner/awin_io.c cvs rdiff -u -r1.4 -r0 src/sys/arch/arm/allwinner/awin_space.c cvs rdiff -u -r1.6 -r1.7 src/sys/arch/arm/allwinner/awin_wdt.c cvs rdiff -u -r1.30 -r1.31 src/sys/arch/arm/allwinner/files.awin cvs rdiff -u -r1.39 -r1.40 src/sys/arch/evbarm/awin/awin_machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/arm/allwinner/awin_board.c diff -u src/sys/arch/arm/allwinner/awin_board.c:1.34 src/sys/arch/arm/allwinner/awin_board.c:1.35 --- src/sys/arch/arm/allwinner/awin_board.c:1.34 Mon Dec 22 00:07:24 2014 +++ src/sys/arch/arm/allwinner/awin_board.c Mon Apr 20 01:33:22 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: awin_board.c,v 1.34 2014/12/22 00:07:24 jmcneill Exp $ */ +/* $NetBSD: awin_board.c,v 1.35 2015/04/20 01:33:22 matt Exp $ */ /*- * Copyright (c) 2012 The NetBSD Foundation, Inc. * All rights reserved. @@ -36,7 +36,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(1, "$NetBSD: awin_board.c,v 1.34 2014/12/22 00:07:24 jmcneill Exp $"); +__KERNEL_RCSID(1, "$NetBSD: awin_board.c,v 1.35 2015/04/20 01:33:22 matt Exp $"); #include <sys/param.h> #include <sys/bus.h> @@ -128,9 +128,10 @@ static void awin_cpu_clk(void) { struct cpu_info * const ci = curcpu(); + bus_space_tag_t bst = &armv7_generic_bs_tag; #if defined(ALLWINNER_A80) - const uint32_t c0cpux = bus_space_read_4(&awin_bs_tag, awin_core_bsh, + const uint32_t c0cpux = bus_space_read_4(bst, awin_core_bsh, AWIN_A80_CCU_OFFSET + AWIN_A80_CCU_PLL_C0CPUX_CTRL_REG); const u_int p = (c0cpux & AWIN_A80_CCU_PLL_CxCPUX_OUT_EXT_DIVP) ? 4 : 1; const u_int n = __SHIFTOUT(c0cpux, AWIN_A80_CCU_PLL_CxCPUX_FACTOR_N); @@ -140,7 +141,7 @@ awin_cpu_clk(void) u_int reg = awin_chip_id() == AWIN_CHIP_ID_A31 ? AWIN_A31_CPU_AXI_CFG_REG : AWIN_CPU_AHB_APB0_CFG_REG; - const uint32_t cpu0_cfg = bus_space_read_4(&awin_bs_tag, awin_core_bsh, + const uint32_t cpu0_cfg = bus_space_read_4(bst, awin_core_bsh, AWIN_CCM_OFFSET + reg); const u_int cpu_clk_sel = __SHIFTIN(cpu0_cfg, AWIN_CPU_CLK_SRC_SEL); switch (__SHIFTOUT(cpu_clk_sel, AWIN_CPU_CLK_SRC_SEL)) { @@ -151,7 +152,7 @@ awin_cpu_clk(void) ci->ci_data.cpu_cc_freq = AWIN_REF_FREQ; break; case AWIN_CPU_CLK_SRC_SEL_PLL1: { - const uint32_t pll1_cfg = bus_space_read_4(&awin_bs_tag, + const uint32_t pll1_cfg = bus_space_read_4(bst, awin_core_bsh, AWIN_CCM_OFFSET + AWIN_PLL1_CFG_REG); u_int p, n, k, m; if (awin_chip_id() == AWIN_CHIP_ID_A31) { @@ -180,6 +181,7 @@ void awin_bootstrap(vaddr_t iobase, vaddr_t uartbase) { int error; + bus_space_tag_t bst = &armv7_generic_bs_tag; #ifdef AWIN_CONSOLE_EARLY uart_base = (volatile uint32_t *)uartbase; @@ -187,21 +189,21 @@ awin_bootstrap(vaddr_t iobase, vaddr_t u printf("Early console started\n"); #endif - error = bus_space_map(&awin_bs_tag, AWIN_CORE_PBASE, - AWIN_CORE_SIZE, 0, &awin_core_bsh); + error = bus_space_map(bst, AWIN_CORE_PBASE, AWIN_CORE_SIZE, + 0, &awin_core_bsh); if (error) panic("%s: failed to map awin %s registers: %d", __func__, "io", error); KASSERT(awin_core_bsh == iobase); #ifdef ALLWINNER_A80 - error = bus_space_map(&awin_bs_tag, AWIN_A80_CORE2_PBASE, - AWIN_A80_CORE2_SIZE, 0, &awin_core2_bsh); + error = bus_space_map(bst, AWIN_A80_CORE2_PBASE, AWIN_A80_CORE2_SIZE, + 0, &awin_core2_bsh); if (error) panic("%s: failed to map awin %s registers: %d", __func__, "core2", error); - error = bus_space_map(&awin_bs_tag, AWIN_A80_RCPUS_PBASE, - AWIN_A80_RCPUS_SIZE, 0, &awin_rcpus_bsh); + error = bus_space_map(bst, AWIN_A80_RCPUS_PBASE, AWIN_A80_RCPUS_SIZE, + 0, &awin_rcpus_bsh); if (error) panic("%s: failed to map awin %s registers: %d", __func__, "rcpus", error); @@ -228,16 +230,16 @@ awin_bootstrap(vaddr_t iobase, vaddr_t u uint32_t s[4]; unsigned int cpuno; for (cpuno = 0; cpuno < 4; cpuno++) { - s[cpuno] = bus_space_read_4(&awin_bs_tag, awin_core_bsh, + s[cpuno] = bus_space_read_4(bst, awin_core_bsh, AWIN_A31_CPUCFG_OFFSET + AWIN_A31_CPUCFG_STATUS_REG(cpuno)); } printf("%s: cpu status: 0=%#x 1=%#x 2=%#x 3=%#x\n", __func__, s[0], s[1], s[2], s[3]); } else if (awin_chip_id() == AWIN_CHIP_ID_A20) { - uint32_t s0 = bus_space_read_4(&awin_bs_tag, awin_core_bsh, + uint32_t s0 = bus_space_read_4(bst, awin_core_bsh, AWIN_CPUCFG_OFFSET + AWIN_CPUCFG_CPU0_STATUS_REG); - uint32_t s1 = bus_space_read_4(&awin_bs_tag, awin_core_bsh, + uint32_t s1 = bus_space_read_4(bst, awin_core_bsh, AWIN_CPUCFG_OFFSET + AWIN_CPUCFG_CPU1_STATUS_REG); printf("%s: cpu status: 0=%#x 1=%#x\n", __func__, s0, s1); } @@ -287,7 +289,7 @@ awin_memprobe(void) #endif memsize = 0; } else { - const uint32_t dcr = bus_space_read_4(&awin_bs_tag, + const uint32_t dcr = bus_space_read_4(&armv7_generic_bs_tag, awin_core_bsh, AWIN_DRAM_OFFSET + AWIN_DRAM_DCR_REG); @@ -306,6 +308,7 @@ awin_memprobe(void) uint16_t awin_chip_id(void) { + bus_space_tag_t bst = &armv7_generic_bs_tag; #if defined(ALLWINNER_A80) bus_space_handle_t bsh = awin_core2_bsh; #else @@ -315,12 +318,12 @@ awin_chip_id(void) uint32_t ver; if (!chip_id) { - ver = bus_space_read_4(&awin_bs_tag, bsh, + ver = bus_space_read_4(bst, bsh, AWIN_SRAM_OFFSET + AWIN_SRAM_VER_REG); ver |= AWIN_SRAM_VER_R_EN; - bus_space_write_4(&awin_bs_tag, bsh, + bus_space_write_4(bst, bsh, AWIN_SRAM_OFFSET + AWIN_SRAM_VER_REG, ver); - ver = bus_space_read_4(&awin_bs_tag, bsh, + ver = bus_space_read_4(bst, bsh, AWIN_SRAM_OFFSET + AWIN_SRAM_VER_REG); chip_id = __SHIFTOUT(ver, AWIN_SRAM_VER_KEY_FIELD); @@ -348,7 +351,7 @@ awin_chip_name(void) void awin_pll6_enable(void) { - bus_space_tag_t bst = &awin_bs_tag; + bus_space_tag_t bst = &armv7_generic_bs_tag; bus_space_handle_t bsh = awin_core_bsh; KASSERT(awin_chip_id() != AWIN_CHIP_ID_A80); @@ -400,7 +403,7 @@ awin_pll6_enable(void) void awin_pll2_enable(void) { - bus_space_tag_t bst = &awin_bs_tag; + bus_space_tag_t bst = &armv7_generic_bs_tag; bus_space_handle_t bsh = awin_core_bsh; /* @@ -445,7 +448,7 @@ awin_pll2_enable(void) void awin_pll3_enable(void) { - bus_space_tag_t bst = &awin_bs_tag; + bus_space_tag_t bst = &armv7_generic_bs_tag; bus_space_handle_t bsh = awin_core_bsh; /* @@ -483,7 +486,7 @@ awin_pll3_enable(void) void awin_pll7_enable(void) { - bus_space_tag_t bst = &awin_bs_tag; + bus_space_tag_t bst = &armv7_generic_bs_tag; bus_space_handle_t bsh = awin_core_bsh; /* @@ -521,7 +524,7 @@ awin_pll7_enable(void) void awin_pll3_set_rate(uint32_t rate) { - bus_space_tag_t bst = &awin_bs_tag; + bus_space_tag_t bst = &armv7_generic_bs_tag; bus_space_handle_t bsh = awin_core_bsh; const uint32_t ocfg = bus_space_read_4(bst, bsh, @@ -564,7 +567,7 @@ awin_pll3_set_rate(uint32_t rate) uint32_t awin_pll5x_get_rate(void) { - bus_space_tag_t bst = &awin_bs_tag; + bus_space_tag_t bst = &armv7_generic_bs_tag; bus_space_handle_t bsh = awin_core_bsh; unsigned int n, k, p; @@ -584,7 +587,7 @@ awin_pll5x_get_rate(void) uint32_t awin_pll6_get_rate(void) { - bus_space_tag_t bst = &awin_bs_tag; + bus_space_tag_t bst = &armv7_generic_bs_tag; bus_space_handle_t bsh = awin_core_bsh; unsigned int n, k, m; @@ -609,7 +612,7 @@ awin_pll6_get_rate(void) uint32_t awin_periph0_get_rate(void) { - bus_space_tag_t bst = &awin_bs_tag; + bus_space_tag_t bst = &armv7_generic_bs_tag; bus_space_handle_t bsh = awin_core_bsh; unsigned int n, idiv, odiv; Index: src/sys/arch/arm/allwinner/awin_var.h diff -u src/sys/arch/arm/allwinner/awin_var.h:1.34 src/sys/arch/arm/allwinner/awin_var.h:1.35 --- src/sys/arch/arm/allwinner/awin_var.h:1.34 Mon Dec 22 00:07:24 2014 +++ src/sys/arch/arm/allwinner/awin_var.h Mon Apr 20 01:33:22 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: awin_var.h,v 1.34 2014/12/22 00:07:24 jmcneill Exp $ */ +/* $NetBSD: awin_var.h,v 1.35 2015/04/20 01:33:22 matt Exp $ */ /*- * Copyright (c) 2013 The NetBSD Foundation, Inc. * All rights reserved. @@ -90,8 +90,8 @@ struct awin_gpio_pindata { struct awin_dma_channel; -extern struct bus_space awin_bs_tag; -extern struct bus_space awin_a4x_bs_tag; +extern struct bus_space armv7_generic_bs_tag; +extern struct bus_space armv7_generic_a4x_bs_tag; extern bus_space_handle_t awin_core_bsh; #if defined(ALLWINNER_A80) extern bus_space_handle_t awin_core2_bsh; Index: src/sys/arch/arm/allwinner/awin_gpio.c diff -u src/sys/arch/arm/allwinner/awin_gpio.c:1.17 src/sys/arch/arm/allwinner/awin_gpio.c:1.18 --- src/sys/arch/arm/allwinner/awin_gpio.c:1.17 Sun Mar 15 13:15:26 2015 +++ src/sys/arch/arm/allwinner/awin_gpio.c Mon Apr 20 01:33:22 2015 @@ -35,7 +35,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(1, "$NetBSD: awin_gpio.c,v 1.17 2015/03/15 13:15:26 jmcneill Exp $"); +__KERNEL_RCSID(1, "$NetBSD: awin_gpio.c,v 1.18 2015/04/20 01:33:22 matt Exp $"); #include <sys/param.h> #include <sys/bus.h> @@ -245,7 +245,7 @@ static struct awin_gpio_softc { bus_space_tag_t sc_bst; bus_space_handle_t sc_bsh; } awin_gpio_sc = { - .sc_bst = &awin_bs_tag, + .sc_bst = &armv7_generic_bs_tag, }; CFATTACH_DECL_NEW(awin_gpio, sizeof(struct awin_gpio_softc), @@ -660,7 +660,7 @@ awin_gpio_pinset_acquire(const struct aw /* * Now update any config register that changed. */ - awin_gpio_update_cfg_regs(&awin_bs_tag, grp, &ncfg); + awin_gpio_update_cfg_regs(&armv7_generic_bs_tag, grp, &ncfg); /* * Mark all these pins as in use. @@ -754,7 +754,7 @@ awin_gpio_pin_ctl(void *cookie, int pin, /* * Now update any config register that changed. */ - awin_gpio_update_cfg_regs(&awin_bs_tag, grp, &ncfg); + awin_gpio_update_cfg_regs(&armv7_generic_bs_tag, grp, &ncfg); } bool Index: src/sys/arch/arm/allwinner/awin_io.c diff -u src/sys/arch/arm/allwinner/awin_io.c:1.42 src/sys/arch/arm/allwinner/awin_io.c:1.43 --- src/sys/arch/arm/allwinner/awin_io.c:1.42 Tue Dec 23 13:34:40 2014 +++ src/sys/arch/arm/allwinner/awin_io.c Mon Apr 20 01:33:22 2015 @@ -31,7 +31,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(1, "$NetBSD: awin_io.c,v 1.42 2014/12/23 13:34:40 jmcneill Exp $"); +__KERNEL_RCSID(1, "$NetBSD: awin_io.c,v 1.43 2015/04/20 01:33:22 matt Exp $"); #include <sys/param.h> #include <sys/bus.h> @@ -219,8 +219,8 @@ awinio_attach(device_t parent, device_t sc->sc_dev = self; - sc->sc_bst = &awin_bs_tag; - sc->sc_a4x_bst = &awin_a4x_bs_tag; + sc->sc_bst = &armv7_generic_bs_tag; + sc->sc_a4x_bst = &armv7_generic_a4x_bs_tag; sc->sc_bsh = awin_core_bsh; sc->sc_dmat = &awin_dma_tag; sc->sc_coherent_dmat = &awin_coherent_dma_tag; Index: src/sys/arch/arm/allwinner/awin_wdt.c diff -u src/sys/arch/arm/allwinner/awin_wdt.c:1.6 src/sys/arch/arm/allwinner/awin_wdt.c:1.7 --- src/sys/arch/arm/allwinner/awin_wdt.c:1.6 Fri Dec 5 11:53:43 2014 +++ src/sys/arch/arm/allwinner/awin_wdt.c Mon Apr 20 01:33:22 2015 @@ -33,7 +33,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(1, "$NetBSD: awin_wdt.c,v 1.6 2014/12/05 11:53:43 jmcneill Exp $"); +__KERNEL_RCSID(1, "$NetBSD: awin_wdt.c,v 1.7 2015/04/20 01:33:22 matt Exp $"); #include <sys/param.h> #include <sys/bus.h> @@ -109,7 +109,7 @@ static struct awin_wdt_softc { bus_size_t sc_ctrl_reg; bus_size_t sc_mode_reg; } awin_wdt_sc = { - .sc_bst = &awin_bs_tag, + .sc_bst = &armv7_generic_bs_tag, .sc_wdog_period = AWIN_WDT_PERIOD_DEFAULT, }; @@ -266,6 +266,7 @@ void awin_wdog_reset(void) { bus_size_t off; + bus_space_tag_t bst = &armv7_generic_bs_tag; cpsid(I32_bit|F32_bit); @@ -274,16 +275,16 @@ awin_wdog_reset(void) case AWIN_CHIP_ID_A80: off = awin_chip_id() == AWIN_CHIP_ID_A80 ? AWIN_A80_TIMER_OFFSET : AWIN_TMR_OFFSET; - bus_space_write_4(&awin_bs_tag, awin_core_bsh, + bus_space_write_4(bst, awin_core_bsh, off + AWIN_A31_WDOG1_CFG_REG, __SHIFTIN(AWIN_A31_WDOG_CFG_CONFIG_SYS, AWIN_A31_WDOG_CFG_CONFIG)); - bus_space_write_4(&awin_bs_tag, awin_core_bsh, + bus_space_write_4(bst, awin_core_bsh, off + AWIN_A31_WDOG1_MODE_REG, AWIN_A31_WDOG_MODE_EN); break; default: - bus_space_write_4(&awin_bs_tag, awin_core_bsh, + bus_space_write_4(bst, awin_core_bsh, AWIN_TMR_OFFSET + AWIN_WDOG_MODE_REG, AWIN_WDOG_MODE_EN | AWIN_WDOG_MODE_RST_EN); break; Index: src/sys/arch/arm/allwinner/files.awin diff -u src/sys/arch/arm/allwinner/files.awin:1.30 src/sys/arch/arm/allwinner/files.awin:1.31 --- src/sys/arch/arm/allwinner/files.awin:1.30 Sun Apr 19 21:25:19 2015 +++ src/sys/arch/arm/allwinner/files.awin Mon Apr 20 01:33:22 2015 @@ -1,4 +1,4 @@ -# $NetBSD: files.awin,v 1.30 2015/04/19 21:25:19 matt Exp $ +# $NetBSD: files.awin,v 1.31 2015/04/20 01:33:22 matt Exp $ # # Configuration info for Allwinner ARM Peripherals # @@ -12,7 +12,7 @@ file arch/arm/arm32/arm32_reboot.c file arch/arm/arm32/irq_dispatch.S file arch/arm/allwinner/awin_board.c -file arch/arm/allwinner/awin_space.c +file arch/arm/arm32/armv7_generic_space.c file arch/arm/arm/bus_space_a4x.S # Console parameters Index: src/sys/arch/evbarm/awin/awin_machdep.c diff -u src/sys/arch/evbarm/awin/awin_machdep.c:1.39 src/sys/arch/evbarm/awin/awin_machdep.c:1.40 --- src/sys/arch/evbarm/awin/awin_machdep.c:1.39 Tue Jan 6 00:52:26 2015 +++ src/sys/arch/evbarm/awin/awin_machdep.c Mon Apr 20 01:33:22 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: awin_machdep.c,v 1.39 2015/01/06 00:52:26 jmcneill Exp $ */ +/* $NetBSD: awin_machdep.c,v 1.40 2015/04/20 01:33:22 matt Exp $ */ /* * Machine dependent functions for kernel setup for TI OSK5912 board. @@ -125,7 +125,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: awin_machdep.c,v 1.39 2015/01/06 00:52:26 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: awin_machdep.c,v 1.40 2015/04/20 01:33:22 matt Exp $"); #include "opt_machdep.h" #include "opt_ddb.h" @@ -540,7 +540,7 @@ static const int conmode = CONMODE; void consinit(void) { - bus_space_tag_t bst = &awin_a4x_bs_tag; + bus_space_tag_t bst = &armv7_generic_a4x_bs_tag; #if NCOM > 0 bus_space_handle_t bh; #endif @@ -638,7 +638,7 @@ awin_device_register(device_t self, void * bus space used for the armcore regisers (which armperiph uses). */ struct mainbus_attach_args * const mb = aux; - mb->mb_iot = &awin_bs_tag; + mb->mb_iot = &armv7_generic_bs_tag; return; }