diff --git a/sys/alpha/include/_bus.h b/sys/alpha/include/_bus.h new file mode 100644 index 000000000000..261120e6ebc1 --- /dev/null +++ b/sys/alpha/include/_bus.h @@ -0,0 +1,42 @@ +/*- + * Copyright (c) 2005 M. Warner Losh. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions, and the following disclaimer, + * without modification, immediately at the beginning of the file. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef ALPHA_INCLUDE__BUS_H +#define ALPHA_INCLUDE__BUS_H + +/* + * Bus address and size types + */ +typedef u_int64_t bus_addr_t; +typedef u_int64_t bus_size_t; +typedef struct alpha_busspace *bus_space_tag_t; +typedef u_int32_t bus_space_handle_t; + +#endif /* ALPHA_INCLUDE__BUS_H */ diff --git a/sys/alpha/include/bus.h b/sys/alpha/include/bus.h index a5ea27524349..bfd5c55092a9 100644 --- a/sys/alpha/include/bus.h +++ b/sys/alpha/include/bus.h @@ -72,13 +72,7 @@ #ifndef _ALPHA_BUS_H_ #define _ALPHA_BUS_H_ -/* - * Bus address and size types - */ -typedef u_int64_t bus_addr_t; -typedef u_int64_t bus_size_t; -typedef struct alpha_busspace *bus_space_tag_t; -typedef u_int32_t bus_space_handle_t; +#include #define BUS_SPACE_MAXSIZE_24BIT 0xFFFFFF #define BUS_SPACE_MAXSIZE_32BIT 0xFFFFFFFF diff --git a/sys/amd64/include/_bus.h b/sys/amd64/include/_bus.h new file mode 100644 index 000000000000..a8cbf4810c75 --- /dev/null +++ b/sys/amd64/include/_bus.h @@ -0,0 +1,46 @@ +/*- + * Copyright (c) 2005 M. Warner Losh. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions, and the following disclaimer, + * without modification, immediately at the beginning of the file. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef AMD64_INCLUDE__BUS_H +#define AMD64_INCLUDE__BUS_H + +/* + * Bus address and size types + */ +typedef uint64_t bus_addr_t; +typedef uint64_t bus_size_t; + +/* + * Access methods for bus resources and address space. + */ +typedef uint64_t bus_space_tag_t; +typedef uint64_t bus_space_handle_t; + +#endif /* AMD64_INCLUDE__BUS_H */ diff --git a/sys/amd64/include/bus.h b/sys/amd64/include/bus.h index e127a7ed6e7c..e9f8c1710f69 100644 --- a/sys/amd64/include/bus.h +++ b/sys/amd64/include/bus.h @@ -104,6 +104,7 @@ #ifndef _AMD64_BUS_H_ #define _AMD64_BUS_H_ +#include #include /* @@ -124,9 +125,6 @@ /* * Bus address and size types */ -typedef uint64_t bus_addr_t; -typedef uint64_t bus_size_t; - #define BUS_SPACE_MAXSIZE_24BIT 0xFFFFFF #define BUS_SPACE_MAXSIZE_32BIT 0xFFFFFFFF #define BUS_SPACE_MAXSIZE 0xFFFFFFFF @@ -136,12 +134,6 @@ typedef uint64_t bus_size_t; #define BUS_SPACE_UNRESTRICTED (~0) -/* - * Access methods for bus resources and address space. - */ -typedef uint64_t bus_space_tag_t; -typedef uint64_t bus_space_handle_t; - /* * Map a region of device bus space into CPU virtual address space. */ diff --git a/sys/arm/include/_bus.h b/sys/arm/include/_bus.h new file mode 100644 index 000000000000..30dd3fb01ae3 --- /dev/null +++ b/sys/arm/include/_bus.h @@ -0,0 +1,46 @@ +/*- +% * Copyright (c) 2005 M. Warner Losh. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions, and the following disclaimer, + * without modification, immediately at the beginning of the file. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef ARM_INCLUDE__BUS_H +#define ARM_INCLUDE__BUS_H + +/* + * Addresses (in bus space). + */ +typedef u_long bus_addr_t; +typedef u_long bus_size_t; + +/* + * Access methods for bus space. + */ +typedef struct bus_space *bus_space_tag_t; +typedef u_long bus_space_handle_t; + +#endif /* ARM_INCLUDE__BUS_H */ diff --git a/sys/arm/include/bus.h b/sys/arm/include/bus.h index 70f743847271..624edab9fc2f 100644 --- a/sys/arm/include/bus.h +++ b/sys/arm/include/bus.h @@ -73,17 +73,7 @@ #ifndef _MACHINE_BUS_H_ #define _MACHINE_BUS_H_ -/* - * Addresses (in bus space). - */ -typedef u_long bus_addr_t; -typedef u_long bus_size_t; - -/* - * Access methods for bus space. - */ -typedef struct bus_space *bus_space_tag_t; -typedef u_long bus_space_handle_t; +#include /* * int bus_space_map (bus_space_tag_t t, bus_addr_t addr, diff --git a/sys/i386/include/_bus.h b/sys/i386/include/_bus.h new file mode 100644 index 000000000000..49bdd5a30757 --- /dev/null +++ b/sys/i386/include/_bus.h @@ -0,0 +1,50 @@ +/*- + * Copyright (c) 2005 M. Warner Losh. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions, and the following disclaimer, + * without modification, immediately at the beginning of the file. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef I386_INCLUDE__BUS_H +#define I386_INCLUDE__BUS_H + +/* + * Bus address and size types + */ +#ifdef PAE +typedef uint64_t bus_addr_t; +#else +typedef uint32_t bus_addr_t; +#endif +typedef uint32_t bus_size_t; + +/* + * Access methods for bus resources and address space. + */ +typedef int bus_space_tag_t; +typedef u_int bus_space_handle_t; + +#endif /* I386_INCLUDE__BUS_H */ diff --git a/sys/i386/include/bus.h b/sys/i386/include/bus.h index 29c6d98cebbe..4fd13ea046c5 100644 --- a/sys/i386/include/bus.h +++ b/sys/i386/include/bus.h @@ -104,6 +104,7 @@ #ifndef _I386_BUS_H_ #define _I386_BUS_H_ +#include #include /* @@ -121,16 +122,6 @@ #define I386_BUS_SPACE_IO 0 /* space is i/o space */ #define I386_BUS_SPACE_MEM 1 /* space is mem space */ -/* - * Bus address and size types - */ -#ifdef PAE -typedef uint64_t bus_addr_t; -#else -typedef uint32_t bus_addr_t; -#endif -typedef uint32_t bus_size_t; - #define BUS_SPACE_MAXSIZE_24BIT 0xFFFFFF #define BUS_SPACE_MAXSIZE_32BIT 0xFFFFFFFF #define BUS_SPACE_MAXSIZE 0xFFFFFFFF @@ -144,12 +135,6 @@ typedef uint32_t bus_size_t; #define BUS_SPACE_UNRESTRICTED (~0) -/* - * Access methods for bus resources and address space. - */ -typedef int bus_space_tag_t; -typedef u_int bus_space_handle_t; - /* * Map a region of device bus space into CPU virtual address space. */ diff --git a/sys/ia64/include/_bus.h b/sys/ia64/include/_bus.h new file mode 100644 index 000000000000..95d94b40387f --- /dev/null +++ b/sys/ia64/include/_bus.h @@ -0,0 +1,46 @@ +/*- + * Copyright (c) 2005 M. Warner Losh. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions, and the following disclaimer, + * without modification, immediately at the beginning of the file. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef IA64_INCLUDE__BUS_H +#define IA64_INCLUDE__BUS_H + +/* + * Bus address and size types + */ +typedef u_long bus_addr_t; +typedef u_long bus_size_t; + +/* + * Access methods for bus resources and address space. + */ +typedef int bus_space_tag_t; +typedef u_long bus_space_handle_t; + +#endif /* IA64_INCLUDE__BUS_H */ diff --git a/sys/ia64/include/bus.h b/sys/ia64/include/bus.h index 3b50d8a820c9..253759776dd9 100644 --- a/sys/ia64/include/bus.h +++ b/sys/ia64/include/bus.h @@ -86,6 +86,7 @@ #define _MACHINE_BUS_MEMIO_H_ #define _MACHINE_BUS_PIO_H_ +#include #include /* @@ -94,12 +95,6 @@ #define IA64_BUS_SPACE_IO 0 /* space is i/o space */ #define IA64_BUS_SPACE_MEM 1 /* space is mem space */ -/* - * Bus address and size types - */ -typedef u_long bus_addr_t; -typedef u_long bus_size_t; - #define BUS_SPACE_MAXSIZE_24BIT 0xFFFFFF #define BUS_SPACE_MAXSIZE_32BIT 0xFFFFFFFF #define BUS_SPACE_MAXSIZE 0xFFFFFFFFFFFFFFFF @@ -109,13 +104,6 @@ typedef u_long bus_size_t; #define BUS_SPACE_UNRESTRICTED (~0) -/* - * Access methods for bus resources and address space. - */ -typedef int bus_space_tag_t; -typedef u_long bus_space_handle_t; - - /* * Map a region of device bus space into CPU virtual address space. */ diff --git a/sys/pc98/include/_bus.h b/sys/pc98/include/_bus.h new file mode 100644 index 000000000000..5b8084be765e --- /dev/null +++ b/sys/pc98/include/_bus.h @@ -0,0 +1,74 @@ +/*- + * Copyright (c) 2005 M. Warner Losh. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions, and the following disclaimer, + * without modification, immediately at the beginning of the file. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef PC98_INCLUDE__BUS_H +#define PC98_INCLUDE__BUS_H + +/* + * Bus address and size types + */ +typedef u_int bus_addr_t; +typedef u_int bus_size_t; + +/* + * Access methods for bus resources and address space. + */ +struct bus_space_tag { +#define BUS_SPACE_IO 0 +#define BUS_SPACE_MEM 1 + u_int bs_tag; /* bus space flags */ + + struct bus_space_access_methods bs_da; /* direct access */ + struct bus_space_access_methods bs_ra; /* relocate access */ +#if 0 + struct bus_space_access_methods bs_ida; /* indexed direct access */ +#endif +}; +typedef struct bus_space_tag *bus_space_tag_t; + +/* + * bus space handle + */ +struct bus_space_handle { + bus_addr_t bsh_base; + size_t bsh_sz; + + bus_addr_t bsh_iat[BUS_SPACE_IAT_MAXSIZE]; + size_t bsh_maxiatsz; + size_t bsh_iatsz; + + struct resource **bsh_res; + size_t bsh_ressz; + + struct bus_space_access_methods bsh_bam; +}; +typedef struct bus_space_handle *bus_space_handle_t; + +#endif /* PC98_INCLUDE__BUS_H */ diff --git a/sys/pc98/include/bus.h b/sys/pc98/include/bus.h index bcb92f2c67a8..c34488620b39 100644 --- a/sys/pc98/include/bus.h +++ b/sys/pc98/include/bus.h @@ -80,14 +80,9 @@ #include +#include #include -/* - * Bus address and size types - */ -typedef u_int bus_addr_t; -typedef u_int bus_size_t; - #define BUS_SPACE_MAXSIZE_24BIT 0xFFFFFF #define BUS_SPACE_MAXSIZE_32BIT 0xFFFFFFFF #define BUS_SPACE_MAXSIZE 0xFFFFFFFF @@ -153,19 +148,6 @@ struct bus_space_access_methods { _BUS_SPACE_CALL_FUNCS(bs,u_int32_t,4) }; -struct bus_space_tag { -#define BUS_SPACE_IO 0 -#define BUS_SPACE_MEM 1 - u_int bs_tag; /* bus space flags */ - - struct bus_space_access_methods bs_da; /* direct access */ - struct bus_space_access_methods bs_ra; /* relocate access */ -#if 0 - struct bus_space_access_methods bs_ida; /* indexed direct access */ -#endif -}; -typedef struct bus_space_tag *bus_space_tag_t; - /* * Values for the i386 bus space tag, not to be used directly by MI code. */ @@ -175,24 +157,6 @@ extern struct bus_space_tag SBUS_mem_space_tag; #define I386_BUS_SPACE_IO (&SBUS_io_space_tag) #define I386_BUS_SPACE_MEM (&SBUS_mem_space_tag) -/* - * bus space handle - */ -struct bus_space_handle { - bus_addr_t bsh_base; - size_t bsh_sz; - - bus_addr_t bsh_iat[BUS_SPACE_IAT_MAXSIZE]; - size_t bsh_maxiatsz; - size_t bsh_iatsz; - - struct resource **bsh_res; - size_t bsh_ressz; - - struct bus_space_access_methods bsh_bam; -}; -typedef struct bus_space_handle *bus_space_handle_t; - /* * Allocate/Free bus_space_handle */ diff --git a/sys/powerpc/include/_bus.h b/sys/powerpc/include/_bus.h new file mode 100644 index 000000000000..5561ce734127 --- /dev/null +++ b/sys/powerpc/include/_bus.h @@ -0,0 +1,46 @@ +/*- + * Copyright (c) 2005 M. Warner Losh. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions, and the following disclaimer, + * without modification, immediately at the beginning of the file. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef POWERPC_INCLUDE__BUS_H +#define POWERPC_INCLUDE__BUS_H + +/* + * Bus address and size types + */ +typedef u_int32_t bus_addr_t; +typedef u_int32_t bus_size_t; + +/* + * Access methods for bus resources and address space. + */ +typedef u_int32_t bus_space_tag_t; +typedef u_int32_t bus_space_handle_t; + +#endif /* POWERPC_INCLUDE__BUS_H */ diff --git a/sys/powerpc/include/bus.h b/sys/powerpc/include/bus.h index 5892eefc22c6..c7bbf16b7745 100644 --- a/sys/powerpc/include/bus.h +++ b/sys/powerpc/include/bus.h @@ -72,6 +72,7 @@ #ifndef _MACPPC_BUS_H_ #define _MACPPC_BUS_H_ +#include #include #define BUS_SPACE_MAXSIZE_24BIT 0xFFFFFF @@ -89,24 +90,12 @@ #define __BUS_SPACE_HAS_STREAM_METHODS 1 -/* - * Bus address and size types - */ -typedef u_int32_t bus_addr_t; -typedef u_int32_t bus_size_t; - /* * Define the PPC tag values */ #define PPC_BUS_SPACE_MEM 1 /* space is mem space */ #define PPC_BUS_SPACE_IO 2 /* space is io space */ -/* - * Access methods for bus resources and address space. - */ -typedef u_int32_t bus_space_tag_t; -typedef u_int32_t bus_space_handle_t; - static __inline void * __ppc_ba(bus_space_tag_t tag __unused, bus_space_handle_t handle, bus_size_t offset) diff --git a/sys/sparc64/include/_bus.h b/sys/sparc64/include/_bus.h new file mode 100644 index 000000000000..c3db34192084 --- /dev/null +++ b/sys/sparc64/include/_bus.h @@ -0,0 +1,42 @@ +/*- + * Copyright (c) 2005 M. Warner Losh. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions, and the following disclaimer, + * without modification, immediately at the beginning of the file. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef SPARC64_INCLUDE__BUS_H +#define SPARC64_INCLUDE__BUS_H + +/* + * Bus address and size types + */ +typedef u_long bus_space_handle_t; +typedef int bus_type_t; +typedef u_long bus_addr_t; +typedef u_long bus_size_t; + +#endif /* SPARC64_INCLUDE__BUS_H */ diff --git a/sys/sparc64/include/bus.h b/sys/sparc64/include/bus.h index ed134af5d44c..97a4baa76b40 100644 --- a/sys/sparc64/include/bus.h +++ b/sys/sparc64/include/bus.h @@ -79,6 +79,7 @@ #include #endif +#include #include #include @@ -100,14 +101,6 @@ extern int bus_stream_asi[]; #define __BUS_SPACE_HAS_STREAM_METHODS 1 -/* - * Bus address and size types - */ -typedef u_long bus_space_handle_t; -typedef int bus_type_t; -typedef u_long bus_addr_t; -typedef u_long bus_size_t; - #define BUS_SPACE_MAXSIZE_24BIT 0xFFFFFF #define BUS_SPACE_MAXSIZE_32BIT 0xFFFFFFFF #define BUS_SPACE_MAXSIZE 0xFFFFFFFFFFFFFFFF