2 * OMAP4XXX L3 Interconnect error handling driver header
4 * Copyright (C) 2011 Texas Corporation
5 * Santosh Shilimkar <santosh.shilimkar@ti.com>
6 * sricharan <r.sricharan@ti.com>
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
23 #ifndef __ARCH_ARM_MACH_OMAP2_L3_INTERCONNECT_3XXX_H
24 #define __ARCH_ARM_MACH_OMAP2_L3_INTERCONNECT_3XXX_H
27 #define CLEAR_STDERR_LOG (1 << 31)
28 #define CUSTOM_ERROR 0x2
29 #define STANDARD_ERROR 0x0
30 #define INBAND_ERROR 0x0
31 #define L3_APPLICATION_ERROR 0x0
32 #define L3_DEBUG_ERROR 0x1
34 /* L3 TARG register offsets */
35 #define L3_TARG_STDERRLOG_MAIN 0x48
36 #define L3_TARG_STDERRLOG_SLVOFSLSB 0x5c
37 #define L3_TARG_STDERRLOG_MSTADDR 0x68
38 #define L3_FLAGMUX_REGERR0 0xc
40 #define NUM_OF_L3_MASTERS (sizeof(l3_masters)/sizeof(l3_masters[0]))
42 static u32 l3_flagmux
[L3_MODULES
] = {
48 /* L3 Target standard Error register offsets */
49 static u32 l3_targ_inst_clk1
[] = {
54 0x600, /* CLK2 PWR DISC */
59 static u32 l3_targ_inst_clk2
[] = {
60 0x500, /* CORTEX M3 */
65 0xD00, /* missing in TRM corresponds to AES1*/
68 0x100, /* missing in TRM corresponds to GPMC sERROR*/
72 0x1100, /* missing in TRM corresponds PWR DISC CLK1*/
73 0xF00, /* missing in TRM corrsponds to SHA1*/
74 0xE00, /* missing in TRM corresponds to AES2*/
83 static u32 l3_targ_inst_clk3
[] = {
85 0x0300, /* DEBUGSS_CT_TBR */
89 static struct l3_masters_data
{
100 { 0x48, "FaceDetect"},
115 { 0xC0, "USBHOSTHS"},
120 static char *l3_targ_inst_name
[L3_MODULES
][21] = {
160 static u32
*l3_targ
[L3_MODULES
] = {
171 void __iomem
*l3_base
[L3_MODULES
];