Commit 83bd8929 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull char/misc/IIO driver updates from Greg KH:
 "Here is the big set of char/misc/iio driver updates for 6.19-rc1. Lots
  of stuff in here including:

   - lots of IIO driver updates, cleanups, and additions

   - large interconnect driver changes as they get converted over to a
     dynamic system of ids

   - coresight driver updates

   - mwave driver updates

   - binder driver updates and changes

   - comedi driver fixes now that the fuzzers are being set loose on
     them

   - nvmem driver updates

   - new uio driver addition

   - lots of other small char/misc driver updates, full details in the
     shortlog

  All of these have been in linux-next for a while now"

* tag 'char-misc-6.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (304 commits)
  char: applicom: fix NULL pointer dereference in ac_ioctl
  hangcheck-timer: fix coding style spacing
  hangcheck-timer: Replace %Ld with %lld
  hangcheck-timer: replace printk(KERN_CRIT) with pr_crit
  uio: Add SVA support for PCI devices via uio_pci_generic_sva.c
  dt-bindings: slimbus: fix warning from example
  intel_th: Fix error handling in intel_th_output_open
  misc: rp1: Fix an error handling path in rp1_probe()
  char: xillybus: add WQ_UNBOUND to alloc_workqueue users
  misc: bh1770glc: use pm_runtime_resume_and_get() in power_state_store
  misc: cb710: Fix a NULL vs IS_ERR() check in probe()
  mux: mmio: Add suspend and resume support
  virt: acrn: split acrn_mmio_dev_res out of acrn_mmiodev
  greybus: gb-beagleplay: Fix timeout handling in bootloader functions
  greybus: add WQ_PERCPU to alloc_workqueue users
  char/mwave: drop typedefs
  char/mwave: drop printk wrapper
  char/mwave: remove printk tracing
  char/mwave: remove unneeded fops
  char/mwave: remove MWAVE_FUTZ_WITH_OTHER_DEVICES ifdeffery
  ...
parents 701d7d78 82d12088
Loading
Loading
Loading
Loading
+36 −0
Original line number Diff line number Diff line
@@ -898,6 +898,7 @@ What: /sys/.../iio:deviceX/events/in_tempY_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_tempY_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_capacitanceY_thresh_rising_en
What:		/sys/.../iio:deviceX/events/in_capacitanceY_thresh_falling_en
What:		/sys/.../iio:deviceX/events/in_pressure_thresh_rising_en
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
@@ -926,6 +927,7 @@ What: /sys/.../iio:deviceX/events/in_accel_y_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_y_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_accel_z_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_z_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_accel_x&y&z_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_anglvel_x_roc_rising_en
What:		/sys/.../iio:deviceX/events/in_anglvel_x_roc_falling_en
What:		/sys/.../iio:deviceX/events/in_anglvel_y_roc_rising_en
@@ -1001,6 +1003,7 @@ Description:
		to the raw signal, allowing slow tracking to resume and the
		adaptive threshold event detection to function as expected.

What:		/sys/.../events/in_accel_mag_adaptive_rising_value
What:		/sys/.../events/in_accel_thresh_rising_value
What:		/sys/.../events/in_accel_thresh_falling_value
What:		/sys/.../events/in_accel_x_raw_thresh_rising_value
@@ -1045,6 +1048,7 @@ What: /sys/.../events/in_capacitanceY_thresh_rising_value
What:		/sys/.../events/in_capacitanceY_thresh_falling_value
What:		/sys/.../events/in_capacitanceY_thresh_adaptive_rising_value
What:		/sys/.../events/in_capacitanceY_thresh_falling_rising_value
What:		/sys/.../events/in_pressure_thresh_rising_value
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
@@ -1147,6 +1151,7 @@ Description:
		will get activated once in_voltage0_raw goes above 1200 and will become
		deactivated again once the value falls below 1150.

What:		/sys/.../events/in_accel_roc_rising_value
What:		/sys/.../events/in_accel_x_raw_roc_rising_value
What:		/sys/.../events/in_accel_x_raw_roc_falling_value
What:		/sys/.../events/in_accel_y_raw_roc_rising_value
@@ -1193,6 +1198,8 @@ Description:
		value is in raw device units or in processed units (as _raw
		and _input do on sysfs direct channel read attributes).

What:		/sys/.../events/in_accel_mag_adaptive_rising_period
What:		/sys/.../events/in_accel_roc_rising_period
What:		/sys/.../events/in_accel_x_thresh_rising_period
What:		/sys/.../events/in_accel_x_thresh_falling_period
What:		/sys/.../events/in_accel_x_roc_rising_period
@@ -1362,6 +1369,15 @@ Description:
		number or direction is not specified, applies to all channels of
		this type.

What:		/sys/.../iio:deviceX/events/in_accel_x_mag_adaptive_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_y_mag_adaptive_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_z_mag_adaptive_rising_en
KernelVersion:	2.6.37
Contact:	linux-iio@vger.kernel.org
Description:
		Similar to in_accel_x_thresh[_rising|_falling]_en, but here the
		magnitude of the channel is compared to the adaptive threshold.

What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_en
What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_rising_en
What:		/sys/.../iio:deviceX/events/in_accel_mag_referenced_falling_en
@@ -2422,3 +2438,23 @@ Description:
		Value representing the user's attention to the system expressed
		in units as percentage. This usually means if the user is
		looking at the screen or not.

What:		/sys/.../events/in_accel_value_available
KernelVersion:	6.18
Contact:	linux-iio@vger.kernel.org
Description:
		List of available threshold values for acceleration event
		generation. Applies to all event types on in_accel channels.
		Units after application of scale and offset are m/s^2.
		Expressed as:

		- a range specified as "[min step max]"

What:		/sys/.../events/in_accel_period_available
KernelVersion:	6.18
Contact:	linux-iio@vger.kernel.org
Description:
		List of available periods for accelerometer event detection in
		seconds, expressed as:

		- a range specified as "[min step max]"
+29 −0
Original line number Diff line number Diff line
What:		/sys/bus/pci/drivers/uio_pci_sva/<pci_dev>/pasid
Date:		September 2025
Contact:	Yaxing Guo <guoyaxing@bosc.ac.cn>
Description:
		Process Address Space ID (PASID) assigned by IOMMU driver to
		the device for use with Shared Virtual Addressing (SVA).

		This read-only attribute exposes the PASID (A 20-bit identifier
		used in PCIe Address Translation Services and iommu table walks)
		allocated by the IOMMU driver during sva device binding.

		User-space UIO applications must read this attribute to obtain
		the PASID and program it into the device's configuration registers.
		This enables the device to perform DMA using user-space virtual
		address, with address translation handled by IOMMU.

		UIO User-space applications must:
		- Opening device and Mapping the device's register space via /dev/uioX
		(This triggers the IOMMU driver to allocate the PASID)
		- Reading the PASID from sysfs
		- Writing the PASID to a device-specific register (with example offset)
		The code may be like:

		map = mmap(..., "/dev/uio0", ...);

		f = fopen("/sys/.../pasid", "r");
		fscanf(f, "%d", &pasid);

		map[REG_PASID_OFFSET] = pasid;
+20 −3
Original line number Diff line number Diff line
@@ -36,7 +36,10 @@ properties:
  $nodename:
    pattern: "^tpdm(@[0-9a-f]+)$"
  compatible:
    items:
    oneOf:
      - items:
          - const: qcom,coresight-static-tpdm
      - items:
          - const: qcom,coresight-tpdm
          - const: arm,primecell

@@ -147,4 +150,18 @@ examples:
        };
      };
    };

    turing-llm-tpdm {
      compatible = "qcom,coresight-static-tpdm";

      qcom,cmb-element-bits = <32>;

      out-ports {
        port {
         turing_llm_tpdm_out: endpoint {
           remote-endpoint = <&turing0_funnel_in1>;
         };
        };
      };
    };
...
+2 −2
Original line number Diff line number Diff line
@@ -210,9 +210,9 @@ description: |
  FPGA Bridges that exist on the FPGA fabric prior to the partial reconfiguration.

  --
  [1] www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/ug/ug_partrecon.pdf
  [1] https://www.intel.com/programmable/technical-pdfs/683404.pdf
  [2] tspace.library.utoronto.ca/bitstream/1807/67932/1/Byma_Stuart_A_201411_MAS_thesis.pdf
  [3] https://www.xilinx.com/support/documentation/sw_manuals/xilinx14_1/ug702.pdf
  [3] https://docs.amd.com/v/u/en-US/ug702

properties:
  $nodename:
+7 −4
Original line number Diff line number Diff line
@@ -35,15 +35,17 @@ properties:
  spi-3wire: true

  interrupts:
    maxItems: 1
    minItems: 1
    maxItems: 2

  interrupt-names:
    minItems: 1
    items:
      - enum: [INT1, INT2]
      - const: INT2

dependencies:
  interrupts: [ interrupt-names ]
  interrupt-names: [ interrupts ]

required:
  - compatible
@@ -84,7 +86,8 @@ examples:
            spi-cpol;
            spi-cpha;
            interrupt-parent = <&gpio0>;
            interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
            interrupt-names = "INT2";
            interrupts = <0 IRQ_TYPE_LEVEL_HIGH>,
                         <1 IRQ_TYPE_LEVEL_HIGH>;
            interrupt-names = "INT1", "INT2";
        };
    };
Loading