mfd: rt4831: Adds support for Richtek RT4831 MFD core
Subsystems (5)
PATCH v2 1/4 mfd: rt4831: Adds support for Richtek RT4831 MFD core
From: ChiYuan Huang <[email protected]>
This adds support Richtek RT4831 MFD core. It includes four channel WLED driver and Display Bias Voltage outputs.
---
Changes since v2
- Add copyright.
- Refine error log text in probe.
- Refine comment lines in remove and shutdown callback.
- Refine Kconfig descriptions.
--- drivers/mfd/Kconfig | 10 ++++ drivers/mfd/Makefile | 1 + drivers/mfd/rt4831-core.c | 124 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 135 insertions(+) create mode 100644 drivers/mfd/rt4831-core.c
drivers/mfd/Kconfig +10 -0
@@ -1088,6 +1088,16 @@ config MFD_RDC321X southbridge which provides access to GPIOs and Watchdog using the southbridge PCI device configuration space. +config MFD_RT4831 + tristate "Richtek RT4831 four channel WLED and Display Bias Voltage" + depends on I2C + select MFD_CORE + select REGMAP_I2C + help + This enables support for the Richtek RT4831 that includes 4 channel + WLED driving and Display Bias Voltage. It's commonly used to provide + power to the LCD display and LCD backlight. + config MFD_RT5033 tristate "Richtek RT5033 Power Management IC" depends on I2C
drivers/mfd/Makefile +1 -0
@@ -235,6 +235,7 @@ obj-$(CONFIG_MFD_MENF21BMC) += menf21bmc.o obj-$(CONFIG_MFD_HI6421_PMIC) += hi6421-pmic-core.o obj-$(CONFIG_MFD_HI655X_PMIC) += hi655x-pmic.o obj-$(CONFIG_MFD_DLN2) += dln2.o +obj-$(CONFIG_MFD_RT4831) += rt4831-core.o obj-$(CONFIG_MFD_RT5033) += rt5033.o obj-$(CONFIG_MFD_SKY81452) += sky81452.o
drivers/mfd/rt4831-core.c new file +124 -0
124 lines not on this page · raw message
Signature · 1 line
2.7.4
PATCH v2 2/4 backlight: rt4831: Adds DT binding document for Richtek RT4831 backlight
From: ChiYuan Huang <[email protected]>
Adds DT binding document for Richtek RT4831 backlight.
--- .../leds/backlight/richtek,rt4831-backlight.yaml | 86 ++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yaml
Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yaml new file +86 -0
@@ -0,0 +1,86 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/leds/backlight/richtek,rt4831-backlight.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Richtek RT4831 Backlight + +maintainers: + - ChiYuan Huang <[email protected]> + +description: | + RT4831 is a mutifunctional device that can provide power to the LCD display + and LCD backlight. + + For the LCD backlight, it can provide four channel WLED driving capability. + Each channel driving current is up to 30mA + + Datasheet is available at + https://www.richtek.com/assets/product_file/RT4831A/DS4831A-05.pdf + +properties: + compatible: + const: richtek,rt4831-backlight + + default-brightness: + description: | + The default brightness that applied to the system on start-up. + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 0 + maximum: 2048 + + max-brightness: + description: | + The max brightness for the H/W limit + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 0 + maximum: 2048 + + richtek,pwm-enable: + description: | + Specify the backlight dimming following by PWM duty or by SW control. + type: boolean + + richtek,bled-ovp-sel: + description: | + Backlight OVP level selection, currently support 17V/21V/25V/29V. + $ref: /schemas/types.yaml#/definitions/uint8 + default: 1 + minimum: 0 + maximum: 3 + + richtek,channel-use: + description: | + Backlight LED channel to be used. + BIT 0/1/2/3 is used to indicate led channel 1/2/3/4 enable or disable. + $ref: /schemas/types.yaml#/definitions/uint8 + minimum: 1 + maximum: 15 + +required: + - compatible + - richtek,channel-use + +additionalProperties: false + +examples: + - | + #include <dt-bindings/leds/rt4831-backlight.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + + rt4831@11 { + compatible = "richtek,rt4831"; + reg = <0x11>; + + backlight { + compatible = "richtek,rt4831-backlight"; + default-brightness = <1024>; + max-brightness = <2048>; + richtek,bled-ovp-sel = /bits/ 8 <RT4831_BLOVPLVL_21V>; + richtek,channel-use = /bits/ 8 <RT4831_BLED_ALLCHEN>; + }; + }; + };
Signature · 1 line
2.7.4
Rob Herring
maintainerRe: [PATCH v2 2/4] backlight: rt4831: Adds DT binding document for Richtek RT4831 backlight
Quoted 10 lines · cy_huang
From: ChiYuan Huang <[email protected]>
Adds DT binding document for Richtek RT4831 backlight.
Signed-off-by ChiYuan Huang <[email protected]>--- .../leds/backlight/richtek,rt4831-backlight.yaml | 86 ++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yaml
My bot found errors running 'make dt_binding_check' on your patch:
yamllint warnings/errors:
dtschema/dtc warnings/errors:Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.example.dts:19:18: fatal error: dt-bindings/leds/rt4831-backlight.h: No such file or directory
19 | #include <dt-bindings/leds/rt4831-backlight.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [scripts/Makefile.lib:342: Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.example.dt.yaml] Error 1 make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:1364: dt_binding_check] Error 2
See https://patchwork.ozlabs.org/patch/1410481
The base for the patch is generally the last rc1. Any dependencies should be noted.
If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date:
pip3 install dtschema --upgrade
Please check and re-submit.
Rob Herring
maintainerRe: [PATCH v2 2/4] backlight: rt4831: Adds DT binding document for Richtek RT4831 backlight
In reply to cy_huangQuoted 91 lines · cy_huang
From: ChiYuan Huang <[email protected]>
Adds DT binding document for Richtek RT4831 backlight.
Signed-off-by ChiYuan Huang <[email protected]>--- .../leds/backlight/richtek,rt4831-backlight.yaml | 86 ++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yamlDocumentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yaml new file +75
-0@@ -0,0 +1,86 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/leds/backlight/richtek,rt4831-backlight.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Richtek RT4831 Backlight + +maintainers: + - ChiYuan Huang <[email protected]> + +description: | + RT4831 is a mutifunctional device that can provide power to the LCD display + and LCD backlight. + + For the LCD backlight, it can provide four channel WLED driving capability. + Each channel driving current is up to 30mA + + Datasheet is available at + https://www.richtek.com/assets/product_file/RT4831A/DS4831A-05.pdf + +properties: + compatible: + const: richtek,rt4831-backlight + + default-brightness: + description: | + The default brightness that applied to the system on start-up. + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 0 + maximum: 2048 + + max-brightness: + description: | + The max brightness for the H/W limit + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 0 + maximum: 2048 + + richtek,pwm-enable: + description: | + Specify the backlight dimming following by PWM duty or by SW control. + type: boolean + + richtek,bled-ovp-sel: + description: | + Backlight OVP level selection, currently support 17V/21V/25V/29V. + $ref: /schemas/types.yaml#/definitions/uint8 + default: 1 + minimum: 0 + maximum: 3 + + richtek,channel-use: + description: | + Backlight LED channel to be used. + BIT 0/1/2/3 is used to indicate led channel 1/2/3/4 enable or disable. + $ref: /schemas/types.yaml#/definitions/uint8 + minimum: 1 + maximum: 15 + +required: + - compatible + - richtek,channel-use + +additionalProperties: false + +examples: + - | + #include <dt-bindings/leds/rt4831-backlight.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + + rt4831@11 { + compatible = "richtek,rt4831";
Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yaml line 85
Quoted 10 lines
Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yaml new file +10
-0+ reg = <0x11>; + + backlight { + compatible = "richtek,rt4831-backlight"; + default-brightness = <1024>; + max-brightness = <2048>; + richtek,bled-ovp-sel = /bits/ 8 <RT4831_BLOVPLVL_21V>; + richtek,channel-use = /bits/ 8 <RT4831_BLED_ALLCHEN>; + }; + };
Just do 1 complete example in the mfd binding.
Quoted 4 lines
Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yaml new file +1
-0+ };Signature · 1 line
2.7.4
Re: [PATCH v2 2/4] backlight: rt4831: Adds DT binding document for Richtek RT4831 backlight
Rob Herring <[email protected]> 於 2020年12月8日 週二 上午12:42寫道:
Quoted 97 lines · cy_huang
Quoted 95 lines
From: ChiYuan Huang <[email protected]>
Adds DT binding document for Richtek RT4831 backlight.
Signed-off-by ChiYuan Huang <[email protected]>--- .../leds/backlight/richtek,rt4831-backlight.yaml | 86 ++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yamlDocumentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yaml new file +79
-0@@ -0,0 +1,86 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/leds/backlight/richtek,rt4831-backlight.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Richtek RT4831 Backlight + +maintainers: + - ChiYuan Huang <[email protected]> + +description: | + RT4831 is a mutifunctional device that can provide power to the LCD display + and LCD backlight. + + For the LCD backlight, it can provide four channel WLED driving capability. + Each channel driving current is up to 30mA + + Datasheet is available at + https://www.richtek.com/assets/product_file/RT4831A/DS4831A-05.pdf + +properties: + compatible: + const: richtek,rt4831-backlight + + default-brightness: + description: | + The default brightness that applied to the system on start-up. + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 0 + maximum: 2048 + + max-brightness: + description: | + The max brightness for the H/W limit + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 0 + maximum: 2048 + + richtek,pwm-enable: + description: | + Specify the backlight dimming following by PWM duty or by SW control. + type: boolean + + richtek,bled-ovp-sel: + description: | + Backlight OVP level selection, currently support 17V/21V/25V/29V. + $ref: /schemas/types.yaml#/definitions/uint8 + default: 1 + minimum: 0 + maximum: 3 + + richtek,channel-use: + description: | + Backlight LED channel to be used. + BIT 0/1/2/3 is used to indicate led channel 1/2/3/4 enable or disable. + $ref: /schemas/types.yaml#/definitions/uint8 + minimum: 1 + maximum: 15 + +required: + - compatible + - richtek,channel-use + +additionalProperties: false + +examples: + - | + #include <dt-bindings/leds/rt4831-backlight.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + + rt4831@11 { + compatible = "richtek,rt4831"; + reg = <0x11>; + + backlight { + compatible = "richtek,rt4831-backlight";
Quoted 9 lines
Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yaml line 85
Quoted 6 lines
Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yaml new file +6
-0+ default-brightness = <1024>; + max-brightness = <2048>; + richtek,bled-ovp-sel = /bits/ 8 <RT4831_BLOVPLVL_21V>; + richtek,channel-use = /bits/ 8 <RT4831_BLED_ALLCHEN>; + }; + };Just do 1 complete example in the mfd binding.
Ack.
Quoted 4 lines
Quoted 4 lines
Documentation/devicetree/bindings/leds/backlight/richtek,rt4831-backlight.yaml new file +1
-1+ }; --2.7.4
PATCH v2 3/4 regulator: rt4831: Adds DT binding document for Richtek RT4831 DSV regulator
In reply to cy_huangFrom: ChiYuan Huang <[email protected]>
Adds DT binding document for Richtek RT4831 DSV regulator.
--- .../regulator/richtek,rt4831-regulator.yaml | 67 ++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 Documentation/devicetree/bindings/regulator/richtek,rt4831-regulator.yaml
Documentation/devicetree/bindings/regulator/richtek,rt4831-regulator.yaml new file +67 -0
@@ -0,0 +1,67 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/regulator/richtek,rt4831-regulator.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Richtek RT4831 Display Bias Voltage Regulator + +maintainers: + - ChiYuan Huang <[email protected]> + +description: | + RT4831 is a multifunctional device that can provide power to the LCD display + and LCD backlight. + + For Display Bias Voltage DSVP and DSVN, the output range is about 4V to 6.5V. + It is sufficient to meet the current LCD power requirement. + + DSVLCM is a boost regulator in IC internal as DSVP and DSVN input power. + Its voltage should be configured above 0.15V to 0.2V gap larger than the + voltage needed for DSVP and DSVN. Too much voltage gap could improve the + voltage drop from the heavy loading scenario. But it also make the power + efficiency worse. It's a trade-off. + + Datasheet is available at + https://www.richtek.com/assets/product_file/RT4831A/DS4831A-05.pdf + +patternProperties: + "^DSV(LCM|P|N)$": + type: object + $ref: regulator.yaml# + description: + Properties for single Display Bias Voltage regulator. + +additionalProperties: false + +examples: + - | + i2c { + #address-cells = <1>; + #size-cells = <0>; + + rt4831@11 { + compatible = "richtek,rt4831"; + reg = <0x11>; + + regulators { + DSVLCM { + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <7150000>; + regulator-allow-bypass; + }; + DSVP { + regulator-name = "rt4831-dsvp"; + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <6500000>; + regulator-boot-on; + }; + DSVN { + regulator-name = "rt4831-dsvn"; + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <6500000>; + regulator-boot-on; + }; + }; + }; + };
Signature · 1 line
2.7.4
PATCH v2 4/4 mfd: rt4831: Adds DT binding document for Richtek RT4831 MFD core
In reply to cy_huangFrom: ChiYuan Huang <[email protected]>
Adds DT binding document for Richtek RT4831 MFD core.
This patch depends on
"backlight: rt4831: Adds DT binding document for Richtek RT4831 backlight". "regulator: rt4831: Adds DT binding document for Richtek RT4831 DSV regulator".
---
Changes since v2
- Add "patch depends on" in commit description.
- Adds regulator-allow-bypass flag in DSVLCM.
--- .../devicetree/bindings/mfd/richtek,rt4831.yaml | 90 ++++++++++++++++++++++ include/dt-bindings/leds/rt4831-backlight.h | 23 ++++++ 2 files changed, 113 insertions(+) create mode 100644 Documentation/devicetree/bindings/mfd/richtek,rt4831.yaml create mode 100644 include/dt-bindings/leds/rt4831-backlight.h
Documentation/devicetree/bindings/mfd/richtek,rt4831.yaml new file +90 -0
@@ -0,0 +1,90 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mfd/richtek,rt4831.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Richtek RT4831 DSV and Backlight Integrated IC + +maintainers: + - ChiYuan Huang <[email protected]> + +description: | + RT4831 is a multifunctional device that can provide power to the LCD display + and LCD backlight. + + For Display Bias Voltage DSVP and DSVN, the output range is about 4V to 6.5V. + It's sufficient to meet the current LCD power requirement. + + For the LCD backlight, it can provide four channel WLED driving capability. + Each channel driving current is up to 30mA + + Datasheet is available at + https://www.richtek.com/assets/product_file/RT4831A/DS4831A-05.pdf + +properties: + compatible: + const: richtek,rt4831 + + reg: + description: I2C device address. + maxItems: 1 + + enable-gpios: + description: | + GPIO to enable/disable the chip. It is optional. + Some usage directly tied this pin to follow VIO 1.8V power on sequence. + maxItems: 1 + + regulators: + $ref: ../regulator/richtek,rt4831-regulator.yaml + + backlight: + $ref: ../leds/backlight/richtek,rt4831-backlight.yaml + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + #include <dt-bindings/leds/rt4831-backlight.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + + rt4831@11 { + compatible = "richtek,rt4831"; + reg = <0x11>; + + regulators { + DSVLCM { + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <7150000>; + regulator-allow-bypass; + }; + DSVP { + regulator-name = "rt4831-dsvp"; + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <6500000>; + regulator-boot-on; + }; + DSVN { + regulator-name = "rt4831-dsvn"; + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <6500000>; + regulator-boot-on; + }; + }; + + backlight { + compatible = "richtek,rt4831-backlight"; + default-brightness = <1024>; + max-brightness = <2048>; + richtek,bled-ovp-sel = /bits/ 8 <RT4831_BLOVPLVL_21V>; + richtek,channel-use = /bits/ 8 <RT4831_BLED_ALLCHEN>; + }; + }; + };
include/dt-bindings/leds/rt4831-backlight.h new file +23 -0
@@ -0,0 +1,23 @@ +/* +* This header provides constants for rt4831 backlight bindings. +* +* This file is licensed under the terms of the GNU General Public +* License version 2. This program is licensed "as is" without any +* warranty of any kind, whether express or implied. +*/ + +#ifndef _DT_BINDINGS_RT4831_BACKLIGHT_H +#define _DT_BINDINGS_RT4831_BACKLIGHT_H + +#define RT4831_BLOVPLVL_17V 0 +#define RT4831_BLOVPLVL_21V 1 +#define RT4831_BLOVPLVL_25V 2 +#define RT4831_BLOVPLVL_29V 3 + +#define RT4831_BLED_CH1EN (1 << 0) +#define RT4831_BLED_CH2EN (1 << 1) +#define RT4831_BLED_CH3EN (1 << 2) +#define RT4831_BLED_CH4EN (1 << 3) +#define RT4831_BLED_ALLCHEN ((1 << 4) - 1) + +#endif /* _DT_BINDINGS_RT4831_BACKLIGHT_H */
Signature · 1 line
2.7.4
Rob Herring
maintainerRe: [PATCH v2 4/4] mfd: rt4831: Adds DT binding document for Richtek RT4831 MFD core
Quoted 8 lines · cy_huang
From: ChiYuan Huang <[email protected]>
Adds DT binding document for Richtek RT4831 MFD core.
This patch depends on
"backlight: rt4831: Adds DT binding document for Richtek RT4831 backlight". "regulator: rt4831: Adds DT binding document for Richtek RT4831 DSV regulator".
You generally don't need to state dependencies on other patches in the series. You need to state dependencies that are either pending in a maintainers tree or patches not yet applied. IOW, anything not in Linus' tree. And that information goes below the '---'.
Quoted 9 lines
Signed-off-by ChiYuan Huang <[email protected]>---
Changes since v2
- Add "patch depends on" in commit description.
- Adds regulator-allow-bypass flag in DSVLCM.--- .../devicetree/bindings/mfd/richtek,rt4831.yaml | 90 ++++++++++++++++++++++ include/dt-bindings/leds/rt4831-backlight.h | 23 ++++++
This goes in the backlight binding patch.
Documentation/devicetree/bindings/mfd/richtek,rt4831.yaml line 1
Quoted 11 lines
2 files changed, 113 insertions(+) create mode 100644 Documentation/devicetree/bindings/mfd/richtek,rt4831.yaml create mode 100644 include/dt-bindings/leds/rt4831-backlight.hDocumentation/devicetree/bindings/mfd/richtek,rt4831.yaml new file +1
-0@@ -0,0 +1,90 @@ +# SPDX-License-Identifier: GPL-2.0
For new bindings:
(GPL-2.0-only OR BSD-2-Clause)
Quoted 95 lines
Documentation/devicetree/bindings/mfd/richtek,rt4831.yaml new file +89
-0+%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mfd/richtek,rt4831.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Richtek RT4831 DSV and Backlight Integrated IC + +maintainers: + - ChiYuan Huang <[email protected]> + +description: | + RT4831 is a multifunctional device that can provide power to the LCD display + and LCD backlight. + + For Display Bias Voltage DSVP and DSVN, the output range is about 4V to 6.5V. + It's sufficient to meet the current LCD power requirement. + + For the LCD backlight, it can provide four channel WLED driving capability. + Each channel driving current is up to 30mA + + Datasheet is available at + https://www.richtek.com/assets/product_file/RT4831A/DS4831A-05.pdf + +properties: + compatible: + const: richtek,rt4831 + + reg: + description: I2C device address. + maxItems: 1 + + enable-gpios: + description: | + GPIO to enable/disable the chip. It is optional. + Some usage directly tied this pin to follow VIO 1.8V power on sequence. + maxItems: 1 + + regulators: + $ref: ../regulator/richtek,rt4831-regulator.yaml + + backlight: + $ref: ../leds/backlight/richtek,rt4831-backlight.yaml + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + #include <dt-bindings/leds/rt4831-backlight.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + + rt4831@11 { + compatible = "richtek,rt4831"; + reg = <0x11>; + + regulators { + DSVLCM { + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <7150000>; + regulator-allow-bypass; + }; + DSVP { + regulator-name = "rt4831-dsvp"; + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <6500000>; + regulator-boot-on; + }; + DSVN { + regulator-name = "rt4831-dsvn"; + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <6500000>; + regulator-boot-on; + }; + }; + + backlight { + compatible = "richtek,rt4831-backlight"; + default-brightness = <1024>; + max-brightness = <2048>; + richtek,bled-ovp-sel = /bits/ 8 <RT4831_BLOVPLVL_21V>; + richtek,channel-use = /bits/ 8 <RT4831_BLED_ALLCHEN>; + }; + }; + };include/dt-bindings/leds/rt4831-backlight.h new file +0
-0
include/dt-bindings/leds/rt4831-backlight.h line 6
Quoted 6 lines
include/dt-bindings/leds/rt4831-backlight.h new file +6
-0@@ -0,0 +1,23 @@ +/* +* This header provides constants for rt4831 backlight bindings. +* +* This file is licensed under the terms of the GNU General Public +* License version 2. This program is licensed "as is" without any +* warranty of any kind, whether express or implied.
Use SPDX tag. Also, probably should be dual licensed too if you want to use your DTs with non-GPL OS.
Quoted 20 lines
include/dt-bindings/leds/rt4831-backlight.h new file +17
-0+*/ + +#ifndef _DT_BINDINGS_RT4831_BACKLIGHT_H +#define _DT_BINDINGS_RT4831_BACKLIGHT_H + +#define RT4831_BLOVPLVL_17V 0 +#define RT4831_BLOVPLVL_21V 1 +#define RT4831_BLOVPLVL_25V 2 +#define RT4831_BLOVPLVL_29V 3 + +#define RT4831_BLED_CH1EN (1 << 0) +#define RT4831_BLED_CH2EN (1 << 1) +#define RT4831_BLED_CH3EN (1 << 2) +#define RT4831_BLED_CH4EN (1 << 3) +#define RT4831_BLED_ALLCHEN ((1 << 4) - 1) + +#endif /* _DT_BINDINGS_RT4831_BACKLIGHT_H */ Signature · 1 line
2.7.4
Re: [PATCH v2 4/4] mfd: rt4831: Adds DT binding document for Richtek RT4831 MFD core
Rob Herring <[email protected]> 於 2020年12月8日 週二 上午12:41寫道:
Quoted 8 lines · cy_huang
Quoted 6 lines
From: ChiYuan Huang <[email protected]>
Adds DT binding document for Richtek RT4831 MFD core.
This patch depends on
Quoted 7 lines
Quoted 2 lines
"backlight: rt4831: Adds DT binding document for Richtek RT4831 backlight". "regulator: rt4831: Adds DT binding document for Richtek RT4831 DSV regulator".
You generally don't need to state dependencies on other patches in the series. You need to state dependencies that are either pending in a maintainers tree or patches not yet applied. IOW, anything not in Linus' tree. And that information goes below the '---'.
Ok, I'll add the depend on tag below ---
Quoted 27 lines
Quoted 10 lines
Signed-off-by ChiYuan Huang <[email protected]>---
Changes since v2
- Add "patch depends on" in commit description.
- Adds regulator-allow-bypass flag in DSVLCM.--- .../devicetree/bindings/mfd/richtek,rt4831.yaml | 90 ++++++++++++++++++++++ include/dt-bindings/leds/rt4831-backlight.h | 23 ++++++This goes in the backlight binding patch.
Documentation/devicetree/bindings/mfd/richtek,rt4831.yaml line 1
Quoted 11 lines
2 files changed, 113 insertions(+) create mode 100644 Documentation/devicetree/bindings/mfd/richtek,rt4831.yaml create mode 100644 include/dt-bindings/leds/rt4831-backlight.hDocumentation/devicetree/bindings/mfd/richtek,rt4831.yaml new file +1
-0@@ -0,0 +1,90 @@ +# SPDX-License-Identifier: GPL-2.0For new bindings:
Quoted 2 lines
(GPL-2.0-only OR BSD-2-Clause)
Ack, change three binding files for dual license.
Quoted 96 lines
Quoted 96 lines
Documentation/devicetree/bindings/mfd/richtek,rt4831.yaml new file +89
-0+%YAML 1.2 +--- +$id: http://devicetree.org/schemas/mfd/richtek,rt4831.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Richtek RT4831 DSV and Backlight Integrated IC + +maintainers: + - ChiYuan Huang <[email protected]> + +description: | + RT4831 is a multifunctional device that can provide power to the LCD display + and LCD backlight. + + For Display Bias Voltage DSVP and DSVN, the output range is about 4V to 6.5V. + It's sufficient to meet the current LCD power requirement. + + For the LCD backlight, it can provide four channel WLED driving capability. + Each channel driving current is up to 30mA + + Datasheet is available at + https://www.richtek.com/assets/product_file/RT4831A/DS4831A-05.pdf + +properties: + compatible: + const: richtek,rt4831 + + reg: + description: I2C device address. + maxItems: 1 + + enable-gpios: + description: | + GPIO to enable/disable the chip. It is optional. + Some usage directly tied this pin to follow VIO 1.8V power on sequence. + maxItems: 1 + + regulators: + $ref: ../regulator/richtek,rt4831-regulator.yaml + + backlight: + $ref: ../leds/backlight/richtek,rt4831-backlight.yaml + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + #include <dt-bindings/leds/rt4831-backlight.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + + rt4831@11 { + compatible = "richtek,rt4831"; + reg = <0x11>; + + regulators { + DSVLCM { + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <7150000>; + regulator-allow-bypass; + }; + DSVP { + regulator-name = "rt4831-dsvp"; + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <6500000>; + regulator-boot-on; + }; + DSVN { + regulator-name = "rt4831-dsvn"; + regulator-min-microvolt = <4000000>; + regulator-max-microvolt = <6500000>; + regulator-boot-on; + }; + }; + + backlight { + compatible = "richtek,rt4831-backlight"; + default-brightness = <1024>; + max-brightness = <2048>; + richtek,bled-ovp-sel = /bits/ 8 <RT4831_BLOVPLVL_21V>; + richtek,channel-use = /bits/ 8 <RT4831_BLED_ALLCHEN>; + }; + }; + };include/dt-bindings/leds/rt4831-backlight.h new file +1
-0@@ -0,0 +1,23 @@ +/*
Quoted 9 lines
include/dt-bindings/leds/rt4831-backlight.h line 6
Quoted 5 lines
include/dt-bindings/leds/rt4831-backlight.h new file +5
-0+* This header provides constants for rt4831 backlight bindings. +* +* This file is licensed under the terms of the GNU General Public +* License version 2. This program is licensed "as is" without any +* warranty of any kind, whether express or implied. Use SPDX tag. Also, probably should be dual licensed too if you want to use your DTs with non-GPL OS.
Ack.
Quoted 20 lines
Quoted 20 lines
include/dt-bindings/leds/rt4831-backlight.h new file +17
-1+*/ + +#ifndef _DT_BINDINGS_RT4831_BACKLIGHT_H +#define _DT_BINDINGS_RT4831_BACKLIGHT_H + +#define RT4831_BLOVPLVL_17V 0 +#define RT4831_BLOVPLVL_21V 1 +#define RT4831_BLOVPLVL_25V 2 +#define RT4831_BLOVPLVL_29V 3 + +#define RT4831_BLED_CH1EN (1 << 0) +#define RT4831_BLED_CH2EN (1 << 1) +#define RT4831_BLED_CH3EN (1 << 2) +#define RT4831_BLED_CH4EN (1 << 3) +#define RT4831_BLED_ALLCHEN ((1 << 4) - 1) + +#endif /* _DT_BINDINGS_RT4831_BACKLIGHT_H */ --2.7.4