From: Jonathan Cameron <jic23@kernel.org>
To: Justin Weiss <justin@justinweiss.com>
Cc: "Alex Lanzano" <lanzano.alex@gmail.com>,
"Lars-Peter Clausen" <lars@metafoo.de>,
linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org,
"Derek J . Clark" <derekjohn.clark@gmail.com>,
"Philip Müller" <philm@manjaro.org>
Subject: Re: [PATCH 0/3] Add i2c driver for Bosch BMI260 IMU
Date: Sat, 12 Oct 2024 11:57:43 +0100 [thread overview]
Message-ID: <20241012115743.4a878daa@jic23-huawei> (raw)
In-Reply-To: <20241011153751.65152-1-justin@justinweiss.com>
On Fri, 11 Oct 2024 08:37:46 -0700
Justin Weiss <justin@justinweiss.com> wrote:
> Add support for the Bosch BMI260 IMU to the BMI270 device driver.
>
> The BMI270 and BMI260 have nearly identical register maps, but have
> different chip IDs and firmware.
>
> The BMI260 is the IMU on a number of handheld PCs. Unfortunately,
> these devices often misidentify it in ACPI as a BMI160 ("BMI0160," for
> example), and it can only be correctly identified using the chip
> ID. I've changed the driver to fail if the chip ID isn't recognized so
> the firmware initialization data isn't sent to incompatible devices.
So just to check, is the firmware always specific to an individual chip?
Normally we strongly resist hard checks on mismatched IDs because they break
the option for using fallback compatibles to get some support on older
kernels for newer devices, but if the firmware is locked to a
device then that is a good justification. Fallback compatibles in DT
will never work here.
Note that means you need a specific compatible in
Documentation/devicetree/bindings/iio/imu/bosch,bmi270.yaml
Technically you could match on a single ID and figure it out, but that
will lead to potential confusion if an older kernel is used with a binding
written against current kernel and the driver just doesn't work. Not a regression
but in my view inelegant.
Make sure you include this detail about specific firmware selection in there
as well.
Jonathan
>
> Also add triggered buffer and scale / sampling frequency attributes,
> which the input tools commonly used on handheld PCs require to support
> IMUs.
>
> Like the BMI270, the BMI260 requires firmware to be provided.
>
> Signed-off-by: Justin Weiss <justin@justinweiss.com>
> ---
>
> Justin Weiss (3):
> iio: imu: Add i2c driver for bmi260 imu
> iio: imu: Add triggered buffer for Bosch BMI270 IMU
> iio: imu: Add scale and sampling frequency to BMI270 IMU
>
> drivers/iio/imu/bmi270/Kconfig | 1 +
> drivers/iio/imu/bmi270/bmi270.h | 24 +-
> drivers/iio/imu/bmi270/bmi270_core.c | 369 ++++++++++++++++++++++++++-
> drivers/iio/imu/bmi270/bmi270_i2c.c | 22 +-
> drivers/iio/imu/bmi270/bmi270_spi.c | 11 +-
> 5 files changed, 413 insertions(+), 14 deletions(-)
>
>
> base-commit: 96be67caa0f0420d4128cb67f07bbd7a6f49e03a
next prev parent reply other threads:[~2024-10-12 10:57 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-11 15:37 Justin Weiss
2024-10-11 15:37 ` [PATCH 1/3] iio: imu: Add i2c driver for bmi260 imu Justin Weiss
2024-10-12 11:08 ` Jonathan Cameron
2024-10-13 2:41 ` Justin Weiss
2024-10-13 15:14 ` Jonathan Cameron
2024-10-13 20:36 ` Justin Weiss
2024-10-14 18:50 ` Jonathan Cameron
2024-10-11 15:37 ` [PATCH 2/3] iio: imu: Add triggered buffer for Bosch BMI270 IMU Justin Weiss
2024-10-12 11:18 ` Jonathan Cameron
2024-10-13 2:43 ` Justin Weiss
2024-10-13 15:17 ` Jonathan Cameron
2024-10-13 20:54 ` Justin Weiss
2024-10-14 19:01 ` Jonathan Cameron
2024-10-11 15:37 ` [PATCH 3/3] iio: imu: Add scale and sampling frequency to " Justin Weiss
2024-10-12 11:35 ` Jonathan Cameron
2024-10-13 2:45 ` Justin Weiss
2024-10-13 15:40 ` Jonathan Cameron
2024-10-13 20:55 ` Justin Weiss
2024-10-14 19:11 ` Jonathan Cameron
2024-10-16 1:20 ` Justin Weiss
2024-10-18 18:02 ` Jonathan Cameron
2024-10-12 10:57 ` Jonathan Cameron [this message]
2024-10-13 2:36 ` [PATCH 0/3] Add i2c driver for Bosch BMI260 IMU Justin Weiss
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241012115743.4a878daa@jic23-huawei \
--to=jic23@kernel.org \
--cc=derekjohn.clark@gmail.com \
--cc=justin@justinweiss.com \
--cc=lanzano.alex@gmail.com \
--cc=lars@metafoo.de \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=philm@manjaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®