Re: [PATCH] net: rfkill-regulator: Add devicetree support.

From: Marc Dietrich
Date: Tue Feb 11 2014 - 03:42:20 EST


Am Montag, 10. Februar 2014, 10:18:42 schrieb Mark Rutland:
> On Fri, Feb 07, 2014 at 07:48:49PM +0000, Marek Belisko wrote:
> > Signed-off-by: NeilBrown <neilb@xxxxxxx>
> > Signed-off-by: Marek Belisko <marek@xxxxxxxxxxxxx>
> > ---
> > Based on Neil's patch and extend for documentation and bindings include.
> >
> > .../bindings/net/rfkill/rfkill-relugator.txt | 28 ++++++++++++++++
> > include/dt-bindings/net/rfkill-regulator.h | 23 +++++++++++++
> > net/rfkill/rfkill-regulator.c | 38
> > ++++++++++++++++++++++ 3 files changed, 89 insertions(+)
> > create mode 100644
> > Documentation/devicetree/bindings/net/rfkill/rfkill-relugator.txt create
> > mode 100644 include/dt-bindings/net/rfkill-regulator.h
> >
> > diff --git
> > a/Documentation/devicetree/bindings/net/rfkill/rfkill-relugator.txt
> > b/Documentation/devicetree/bindings/net/rfkill/rfkill-relugator.txt new
> > file mode 100644
> > index 0000000..cdb7dd7
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/net/rfkill/rfkill-relugator.txt
> > @@ -0,0 +1,28 @@
> > +Regulator consumer for rfkill devices
>
> What exactly is an "rfkill" device? How is it used? How does it relate
> to other devices in the DT?
>
> To me, this looks like a leak of a Linux abstraction.
>
> > +
> > +Required properties:
> > +- compatible : Must be "rfkill-regulator".
> > +- label : Name of rfkill device.
>
> What's this for? Why does this need a label in the DT? Surely this can
> be implied by the relationship to a particular radio device?
>
> > +- type : Type of rfkill device.
> > +
> > +Possible values (defined in include/dt-bindings/net/rfkill-regulator.h):
> > + RFKILL_TYPE_ALL
> > + RFKILL_TYPE_WLAN
> > + RFKILL_TYPE_BLUETOOTH
> > + RFKILL_TYPE_UWB
> > + RFKILL_TYPE_WIMAX
> > + RFKILL_TYPE_WWAN
> > + RFKILL_TYPE_GPS
> > + RFKILL_TYPE_FM
> > + RFKILL_TYPE_NFC
>
> What do these mean? Why can these not be implied by a relationship to
> any devices of these particular types?

This problem comes up from time to time. rfkill-gpio has a similar problem,
btw. You can of course list an rfkill property inside the device node where it
is connected to, but what are you going to to if there is no device node, e.g.
the device is enumerated on a bus (e.g. usb, pci, ...)?

In such cases it may be better to define a standalone rfkill node similar to
the "backlight" device, even if it just contains a gpio or regulator.

Marc

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/