Messages in this thread | | | From | Jean-Baptiste Maneyrol <> | Subject | Re: [PATCH 2/3] iio: imu: mpu6050: add level shifter flag | Date | Mon, 25 Sep 2023 11:14:16 +0000 |
| |
Hello,
these are very old unsupported chips, thus this is not something I can easily find. Even after doing some archaeology.
But when looking at register maps, it should only be used with MPU-9150 and not MPU-9250. I would feel much more comfortable to restrict this fix to MPU-9150 only (by testing chip_type against INV_MPU9150).
Thanks, JB
From: Andy Shevchenko <andy.shevchenko@gmail.com> Sent: Monday, September 25, 2023 13:07 To: Andreas Kemnade <andreas@kemnade.info> Cc: jic23@kernel.org <jic23@kernel.org>; lars@metafoo.de <lars@metafoo.de>; robh+dt@kernel.org <robh+dt@kernel.org>; krzysztof.kozlowski+dt@linaro.org <krzysztof.kozlowski+dt@linaro.org>; conor+dt@kernel.org <conor+dt@kernel.org>; bcousson@baylibre.com <bcousson@baylibre.com>; tony@atomide.com <tony@atomide.com>; Jean-Baptiste Maneyrol <Jean-Baptiste.Maneyrol@tdk.com>; chenhuiz@axis.com <chenhuiz@axis.com>; linux-iio@vger.kernel.org <linux-iio@vger.kernel.org>; devicetree@vger.kernel.org <devicetree@vger.kernel.org>; linux-kernel@vger.kernel.org <linux-kernel@vger.kernel.org>; linux-omap@vger.kernel.org <linux-omap@vger.kernel.org> Subject: Re: [PATCH 2/3] iio: imu: mpu6050: add level shifter flag On Mon, Sep 25, 2023 at 1: 26 AM Andreas Kemnade <andreas@ kemnade. info> wrote: > > Some boards fail in magnetometer probe if flag is not set. Which flag? Can you elaborate a bit more? Does it deserve the Fixes tag? .. . > unsigned ZjQcmQRYFpfptBannerStart This Message Is From an Untrusted Sender You have not previously corresponded with this sender. ZjQcmQRYFpfptBannerEnd On Mon, Sep 25, 2023 at 1:26 AM Andreas Kemnade <andreas@kemnade.info> wrote: > > Some boards fail in magnetometer probe if flag is not set.
Which flag? Can you elaborate a bit more?
Does it deserve the Fixes tag?
...
> unsigned int val; > int ret;
> + ret = regmap_update_bits(st->map, 0x1, 0x80, > + st->level_shifter ? 0x80 : 0);
This is a bit cryptic, what does 1 stand for?
Also
unsigned int mask = BIT(7); ... val = st->level_shifter ? mask : 0;
> + if (ret) > + return ret;
... > + st->level_shifter = device_property_present(dev, > + "invensense,level-shifter");
It was a recommendation to use _read_bool() when reading the value, while the result will be the same.
-- With Best Regards, Andy Shevchenko
| |