On Thu, Sep 17, 2015 at 9:35 PM, Peter Chen <peter.chen@xxxxxxxxxxxxx> wrote: > On Wed, Sep 16, 2015 at 08:54:25AM -0500, Rob Herring wrote: >> On 09/15/2015 08:49 PM, Peter Chen wrote: >> > Some SoCs needs three clock to let controller work, but others only >> > need one, add one property to differentiate this. [...] >> > diff --git a/Documentation/devicetree/bindings/usb/ci-hdrc-usb2.txt b/Documentation/devicetree/bindings/usb/ci-hdrc-usb2.txt >> > index f15a317..4900092 100644 >> > --- a/Documentation/devicetree/bindings/usb/ci-hdrc-usb2.txt >> > +++ b/Documentation/devicetree/bindings/usb/ci-hdrc-usb2.txt >> > @@ -54,6 +54,9 @@ i.mx specific properties >> > argument that indicate usb controller index >> > - disable-over-current: disable over current detect >> > - external-vbus-divider: enables off-chip resistor divider for Vbus >> > +- need-three-clocks: the SoC before imx6 series (except for imx23/imx28) >> > + needs three clcoks for controller, others only need one. Without this >> > + property, the driver will consider this controller only need one clock. >> >> That's pretty ugly and unnecessary. Either use the compatible string to >> determine > > Since there are too many SoCs to use it, I just didn't want to add > judgement for platforms, and thought using feature property is simpler. > If you doesn't agree, I will use other ways. > >> if you have 3 clocks or just always try to retrieve the 3 >> clocks in the driver and fall back to 1. >> > > It is not easy to use this way, one-clock platforms have no dev_id for > clock, but three-clock platforms have. You just need to try to retrieve the 3rd clock by name. If that succeeds, retrieve clocks 1 and 2. If you can't retrieve the 3rd clock, the just get the 1st clock with no name. Rob -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html