[PATCH v3 1/3] dt-bindings: net: smsc, lan91c111 convert to schema

Rob Herring robh at kernel.org
Wed Apr 6 07:21:08 PDT 2022


On Thu, Mar 31, 2022 at 09:11:46PM +0100, Rui Miguel Silva wrote:
> Hi Andre,
> Thanks for your review.
> 
> On Thu, Mar 31, 2022 at 04:44:52PM +0100, Andre Przywara wrote:
> > On Wed, 30 Mar 2022 14:10:51 +0100
> > Rui Miguel Silva <rui.silva at linaro.org> wrote:
> > 
> > Hi,
> > 
> > > Convert the smsc lan91c9x and lan91c1xx controller device tree
> > > bindings documentation to json-schema.
> > > 
> > > Signed-off-by: Rui Miguel Silva <rui.silva at linaro.org>
> > > ---
> > >  .../bindings/net/smsc,lan91c111.yaml          | 61 +++++++++++++++++++
> > >  .../bindings/net/smsc-lan91c111.txt           | 17 ------
> > >  2 files changed, 61 insertions(+), 17 deletions(-)
> > >  create mode 100644 Documentation/devicetree/bindings/net/smsc,lan91c111.yaml
> > >  delete mode 100644 Documentation/devicetree/bindings/net/smsc-lan91c111.txt
> > > 
> > > diff --git a/Documentation/devicetree/bindings/net/smsc,lan91c111.yaml b/Documentation/devicetree/bindings/net/smsc,lan91c111.yaml
> > > new file mode 100644
> > > index 000000000000..1730284430bc
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/net/smsc,lan91c111.yaml
> > > @@ -0,0 +1,61 @@
> > > +# SPDX-License-Identifier: GPL-2.0
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/net/smsc,lan91c111.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: Smart Mixed-Signal Connectivity (SMSC) LAN91C9x/91C1xx Controller
> > > +
> > > +maintainers:
> > > +  - Nicolas Pitre <nico at fluxnic.net>
> > > +
> > > +allOf:
> > > +  - $ref: ethernet-controller.yaml#
> > > +
> > > +properties:
> > > +  compatible:
> > > +    const: smsc,lan91c111
> > > +
> > > +  reg:
> > > +    maxItems: 1
> > > +
> > > +  interrupts:
> > > +    maxItems: 1
> > > +
> > > +  reg-shift: true
> > > +
> > > +  reg-io-width:
> > > +    enum: [ 1, 2, 4 ]
> > 
> > The old binding spoke of a possible mask, so you could have "6" here to
> > signify that your hardware can do both 16 and 32-bit accesses, IIUC.
> > And from quickly glancing through the Linux driver it seems to support
> > this idea as well.
> > So shall this be:
> >        minimum: 1
> >        maximum: 7
> > instead?
> 
> I see your point, but going down that rabbit hole, in the smc91x.h
> which define the macros for register access, I see, IIUC:
> 1. 8 or 16 bit access are mandatory (means value 4 only for
>    reg-io-width is not valid)
> 2. All 8 and 16 bit are exclusive, so I think value 3 and 7 here
>    don't make sense either.
> 
> So, possible values enum: [ 1, 2, 5, 6 ]
> 
> let me know your thoughts on this

'reg-io-width' is a common property and treating it as a mask would be a 
change. We also have 0 cases of doing that in in-tree dts files. So I 
would keep this as it was and revisit it if and when needed.

Rob



More information about the linux-arm-kernel mailing list