summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authordyoung <dyoung@NetBSD.org>2010-04-28 19:17:03 +0000
committerdyoung <dyoung@NetBSD.org>2010-04-28 19:17:03 +0000
commit30b2d68d20ff9f4bf182ba96df108cec01e1b0df (patch)
tree5e231dcd38ede2dbe2c6d60f6101074413f7389a /sys
parentd184555b354020d071306e7255762d618c9977d1 (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')
-rw-r--r--sys/arch/amd64/amd64/busfunc.S50
-rw-r--r--sys/arch/amd64/amd64/genassym.cf6
-rw-r--r--sys/arch/amd64/amd64/mainbus.c35
-rw-r--r--sys/arch/i386/i386/apmbios.c6
-rw-r--r--sys/arch/i386/i386/busfunc.S58
-rw-r--r--sys/arch/i386/i386/genassym.cf6
-rw-r--r--sys/arch/i386/i386/ipkdb_glue.c6
-rw-r--r--sys/arch/i386/i386/mainbus.c43
-rw-r--r--sys/arch/i386/isa/isapnp_machdep.c8
-rw-r--r--sys/arch/i386/pci/pceb.c12
-rw-r--r--sys/arch/i386/pci/pcibios.c6
-rw-r--r--sys/arch/i386/pci/pcmb.c8
-rw-r--r--sys/arch/i386/pnpbios/pnpbios.c10
-rw-r--r--sys/arch/i386/xbox/xbox.c10
-rw-r--r--sys/arch/i386/xbox/xboxfb.c20
-rw-r--r--sys/arch/x86/include/bus.h13
-rw-r--r--sys/arch/x86/pci/pcib.c8
-rw-r--r--sys/arch/x86/x86/acpi_machdep.c8
-rw-r--r--sys/arch/x86/x86/bus_space.c76
-rw-r--r--sys/arch/x86/x86/consinit.c21
-rw-r--r--sys/arch/x86/x86/genfb_machdep.c6
-rw-r--r--sys/arch/xen/x86/consinit.c10
-rw-r--r--sys/arch/xen/x86/mainbus.c8
-rw-r--r--sys/arch/xen/xen/hypervisor.c16
-rw-r--r--sys/arch/xen/xen/xpci_xenbus.c8
-rw-r--r--sys/compat/ndis/nbcompat.h4
-rw-r--r--sys/dev/if_ndis/if_ndis_pci.c8
-rw-r--r--sys/dev/pci/puccn.c6
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;