Re: [PATCH] dt-bindings: iio: bmc150_magn: Document missing compatibles
From: Jonathan Cameron
Date: Sat Jun 27 2020 - 10:57:26 EST
On Mon, 22 Jun 2020 07:19:40 +0200
Krzysztof Kozlowski <krzk@xxxxxxxxxx> wrote:
> On Sat, Jun 20, 2020 at 04:40:49PM +0100, Jonathan Cameron wrote:
> > On Wed, 17 Jun 2020 12:12:59 +0200
> > Krzysztof Kozlowski <krzk@xxxxxxxxxx> wrote:
> >
> > > The driver supports also BMC156B and BMM150B so document the compatibles
> > > for these devices.
> > >
> > > Fixes: 9d75db36df14 ("iio: magn: Add support for BMM150 magnetometer")
> > > Cc: <stable@xxxxxxxxxxxxxxx>
> > > Signed-off-by: Krzysztof Kozlowski <krzk@xxxxxxxxxx>
> > >
> > > ---
> > >
> > > The fixes tag is not accurate but at least offer some backporting.
> >
> > I'm not sure we generally bother backporting a missing section of binding
> > documentation. Particularly as this doc isn't in yaml yet so it's not
> > as though any automated checking is likely to be occurring.
> >
> > Rob, any views on backporting this sort of missing id addition?
> >
> > One side comment here is that the devices that are magnetometers only
> > should never have had the _magn prefix in their compatibles. We only
> > do that for devices in incorporating several sensors in one package
> > (like the bmc150) where we have multiple drivers for the different
> > sensors incorporated. We are too late to fix that now though. It
> > may make sense to mark the _magn variants deprecated though and
> > add the ones without the _magn postfix.
>
> I can add proper compatibles and mark these as deprecated but actually
> the driver should not have additional compatibles in first place - all
> devices are just compatible with bosch,bmc150.
Why not? Whilst the devices may be compatible in theory, it's not unusual
for subtle differences to emerge later. As such we tend to at least
support the most specific compatible possible for a part - though we
can use fallback compatibles.
>
> Therefore I can just add one new compatible: "bosch,bmc156" and mark the
> last two deprecated.
Sorry. I missed this earlier in the week. The bmc156 is a SIP combining
separate silicon for the magnetometer and accelerometer. Hence that one
should have the _magn extension as we will (I think) be loading two drivers
for the same part number. The bmm part however is just a magnetometer
so doesn't need the postfix.
>
> Best regards,
> Krzysztof
>
>
> >
> > > ---
> > > .../devicetree/bindings/iio/magnetometer/bmc150_magn.txt | 5 ++++-
> > > 1 file changed, 4 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/Documentation/devicetree/bindings/iio/magnetometer/bmc150_magn.txt b/Documentation/devicetree/bindings/iio/magnetometer/bmc150_magn.txt
> > > index fd5fca90fb39..7469073022db 100644
> > > --- a/Documentation/devicetree/bindings/iio/magnetometer/bmc150_magn.txt
> > > +++ b/Documentation/devicetree/bindings/iio/magnetometer/bmc150_magn.txt
> > > @@ -4,7 +4,10 @@ http://ae-bst.resource.bosch.com/media/products/dokumente/bmc150/BST-BMC150-DS00
> > >
> > > Required properties:
> > >
> > > - - compatible : should be "bosch,bmc150_magn"
> > > + - compatible : should be one of:
> > > + "bosch,bmc150_magn"
> > > + "bosch,bmc156_magn"
> > > + "bosch,bmm150_magn"
> > > - reg : the I2C address of the magnetometer
> > >
> > > Optional properties:
> >