summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryagi <yagi@ke66.alps.lineo.co.jp>2012-06-27 11:47:25 +0900
committerJustin Waters <justin.waters@timesys.com>2012-07-03 17:15:27 -0400
commitc80ef498ddf16d52cd3bf3ece8812f9d429d8ac0 (patch)
tree1d89b716c5c13d7b97ef4425f1938e4ca4b69073
parent9e789f39dd3b9219f9ad50d8c31ceecf1f2476f0 (diff)
Update: add DMA resource, undef CONFIG_HAVE_HW_BREAKPOINT
-rwxr-xr-xarch/arm/Kconfig2
-rw-r--r--arch/arm/configs/twrvf600_defconfig1
-rw-r--r--arch/arm/mach-mvf/board-twr_vf600.c45
-rw-r--r--arch/arm/mach-mvf/devices-mvf.h2
4 files changed, 48 insertions, 2 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index ee2272881400..0489b1c29a1a 100755
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -24,7 +24,7 @@ config ARM
select HAVE_PERF_EVENTS
select PERF_USE_VMALLOC
select HAVE_REGS_AND_STACK_ACCESS_API
- select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7))
+ select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7) && !SOC_VF6XX)
select HAVE_C_RECORDMCOUNT
select HAVE_GENERIC_HARDIRQS
select HAVE_SPARSE_IRQ
diff --git a/arch/arm/configs/twrvf600_defconfig b/arch/arm/configs/twrvf600_defconfig
index d57cf810fad2..bedf589e0fbe 100644
--- a/arch/arm/configs/twrvf600_defconfig
+++ b/arch/arm/configs/twrvf600_defconfig
@@ -125,7 +125,6 @@ CONFIG_HAVE_KRETPROBES=y
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
CONFIG_HAVE_CLK=y
CONFIG_HAVE_DMA_API_DEBUG=y
-CONFIG_HAVE_HW_BREAKPOINT=y
#
# GCOV-based kernel profiling
diff --git a/arch/arm/mach-mvf/board-twr_vf600.c b/arch/arm/mach-mvf/board-twr_vf600.c
index a5d096a63d7c..34a2b403816a 100644
--- a/arch/arm/mach-mvf/board-twr_vf600.c
+++ b/arch/arm/mach-mvf/board-twr_vf600.c
@@ -172,6 +172,48 @@ static struct fec_platform_data fec_data __initdata = {
.phy = PHY_INTERFACE_MODE_RMII,
};
+static struct resource edma_resources[] = {
+ [0] = {
+ .start = MVF_DMA0_BASE_ADDR,
+ .end = MVF_DMA0_BASE_ADDR + 0x2000,
+ .flags = IORESOURCE_MEM,
+ },
+ [1] = {
+ .start = MXC_INT_DMA0,
+ .end = MXC_INT_DMA0,
+ .flags = IORESOURCE_IRQ,
+ },
+ [2] = {
+ .start = MXC_INT_DMA0_ERROR,
+ .end = MXC_INT_DMA0_ERROR,
+ .flags = IORESOURCE_IRQ,
+ }
+#if 0
+ [3] = {
+ .start = MVF_DMA1_BASE_ADDR,
+ .end = MVF_DMA1_BASE_ADDR + 0x2000,
+ .flags = IORESOURCE_MEM,
+ },
+ [4] = {
+ .start = MXC_INT_DMA1,
+ .end = MXC_INT_DMA1,
+ .flags = IORESOURCE_IRQ,
+ }
+ [5] = {
+ .start = MXC_INT_DMA1_ERROR,
+ .end = MXC_INT_DMA1_ERROR,
+ .flags = IORESOURCE_IRQ,
+ }
+#endif
+};
+
+static struct platform_device edma_device = {
+ .name = "mvf-edma",
+ .id = 0,
+ .num_resources = 3,
+ .resource = edma_resources,
+};
+
static void twr_vf600_suspend_enter(void)
{
/* suspend preparation */
@@ -215,6 +257,9 @@ static void __init twr_vf600_init(void)
vf6xx_add_imx_snvs_rtc();
mvf_init_fec(fec_data);
+ platform_device_register(&edma_device);
+
+
#if 0
vf6xx_add_pm_imx(0, &twr_vf600_pm_data);
mvf_add_imx2_wdt(0, NULL);
diff --git a/arch/arm/mach-mvf/devices-mvf.h b/arch/arm/mach-mvf/devices-mvf.h
index 821afa0a5624..7fa46ca9c8fa 100644
--- a/arch/arm/mach-mvf/devices-mvf.h
+++ b/arch/arm/mach-mvf/devices-mvf.h
@@ -29,8 +29,10 @@ extern const struct imx_snvs_rtc_data vf6xx_imx_snvs_rtc_data __initconst;
#define vf6xx_add_imx_snvs_rtc() \
imx_add_snvs_rtc(&vf6xx_imx_snvs_rtc_data)
+#if 0
extern const struct imx_dma_data vf6xx_dma_data __initconst;
#define vf6xx_add_dma() imx_add_dma(&vf6xx_dma_data);
+#endif
extern const struct imx_fec_data vf6xx_fec_data __initconst;
#define vf6xx_add_fec(pdata) \