2020-09-28 15:19:44 +08:00
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id : http://devicetree.org/schemas/regulator/richtek,rtmv20-regulator.yaml#
$schema : http://devicetree.org/meta-schemas/core.yaml#
title : Richtek RTMV20 laser diode regulator
maintainers :
- ChiYuan Huang <cy_huang@richtek.com>
description : |
Richtek RTMV20 is a load switch current regulator that can supply up to 6A.
It is used to drive laser diode. There're two signals for chip controls
(Enable/Fail), Enable pin to turn chip on, and Fail pin as fault indication.
There're still four pins for camera control, two inputs (strobe and vsync),
the others for outputs (fsin1 and fsin2). Strobe input to start the current
supply, vsync input from IR camera, and fsin1/fsin2 output for the optional.
properties :
compatible :
const : richtek,rtmv20
reg :
maxItems : 1
wakeup-source : true
2020-09-30 18:08:00 +08:00
interrupts :
2020-09-28 15:19:44 +08:00
maxItems : 1
enable-gpios :
description : A connection of the 'enable' gpio line.
maxItems : 1
2020-09-30 18:08:00 +08:00
richtek,ld-pulse-delay-us :
2020-09-28 15:19:44 +08:00
description : |
load current pulse delay in microsecond after strobe pin pulse high.
minimum : 0
maximum : 100000
default : 0
2020-09-30 18:08:00 +08:00
richtek,ld-pulse-width-us :
2020-09-28 15:19:44 +08:00
description : |
Load current pulse width in microsecond after strobe pin pulse high.
minimum : 0
maximum : 10000
default : 1200
2020-09-30 18:08:00 +08:00
richtek,fsin1-delay-us :
2020-09-28 15:19:44 +08:00
description : |
Fsin1 pulse high delay in microsecond after vsync signal pulse high.
minimum : 0
maximum : 100000
default : 23000
2020-09-30 18:08:00 +08:00
richtek,fsin1-width-us :
2020-09-28 15:19:44 +08:00
description : |
Fsin1 pulse high width in microsecond after vsync signal pulse high.
minimum : 40
maximum : 10000
default : 160
2020-09-30 18:08:00 +08:00
richtek,fsin2-delay-us :
2020-09-28 15:19:44 +08:00
description : |
Fsin2 pulse high delay in microsecond after vsync signal pulse high.
minimum : 0
maximum : 100000
default : 23000
2020-09-30 18:08:00 +08:00
richtek,fsin2-width-us :
2020-09-28 15:19:44 +08:00
description : |
Fsin2 pulse high width in microsecond after vsync signal pulse high.
minimum : 40
maximum : 10000
default : 160
2020-09-30 18:08:00 +08:00
richtek,es-pulse-width-us :
2020-09-28 15:19:44 +08:00
description : Eye safety function pulse width limit in microsecond.
minimum : 0
maximum : 10000
default : 1200
2020-09-30 18:08:00 +08:00
richtek,es-ld-current-microamp :
2020-09-28 15:19:44 +08:00
description : Eye safety function load current limit in microamp.
minimum : 0
maximum : 6000000
default : 3000000
2020-09-30 18:08:00 +08:00
richtek,lbp-level-microvolt :
2020-09-28 15:19:44 +08:00
description : Low battery protection level in microvolt.
minimum : 2400000
maximum : 3700000
default : 2700000
2020-09-30 18:08:00 +08:00
richtek,lbp-enable :
2020-09-28 15:19:44 +08:00
description : Low battery protection function enable control.
type : boolean
2020-09-30 18:08:00 +08:00
richtek,strobe-polarity-high :
2020-09-28 15:19:44 +08:00
description : Strobe pin active polarity control.
type : boolean
2020-09-30 18:08:00 +08:00
richtek,vsync-polarity-high :
2020-09-28 15:19:44 +08:00
description : Vsync pin active polarity control.
type : boolean
2020-09-30 18:08:00 +08:00
richtek,fsin-enable :
2020-09-28 15:19:44 +08:00
description : Fsin function enable control.
type : boolean
2020-09-30 18:08:00 +08:00
richtek,fsin-output :
2020-09-28 15:19:44 +08:00
description : Fsin function output control.
type : boolean
2020-09-30 18:08:00 +08:00
richtek,es-enable :
2020-09-28 15:19:44 +08:00
description : Eye safety function enable control.
type : boolean
2020-09-30 18:08:00 +08:00
lsw :
description : load switch current regulator description.
2020-09-28 15:19:44 +08:00
type : object
2023-03-17 18:36:14 -05:00
$ref : regulator.yaml#
2020-09-28 15:19:44 +08:00
required :
- compatible
- reg
- wakeup-source
2020-09-30 18:08:00 +08:00
- interrupts
2020-09-28 15:19:44 +08:00
- enable-gpios
- lsw
additionalProperties : false
examples :
- |
#include <dt-bindings/interrupt-controller/irq.h>
i2c {
#address-cells = <1>;
#size-cells = <0>;
rtmv20@34 {
compatible = "richtek,rtmv20";
reg = <0x34>;
wakeup-source;
2020-09-30 18:08:00 +08:00
interrupts-extended = <&gpio26 2 IRQ_TYPE_LEVEL_LOW>;
2020-09-28 15:19:44 +08:00
enable-gpios = <&gpio26 3 0>;
2020-09-30 18:08:00 +08:00
richtek,strobe-polarity-high;
richtek,vsync-polarity-high;
2020-09-28 15:19:44 +08:00
lsw {
regulator-name = "rtmv20,lsw";
regulator-min-microamp = <0>;
regulator-max-microamp = <6000000>;
};
};
};
...