[PATCH 0/2] usb: exynos: Fix compatible strings used for device

Felipe Balbi balbi at ti.com
Tue Jan 22 19:48:17 EST 2013


Hi,

On Tue, Jan 22, 2013 at 11:18:55AM +0530, Vivek Gautam wrote:
> On Tue, Jan 22, 2013 at 11:05 AM, Kukjin Kim <kgene.kim at samsung.com> wrote:
> > Sylwester Nawrocki wrote:
> >>
> >> On 12/24/2012 09:13 AM, Vivek Gautam wrote:
> >> >>>> These two changes look good to me.  For both of them:
> >> >>>>
> >> >>>> Reviewed-by: Doug Anderson<dianders at chromium.org>
> >> >>>
> >> >>> Well, I have another idea. Yes, I know, specific chip name should be
> > used.
> >> >> But
> >> >>> you know the specific chip name in compatible can cause another
> >> confusion
> >> >>> on other SoC which has same IP. So I think, we need to consider to use
> >> >>> common name or any specific name not chip in compatible for IP/driver
> >> like
> >> >>> following?
> >> >>>
> >> >>> -     { .compatible = "samsung,exynos-dwc3" },
> >> >>> +     { .compatible = "samsung,synopsis-dwc3" },
> >> >>>
> >> >>> Or if any version or something, how about following?
> >> >>>
> >> >>> +     { .compatible = "samsung,dwc-v3" },
> >> >>>
> >> > Well, yes the newer SoCs with same IP using the chip name can cause some
> >> > confusion, but won't it be fine that -
> >> > "Newer parts using the same core can claim compatibility by
> >> > including the older string in the compatible list" - as quoted by Grant
> > Likely
> >> >
> >> > Or, can we try another option, using multiple compatible strings for
> >> > SoC specific
> >> > in of_match_table, so that we don't create any confusion by using same
> >> > compatible for newer SoCs also. Like,
> >> >
> >> > -     { .compatible = "samsung,exynos-dwc3" },
> >> > +     { .compatible = "samsung,exynos5250-dwc3" },
> >> > +     { .compatible =<new SoC using same IP>  },
> >>
> >> Yes, why not just use an SoC name where given IP first appeared ? I
> > believe
> >> IP revision numbers are not always well documented. Also when an IP is
> >> instantiated multiple times in specific SoC, its revision number might not
> >> be sufficient to determine the system integration details for each
> > instance.
> >> I think having version for some devices and SoC name for others just adds
> >> to the confusion. Thus using specific chip name in the compatible property
> >> seems more clear to me.
> >>
> > Well, I don't think so. Let's see the DMAC PL330. Its compatible is
> > "arm,pl330" and "arm,primecell" not SoC/Chip name. I think DWC is a same
> > case or at least similar.
> >
> > You know, the DWC is a IP from Synopsis and I _Believe_ it has a kind of
> > version and it can be used for identify.
> >
> 
> Right, DWC has version number, but that being the kind of USB controller
> (USB 2.0 and USB 3.0)
> 
> DWC2: USB High Speed controller (as also indicated in the patch from
> Paul: [RFC PATCH 0/6] DWC2 DesignWare HS OTG driver)
> DWC3: USB Super Speed controller
> 
> Is it fine if we use something like shown below, as suggested by you earlier ?
> 
> -     { .compatible = "samsung,exynos-dwc3" },
> +     { .compatible = "samsung,synopsis-dwc3" }

You're both missing a point here. The synopsys IP driver is called
dwc3.ko and that's compatible with synopsys,dwc3. Your glue layer driver
(dwc3-exynos.ko) is compatible with your platform, so
samsung,exynos-dwc3 sounds correct to me.

The glue layer is just to "abstract" away the integration details of the
IP core into a specific platform.

-- 
balbi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.ozlabs.org/pipermail/devicetree-discuss/attachments/20130122/7d84b124/attachment.sig>


More information about the devicetree-discuss mailing list