mirror of
https://github.com/armbian/linux-cix.git
synced 2026-01-06 12:30:45 -08:00
Merge tag 'mfd-next-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd
Pull MFD updates from Lee Jones:
"Core Framework:
- Add support for Software Nodes to MFD Core
- Remove support for Device Properties from MFD Core
- Use standard APIs in MFD Core
New Drivers:
- Add support for ROHM BD9576MUF and BD9573MUF PMICs
- Add support for Netronix Embedded Controller, PWM and RTC
- Add support for Actions Semi ATC260x PMICs and OnKey
New Device Support:
- Add support for DG1 PCIe Graphics Card to Intel PMT
- Add support for ROHM BD71815 PMIC to ROHM BD71828
- Add support for Tolino Shine 2 HD to Netronix Embedded Controller
- Add support for AX10 BMC Secure Updates to Intel M10 BMC
Removed Device Support:
- Remove Arizona Extcon support from MFD
- Remove ST-E AB8500 Power Supply code from MFD
- Remove AB3100 altogether
New Functionality:
- Add support for SMBus and I2C modes to Dialog DA9063
- Switch to using Software Nodes in Intel (various)
New/converted Device Tree bindings:
- rohm bd71815-pmic, rohm bd9576-pmic, netronix ntxec, actions
atc260x, ricoh rn5t618, qcom pm8xxx
- Fix-ups:
- Fix error handling/path; intel_pmt
- Simplify code; rohm-bd718x7, ab8500-core, intel-m10-bmc
- Trivial clean-ups (reordering, spelling); rohm-generic, rn5t618,
max8997
- Use correct data-type; db8500-prcmu
- Remove superfluous code; lp87565, intel_quark_i2c_gpi, lpc_sch, twl
- Use generic APIs/defines; lm3533-core, intel_quark_i2c_gpio
- Regmap related fix-ups; intel-m10-bmc, sec-core
- Reorder resource freeing during remove; intel_quark_i2c_gpio
- Make table indexing more robust; intel_quark_i2c_gpio
- Fix reference imbalances; arizona-irq
- Staticify and (un)constify things; arizona-spi, stmpe, ene-kb3930,
intel-lpss-acpi, intel-lpss-pci, atc260x-i2c, intel_quark_i2c_gpio
Bug Fixes:
- Fix incorrect (register) values; intel-m10-bmc
- Kconfig related fixes; ABX500_CORE
- Do not clear the Auto Reload Register; stm32-timers"
* tag 'mfd-next-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (84 commits)
mfd: intel-m10-bmc: Add support for MAX10 BMC Secure Updates
Revert "mfd: max8997: Add of_compatible to Extcon and Charger mfd_cell"
mfd: twl: Remove unused inline function twl4030charger_usb_en()
dt-bindings: mfd: Convert pm8xxx bindings to yaml
dt-bindings: mfd: Add compatible for pmk8350 rtc
i2c: designware: Get rid of legacy platform data
mfd: intel_quark_i2c_gpio: Convert I²C to use software nodes
mfd: lpc_sch: Partially revert "Add support for Intel Quark X1000"
mfd: arizona: Fix rumtime PM imbalance on error
mfd: max8997: Replace 8998 with 8997
mfd: core: Use acpi_find_child_device() for child devices lookup
mfd: intel_quark_i2c_gpio: Don't play dirty trick with const
mfd: intel_quark_i2c_gpio: Enable MSI interrupt
mfd: intel_quark_i2c_gpio: Reuse BAR definitions for MFD cell indexing
mfd: ntxec: Support for EC in Tolino Shine 2 HD
mfd: stm32-timers: Avoid clearing auto reload register
mfd: intel_quark_i2c_gpio: Replace I²C speeds with descriptive definitions
mfd: intel_quark_i2c_gpio: Remove unused struct device member
mfd: intel_quark_i2c_gpio: Unregister resources in reversed order
mfd: Kconfig: ABX500_CORE should depend on ARCH_U8500
...
This commit is contained in:
3
CREDITS
3
CREDITS
@@ -1933,6 +1933,9 @@ N: Kukjin Kim
|
||||
E: kgene@kernel.org
|
||||
D: Samsung S3C, S5P and Exynos ARM architectures
|
||||
|
||||
N: Milo Kim
|
||||
D: TI LP855x, LP8727 and LP8788 drivers
|
||||
|
||||
N: Sangbeom Kim
|
||||
E: sbkim73@samsung.com
|
||||
D: Samsung SoC Audio (ASoC) drivers
|
||||
|
||||
@@ -33,4 +33,11 @@ properties:
|
||||
power off automatically. Device with key pressed shutdown feature can
|
||||
specify this property.
|
||||
|
||||
reset-time-sec:
|
||||
description:
|
||||
Duration in seconds which the key should be kept pressed for device to
|
||||
reset automatically. Device with key pressed reset feature can specify
|
||||
this property.
|
||||
$ref: /schemas/types.yaml#/definitions/uint32
|
||||
|
||||
additionalProperties: true
|
||||
|
||||
183
Documentation/devicetree/bindings/mfd/actions,atc260x.yaml
Normal file
183
Documentation/devicetree/bindings/mfd/actions,atc260x.yaml
Normal file
@@ -0,0 +1,183 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mfd/actions,atc260x.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Actions Semi ATC260x Power Management IC bindings
|
||||
|
||||
maintainers:
|
||||
- Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
- Cristian Ciocaltea <cristian.ciocaltea@gmail.com>
|
||||
|
||||
description: |
|
||||
ATC260x series PMICs integrates Audio Codec, Power Management, RTC, IR
|
||||
and GPIO controller blocks. Currently only the PM related functionalities
|
||||
(i.e. regulators and system power-off/reboot) for the ATC2603C and ATC2609A
|
||||
chip variants are supported.
|
||||
ATC2603C includes 3 programmable DC-DC converters, 9 programmable LDO
|
||||
regulators and 1 fixed LDO regulator.
|
||||
ATC2609A includes 5 programmable DC-DC converters and 10 programmable LDO
|
||||
regulators.
|
||||
|
||||
allOf:
|
||||
- $ref: ../input/input.yaml
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- actions,atc2603c
|
||||
- actions,atc2609a
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
reset-time-sec:
|
||||
description: |
|
||||
Duration in seconds which the key should be kept pressed for device
|
||||
to reset automatically. The hardware default is 8. Use 0 to disable
|
||||
this functionality.
|
||||
enum: [0, 6, 8, 10, 12]
|
||||
|
||||
regulators:
|
||||
type: object
|
||||
description: |
|
||||
List of child nodes specifying the regulators, depending on chip variant:
|
||||
* ATC2603C: dcdc[1-3], ldo[1-3,5-8,11,12], switchldo1
|
||||
* ATC2609A: dcdc[0-4], ldo[0-9]
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- actions,atc2603c-regulator
|
||||
- actions,atc2609a-regulator
|
||||
|
||||
switchldo1:
|
||||
type: object
|
||||
$ref: ../regulator/regulator.yaml
|
||||
|
||||
properties:
|
||||
regulator-name: true
|
||||
regulator-boot-on: true
|
||||
regulator-always-on: true
|
||||
regulator-min-microvolt: true
|
||||
regulator-max-microvolt: true
|
||||
regulator-allow-bypass: true
|
||||
regulator-active-discharge: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
patternProperties:
|
||||
"^(dcdc[0-4]|ldo[0-9]|ldo1[1-2]|switchldo1)-supply$":
|
||||
description: ATC260x voltage regulators supplies
|
||||
|
||||
"^(dcdc[0-4]|ldo[0-9]|ldo1[1-2])$":
|
||||
type: object
|
||||
$ref: ../regulator/regulator.yaml
|
||||
|
||||
properties:
|
||||
regulator-name: true
|
||||
regulator-boot-on: true
|
||||
regulator-always-on: true
|
||||
regulator-min-microvolt: true
|
||||
regulator-max-microvolt: true
|
||||
regulator-allow-bypass: true
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
allOf:
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: actions,atc2603c-regulator
|
||||
then:
|
||||
patternProperties:
|
||||
"^(dcdc[0,4]|ldo[0,4,9])(-supply)?$": false
|
||||
|
||||
"^(ldo|dcdc)":
|
||||
properties:
|
||||
regulator-allow-bypass: false
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: actions,atc2609a-regulator
|
||||
then:
|
||||
patternProperties:
|
||||
"^(ldo1[1-2]|switchldo1)(-supply)?$": false
|
||||
|
||||
"^(dcdc|ldo[3-9])":
|
||||
properties:
|
||||
regulator-allow-bypass: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
i2c0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pmic@65 {
|
||||
compatible = "actions,atc2603c";
|
||||
reg = <0x65>;
|
||||
interrupt-parent = <&sirq>;
|
||||
interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
||||
reset-time-sec = <6>;
|
||||
|
||||
regulators {
|
||||
compatible = "actions,atc2603c-regulator";
|
||||
|
||||
dcdc1-supply = <®_5v0>;
|
||||
dcdc3-supply = <®_5v0>;
|
||||
ldo5-supply = <®_5v0>;
|
||||
switchldo1-supply = <&vcc>;
|
||||
|
||||
vdd_cpu: dcdc1 {
|
||||
regulator-name = "VDD_CPU";
|
||||
regulator-min-microvolt = <700000>;
|
||||
regulator-max-microvolt = <1400000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vcc: dcdc3 {
|
||||
regulator-name = "VCC";
|
||||
regulator-min-microvolt = <2600000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
vcc_3v1: ldo5 {
|
||||
regulator-name = "VCC_3V1";
|
||||
regulator-min-microvolt = <2600000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
};
|
||||
|
||||
sd_vcc: switchldo1 {
|
||||
regulator-name = "SD_VCC";
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
...
|
||||
76
Documentation/devicetree/bindings/mfd/netronix,ntxec.yaml
Normal file
76
Documentation/devicetree/bindings/mfd/netronix,ntxec.yaml
Normal file
@@ -0,0 +1,76 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mfd/netronix,ntxec.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Netronix Embedded Controller
|
||||
|
||||
maintainers:
|
||||
- Jonathan Neuschäfer <j.neuschaefer@gmx.net>
|
||||
|
||||
description: |
|
||||
This EC is found in e-book readers of multiple brands (e.g. Kobo, Tolino), and
|
||||
is typically implemented as a TI MSP430 microcontroller.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: netronix,ntxec
|
||||
|
||||
reg:
|
||||
items:
|
||||
- description: The I2C address of the EC
|
||||
|
||||
system-power-controller:
|
||||
type: boolean
|
||||
description: See Documentation/devicetree/bindings/power/power-controller.txt
|
||||
|
||||
interrupts:
|
||||
minItems: 1
|
||||
description:
|
||||
The EC can signal interrupts via a GPIO line
|
||||
|
||||
"#pwm-cells":
|
||||
const: 2
|
||||
description: |
|
||||
Number of cells in a PWM specifier.
|
||||
|
||||
The following PWM channels are supported:
|
||||
- 0: The PWM channel controlled by registers 0xa1-0xa7
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ec: embedded-controller@43 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ntxec>;
|
||||
|
||||
compatible = "netronix,ntxec";
|
||||
reg = <0x43>;
|
||||
system-power-controller;
|
||||
interrupt-parent = <&gpio4>;
|
||||
interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
|
||||
#pwm-cells = <2>;
|
||||
};
|
||||
};
|
||||
|
||||
backlight {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&ec 0 50000>;
|
||||
power-supply = <&backlight_regulator>;
|
||||
};
|
||||
|
||||
backlight_regulator: regulator-dummy {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "backlight";
|
||||
};
|
||||
@@ -1,99 +0,0 @@
|
||||
Qualcomm PM8xxx PMIC multi-function devices
|
||||
|
||||
The PM8xxx family of Power Management ICs are used to provide regulated
|
||||
voltages and other various functionality to Qualcomm SoCs.
|
||||
|
||||
= PROPERTIES
|
||||
|
||||
- compatible:
|
||||
Usage: required
|
||||
Value type: <string>
|
||||
Definition: must be one of:
|
||||
"qcom,pm8058"
|
||||
"qcom,pm8821"
|
||||
"qcom,pm8921"
|
||||
|
||||
- #address-cells:
|
||||
Usage: required
|
||||
Value type: <u32>
|
||||
Definition: must be 1
|
||||
|
||||
- #size-cells:
|
||||
Usage: required
|
||||
Value type: <u32>
|
||||
Definition: must be 0
|
||||
|
||||
- interrupts:
|
||||
Usage: required
|
||||
Value type: <prop-encoded-array>
|
||||
Definition: specifies the interrupt that indicates a subdevice
|
||||
has generated an interrupt (summary interrupt). The
|
||||
format of the specifier is defined by the binding document
|
||||
describing the node's interrupt parent.
|
||||
|
||||
- #interrupt-cells:
|
||||
Usage: required
|
||||
Value type : <u32>
|
||||
Definition: must be 2. Specifies the number of cells needed to encode
|
||||
an interrupt source. The 1st cell contains the interrupt
|
||||
number. The 2nd cell is the trigger type and level flags
|
||||
encoded as follows:
|
||||
|
||||
1 = low-to-high edge triggered
|
||||
2 = high-to-low edge triggered
|
||||
4 = active high level-sensitive
|
||||
8 = active low level-sensitive
|
||||
|
||||
- interrupt-controller:
|
||||
Usage: required
|
||||
Value type: <empty>
|
||||
Definition: identifies this node as an interrupt controller
|
||||
|
||||
= SUBCOMPONENTS
|
||||
|
||||
The PMIC contains multiple independent functions, each described in a subnode.
|
||||
The below bindings specify the set of valid subnodes.
|
||||
|
||||
== Real-Time Clock
|
||||
|
||||
- compatible:
|
||||
Usage: required
|
||||
Value type: <string>
|
||||
Definition: must be one of:
|
||||
"qcom,pm8058-rtc"
|
||||
"qcom,pm8921-rtc"
|
||||
"qcom,pm8941-rtc"
|
||||
"qcom,pm8018-rtc"
|
||||
|
||||
- reg:
|
||||
Usage: required
|
||||
Value type: <prop-encoded-array>
|
||||
Definition: single entry specifying the base address of the RTC registers
|
||||
|
||||
- interrupts:
|
||||
Usage: required
|
||||
Value type: <prop-encoded-array>
|
||||
Definition: single entry specifying the RTC's alarm interrupt
|
||||
|
||||
- allow-set-time:
|
||||
Usage: optional
|
||||
Value type: <empty>
|
||||
Definition: indicates that the setting of RTC time is allowed by
|
||||
the host CPU
|
||||
|
||||
= EXAMPLE
|
||||
|
||||
pmicintc: pmic@0 {
|
||||
compatible = "qcom,pm8921";
|
||||
interrupts = <104 8>;
|
||||
#interrupt-cells = <2>;
|
||||
interrupt-controller;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
rtc@11d {
|
||||
compatible = "qcom,pm8921-rtc";
|
||||
reg = <0x11d>;
|
||||
interrupts = <0x27 0>;
|
||||
};
|
||||
};
|
||||
54
Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml
Normal file
54
Documentation/devicetree/bindings/mfd/qcom-pm8xxx.yaml
Normal file
@@ -0,0 +1,54 @@
|
||||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mfd/qcom-pm8xxx.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Qualcomm PM8xxx PMIC multi-function devices
|
||||
|
||||
maintainers:
|
||||
- Satya Priya <skakit@codeaurora.org>
|
||||
|
||||
description: |
|
||||
The PM8xxx family of Power Management ICs are used to provide regulated
|
||||
voltages and other various functionality to Qualcomm SoCs.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- qcom,pm8058
|
||||
- qcom,pm8821
|
||||
- qcom,pm8921
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
'#address-cells':
|
||||
const: 1
|
||||
|
||||
'#size-cells':
|
||||
const: 0
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
'#interrupt-cells':
|
||||
const: 2
|
||||
|
||||
interrupt-controller: true
|
||||
|
||||
patternProperties:
|
||||
"rtc@[0-9a-f]+$":
|
||||
type: object
|
||||
$ref: "../rtc/qcom-pm8xxx-rtc.yaml"
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- '#address-cells'
|
||||
- '#size-cells'
|
||||
- interrupts
|
||||
- '#interrupt-cells'
|
||||
- interrupt-controller
|
||||
|
||||
additionalProperties: false
|
||||
...
|
||||
111
Documentation/devicetree/bindings/mfd/ricoh,rn5t618.yaml
Normal file
111
Documentation/devicetree/bindings/mfd/ricoh,rn5t618.yaml
Normal file
@@ -0,0 +1,111 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mfd/ricoh,rn5t618.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: Ricoh RN5T567/RN5T618/RC5T619 PMIC
|
||||
|
||||
maintainers:
|
||||
- Andreas Kemnade <andreas@kemnade.info>
|
||||
|
||||
description: |
|
||||
Ricoh RN5T567/RN5T618/RC5T619 is a power management IC family which
|
||||
integrates 3 to 5 step-down DCDC converters, 7 to 10 low-dropout regulators,
|
||||
GPIOs, and a watchdog timer. It can be controlled through an I2C interface.
|
||||
The RN5T618/RC5T619 provides additionally a Li-ion battery charger,
|
||||
fuel gauge, and an ADC.
|
||||
The RC5T619 additionally includes USB charger detection and an RTC.
|
||||
|
||||
allOf:
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: ricoh,rn5t567
|
||||
then:
|
||||
properties:
|
||||
regulators:
|
||||
patternProperties:
|
||||
"^(DCDC[1-4]|LDO[1-5]|LDORTC[12])$":
|
||||
$ref: ../regulator/regulator.yaml
|
||||
additionalProperties: false
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: ricoh,rn5t618
|
||||
then:
|
||||
properties:
|
||||
regulators:
|
||||
patternProperties:
|
||||
"^(DCDC[1-3]|LDO[1-5]|LDORTC[12])$":
|
||||
$ref: ../regulator/regulator.yaml
|
||||
additionalProperties: false
|
||||
- if:
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
const: ricoh,rc5t619
|
||||
then:
|
||||
properties:
|
||||
regulators:
|
||||
patternProperties:
|
||||
"^(DCDC[1-5]|LDO[1-9]|LDO10|LDORTC[12])$":
|
||||
$ref: ../regulator/regulator.yaml
|
||||
additionalProperties: false
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- ricoh,rn5t567
|
||||
- ricoh,rn5t618
|
||||
- ricoh,rc5t619
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
system-power-controller:
|
||||
type: boolean
|
||||
description: |
|
||||
See Documentation/devicetree/bindings/power/power-controller.txt
|
||||
|
||||
regulators:
|
||||
type: object
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pmic@32 {
|
||||
compatible = "ricoh,rn5t618";
|
||||
reg = <0x32>;
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
|
||||
system-power-controller;
|
||||
|
||||
regulators {
|
||||
DCDC1 {
|
||||
regulator-min-microvolt = <1050000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
};
|
||||
|
||||
DCDC2 {
|
||||
regulator-min-microvolt = <1175000>;
|
||||
regulator-max-microvolt = <1175000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -1,52 +0,0 @@
|
||||
* Ricoh RN5T567/RN5T618 PMIC
|
||||
|
||||
Ricoh RN5T567/RN5T618/RC5T619 is a power management IC family which
|
||||
integrates 3 to 5 step-down DCDC converters, 7 to 10 low-dropout regulators,
|
||||
GPIOs, and a watchdog timer. It can be controlled through an I2C interface.
|
||||
The RN5T618/RC5T619 provides additionally a Li-ion battery charger,
|
||||
fuel gauge, and an ADC.
|
||||
The RC5T619 additionnally includes USB charger detection and an RTC.
|
||||
|
||||
Required properties:
|
||||
- compatible: must be one of
|
||||
"ricoh,rn5t567"
|
||||
"ricoh,rn5t618"
|
||||
"ricoh,rc5t619"
|
||||
- reg: the I2C slave address of the device
|
||||
|
||||
Optional properties:
|
||||
- interrupts: interrupt mapping for IRQ
|
||||
See Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
|
||||
- system-power-controller:
|
||||
See Documentation/devicetree/bindings/power/power-controller.txt
|
||||
|
||||
Sub-nodes:
|
||||
- regulators: the node is required if the regulator functionality is
|
||||
needed. The valid regulator names are: DCDC1, DCDC2, DCDC3, DCDC4
|
||||
(RN5T567/RC5T619), LDO1, LDO2, LDO3, LDO4, LDO5, LDO6, LDO7, LDO8,
|
||||
LDO9, LDO10, LDORTC1 and LDORTC2.
|
||||
LDO7-10 are specific to RC5T619.
|
||||
The common bindings for each individual regulator can be found in:
|
||||
Documentation/devicetree/bindings/regulator/regulator.txt
|
||||
|
||||
Example:
|
||||
|
||||
pmic@32 {
|
||||
compatible = "ricoh,rn5t618";
|
||||
reg = <0x32>;
|
||||
interrupt-parent = <&gpio5>;
|
||||
interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
|
||||
system-power-controller;
|
||||
|
||||
regulators {
|
||||
DCDC1 {
|
||||
regulator-min-microvolt = <1050000>;
|
||||
regulator-max-microvolt = <1050000>;
|
||||
};
|
||||
|
||||
DCDC2 {
|
||||
regulator-min-microvolt = <1175000>;
|
||||
regulator-max-microvolt = <1175000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
201
Documentation/devicetree/bindings/mfd/rohm,bd71815-pmic.yaml
Normal file
201
Documentation/devicetree/bindings/mfd/rohm,bd71815-pmic.yaml
Normal file
@@ -0,0 +1,201 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mfd/rohm,bd71815-pmic.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: ROHM BD71815 Power Management Integrated Circuit bindings
|
||||
|
||||
maintainers:
|
||||
- Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
|
||||
|
||||
description: |
|
||||
BD71815AGW is a single-chip power management ICs for battery-powered
|
||||
portable devices. It integrates 5 buck converters, 8 LDOs, a boost driver
|
||||
for LED and a 500 mA single-cell linear charger. Also included is a Coulomb
|
||||
counter, a real-time clock (RTC), and a 32.768 kHz clock gate and two GPOs.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: rohm,bd71815
|
||||
|
||||
reg:
|
||||
description:
|
||||
I2C slave address.
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
gpio-controller: true
|
||||
|
||||
"#gpio-cells":
|
||||
const: 2
|
||||
description: |
|
||||
The first cell is the pin number and the second cell is used to specify
|
||||
flags. See ../gpio/gpio.txt for more information.
|
||||
|
||||
clocks:
|
||||
maxItems: 1
|
||||
|
||||
"#clock-cells":
|
||||
const: 0
|
||||
|
||||
clock-output-names:
|
||||
const: bd71815-32k-out
|
||||
|
||||
rohm,clkout-open-drain:
|
||||
description: clk32kout mode. Set to 1 for "open-drain" or 0 for "cmos".
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||||
minimum: 0
|
||||
maximum: 1
|
||||
|
||||
rohm,charger-sense-resistor-ohms:
|
||||
minimum: 10000000
|
||||
maximum: 50000000
|
||||
description: |
|
||||
BD71827 and BD71828 have SAR ADC for measuring charging currents.
|
||||
External sense resistor (RSENSE in data sheet) should be used. If
|
||||
something other but 30MOhm resistor is used the resistance value
|
||||
should be given here in Ohms.
|
||||
default: 30000000
|
||||
|
||||
regulators:
|
||||
$ref: ../regulator/rohm,bd71815-regulator.yaml
|
||||
description:
|
||||
List of child nodes that specify the regulators.
|
||||
|
||||
gpio-reserved-ranges:
|
||||
description: |
|
||||
Usage of BD71828 GPIO pins can be changed via OTP. This property can be
|
||||
used to mark the pins which should not be configured for GPIO. Please see
|
||||
the ../gpio/gpio.txt for more information.
|
||||
|
||||
rohm,enable-hidden-gpo:
|
||||
description: |
|
||||
The BD71815 has undocumented GPO at pin E5. Pin is marked as GND at the
|
||||
data-sheet as it's location in the middle of GND pins makes it hard to
|
||||
use on PCB. If your board has managed to use this pin you can enable the
|
||||
second GPO by defining this property. Dont enable this if you are unsure
|
||||
about how the E5 pin is connected on your board.
|
||||
type: boolean
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- interrupts
|
||||
- clocks
|
||||
- "#clock-cells"
|
||||
- regulators
|
||||
- gpio-controller
|
||||
- "#gpio-cells"
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/interrupt-controller/irq.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pmic: pmic@4b {
|
||||
compatible = "rohm,bd71815";
|
||||
reg = <0x4b>;
|
||||
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
|
||||
|
||||
clocks = <&osc 0>;
|
||||
#clock-cells = <0>;
|
||||
clock-output-names = "bd71815-32k-out";
|
||||
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
|
||||
rohm,charger-sense-resistor-ohms = <10000000>;
|
||||
|
||||
regulators {
|
||||
buck1: buck1 {
|
||||
regulator-name = "buck1";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <2000000>;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <1250>;
|
||||
rohm,dvs-run-voltage = <1150000>;
|
||||
rohm,dvs-suspend-voltage = <950000>;
|
||||
};
|
||||
buck2: buck2 {
|
||||
regulator-name = "buck2";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <2000000>;
|
||||
regulator-always-on;
|
||||
regulator-ramp-delay = <1250>;
|
||||
rohm,dvs-run-voltage = <1150000>;
|
||||
rohm,dvs-suspend-voltage = <950000>;
|
||||
};
|
||||
buck3: buck3 {
|
||||
regulator-name = "buck3";
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <2700000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
buck4: buck4 {
|
||||
regulator-name = "buck4";
|
||||
regulator-min-microvolt = <1100000>;
|
||||
regulator-max-microvolt = <1850000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
buck5: buck5 {
|
||||
regulator-name = "buck5";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
ldo1: ldo1 {
|
||||
regulator-name = "ldo1";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
ldo2: ldo2 {
|
||||
regulator-name = "ldo2";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
ldo3: ldo3 {
|
||||
regulator-name = "ldo3";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
ldo4: ldo4 {
|
||||
regulator-name = "ldo4";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
ldo5: ldo5 {
|
||||
regulator-name = "ldo5";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-always-on;
|
||||
};
|
||||
ldo6: ldodvref {
|
||||
regulator-name = "ldodvref";
|
||||
regulator-always-on;
|
||||
};
|
||||
ldo7: ldolpsr {
|
||||
regulator-name = "ldolpsr";
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
boost: wled {
|
||||
regulator-name = "wled";
|
||||
regulator-min-microamp = <10>;
|
||||
regulator-max-microamp = <25000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -44,6 +44,12 @@ properties:
|
||||
clock-output-names:
|
||||
const: bd71828-32k-out
|
||||
|
||||
rohm,clkout-open-drain:
|
||||
description: clk32kout mode. Set to 1 for "open-drain" or 0 for "cmos".
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||||
minimum: 0
|
||||
maximum: 1
|
||||
|
||||
rohm,charger-sense-resistor-ohms:
|
||||
minimum: 10000000
|
||||
maximum: 50000000
|
||||
|
||||
123
Documentation/devicetree/bindings/mfd/rohm,bd9576-pmic.yaml
Normal file
123
Documentation/devicetree/bindings/mfd/rohm,bd9576-pmic.yaml
Normal file
@@ -0,0 +1,123 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mfd/rohm,bd9576-pmic.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: ROHM BD9576MUF and BD9573MUF Power Management Integrated Circuit bindings
|
||||
|
||||
maintainers:
|
||||
- Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
|
||||
|
||||
description: |
|
||||
BD9576MUF and BD9573MUF are power management ICs primarily intended for
|
||||
powering the R-Car series processors.
|
||||
The IC provides 6 power outputs with configurable sequencing and safety
|
||||
monitoring. A watchdog logic with slow ping/windowed modes is also included.
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
enum:
|
||||
- rohm,bd9576
|
||||
- rohm,bd9573
|
||||
|
||||
reg:
|
||||
description:
|
||||
I2C slave address.
|
||||
maxItems: 1
|
||||
|
||||
interrupts:
|
||||
maxItems: 1
|
||||
|
||||
rohm,vout1-en-low:
|
||||
description:
|
||||
BD9576 and BD9573 VOUT1 regulator enable state can be individually
|
||||
controlled by a GPIO. This is dictated by state of vout1-en pin during
|
||||
the PMIC startup. If vout1-en is LOW during PMIC startup then the VOUT1
|
||||
enable sate is controlled via this pin. Set this property if vout1-en
|
||||
is wired to be down at PMIC start-up.
|
||||
type: boolean
|
||||
|
||||
rohm,vout1-en-gpios:
|
||||
description:
|
||||
GPIO specifier to specify the GPIO connected to vout1-en for vout1 ON/OFF
|
||||
state control.
|
||||
maxItems: 1
|
||||
|
||||
rohm,ddr-sel-low:
|
||||
description:
|
||||
The BD9576 and BD9573 output voltage for DDR can be selected by setting
|
||||
the ddr-sel pin low or high. Set this property if ddr-sel is grounded.
|
||||
type: boolean
|
||||
|
||||
rohm,watchdog-enable-gpios:
|
||||
description: The GPIO line used to enable the watchdog.
|
||||
maxItems: 1
|
||||
|
||||
rohm,watchdog-ping-gpios:
|
||||
description: The GPIO line used to ping the watchdog.
|
||||
maxItems: 1
|
||||
|
||||
rohm,hw-timeout-ms:
|
||||
maxItems: 2
|
||||
description:
|
||||
Watchog timeout in milliseconds. If single value is given it is
|
||||
the maximum timeout. Eg. if pinging watchdog is not done within this time
|
||||
limit the watchdog will be triggered. If two values are given watchdog
|
||||
is configured in "window mode". Then first value is limit for short-ping
|
||||
Eg. if watchdog is pinged sooner than that the watchdog will trigger.
|
||||
When two values is given the second value is the maximum timeout.
|
||||
# (HW) minimum for short timeout is 2ms, maximum 220 ms.
|
||||
# (HW) minimum for max timeout is 4ms, maximum 4416 ms.
|
||||
|
||||
regulators:
|
||||
$ref: ../regulator/rohm,bd9576-regulator.yaml
|
||||
description:
|
||||
List of child nodes that specify the regulators.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- regulators
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
i2c {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
pmic: pmic@30 {
|
||||
compatible = "rohm,bd9576";
|
||||
reg = <0x30>;
|
||||
rohm,vout1-en-low;
|
||||
rohm,vout1-en-gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;
|
||||
rohm,ddr-sel-low;
|
||||
rohm,watchdog-enable-gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;
|
||||
rohm,watchdog-ping-gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>;
|
||||
rohm,hw-timeout-ms = <150>, <2300>;
|
||||
|
||||
regulators {
|
||||
boost1: regulator-vd50 {
|
||||
regulator-name = "VD50";
|
||||
};
|
||||
buck1: regulator-vd18 {
|
||||
regulator-name = "VD18";
|
||||
};
|
||||
buck2: regulator-vdddr {
|
||||
regulator-name = "VDDDR";
|
||||
};
|
||||
buck3: regulator-vd10 {
|
||||
regulator-name = "VD10";
|
||||
};
|
||||
ldo: regulator-voutl1 {
|
||||
regulator-name = "VOUTL1";
|
||||
};
|
||||
sw: regulator-vouts1 {
|
||||
regulator-name = "VOUTS1";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -17,6 +17,10 @@ properties:
|
||||
description: I2C slave address
|
||||
const: 0x60
|
||||
|
||||
reset-gpios:
|
||||
description: GPIO connected to NRST pin (active low reset, pin 20)
|
||||
maxItems: 1
|
||||
|
||||
gpio-controller: true
|
||||
|
||||
'#gpio-cells':
|
||||
|
||||
@@ -17,6 +17,10 @@ properties:
|
||||
description: I2C slave address
|
||||
const: 0x60
|
||||
|
||||
reset-gpios:
|
||||
description: GPIO connected to NRST pin (active low reset, pin 20)
|
||||
maxItems: 1
|
||||
|
||||
gpio-controller: true
|
||||
|
||||
'#gpio-cells':
|
||||
|
||||
@@ -19,6 +19,10 @@ properties:
|
||||
description: I2C slave address
|
||||
const: 0x60
|
||||
|
||||
reset-gpios:
|
||||
description: GPIO connected to NRST pin (active low reset, pin 20)
|
||||
maxItems: 1
|
||||
|
||||
gpio-controller: true
|
||||
|
||||
'#gpio-cells':
|
||||
|
||||
@@ -0,0 +1,116 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/regulator/rohm,bd71815-regulator.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: ROHM BD71815 Power Management Integrated Circuit regulators
|
||||
|
||||
maintainers:
|
||||
- Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>
|
||||
|
||||
description: |
|
||||
This module is part of the ROHM BD718215 MFD device. For more details
|
||||
see Documentation/devicetree/bindings/mfd/rohm,bd71815-pmic.yaml.
|
||||
|
||||
The regulator controller is represented as a sub-node of the PMIC node
|
||||
on the device tree.
|
||||
|
||||
The valid names for BD71815 regulator nodes are
|
||||
buck1, buck2, buck3, buck4, buck5,
|
||||
ldo1, ldo2, ldo3, ldo4, ldo5,
|
||||
ldodvref, ldolpsr, wled
|
||||
|
||||
properties:
|
||||
wled:
|
||||
type: object
|
||||
description:
|
||||
properties for wled regulator
|
||||
$ref: regulator.yaml#
|
||||
|
||||
properties:
|
||||
regulator-name:
|
||||
const: wled
|
||||
|
||||
patternProperties:
|
||||
"^((ldo|buck)[1-5]|ldolpsr|ldodvref)$":
|
||||
type: object
|
||||
description:
|
||||
Properties for single LDO/BUCK regulator.
|
||||
$ref: regulator.yaml#
|
||||
|
||||
properties:
|
||||
regulator-name:
|
||||
pattern: "^((ldo|buck)[1-5]|ldolpsr|ldodvref)$"
|
||||
description:
|
||||
should be "ldo1", ..., "ldo5", "buck1", ..., "buck5" and "ldolpsr"
|
||||
for ldolpsr regulator, "ldodvref" for ldodvref reglator.
|
||||
|
||||
rohm,vsel-gpios:
|
||||
description:
|
||||
GPIO used to control ldo4 state (when ldo4 is controlled by GPIO).
|
||||
|
||||
rohm,dvs-run-voltage:
|
||||
description:
|
||||
PMIC "RUN" state voltage in uV when PMIC HW states are used. See
|
||||
comments below for bucks/LDOs which support this. 0 means
|
||||
regulator should be disabled at RUN state.
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||||
minimum: 0
|
||||
maximum: 3300000
|
||||
|
||||
rohm,dvs-snvs-voltage:
|
||||
description:
|
||||
Whether to keep regulator enabled at "SNVS" state or not.
|
||||
0 means regulator should be disabled at SNVS state, non zero voltage
|
||||
keeps regulator enabled. BD71815 does not change voltage level
|
||||
when PMIC transitions to SNVS.SNVS voltage depends on the previous
|
||||
state (from which the PMIC transitioned to SNVS).
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||||
minimum: 0
|
||||
maximum: 3300000
|
||||
|
||||
rohm,dvs-suspend-voltage:
|
||||
description:
|
||||
PMIC "SUSPEND" state voltage in uV when PMIC HW states are used. See
|
||||
comments below for bucks/LDOs which support this. 0 means
|
||||
regulator should be disabled at SUSPEND state.
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||||
minimum: 0
|
||||
maximum: 3300000
|
||||
|
||||
rohm,dvs-lpsr-voltage:
|
||||
description:
|
||||
PMIC "LPSR" state voltage in uV when PMIC HW states are used. See
|
||||
comments below for bucks/LDOs which support this. 0 means
|
||||
regulator should be disabled at LPSR state.
|
||||
$ref: "/schemas/types.yaml#/definitions/uint32"
|
||||
minimum: 0
|
||||
maximum: 3300000
|
||||
|
||||
# Bucks 1 and 2 support giving separate voltages for operational states
|
||||
# (RUN /CLEAN according to data-sheet) and non operational states
|
||||
# (LPSR/SUSPEND). The voltage is automatically changed when HW
|
||||
# state changes. Omitting these properties from bucks 1 and 2 leave
|
||||
# buck voltages to not be toggled by HW state. Enable status may still
|
||||
# be toggled by state changes depending on HW default settings.
|
||||
#
|
||||
# Bucks 3-5 and ldos 1-5 support setting the RUN state voltage here.
|
||||
# Given RUN voltage is used at all states if regulator is enabled at
|
||||
# given state.
|
||||
# Values given for other states are regarded as enable/disable at
|
||||
# given state (see below).
|
||||
#
|
||||
# All regulators except WLED support specifying enable/disable status
|
||||
# for each of the HW states (RUN/SNVS/SUSPEND/LPSR). HW defaults can
|
||||
# be overridden by setting voltage to 0 (regulator disabled at given
|
||||
# state) or non-zero (regulator enabled at given state). Please note
|
||||
# that setting non zero voltages for bucks 1/2 will also enable voltage
|
||||
# changes according to state change.
|
||||
|
||||
required:
|
||||
- regulator-name
|
||||
|
||||
unevaluatedProperties: false
|
||||
|
||||
additionalProperties: false
|
||||
@@ -772,6 +772,8 @@ patternProperties:
|
||||
description: Broadcom Corporation (formerly NetLogic Microsystems)
|
||||
"^netron-dy,.*":
|
||||
description: Netron DY
|
||||
"^netronix,.*":
|
||||
description: Netronix, Inc.
|
||||
"^netxeon,.*":
|
||||
description: Shenzhen Netxeon Technology CO., LTD
|
||||
"^neweast,.*":
|
||||
|
||||
74
MAINTAINERS
74
MAINTAINERS
@@ -2894,6 +2894,18 @@ W: http://www.openaoe.org/
|
||||
F: Documentation/admin-guide/aoe/
|
||||
F: drivers/block/aoe/
|
||||
|
||||
ATC260X PMIC MFD DRIVER
|
||||
M: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
|
||||
M: Cristian Ciocaltea <cristian.ciocaltea@gmail.com>
|
||||
L: linux-actions@lists.infradead.org
|
||||
S: Maintained
|
||||
F: Documentation/devicetree/bindings/mfd/actions,atc260x.yaml
|
||||
F: drivers/input/misc/atc260x-onkey.c
|
||||
F: drivers/mfd/atc260*
|
||||
F: drivers/power/reset/atc260x-poweroff.c
|
||||
F: drivers/regulator/atc260x-regulator.c
|
||||
F: include/linux/mfd/atc260x/*
|
||||
|
||||
ATHEROS 71XX/9XXX GPIO DRIVER
|
||||
M: Alban Bedel <albeu@free.fr>
|
||||
S: Maintained
|
||||
@@ -9221,6 +9233,26 @@ F: include/linux/mei_cl_bus.h
|
||||
F: include/uapi/linux/mei.h
|
||||
F: samples/mei/*
|
||||
|
||||
INTEL MAX 10 BMC MFD DRIVER
|
||||
M: Xu Yilun <yilun.xu@intel.com>
|
||||
R: Tom Rix <trix@redhat.com>
|
||||
S: Maintained
|
||||
F: Documentation/ABI/testing/sysfs-driver-intel-m10-bmc
|
||||
F: Documentation/hwmon/intel-m10-bmc-hwmon.rst
|
||||
F: drivers/hwmon/intel-m10-bmc-hwmon.c
|
||||
F: drivers/mfd/intel-m10-bmc.c
|
||||
F: include/linux/mfd/intel-m10-bmc.h
|
||||
|
||||
INTEL MAX 10 BMC MFD DRIVER
|
||||
M: Xu Yilun <yilun.xu@intel.com>
|
||||
R: Tom Rix <trix@redhat.com>
|
||||
S: Maintained
|
||||
F: Documentation/ABI/testing/sysfs-driver-intel-m10-bmc
|
||||
F: Documentation/hwmon/intel-m10-bmc-hwmon.rst
|
||||
F: drivers/hwmon/intel-m10-bmc-hwmon.c
|
||||
F: drivers/mfd/intel-m10-bmc.c
|
||||
F: include/linux/mfd/intel-m10-bmc.h
|
||||
|
||||
INTEL MENLOW THERMAL DRIVER
|
||||
M: Sujith Thomas <sujith.thomas@intel.com>
|
||||
L: platform-driver-x86@vger.kernel.org
|
||||
@@ -12543,6 +12575,15 @@ F: include/net/netrom.h
|
||||
F: include/uapi/linux/netrom.h
|
||||
F: net/netrom/
|
||||
|
||||
NETRONIX EMBEDDED CONTROLLER
|
||||
M: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
|
||||
S: Maintained
|
||||
F: Documentation/devicetree/bindings/mfd/netronix,ntxec.yaml
|
||||
F: drivers/mfd/ntxec.c
|
||||
F: drivers/pwm/pwm-ntxec.c
|
||||
F: drivers/rtc/rtc-ntxec.c
|
||||
F: include/linux/mfd/ntxec.h
|
||||
|
||||
NETRONOME ETHERNET DRIVERS
|
||||
M: Simon Horman <simon.horman@netronome.com>
|
||||
R: Jakub Kicinski <kuba@kernel.org>
|
||||
@@ -15634,20 +15675,27 @@ F: Documentation/devicetree/bindings/mfd/rohm,bd70528-pmic.txt
|
||||
F: Documentation/devicetree/bindings/regulator/rohm,bd70528-regulator.txt
|
||||
F: drivers/clk/clk-bd718x7.c
|
||||
F: drivers/gpio/gpio-bd70528.c
|
||||
F: drivers/gpio/gpio-bd71815.c
|
||||
F: drivers/gpio/gpio-bd71828.c
|
||||
F: drivers/mfd/rohm-bd70528.c
|
||||
F: drivers/mfd/rohm-bd71828.c
|
||||
F: drivers/mfd/rohm-bd718x7.c
|
||||
F: drivers/mfd/rohm-bd9576.c
|
||||
F: drivers/power/supply/bd70528-charger.c
|
||||
F: drivers/regulator/bd70528-regulator.c
|
||||
F: drivers/regulator/bd71815-regulator.c
|
||||
F: drivers/regulator/bd71828-regulator.c
|
||||
F: drivers/regulator/bd718x7-regulator.c
|
||||
F: drivers/regulator/bd9576-regulator.c
|
||||
F: drivers/regulator/rohm-regulator.c
|
||||
F: drivers/rtc/rtc-bd70528.c
|
||||
F: drivers/watchdog/bd70528_wdt.c
|
||||
F: drivers/watchdog/bd9576_wdt.c
|
||||
F: include/linux/mfd/rohm-bd70528.h
|
||||
F: include/linux/mfd/rohm-bd71815.h
|
||||
F: include/linux/mfd/rohm-bd71828.h
|
||||
F: include/linux/mfd/rohm-bd718x7.h
|
||||
F: include/linux/mfd/rohm-bd957x.h
|
||||
F: include/linux/mfd/rohm-generic.h
|
||||
F: include/linux/mfd/rohm-shared.h
|
||||
|
||||
@@ -18147,29 +18195,6 @@ S: Maintained
|
||||
F: sound/soc/codecs/isabelle*
|
||||
F: sound/soc/codecs/lm49453*
|
||||
|
||||
TI LP855x BACKLIGHT DRIVER
|
||||
M: Milo Kim <milo.kim@ti.com>
|
||||
S: Maintained
|
||||
F: Documentation/driver-api/backlight/lp855x-driver.rst
|
||||
F: drivers/video/backlight/lp855x_bl.c
|
||||
F: include/linux/platform_data/lp855x.h
|
||||
|
||||
TI LP8727 CHARGER DRIVER
|
||||
M: Milo Kim <milo.kim@ti.com>
|
||||
S: Maintained
|
||||
F: drivers/power/supply/lp8727_charger.c
|
||||
F: include/linux/platform_data/lp8727.h
|
||||
|
||||
TI LP8788 MFD DRIVER
|
||||
M: Milo Kim <milo.kim@ti.com>
|
||||
S: Maintained
|
||||
F: drivers/iio/adc/lp8788_adc.c
|
||||
F: drivers/leds/leds-lp8788.c
|
||||
F: drivers/mfd/lp8788*.c
|
||||
F: drivers/power/supply/lp8788-charger.c
|
||||
F: drivers/regulator/lp8788-*.c
|
||||
F: include/linux/mfd/lp8788*.h
|
||||
|
||||
TI NETCP ETHERNET DRIVER
|
||||
M: Wingman Kwok <w-kwok2@ti.com>
|
||||
M: Murali Karicheri <m-karicheri2@ti.com>
|
||||
@@ -19587,7 +19612,6 @@ F: Documentation/devicetree/bindings/sound/wlf,arizona.yaml
|
||||
F: Documentation/hwmon/wm83??.rst
|
||||
F: arch/arm/mach-s3c/mach-crag6410*
|
||||
F: drivers/clk/clk-wm83*.c
|
||||
F: drivers/extcon/extcon-arizona.c
|
||||
F: drivers/gpio/gpio-*wm*.c
|
||||
F: drivers/gpio/gpio-arizona.c
|
||||
F: drivers/hwmon/wm83??-hwmon.c
|
||||
@@ -19611,7 +19635,7 @@ F: include/linux/mfd/wm8400*
|
||||
F: include/linux/regulator/arizona*
|
||||
F: include/linux/wm97xx.h
|
||||
F: include/sound/wm????.h
|
||||
F: sound/soc/codecs/arizona.?
|
||||
F: sound/soc/codecs/arizona*
|
||||
F: sound/soc/codecs/cs47l24*
|
||||
F: sound/soc/codecs/wm*
|
||||
|
||||
|
||||
@@ -13,6 +13,8 @@
|
||||
#include <linux/regmap.h>
|
||||
|
||||
/* clk control registers */
|
||||
/* BD71815 */
|
||||
#define BD71815_REG_OUT32K 0x1d
|
||||
/* BD70528 */
|
||||
#define BD70528_REG_OUT32K 0x2c
|
||||
/* BD71828 */
|
||||
@@ -118,6 +120,10 @@ static int bd71837_clk_probe(struct platform_device *pdev)
|
||||
c->reg = BD70528_REG_OUT32K;
|
||||
c->mask = CLK_OUT_EN_MASK;
|
||||
break;
|
||||
case ROHM_CHIP_TYPE_BD71815:
|
||||
c->reg = BD71815_REG_OUT32K;
|
||||
c->mask = CLK_OUT_EN_MASK;
|
||||
break;
|
||||
default:
|
||||
dev_err(&pdev->dev, "Unknown clk chip\n");
|
||||
return -EINVAL;
|
||||
@@ -146,6 +152,7 @@ static const struct platform_device_id bd718x7_clk_id[] = {
|
||||
{ "bd71847-clk", ROHM_CHIP_TYPE_BD71847 },
|
||||
{ "bd70528-clk", ROHM_CHIP_TYPE_BD70528 },
|
||||
{ "bd71828-clk", ROHM_CHIP_TYPE_BD71828 },
|
||||
{ "bd71815-clk", ROHM_CHIP_TYPE_BD71815 },
|
||||
{ },
|
||||
};
|
||||
MODULE_DEVICE_TABLE(platform, bd718x7_clk_id);
|
||||
@@ -161,6 +168,6 @@ static struct platform_driver bd71837_clk = {
|
||||
module_platform_driver(bd71837_clk);
|
||||
|
||||
MODULE_AUTHOR("Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>");
|
||||
MODULE_DESCRIPTION("BD71837/BD71847/BD70528 chip clk driver");
|
||||
MODULE_DESCRIPTION("BD718(15/18/28/37/47/50) and BD70528 chip clk driver");
|
||||
MODULE_LICENSE("GPL");
|
||||
MODULE_ALIAS("platform:bd718xx-clk");
|
||||
|
||||
@@ -21,14 +21,6 @@ config EXTCON_ADC_JACK
|
||||
help
|
||||
Say Y here to enable extcon device driver based on ADC values.
|
||||
|
||||
config EXTCON_ARIZONA
|
||||
tristate "Wolfson Arizona EXTCON support"
|
||||
depends on MFD_ARIZONA && INPUT && SND_SOC
|
||||
help
|
||||
Say Y here to enable support for external accessory detection
|
||||
with Wolfson Arizona devices. These are audio CODECs with
|
||||
advanced audio accessory detection support.
|
||||
|
||||
config EXTCON_AXP288
|
||||
tristate "X-Power AXP288 EXTCON support"
|
||||
depends on MFD_AXP20X && USB_SUPPORT && X86 && ACPI
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
obj-$(CONFIG_EXTCON) += extcon-core.o
|
||||
extcon-core-objs += extcon.o devres.o
|
||||
obj-$(CONFIG_EXTCON_ADC_JACK) += extcon-adc-jack.o
|
||||
obj-$(CONFIG_EXTCON_ARIZONA) += extcon-arizona.o
|
||||
obj-$(CONFIG_EXTCON_AXP288) += extcon-axp288.o
|
||||
obj-$(CONFIG_EXTCON_FSA9480) += extcon-fsa9480.o
|
||||
obj-$(CONFIG_EXTCON_GPIO) += extcon-gpio.o
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user