Hi Sean, Sean Anderson wrote: > Hi Thinh, > > On 1/18/22 3:00 PM, Thinh Nguyen wrote: >> Sean Anderson wrote: >>> Hi Thinh, >>> >>> On 1/18/22 2:46 PM, Thinh Nguyen wrote: >>>> Hi Sean, >>>> >>>> Baruch Siach wrote: >>>>> Hi Sean, Thinh, >>>>> >>>>> On Fri, Jan 14 2022, Sean Anderson wrote: >>>>>> This is a rework of patches 3-5 of [1]. It attempts to correctly >>>>>> program >>>>>> REFCLKPER and REFCLK_FLADJ based on the reference clock frequency. >>>>>> Since >>>>>> we no longer need a special property duplicating this configuration, >>>>>> snps,ref-clock-period-ns is deprecated. >>>>>> >>>>>> Please test this! Patches 3/4 in this series have the effect of >>>>>> programming REFCLKPER and REFCLK_FLADJ on boards which already >>>>>> configure >>>>>> the "ref" clock. I have build tested, but not much else. >>>>>> >>>>>> [1] >>>>>> https://urldefense.com/v3/__https://lore.kernel.org/linux-usb/20220114044230.2677283-1-robert.hancock@xxxxxxxxxx/__;!!A4F2R9G_pg!M3zKxDZC9a_etqzXo7GSEMTHRWfc1wR_84wwM4-fShiA35CsGcxcTEffHPbprbdC4d2R$ >>>>>> >>>>>> >>>>> >>>>> Thinh, you suggested the dedicated DT property for the reference >>>>> clock: >>>>> >>>>> >>>>> https://urldefense.com/v3/__https://lore.kernel.org/all/d5acb192-80b9-36f7-43f5-81f21c4e6ba0@xxxxxxxxxxxx/__;!!A4F2R9G_pg!M3zKxDZC9a_etqzXo7GSEMTHRWfc1wR_84wwM4-fShiA35CsGcxcTEffHPbprbpOFmvX$ >>>>> >>>>> >>>>> >>>>> Can you comment on this series? >>>>> >>>> >>>> Unless there's a good way to pass this information for PCI devices, my >>>> opinion hasn't changed. (Btw, I don't think creating a dummy clock >>>> provider and its dummy ops is a good solution as seems to complicate >>>> and >>>> bloat the PCI glue drivers). >>> >>> Can you explain your situation a bit more? I'm not sure how you can >>> access a device tree property but not add a fixed-rate clock. >>> >>> --Sean >> >> Currently for dwc3 pci devices, we have glue drivers that create a >> platform_device with specific properties to pass to the dwc3 core >> driver. Without a ref clock property, we would need another way to pass >> this information to the core driver or another way for the dwc3 core >> driver to check for specific pci device's properties and quirks. > > The primary problem with the existing binding is that it does not > contain enough information to calculate the fractional period. With the > frequency, we can calculate the correct values for the registers without > needing an additional binding. So we need to transition to some kind of > frequency-based system. So perhaps we should add a "ref-clock-frequency" > property and use that as a default for when the clock is missing. > Not sure about others, but that's fine with me. The other solution is to rework the dwc3 drivers as Robert noted, but that requires some work. Thanks, Thinh