Loading Documentation/devicetree/bindings/regulator/qpnp-lcdb-regulator.txt 0 → 100644 +250 −0 Original line number Diff line number Diff line QPNP LCDB (LCD Bias) Regulator QPNP LCDB module provides voltage bias to the LCD display panel. The biases are positive (VDISP - supported by LDO) and negative (VDISN - supported by NCP) voltage signals. The module also supports TTW (touch-to-wake) capability. This document describes the bindings for QPNP LCDB module. ======================= Required Node Structure ======================= LCDB module must be described in two level of device nodes. ============================== First Level Node - LCDB module ============================== - compatible Usage: required Value type: <string> Definition: should be "qcom,qpnp-lcdb-regulator" - reg Usage: required Value type: <prop-encoded-array> Definition: Base address of the LCDB SPMI peripheral. Touch-to-wake (TTW) properties: TTW supports 2 modes of operation - HW and SW. In the HW mode the enable/disable logic is controlled by an external signal (pin) where as in the SW mode it is is controlled by a pre-configured timer (ton/toff) programmed in the TTW register. Properties below are specific to TTW mode only. They are sepecified in the main node. - qcom,ttw-enable Usage: optional Value type: <bool> Definition: Touch to wake-up support enabled. - qcom,ttw-mode-sw Usage: optional Value type: <bool> Definition: Touch to wake supported in SW mode. If not defined, ttw is enabled by HW pin. - qcom,attw-toff-ms Usage: required if 'qcom,ttw-mode-sw' is true. Value type: <bool> Definition: Off time (in mS) for the VDISP/VDISN signals. Possible values are 4, 8, 16, 32. - qcom,attw-ton-ms Usage: required if 'qcom,ttw-mode-sw' is true. Value type: <bool> Definition: ON time (in mS) for the VDISP/VDISN signals. Possible values are 4, 8, 16, 32. ======================================== Second Level Nodes - LDO/NCP/BOOST block ======================================== LDO / NCP subnode common properties: Properties below are common to the LDO and NCP bias. - label Usage: required Value type: <string> Definition: A string used to describe the bias type. Possible values are ldo, ncp, bst. - regulator-name Usage: required Value type: <string> Definition: A string used to describe the regulator. - regulator-min-microvolt Usage: required Value type: <u32> Definition: Minimum voltage (in uV) supported by the bias. - regulator-max-microvolt Usage: required Value type: <u32> Definition: Maximum voltage (in uV) supported by the bias. LDO subnode properties: Properties below are specific to LDO bias only. - qcom,ldo-voltage-mv Usage: optional Value type: <u32> Definition: Voltage (in mV) progammed for the LDO (VDISP). Possile values are 4000mV to 6000mV. The range 4000mV to 4900mV is in 100mV steps and 4900mV to 6000mV is in 50mV steps. - qcom,ldo-pd Usage: optional Value type: <u32> Definition: Pull-down configuration of LDO. Possible values are: 1 - Enable pull-down 0 - Disable pull-down - qcom,ldo-pd-strength Usage: optional Value type: <u32> Definition: Pull-down strength. Possible values are: 0 - Weak pull-down 1 - Strong pull-down - qcom,ldo-ilim-ma Usage: optional Value type: <u32> Definition: Current limit (in mA) of the LDO bias. Possible values are 110, 160, 210, 260, 310, 360, 410, 460. - qcom,ldo-soft-start-us Usage: optional Value type: <u32> Definition: Soft-start time (in uS) of the LDO bias. Possible values are 0, 500, 1000, 2000. NCP subnode properties: Properties below are specific to NCP bias only. - qcom,ncp-voltage-mv Usage: optional Value type: <u32> Definition: Voltage (in mV) progammed for the NCP (VDISN). Possile values are 4000mV to 6000mV. The range 4000mV to 4900mV is in 100mV steps and 4900mV to 6000mV is in 50mV steps. - qcom,ncp-pd Usage: optional Value type: <u32> Definition: Pull-down configuration of NCP. Possible values are: 1 - Enable pull-down 0 - Disable pull-down - qcom,ncp-pd-strength Usage: optional Value type: <u32> Definition: Pull-down strength. Possible values are: 0 - Weak pull-down 1 - Strong pull-down - qcom,ncp-ilim-ma Usage: optional Value type: <u32> Definition: Current limit (in mA) of the NCP bias. Possible values are 260, 460, 640, 810. - qcom,ncp-soft-start-us Usage: optional Value type: <u32> Definition: Soft-start time (in uS) of the NCP bias. Possible values are 0, 500, 1000, 2000. BOOST subnode properties: Properties below are specific to BOOST subnode only. - qcom,bst-pd Usage: optional Value type: <bool> Definition: Pull-down configuration of BOOST. Possible values are: 1 - Enable pull-down 0 - Disable pull-down - qcom,bst-pd-strength Usage: optional Value type: <u32> Definition: Pull-down strength. Possible values are: 0 - Weak pull-down 1 - Strong pull-down - qcom,bst-ps Usage: optional Value type: <u32> Definition: Pulse-skip configuration for boost. Possible values are: 1 - Enable Pulse-skip 0 - Disable Pulse-skip - qcom,bst-ps-threshold-ma Usage: optional Value type: <u32> Definition: Current threshold (in mA) at which pulse-skip is entered. Possible values are 50, 60, 70, 80. - qcom,bst-ilim-ma Usage: optional Value type: <u32> Definition: Current limit (in mA) of the BOOST rail. Possible values are 200 to 1600mA in 200mA steps. ======= Example ======= pm2falcon_lcdb: qpnp-lcdb@ec00 { compatible = "qcom,qpnp-lcdb-regulator"; #address-cells = <1>; #size-cells = <1>; reg = <0xec00 0x100>; qcom,ttw-enable; lcdb_ldo_vreg: ldo { label = "ldo"; regulator-name = "lcdb_ldo"; regulator-min-microvolt = <4000000>; regulator-max-microvolt = <6000000>; qcom,ldo-voltage-mv = <5400>; qcom,ldo-pd = <1>; qcom,ldo-pd-strength = <1>; }; lcdb_ncp_vreg: ncp { label = "ncp"; regulator-name = "lcdb_ncp"; regulator-min-microvolt = <4000000>; regulator-max-microvolt = <6000000>; qcom,ncp-voltage-mv = <5400>; qcom,ncp-pd = <1>; qcom,ncp-pd-strength = <1>; }; lcdb_bst: bst { label = "bst"; qcom,bst-pd = <1>; qcom,bst-pd-strength = <1>; qcom,bst-ps = <1>; qcom,bst-ps-threshold-ma = <50>; }; }; arch/arm/configs/msmfalcon_defconfig +1 −0 Original line number Diff line number Diff line Loading @@ -346,6 +346,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y CONFIG_REGULATOR_QPNP_LCDB=y CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y Loading arch/arm64/configs/msmfalcon-perf_defconfig +1 −0 Original line number Diff line number Diff line Loading @@ -346,6 +346,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y CONFIG_REGULATOR_QPNP_LCDB=y CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y Loading arch/arm64/configs/msmfalcon_defconfig +1 −0 Original line number Diff line number Diff line Loading @@ -348,6 +348,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y CONFIG_REGULATOR_QPNP_LCDB=y CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y Loading drivers/regulator/Kconfig +9 −0 Original line number Diff line number Diff line Loading @@ -826,6 +826,15 @@ config REGULATOR_QPNP_LABIBB negative boost regulator. LAB/IBB regulators can also be used together for LCD or AMOLED. config REGULATOR_QPNP_LCDB depends on SPMI tristate "Qualcomm Technologies, Inc QPNP LCDB support" help Supports the LCDB module in the Qualcomm Technologies, Inc QPNP PMIC. Exposes regulators to control the positive and negative voltage bias for the LCD display panel. It also allows configurability for the various bias-voltage parameters. config REGULATOR_SPM bool "SPM regulator driver" depends on SPMI Loading Loading
Documentation/devicetree/bindings/regulator/qpnp-lcdb-regulator.txt 0 → 100644 +250 −0 Original line number Diff line number Diff line QPNP LCDB (LCD Bias) Regulator QPNP LCDB module provides voltage bias to the LCD display panel. The biases are positive (VDISP - supported by LDO) and negative (VDISN - supported by NCP) voltage signals. The module also supports TTW (touch-to-wake) capability. This document describes the bindings for QPNP LCDB module. ======================= Required Node Structure ======================= LCDB module must be described in two level of device nodes. ============================== First Level Node - LCDB module ============================== - compatible Usage: required Value type: <string> Definition: should be "qcom,qpnp-lcdb-regulator" - reg Usage: required Value type: <prop-encoded-array> Definition: Base address of the LCDB SPMI peripheral. Touch-to-wake (TTW) properties: TTW supports 2 modes of operation - HW and SW. In the HW mode the enable/disable logic is controlled by an external signal (pin) where as in the SW mode it is is controlled by a pre-configured timer (ton/toff) programmed in the TTW register. Properties below are specific to TTW mode only. They are sepecified in the main node. - qcom,ttw-enable Usage: optional Value type: <bool> Definition: Touch to wake-up support enabled. - qcom,ttw-mode-sw Usage: optional Value type: <bool> Definition: Touch to wake supported in SW mode. If not defined, ttw is enabled by HW pin. - qcom,attw-toff-ms Usage: required if 'qcom,ttw-mode-sw' is true. Value type: <bool> Definition: Off time (in mS) for the VDISP/VDISN signals. Possible values are 4, 8, 16, 32. - qcom,attw-ton-ms Usage: required if 'qcom,ttw-mode-sw' is true. Value type: <bool> Definition: ON time (in mS) for the VDISP/VDISN signals. Possible values are 4, 8, 16, 32. ======================================== Second Level Nodes - LDO/NCP/BOOST block ======================================== LDO / NCP subnode common properties: Properties below are common to the LDO and NCP bias. - label Usage: required Value type: <string> Definition: A string used to describe the bias type. Possible values are ldo, ncp, bst. - regulator-name Usage: required Value type: <string> Definition: A string used to describe the regulator. - regulator-min-microvolt Usage: required Value type: <u32> Definition: Minimum voltage (in uV) supported by the bias. - regulator-max-microvolt Usage: required Value type: <u32> Definition: Maximum voltage (in uV) supported by the bias. LDO subnode properties: Properties below are specific to LDO bias only. - qcom,ldo-voltage-mv Usage: optional Value type: <u32> Definition: Voltage (in mV) progammed for the LDO (VDISP). Possile values are 4000mV to 6000mV. The range 4000mV to 4900mV is in 100mV steps and 4900mV to 6000mV is in 50mV steps. - qcom,ldo-pd Usage: optional Value type: <u32> Definition: Pull-down configuration of LDO. Possible values are: 1 - Enable pull-down 0 - Disable pull-down - qcom,ldo-pd-strength Usage: optional Value type: <u32> Definition: Pull-down strength. Possible values are: 0 - Weak pull-down 1 - Strong pull-down - qcom,ldo-ilim-ma Usage: optional Value type: <u32> Definition: Current limit (in mA) of the LDO bias. Possible values are 110, 160, 210, 260, 310, 360, 410, 460. - qcom,ldo-soft-start-us Usage: optional Value type: <u32> Definition: Soft-start time (in uS) of the LDO bias. Possible values are 0, 500, 1000, 2000. NCP subnode properties: Properties below are specific to NCP bias only. - qcom,ncp-voltage-mv Usage: optional Value type: <u32> Definition: Voltage (in mV) progammed for the NCP (VDISN). Possile values are 4000mV to 6000mV. The range 4000mV to 4900mV is in 100mV steps and 4900mV to 6000mV is in 50mV steps. - qcom,ncp-pd Usage: optional Value type: <u32> Definition: Pull-down configuration of NCP. Possible values are: 1 - Enable pull-down 0 - Disable pull-down - qcom,ncp-pd-strength Usage: optional Value type: <u32> Definition: Pull-down strength. Possible values are: 0 - Weak pull-down 1 - Strong pull-down - qcom,ncp-ilim-ma Usage: optional Value type: <u32> Definition: Current limit (in mA) of the NCP bias. Possible values are 260, 460, 640, 810. - qcom,ncp-soft-start-us Usage: optional Value type: <u32> Definition: Soft-start time (in uS) of the NCP bias. Possible values are 0, 500, 1000, 2000. BOOST subnode properties: Properties below are specific to BOOST subnode only. - qcom,bst-pd Usage: optional Value type: <bool> Definition: Pull-down configuration of BOOST. Possible values are: 1 - Enable pull-down 0 - Disable pull-down - qcom,bst-pd-strength Usage: optional Value type: <u32> Definition: Pull-down strength. Possible values are: 0 - Weak pull-down 1 - Strong pull-down - qcom,bst-ps Usage: optional Value type: <u32> Definition: Pulse-skip configuration for boost. Possible values are: 1 - Enable Pulse-skip 0 - Disable Pulse-skip - qcom,bst-ps-threshold-ma Usage: optional Value type: <u32> Definition: Current threshold (in mA) at which pulse-skip is entered. Possible values are 50, 60, 70, 80. - qcom,bst-ilim-ma Usage: optional Value type: <u32> Definition: Current limit (in mA) of the BOOST rail. Possible values are 200 to 1600mA in 200mA steps. ======= Example ======= pm2falcon_lcdb: qpnp-lcdb@ec00 { compatible = "qcom,qpnp-lcdb-regulator"; #address-cells = <1>; #size-cells = <1>; reg = <0xec00 0x100>; qcom,ttw-enable; lcdb_ldo_vreg: ldo { label = "ldo"; regulator-name = "lcdb_ldo"; regulator-min-microvolt = <4000000>; regulator-max-microvolt = <6000000>; qcom,ldo-voltage-mv = <5400>; qcom,ldo-pd = <1>; qcom,ldo-pd-strength = <1>; }; lcdb_ncp_vreg: ncp { label = "ncp"; regulator-name = "lcdb_ncp"; regulator-min-microvolt = <4000000>; regulator-max-microvolt = <6000000>; qcom,ncp-voltage-mv = <5400>; qcom,ncp-pd = <1>; qcom,ncp-pd-strength = <1>; }; lcdb_bst: bst { label = "bst"; qcom,bst-pd = <1>; qcom,bst-pd-strength = <1>; qcom,bst-ps = <1>; qcom,bst-ps-threshold-ma = <50>; }; };
arch/arm/configs/msmfalcon_defconfig +1 −0 Original line number Diff line number Diff line Loading @@ -346,6 +346,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y CONFIG_REGULATOR_QPNP_LCDB=y CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y Loading
arch/arm64/configs/msmfalcon-perf_defconfig +1 −0 Original line number Diff line number Diff line Loading @@ -346,6 +346,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y CONFIG_REGULATOR_QPNP_LCDB=y CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y Loading
arch/arm64/configs/msmfalcon_defconfig +1 −0 Original line number Diff line number Diff line Loading @@ -348,6 +348,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_RPM_SMD=y CONFIG_REGULATOR_QPNP=y CONFIG_REGULATOR_QPNP_LABIBB=y CONFIG_REGULATOR_QPNP_LCDB=y CONFIG_REGULATOR_SPM=y CONFIG_REGULATOR_CPR3_HMSS=y CONFIG_REGULATOR_CPR3_MMSS=y Loading
drivers/regulator/Kconfig +9 −0 Original line number Diff line number Diff line Loading @@ -826,6 +826,15 @@ config REGULATOR_QPNP_LABIBB negative boost regulator. LAB/IBB regulators can also be used together for LCD or AMOLED. config REGULATOR_QPNP_LCDB depends on SPMI tristate "Qualcomm Technologies, Inc QPNP LCDB support" help Supports the LCDB module in the Qualcomm Technologies, Inc QPNP PMIC. Exposes regulators to control the positive and negative voltage bias for the LCD display panel. It also allows configurability for the various bias-voltage parameters. config REGULATOR_SPM bool "SPM regulator driver" depends on SPMI Loading