From: paul@pwsan.com (Paul Walmsley)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 12/12] ARM: OMAP2xxx: hwmod data: start to fix the IVA1, IVA2 and DSP
Date: Wed, 07 Mar 2012 19:38:41 -0700 [thread overview]
Message-ID: <20120308023840.8205.51532.stgit@dusk> (raw)
In-Reply-To: <20120308023614.8205.78768.stgit@dusk>
N800 logs this message on boot:
[ 0.182281] omap_hwmod: iva: cannot be enabled for reset (3)
Fix by creating basic IVA1 and DSP hwmods for OMAP2420, and a basic IVA2
hwmod for OMAP2430. There is still more information to be added, but
this should resolve the immediate issue.
Signed-off-by: Paul Walmsley <paul@pwsan.com>
---
arch/arm/mach-omap2/omap_hwmod_2420_data.c | 46 ++++++++++++++++++++++++++--
arch/arm/mach-omap2/omap_hwmod_2430_data.c | 11 ++++++-
2 files changed, 53 insertions(+), 4 deletions(-)
diff --git a/arch/arm/mach-omap2/omap_hwmod_2420_data.c b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
index b01b66a..2c087ff 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2420_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
@@ -43,10 +43,41 @@
* IP blocks
*/
-/* IVA2 (IVA2) */
+/* IVA1 (IVA1) */
+static struct omap_hwmod_class iva1_hwmod_class = {
+ .name = "iva1",
+};
+
+static struct omap_hwmod_rst_info omap2420_iva_resets[] = {
+ { .name = "iva", .rst_shift = 8 },
+};
+
static struct omap_hwmod omap2420_iva_hwmod = {
.name = "iva",
- .class = &iva_hwmod_class,
+ .class = &iva1_hwmod_class,
+ .clkdm_name = "iva1_clkdm",
+ .rst_lines = omap2420_iva_resets,
+ .rst_lines_cnt = ARRAY_SIZE(omap2420_iva_resets),
+ .main_clk = "iva1_ifck",
+};
+
+/* DSP */
+static struct omap_hwmod_class dsp_hwmod_class = {
+ .name = "dsp",
+};
+
+static struct omap_hwmod_rst_info omap2420_dsp_resets[] = {
+ { .name = "logic", .rst_shift = 0 },
+ { .name = "mmu", .rst_shift = 1 },
+};
+
+static struct omap_hwmod omap2420_dsp_hwmod = {
+ .name = "dsp",
+ .class = &dsp_hwmod_class,
+ .clkdm_name = "dsp_clkdm",
+ .rst_lines = omap2420_dsp_resets,
+ .rst_lines_cnt = ARRAY_SIZE(omap2420_dsp_resets),
+ .main_clk = "dsp_fck",
};
/* I2C common */
@@ -234,7 +265,15 @@ static struct omap_hwmod_ocp_if omap2420_l4_core__i2c2 = {
static struct omap_hwmod_ocp_if omap2420_l3__iva = {
.master = &omap2xxx_l3_main_hwmod,
.slave = &omap2420_iva_hwmod,
- .clk = "iva1_ifck",
+ .clk = "core_l3_ck",
+ .user = OCP_USER_MPU | OCP_USER_SDMA,
+};
+
+/* DSP <- L3 interface */
+static struct omap_hwmod_ocp_if omap2420_l3__dsp = {
+ .master = &omap2xxx_l3_main_hwmod,
+ .slave = &omap2420_dsp_hwmod,
+ .clk = "dsp_ick",
.user = OCP_USER_MPU | OCP_USER_SDMA,
};
@@ -402,6 +441,7 @@ static struct omap_hwmod_ocp_if *omap2420_hwmod_ocp_ifs[] __initdata = {
&omap2420_l4_core__i2c1,
&omap2420_l4_core__i2c2,
&omap2420_l3__iva,
+ &omap2420_l3__dsp,
&omap2420_l4_wkup__timer1,
&omap2xxx_l4_core__timer2,
&omap2xxx_l4_core__timer3,
diff --git a/arch/arm/mach-omap2/omap_hwmod_2430_data.c b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
index 23ca551..b359bfb 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2430_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
@@ -45,9 +45,18 @@
*/
/* IVA2 (IVA2) */
+static struct omap_hwmod_rst_info omap2430_iva_resets[] = {
+ { .name = "logic", .rst_shift = 0 },
+ { .name = "mmu", .rst_shift = 1 },
+};
+
static struct omap_hwmod omap2430_iva_hwmod = {
.name = "iva",
.class = &iva_hwmod_class,
+ .clkdm_name = "dsp_clkdm",
+ .rst_lines = omap2430_iva_resets,
+ .rst_lines_cnt = ARRAY_SIZE(omap2430_iva_resets),
+ .main_clk = "dsp_fck",
};
/* I2C common */
@@ -599,7 +608,7 @@ static struct omap_hwmod_ocp_if omap2430_l4_core__mcspi3 = {
static struct omap_hwmod_ocp_if omap2430_l3__iva = {
.master = &omap2xxx_l3_main_hwmod,
.slave = &omap2430_iva_hwmod,
- .clk = "dsp_fck",
+ .clk = "core_l3_ick",
.user = OCP_USER_MPU | OCP_USER_SDMA,
};
next prev parent reply other threads:[~2012-03-08 2:38 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-08 2:38 [PATCH 00/12] ARM: OMAP2+: hwmod: remove link arrays Paul Walmsley
2012-03-08 2:38 ` [PATCH 01/12] ARM: OMAP2+: hwmod: add _find_mpu_rt_port() Paul Walmsley
2012-03-08 2:38 ` [PATCH 02/12] ARM: OMAP2+: hwmod: add function to iterate over struct omap_hwmod_ocp_if Paul Walmsley
2012-03-08 2:38 ` [PATCH 03/12] ARM: OMAP2+: hwmod: consolidate finding the MPU port index and storing it Paul Walmsley
2012-03-08 2:38 ` [PATCH 04/12] ARM: OMAP2+: hwmod: add support for link registration Paul Walmsley
2012-03-08 2:38 ` [PATCH 06/12] ARM: OMAP: hwmod: remove code support for direct hwmod registration Paul Walmsley
2012-03-08 2:38 ` [PATCH 08/12] ARM: OMAP2xxx: hwmod data: share common hwmods between OMAP2420 and OMAP2430 Paul Walmsley
2012-03-08 2:38 ` [PATCH 10/12] ARM: OMAP3: hwmod data: fix IVA interface clock Paul Walmsley
2012-03-08 2:38 ` [PATCH 09/12] ARM: OMAP2xxx: hwmod data: share common interface data Paul Walmsley
2012-03-08 2:38 ` [PATCH 11/12] ARM: OMAP3: hwmod data: add IVA hard reset lines, main clock, clockdomain Paul Walmsley
2012-03-08 2:38 ` Paul Walmsley [this message]
2012-04-19 9:18 ` [PATCH 12/12] ARM: OMAP2xxx: hwmod data: start to fix the IVA1, IVA2 and DSP Paul Walmsley
2012-04-19 9:28 ` Russell King - ARM Linux
2012-04-19 9:33 ` Paul Walmsley
2012-04-19 9:38 ` Paul Walmsley
2012-03-08 2:55 ` [PATCH 00/12] ARM: OMAP2+: hwmod: remove link arrays Paul Walmsley
2012-03-09 4:27 ` Paul Walmsley
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120308023840.8205.51532.stgit@dusk \
--to=paul@pwsan.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).