-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dt-bindings: input: Convert ti,drv260x to DT schema
Convert the drv260x haptics binding to DT schema format. The only notable change from .txt format is that vbat-supply is not actually required, so don't make it a required property. Acked-by: Andrew Davis <afd@ti.com> Signed-off-by: Luca Weiss <luca@z3ntu.xyz> Reviewed-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20221118174831.69793-1-luca@z3ntu.xyz Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
- Loading branch information
Luca Weiss
authored and
Dmitry Torokhov
committed
Dec 9, 2022
1 parent
c4a5bca
commit 39cb018
Showing
2 changed files
with
109 additions
and
50 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
109 changes: 109 additions & 0 deletions
109
Documentation/devicetree/bindings/input/ti,drv260x.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,109 @@ | ||
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/input/ti,drv260x.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: Texas Instruments - drv260x Haptics driver family | ||
|
||
maintainers: | ||
- Andrew Davis <afd@ti.com> | ||
|
||
properties: | ||
compatible: | ||
enum: | ||
- ti,drv2604 | ||
- ti,drv2605 | ||
- ti,drv2605l | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
vbat-supply: | ||
description: Power supply to the haptic motor | ||
|
||
# TODO: Deprecate 'mode' in favor of differently named property | ||
mode: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: | | ||
Power up mode of the chip | ||
(defined in include/dt-bindings/input/ti-drv260x.h) | ||
DRV260X_LRA_MODE | ||
Linear Resonance Actuator mode (Piezoelectric) | ||
DRV260X_LRA_NO_CAL_MODE | ||
This is a LRA Mode but there is no calibration sequence during init. | ||
And the device is configured for real time playback mode (RTP mode). | ||
DRV260X_ERM_MODE | ||
Eccentric Rotating Mass mode (Rotary vibrator) | ||
enum: [ 0, 1, 2 ] | ||
|
||
library-sel: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: | | ||
These are ROM based waveforms pre-programmed into the IC. | ||
This should be set to set the library to use at power up. | ||
(defined in include/dt-bindings/input/ti-drv260x.h) | ||
DRV260X_LIB_EMPTY - Do not use a pre-programmed library | ||
DRV260X_ERM_LIB_A - Pre-programmed Library | ||
DRV260X_ERM_LIB_B - Pre-programmed Library | ||
DRV260X_ERM_LIB_C - Pre-programmed Library | ||
DRV260X_ERM_LIB_D - Pre-programmed Library | ||
DRV260X_ERM_LIB_E - Pre-programmed Library | ||
DRV260X_ERM_LIB_F - Pre-programmed Library | ||
DRV260X_LIB_LRA - Pre-programmed LRA Library | ||
enum: [ 0, 1, 2, 3, 4, 5, 6, 7 ] | ||
|
||
enable-gpio: | ||
maxItems: 1 | ||
deprecated: true | ||
|
||
enable-gpios: | ||
maxItems: 1 | ||
|
||
vib-rated-mv: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: | | ||
The rated voltage of the actuator in millivolts. | ||
If this is not set then the value will be defaulted to 3200 mV. | ||
default: 3200 | ||
|
||
vib-overdrive-mv: | ||
$ref: /schemas/types.yaml#/definitions/uint32 | ||
description: | | ||
The overdrive voltage of the actuator in millivolts. | ||
If this is not set then the value will be defaulted to 3200 mV. | ||
default: 3200 | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- enable-gpios | ||
- mode | ||
- library-sel | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/gpio/gpio.h> | ||
#include <dt-bindings/input/ti-drv260x.h> | ||
i2c { | ||
#address-cells = <1>; | ||
#size-cells = <0>; | ||
haptics@5a { | ||
compatible = "ti,drv2605l"; | ||
reg = <0x5a>; | ||
vbat-supply = <&vbat>; | ||
enable-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>; | ||
mode = <DRV260X_LRA_MODE>; | ||
library-sel = <DRV260X_LIB_LRA>; | ||
vib-rated-mv = <3200>; | ||
vib-overdrive-mv = <3200>; | ||
}; | ||
}; |