-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'iio-for-6.9a' of http://git.kernel.org/pub/scm/linux/kerne…
…l/git/jic23/iio into char-misc-next Jonathan writes: IIO: 1st set of new device support, features and cleanup for 6.9 IIO Backend support =================== New approach from Nuno Sa to the problem of reuse of drivers with IIO devices that are actually the combination of a highspeed chip and an FPGA core handling the data capture and flows. It will hopefully also apply to some other split designs. The ad9467 and axi-adi drivers are converted over to this framework. New device support ================== adi,admfm2000 - New driver for this dual microwave down converter. ams,as73211 - Add support for as7331 UV sensor. richtek,rtq6056 - Add support for related parts RTQ6053 and RTQ6059 st,lsm6dsx - Add ASM330LHHXG1 accelerometer and gyro support (mainly IDs) ti,ads1298 - New driver for this medical ADC. Features ======== tests - Unit tests for the gain-time-scale helper library. bosch,bmi088 - I2C support. bosh,bmi160 - Add 10EC5280 ACPI ID. Used in a number of devices that won't get fixed. The ID is actually a PCI ID belonging to realtech. No response was received to earlier attempts to notify them of this. The manufacturers of some devices have replied to say they will not fix this incorrect ID. Add the ID and hope it isn't a problem. bosch,bmi323 - Add BOSC0200 ACPI ID. Note this is a duplicate of one in the bmc150 driver (it appears these parts share a windows driver). Both drivers perform an ID check that is safe on the other part before successfully probing. hid-sensors-als - Add color temperature and chromaticity support. Note this is a replacement for the series reverted in 6.8 that correctly handles all the potential channel combinations. honeywell,hsc030pa - Triggered buffer support (after driver cleanup). honeywell,mprls00025pa - Improved error handling. - New DT binding to allow use of part number triplet as provided in data sheet to specify equivalent of most of the binding more efficiently. - SPI support. memsic,mxc4005 - ACPI ID MDA6655 as seen in the Chuwi Minibook X 2023 ti,hdc3020 - Add threshold event support (after some driver cleanup) veml,vcnl4000 - Switch to high resolution proximity measurement. Cleanup ======= Various minor typo fixes and better use of defines etc. Treewide - Stop using ACPI_PTR(). The savings in space are small and not worth the complexity of __maybe_unused of ifdef guards. To avoid use in new IIO drivers based on copy and paste, clean it out. - cleanup.h based handling of iio_device_claim_direct_mode()/ iio_device_release_direct_mode() using scope_cond_guard(). In many drivers this is combined with other automated cleanup to give maximum simplifications. An initial set of drivers are converted over to this infrastructure. Tools - Use rewinddir() instead of seekdir() to return to start of file. core - Make iio_bus_type constant. adi,ad16475 - Use irq_get_trigger_type() instead of opencoding. adi,ad16480 - Use irq_get_trigger_type() instead of opencoding. adi,ad-sigma-delta - Avoid overwriting IRQ flags if provided by firmware. ams,as73211 - Use IIO_VAL_FRACTIONAL for scales to simplify the code and potentially improve accuracy. gts-library - Use a div64_u64() instead of a loop to do a division. honeywell,mprls00025pa - Clean up dt-binding doc. - Drop defaults when DT binding not providing values. Very unlikely these were useful given they were wrong for vast majority of supported devices. - Whitespace cleanup miramems,da280 - Use i2c_get_match_data() to replace hand rolled ACPI matching code. semtech,sx9324 - Avoid unnecessary copying of property strings. st,lsm6dsx - Improve docs, particularly wrt to making addition of new device support less noisy. st,lsm9ds0 - Use dev_err_probe() in all probe() error handling. - Improved header includes. - Tidy up termination of ID tables. ti,ads1014 - Correct upper bound on PGA (wrong value had no actual impact) ti,afe4403/4404 - devm_ useage to simplify error handling in probe() and allow() remove to be dropped. voltage-divider - Add dt-binding for io-channel-cells to allow such a device to be both an IIO consumer and IIO producer at the same time. * tag 'iio-for-6.9a' of http://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio: (106 commits) iio: imu: bmi323: Add ACPI Match Table iio: accel: bmc150: Document duplicate ACPI entries with bmi323 driver iio: adc: ti-ads1298: Add driver dt-bindings: iio: adc: ti-ads1298: Add bindings iio: pressure: hsc030pa add triggered buffer iio: pressure: hsc030pa add mandatory delay iio: pressure: hsc030pa: update datasheet URLs iio: pressure: hsc030pa: include cleanup iio: pressure: hsc030pa: use signed type to hold div_64() result dt-bindings: iio: pressure: honeywell,hsc030pa.yaml add spi props iio: st_sensors: lsm9ds0: Use common style for terminator in ID tables iio: st_sensors: lsm9ds0: Don't use "proxy" headers iio: st_sensors: lsm9ds0: Use dev_err_probe() everywhere iio: adc: adi-axi-adc: move to backend framework iio: adc: ad9467: convert to backend framework iio: add the IIO backend framework iio: buffer-dmaengine: export buffer alloc and free functions of: property: add device link support for io-backends dt-bindings: adc: axi-adc: update bindings for backend framework dt-bindings: adc: ad9467: add new io-backend property ...
- Loading branch information
Showing
112 changed files
with
5,038 additions
and
1,875 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,80 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/iio/adc/ti,ads1298.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Texas Instruments' ads1298 medical ADC chips | ||
|
||
description: | | ||
Datasheet at: https://www.ti.com/product/ADS1298 | ||
Bindings for this chip aren't complete. | ||
maintainers: | ||
- Mike Looijmans <mike.looijmans@topic.nl> | ||
|
||
properties: | ||
compatible: | ||
enum: | ||
- ti,ads1298 | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
spi-cpha: true | ||
|
||
reset-gpios: | ||
maxItems: 1 | ||
|
||
avdd-supply: | ||
description: | ||
Analog power supply, voltage between AVDD and AVSS. When providing a | ||
symmetric +/- 2.5V, the regulator should report 5V. | ||
|
||
vref-supply: | ||
description: | ||
Optional reference voltage. If omitted, internal reference is used, | ||
which is 2.4V when analog supply is below 4.4V, 4V otherwise. | ||
|
||
clocks: | ||
description: Optional 2.048 MHz external source clock on CLK pin | ||
maxItems: 1 | ||
|
||
interrupts: | ||
description: Interrupt on DRDY pin, triggers on falling edge | ||
maxItems: 1 | ||
|
||
label: true | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- avdd-supply | ||
- interrupts | ||
|
||
allOf: | ||
- $ref: /schemas/spi/spi-peripheral-props.yaml# | ||
|
||
unevaluatedProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/gpio/gpio.h> | ||
#include <dt-bindings/interrupt-controller/irq.h> | ||
spi { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
adc@1 { | ||
reg = <1>; | ||
compatible = "ti,ads1298"; | ||
label = "ads1298-1-ecg"; | ||
avdd-supply = <®_iso_5v_a>; | ||
clocks = <&clk_ads1298>; | ||
interrupt-parent = <&gpio0>; | ||
interrupts = <78 IRQ_TYPE_EDGE_FALLING>; | ||
spi-max-frequency = <20000000>; | ||
spi-cpha; | ||
}; | ||
}; | ||
... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
127 changes: 127 additions & 0 deletions
127
Documentation/devicetree/bindings/iio/frequency/adi,admfm2000.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,127 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
# Copyright 2024 Analog Devices Inc. | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/iio/frequency/adi,admfm2000.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: ADMFM2000 Dual Microwave Down Converter | ||
|
||
maintainers: | ||
- Kim Seer Paller <kimseer.paller@analog.com> | ||
|
||
description: | ||
Dual microwave down converter module with input RF and LO frequency ranges | ||
from 0.5 to 32 GHz and an output IF frequency range from 0.1 to 8 GHz. | ||
It consists of a LNA, mixer, IF filter, DSA, and IF amplifier for each down | ||
conversion path. | ||
|
||
properties: | ||
compatible: | ||
enum: | ||
- adi,admfm2000 | ||
|
||
'#address-cells': | ||
const: 1 | ||
|
||
'#size-cells': | ||
const: 0 | ||
|
||
patternProperties: | ||
"^channel@[0-1]$": | ||
type: object | ||
description: Represents a channel of the device. | ||
|
||
additionalProperties: false | ||
|
||
properties: | ||
reg: | ||
description: | ||
The channel number. | ||
minimum: 0 | ||
maximum: 1 | ||
|
||
adi,mixer-mode: | ||
description: | ||
Enable mixer mode for the channel. It downconverts RF between 5 GHz | ||
and 32 GHz to IF between 0.5 GHz and 8 GHz. If not present, the channel | ||
is in direct IF mode which bypasses the mixer and downconverts RF | ||
between 2 GHz and 8 GHz to IF between 0.5 GHz and 8 GHz. | ||
type: boolean | ||
|
||
switch-gpios: | ||
description: | | ||
GPIOs to select the RF path for the channel. The same state of CTRL-A | ||
and CTRL-B GPIOs is not permitted. | ||
CTRL-A CTRL-B CH1 Status CH2 Status | ||
1 0 Direct IF mode Mixer mode | ||
0 1 Mixer mode Direct IF mode | ||
items: | ||
- description: CTRL-A GPIO | ||
- description: CTRL-B GPIO | ||
|
||
attenuation-gpios: | ||
description: | | ||
Choice of attenuation: | ||
DSA-V4 DSA-V3 DSA-V2 DSA-V1 DSA-V0 | ||
1 1 1 1 1 0 dB | ||
1 1 1 1 0 -1 dB | ||
1 1 1 0 1 -2 dB | ||
1 1 0 1 1 -4 dB | ||
1 0 1 1 1 -8 dB | ||
0 1 1 1 1 -16 dB | ||
0 0 0 0 0 -31 dB | ||
items: | ||
- description: DSA-V0 GPIO | ||
- description: DSA-V1 GPIO | ||
- description: DSA-V2 GPIO | ||
- description: DSA-V3 GPIO | ||
- description: DSA-V4 GPIO | ||
|
||
required: | ||
- reg | ||
- switch-gpios | ||
- attenuation-gpios | ||
|
||
required: | ||
- compatible | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/gpio/gpio.h> | ||
converter { | ||
compatible = "adi,admfm2000"; | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
channel@0 { | ||
reg = <0>; | ||
switch-gpios = <&gpio 1 GPIO_ACTIVE_LOW>, | ||
<&gpio 2 GPIO_ACTIVE_HIGH>; | ||
attenuation-gpios = <&gpio 17 GPIO_ACTIVE_LOW>, | ||
<&gpio 22 GPIO_ACTIVE_LOW>, | ||
<&gpio 23 GPIO_ACTIVE_LOW>, | ||
<&gpio 24 GPIO_ACTIVE_LOW>, | ||
<&gpio 25 GPIO_ACTIVE_LOW>; | ||
}; | ||
channel@1 { | ||
reg = <1>; | ||
adi,mixer-mode; | ||
switch-gpios = <&gpio 3 GPIO_ACTIVE_LOW>, | ||
<&gpio 4 GPIO_ACTIVE_HIGH>; | ||
attenuation-gpios = <&gpio 0 GPIO_ACTIVE_LOW>, | ||
<&gpio 5 GPIO_ACTIVE_LOW>, | ||
<&gpio 6 GPIO_ACTIVE_LOW>, | ||
<&gpio 16 GPIO_ACTIVE_LOW>, | ||
<&gpio 26 GPIO_ACTIVE_LOW>; | ||
}; | ||
}; | ||
... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.