Commit c2c23dc7 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull MFD updates from Lee Jones:
 "Core Framework:
   - Change MFD support status from Supported to Maintained

  New Drivers:
   - Add support for the Intel Platform Management Component Interface
     (PMCI)

  Removed Drivers:
   - HTC PASIC3 LED/DS1WM
   - Toshiba T7L66XB, TC6387XB and TC6393XB TMIO

  New Device Support:
   - Add support for N6000 Flash to Intel M10 BMC PMCI
   - Add support for Lenovo Yoga Tab 3 to Intel CHTWC PMIC

  New Functionality:
   - Provide Reset support to Syscon

  Fix-ups:
   - Explicitly provide missing include files
   - Pass platform type data/info via the SPI/I2C/DT registration
     strategy
   - Lots of DT documentation / adaptions
   - Replace scnprintf() with preferred sysfs_emit()
   - Remove unused / superfluous code
   - Fix some trivial whitesspace / spelling / grammatical issues
   - Replace pm_power_off with new and improved
     register_sys_off_handler() API

  Bug Fixes:
   - Reintroduce RK808-clkout registration - fixing Wi-Fi and Bluetooth
   - Repair the order of AXPxxx IRQ PEK RISE/FALL definitions
   - Refuse to build CS5535 on unsupported UML architectures
   - Fix memory leaks in error return paths
   - Prevent refcount leaks in error return paths"

* tag 'mfd-next-6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (40 commits)
  dt-bindings: mfd: qcom,tcsr: Add compatible for IPQ5332
  dt-bindings: mfd: Add NXP BBNSM
  mfd: ntxec: Add version number for EC in Tolino Vision
  dt-bindings: mfd: syscon: Add mt8365-syscfg
  mfd: Remove toshiba tmio drivers
  mfd: arizona: Use pm_runtime_resume_and_get() to prevent refcnt leak
  mfd: syscon: Allow reset control for syscon devices
  dt-bindings: mfd/syscon: Add resets property
  dt-bindings: mfd: syscon: Add amd,pensando-elba-syscon compatible
  dt-bindings: mfd: qcom,tcsr: Add compatible for MSM8226
  mfd: simple-mfd-i2c: Fix incoherent comment regarding DT registration
  mfd: axp20x: Switch to the sys-off handler API
  mfd: core: Spelling s/compement/complement/
  mfd: max8925: Remove the unused function irq_to_max8925()
  mfd: qcom-pm8xxx: Remove set but unused variable 'rev'
  dt-bindings: mfd: syscon: Document GXP register compatible
  mfd: twl4030-power: Drop empty platform remove function
  mfd: twl: Fix TWL6032 phy vbus detection
  mfd: pcf50633-adc: Fix potential memleak in pcf50633_adc_async_read()
  MAINTAINERS: Move MFD from a Supported to Maintaied state
  ...
parents 06e1a81c 59c54c59
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
What:		/sys/bus/spi/devices/.../bmc_version
What:		/sys/bus/.../drivers/intel-m10-bmc/.../bmc_version
Date:		June 2020
KernelVersion:	5.10
Contact:	Xu Yilun <yilun.xu@intel.com>
@@ -6,7 +6,7 @@ Description: Read only. Returns the hardware build version of Intel
		MAX10 BMC chip.
		Format: "0x%x".

What:		/sys/bus/spi/devices/.../bmcfw_version
What:		/sys/bus/.../drivers/intel-m10-bmc/.../bmcfw_version
Date:		June 2020
KernelVersion:	5.10
Contact:	Xu Yilun <yilun.xu@intel.com>
@@ -14,7 +14,7 @@ Description: Read only. Returns the firmware version of Intel MAX10
		BMC chip.
		Format: "0x%x".

What:		/sys/bus/spi/devices/.../mac_address
What:		/sys/bus/.../drivers/intel-m10-bmc/.../mac_address
Date:		January 2021
KernelVersion:  5.12
Contact:	Russ Weight <russell.h.weight@intel.com>
@@ -25,7 +25,7 @@ Description: Read only. Returns the first MAC address in a block
		space.
		Format: "%02x:%02x:%02x:%02x:%02x:%02x".

What:		/sys/bus/spi/devices/.../mac_count
What:		/sys/bus/.../drivers/intel-m10-bmc/.../mac_count
Date:		January 2021
KernelVersion:  5.12
Contact:	Russ Weight <russell.h.weight@intel.com>
+20 −0
Original line number Diff line number Diff line
@@ -33,6 +33,9 @@ properties:
      - description:
          For implementations of the EC connected through RPMSG.
        const: google,cros-ec-rpmsg
      - description:
          For implementations of the EC connected through UART.
        const: google,cros-ec-uart

  controller-data: true

@@ -187,6 +190,15 @@ allOf:
      properties:
        mediatek,rpmsg-name: false

  - if:
      properties:
        compatible:
          not:
            contains:
              enum:
                - google,cros-ec-rpmsg
                - google,cros-ec-uart
    then:
      required:
        - reg
        - interrupts
@@ -299,4 +311,12 @@ examples:
        vdd-supply = <&pp3300_fp_mcu>;
      };
    };

  # Example for UART
  - |
    serial {
        cros-ec {
            compatible = "google,cros-ec-uart";
        };
    };
...
+101 −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/mfd/nxp,bbnsm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: NXP Battery-Backed Non-Secure Module

maintainers:
  - Jacky Bai <ping.bai@nxp.com>

description: |
  NXP BBNSM serves as non-volatile logic and storage for the system.
  it Intergrates RTC & ON/OFF control.
  The RTC can retain its state and continues counting even when the
  main chip is power down. A time alarm is generated once the most
  significant 32 bits of the real-time counter match the value in the
  Time Alarm register.
  The ON/OFF logic inside the BBNSM allows for connecting directly to
  a PMIC or other voltage regulator device. both smart PMIC mode and
  Dumb PMIC mode supported.

properties:
  compatible:
    items:
      - enum:
          - nxp,imx93-bbnsm
      - const: syscon
      - const: simple-mfd

  reg:
    maxItems: 1

  rtc:
    type: object
    $ref: /schemas/rtc/rtc.yaml#

    properties:
      compatible:
        enum:
          - nxp,imx93-bbnsm-rtc

      interrupts:
        maxItems: 1

      start-year: true

    required:
      - compatible
      - interrupts

    additionalProperties: false

  pwrkey:
    type: object
    $ref: /schemas/input/input.yaml#

    properties:
      compatible:
        enum:
          - nxp,imx93-bbnsm-pwrkey

      interrupts:
        maxItems: 1

      linux,code: true

    required:
      - compatible
      - interrupts

    additionalProperties: false

required:
  - compatible
  - reg
  - rtc
  - pwrkey

additionalProperties: false

examples:
  - |
    #include <dt-bindings/input/linux-event-codes.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>

    bbnsm: bbnsm@44440000 {
        compatible = "nxp,imx93-bbnsm", "syscon", "simple-mfd";
        reg = <0x44440000 0x10000>;

        bbnsm_rtc: rtc {
            compatible = "nxp,imx93-bbnsm-rtc";
            interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
        };

        bbnsm_pwrkey: pwrkey {
            compatible = "nxp,imx93-bbnsm-pwrkey";
            interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
            linux,code = <KEY_POWER>;
        };
    };
+7 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ properties:
          - qcom,pm8004
          - qcom,pm8005
          - qcom,pm8009
          - qcom,pm8010
          - qcom,pm8019
          - qcom,pm8028
          - qcom,pm8110
@@ -55,6 +56,10 @@ properties:
          - qcom,pm8350
          - qcom,pm8350b
          - qcom,pm8350c
          - qcom,pm8550
          - qcom,pm8550b
          - qcom,pm8550ve
          - qcom,pm8550vs
          - qcom,pm8841
          - qcom,pm8909
          - qcom,pm8916
@@ -71,10 +76,12 @@ properties:
          - qcom,pmi8998
          - qcom,pmk8002
          - qcom,pmk8350
          - qcom,pmk8550
          - qcom,pmm8155au
          - qcom,pmp8074
          - qcom,pmr735a
          - qcom,pmr735b
          - qcom,pmr735d
          - qcom,pms405
          - qcom,pmx55
          - qcom,pmx65
+2 −0
Original line number Diff line number Diff line
@@ -28,9 +28,11 @@ properties:
          - qcom,sm8150-tcsr
          - qcom,tcsr-apq8064
          - qcom,tcsr-apq8084
          - qcom,tcsr-ipq5332
          - qcom,tcsr-ipq6018
          - qcom,tcsr-ipq8064
          - qcom,tcsr-mdm9615
          - qcom,tcsr-msm8226
          - qcom,tcsr-msm8660
          - qcom,tcsr-msm8916
          - qcom,tcsr-msm8953
Loading