LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH v2] ARM: AM43xx: hwmod: add VPFE hwmod entries
@ 2015-01-25 20:31 Lad, Prabhakar
2015-01-26 2:15 ` Paul Walmsley
0 siblings, 1 reply; 7+ messages in thread
From: Lad, Prabhakar @ 2015-01-25 20:31 UTC (permalink / raw)
To: Paul Walmsley
Cc: Tony Lindgren, LAK, linux-omap, LKML, Benoit Parrot,
Darren Etheridge, Felipe Balbi, Lad, Prabhakar
From: Benoit Parrot <bparrot@ti.com>
this patch adds VPFE HWMOD data for AM43xx.
Signed-off-by: Benoit Parrot <bparrot@ti.com>
Signed-off-by: Darren Etheridge <detheridge@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
---
Hi Paul,
You were right, the hardware team has confirmed that, the VPFE master port is
connected to L3 and the VPFE slave port is connected to L4. The L3 port cannot
serve as a register target because it is initiator only.
I have created links referring to dss l3/l4 hwmod and tested it, lemme know
if I have missed something.
arch/arm/mach-omap2/omap_hwmod_43xx_data.c | 72 ++++++++++++++++++++++++++++++
arch/arm/mach-omap2/prcm43xx.h | 3 +-
2 files changed, 74 insertions(+), 1 deletion(-)
diff --git a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
index 5c6c841..3787824 100644
--- a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
@@ -514,6 +514,44 @@ static struct omap_hwmod am43xx_dss_rfbi_hwmod = {
},
};
+static struct omap_hwmod_class_sysconfig am43xx_vpfe_sysc = {
+ .rev_offs = 0x0,
+ .sysc_offs = 0x104,
+ .sysc_flags = SYSC_HAS_MIDLEMODE | SYSC_HAS_SIDLEMODE,
+ .idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
+ MSTANDBY_FORCE | MSTANDBY_SMART | MSTANDBY_NO),
+ .sysc_fields = &omap_hwmod_sysc_type2,
+};
+
+static struct omap_hwmod_class am43xx_vpfe_hwmod_class = {
+ .name = "vpfe",
+ .sysc = &am43xx_vpfe_sysc,
+};
+
+static struct omap_hwmod am43xx_vpfe0_hwmod = {
+ .name = "vpfe0",
+ .class = &am43xx_vpfe_hwmod_class,
+ .clkdm_name = "l3s_clkdm",
+ .prcm = {
+ .omap4 = {
+ .modulemode = MODULEMODE_SWCTRL,
+ .clkctrl_offs = AM43XX_CM_PER_VPFE0_CLKCTRL_OFFSET,
+ },
+ },
+};
+
+static struct omap_hwmod am43xx_vpfe1_hwmod = {
+ .name = "vpfe1",
+ .class = &am43xx_vpfe_hwmod_class,
+ .clkdm_name = "l3s_clkdm",
+ .prcm = {
+ .omap4 = {
+ .modulemode = MODULEMODE_SWCTRL,
+ .clkctrl_offs = AM43XX_CM_PER_VPFE1_CLKCTRL_OFFSET,
+ },
+ },
+};
+
/* Interfaces */
static struct omap_hwmod_ocp_if am43xx_l3_main__l4_hs = {
.master = &am33xx_l3_main_hwmod,
@@ -788,6 +826,36 @@ static struct omap_hwmod_ocp_if am43xx_l4_ls__dss_rfbi = {
.user = OCP_USER_MPU | OCP_USER_SDMA,
};
+static struct omap_hwmod_ocp_if am43xx_l3__vpfe0 = {
+ .master = &am43xx_vpfe0_hwmod,
+ .slave = &am33xx_l3_main_hwmod,
+ .clk = "l3_gclk",
+ .flags = OCPIF_SWSUP_IDLE,
+ .user = OCP_USER_MPU | OCP_USER_SDMA,
+};
+
+static struct omap_hwmod_ocp_if am43xx_l3__vpfe1 = {
+ .master = &am43xx_vpfe1_hwmod,
+ .slave = &am33xx_l3_main_hwmod,
+ .clk = "l3_gclk",
+ .flags = OCPIF_SWSUP_IDLE,
+ .user = OCP_USER_MPU | OCP_USER_SDMA,
+};
+
+static struct omap_hwmod_ocp_if am43xx_l4_ls__vpfe0 = {
+ .master = &am33xx_l4_ls_hwmod,
+ .slave = &am43xx_vpfe0_hwmod,
+ .clk = "l4ls_gclk",
+ .user = OCP_USER_MPU | OCP_USER_SDMA,
+};
+
+static struct omap_hwmod_ocp_if am43xx_l4_ls__vpfe1 = {
+ .master = &am33xx_l4_ls_hwmod,
+ .slave = &am43xx_vpfe1_hwmod,
+ .clk = "l4ls_gclk",
+ .user = OCP_USER_MPU | OCP_USER_SDMA,
+};
+
static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = {
&am33xx_l4_wkup__synctimer,
&am43xx_l4_ls__timer8,
@@ -887,6 +955,10 @@ static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = {
&am43xx_l4_ls__dss,
&am43xx_l4_ls__dss_dispc,
&am43xx_l4_ls__dss_rfbi,
+ &am43xx_l3__vpfe0,
+ &am43xx_l3__vpfe1,
+ &am43xx_l4_ls__vpfe0,
+ &am43xx_l4_ls__vpfe1,
NULL,
};
diff --git a/arch/arm/mach-omap2/prcm43xx.h b/arch/arm/mach-omap2/prcm43xx.h
index ad7b3e9..8aa4c2c 100644
--- a/arch/arm/mach-omap2/prcm43xx.h
+++ b/arch/arm/mach-omap2/prcm43xx.h
@@ -143,5 +143,6 @@
#define AM43XX_CM_PER_USB_OTG_SS1_CLKCTRL_OFFSET 0x0268
#define AM43XX_CM_PER_USBPHYOCP2SCP1_CLKCTRL_OFFSET 0x05C0
#define AM43XX_CM_PER_DSS_CLKCTRL_OFFSET 0x0a20
-
+#define AM43XX_CM_PER_VPFE0_CLKCTRL_OFFSET 0x0068
+#define AM43XX_CM_PER_VPFE1_CLKCTRL_OFFSET 0x0070
#endif
--
2.1.0
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] ARM: AM43xx: hwmod: add VPFE hwmod entries
2015-01-25 20:31 [PATCH v2] ARM: AM43xx: hwmod: add VPFE hwmod entries Lad, Prabhakar
@ 2015-01-26 2:15 ` Paul Walmsley
2015-01-26 8:13 ` Lad, Prabhakar
0 siblings, 1 reply; 7+ messages in thread
From: Paul Walmsley @ 2015-01-26 2:15 UTC (permalink / raw)
To: Lad, Prabhakar
Cc: Tony Lindgren, LAK, linux-omap, LKML, Benoit Parrot,
Darren Etheridge, Felipe Balbi
Hi
On Sun, 25 Jan 2015, Lad, Prabhakar wrote:
> From: Benoit Parrot <bparrot@ti.com>
>
> this patch adds VPFE HWMOD data for AM43xx.
>
> Signed-off-by: Benoit Parrot <bparrot@ti.com>
> Signed-off-by: Darren Etheridge <detheridge@ti.com>
> Signed-off-by: Felipe Balbi <balbi@ti.com>
> Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
> ---
> Hi Paul,
>
> You were right, the hardware team has confirmed that, the VPFE master port is
> connected to L3 and the VPFE slave port is connected to L4. The L3 port cannot
> serve as a register target because it is initiator only.
OK makes sense to me.,
>
> I have created links referring to dss l3/l4 hwmod and tested it, lemme know
> if I have missed something.
A few minor comments below
>
> arch/arm/mach-omap2/omap_hwmod_43xx_data.c | 72 ++++++++++++++++++++++++++++++
> arch/arm/mach-omap2/prcm43xx.h | 3 +-
> 2 files changed, 74 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
> index 5c6c841..3787824 100644
> --- a/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
> +++ b/arch/arm/mach-omap2/omap_hwmod_43xx_data.c
> @@ -514,6 +514,44 @@ static struct omap_hwmod am43xx_dss_rfbi_hwmod = {
> },
> };
>
> +static struct omap_hwmod_class_sysconfig am43xx_vpfe_sysc = {
> + .rev_offs = 0x0,
> + .sysc_offs = 0x104,
> + .sysc_flags = SYSC_HAS_MIDLEMODE | SYSC_HAS_SIDLEMODE,
> + .idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
> + MSTANDBY_FORCE | MSTANDBY_SMART | MSTANDBY_NO),
> + .sysc_fields = &omap_hwmod_sysc_type2,
> +};
> +
> +static struct omap_hwmod_class am43xx_vpfe_hwmod_class = {
> + .name = "vpfe",
> + .sysc = &am43xx_vpfe_sysc,
> +};
> +
> +static struct omap_hwmod am43xx_vpfe0_hwmod = {
> + .name = "vpfe0",
> + .class = &am43xx_vpfe_hwmod_class,
> + .clkdm_name = "l3s_clkdm",
> + .prcm = {
> + .omap4 = {
> + .modulemode = MODULEMODE_SWCTRL,
> + .clkctrl_offs = AM43XX_CM_PER_VPFE0_CLKCTRL_OFFSET,
> + },
> + },
> +};
> +
> +static struct omap_hwmod am43xx_vpfe1_hwmod = {
> + .name = "vpfe1",
> + .class = &am43xx_vpfe_hwmod_class,
> + .clkdm_name = "l3s_clkdm",
> + .prcm = {
> + .omap4 = {
> + .modulemode = MODULEMODE_SWCTRL,
> + .clkctrl_offs = AM43XX_CM_PER_VPFE1_CLKCTRL_OFFSET,
> + },
> + },
> +};
> +
> /* Interfaces */
> static struct omap_hwmod_ocp_if am43xx_l3_main__l4_hs = {
> .master = &am33xx_l3_main_hwmod,
> @@ -788,6 +826,36 @@ static struct omap_hwmod_ocp_if am43xx_l4_ls__dss_rfbi = {
> .user = OCP_USER_MPU | OCP_USER_SDMA,
> };
>
> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe0 = {
> + .master = &am43xx_vpfe0_hwmod,
> + .slave = &am33xx_l3_main_hwmod,
> + .clk = "l3_gclk",
> + .flags = OCPIF_SWSUP_IDLE,
OCPIF_SWSUP_IDLE probably isn't needed here. Could you please try without
it?
> + .user = OCP_USER_MPU | OCP_USER_SDMA,
> +};
> +
> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe1 = {
> + .master = &am43xx_vpfe1_hwmod,
> + .slave = &am33xx_l3_main_hwmod,
> + .clk = "l3_gclk",
> + .flags = OCPIF_SWSUP_IDLE,
Same point as the above.
> + .user = OCP_USER_MPU | OCP_USER_SDMA,
> +};
> +
> +static struct omap_hwmod_ocp_if am43xx_l4_ls__vpfe0 = {
> + .master = &am33xx_l4_ls_hwmod,
> + .slave = &am43xx_vpfe0_hwmod,
> + .clk = "l4ls_gclk",
> + .user = OCP_USER_MPU | OCP_USER_SDMA,
> +};
> +
> +static struct omap_hwmod_ocp_if am43xx_l4_ls__vpfe1 = {
> + .master = &am33xx_l4_ls_hwmod,
> + .slave = &am43xx_vpfe1_hwmod,
> + .clk = "l4ls_gclk",
> + .user = OCP_USER_MPU | OCP_USER_SDMA,
> +};
> +
> static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = {
> &am33xx_l4_wkup__synctimer,
> &am43xx_l4_ls__timer8,
> @@ -887,6 +955,10 @@ static struct omap_hwmod_ocp_if *am43xx_hwmod_ocp_ifs[] __initdata = {
> &am43xx_l4_ls__dss,
> &am43xx_l4_ls__dss_dispc,
> &am43xx_l4_ls__dss_rfbi,
> + &am43xx_l3__vpfe0,
> + &am43xx_l3__vpfe1,
> + &am43xx_l4_ls__vpfe0,
> + &am43xx_l4_ls__vpfe1,
> NULL,
> };
>
> diff --git a/arch/arm/mach-omap2/prcm43xx.h b/arch/arm/mach-omap2/prcm43xx.h
> index ad7b3e9..8aa4c2c 100644
> --- a/arch/arm/mach-omap2/prcm43xx.h
> +++ b/arch/arm/mach-omap2/prcm43xx.h
> @@ -143,5 +143,6 @@
> #define AM43XX_CM_PER_USB_OTG_SS1_CLKCTRL_OFFSET 0x0268
> #define AM43XX_CM_PER_USBPHYOCP2SCP1_CLKCTRL_OFFSET 0x05C0
> #define AM43XX_CM_PER_DSS_CLKCTRL_OFFSET 0x0a20
> -
> +#define AM43XX_CM_PER_VPFE0_CLKCTRL_OFFSET 0x0068
> +#define AM43XX_CM_PER_VPFE1_CLKCTRL_OFFSET 0x0070
> #endif
> --
> 2.1.0
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
- Paul
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] ARM: AM43xx: hwmod: add VPFE hwmod entries
2015-01-26 2:15 ` Paul Walmsley
@ 2015-01-26 8:13 ` Lad, Prabhakar
2015-01-26 15:50 ` Benoit Parrot
0 siblings, 1 reply; 7+ messages in thread
From: Lad, Prabhakar @ 2015-01-26 8:13 UTC (permalink / raw)
To: Paul Walmsley
Cc: Tony Lindgren, LAK, Linux OMAP Mailing List, LKML, Benoit Parrot,
Darren Etheridge, Felipe Balbi
Hi Paul,
Thanks for the review.
On Mon, Jan 26, 2015 at 2:15 AM, Paul Walmsley <paul@pwsan.com> wrote:
> Hi
>
> On Sun, 25 Jan 2015, Lad, Prabhakar wrote:
>
>> From: Benoit Parrot <bparrot@ti.com>
>>
>> this patch adds VPFE HWMOD data for AM43xx.
>>
>> Signed-off-by: Benoit Parrot <bparrot@ti.com>
>> Signed-off-by: Darren Etheridge <detheridge@ti.com>
>> Signed-off-by: Felipe Balbi <balbi@ti.com>
>> Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
>> ---
>> Hi Paul,
>>
>> You were right, the hardware team has confirmed that, the VPFE master port is
>> connected to L3 and the VPFE slave port is connected to L4. The L3 port cannot
>> serve as a register target because it is initiator only.
>
> OK makes sense to me.,
>
>>
>> I have created links referring to dss l3/l4 hwmod and tested it, lemme know
>> if I have missed something.
>
> A few minor comments below
>
>>
[Snip]
>> /* Interfaces */
>> static struct omap_hwmod_ocp_if am43xx_l3_main__l4_hs = {
>> .master = &am33xx_l3_main_hwmod,
>> @@ -788,6 +826,36 @@ static struct omap_hwmod_ocp_if am43xx_l4_ls__dss_rfbi = {
>> .user = OCP_USER_MPU | OCP_USER_SDMA,
>> };
>>
>> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe0 = {
>> + .master = &am43xx_vpfe0_hwmod,
>> + .slave = &am33xx_l3_main_hwmod,
>> + .clk = "l3_gclk",
>> + .flags = OCPIF_SWSUP_IDLE,
>
> OCPIF_SWSUP_IDLE probably isn't needed here. Could you please try without
> it?
>
>> + .user = OCP_USER_MPU | OCP_USER_SDMA,
>> +};
>> +
>> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe1 = {
>> + .master = &am43xx_vpfe1_hwmod,
>> + .slave = &am33xx_l3_main_hwmod,
>> + .clk = "l3_gclk",
>> + .flags = OCPIF_SWSUP_IDLE,
>
> Same point as the above.
>
Dropped and tested works! posting a v3.
Cheers,
--Prabhakar Lad
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] ARM: AM43xx: hwmod: add VPFE hwmod entries
2015-01-26 8:13 ` Lad, Prabhakar
@ 2015-01-26 15:50 ` Benoit Parrot
2015-01-26 15:56 ` Lad, Prabhakar
0 siblings, 1 reply; 7+ messages in thread
From: Benoit Parrot @ 2015-01-26 15:50 UTC (permalink / raw)
To: Lad, Prabhakar
Cc: Paul Walmsley, Tony Lindgren, LAK, Linux OMAP Mailing List, LKML,
Darren Etheridge, Felipe Balbi
Lad, Prabhakar <prabhakar.csengg@gmail.com> wrote on Mon [2015-Jan-26 08:13:01 +0000]:
> Hi Paul,
>
> Thanks for the review.
>
> On Mon, Jan 26, 2015 at 2:15 AM, Paul Walmsley <paul@pwsan.com> wrote:
> > Hi
> >
> > On Sun, 25 Jan 2015, Lad, Prabhakar wrote:
> >
> >> From: Benoit Parrot <bparrot@ti.com>
> >>
> >> this patch adds VPFE HWMOD data for AM43xx.
> >>
> >> Signed-off-by: Benoit Parrot <bparrot@ti.com>
> >> Signed-off-by: Darren Etheridge <detheridge@ti.com>
> >> Signed-off-by: Felipe Balbi <balbi@ti.com>
> >> Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
> >> ---
> >> Hi Paul,
> >>
> >> You were right, the hardware team has confirmed that, the VPFE master port is
> >> connected to L3 and the VPFE slave port is connected to L4. The L3 port cannot
> >> serve as a register target because it is initiator only.
> >
> > OK makes sense to me.,
> >
> >>
> >> I have created links referring to dss l3/l4 hwmod and tested it, lemme know
> >> if I have missed something.
> >
> > A few minor comments below
> >
> >>
> [Snip]
> >> /* Interfaces */
> >> static struct omap_hwmod_ocp_if am43xx_l3_main__l4_hs = {
> >> .master = &am33xx_l3_main_hwmod,
> >> @@ -788,6 +826,36 @@ static struct omap_hwmod_ocp_if am43xx_l4_ls__dss_rfbi = {
> >> .user = OCP_USER_MPU | OCP_USER_SDMA,
> >> };
> >>
> >> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe0 = {
> >> + .master = &am43xx_vpfe0_hwmod,
> >> + .slave = &am33xx_l3_main_hwmod,
> >> + .clk = "l3_gclk",
> >> + .flags = OCPIF_SWSUP_IDLE,
> >
> > OCPIF_SWSUP_IDLE probably isn't needed here. Could you please try without
> > it?
> >
> >> + .user = OCP_USER_MPU | OCP_USER_SDMA,
> >> +};
> >> +
> >> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe1 = {
> >> + .master = &am43xx_vpfe1_hwmod,
> >> + .slave = &am33xx_l3_main_hwmod,
> >> + .clk = "l3_gclk",
> >> + .flags = OCPIF_SWSUP_IDLE,
> >
> > Same point as the above.
> >
> Dropped and tested works! posting a v3.
When you tested it without the OCPIF_SWSUP_IDLE, did you go trhough a complete suspend/resume cycle?
This flag was added early on because otherwise the susbsytem would not go idle without it...
Can you post the console output during a suspend/resume cycle?
Benoit
>
> Cheers,
> --Prabhakar Lad
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] ARM: AM43xx: hwmod: add VPFE hwmod entries
2015-01-26 15:50 ` Benoit Parrot
@ 2015-01-26 15:56 ` Lad, Prabhakar
2015-01-26 18:47 ` Paul Walmsley
0 siblings, 1 reply; 7+ messages in thread
From: Lad, Prabhakar @ 2015-01-26 15:56 UTC (permalink / raw)
To: Benoit Parrot
Cc: Paul Walmsley, Tony Lindgren, LAK, Linux OMAP Mailing List, LKML,
Darren Etheridge, Felipe Balbi
Hi Benoit,
On Mon, Jan 26, 2015 at 3:50 PM, Benoit Parrot <bparrot@ti.com> wrote:
> Lad, Prabhakar <prabhakar.csengg@gmail.com> wrote on Mon [2015-Jan-26 08:13:01 +0000]:
>> Hi Paul,
>>
>> Thanks for the review.
>>
>> On Mon, Jan 26, 2015 at 2:15 AM, Paul Walmsley <paul@pwsan.com> wrote:
>> > Hi
>> >
>> > On Sun, 25 Jan 2015, Lad, Prabhakar wrote:
>> >
>> >> From: Benoit Parrot <bparrot@ti.com>
>> >>
>> >> this patch adds VPFE HWMOD data for AM43xx.
>> >>
>> >> Signed-off-by: Benoit Parrot <bparrot@ti.com>
>> >> Signed-off-by: Darren Etheridge <detheridge@ti.com>
>> >> Signed-off-by: Felipe Balbi <balbi@ti.com>
>> >> Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
>> >> ---
>> >> Hi Paul,
>> >>
>> >> You were right, the hardware team has confirmed that, the VPFE master port is
>> >> connected to L3 and the VPFE slave port is connected to L4. The L3 port cannot
>> >> serve as a register target because it is initiator only.
>> >
>> > OK makes sense to me.,
>> >
>> >>
>> >> I have created links referring to dss l3/l4 hwmod and tested it, lemme know
>> >> if I have missed something.
>> >
>> > A few minor comments below
>> >
>> >>
>> [Snip]
>> >> /* Interfaces */
>> >> static struct omap_hwmod_ocp_if am43xx_l3_main__l4_hs = {
>> >> .master = &am33xx_l3_main_hwmod,
>> >> @@ -788,6 +826,36 @@ static struct omap_hwmod_ocp_if am43xx_l4_ls__dss_rfbi = {
>> >> .user = OCP_USER_MPU | OCP_USER_SDMA,
>> >> };
>> >>
>> >> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe0 = {
>> >> + .master = &am43xx_vpfe0_hwmod,
>> >> + .slave = &am33xx_l3_main_hwmod,
>> >> + .clk = "l3_gclk",
>> >> + .flags = OCPIF_SWSUP_IDLE,
>> >
>> > OCPIF_SWSUP_IDLE probably isn't needed here. Could you please try without
>> > it?
>> >
>> >> + .user = OCP_USER_MPU | OCP_USER_SDMA,
>> >> +};
>> >> +
>> >> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe1 = {
>> >> + .master = &am43xx_vpfe1_hwmod,
>> >> + .slave = &am33xx_l3_main_hwmod,
>> >> + .clk = "l3_gclk",
>> >> + .flags = OCPIF_SWSUP_IDLE,
>> >
>> > Same point as the above.
>> >
>> Dropped and tested works! posting a v3.
>
> When you tested it without the OCPIF_SWSUP_IDLE, did you go trhough a complete suspend/resume cycle?
> This flag was added early on because otherwise the susbsytem would not go idle without it...
>
> Can you post the console output during a suspend/resume cycle?
>
Ah I didn’t test the suspend/resume will do and post the console log.
Cheers,
--Prabhakar Lad
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] ARM: AM43xx: hwmod: add VPFE hwmod entries
2015-01-26 15:56 ` Lad, Prabhakar
@ 2015-01-26 18:47 ` Paul Walmsley
2015-01-28 19:30 ` Benoit Parrot
0 siblings, 1 reply; 7+ messages in thread
From: Paul Walmsley @ 2015-01-26 18:47 UTC (permalink / raw)
To: Lad, Prabhakar
Cc: Benoit Parrot, Tony Lindgren, LAK, Linux OMAP Mailing List, LKML,
Darren Etheridge, Felipe Balbi
[-- Attachment #1: Type: TEXT/PLAIN, Size: 2934 bytes --]
Hi Prabhakar,
On Mon, 26 Jan 2015, Lad, Prabhakar wrote:
> Hi Benoit,
>
> On Mon, Jan 26, 2015 at 3:50 PM, Benoit Parrot <bparrot@ti.com> wrote:
> > Lad, Prabhakar <prabhakar.csengg@gmail.com> wrote on Mon [2015-Jan-26 08:13:01 +0000]:
> >> Hi Paul,
> >>
> >> Thanks for the review.
> >>
> >> On Mon, Jan 26, 2015 at 2:15 AM, Paul Walmsley <paul@pwsan.com> wrote:
> >> > Hi
> >> >
> >> > On Sun, 25 Jan 2015, Lad, Prabhakar wrote:
> >> >
> >> >> From: Benoit Parrot <bparrot@ti.com>
> >> >>
> >> >> this patch adds VPFE HWMOD data for AM43xx.
> >> >>
> >> >> Signed-off-by: Benoit Parrot <bparrot@ti.com>
> >> >> Signed-off-by: Darren Etheridge <detheridge@ti.com>
> >> >> Signed-off-by: Felipe Balbi <balbi@ti.com>
> >> >> Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
> >> >> ---
> >> >> Hi Paul,
> >> >>
> >> >> You were right, the hardware team has confirmed that, the VPFE master port is
> >> >> connected to L3 and the VPFE slave port is connected to L4. The L3 port cannot
> >> >> serve as a register target because it is initiator only.
> >> >
> >> > OK makes sense to me.,
> >> >
> >> >>
> >> >> I have created links referring to dss l3/l4 hwmod and tested it, lemme know
> >> >> if I have missed something.
> >> >
> >> > A few minor comments below
> >> >
> >> >>
> >> [Snip]
> >> >> /* Interfaces */
> >> >> static struct omap_hwmod_ocp_if am43xx_l3_main__l4_hs = {
> >> >> .master = &am33xx_l3_main_hwmod,
> >> >> @@ -788,6 +826,36 @@ static struct omap_hwmod_ocp_if am43xx_l4_ls__dss_rfbi = {
> >> >> .user = OCP_USER_MPU | OCP_USER_SDMA,
> >> >> };
> >> >>
> >> >> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe0 = {
> >> >> + .master = &am43xx_vpfe0_hwmod,
> >> >> + .slave = &am33xx_l3_main_hwmod,
> >> >> + .clk = "l3_gclk",
> >> >> + .flags = OCPIF_SWSUP_IDLE,
> >> >
> >> > OCPIF_SWSUP_IDLE probably isn't needed here. Could you please try without
> >> > it?
> >> >
> >> >> + .user = OCP_USER_MPU | OCP_USER_SDMA,
> >> >> +};
> >> >> +
> >> >> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe1 = {
> >> >> + .master = &am43xx_vpfe1_hwmod,
> >> >> + .slave = &am33xx_l3_main_hwmod,
> >> >> + .clk = "l3_gclk",
> >> >> + .flags = OCPIF_SWSUP_IDLE,
> >> >
> >> > Same point as the above.
> >> >
> >> Dropped and tested works! posting a v3.
> >
> > When you tested it without the OCPIF_SWSUP_IDLE, did you go trhough a complete suspend/resume cycle?
> > This flag was added early on because otherwise the susbsytem would not go idle without it...
> >
> > Can you post the console output during a suspend/resume cycle?
> >
> Ah I didn’t test the suspend/resume will do and post the console log.
Could you also do a suspend/resume test on v2?
thanks
- Paul
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2] ARM: AM43xx: hwmod: add VPFE hwmod entries
2015-01-26 18:47 ` Paul Walmsley
@ 2015-01-28 19:30 ` Benoit Parrot
0 siblings, 0 replies; 7+ messages in thread
From: Benoit Parrot @ 2015-01-28 19:30 UTC (permalink / raw)
To: Paul Walmsley
Cc: Lad, Prabhakar, Tony Lindgren, LAK, Linux OMAP Mailing List,
LKML, Darren Etheridge, Felipe Balbi
Paul Walmsley <paul@pwsan.com> wrote on Mon [2015-Jan-26 18:47:11 +0000]:
> Hi Prabhakar,
>
> On Mon, 26 Jan 2015, Lad, Prabhakar wrote:
>
> > Hi Benoit,
> >
> > On Mon, Jan 26, 2015 at 3:50 PM, Benoit Parrot <bparrot@ti.com> wrote:
> > > Lad, Prabhakar <prabhakar.csengg@gmail.com> wrote on Mon [2015-Jan-26 08:13:01 +0000]:
> > >> Hi Paul,
> > >>
> > >> Thanks for the review.
> > >>
> > >> On Mon, Jan 26, 2015 at 2:15 AM, Paul Walmsley <paul@pwsan.com> wrote:
> > >> > Hi
> > >> >
> > >> > On Sun, 25 Jan 2015, Lad, Prabhakar wrote:
> > >> >
> > >> >> From: Benoit Parrot <bparrot@ti.com>
> > >> >>
> > >> >> this patch adds VPFE HWMOD data for AM43xx.
> > >> >>
> > >> >> Signed-off-by: Benoit Parrot <bparrot@ti.com>
> > >> >> Signed-off-by: Darren Etheridge <detheridge@ti.com>
> > >> >> Signed-off-by: Felipe Balbi <balbi@ti.com>
> > >> >> Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
> > >> >> ---
> > >> >> Hi Paul,
> > >> >>
> > >> >> You were right, the hardware team has confirmed that, the VPFE master port is
> > >> >> connected to L3 and the VPFE slave port is connected to L4. The L3 port cannot
> > >> >> serve as a register target because it is initiator only.
> > >> >
> > >> > OK makes sense to me.,
> > >> >
> > >> >>
> > >> >> I have created links referring to dss l3/l4 hwmod and tested it, lemme know
> > >> >> if I have missed something.
> > >> >
> > >> > A few minor comments below
> > >> >
> > >> >>
> > >> [Snip]
> > >> >> /* Interfaces */
> > >> >> static struct omap_hwmod_ocp_if am43xx_l3_main__l4_hs = {
> > >> >> .master = &am33xx_l3_main_hwmod,
> > >> >> @@ -788,6 +826,36 @@ static struct omap_hwmod_ocp_if am43xx_l4_ls__dss_rfbi = {
> > >> >> .user = OCP_USER_MPU | OCP_USER_SDMA,
> > >> >> };
> > >> >>
> > >> >> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe0 = {
> > >> >> + .master = &am43xx_vpfe0_hwmod,
> > >> >> + .slave = &am33xx_l3_main_hwmod,
> > >> >> + .clk = "l3_gclk",
> > >> >> + .flags = OCPIF_SWSUP_IDLE,
> > >> >
> > >> > OCPIF_SWSUP_IDLE probably isn't needed here. Could you please try without
> > >> > it?
> > >> >
> > >> >> + .user = OCP_USER_MPU | OCP_USER_SDMA,
> > >> >> +};
> > >> >> +
> > >> >> +static struct omap_hwmod_ocp_if am43xx_l3__vpfe1 = {
> > >> >> + .master = &am43xx_vpfe1_hwmod,
> > >> >> + .slave = &am33xx_l3_main_hwmod,
> > >> >> + .clk = "l3_gclk",
> > >> >> + .flags = OCPIF_SWSUP_IDLE,
> > >> >
> > >> > Same point as the above.
> > >> >
> > >> Dropped and tested works! posting a v3.
> > >
> > > When you tested it without the OCPIF_SWSUP_IDLE, did you go trhough a complete suspend/resume cycle?
> > > This flag was added early on because otherwise the susbsytem would not go idle without it...
> > >
> > > Can you post the console output during a suspend/resume cycle?
> > >
> > Ah I didn’t test the suspend/resume will do and post the console log.
>
> Could you also do a suspend/resume test on v2?
Prabbhakar,
I tested both v2 and v3 and both successfully went through a suspend/resume cycle.
So I guess v3 is fine, sorry for the noise.
I'll add a tested-by on V3.
Benoit
>
> thanks
>
> - Paul
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-01-28 20:11 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-25 20:31 [PATCH v2] ARM: AM43xx: hwmod: add VPFE hwmod entries Lad, Prabhakar
2015-01-26 2:15 ` Paul Walmsley
2015-01-26 8:13 ` Lad, Prabhakar
2015-01-26 15:50 ` Benoit Parrot
2015-01-26 15:56 ` Lad, Prabhakar
2015-01-26 18:47 ` Paul Walmsley
2015-01-28 19:30 ` Benoit Parrot
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).