Re: [PATCH 2/5 v12] arm: omap: usb: ehci and ohci hwmod structuresfor omap3

From: Paul Walmsley
Date: Fri Sep 30 2011 - 04:02:20 EST


Hi

a few more comments

On Fri, 30 Sep 2011, Paul Walmsley wrote:

> On Fri, 30 Sep 2011, Keshava Munegowda wrote:
>
> > +static struct omap_hwmod_ocp_if omap34xx_l4_cfg__usb_host_hs = {
> > + .master = &omap3xxx_l4_core_hwmod,
> > + .slave = &omap34xx_usb_host_hs_hwmod,
> > + .clk = "l4_ick",
> > + .addr = omap34xx_usb_host_hs_addrs,
> > + .user = OCP_USER_MPU | OCP_USER_SDMA,
> > +};
> > +
> > +static struct omap_hwmod_ocp_if omap34xx_usb_host_hs__ick = {

This is missing master, slave, and addr fields. But see the comment
below.

> > + .clk = "usbhost_ick",
> > + .user = OCP_USER_MPU,
> > + .flags = OCPIF_SWSUP_IDLE,
>
> Does this really need OCPIF_SWSUP_IDLE? If so, then there is a hardware
> bug, and some explanation is needed.

Could you describe why there are two struct omap_hwmod_ocp_if records
here? It seems to me that these should just be combined into one struct
omap_hwmod_ocp_if record? Looking at the clock3xxx_data.c file, the
usbhost_ick struct clk has l4_ick as its parent, so l4_ick shouldn't need
to be mentioned explicitly?

...

> > +static struct omap_hwmod_ocp_if omap34xx_f_cfg__usb_tll_hs = {
> > + .clk = "usbtll_ick",
> > + .user = OCP_USER_MPU,
> > + .flags = OCPIF_SWSUP_IDLE,
> > +};
>
> Does this really need OCPIF_SWSUP_IDLE? If so, then there is a hardware
> bug, and some explanation is needed.
>
> > +
> > +static struct omap_hwmod_ocp_if omap34xx_l4_cfg__usb_tll_hs = {
> > + .master = &omap3xxx_l4_core_hwmod,
> > + .slave = &omap34xx_usb_tll_hs_hwmod,
> > + .clk = "l4_ick",
> > + .addr = omap34xx_usb_tll_hs_addrs,
> > + .user = OCP_USER_MPU | OCP_USER_SDMA,
> > +};

Same problem here. Seems like omap34xx_l4_cfg__usb_tll_hs and
omap34xx_f_cfg__usb_tll_hs should be combined into one record.


- Paul
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/