xref: /netbsd-src/sys/arch/hpcmips/include/bus_space_hpcmips.h (revision 95e1ffb15694e54f29f8baaa4232152b703c2a5a)
1*95e1ffb1Schristos /*	$NetBSD: bus_space_hpcmips.h,v 1.5 2005/12/11 12:17:33 christos Exp $	*/
21d1d5c87Stakemura 
31d1d5c87Stakemura /*-
41d1d5c87Stakemura  * Copyright (c) 2001 TAKEMRUA Shin. All rights reserved.
51d1d5c87Stakemura  *
61d1d5c87Stakemura  * Redistribution and use in source and binary forms, with or without
71d1d5c87Stakemura  * modification, are permitted provided that the following conditions
81d1d5c87Stakemura  * are met:
91d1d5c87Stakemura  * 1. Redistributions of source code must retain the above copyright
101d1d5c87Stakemura  *    notice, this list of conditions and the following disclaimer.
111d1d5c87Stakemura  * 2. Redistributions in binary form must reproduce the above copyright
121d1d5c87Stakemura  *    notice, this list of conditions and the following disclaimer in the
131d1d5c87Stakemura  *    documentation and/or other materials provided with the distribution.
141d1d5c87Stakemura  * 3. Neither the name of the project nor the names of its contributors
151d1d5c87Stakemura  *    may be used to endorse or promote products derived from this software
161d1d5c87Stakemura  *    without specific prior written permission.
171d1d5c87Stakemura  *
181d1d5c87Stakemura  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
191d1d5c87Stakemura  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
201d1d5c87Stakemura  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
211d1d5c87Stakemura  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
221d1d5c87Stakemura  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
231d1d5c87Stakemura  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
241d1d5c87Stakemura  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
251d1d5c87Stakemura  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
261d1d5c87Stakemura  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
271d1d5c87Stakemura  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
281d1d5c87Stakemura  * SUCH DAMAGE.
291d1d5c87Stakemura  *
301d1d5c87Stakemura  */
311d1d5c87Stakemura 
321d1d5c87Stakemura #ifndef _BUS_SPACE_HPCMIPS_H_
331d1d5c87Stakemura #define _BUS_SPACE_HPCMIPS_H_
341d1d5c87Stakemura 
351d1d5c87Stakemura /*
361d1d5c87Stakemura  *	bus_space_tag
371d1d5c87Stakemura  *
381d1d5c87Stakemura  *	bus space tag structure
391d1d5c87Stakemura  */
401d1d5c87Stakemura struct bus_space_tag_hpcmips {
411d1d5c87Stakemura 	struct bus_space_tag	bst;
421d1d5c87Stakemura 	char			name[16];	/* bus name */
431d1d5c87Stakemura 	u_int32_t		base;		/* extent base */
441d1d5c87Stakemura 	u_int32_t		size;		/* extent size */
451d1d5c87Stakemura 	void			*extent;	/* pointer for extent structure */
461d1d5c87Stakemura };
471d1d5c87Stakemura 
481d1d5c87Stakemura /*
491d1d5c87Stakemura  * Hpcmips unique methods
501d1d5c87Stakemura  */
511d1d5c87Stakemura bus_space_tag_t hpcmips_system_bus_space(void);
52bd9aab9cSuch struct bus_space_tag_hpcmips *hpcmips_system_bus_space_hpcmips(void);
535815e5f5Stakemura void hpcmips_init_bus_space(struct bus_space_tag_hpcmips *,
54957e5645She     struct bus_space_tag_hpcmips *, const char *, u_int32_t, u_int32_t);
555815e5f5Stakemura struct bus_space_tag_hpcmips *hpcmips_alloc_bus_space_tag(void);
561d1d5c87Stakemura 
571d1d5c87Stakemura #endif /* _BUS_SPACE_HPCMIPS_H_ */
58