xref: /netbsd-src/sys/arch/epoc32/include/epoc32.h (revision d7b7d02e733839920043e74f8c8422b1708f098c)
1*d7b7d02eSkiyohara /*	$NetBSD: epoc32.h,v 1.1 2013/04/28 12:11:26 kiyohara Exp $	*/
2*d7b7d02eSkiyohara /*
3*d7b7d02eSkiyohara  * Copyright (c) 2012 KIYOHARA Takashi
4*d7b7d02eSkiyohara  * All rights reserved.
5*d7b7d02eSkiyohara  *
6*d7b7d02eSkiyohara  * Redistribution and use in source and binary forms, with or without
7*d7b7d02eSkiyohara  * modification, are permitted provided that the following conditions
8*d7b7d02eSkiyohara  * are met:
9*d7b7d02eSkiyohara  * 1. Redistributions of source code must retain the above copyright
10*d7b7d02eSkiyohara  *    notice, this list of conditions and the following disclaimer.
11*d7b7d02eSkiyohara  * 2. Redistributions in binary form must reproduce the above copyright
12*d7b7d02eSkiyohara  *    notice, this list of conditions and the following disclaimer in the
13*d7b7d02eSkiyohara  *    documentation and/or other materials provided with the distribution.
14*d7b7d02eSkiyohara  *
15*d7b7d02eSkiyohara  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
16*d7b7d02eSkiyohara  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17*d7b7d02eSkiyohara  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18*d7b7d02eSkiyohara  * DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
19*d7b7d02eSkiyohara  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20*d7b7d02eSkiyohara  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
21*d7b7d02eSkiyohara  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22*d7b7d02eSkiyohara  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
23*d7b7d02eSkiyohara  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
24*d7b7d02eSkiyohara  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
25*d7b7d02eSkiyohara  * POSSIBILITY OF SUCH DAMAGE.
26*d7b7d02eSkiyohara  */
27*d7b7d02eSkiyohara 
28*d7b7d02eSkiyohara #ifndef _EPOC32_H_
29*d7b7d02eSkiyohara #define _EPOC32_H_
30*d7b7d02eSkiyohara 
31*d7b7d02eSkiyohara #define ARM7XX_INTRREG_VBASE	0xe0000000
32*d7b7d02eSkiyohara #define ARM7XX_INTRREG_BASE	0x80000000
33*d7b7d02eSkiyohara #define ARM7XX_INTRREG_SIZE	0x00001000	/* 4K byte */
34*d7b7d02eSkiyohara #define ARM7XX_FB_VBASE		0xf0000000
35*d7b7d02eSkiyohara #define ARM7XX_FB_BASE		0xc0000000
36*d7b7d02eSkiyohara #define ARM7XX_FB_SIZE		(640 * 240 * 4/*bpp*/ / 8/*bits*/)
37*d7b7d02eSkiyohara 
38*d7b7d02eSkiyohara struct external_attach_args {
39*d7b7d02eSkiyohara 	const char *name;
40*d7b7d02eSkiyohara 	bus_space_tag_t iot;
41*d7b7d02eSkiyohara 	bus_addr_t addr;
42*d7b7d02eSkiyohara 	bus_addr_t addr2;
43*d7b7d02eSkiyohara 	int irq;
44*d7b7d02eSkiyohara };
45*d7b7d02eSkiyohara 
46*d7b7d02eSkiyohara extern int (*soc_find_pending_irqs)(void);
47*d7b7d02eSkiyohara extern void (*soc_initclocks)(void);
48*d7b7d02eSkiyohara extern void (*soc_delay)(unsigned int);
49*d7b7d02eSkiyohara 
50*d7b7d02eSkiyohara #endif	/* _EPOC32_H_ */
51