Linux kernel source tree
Go to file
Greg Kroah-Hartman ffb4b4ed3e IIO: 1st set of new device support, features and cleanup for 6.13
Changes in take2:
 - Additional patch to drop the accidentally added empty file.
 - Tidy up of a duplicate include.
 
 Two merges of other trees.
 
 6.12-rc2:
 To pull in the move of unaligned.h from include/asm to include/linux
 This was to resolve issues in linux-next.
 
 pwm/duty_offset-for6.13-rc1@
 PWM infrastructure that is use di the AD7625 ADC driver.
 
 New device support
 ==================
 
 adi,ad7173
 - Add support for the AD4113 8 channel ADC.
 adi,ad7606
 - Add support for the AD7606C-16 and AD7606C-18 which have higher precision
   and support bipolar and differential channels. A lot of driver
   rework was needed to add the additional flexibility needed to support
   these parts.
 adi,ad7625
 - New driver supporting AD7625, AD7626, AD7960 and AD7961 LVDS connected
   ADCs. Interface uses a combination of a PWM control and an IIO backend
   (currently a custom FPGA IP).
 adi,ad8460
 - New driver for the ad8460 Waveform DAC. This high speed device is
   driven by a custom IP via a DMAEngine buffer.
 bosch,bmi270
 - New driver for this 6-axis IMU. A later patch adds SPI support.
 gehc,pmc-adc
 - New driver for this GE Healthcare ADC 16-channel 16 bit ADC.
 invensense,mpu6050
 - Add support for IAM-20680HT and IAM-20680HP variants of the IAM-20680
   IMU that have better specifications in various ways including larger
   FIFO sizes.
 vishay,vl6030
 - Support the veml7700, a stripped down veml6030 ambient light sensor.
 - Support the veml6035 ambient light sensor.
 
 Features
 ========
 
 liteon,ltr390
 - Allow configuration of sampling frequency
 - Support suspend and resume
 - Add interrupt support including threshold events + control over
   event reporting persistence.
 st,vl53l0x
 - Add support for continuous mode via IIO buffer support and a dataready
   trigger.
 ti,tmp0006
 - Add triggered buffer support using data ready interrupt.
 vishay,vl6030
 - Add regulator control support.
 vishay,vl6070
 - Add regulator control support.
 vishay,vl6180
 - Allow configuration of waiting between continuous samples.
 - Use the interrupt, if available, for single shot captures
 - Support continuous mode via the IIO triggered buffer interfaces.
 
 Cleanups and minor fixes
 ========================
 
 tools/event monitor
 - Free dev_dir_name.
 treewide
 - Introduce aligned_s64 type for timestamps to replace
   s64 __aligned(8). Initial use in a few drivers - many others to follow.
 - Use dev_get_platform_data() instead of open-coding the access.
 - InvenSense email address and maintainer updates to reflect
   move to the tdk domain after acquisition.
 - Switch platform drivers from remove_new() back to remove() now all
   rework this was enabling is done.
 - More use of device_for_each_child_node_scoped() to remove need for manual
   caling of fwnode_handle_put() in early exits from the loop.
 - Use IIO_MAP() macro to replace some open-coded versions.
 - Constify struct iio_map arrays.
 - Use irq_get_trigger_type(irq) rather than
   irqd_get_trigger_type(irq_get_irq_data(irq);
 core
 - unsigned to unsigned int.
 adi,ad3552r
 - Fix to low a limit on max SPI clock speed. No rush to upstream this
   one as the binding that uses the higher speed will merge via this
   tree once ready.
 adi,ad5770r
 - Use get_unaligned_le16() instead of open-coding. Note this caused
   a merge issue in linux-next as unaligned.h has moved.
 adi,ad7606
 - Use read_avail() callback to handle the various _available attributes.
 - Wrap up all data related to channel scaling into a single structure as
   the use of this gets more complex for the -16 and -18 parts.
 adi,adf4371
 - Use chip_info structures and spi_get_device_match_data()
 - Drop spi_set_drvdata() as unused.
 - Reduce scope of struct clock as only touched in probe().
 - Use dev_err_probe() where appropriate.
 adi,axi-dac
 - Improve register naming to make field and register association clearer.
 - Fix a wrong register bit.
 amlogic,meson8-saradc
 - Allow the meson8-saradc to have the amlogic,hhi-sysctrl property.
 bosch,bmp280
 - Use u8 for the DMA buffer to avoid implication of other types given it
   can contain be24 data.
 - Use unsigned types to store raw values to make it clear they cannot be
   negative.
 - Drop unnecessary check for errors after IIR filter update.
 - Support soft reset to get device to know state on driver load.
 - Use bulk reads to retrieve the humidity calibration data.
 dynaimage,al3010
 - Make sure to powerdown device in error paths.
 invensense,icm42600
 - Add missing i2c_device-id tables.
 kionix,kmx61
 - Drop ACPI IDs that are not associated with valid ACPI vendor IDs
   and for which there is no evidence they are in use in real devices.
 liteon,ltrf261a
 - Document a bad compatible that we are supporting because it is in
   the wild in the Valve Steam Deck via ACPI PRP0001.
 maxim,max1363
 - Use get_unaligned_be16() instead of open-coding. Note this caused
   a merge issue in linux-next as unaligned.h has moved.
 mediatek,mt6360
 - Use get_unaligned_be16() instead of open-coding. Note this caused
   a merge issue in linux-next as unaligned.h has moved.
 microchip,pac1921
 - Drop various unnecessary type casts that were suggested by
   Wconversion compiler warnings which we do not use in IIO.
   Remove them because they hurt readability in cases where it is clear
   not overflow can occur.
 rohm,rpr0521
 - Use iio_poll_func_store_time() rather than open-coding a similar solution.
 semtech,sx9324
 - Make sx_common_get_raw_register() local to the only code that uses it.
 - Drop unnecessary acpi.h include.
 st,vl53l0x
 - Check the part ID register and print an info message if it is not what
   is expected.
 vishay,veml6030
 - Fix DT binding file name to include vishay
 - Use regmap_set_bits() for case where all bits are set.
 - Use dev_err_probe() where appropriate.
 - Add missing delay after powering up in resume path.
 - Drop a processed accessor for the white channel as there is no public
   information to allow a specific scale to be established.
 - Use read_avail() to replace explicit custom _available attributes.
 vishay,veml6070
 - Use guard() to allow early returns.
 - Add a devm callback to unregister the i2c device.
 - Use devm_iio_device_register() to simplify removal code.
 
 Various other minor improvements not called out explicitly.
 -----BEGIN PGP SIGNATURE-----
 
 iQJFBAABCAAvFiEEbilms4eEBlKRJoGxVIU0mcT0FogFAmcSmmQRHGppYzIzQGtl
 cm5lbC5vcmcACgkQVIU0mcT0FojNOg/6A9KP3u2rhirVMp2ZEb5z2thpJL5aTGc7
 aHoPzw3TzFSyN2yBhW8kozQT1QhWp9NYcHfzRsadCrMSCnFFz9D337YNwwlBVUW8
 swxc45LtdNCKbWj9GiR57hC/OpnYfcJ2d+Ljg9EoZdLugWbOqAeGXRvuXPP6NG9c
 dl5hCnF8baQxw5PVkcYs/By903ZcMvgE5s/s1ia6tp4GPUQhqwJ95BVkebg5ACua
 p22FmbEvO6zFk4TdP8VOR4OoAMbrLci/JI+jn+URWmujB569rwEaVoJmj1q3lQus
 yTI7Ooxo+tJeW9hf87gqmT7/6Knvmg4sfHRoJbPENqWCXx7aIGVi0du/N3jASJNt
 IcRsFyrb16Zo7l3dy9lYF68ulIllf/xFck/lTW8QHjfgZlMwpX5KjcSgEBS2GlYn
 wo5Za1ja0ZPw5SAYWANpC9iX5tskLIfmlhnoOnc0vHpvjdHAdvdmTivcJAiKcMOY
 DS6dTa0330IgIeEo7Phxp+Ml+cJ0qAdeV43VajJ3cesZIkygZY0t/yqZojecci6N
 9YPMyzLe5NRcwcrhnw4laUau+7SW3vzaxFN2xVjLlelADIAk9LkdDE3dVUXq+Zhy
 1cji9H/2YjzPbqaOI7AcQSSjb/u074luSqxObt80AXXXiFxDL5n65/2rsgSIVLp8
 M5W1J4Jzl8E=
 =lBZ5
 -----END PGP SIGNATURE-----

Merge tag 'iio-for-6.13a-take2' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jic23/iio into char-misc-next

Jonathan writes:

IIO: 1st set of new device support, features and cleanup for 6.13

Changes in take2:
- Additional patch to drop the accidentally added empty file.
- Tidy up of a duplicate include.

Two merges of other trees.

6.12-rc2:
To pull in the move of unaligned.h from include/asm to include/linux
This was to resolve issues in linux-next.

pwm/duty_offset-for6.13-rc1@
PWM infrastructure that is use di the AD7625 ADC driver.

New device support
==================

adi,ad7173
- Add support for the AD4113 8 channel ADC.
adi,ad7606
- Add support for the AD7606C-16 and AD7606C-18 which have higher precision
  and support bipolar and differential channels. A lot of driver
  rework was needed to add the additional flexibility needed to support
  these parts.
adi,ad7625
- New driver supporting AD7625, AD7626, AD7960 and AD7961 LVDS connected
  ADCs. Interface uses a combination of a PWM control and an IIO backend
  (currently a custom FPGA IP).
adi,ad8460
- New driver for the ad8460 Waveform DAC. This high speed device is
  driven by a custom IP via a DMAEngine buffer.
bosch,bmi270
- New driver for this 6-axis IMU. A later patch adds SPI support.
gehc,pmc-adc
- New driver for this GE Healthcare ADC 16-channel 16 bit ADC.
invensense,mpu6050
- Add support for IAM-20680HT and IAM-20680HP variants of the IAM-20680
  IMU that have better specifications in various ways including larger
  FIFO sizes.
vishay,vl6030
- Support the veml7700, a stripped down veml6030 ambient light sensor.
- Support the veml6035 ambient light sensor.

Features
========

liteon,ltr390
- Allow configuration of sampling frequency
- Support suspend and resume
- Add interrupt support including threshold events + control over
  event reporting persistence.
st,vl53l0x
- Add support for continuous mode via IIO buffer support and a dataready
  trigger.
ti,tmp0006
- Add triggered buffer support using data ready interrupt.
vishay,vl6030
- Add regulator control support.
vishay,vl6070
- Add regulator control support.
vishay,vl6180
- Allow configuration of waiting between continuous samples.
- Use the interrupt, if available, for single shot captures
- Support continuous mode via the IIO triggered buffer interfaces.

Cleanups and minor fixes
========================

tools/event monitor
- Free dev_dir_name.
treewide
- Introduce aligned_s64 type for timestamps to replace
  s64 __aligned(8). Initial use in a few drivers - many others to follow.
- Use dev_get_platform_data() instead of open-coding the access.
- InvenSense email address and maintainer updates to reflect
  move to the tdk domain after acquisition.
- Switch platform drivers from remove_new() back to remove() now all
  rework this was enabling is done.
- More use of device_for_each_child_node_scoped() to remove need for manual
  caling of fwnode_handle_put() in early exits from the loop.
- Use IIO_MAP() macro to replace some open-coded versions.
- Constify struct iio_map arrays.
- Use irq_get_trigger_type(irq) rather than
  irqd_get_trigger_type(irq_get_irq_data(irq);
core
- unsigned to unsigned int.
adi,ad3552r
- Fix to low a limit on max SPI clock speed. No rush to upstream this
  one as the binding that uses the higher speed will merge via this
  tree once ready.
adi,ad5770r
- Use get_unaligned_le16() instead of open-coding. Note this caused
  a merge issue in linux-next as unaligned.h has moved.
adi,ad7606
- Use read_avail() callback to handle the various _available attributes.
- Wrap up all data related to channel scaling into a single structure as
  the use of this gets more complex for the -16 and -18 parts.
adi,adf4371
- Use chip_info structures and spi_get_device_match_data()
- Drop spi_set_drvdata() as unused.
- Reduce scope of struct clock as only touched in probe().
- Use dev_err_probe() where appropriate.
adi,axi-dac
- Improve register naming to make field and register association clearer.
- Fix a wrong register bit.
amlogic,meson8-saradc
- Allow the meson8-saradc to have the amlogic,hhi-sysctrl property.
bosch,bmp280
- Use u8 for the DMA buffer to avoid implication of other types given it
  can contain be24 data.
- Use unsigned types to store raw values to make it clear they cannot be
  negative.
- Drop unnecessary check for errors after IIR filter update.
- Support soft reset to get device to know state on driver load.
- Use bulk reads to retrieve the humidity calibration data.
dynaimage,al3010
- Make sure to powerdown device in error paths.
invensense,icm42600
- Add missing i2c_device-id tables.
kionix,kmx61
- Drop ACPI IDs that are not associated with valid ACPI vendor IDs
  and for which there is no evidence they are in use in real devices.
liteon,ltrf261a
- Document a bad compatible that we are supporting because it is in
  the wild in the Valve Steam Deck via ACPI PRP0001.
maxim,max1363
- Use get_unaligned_be16() instead of open-coding. Note this caused
  a merge issue in linux-next as unaligned.h has moved.
mediatek,mt6360
- Use get_unaligned_be16() instead of open-coding. Note this caused
  a merge issue in linux-next as unaligned.h has moved.
microchip,pac1921
- Drop various unnecessary type casts that were suggested by
  Wconversion compiler warnings which we do not use in IIO.
  Remove them because they hurt readability in cases where it is clear
  not overflow can occur.
rohm,rpr0521
- Use iio_poll_func_store_time() rather than open-coding a similar solution.
semtech,sx9324
- Make sx_common_get_raw_register() local to the only code that uses it.
- Drop unnecessary acpi.h include.
st,vl53l0x
- Check the part ID register and print an info message if it is not what
  is expected.
vishay,veml6030
- Fix DT binding file name to include vishay
- Use regmap_set_bits() for case where all bits are set.
- Use dev_err_probe() where appropriate.
- Add missing delay after powering up in resume path.
- Drop a processed accessor for the white channel as there is no public
  information to allow a specific scale to be established.
- Use read_avail() to replace explicit custom _available attributes.
vishay,veml6070
- Use guard() to allow early returns.
- Add a devm callback to unregister the i2c device.
- Use devm_iio_device_register() to simplify removal code.

Various other minor improvements not called out explicitly.

* tag 'iio-for-6.13a-take2' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jic23/iio: (161 commits)
  iio: imu: bmi270: Remove duplicated include in bmi270_i2c.c
  iio: adc: ad7606: Drop spurious empty file.
  iio: light: rpr0521: Use generic iio_pollfunc_store_time()
  iio: light: vl6180: Add support for Continuous Mode
  iio: light: vl6180: Added Interrupt support for single shot access
  iio: light: vl6180: Add configurable inter-measurement period support
  MAINTAINERS: add entry for VEML6030 ambient light sensor driver
  iio: light: veml6030: add support for veml7700
  dt-bindings: iio: light: veml6030: add veml7700
  iio: light: veml6035: fix read_avail in no_irq case for veml6035
  iio: dac: adi-axi-dac: update register names
  iio: dac: adi-axi-dac: fix wrong register bitfield
  docs: iio: new docs for ad7625 driver
  iio: adc: ad7625: add driver
  dt-bindings: iio: adc: add AD762x/AD796x ADCs
  iio: Convert unsigned to unsigned int
  iio: pressure: bmp280: Fix uninitialized variable
  iio: Switch back to struct platform_driver::remove()
  iio: imu: bmi323: remove redundant register definition
  iio: frequency: adf4371: make use of dev_err_probe()
  ...
2024-10-19 09:33:36 +02:00
arch ARM64: 2024-10-06 10:53:28 -07:00
block block-6.12-20241004 2024-10-04 10:43:44 -07:00
certs sign-file,extract-cert: use pkcs11 provider for OPENSSL MAJOR >= 3 2024-09-20 19:52:48 +03:00
crypto move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
Documentation dt-bindings: iio: light: veml6030: add veml7700 2024-10-15 18:59:51 +01:00
drivers IIO: 1st set of new device support, features and cleanup for 6.13 2024-10-19 09:33:36 +02:00
fs bcachefs fixes for 6.12-rc2 2024-10-05 15:18:04 -07:00
include IIO: 1st set of new device support, features and cleanup for 6.13 2024-10-19 09:33:36 +02:00
init cfi: encode cfi normalized integers + kasan/gcov bug in Kconfig 2024-09-26 21:27:27 +02:00
io_uring io_uring/net: harden multishot termination case for recv 2024-09-30 08:26:59 -06:00
ipc struct fd layout change (and conversion to accessor helpers) 2024-09-23 09:35:36 -07:00
kernel Various fixes for tracing: 2024-10-04 12:11:06 -07:00
lib slab fixes for 6.12-rc1 2024-10-04 12:05:39 -07:00
LICENSES LICENSES: add 0BSD license text 2024-09-01 20:43:24 -07:00
mm mm, slab: suppress warnings in test_leak_destroy kunit test 2024-10-02 16:28:46 +02:00
net Including fixes from ieee802154, bluetooth and netfilter. 2024-10-03 09:44:00 -07:00
rust rust: miscdevice: fix warning on c_uint to u32 cast 2024-10-15 19:11:39 +02:00
samples [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
scripts kbuild: deb-pkg: Remove blank first line from maint scripts 2024-10-07 02:36:38 +09:00
security hardening fixes for v6.12-rc2 2024-10-05 10:19:14 -07:00
sound sound fixes for 6.12-rc2 2024-10-04 11:29:46 -07:00
tools IIO: 1st set of new device support, features and cleanup for 6.13 2024-10-19 09:33:36 +02:00
usr initramfs: shorten cmd_initfs in usr/Makefile 2024-07-16 01:07:52 +09:00
virt x86: 2024-09-28 09:20:14 -07:00
.clang-format clang-format: Update with v6.11-rc1's for_each macro list 2024-08-02 13:20:31 +02:00
.cocciconfig
.editorconfig .editorconfig: remove trim_trailing_whitespace option 2024-06-13 16:47:52 +02:00
.get_maintainer.ignore Add Jeff Kirsher to .get_maintainer.ignore 2024-03-08 11:36:54 +00:00
.gitattributes .gitattributes: set diff driver for Rust source code files 2023-05-31 17:48:25 +02:00
.gitignore Kbuild updates for v6.12 2024-09-24 13:02:06 -07:00
.mailmap Summary 2024-09-24 11:08:40 -07:00
.rustfmt.toml rust: add .rustfmt.toml 2022-09-28 09:02:20 +02:00
COPYING COPYING: state that all contributions really are covered by this file 2020-02-10 13:32:20 -08:00
CREDITS MAINTAINERS: Mark powerpc spufs as orphaned 2024-08-19 21:27:56 +10:00
Kbuild Kbuild updates for v6.1 2022-10-10 12:00:45 -07:00
Kconfig kbuild: ensure full rebuild when the compiler is updated 2020-05-12 13:28:33 +09:00
MAINTAINERS IIO: 1st set of new device support, features and cleanup for 6.13 2024-10-19 09:33:36 +02:00
Makefile Linux 6.12-rc2 2024-10-06 15:32:27 -07:00
README README: Fix spelling 2024-03-18 03:36:32 -06:00

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the reStructuredText markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.