xref: /freebsd/sys/arm/ti/ti_pruss.h (revision 95ee2897e98f5d444f26ed2334cc7c439f9c16c6)
1 /*-
2  * SPDX-License-Identifier: BSD-2-Clause
3  *
4  * Copyright (c) 2013 Rui Paulo <rpaulo@FreeBSD.org>
5  * Copyright (c) 2017 Manuel Stuehn
6  * All rights reserved.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  * 1. Redistributions of source code must retain the above copyright
12  *    notice, this list of conditions and the following disclaimer.
13  * 2. Redistributions in binary form must reproduce the above copyright
14  *    notice, this list of conditions and the following disclaimer in the
15  *    documentation and/or other materials provided with the distribution.
16  *
17  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
19  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
20  * DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
21  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
22  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
23  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
25  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
26  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27  * POSSIBILITY OF SUCH DAMAGE.
28  */
29 #ifndef _TI_PRUSS_H_
30 #define _TI_PRUSS_H_
31 
32 #define	PRUSS_AM18XX_INTC	0x04000
33 #define	PRUSS_AM18XX_REV	0x4e825900
34 #define	PRUSS_AM33XX_REV	0x4e82A900
35 #define	PRUSS_AM33XX_INTC	0x20000
36 
37 #define PRUSS_INTC_GER			(PRUSS_AM33XX_INTC + 0x0010)
38 #define PRUSS_INTC_SISR			(PRUSS_AM33XX_INTC + 0x0020)
39 #define PRUSS_INTC_SICR			(PRUSS_AM33XX_INTC + 0x0024)
40 #define PRUSS_INTC_EISR			(PRUSS_AM33XX_INTC + 0x0028)
41 #define PRUSS_INTC_EICR			(PRUSS_AM33XX_INTC + 0x002C)
42 #define PRUSS_INTC_HIEISR		(PRUSS_AM33XX_INTC + 0x0034)
43 #define PRUSS_INTC_HIDISR		(PRUSS_AM33XX_INTC + 0x0038)
44 #define PRUSS_INTC_SECR0		(PRUSS_AM33XX_INTC + 0x0280)
45 #define PRUSS_INTC_SECR1		(PRUSS_AM33XX_INTC + 0x0284)
46 #define PRUSS_INTC_CMR_BASE		(PRUSS_AM33XX_INTC + 0x0400)
47 #define PRUSS_INTC_HMR_BASE		(PRUSS_AM33XX_INTC + 0x0800)
48 #define PRUSS_INTC_HIPIR_BASE	(PRUSS_AM33XX_INTC + 0x0900)
49 #define PRUSS_INTC_SIPR0		(PRUSS_AM33XX_INTC + 0x0D00)
50 #define PRUSS_INTC_SIPR1		(PRUSS_AM33XX_INTC + 0x0D04)
51 #define PRUSS_INTC_SITR0		(PRUSS_AM33XX_INTC + 0x0D80)
52 #define PRUSS_INTC_SITR1		(PRUSS_AM33XX_INTC + 0x0D84)
53 #define PRUSS_INTC_HIER		    (PRUSS_AM33XX_INTC + 0x1500)
54 
55 #endif /* _TI_PRUSS_H_ */
56