[PATCH v3 1/2] dt-bindings: pwm: Add Xilinx AXI Timer

Sean Anderson sean.anderson at seco.com
Thu May 13 14:01:02 PDT 2021



On 5/13/21 4:43 PM, Rob Herring wrote:
 > On Thu, May 13, 2021 at 10:28 AM Sean Anderson <sean.anderson at seco.com> wrote:
 >>
 >>
 >>
 >> On 5/13/21 10:33 AM, Sean Anderson wrote:
 >>   >
 >>   >
 >>   > On 5/12/21 10:16 PM, Rob Herring wrote:
 >>   >  > On Tue, May 11, 2021 at 03:12:37PM -0400, Sean Anderson wrote:
 >>   >  >> This adds a binding for the Xilinx LogiCORE IP AXI Timer. This device is
 >>   >  >> a "soft" block, so it has many parameters which would not be
 >>   >  >> configurable in most hardware. This binding is usually automatically
 >>   >  >> generated by Xilinx's tools, so the names and values of some properties
 >>   >  >> must be kept as they are. Replacement properties have been provided for
 >>   >  >> new device trees.
 >>   >  >
 >>   >  > Because you have some tool generating properties is not a reason we have
 >>   >  > to accept them upstream.
 >>   >
 >>   > These properties are already in arch/microblaze/boot/dts/system.dts and
 >>   > in the devicetree supplied to Linux by qemu. Removing these properties
 >>   > will break existing setups, which I would like to avoid.
 >
 > Already in use in upstream dts files is different than just
 > 'automatically generated' by vendor tools.
 >
 >>   >
 >>   >  > 'deprecated' is for what *we* have deprecated.
 >>   >
 >>   > Ok. I will remove that then.
 >>   >
 >>   >  >
 >>   >  > In this case, I don't really see the point in defining new properties
 >>   >  > just to have bool.
 >>   >
 >>   > I don't either, but it was requested, by Michal...
 >>
 >> Err, your comment on the original bindings was
 >>
 >>   > Can't all these be boolean?
 >
 > With no other context, yes that's what I would ask. Now you've given
 > me some context, between using the existing ones and 2 sets of
 > properties to maintain, I choose the former.

Ok, then I will go with that for v4.

I noticed some another patch regarding a similar situation [1].  Would
you prefer separate files like what is done there, or is a unified file
like this ok?

[1] https://lore.kernel.org/lkml/d36e3690ce8c5a1e53d054552e4fd8b90d6a5478.1620648868.git.geert+renesas@glider.be/T/

--Sean

 >
 >> And Michal commented
 >>
 >>   > I think in this case you should described what it is used by current
 >>   > driver in Microblaze and these options are required. The rest are by
 >>   > design optional.
 >>   > If you want to change them to different value then current binding
 >>   > should be deprecated and have any transition time with code alignment.
 >>
 >> So that is what I tried to accomplish with this revision. I also tried
 >> allowing something like
 >>
 >>          xlnx,one-timer-only = <0>; /* two timers */
 >>          xlnx,one-timer-only = <1>; /* one timer  */
 >>          xlnx,one-timer-only; /* one timer */
 >>          /* property absent means two timers */
 >>
 >> but I was unable to figure out how to express this with json-schema. I
 >> don't think it's the best design either...
 >
 > json-schema would certainly let you, but generally we don't want
 > properties to have more than 1 type.
 >
 > Rob
 >



More information about the linux-arm-kernel mailing list