1 Dialog Semiconductor DA7280 Haptics bindings 1 Dialog Semiconductor DA7280 Haptics bindings 2 2 3 Required properties: 3 Required properties: 4 - compatible: Should be "dlg,da7280". 4 - compatible: Should be "dlg,da7280". 5 - reg: Specifies the I2C slave address. 5 - reg: Specifies the I2C slave address. 6 6 7 - interrupt-parent : Specifies the phandle of 7 - interrupt-parent : Specifies the phandle of the interrupt controller to 8 which the IRQs from DA7280 are delivered to. 8 which the IRQs from DA7280 are delivered to. 9 9 10 - dlg,actuator-type: Set Actuator type. it sho 10 - dlg,actuator-type: Set Actuator type. it should be one of: 11 "LRA" - Linear Resonance Actuator type. 11 "LRA" - Linear Resonance Actuator type. 12 "ERM-bar" - Bar type Eccentric Rotating Mass 12 "ERM-bar" - Bar type Eccentric Rotating Mass. 13 "ERM-coin" - Coin type Eccentric Rotating Ma 13 "ERM-coin" - Coin type Eccentric Rotating Mass. 14 14 15 - dlg,const-op-mode: Haptic operation mode for 15 - dlg,const-op-mode: Haptic operation mode for FF_CONSTANT. 16 Possible values: 16 Possible values: 17 1 - Direct register override(DRO) mode 17 1 - Direct register override(DRO) mode triggered by i2c(default), 18 2 - PWM data source mode controlled by 18 2 - PWM data source mode controlled by PWM duty, 19 - dlg,periodic-op-mode: Haptic operation mode 19 - dlg,periodic-op-mode: Haptic operation mode for FF_PERIODIC. 20 Possible values: 20 Possible values: 21 1 - Register triggered waveform memory 21 1 - Register triggered waveform memory(RTWM) mode, the pattern 22 assigned to the PS_SEQ_ID played a 22 assigned to the PS_SEQ_ID played as much times as PS_SEQ_LOOP, 23 2 - Edge triggered waveform memory(ETW 23 2 - Edge triggered waveform memory(ETWM) mode, external GPI(N) 24 control are required to enable/dis 24 control are required to enable/disable and it needs to keep 25 device enabled by sending magnitud 25 device enabled by sending magnitude (X > 0), 26 the pattern is assigned to the GPI 26 the pattern is assigned to the GPI(N)_SEQUENCE_ID below. 27 The default value is 1 for both of the 27 The default value is 1 for both of the operation modes. 28 For more details, please see the datas 28 For more details, please see the datasheet. 29 29 30 - dlg,nom-microvolt: Nominal actuator voltage 30 - dlg,nom-microvolt: Nominal actuator voltage rating. 31 Valid values: 0 - 6000000. 31 Valid values: 0 - 6000000. 32 - dlg,abs-max-microvolt: Absolute actuator max 32 - dlg,abs-max-microvolt: Absolute actuator maximum voltage rating. 33 Valid values: 0 - 6000000. 33 Valid values: 0 - 6000000. 34 - dlg,imax-microamp: Actuator max current rati 34 - dlg,imax-microamp: Actuator max current rating. 35 Valid values: 0 - 252000. 35 Valid values: 0 - 252000. 36 Default: 130000. 36 Default: 130000. 37 - dlg,impd-micro-ohms: the impedance of the ac 37 - dlg,impd-micro-ohms: the impedance of the actuator in micro ohms. 38 Valid values: 0 - 1500000000. 38 Valid values: 0 - 1500000000. 39 39 40 Optional properties: 40 Optional properties: 41 - pwms : phandle to the physical PWM(Pulse Wid 41 - pwms : phandle to the physical PWM(Pulse Width Modulation) device. 42 PWM properties should be named "pwms". And n 42 PWM properties should be named "pwms". And number of cell is different 43 for each pwm device. 43 for each pwm device. 44 (See Documentation/devicetree/bindings/pwm/p 44 (See Documentation/devicetree/bindings/pwm/pwm.txt 45 for further information relating to pwm pro 45 for further information relating to pwm properties) 46 46 47 - dlg,ps-seq-id: the PS_SEQ_ID(pattern ID in w 47 - dlg,ps-seq-id: the PS_SEQ_ID(pattern ID in waveform memory inside chip) 48 to play back when RTWM-MODE is enabled. 48 to play back when RTWM-MODE is enabled. 49 Valid range: 0 - 15. 49 Valid range: 0 - 15. 50 - dlg,ps-seq-loop: the PS_SEQ_LOOP, Number of 50 - dlg,ps-seq-loop: the PS_SEQ_LOOP, Number of times the pre-stored sequence 51 pointed to by PS_SEQ_ID or GPI(N)_SEQUENCE_I 51 pointed to by PS_SEQ_ID or GPI(N)_SEQUENCE_ID is repeated. 52 Valid range: 0 - 15. 52 Valid range: 0 - 15. 53 - dlg,gpiN-seq-id: the GPI(N)_SEQUENCE_ID, pat 53 - dlg,gpiN-seq-id: the GPI(N)_SEQUENCE_ID, pattern to play 54 when gpi0 is triggered, 'N' must be 0 - 2. 54 when gpi0 is triggered, 'N' must be 0 - 2. 55 Valid range: 0 - 15. 55 Valid range: 0 - 15. 56 - dlg,gpiN-mode: the pattern mode which can se 56 - dlg,gpiN-mode: the pattern mode which can select either 57 "Single-pattern" or "Multi-pattern", 'N' mus 57 "Single-pattern" or "Multi-pattern", 'N' must be 0 - 2. 58 - dlg,gpiN-polarity: gpiN polarity which can b 58 - dlg,gpiN-polarity: gpiN polarity which can be chosen among 59 "Rising-edge", "Falling-edge" and "Both-edge 59 "Rising-edge", "Falling-edge" and "Both-edge", 60 'N' must be 0 - 2 60 'N' must be 0 - 2 61 Haptic will work by this edge option in case 61 Haptic will work by this edge option in case of ETWM mode. 62 62 63 - dlg,resonant-freq-hz: use in case of LRA. 63 - dlg,resonant-freq-hz: use in case of LRA. 64 the frequency range: 50 - 300. 64 the frequency range: 50 - 300. 65 Default: 205. 65 Default: 205. 66 66 67 - dlg,bemf-sens-enable: Enable for internal lo 67 - dlg,bemf-sens-enable: Enable for internal loop computations. 68 - dlg,freq-track-enable: Enable for resonant f 68 - dlg,freq-track-enable: Enable for resonant frequency tracking. 69 - dlg,acc-enable: Enable for active accelerati 69 - dlg,acc-enable: Enable for active acceleration. 70 - dlg,rapid-stop-enable: Enable for rapid stop 70 - dlg,rapid-stop-enable: Enable for rapid stop. 71 - dlg,amp-pid-enable: Enable for the amplitude 71 - dlg,amp-pid-enable: Enable for the amplitude PID. 72 - dlg,mem-array: Customized waveform memory(pa 72 - dlg,mem-array: Customized waveform memory(patterns) data downloaded to 73 the device during initialization. This is an 73 the device during initialization. This is an array of 100 values(u8). 74 74 75 For further information, see device datasheet. 75 For further information, see device datasheet. 76 76 77 ====== 77 ====== 78 78 79 Example: 79 Example: 80 80 81 haptics: da7280-haptics@4a { 81 haptics: da7280-haptics@4a { 82 compatible = "dlg,da7280"; 82 compatible = "dlg,da7280"; 83 reg = <0x4a>; 83 reg = <0x4a>; 84 interrupt-parent = <&gpio6>; 84 interrupt-parent = <&gpio6>; 85 interrupts = <11 IRQ_TYPE_LEVE 85 interrupts = <11 IRQ_TYPE_LEVEL_LOW>; 86 dlg,actuator-type = "LRA"; 86 dlg,actuator-type = "LRA"; 87 dlg,dlg,const-op-mode = <1>; 87 dlg,dlg,const-op-mode = <1>; 88 dlg,dlg,periodic-op-mode = <1> 88 dlg,dlg,periodic-op-mode = <1>; 89 dlg,nom-microvolt = <2000000>; 89 dlg,nom-microvolt = <2000000>; 90 dlg,abs-max-microvolt = <20000 90 dlg,abs-max-microvolt = <2000000>; 91 dlg,imax-microamp = <170000>; 91 dlg,imax-microamp = <170000>; 92 dlg,resonant-freq-hz = <180>; 92 dlg,resonant-freq-hz = <180>; 93 dlg,impd-micro-ohms = <1050000 93 dlg,impd-micro-ohms = <10500000>; 94 dlg,freq-track-enable; 94 dlg,freq-track-enable; 95 dlg,rapid-stop-enable; 95 dlg,rapid-stop-enable; 96 dlg,mem-array = < 96 dlg,mem-array = < 97 0x00 0x00 0x00 0x00 0x00 0x0 97 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 98 0x00 0x00 0x00 0x00 0x00 0x0 98 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 99 0x00 0x00 0x00 0x00 0x00 0x0 99 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 100 0x00 0x00 0x00 0x00 0x00 0x0 100 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 101 0x00 0x00 0x00 0x00 0x00 0x0 101 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 102 0x00 0x00 0x00 0x00 0x00 0x0 102 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 103 0x00 0x00 0x00 0x00 0x00 0x0 103 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 104 0x00 0x00 0x00 0x00 0x00 0x0 104 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 105 0x00 0x00 0x00 0x00 0x00 0x0 105 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 106 0x00 0x00 0x00 0x00 0x00 0x0 106 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 107 >; 107 >; 108 }; 108 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.