msm: board: Add cache error reporting devices
Add the cache ERP devices for 8960 and 8064, and add these
devices to the common device lists in the board files for
8960, 8930, and 8064.
Change-Id: Icbf441cf5a64b99f003999f816bc6fe64ab61214
Signed-off-by: Stepan Moskovchenko <stepanm@codeaurora.org>
diff --git a/arch/arm/mach-msm/board-8064.c b/arch/arm/mach-msm/board-8064.c
index 82ce0df..01478ac 100644
--- a/arch/arm/mach-msm/board-8064.c
+++ b/arch/arm/mach-msm/board-8064.c
@@ -1792,6 +1792,7 @@
#endif
&apq8064_cpu_idle_device,
&apq8064_msm_gov_device,
+ &apq8064_device_cache_erp,
};
static struct platform_device *sim_devices[] __initdata = {
diff --git a/arch/arm/mach-msm/board-8930.c b/arch/arm/mach-msm/board-8930.c
index f2bd41b..51c8af6 100644
--- a/arch/arm/mach-msm/board-8930.c
+++ b/arch/arm/mach-msm/board-8930.c
@@ -1820,6 +1820,7 @@
&msm_bus_8930_mm_fabric,
&msm_bus_8930_sys_fpb,
&msm_bus_8930_cpss_fpb,
+ &msm8960_device_cache_erp,
};
static struct platform_device *cdp_devices[] __initdata = {
diff --git a/arch/arm/mach-msm/board-8960.c b/arch/arm/mach-msm/board-8960.c
index db0bbff..384da36 100644
--- a/arch/arm/mach-msm/board-8960.c
+++ b/arch/arm/mach-msm/board-8960.c
@@ -2192,6 +2192,7 @@
#endif
&msm8960_cpu_idle_device,
&msm8960_msm_gov_device,
+ &msm8960_device_cache_erp,
};
static struct platform_device *sim_devices[] __initdata = {
diff --git a/arch/arm/mach-msm/devices-8064.c b/arch/arm/mach-msm/devices-8064.c
index 1e539b2..3965413 100644
--- a/arch/arm/mach-msm/devices-8064.c
+++ b/arch/arm/mach-msm/devices-8064.c
@@ -2190,3 +2190,23 @@
.platform_data = &apq8064_core_info,
},
};
+
+static struct resource msm_cache_erp_resources[] = {
+ {
+ .name = "l1_irq",
+ .start = SC_SICCPUXEXTFAULTIRPTREQ,
+ .flags = IORESOURCE_IRQ,
+ },
+ {
+ .name = "l2_irq",
+ .start = APCC_QGICL2IRPTREQ,
+ .flags = IORESOURCE_IRQ,
+ }
+};
+
+struct platform_device apq8064_device_cache_erp = {
+ .name = "msm_cache_erp",
+ .id = -1,
+ .num_resources = ARRAY_SIZE(msm_cache_erp_resources),
+ .resource = msm_cache_erp_resources,
+};
diff --git a/arch/arm/mach-msm/devices-8960.c b/arch/arm/mach-msm/devices-8960.c
index 42df652..c45a137 100644
--- a/arch/arm/mach-msm/devices-8960.c
+++ b/arch/arm/mach-msm/devices-8960.c
@@ -3270,3 +3270,23 @@
.platform_data = &msm8960_core_info,
},
};
+
+static struct resource msm_cache_erp_resources[] = {
+ {
+ .name = "l1_irq",
+ .start = SC_SICCPUXEXTFAULTIRPTREQ,
+ .flags = IORESOURCE_IRQ,
+ },
+ {
+ .name = "l2_irq",
+ .start = APCC_QGICL2IRPTREQ,
+ .flags = IORESOURCE_IRQ,
+ }
+};
+
+struct platform_device msm8960_device_cache_erp = {
+ .name = "msm_cache_erp",
+ .id = -1,
+ .num_resources = ARRAY_SIZE(msm_cache_erp_resources),
+ .resource = msm_cache_erp_resources,
+};
diff --git a/arch/arm/mach-msm/devices.h b/arch/arm/mach-msm/devices.h
index 199ff85..1c5f397 100644
--- a/arch/arm/mach-msm/devices.h
+++ b/arch/arm/mach-msm/devices.h
@@ -71,6 +71,7 @@
extern struct platform_device msm8960_device_ispif;
extern struct platform_device msm8960_device_vfe;
extern struct platform_device msm8960_device_vpe;
+extern struct platform_device msm8960_device_cache_erp;
extern struct platform_device apq8064_device_uart_gsbi1;
extern struct platform_device apq8064_device_uart_gsbi3;
@@ -82,6 +83,7 @@
extern struct platform_device apq8064_slim_ctrl;
extern struct platform_device apq8064_device_ssbi_pmic1;
extern struct platform_device apq8064_device_ssbi_pmic2;
+extern struct platform_device apq8064_device_cache_erp;
extern struct platform_device msm9615_device_uart_gsbi4;
extern struct platform_device msm9615_device_qup_i2c_gsbi5;