Re: [PATCH v4 0/4] Add i2c driver for Bosch BMI260 IMU

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 27 Oct 2024 10:20:21 -0700
Justin Weiss <justin@xxxxxxxxxxxxxxx> 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. To avoid conflicts with the bmi160 driver, this driver will not
> probe if it detects a BMI160 chip ID.
> 
> 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@xxxxxxxxxxxxxxx>

Applied with a few tweaks thanks to Andy's review.

I'll push this out as testing to let 0-day poke at it before it goes
into linux-next in a few days time.

Thanks,

Jonathan

> ---
> 
> Changelog:
> 
> V4
> - Move triggered buffer and attributes patches to the front of the set
> - Add more detailed commit message to DT documentation patch
> - Remove ACPI IDs from SPI driver
> - Remove 10EC5280 and BMI0260 ACPI IDs from I2C driver
> - Add DSDT excerpt for BMI0160 ACPI ID
> 
> V3
> https://lore.kernel.org/lkml/20241020220011.212395-1-justin@xxxxxxxxxxxxxxx/
> - Fix: Remove SCALE and FREQUENCY attributes
> - Use separate configuration structures instead of an array
> - Add bmi260 as compatible ID in bmi270 dt binding doc
> - Check chip ID against value in configuration instead of constant
> - Update comment for DMA alignment
> - Remove unreachable return statement
> 
> V2
> https://lore.kernel.org/all/20241018233723.28757-1-justin@xxxxxxxxxxxxxxx/
> - Fix commit titles
> - Fix: Change FREQUENCY to SAMP_FREQ
> - Split chip_info refactor into a separate commit from adding bmi260
> - Only fail probe when BMI160 is detected
> - Update chip_info based on detected chip ID
> - Add BMI260 to DT documentation
> - Add BMI260 to of_device_id
> - Add expected BMI260 ACPI ID to the SPI driver
> - Remove unused/unexpected BMI260 ACPI IDs
> - Remove trailing comma for null terminators
> - Use DMA_MINALIGN for channel buffer
> - Read channels in bulk
> - Improve for loops for detecting scale / odr attrs
> - Add missing masks
> - Use FIELD_GET
> - Use read_avail instead of custom attrs
> - Misc. formatting and line wrapping improvements
> 
> V1
> https://lore.kernel.org/all/20241011153751.65152-1-justin@xxxxxxxxxxxxxxx/
> 
> Justin Weiss (4):
>   iio: imu: bmi270: Add triggered buffer for Bosch BMI270 IMU
>   iio: imu: bmi270: Add scale and sampling frequency to BMI270 IMU
>   dt-bindings: iio: imu: bmi270: Add Bosch BMI260
>   iio: imu: bmi270: Add support for BMI260
> 
>  .../bindings/iio/imu/bosch,bmi270.yaml        |   4 +-
>  drivers/iio/imu/bmi270/Kconfig                |   1 +
>  drivers/iio/imu/bmi270/bmi270.h               |  10 +
>  drivers/iio/imu/bmi270/bmi270_core.c          | 424 +++++++++++++++++-
>  drivers/iio/imu/bmi270/bmi270_i2c.c           |   9 +
>  drivers/iio/imu/bmi270/bmi270_spi.c           |   2 +
>  6 files changed, 448 insertions(+), 2 deletions(-)
> 
> 
> base-commit: 9090ececac9ff1e22fb7e042f3c886990a8fb090





[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux