Messages in this thread | | | Date | Wed, 23 Jul 2014 15:33:23 +0100 | From | Peter Griffin <> | Subject | Re: [PATCH v2 1/3] usb: dwc3: add ST dwc3 glue layer to manage dwc3 HC |
| |
Hi Felipe,
Thanks for reviewing, see my comments inline: -
> > > Just use {read,write}l_relaxed() directly. > > > > Ok, unabstracted in v3 > > no, no... all other glues add their own local helpers for register > access. This is good for tracing, it's very easy to add a tracepoint to > this sort of function and get very low overhead tracing of every > register access.
I've put the IO accessors back in for V3
> > They are just bit setting macros, I've converted them over to use BIT macro now, > > so it no longer takes a parameter. > > the macros are better, but make them upper case as everybody else.
Fixed in v3.
> > I've asked ST how this value was derirved and why. It came from validation. > > The docs don't mention that it is necessary, and removing it > > seems to have no ill effects. So I've removed this udelay in v3. > > make sure to test with many, many iterations just to make sure.
Yes will do, I've been booting my board all day, and so far no failures.
> > Ok. Do the DT folks have any comment on this? > > look at the child's dr-mode property instead of adding your own.
Thanks for the hint, now using dr-mode binding in V3 :-)
> > > > > + dwc3_data->glue_base = devm_request_and_ioremap(dev, res); > > use devm_ioremap_resource()
Fixed in V3
> > Your right, this was wrong. It was some legacy code which is > > unnecessary and I've removed this in v3. > > if you're going for DT, why don't you create the parent and the child > from DT as omap/exynos/qcom are doing ?
Now creating parent and child from DT like OMAP in v3
> > > > + reset_control_assert(dwc3_data->rstc_pwrdn); > > > > + > > > > + pinctrl_pm_select_sleep_state(dev); > > pinctrl will select sleep and default states automatically for you.
I've left this in v3, as greping around I couldn't see how that could happen automatically.
Also I just double checked with linusw on irc who confirmed that the only state which is ever auto-selected is "default". All other states, as well as going back to default state need to be explicitly called.
Hope thats ok.
regards,
Peter.
| |