Commit 0fa32879 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge tag 'iio-for-5.17b' of...

Merge tag 'iio-for-5.17b' of https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into char-misc-next

Jonathan writes:

2nd set of new device support etc for IIO in the 5.17 cycle.

A small additional set of things that just missed the previous
pull request and have mostly been through plenty of review before the
holiday period began (or are trivial).  I've not taken some other series
on the list to allow for more eyes after the holiday period.

New device support
* adi,admv1013
  - New driver for this wideband microwave upconverter including dt-bindings
    and some device specific ABI due to the need to describe phase calibrations
    of a differential channel on both i and q phases. Previously we could
    do differential or i/q but not both on the same channel. The driver
    ABI uses a workaround for core support which will do until we know if
    this is a common requirement for which a more generic solution is
    needed.

MAINTAINERS:
* Add Haibo Chen as a maintainer for various NXP SoC ADCs.

Minor cleanup:
* sunrise_co2
  - Make sure an uninitialized value isn't used to set *val in read_raw().
    Not a real bug, but a compiler or reviewer can't tell that based
    on what they can see locally.

* tag 'iio-for-5.17b' of https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio:
  iio: chemical: sunrise_co2: set val parameter only on success
  dt-bindings:iio:adc: update the maintainer of vf610-adc
  MAINTAINERS: add imx7d/imx6sx/imx6ul/imx8qxp and vf610 adc maintainer
  Documentation:ABI:testing:admv1013: add ABI docs
  dt-bindings: iio: frequency: add admv1013 doc
  iio: frequency: admv1013: add support for ADMV1013
parents 63064451 38ac2f03
Loading
Loading
Loading
Loading
+38 −0
Original line number Diff line number Diff line
What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage0-1_i_calibphase
KernelVersion:
Contact:	linux-iio@vger.kernel.org
Description:
		Read/write unscaled value for the Local Oscillatior path quadrature I phase shift.

What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage0-1_q_calibphase
KernelVersion:
Contact:	linux-iio@vger.kernel.org
Description:
		Read/write unscaled value for the Local Oscillatior path quadrature Q phase shift.

What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage0_i_calibbias
KernelVersion:
Contact:	linux-iio@vger.kernel.org
Description:
		Read/write value for the Local Oscillatior Feedthrough Offset Calibration I Positive
		side.

What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage0_q_calibbias
KernelVersion:
Contact:	linux-iio@vger.kernel.org
Description:
		Read/write value for the Local Oscillatior Feedthrough Offset Calibration Q Positive side.

What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage1_i_calibbias
KernelVersion:
Contact:	linux-iio@vger.kernel.org
Description:
		Read/write raw value for the Local Oscillatior Feedthrough Offset Calibration I Negative
		side.

What:		/sys/bus/iio/devices/iio:deviceX/in_altvoltage1_q_calibbias
KernelVersion:
Contact:	linux-iio@vger.kernel.org
Description:
		Read/write raw value for the Local Oscillatior Feedthrough Offset Calibration Q Negative
		side.
+1 −1
Original line number Diff line number Diff line
@@ -7,7 +7,7 @@ $schema: http://devicetree.org/meta-schemas/core.yaml#
title: ADC found on Freescale vf610 and similar SoCs

maintainers:
  - Fugang Duan <fugang.duan@nxp.com>
  - Haibo Chen <haibo.chen@nxp.com>

description:
  ADCs found on vf610/i.MX6slx and upward SoCs from Freescale.
+91 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/iio/frequency/adi,admv1013.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: ADMV1013 Microwave Upconverter

maintainers:
  - Antoniu Miclaus <antoniu.miclaus@analog.com>

description: |
   Wideband, microwave upconverter optimized for point to point microwave
   radio designs operating in the 24 GHz to 44 GHz frequency range.

   https://www.analog.com/en/products/admv1013.html

properties:
  compatible:
    enum:
      - adi,admv1013

  reg:
    maxItems: 1

  spi-max-frequency:
    maximum: 1000000

  clocks:
    description:
      Definition of the external clock.
    minItems: 1

  clock-names:
    items:
      - const: lo_in

  vcm-supply:
    description:
      Analog voltage regulator.

  adi,detector-enable:
    description:
      Enable the Envelope Detector available at output pins VENV_P and
      VENV_N. Disable to reduce power consumption.
    type: boolean

  adi,input-mode:
    description:
      Select the input mode.
      iq - in-phase quadrature (I/Q) input
      if - complex intermediate frequency (IF) input
    enum: [iq, if]

  adi,quad-se-mode:
    description:
      Switch the LO path from differential to single-ended operation.
      se-neg - Single-Ended Mode, Negative Side Disabled.
      se-pos - Single-Ended Mode, Positive Side Disabled.
      diff - Differential Mode.
    enum: [se-neg, se-pos, diff]

  '#clock-cells':
    const: 0

required:
  - compatible
  - reg
  - clocks
  - clock-names
  - vcm-supply

additionalProperties: false

examples:
  - |
    spi {
      #address-cells = <1>;
      #size-cells = <0>;
      admv1013@0{
        compatible = "adi,admv1013";
        reg = <0>;
        spi-max-frequency = <1000000>;
        clocks = <&admv1013_lo>;
        clock-names = "lo_in";
        vcm-supply = <&vcm>;
        adi,quad-se-mode = "diff";
        adi,detector-enable;
      };
    };
...
+12 −0
Original line number Diff line number Diff line
@@ -13719,11 +13719,23 @@ F: drivers/gpu/drm/imx/dcss/
NXP i.MX 8QXP ADC DRIVER
M:	Cai Huoqing <cai.huoqing@linux.dev>
M:	Haibo Chen <haibo.chen@nxp.com>
L:	linux-imx@nxp.com
L:	linux-iio@vger.kernel.org
S:	Maintained
F:	Documentation/devicetree/bindings/iio/adc/nxp,imx8qxp-adc.yaml
F:	drivers/iio/adc/imx8qxp-adc.c
NXP i.MX 7D/6SX/6UL AND VF610 ADC DRIVER
M:	Haibo Chen <haibo.chen@nxp.com>
L:	linux-iio@vger.kernel.org
L:	linux-imx@nxp.com
S:	Maintained
F:	Documentation/devicetree/bindings/iio/adc/fsl,imx7d-adc.yaml
F:	Documentation/devicetree/bindings/iio/adc/fsl,vf610-adc.yaml
F:	drivers/iio/adc/imx7d_adc.c
F:	drivers/iio/adc/vf610_adc.c
NXP PF8100/PF8121A/PF8200 PMIC REGULATOR DEVICE DRIVER
M:	Jagan Teki <jagan@amarulasolutions.com>
S:	Maintained
+2 −2
Original line number Diff line number Diff line
@@ -407,24 +407,24 @@ static int sunrise_read_raw(struct iio_dev *iio_dev,
			mutex_lock(&sunrise->lock);
			ret = sunrise_read_word(sunrise, SUNRISE_CO2_FILTERED_COMP_REG,
						&value);
			*val = value;
			mutex_unlock(&sunrise->lock);

			if (ret)
				return ret;

			*val = value;
			return IIO_VAL_INT;

		case IIO_TEMP:
			mutex_lock(&sunrise->lock);
			ret = sunrise_read_word(sunrise, SUNRISE_CHIP_TEMPERATURE_REG,
						&value);
			*val = value;
			mutex_unlock(&sunrise->lock);

			if (ret)
				return ret;

			*val = value;
			return IIO_VAL_INT;

		default:
Loading