162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 262306a36Sopenharmony_ci%YAML 1.2 362306a36Sopenharmony_ci--- 462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/input/ti,drv260x.yaml# 562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 662306a36Sopenharmony_ci 762306a36Sopenharmony_cititle: Texas Instruments - drv260x Haptics driver family 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimaintainers: 1062306a36Sopenharmony_ci - Andrew Davis <afd@ti.com> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ciproperties: 1362306a36Sopenharmony_ci compatible: 1462306a36Sopenharmony_ci enum: 1562306a36Sopenharmony_ci - ti,drv2604 1662306a36Sopenharmony_ci - ti,drv2605 1762306a36Sopenharmony_ci - ti,drv2605l 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci reg: 2062306a36Sopenharmony_ci maxItems: 1 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci vbat-supply: 2362306a36Sopenharmony_ci description: Power supply to the haptic motor 2462306a36Sopenharmony_ci 2562306a36Sopenharmony_ci # TODO: Deprecate 'mode' in favor of differently named property 2662306a36Sopenharmony_ci mode: 2762306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 2862306a36Sopenharmony_ci description: | 2962306a36Sopenharmony_ci Power up mode of the chip 3062306a36Sopenharmony_ci (defined in include/dt-bindings/input/ti-drv260x.h) 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ci DRV260X_LRA_MODE 3362306a36Sopenharmony_ci Linear Resonance Actuator mode (Piezoelectric) 3462306a36Sopenharmony_ci 3562306a36Sopenharmony_ci DRV260X_LRA_NO_CAL_MODE 3662306a36Sopenharmony_ci This is a LRA Mode but there is no calibration sequence during init. 3762306a36Sopenharmony_ci And the device is configured for real time playback mode (RTP mode). 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_ci DRV260X_ERM_MODE 4062306a36Sopenharmony_ci Eccentric Rotating Mass mode (Rotary vibrator) 4162306a36Sopenharmony_ci enum: [ 0, 1, 2 ] 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ci library-sel: 4462306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 4562306a36Sopenharmony_ci description: | 4662306a36Sopenharmony_ci These are ROM based waveforms pre-programmed into the IC. 4762306a36Sopenharmony_ci This should be set to set the library to use at power up. 4862306a36Sopenharmony_ci (defined in include/dt-bindings/input/ti-drv260x.h) 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci DRV260X_LIB_EMPTY - Do not use a pre-programmed library 5162306a36Sopenharmony_ci DRV260X_ERM_LIB_A - Pre-programmed Library 5262306a36Sopenharmony_ci DRV260X_ERM_LIB_B - Pre-programmed Library 5362306a36Sopenharmony_ci DRV260X_ERM_LIB_C - Pre-programmed Library 5462306a36Sopenharmony_ci DRV260X_ERM_LIB_D - Pre-programmed Library 5562306a36Sopenharmony_ci DRV260X_ERM_LIB_E - Pre-programmed Library 5662306a36Sopenharmony_ci DRV260X_ERM_LIB_F - Pre-programmed Library 5762306a36Sopenharmony_ci DRV260X_LIB_LRA - Pre-programmed LRA Library 5862306a36Sopenharmony_ci enum: [ 0, 1, 2, 3, 4, 5, 6, 7 ] 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci enable-gpio: 6162306a36Sopenharmony_ci maxItems: 1 6262306a36Sopenharmony_ci deprecated: true 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_ci enable-gpios: 6562306a36Sopenharmony_ci maxItems: 1 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ci vib-rated-mv: 6862306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 6962306a36Sopenharmony_ci description: | 7062306a36Sopenharmony_ci The rated voltage of the actuator in millivolts. 7162306a36Sopenharmony_ci If this is not set then the value will be defaulted to 3200 mV. 7262306a36Sopenharmony_ci default: 3200 7362306a36Sopenharmony_ci 7462306a36Sopenharmony_ci vib-overdrive-mv: 7562306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 7662306a36Sopenharmony_ci description: | 7762306a36Sopenharmony_ci The overdrive voltage of the actuator in millivolts. 7862306a36Sopenharmony_ci If this is not set then the value will be defaulted to 3200 mV. 7962306a36Sopenharmony_ci default: 3200 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_cirequired: 8262306a36Sopenharmony_ci - compatible 8362306a36Sopenharmony_ci - reg 8462306a36Sopenharmony_ci - enable-gpios 8562306a36Sopenharmony_ci - mode 8662306a36Sopenharmony_ci - library-sel 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ciadditionalProperties: false 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_ciexamples: 9162306a36Sopenharmony_ci - | 9262306a36Sopenharmony_ci #include <dt-bindings/gpio/gpio.h> 9362306a36Sopenharmony_ci #include <dt-bindings/input/ti-drv260x.h> 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ci i2c { 9662306a36Sopenharmony_ci #address-cells = <1>; 9762306a36Sopenharmony_ci #size-cells = <0>; 9862306a36Sopenharmony_ci 9962306a36Sopenharmony_ci haptics@5a { 10062306a36Sopenharmony_ci compatible = "ti,drv2605l"; 10162306a36Sopenharmony_ci reg = <0x5a>; 10262306a36Sopenharmony_ci vbat-supply = <&vbat>; 10362306a36Sopenharmony_ci enable-gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>; 10462306a36Sopenharmony_ci mode = <DRV260X_LRA_MODE>; 10562306a36Sopenharmony_ci library-sel = <DRV260X_LIB_LRA>; 10662306a36Sopenharmony_ci vib-rated-mv = <3200>; 10762306a36Sopenharmony_ci vib-overdrive-mv = <3200>; 10862306a36Sopenharmony_ci }; 10962306a36Sopenharmony_ci }; 110