diff options
| author | dyoung <dyoung@NetBSD.org> | 2010-04-28 19:17:03 +0000 |
|---|---|---|
| committer | dyoung <dyoung@NetBSD.org> | 2010-04-28 19:17:03 +0000 |
| commit | 30b2d68d20ff9f4bf182ba96df108cec01e1b0df (patch) | |
| tree | 5e231dcd38ede2dbe2c6d60f6101074413f7389a /sys | |
| parent | d184555b354020d071306e7255762d618c9977d1 (diff) | |
On x86, change the bus_space_tag_t to a pointer to a struct
bus_space_tag. For now, bus_space_tag's only member is
bst_type, the type of space, which is either X86_BUS_SPACE_IO
or X86_BUS_SPACE_MEM. In the future, new bus_space_tag members
will refer to override-functions installed by a new function,
bus_space_tag_create(9).
Add pointers to constant struct bus_space_tag, x86_bus_space_io and
x86_bus_space_mem. Use them to replace most uses of X86_BUS_SPACE_IO
and X86_BUS_SPACE_MEM.
Add an x86-specific bus_space_is_equal(9) implementation that compares
the two tags' bst_type.
Diffstat (limited to 'sys')
28 files changed, 268 insertions, 208 deletions
diff --git a/sys/arch/amd64/amd64/busfunc.S b/sys/arch/amd64/amd64/busfunc.S index 676ee9732cf..794b3f56b29 100644 --- a/sys/arch/amd64/amd64/busfunc.S +++ b/sys/arch/amd64/amd64/busfunc.S @@ -1,4 +1,4 @@ -/* $NetBSD: busfunc.S,v 1.7 2008/05/25 15:56:12 chs Exp $ */ +/* $NetBSD: busfunc.S,v 1.8 2010/04/28 19:17:03 dyoung Exp $ */ /*- * Copyright (c) 2007, 2008 The NetBSD Foundation, Inc. @@ -52,7 +52,7 @@ */ ENTRY(bus_space_read_1) addq %rsi, %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 1f movzbl (%rdx), %eax ret @@ -67,7 +67,7 @@ ENTRY(bus_space_read_1) */ ENTRY(bus_space_read_2) addq %rsi, %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 1f movzwl (%rdx), %eax ret @@ -82,7 +82,7 @@ ENTRY(bus_space_read_2) */ ENTRY(bus_space_read_4) addq %rsi, %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 1f movl (%rdx), %eax ret @@ -96,7 +96,7 @@ ENTRY(bus_space_read_4) */ ENTRY(bus_space_read_8) addq %rsi, %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je .Ldopanic movq (%rdx), %rax ret @@ -112,7 +112,7 @@ STRONG_ALIAS(bus_space_read_stream_8,bus_space_read_8) */ ENTRY(bus_space_write_1) addq %rsi, %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 1f movb %cl, (%rdx) ret @@ -127,7 +127,7 @@ ENTRY(bus_space_write_1) */ ENTRY(bus_space_write_2) addq %rsi, %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 1f movw %cx, (%rdx) ret @@ -142,7 +142,7 @@ ENTRY(bus_space_write_2) */ ENTRY(bus_space_write_4) addq %rsi, %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 1f movl %ecx, (%rdx) ret @@ -157,7 +157,7 @@ ENTRY(bus_space_write_4) */ ENTRY(bus_space_write_8) addq %rsi, %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je .Ldopanic movq %rcx, (%rdx) ret @@ -173,7 +173,7 @@ STRONG_ALIAS(bus_space_write_stream_8,bus_space_write_8) */ ENTRY(bus_space_read_multi_1) leaq (%rsi,%rdx,1), %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) jne 1f movq %rcx, %rdi movq %r8, %rcx @@ -195,7 +195,7 @@ ENTRY(bus_space_read_multi_1) */ ENTRY(bus_space_read_multi_2) leaq (%rsi,%rdx,1), %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) jne 1f movq %rcx, %rdi movq %r8, %rcx @@ -217,7 +217,7 @@ ENTRY(bus_space_read_multi_2) */ ENTRY(bus_space_read_multi_4) leaq (%rsi,%rdx,1), %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) jne 1f movq %rcx, %rdi movq %r8, %rcx @@ -239,7 +239,7 @@ ENTRY(bus_space_read_multi_4) */ ENTRY(bus_space_read_multi_8) leaq (%rsi,%rdx,1), %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je .Ldopanic .align 16 1: @@ -261,7 +261,7 @@ STRONG_ALIAS(bus_space_read_multi_stream_8,bus_space_read_multi_8) */ ENTRY(bus_space_write_multi_1) leaq (%rsi,%rdx,1), %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) jne 1f movq %rcx, %rsi movq %r8, %rcx @@ -283,7 +283,7 @@ ENTRY(bus_space_write_multi_1) */ ENTRY(bus_space_write_multi_2) leaq (%rsi,%rdx,1), %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) jne 1f movq %rcx, %rsi movq %r8, %rcx @@ -305,7 +305,7 @@ ENTRY(bus_space_write_multi_2) */ ENTRY(bus_space_write_multi_4) leaq (%rsi,%rdx,1), %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) jne 1f movq %rcx, %rsi movq %r8, %rcx @@ -327,7 +327,7 @@ ENTRY(bus_space_write_multi_4) */ ENTRY(bus_space_write_multi_8) leaq (%rsi,%rdx,1), %rdx - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je .Ldopanic .align 16 1: @@ -348,7 +348,7 @@ STRONG_ALIAS(bus_space_write_multi_stream_8,bus_space_write_multi_8) * bus_size_t offset, uint8_t *addr, size_t count); */ ENTRY(bus_space_read_region_1) - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 2f addq %rdx, %rsi movq %rcx, %rdi @@ -372,7 +372,7 @@ ENTRY(bus_space_read_region_1) * bus_size_t offset, uint16_t *addr, size_t count); */ ENTRY(bus_space_read_region_2) - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 2f addq %rdx, %rsi movq %rcx, %rdi @@ -396,7 +396,7 @@ ENTRY(bus_space_read_region_2) * bus_size_t offset, uint32_t *addr, size_t count); */ ENTRY(bus_space_read_region_4) - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 2f addq %rdx, %rsi movq %rcx, %rdi @@ -420,7 +420,7 @@ ENTRY(bus_space_read_region_4) * bus_size_t offset, uint64_t *addr, size_t count); */ ENTRY(bus_space_read_region_8) - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je .Ldopanic addq %rdx, %rsi movq %rcx, %rdi @@ -439,7 +439,7 @@ STRONG_ALIAS(bus_space_read_region_stream_8,bus_space_read_region_8) * bus_size_t offset, const uint8_t *addr, size_t count); */ ENTRY(bus_space_write_region_1) - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 2f leaq (%rdx,%rsi,1), %rdi movq %rcx, %rsi @@ -463,7 +463,7 @@ ENTRY(bus_space_write_region_1) * bus_size_t offset, const uint16_t *addr, size_t count); */ ENTRY(bus_space_write_region_2) - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 2f leaq (%rdx,%rsi,1), %rdi movq %rcx, %rsi @@ -487,7 +487,7 @@ ENTRY(bus_space_write_region_2) * bus_size_t offset, const uint32_t *addr, size_t count); */ ENTRY(bus_space_write_region_4) - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je 2f leaq (%rdx,%rsi,1), %rdi movq %rcx, %rsi @@ -511,7 +511,7 @@ ENTRY(bus_space_write_region_4) * bus_size_t offset, const uint64_t *addr, size_t count); */ ENTRY(bus_space_write_region_8) - testl %edi, %edi + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%rdi) je .Ldopanic leaq (%rdx,%rsi,1), %rdi movq %rcx, %rsi diff --git a/sys/arch/amd64/amd64/genassym.cf b/sys/arch/amd64/amd64/genassym.cf index 77e6329a2bd..2b8e5c01eef 100644 --- a/sys/arch/amd64/amd64/genassym.cf +++ b/sys/arch/amd64/amd64/genassym.cf @@ -1,4 +1,4 @@ -# $NetBSD: genassym.cf,v 1.43 2009/11/27 03:23:04 rmind Exp $ +# $NetBSD: genassym.cf,v 1.44 2010/04/28 19:17:03 dyoung Exp $ # # Copyright (c) 1998, 2006, 2007, 2008 The NetBSD Foundation, Inc. @@ -122,7 +122,7 @@ ifdef XEN include <xen/xen3-public/xen.h> endif -include <x86/busdefs.h> +include <x86/bus.h> define LSRUN LSRUN define LSONPROC LSONPROC @@ -364,6 +364,8 @@ define OPTERON_MSR_PASSCODE OPTERON_MSR_PASSCODE define X86_BUS_SPACE_IO X86_BUS_SPACE_IO +define BST_TYPE offsetof(struct bus_space_tag, bst_type) + ifdef XEN define CPU_INFO_VCPU offsetof(struct cpu_info, ci_vcpu) define EVTCHN_UPCALL_MASK offsetof(struct vcpu_info, evtchn_upcall_mask) diff --git a/sys/arch/amd64/amd64/mainbus.c b/sys/arch/amd64/amd64/mainbus.c index 34e53dbe15a..0fc07c13bdc 100644 --- a/sys/arch/amd64/amd64/mainbus.c +++ b/sys/arch/amd64/amd64/mainbus.c @@ -1,4 +1,4 @@ -/* $NetBSD: mainbus.c,v 1.30 2010/02/15 23:53:07 dyoung Exp $ */ +/* $NetBSD: mainbus.c,v 1.31 2010/04/28 19:17:03 dyoung Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All rights reserved. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.30 2010/02/15 23:53:07 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.31 2010/04/28 19:17:03 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -109,11 +109,10 @@ union mainbus_attach_args { int isa_has_been_seen; struct x86_isa_chipset x86_isa_chipset; #if NISA > 0 -struct isabus_attach_args mba_iba = { - "isa", - X86_BUS_SPACE_IO, X86_BUS_SPACE_MEM, - &isa_bus_dma_tag, - &x86_isa_chipset +static const struct isabus_attach_args mba_iba = { + ._iba_busname = "isa", + .iba_dmat = &isa_bus_dma_tag, + .iba_ic = &x86_isa_chipset }; #endif @@ -226,14 +225,14 @@ mainbus_attach(device_t parent, device_t self, void *aux) /* * ACPI needs ISA DMA initialized before they start probing. */ - isa_dmainit(&x86_isa_chipset, X86_BUS_SPACE_IO, &isa_bus_dma_tag, + isa_dmainit(&x86_isa_chipset, x86_bus_space_io, &isa_bus_dma_tag, self); #endif #if NACPICA > 0 if (acpi_present) { - mba.mba_acpi.aa_iot = X86_BUS_SPACE_IO; - mba.mba_acpi.aa_memt = X86_BUS_SPACE_MEM; + mba.mba_acpi.aa_iot = x86_bus_space_io; + mba.mba_acpi.aa_memt = x86_bus_space_mem; mba.mba_acpi.aa_pc = NULL; mba.mba_acpi.aa_pciflags = PCI_FLAGS_IO_ENABLED | PCI_FLAGS_MEM_ENABLED | @@ -246,8 +245,8 @@ mainbus_attach(device_t parent, device_t self, void *aux) #if NIPMI > 0 memset(&mba.mba_ipmi, 0, sizeof(mba.mba_ipmi)); - mba.mba_ipmi.iaa_iot = X86_BUS_SPACE_IO; - mba.mba_ipmi.iaa_memt = X86_BUS_SPACE_MEM; + mba.mba_ipmi.iaa_iot = x86_bus_space_io; + mba.mba_ipmi.iaa_memt = x86_bus_space_mem; if (ipmi_probe(&mba.mba_ipmi)) config_found_ia(self, "ipmibus", &mba.mba_ipmi, 0); #endif @@ -256,8 +255,8 @@ mainbus_attach(device_t parent, device_t self, void *aux) if (mode != 0) { int npcibus = 0; - mba.mba_pba.pba_iot = X86_BUS_SPACE_IO; - mba.mba_pba.pba_memt = X86_BUS_SPACE_MEM; + mba.mba_pba.pba_iot = x86_bus_space_io; + mba.mba_pba.pba_memt = x86_bus_space_mem; mba.mba_pba.pba_dmat = &pci_bus_dma_tag; mba.mba_pba.pba_dmat64 = &pci_bus_dma64_tag; mba.mba_pba.pba_pc = NULL; @@ -285,8 +284,12 @@ mainbus_attach(device_t parent, device_t self, void *aux) #endif #if NISA > 0 - if (isa_has_been_seen == 0) - config_found_ia(self, "isabus", &mba_iba, isabusprint); + if (isa_has_been_seen == 0) { + mba.mba_iba = mba_iba; + mba.mba_iba.iba_iot = x86_bus_space_io; + mba.mba_iba.iba_memt = x86_bus_space_mem; + config_found_ia(self, "isabus", &mba.mba_iba, isabusprint); + } #endif if (!pmf_device_register(self, NULL, NULL)) diff --git a/sys/arch/i386/i386/apmbios.c b/sys/arch/i386/i386/apmbios.c index e6c66f5e3c6..5181141b96b 100644 --- a/sys/arch/i386/i386/apmbios.c +++ b/sys/arch/i386/i386/apmbios.c @@ -1,4 +1,4 @@ -/* $NetBSD: apmbios.c,v 1.16 2009/12/31 16:04:32 christos Exp $ */ +/* $NetBSD: apmbios.c,v 1.17 2010/04/28 19:17:03 dyoung Exp $ */ /*- * Copyright (c) 1996, 1997 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: apmbios.c,v 1.16 2009/12/31 16:04:32 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: apmbios.c,v 1.17 2010/04/28 19:17:03 dyoung Exp $"); #include "opt_apm.h" #include "opt_compat_mach.h" /* Needed to get the right segment def */ @@ -781,7 +781,7 @@ apmbiosattach(device_t parent, device_t self, void *aux) * implementation on i386 so it can be done without * extent checking. */ - if (_x86_memio_map(X86_BUS_SPACE_MEM, + if (_x86_memio_map(x86_bus_space_mem, apminfo.apm_data_seg_base, apminfo.apm_data_seg_len, 0, &memh)) { aprint_error_dev(self, diff --git a/sys/arch/i386/i386/busfunc.S b/sys/arch/i386/i386/busfunc.S index d92bc13974e..fcce63d7da3 100644 --- a/sys/arch/i386/i386/busfunc.S +++ b/sys/arch/i386/i386/busfunc.S @@ -1,4 +1,4 @@ -/* $NetBSD: busfunc.S,v 1.5 2008/04/28 20:23:24 martin Exp $ */ +/* $NetBSD: busfunc.S,v 1.6 2010/04/28 19:17:03 dyoung Exp $ */ /*- * Copyright (c) 2007 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <machine/asm.h> -__KERNEL_RCSID(0, "$NetBSD: busfunc.S,v 1.5 2008/04/28 20:23:24 martin Exp $"); +__KERNEL_RCSID(0, "$NetBSD: busfunc.S,v 1.6 2010/04/28 19:17:03 dyoung Exp $"); #include "assym.h" @@ -45,7 +45,8 @@ __KERNEL_RCSID(0, "$NetBSD: busfunc.S,v 1.5 2008/04/28 20:23:24 martin Exp $"); ENTRY(bus_space_read_1) movl 8(%esp), %edx addl 12(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 4(%esp) + movl 4(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) je 1f movzbl (%edx), %eax ret @@ -61,7 +62,8 @@ ENTRY(bus_space_read_1) ENTRY(bus_space_read_2) movl 8(%esp), %edx addl 12(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 4(%esp) + movl 4(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) je 1f movzwl (%edx), %eax ret @@ -77,7 +79,8 @@ ENTRY(bus_space_read_2) ENTRY(bus_space_read_4) movl 8(%esp), %edx addl 12(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 4(%esp) + movl 4(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) je 1f movl (%edx), %eax ret @@ -96,7 +99,8 @@ STRONG_ALIAS(bus_space_read_stream_4,bus_space_read_4) ENTRY(bus_space_write_1) movl 8(%esp), %edx addl 12(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 4(%esp) + movl 4(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 16(%esp), %eax je 1f movb %al, (%edx) @@ -112,7 +116,8 @@ ENTRY(bus_space_write_1) ENTRY(bus_space_write_2) movl 8(%esp), %edx addl 12(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 4(%esp) + movl 4(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 16(%esp), %eax je 1f movw %ax, (%edx) @@ -128,7 +133,8 @@ ENTRY(bus_space_write_2) ENTRY(bus_space_write_4) movl 8(%esp), %edx addl 12(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 4(%esp) + movl 4(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 16(%esp), %eax je 1f movl %eax, (%edx) @@ -149,7 +155,8 @@ ENTRY(bus_space_read_multi_1) pushl %edi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %edi movl 24(%esp), %ecx jne 1f @@ -175,7 +182,8 @@ ENTRY(bus_space_read_multi_2) pushl %edi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %edi movl 24(%esp), %ecx jne 1f @@ -201,7 +209,8 @@ ENTRY(bus_space_read_multi_4) pushl %edi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %edi movl 24(%esp), %ecx jne 1f @@ -231,7 +240,8 @@ ENTRY(bus_space_write_multi_1) pushl %esi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %esi movl 24(%esp), %ecx jne 1f @@ -257,7 +267,8 @@ ENTRY(bus_space_write_multi_2) pushl %esi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %esi movl 24(%esp), %ecx jne 1f @@ -283,7 +294,8 @@ ENTRY(bus_space_write_multi_4) pushl %esi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %esi movl 24(%esp), %ecx jne 1f @@ -313,7 +325,8 @@ ENTRY(bus_space_read_region_1) pushl %edi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %edi movl 24(%esp), %ecx je 2f @@ -342,7 +355,8 @@ ENTRY(bus_space_read_region_2) pushl %edi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %edi movl 24(%esp), %ecx je 2f @@ -371,7 +385,8 @@ ENTRY(bus_space_read_region_4) pushl %edi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %edi movl 24(%esp), %ecx je 2f @@ -404,7 +419,8 @@ ENTRY(bus_space_write_region_1) pushl %esi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %esi movl 24(%esp), %ecx je 2f @@ -433,7 +449,8 @@ ENTRY(bus_space_write_region_2) pushl %esi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %esi movl 24(%esp), %ecx je 2f @@ -462,7 +479,8 @@ ENTRY(bus_space_write_region_4) pushl %esi movl 12(%esp), %edx addl 16(%esp), %edx - cmpl $X86_BUS_SPACE_IO, 8(%esp) + movl 8(%esp), %eax + cmpl $X86_BUS_SPACE_IO, BST_TYPE(%eax) movl 20(%esp), %esi movl 24(%esp), %ecx je 2f diff --git a/sys/arch/i386/i386/genassym.cf b/sys/arch/i386/i386/genassym.cf index 51c9695dbef..ec58734f3d4 100644 --- a/sys/arch/i386/i386/genassym.cf +++ b/sys/arch/i386/i386/genassym.cf @@ -1,4 +1,4 @@ -# $NetBSD: genassym.cf,v 1.86 2010/04/18 23:47:50 jym Exp $ +# $NetBSD: genassym.cf,v 1.87 2010/04/28 19:17:03 dyoung Exp $ # # Copyright (c) 1998, 2006, 2007, 2008 The NetBSD Foundation, Inc. @@ -143,7 +143,7 @@ endif include <machine/tlog.h> -include <x86/busdefs.h> +include <x86/bus.h> define PAGE_SIZE PAGE_SIZE @@ -440,6 +440,8 @@ define OPTERON_MSR_PASSCODE OPTERON_MSR_PASSCODE define X86_BUS_SPACE_IO X86_BUS_SPACE_IO +define BST_TYPE offsetof(struct bus_space_tag, bst_type) + define L1_SHIFT L1_SHIFT define L2_SHIFT L2_SHIFT define L2_FRAME L2_FRAME diff --git a/sys/arch/i386/i386/ipkdb_glue.c b/sys/arch/i386/i386/ipkdb_glue.c index 913ecd7cc04..76bb5b7d076 100644 --- a/sys/arch/i386/i386/ipkdb_glue.c +++ b/sys/arch/i386/i386/ipkdb_glue.c @@ -1,4 +1,4 @@ -/* $NetBSD: ipkdb_glue.c,v 1.13 2009/09/14 11:37:36 tsutsui Exp $ */ +/* $NetBSD: ipkdb_glue.c,v 1.14 2010/04/28 19:17:03 dyoung Exp $ */ /* * Copyright (C) 2000 Wolfgang Solfrank. @@ -31,7 +31,7 @@ * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ipkdb_glue.c,v 1.13 2009/09/14 11:37:36 tsutsui Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ipkdb_glue.c,v 1.14 2010/04/28 19:17:03 dyoung Exp $"); #include "opt_ipkdb.h" @@ -141,7 +141,7 @@ ipkdbif_init(struct ipkdb_if *kip) #error You must specify the IPKDB_NE_PCISLOT to use IPKDB_NE_PCI. #endif - if (ne_pci_ipkdb_attach(kip, X86_BUS_SPACE_IO, NULL, 0, + if (ne_pci_ipkdb_attach(kip, x86_bus_space_io, NULL, 0, IPKDB_NE_PCISLOT) == 0) { printf("IPKDB on %s\n", kip->name); return 0; diff --git a/sys/arch/i386/i386/mainbus.c b/sys/arch/i386/i386/mainbus.c index 6bc1674497b..00dae30f987 100644 --- a/sys/arch/i386/i386/mainbus.c +++ b/sys/arch/i386/i386/mainbus.c @@ -1,4 +1,4 @@ -/* $NetBSD: mainbus.c,v 1.89 2010/02/15 23:53:07 dyoung Exp $ */ +/* $NetBSD: mainbus.c,v 1.90 2010/04/28 19:17:03 dyoung Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All rights reserved. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.89 2010/02/15 23:53:07 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.90 2010/04/28 19:17:03 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -145,11 +145,10 @@ union mainbus_attach_args { int isa_has_been_seen; struct x86_isa_chipset x86_isa_chipset; #if NISA > 0 -struct isabus_attach_args mba_iba = { - "isa", - X86_BUS_SPACE_IO, X86_BUS_SPACE_MEM, - &isa_bus_dma_tag, - &x86_isa_chipset +static const struct isabus_attach_args mba_iba = { + ._iba_busname = "isa", + .iba_dmat = &isa_bus_dma_tag, + .iba_ic = &x86_isa_chipset }; #endif @@ -286,7 +285,7 @@ mainbus_attach(device_t parent, device_t self, void *aux) /* * ACPI and PNPBIOS need ISA DMA initialized before they start probing. */ - isa_dmainit(&x86_isa_chipset, X86_BUS_SPACE_IO, &isa_bus_dma_tag, + isa_dmainit(&x86_isa_chipset, x86_bus_space_io, &isa_bus_dma_tag, self); #endif @@ -302,8 +301,8 @@ mainbus_attach(device_t parent, device_t self, void *aux) if (memcmp(ISA_HOLE_VADDR(EISA_ID_PADDR), EISA_ID, EISA_ID_LEN) == 0 && eisa_has_been_seen == 0) { - mba.mba_eba.eba_iot = X86_BUS_SPACE_IO; - mba.mba_eba.eba_memt = X86_BUS_SPACE_MEM; + mba.mba_eba.eba_iot = x86_bus_space_io; + mba.mba_eba.eba_memt = x86_bus_space_mem; #if NEISA > 0 mba.mba_eba.eba_dmat = &eisa_bus_dma_tag; #endif @@ -311,8 +310,12 @@ mainbus_attach(device_t parent, device_t self, void *aux) } #if NISA > 0 - if (isa_has_been_seen == 0) - config_found_ia(self, "isabus", &mba_iba, isabusprint); + if (isa_has_been_seen == 0) { + mba.mba_iba = mba_iba; + mba.mba_iba.iba_iot = x86_bus_space_io; + mba.mba_iba.iba_memt = x86_bus_space_mem; + config_found_ia(self, "isabus", &mba.mba_iba, isabusprint); + } #endif #if NAPMBIOS > 0 @@ -339,8 +342,8 @@ mainbus_rescan(device_t self, const char *ifattr, const int *locators) if (ifattr_match(ifattr, "acpibus") && sc->sc_acpi == NULL && sc->sc_acpi_present) { #if NACPICA > 0 - mba.mba_acpi.aa_iot = X86_BUS_SPACE_IO; - mba.mba_acpi.aa_memt = X86_BUS_SPACE_MEM; + mba.mba_acpi.aa_iot = x86_bus_space_io; + mba.mba_acpi.aa_memt = x86_bus_space_mem; mba.mba_acpi.aa_pc = NULL; mba.mba_acpi.aa_pciflags = PCI_FLAGS_IO_ENABLED | PCI_FLAGS_MEM_ENABLED | @@ -377,8 +380,8 @@ mainbus_rescan(device_t self, const char *ifattr, const int *locators) if (ifattr_match(ifattr, "ipmibus") && sc->sc_ipmi == NULL) { #if NIPMI > 0 memset(&mba.mba_ipmi, 0, sizeof(mba.mba_ipmi)); - mba.mba_ipmi.iaa_iot = X86_BUS_SPACE_IO; - mba.mba_ipmi.iaa_memt = X86_BUS_SPACE_MEM; + mba.mba_ipmi.iaa_iot = x86_bus_space_io; + mba.mba_ipmi.iaa_memt = x86_bus_space_mem; if (ipmi_probe(&mba.mba_ipmi)) { sc->sc_ipmi = config_found_ia(self, "ipmibus", &mba.mba_ipmi, 0); @@ -396,8 +399,8 @@ mainbus_rescan(device_t self, const char *ifattr, const int *locators) if (pci_mode_detect() != 0 && ifattr_match(ifattr, "pcibus")) { int npcibus = 0; - mba.mba_pba.pba_iot = X86_BUS_SPACE_IO; - mba.mba_pba.pba_memt = X86_BUS_SPACE_MEM; + mba.mba_pba.pba_iot = x86_bus_space_io; + mba.mba_pba.pba_memt = x86_bus_space_mem; mba.mba_pba.pba_dmat = &pci_bus_dma_tag; mba.mba_pba.pba_dmat64 = NULL; mba.mba_pba.pba_pc = NULL; @@ -428,8 +431,8 @@ mainbus_rescan(device_t self, const char *ifattr, const int *locators) #if NMCA > 0 /* Note: MCA bus probe is done in i386/machdep.c */ if (MCA_system) { - mba.mba_mba.mba_iot = X86_BUS_SPACE_IO; - mba.mba_mba.mba_memt = X86_BUS_SPACE_MEM; + mba.mba_mba.mba_iot = x86_bus_space_io; + mba.mba_mba.mba_memt = x86_bus_space_mem; mba.mba_mba.mba_dmat = &mca_bus_dma_tag; mba.mba_mba.mba_mc = NULL; mba.mba_mba.mba_bus = 0; diff --git a/sys/arch/i386/isa/isapnp_machdep.c b/sys/arch/i386/isa/isapnp_machdep.c index 4ced7e41cbd..d6e7a1ffc47 100644 --- a/sys/arch/i386/isa/isapnp_machdep.c +++ b/sys/arch/i386/isa/isapnp_machdep.c @@ -1,4 +1,4 @@ -/* $NetBSD: isapnp_machdep.c,v 1.15 2010/04/20 22:37:25 dyoung Exp $ */ +/* $NetBSD: isapnp_machdep.c,v 1.16 2010/04/28 19:17:03 dyoung Exp $ */ /*- * Copyright (c) 1996, 1997 The NetBSD Foundation, Inc. @@ -45,7 +45,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: isapnp_machdep.c,v 1.15 2010/04/20 22:37:25 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: isapnp_machdep.c,v 1.16 2010/04/28 19:17:03 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -67,7 +67,7 @@ isapnp_map(struct isapnp_softc *sc) { #ifdef DIAGNOSTIC - if (!bus_space_is_equal(sc->sc_iot, X86_BUS_SPACE_IO)) + if (!bus_space_is_equal(sc->sc_iot, x86_bus_space_io)) panic("isapnp_map: bogus bus space tag"); #endif @@ -100,7 +100,7 @@ isapnp_map_readport(struct isapnp_softc *sc) #endif #ifdef DIAGNOSTIC - if (!bus_space_is_equal(sc->sc_iot, X86_BUS_SPACE_IO)) + if (!bus_space_is_equal(sc->sc_iot, x86_bus_space_io)) panic("isapnp_map_readport: bogus bus space tag"); #endif diff --git a/sys/arch/i386/pci/pceb.c b/sys/arch/i386/pci/pceb.c index def71bf50a3..5ddc3756d5a 100644 --- a/sys/arch/i386/pci/pceb.c +++ b/sys/arch/i386/pci/pceb.c @@ -1,4 +1,4 @@ -/* $NetBSD: pceb.c,v 1.22 2008/05/05 11:49:40 xtraeme Exp $ */ +/* $NetBSD: pceb.c,v 1.23 2010/04/28 19:17:03 dyoung Exp $ */ /*- * Copyright (c) 1996, 1998 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pceb.c,v 1.22 2008/05/05 11:49:40 xtraeme Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pceb.c,v 1.23 2010/04/28 19:17:03 dyoung Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -121,8 +121,8 @@ pceb_callback(device_t self) * Attach the EISA bus behind this bridge. */ memset(&ea, 0, sizeof(ea)); - ea.ea_eba.eba_iot = X86_BUS_SPACE_IO; - ea.ea_eba.eba_memt = X86_BUS_SPACE_MEM; + ea.ea_eba.eba_iot = x86_bus_space_io; + ea.ea_eba.eba_memt = x86_bus_space_mem; #if NEISA > 0 ea.ea_eba.eba_dmat = &eisa_bus_dma_tag; #endif @@ -132,8 +132,8 @@ pceb_callback(device_t self) * Attach the ISA bus behind this bridge. */ memset(&ea, 0, sizeof(ea)); - ea.ea_iba.iba_iot = X86_BUS_SPACE_IO; - ea.ea_iba.iba_memt = X86_BUS_SPACE_MEM; + ea.ea_iba.iba_iot = x86_bus_space_io; + ea.ea_iba.iba_memt = x86_bus_space_mem; #if NISA > 0 ea.ea_iba.iba_dmat = &isa_bus_dma_tag; #endif diff --git a/sys/arch/i386/pci/pcibios.c b/sys/arch/i386/pci/pcibios.c index 5e7f31848d7..4a1397bac1b 100644 --- a/sys/arch/i386/pci/pcibios.c +++ b/sys/arch/i386/pci/pcibios.c @@ -1,4 +1,4 @@ -/* $NetBSD: pcibios.c,v 1.37 2010/02/16 00:03:47 dyoung Exp $ */ +/* $NetBSD: pcibios.c,v 1.38 2010/04/28 19:17:04 dyoung Exp $ */ /*- * Copyright (c) 1999 The NetBSD Foundation, Inc. @@ -60,7 +60,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pcibios.c,v 1.37 2010/02/16 00:03:47 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pcibios.c,v 1.38 2010/04/28 19:17:04 dyoung Exp $"); #include "opt_pcibios.h" #include "opt_pcifixup.h" @@ -197,7 +197,7 @@ pcibios_init(void) /* * Fixup interrupt routing. */ - rv = pci_intr_fixup(NULL, X86_BUS_SPACE_IO, &pciirq); + rv = pci_intr_fixup(NULL, x86_bus_space_io, &pciirq); switch (rv) { case -1: /* Non-fatal error. */ diff --git a/sys/arch/i386/pci/pcmb.c b/sys/arch/i386/pci/pcmb.c index 1d435be084c..f8f3a0d9bc7 100644 --- a/sys/arch/i386/pci/pcmb.c +++ b/sys/arch/i386/pci/pcmb.c @@ -1,4 +1,4 @@ -/* $NetBSD: pcmb.c,v 1.18 2008/05/05 11:49:40 xtraeme Exp $ */ +/* $NetBSD: pcmb.c,v 1.19 2010/04/28 19:17:04 dyoung Exp $ */ /*- * Copyright (c) 1996, 1998 The NetBSD Foundation, Inc. @@ -34,7 +34,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pcmb.c,v 1.18 2008/05/05 11:49:40 xtraeme Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pcmb.c,v 1.19 2010/04/28 19:17:04 dyoung Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -102,8 +102,8 @@ pcmb_callback(device_t self) /* * Attach MCA bus behind this bridge. */ - ma.mba_iot = X86_BUS_SPACE_IO; - ma.mba_memt = X86_BUS_SPACE_MEM; + ma.mba_iot = x86_bus_space_io; + ma.mba_memt = x86_bus_space_mem; #if NMCA > 0 ma.mba_dmat = &mca_bus_dma_tag; #endif diff --git a/sys/arch/i386/pnpbios/pnpbios.c b/sys/arch/i386/pnpbios/pnpbios.c index f63e80dda48..ae3ebab74d3 100644 --- a/sys/arch/i386/pnpbios/pnpbios.c +++ b/sys/arch/i386/pnpbios/pnpbios.c @@ -1,4 +1,4 @@ -/* $NetBSD: pnpbios.c,v 1.68 2009/11/07 07:27:44 cegger Exp $ */ +/* $NetBSD: pnpbios.c,v 1.69 2010/04/28 19:17:04 dyoung Exp $ */ /* * Copyright (c) 2000 Jason R. Thorpe. All rights reserved. @@ -41,7 +41,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pnpbios.c,v 1.68 2009/11/07 07:27:44 cegger Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pnpbios.c,v 1.69 2010/04/28 19:17:04 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -1278,8 +1278,8 @@ pnpbios_io_map(pnpbios_tag_t pbt, struct pnpresources *resc, while (idx--) io = SIMPLEQ_NEXT(io, next); - *tagp = X86_BUS_SPACE_IO; - return (bus_space_map(X86_BUS_SPACE_IO, io->minbase, io->len, + *tagp = x86_bus_space_io; + return (bus_space_map(x86_bus_space_io, io->minbase, io->len, 0, hdlp)); } @@ -1313,7 +1313,7 @@ pnpbios_getiobase(pnpbios_tag_t pbt, struct pnpresources *resc, io = SIMPLEQ_NEXT(io, next); if (tagp) - *tagp = X86_BUS_SPACE_IO; + *tagp = x86_bus_space_io; if (basep) *basep = io->minbase; return (0); diff --git a/sys/arch/i386/xbox/xbox.c b/sys/arch/i386/xbox/xbox.c index d43a1cb3637..ee9bf812b6d 100644 --- a/sys/arch/i386/xbox/xbox.c +++ b/sys/arch/i386/xbox/xbox.c @@ -1,4 +1,4 @@ -/* $NetBSD: xbox.c,v 1.4 2008/05/05 00:18:50 jmcneill Exp $ */ +/* $NetBSD: xbox.c,v 1.5 2010/04/28 19:17:04 dyoung Exp $ */ /*- * Copyright (c) 2007 Jared D. McNeill <jmcneill@invisible.ca> @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: xbox.c,v 1.4 2008/05/05 00:18:50 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: xbox.c,v 1.5 2010/04/28 19:17:04 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -75,11 +75,11 @@ xbox_startup(void) * nfe(4) attach correctly. As the NIC always resides at * 0xfef00000-0xfef003ff on an XBOX, we simply hardcode this address. */ - rv = bus_space_map(X86_BUS_SPACE_MEM, XBOX_NFORCE_NIC, + rv = bus_space_map(x86_bus_space_mem, XBOX_NFORCE_NIC, 0x400, 0, &h); if (!rv) { - bus_space_write_4(X86_BUS_SPACE_MEM, h, 0x188, 0); - bus_space_unmap(X86_BUS_SPACE_MEM, h, 0x400); + bus_space_write_4(x86_bus_space_mem, h, 0x188, 0); + bus_space_unmap(x86_bus_space_mem, h, 0x400); } diff --git a/sys/arch/i386/xbox/xboxfb.c b/sys/arch/i386/xbox/xboxfb.c index 0994de30fbb..31baf0c8e15 100644 --- a/sys/arch/i386/xbox/xboxfb.c +++ b/sys/arch/i386/xbox/xboxfb.c @@ -1,4 +1,4 @@ -/* $NetBSD: xboxfb.c,v 1.12 2008/07/09 20:40:16 joerg Exp $ */ +/* $NetBSD: xboxfb.c,v 1.13 2010/04/28 19:17:04 dyoung Exp $ */ /* * Copyright (c) 2007 Jared D. McNeill <jmcneill@invisible.ca> @@ -33,7 +33,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: xboxfb.c,v 1.12 2008/07/09 20:40:16 joerg Exp $"); +__KERNEL_RCSID(0, "$NetBSD: xboxfb.c,v 1.13 2010/04/28 19:17:04 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -200,7 +200,7 @@ xboxfb_attach(device_t parent, device_t self, void *aux) ri = &xboxfb_console_screen.scr_ri; - sc->sc_memt = X86_BUS_SPACE_MEM; + sc->sc_memt = x86_bus_space_mem; sc->sc_memh = xboxfb_console_memh; sc->sc_mode = WSDISPLAYIO_MODE_EMUL; @@ -293,7 +293,7 @@ xboxfb_mmap(void *v, void *vs, off_t offset, int prot) sc = (struct xboxfb_softc *)vd->cookie; if (offset >= 0 && offset < XBOX_FB_SIZE) { - pa = bus_space_mmap(X86_BUS_SPACE_MEM, XBOX_FB_START, + pa = bus_space_mmap(x86_bus_space_mem, XBOX_FB_START, offset, prot, BUS_SPACE_MAP_LINEAR); return pa; } @@ -389,7 +389,7 @@ xboxfb_smbus_pic_read(bus_space_tag_t t, bus_space_handle_t h, uint8_t cmd) static uint8_t xboxfb_get_encoder(void) { - bus_space_tag_t t = X86_BUS_SPACE_IO; + bus_space_tag_t t = x86_bus_space_io; bus_space_handle_t h; uint8_t rv; @@ -415,7 +415,7 @@ xboxfb_get_encoder(void) static uint8_t xboxfb_is_widescreen(void) { - bus_space_tag_t t = X86_BUS_SPACE_IO; + bus_space_tag_t t = x86_bus_space_io; bus_space_handle_t h; uint8_t rv; @@ -437,7 +437,7 @@ xboxfb_get_avpack(void) bus_space_handle_t h; uint8_t rv; - t = X86_BUS_SPACE_IO; + t = x86_bus_space_io; rv = bus_space_map(t, XBOX_SMBUS_BA, 16, 0, &h); if (rv) return PIC16LC_REG_AVPACK_COMPOSITE; /* shouldn't happen */ @@ -518,7 +518,7 @@ xboxfb_cnattach(void) if (xboxfb_console_shadowbits == NULL) aprint_error("xboxfb_cnattach: failed to allocate shadowfb\n"); - if (bus_space_map(X86_BUS_SPACE_MEM, XBOX_FB_START, fbsize, + if (bus_space_map(x86_bus_space_mem, XBOX_FB_START, fbsize, BUS_SPACE_MAP_LINEAR, &xboxfb_console_memh)) { aprint_error("xboxfb_cnattach: failed to map memory.\n"); return 1; @@ -529,11 +529,11 @@ xboxfb_cnattach(void) ri->ri_flg = 0; /* RI_CENTER does not work with shadowfb */ if (xboxfb_console_shadowbits) { ri->ri_bits = xboxfb_console_shadowbits; - ri->ri_hwbits = bus_space_vaddr(X86_BUS_SPACE_MEM, + ri->ri_hwbits = bus_space_vaddr(x86_bus_space_mem, xboxfb_console_memh); xboxfb_console_bits = ri->ri_hwbits; } else { - ri->ri_bits = bus_space_vaddr(X86_BUS_SPACE_MEM, + ri->ri_bits = bus_space_vaddr(x86_bus_space_mem, xboxfb_console_memh); ri->ri_hwbits = NULL; xboxfb_console_bits = ri->ri_bits; diff --git a/sys/arch/x86/include/bus.h b/sys/arch/x86/include/bus.h index cfdd9a1be81..fa0154a7b52 100644 --- a/sys/arch/x86/include/bus.h +++ b/sys/arch/x86/include/bus.h @@ -1,4 +1,4 @@ -/* $NetBSD: bus.h,v 1.19 2009/02/13 20:50:38 bouyer Exp $ */ +/* $NetBSD: bus.h,v 1.20 2010/04/28 19:17:04 dyoung Exp $ */ /*- * Copyright (c) 1996, 1997, 1998, 2001 The NetBSD Foundation, Inc. @@ -80,9 +80,18 @@ typedef paddr_t bus_addr_t; typedef size_t bus_size_t; -typedef int bus_space_tag_t; +struct bus_space_tag { + int bst_type; +}; + +typedef struct bus_space_tag *bus_space_tag_t; typedef vaddr_t bus_space_handle_t; +extern bus_space_tag_t x86_bus_space_mem; +extern bus_space_tag_t x86_bus_space_io; + +bool bus_space_is_equal(bus_space_tag_t, bus_space_tag_t); + int _x86_memio_map(bus_space_tag_t t, bus_addr_t addr, bus_size_t size, int flags, bus_space_handle_t *bshp); void _x86_memio_unmap(bus_space_tag_t t, bus_space_handle_t bsh, diff --git a/sys/arch/x86/pci/pcib.c b/sys/arch/x86/pci/pcib.c index e5270286234..af533a3198d 100644 --- a/sys/arch/x86/pci/pcib.c +++ b/sys/arch/x86/pci/pcib.c @@ -1,4 +1,4 @@ -/* $NetBSD: pcib.c,v 1.11 2010/01/08 00:09:45 dyoung Exp $ */ +/* $NetBSD: pcib.c,v 1.12 2010/04/28 19:17:04 dyoung Exp $ */ /*- * Copyright (c) 1996, 1998 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: pcib.c,v 1.11 2010/01/08 00:09:45 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pcib.c,v 1.12 2010/04/28 19:17:04 dyoung Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -242,8 +242,8 @@ pcibrescan(device_t self, const char *ifattr, const int *loc) * Attach the ISA bus behind this bridge. */ memset(&iba, 0, sizeof(iba)); - iba.iba_iot = X86_BUS_SPACE_IO; - iba.iba_memt = X86_BUS_SPACE_MEM; + iba.iba_iot = x86_bus_space_io; + iba.iba_memt = x86_bus_space_mem; #if NISA > 0 iba.iba_dmat = &isa_bus_dma_tag; #endif diff --git a/sys/arch/x86/x86/acpi_machdep.c b/sys/arch/x86/x86/acpi_machdep.c index dc75cbd1f09..3a5a9cc10cd 100644 --- a/sys/arch/x86/x86/acpi_machdep.c +++ b/sys/arch/x86/x86/acpi_machdep.c @@ -1,4 +1,4 @@ -/* $NetBSD: acpi_machdep.c,v 1.26 2010/04/14 19:32:35 jruoho Exp $ */ +/* $NetBSD: acpi_machdep.c,v 1.27 2010/04/28 19:17:04 dyoung Exp $ */ /* * Copyright 2001 Wasabi Systems, Inc. @@ -40,7 +40,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: acpi_machdep.c,v 1.26 2010/04/14 19:32:35 jruoho Exp $"); +__KERNEL_RCSID(0, "$NetBSD: acpi_machdep.c,v 1.27 2010/04/28 19:17:04 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -193,7 +193,7 @@ acpi_md_OsMapMemory(ACPI_PHYSICAL_ADDRESS PhysicalAddress, uint32_t Length, void **LogicalAddress) { - if (_x86_memio_map(X86_BUS_SPACE_MEM, PhysicalAddress, Length, + if (_x86_memio_map(x86_bus_space_mem, PhysicalAddress, Length, 0, (bus_space_handle_t *) LogicalAddress) == 0) return (AE_OK); @@ -204,7 +204,7 @@ void acpi_md_OsUnmapMemory(void *LogicalAddress, uint32_t Length) { - (void) _x86_memio_unmap(X86_BUS_SPACE_MEM, + (void) _x86_memio_unmap(x86_bus_space_mem, (bus_space_handle_t) LogicalAddress, Length, NULL); } diff --git a/sys/arch/x86/x86/bus_space.c b/sys/arch/x86/x86/bus_space.c index d1f22577cd5..5907974edc2 100644 --- a/sys/arch/x86/x86/bus_space.c +++ b/sys/arch/x86/x86/bus_space.c @@ -1,4 +1,4 @@ -/* $NetBSD: bus_space.c,v 1.26 2009/11/07 07:32:53 cegger Exp $ */ +/* $NetBSD: bus_space.c,v 1.27 2010/04/28 19:17:04 dyoung Exp $ */ /*- * Copyright (c) 1996, 1997, 1998 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: bus_space.c,v 1.26 2009/11/07 07:32:53 cegger Exp $"); +__KERNEL_RCSID(0, "$NetBSD: bus_space.c,v 1.27 2010/04/28 19:17:04 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -93,9 +93,27 @@ struct extent *ioport_ex; struct extent *iomem_ex; static int ioport_malloc_safe; +static struct bus_space_tag x86_io = { .bst_type = X86_BUS_SPACE_IO }; +static struct bus_space_tag x86_mem = { .bst_type = X86_BUS_SPACE_MEM }; + +bus_space_tag_t x86_bus_space_io = &x86_io; +bus_space_tag_t x86_bus_space_mem = &x86_mem; + int x86_mem_add_mapping(bus_addr_t, bus_size_t, int, bus_space_handle_t *); +static inline bool +x86_bus_space_is_io(bus_space_tag_t t) +{ + return t->bst_type == X86_BUS_SPACE_IO; +} + +static inline bool +x86_bus_space_is_mem(bus_space_tag_t t) +{ + return t->bst_type == X86_BUS_SPACE_MEM; +} + void x86_bus_space_init(void) { @@ -147,11 +165,11 @@ bus_space_map(bus_space_tag_t t, bus_addr_t bpa, bus_size_t size, /* * Pick the appropriate extent map. */ - if (t == X86_BUS_SPACE_IO) { + if (x86_bus_space_is_io(t)) { if (flags & BUS_SPACE_MAP_LINEAR) return (EOPNOTSUPP); ex = ioport_ex; - } else if (t == X86_BUS_SPACE_MEM) + } else if (x86_bus_space_is_mem(t)) ex = iomem_ex; else panic("x86_memio_map: bad bus space tag"); @@ -168,7 +186,7 @@ bus_space_map(bus_space_tag_t t, bus_addr_t bpa, bus_size_t size, /* * For I/O space, that's all she wrote. */ - if (t == X86_BUS_SPACE_IO) { + if (x86_bus_space_is_io(t)) { *bshp = bpa; return (0); } @@ -206,7 +224,7 @@ _x86_memio_map(bus_space_tag_t t, bus_addr_t bpa, bus_size_t size, /* * For I/O space, just fill in the handle. */ - if (t == X86_BUS_SPACE_IO) { + if (x86_bus_space_is_io(t)) { if (flags & BUS_SPACE_MAP_LINEAR) return (EOPNOTSUPP); *bshp = bpa; @@ -233,11 +251,11 @@ bus_space_alloc(bus_space_tag_t t, bus_addr_t rstart, bus_addr_t rend, /* * Pick the appropriate extent map. */ - if (t == X86_BUS_SPACE_IO) { + if (x86_bus_space_is_io(t)) { if (flags & BUS_SPACE_MAP_LINEAR) return (EOPNOTSUPP); ex = ioport_ex; - } else if (t == X86_BUS_SPACE_MEM) + } else if (x86_bus_space_is_mem(t)) ex = iomem_ex; else panic("x86_memio_alloc: bad bus space tag"); @@ -262,7 +280,7 @@ bus_space_alloc(bus_space_tag_t t, bus_addr_t rstart, bus_addr_t rend, /* * For I/O space, that's all she wrote. */ - if (t == X86_BUS_SPACE_IO) { + if (x86_bus_space_is_io(t)) { *bshp = *bpap = bpa; return (0); } @@ -332,6 +350,14 @@ x86_mem_add_mapping(bus_addr_t bpa, bus_size_t size, return 0; } +bool +bus_space_is_equal(bus_space_tag_t t1, bus_space_tag_t t2) +{ + if (t1 == NULL || t2 == NULL) + return false; + return t1->bst_type == t2->bst_type; +} + /* * void _x86_memio_unmap(bus_space_tag bst, bus_space_handle bsh, * bus_size_t size, bus_addr_t *adrp) @@ -352,9 +378,9 @@ _x86_memio_unmap(bus_space_tag_t t, bus_space_handle_t bsh, /* * Find the correct extent and bus physical address. */ - if (t == X86_BUS_SPACE_IO) { + if (x86_bus_space_is_io(t)) { bpa = bsh; - } else if (t == X86_BUS_SPACE_MEM) { + } else if (x86_bus_space_is_mem(t)) { if (bsh >= atdevbase && (bsh + size) != 0 && (bsh + size) <= (atdevbase + IOM_SIZE)) { bpa = (bus_addr_t)ISA_PHYSADDR(bsh); @@ -401,10 +427,10 @@ bus_space_unmap(bus_space_tag_t t, bus_space_handle_t bsh, bus_size_t size) /* * Find the correct extent and bus physical address. */ - if (t == X86_BUS_SPACE_IO) { + if (x86_bus_space_is_io(t)) { ex = ioport_ex; bpa = bsh; - } else if (t == X86_BUS_SPACE_MEM) { + } else if (x86_bus_space_is_mem(t)) { ex = iomem_ex; if (bsh >= atdevbase && (bsh + size) != 0 && @@ -438,7 +464,7 @@ ok: if (extent_free(ex, bpa, size, EX_NOWAIT | (ioport_malloc_safe ? EX_MALLOCOK : 0))) { printf("x86_memio_unmap: %s 0x%jx, size 0x%jx\n", - (t == X86_BUS_SPACE_IO) ? "port" : "pa", + x86_bus_space_is_io(t) ? "port" : "pa", (uintmax_t)bpa, (uintmax_t)size); printf("x86_memio_unmap: can't free region\n"); } @@ -467,7 +493,7 @@ bus_space_mmap(bus_space_tag_t t, bus_addr_t addr, off_t off, int prot, { /* Can't mmap I/O space. */ - if (t == X86_BUS_SPACE_IO) + if (x86_bus_space_is_io(t)) return (-1); /* @@ -486,7 +512,7 @@ bus_space_set_multi_1(bus_space_tag_t t, bus_space_handle_t h, bus_size_t o, { vaddr_t addr = h + o; - if (t == X86_BUS_SPACE_IO) + if (x86_bus_space_is_io(t)) while (c--) outb(addr, v); else @@ -502,7 +528,7 @@ bus_space_set_multi_2(bus_space_tag_t t, bus_space_handle_t h, bus_size_t o, BUS_SPACE_ADDRESS_SANITY(addr, uint16_t, "bus addr"); - if (t == X86_BUS_SPACE_IO) + if (x86_bus_space_is_io(t)) while (c--) outw(addr, v); else @@ -518,7 +544,7 @@ bus_space_set_multi_4(bus_space_tag_t t, bus_space_handle_t h, bus_size_t o, BUS_SPACE_ADDRESS_SANITY(addr, uint32_t, "bus addr"); - if (t == X86_BUS_SPACE_IO) + if (x86_bus_space_is_io(t)) while (c--) outl(addr, v); else @@ -532,7 +558,7 @@ bus_space_set_region_1(bus_space_tag_t t, bus_space_handle_t h, bus_size_t o, { vaddr_t addr = h + o; - if (t == X86_BUS_SPACE_IO) + if (x86_bus_space_is_io(t)) for (; c != 0; c--, addr++) outb(addr, v); else @@ -548,7 +574,7 @@ bus_space_set_region_2(bus_space_tag_t t, bus_space_handle_t h, bus_size_t o, BUS_SPACE_ADDRESS_SANITY(addr, uint16_t, "bus addr"); - if (t == X86_BUS_SPACE_IO) + if (x86_bus_space_is_io(t)) for (; c != 0; c--, addr += 2) outw(addr, v); else @@ -564,7 +590,7 @@ bus_space_set_region_4(bus_space_tag_t t, bus_space_handle_t h, bus_size_t o, BUS_SPACE_ADDRESS_SANITY(addr, uint32_t, "bus addr"); - if (t == X86_BUS_SPACE_IO) + if (x86_bus_space_is_io(t)) for (; c != 0; c--, addr += 4) outl(addr, v); else @@ -580,7 +606,7 @@ bus_space_copy_region_1(bus_space_tag_t t, bus_space_handle_t h1, vaddr_t addr1 = h1 + o1; vaddr_t addr2 = h2 + o2; - if (t == X86_BUS_SPACE_IO) { + if (x86_bus_space_is_io(t)) { if (addr1 >= addr2) { /* src after dest: copy forward */ for (; c != 0; c--, addr1++, addr2++) @@ -618,7 +644,7 @@ bus_space_copy_region_2(bus_space_tag_t t, bus_space_handle_t h1, BUS_SPACE_ADDRESS_SANITY(addr1, uint16_t, "bus addr 1"); BUS_SPACE_ADDRESS_SANITY(addr2, uint16_t, "bus addr 2"); - if (t == X86_BUS_SPACE_IO) { + if (x86_bus_space_is_io(t)) { if (addr1 >= addr2) { /* src after dest: copy forward */ for (; c != 0; c--, addr1 += 2, addr2 += 2) @@ -656,7 +682,7 @@ bus_space_copy_region_4(bus_space_tag_t t, bus_space_handle_t h1, BUS_SPACE_ADDRESS_SANITY(addr1, uint32_t, "bus addr 1"); BUS_SPACE_ADDRESS_SANITY(addr2, uint32_t, "bus addr 2"); - if (t == X86_BUS_SPACE_IO) { + if (x86_bus_space_is_io(t)) { if (addr1 >= addr2) { /* src after dest: copy forward */ for (; c != 0; c--, addr1 += 4, addr2 += 4) @@ -695,5 +721,5 @@ void * bus_space_vaddr(bus_space_tag_t tag, bus_space_handle_t bsh) { - return tag == X86_BUS_SPACE_MEM ? (void *)bsh : NULL; + return x86_bus_space_is_mem(tag) ? (void *)bsh : NULL; } diff --git a/sys/arch/x86/x86/consinit.c b/sys/arch/x86/x86/consinit.c index 9c12f4cb60d..7e76327f0ca 100644 --- a/sys/arch/x86/x86/consinit.c +++ b/sys/arch/x86/x86/consinit.c @@ -1,4 +1,4 @@ -/* $NetBSD: consinit.c,v 1.20 2009/03/18 10:22:38 cegger Exp $ */ +/* $NetBSD: consinit.c,v 1.21 2010/04/28 19:17:04 dyoung Exp $ */ /* * Copyright (c) 1998 @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: consinit.c,v 1.20 2009/03/18 10:22:38 cegger Exp $"); +__KERNEL_RCSID(0, "$NetBSD: consinit.c,v 1.21 2010/04/28 19:17:04 dyoung Exp $"); #include "opt_kgdb.h" @@ -190,23 +190,23 @@ consinit(void) } #endif #if (NVGA > 0) - if (!vga_cnattach(X86_BUS_SPACE_IO, X86_BUS_SPACE_MEM, + if (!vga_cnattach(x86_bus_space_io, x86_bus_space_mem, -1, 1)) goto dokbd; #endif #if (NEGA > 0) - if (!ega_cnattach(X86_BUS_SPACE_IO, X86_BUS_SPACE_MEM)) + if (!ega_cnattach(x86_bus_space_io, x86_bus_space_mem)) goto dokbd; #endif #if (NPCDISPLAY > 0) - if (!pcdisplay_cnattach(X86_BUS_SPACE_IO, X86_BUS_SPACE_MEM)) + if (!pcdisplay_cnattach(x86_bus_space_io, x86_bus_space_mem)) goto dokbd; #endif if (0) goto dokbd; /* XXX stupid gcc */ dokbd: error = ENODEV; #if (NPCKBC > 0) - error = pckbc_cnattach(X86_BUS_SPACE_IO, IO_KBD, KBCMDP, + error = pckbc_cnattach(x86_bus_space_io, IO_KBD, KBCMDP, PCKBC_KBD_SLOT); #endif #if (NUKBD > 0) @@ -220,7 +220,6 @@ dokbd: } #if (NCOM > 0) if (!strcmp(consinfo->devname, "com")) { - bus_space_tag_t tag = X86_BUS_SPACE_IO; int addr = consinfo->addr; int speed = consinfo->speed; @@ -229,7 +228,7 @@ dokbd: if (speed == 0) speed = CONSPEED; - if (comcnattach(tag, addr, speed, + if (comcnattach(x86_bus_space_io, addr, speed, COM_FREQ, COM_TYPE_NORMAL, comcnmode)) panic("can't init serial console @%x", consinfo->addr); @@ -245,10 +244,8 @@ kgdb_port_init(void) { #if (NCOM > 0) if(!strcmp(kgdb_devname, "com")) { - bus_space_tag_t tag = X86_BUS_SPACE_IO; - - com_kgdb_attach(tag, comkgdbaddr, comkgdbrate, COM_FREQ, - COM_TYPE_NORMAL, comkgdbmode); + com_kgdb_attach(x86_bus_space_io, comkgdbaddr, comkgdbrate, + COM_FREQ, COM_TYPE_NORMAL, comkgdbmode); } #endif } diff --git a/sys/arch/x86/x86/genfb_machdep.c b/sys/arch/x86/x86/genfb_machdep.c index 868a4d9f81b..c7a7070c3c2 100644 --- a/sys/arch/x86/x86/genfb_machdep.c +++ b/sys/arch/x86/x86/genfb_machdep.c @@ -1,4 +1,4 @@ -/* $NetBSD: genfb_machdep.c,v 1.3 2009/08/24 02:15:46 jmcneill Exp $ */ +/* $NetBSD: genfb_machdep.c,v 1.4 2010/04/28 19:17:04 dyoung Exp $ */ /*- * Copyright (c) 2009 Jared D. McNeill <jmcneill@invisible.ca> @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: genfb_machdep.c,v 1.3 2009/08/24 02:15:46 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: genfb_machdep.c,v 1.4 2010/04/28 19:17:04 dyoung Exp $"); #include <sys/param.h> #include <sys/conf.h> @@ -76,7 +76,7 @@ x86_genfb_cnattach(void) static int ncalls = 0; struct rasops_info *ri = &x86_genfb_console_screen.scr_ri; const struct btinfo_framebuffer *fbinfo; - bus_space_tag_t t = X86_BUS_SPACE_MEM; + bus_space_tag_t t = x86_bus_space_mem; bus_space_handle_t h; void *bits; long defattr; diff --git a/sys/arch/xen/x86/consinit.c b/sys/arch/xen/x86/consinit.c index c3ebcc559e5..66bb687bc0a 100644 --- a/sys/arch/xen/x86/consinit.c +++ b/sys/arch/xen/x86/consinit.c @@ -1,4 +1,4 @@ -/* $NetBSD: consinit.c,v 1.13 2009/03/18 10:22:39 cegger Exp $ */ +/* $NetBSD: consinit.c,v 1.14 2010/04/28 19:17:04 dyoung Exp $ */ /* NetBSD: consinit.c,v 1.4 2004/03/13 17:31:34 bjh21 Exp */ /* @@ -28,7 +28,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: consinit.c,v 1.13 2009/03/18 10:22:39 cegger Exp $"); +__KERNEL_RCSID(0, "$NetBSD: consinit.c,v 1.14 2010/04/28 19:17:04 dyoung Exp $"); #include "opt_kgdb.h" @@ -162,11 +162,11 @@ consinit(void) strcmp(xcp.xcp_console, "pc") == 0) { /* NetBSD name */ #endif /* CONS_OVERRIDE */ int error; - vga_cnattach(X86_BUS_SPACE_IO, X86_BUS_SPACE_MEM, + vga_cnattach(x86_bus_space_io, x86_bus_space_mem, -1, 1); error = ENODEV; #if (NPCKBC > 0) - error = pckbc_cnattach(X86_BUS_SPACE_IO, IO_KBD, KBCMDP, + error = pckbc_cnattach(x86_bus_space_io, IO_KBD, KBCMDP, PCKBC_KBD_SLOT); #endif #if (NUKBD > 0) @@ -193,7 +193,7 @@ kgdb_port_init(void) { #if (NCOM > 0) if(!strcmp(kgdb_devname, "com")) { - bus_space_tag_t tag = X86_BUS_SPACE_IO; + bus_space_tag_t tag = x86_bus_space_io; com_kgdb_attach(tag, comkgdbaddr, comkgdbrate, COM_FREQ, COM_TYPE_NORMAL, comkgdbmode); diff --git a/sys/arch/xen/x86/mainbus.c b/sys/arch/xen/x86/mainbus.c index d2467494b26..74515e8a151 100644 --- a/sys/arch/xen/x86/mainbus.c +++ b/sys/arch/xen/x86/mainbus.c @@ -1,4 +1,4 @@ -/* $NetBSD: mainbus.c,v 1.10 2010/02/15 23:53:56 dyoung Exp $ */ +/* $NetBSD: mainbus.c,v 1.11 2010/04/28 19:17:04 dyoung Exp $ */ /* NetBSD: mainbus.c,v 1.53 2003/10/27 14:11:47 junyoung Exp */ /* @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.10 2010/02/15 23:53:56 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: mainbus.c,v 1.11 2010/04/28 19:17:04 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -201,8 +201,8 @@ mainbus_attach(device_t parent, device_t self, void *aux) #if NIPMI > 0 memset(&mba.mba_ipmi, 0, sizeof(mba.mba_ipmi)); - mba.mba_ipmi.iaa_iot = X86_BUS_SPACE_IO; - mba.mba_ipmi.iaa_memt = X86_BUS_SPACE_MEM; + mba.mba_ipmi.iaa_iot = x86_bus_space_io; + mba.mba_ipmi.iaa_memt = x86_bus_space_mem; if (ipmi_probe(&mba.mba_ipmi)) config_found_ia(self, "ipmibus", &mba.mba_ipmi, 0); #endif diff --git a/sys/arch/xen/xen/hypervisor.c b/sys/arch/xen/xen/hypervisor.c index 435b1dc167b..700d201ea0d 100644 --- a/sys/arch/xen/xen/hypervisor.c +++ b/sys/arch/xen/xen/hypervisor.c @@ -1,4 +1,4 @@ -/* $NetBSD: hypervisor.c,v 1.51 2010/03/02 16:44:08 dyoung Exp $ */ +/* $NetBSD: hypervisor.c,v 1.52 2010/04/28 19:17:04 dyoung Exp $ */ /* * Copyright (c) 2005 Manuel Bouyer. @@ -53,7 +53,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: hypervisor.c,v 1.51 2010/03/02 16:44:08 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: hypervisor.c,v 1.52 2010/04/28 19:17:04 dyoung Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -246,8 +246,8 @@ hypervisor_attach(device_t parent, device_t self, void *aux) #if NACPICA > 0 if (acpi_present) { memset(&hac, 0, sizeof(hac)); - hac.hac_acpi.aa_iot = X86_BUS_SPACE_IO; - hac.hac_acpi.aa_memt = X86_BUS_SPACE_MEM; + hac.hac_acpi.aa_iot = x86_bus_space_io; + hac.hac_acpi.aa_memt = x86_bus_space_mem; hac.hac_acpi.aa_pc = NULL; hac.hac_acpi.aa_pciflags = PCI_FLAGS_IO_ENABLED | PCI_FLAGS_MEM_ENABLED | @@ -258,8 +258,8 @@ hypervisor_attach(device_t parent, device_t self, void *aux) } #endif /* NACPICA */ memset(&hac, 0, sizeof(hac)); - hac.hac_pba.pba_iot = X86_BUS_SPACE_IO; - hac.hac_pba.pba_memt = X86_BUS_SPACE_MEM; + hac.hac_pba.pba_iot = x86_bus_space_io; + hac.hac_pba.pba_memt = x86_bus_space_mem; hac.hac_pba.pba_dmat = &pci_bus_dma_tag; #ifdef _LP64 hac.hac_pba.pba_dmat64 = &pci_bus_dma64_tag; @@ -288,8 +288,8 @@ hypervisor_attach(device_t parent, device_t self, void *aux) if (isa_has_been_seen == 0) { memset(&hac, 0, sizeof(hac)); hac.hac_iba._iba_busname = "isa"; - hac.hac_iba.iba_iot = X86_BUS_SPACE_IO; - hac.hac_iba.iba_memt = X86_BUS_SPACE_MEM; + hac.hac_iba.iba_iot = x86_bus_space_io; + hac.hac_iba.iba_memt = x86_bus_space_mem; hac.hac_iba.iba_dmat = &isa_bus_dma_tag; hac.hac_iba.iba_ic = NULL; /* No isa DMA yet */ config_found_ia(self, "isabus", &hac.hac_iba, isabusprint); diff --git a/sys/arch/xen/xen/xpci_xenbus.c b/sys/arch/xen/xen/xpci_xenbus.c index fea8dc96dca..01108d857c2 100644 --- a/sys/arch/xen/xen/xpci_xenbus.c +++ b/sys/arch/xen/xen/xpci_xenbus.c @@ -1,4 +1,4 @@ -/* $NetBSD: xpci_xenbus.c,v 1.3 2009/10/19 18:41:12 bouyer Exp $ */ +/* $NetBSD: xpci_xenbus.c,v 1.4 2010/04/28 19:17:04 dyoung Exp $ */ /* * Copyright (c) 2009 Manuel Bouyer. @@ -26,7 +26,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: xpci_xenbus.c,v 1.3 2009/10/19 18:41:12 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: xpci_xenbus.c,v 1.4 2010/04/28 19:17:04 dyoung Exp $"); #include "opt_xen.h" #include "rnd.h" @@ -382,8 +382,8 @@ xpci_attach_pcibus(int domain, int busn) struct pcibus_attach_args pba; memset(&pba, 0, sizeof(struct pcibus_attach_args)); - pba.pba_iot = X86_BUS_SPACE_IO; - pba.pba_memt = X86_BUS_SPACE_MEM; + pba.pba_iot = x86_bus_space_io; + pba.pba_memt = x86_bus_space_mem; pba.pba_dmat = &pci_bus_dma_tag; #ifdef _LP64 pba.pba_dmat64 = &pci_bus_dma64_tag; diff --git a/sys/compat/ndis/nbcompat.h b/sys/compat/ndis/nbcompat.h index 4981b263a82..c94aefa63d0 100644 --- a/sys/compat/ndis/nbcompat.h +++ b/sys/compat/ndis/nbcompat.h @@ -43,7 +43,7 @@ TAILQ_HEAD(sysctl_ctx_list, sysctl_ctx_entry); #define BUS_SPACE_MAXADDR 0xFFFFFFFF #endif #define BUS_SPACE_MAXSIZE_32BIT 0xFFFFFFFF -#define I386_BUS_SPACE_MEM 1 +#define I386_BUS_SPACE_MEM x86_bus_space_mem #define device_get_softc (struct ndis_softc *) #define ticks hardclock_ticks @@ -57,7 +57,7 @@ TAILQ_HEAD(sysctl_ctx_list, sysctl_ctx_entry); #ifndef PAGE_SIZE #define PAGE_SIZE 4096 #endif -#define I386_BUS_SPACE_IO 0 +#define I386_BUS_SPACE_IO x86_bus_space_io #define device_get_nameunit(dev) device_xname(dev) diff --git a/sys/dev/if_ndis/if_ndis_pci.c b/sys/dev/if_ndis/if_ndis_pci.c index f0f416cdaeb..8ad8db53b3d 100644 --- a/sys/dev/if_ndis/if_ndis_pci.c +++ b/sys/dev/if_ndis/if_ndis_pci.c @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_ndis_pci.c,v 1.17 2009/10/20 19:04:59 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_ndis_pci.c,v 1.18 2010/04/28 19:17:04 dyoung Exp $"); #ifdef __FreeBSD__ __FBSDID("$FreeBSD: src/sys/dev/if_ndis/if_ndis_pci.c,v 1.8.2.3 2005/03/31 04:24:36 wpaul Exp $"); #endif @@ -276,7 +276,7 @@ void ndis_attach_pci(device_t parent, device_t self, void *aux) } sc->ndis_res_io->res_base = base; sc->ndis_res_io->res_size = size; - sc->ndis_res_io->res_tag = X86_BUS_SPACE_IO; + sc->ndis_res_io->res_tag = x86_bus_space_io; bus_space_map(sc->ndis_res_io->res_tag, sc->ndis_res_io->res_base, sc->ndis_res_io->res_size, @@ -303,7 +303,7 @@ void ndis_attach_pci(device_t parent, device_t self, void *aux) } sc->ndis_res_altmem->res_base = base; sc->ndis_res_altmem->res_size = size; - sc->ndis_res_altmem->res_tag = X86_BUS_SPACE_MEM; + sc->ndis_res_altmem->res_tag = x86_bus_space_mem; if(bus_space_map(sc->ndis_res_altmem->res_tag, @@ -321,7 +321,7 @@ void ndis_attach_pci(device_t parent, device_t self, void *aux) } sc->ndis_res_mem->res_base = base; sc->ndis_res_mem->res_size = size; - sc->ndis_res_mem->res_tag = X86_BUS_SPACE_MEM; + sc->ndis_res_mem->res_tag = x86_bus_space_mem; if(bus_space_map(sc->ndis_res_mem->res_tag, sc->ndis_res_mem->res_base, diff --git a/sys/dev/pci/puccn.c b/sys/dev/pci/puccn.c index cd85333d50c..917e3a9642b 100644 --- a/sys/dev/pci/puccn.c +++ b/sys/dev/pci/puccn.c @@ -1,4 +1,4 @@ -/* $NetBSD: puccn.c,v 1.9 2007/01/13 18:59:31 cube Exp $ */ +/* $NetBSD: puccn.c,v 1.10 2010/04/28 19:17:05 dyoung Exp $ */ /* * Derived from pci.c @@ -42,7 +42,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: puccn.c,v 1.9 2007/01/13 18:59:31 cube Exp $"); +__KERNEL_RCSID(0, "$NetBSD: puccn.c,v 1.10 2010/04/28 19:17:05 dyoung Exp $"); #include "opt_kgdb.h" @@ -76,7 +76,7 @@ int cpu_comcnprobe(struct consdev *cn, struct pci_attach_args *pa) { pci_mode_detect(); - pa->pa_iot = X86_BUS_SPACE_IO; + pa->pa_iot = x86_bus_space_io; pa->pa_pc = 0; pa->pa_tag = pci_make_tag(0, 0, 31, 0); return 0; |
