lkml.org 
[lkml]   [2018]   [Sep]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH V6 2/3] dt-bindings: input: Add document bindings for DA7280

    Add device tree binding information for DA7280 haptic driver.
    Example bindings for DA7280 are added.

    Reviewed-by: Rob Herring <robh@kernel.org>.

    Signed-off-by: Roy Im <roy.im.opensource@diasemi.com>

    ---
    v6: No changes.
    v5: Updated descriptions and fixed errors.
    v4: Fixed commit message, properties.
    v3: Fixed subject format.
    v2: No changes


    .../devicetree/bindings/input/dlg,da7280.txt | 105 ++++++++++++++++++++
    1 file changed, 105 insertions(+)
    create mode 100644 Documentation/devicetree/bindings/input/dlg,da7280.txt

    diff --git a/Documentation/devicetree/bindings/input/dlg,da7280.txt b/Documentation/devicetree/bindings/input/dlg,da7280.txt
    new file mode 100644
    index 0000000..a25a12f
    --- /dev/null
    +++ b/Documentation/devicetree/bindings/input/dlg,da7280.txt
    @@ -0,0 +1,105 @@
    +Dialog Semiconductor DA7280 Haptics bindings
    +
    +Required properties:
    +- compatible: Should be "dlg,da7280".
    +- reg: Specifies the I2C slave address.
    +
    +- interrupt-parent : Specifies the phandle of the interrupt controller to
    + which the IRQs from DA7280 are delivered to.
    +
    +- dlg,actuator-type: Set Actuator type. it should be one of:
    + "LRA" - Linear Resonance Actuator type.
    + "ERM-bar" - Bar type Eccentric Rotating Mass.
    + "ERM-coin" - Coin type Eccentric Rotating Mass.
    +
    +- dlg,op-mode: Haptic operation mode.
    + Possible values:
    + 1 - Direct register override(DRO) mode triggered by i2c(default),
    + 2 - PWM data source mode controlled by PWM duty,
    + 3 - Register triggered waveform memory(RTWM) mode, the pattern
    + assigned to the PS_SEQ_ID played as much times as PS_SEQ_LOOP,
    + 4 - Edge triggered waveform memory(ETWM) mode, external GPI(N)
    + control are required to enable/disable and it needs to keep
    + device enabled by sending magnitude (X > 0),
    + the pattern is assigned to the GPI(N)_SEQUENCE_ID below.
    + For more details, please see the datasheet.
    +
    +- dlg,nom-microvolt: Nominal actuator voltage rating.
    + Valid values: 0 - 6000000.
    +- dlg,abs-max-microvolt: Absolute actuator maximum voltage rating.
    + Valid values: 0 - 6000000.
    +- dlg,imax-microamp: Actuator max current rating.
    + Valid values: 0 - 252000.
    + Default: 130000.
    +- dlg,impd-micro-ohms: the impedance of the actuator in micro ohms.
    + Valid values: 0 - 1500000000.
    +
    +Optional properties:
    +- pwms : phandle to the physical PWM(Pulse Width Modulation) device.
    + PWM properties should be named "pwms". And number of cell is different
    + for each pwm device.
    + (See Documentation/devicetree/bindings/pwm/pwm.txt
    + for further information relating to pwm properties)
    +
    +- dlg,ps-seq-id: the PS_SEQ_ID(pattern ID in waveform memory inside chip)
    + to play back when RTWM-MODE is enabled.
    + Valid range: 0 - 15.
    +- dlg,ps-seq-loop: the PS_SEQ_LOOP, Number of times the pre-stored sequence
    + pointed to by PS_SEQ_ID or GPI(N)_SEQUENCE_ID is repeated.
    + Valid range: 0 - 15.
    +- dlg,gpiN-seq-id: the GPI(N)_SEQUENCE_ID, pattern to play
    + when gpi0 is triggered, 'N' must be 0 - 2.
    + Valid range: 0 - 15.
    +- dlg,gpiN-mode: the pattern mode which can select either
    + "Single-pattern" or "Multi-pattern", 'N' must be 0 - 2.
    +- dlg,gpiN-polarity: gpiN polarity which can be chosen among
    + "Rising-edge", "Falling-edge" and "Both-edge",
    + 'N' must be 0 - 2
    + Haptic will work by this edge option in case of ETWM mode.
    +
    +- dlg,resonant-freq-hz: use in case of LRA.
    + the frequency range: 50 - 300.
    + Default: 205.
    +
    +- dlg,bemf-sens-enable: Enable for internal loop computations.
    +- dlg,freq-track-enable: Enable for resonant frequency tracking.
    +- dlg,acc-enable: Enable for active acceleration.
    +- dlg,rapid-stop-enable: Enable for rapid stop.
    +- dlg,amp-pid-enable: Enable for the amplitude PID.
    +- dlg,mem-array: Customized waveform memory(patterns) data downloaded to
    + the device during initialization. This is an array of 100 values(u8).
    +
    +For further information, see device datasheet.
    +
    +======
    +
    +Example:
    +
    + haptics: da7280-haptics@4a {
    + compatible = "dlg,da7280";
    + reg = <0x4a>;
    + interrupt-parent = <&gpio6>;
    + interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
    + dlg,actuator-type = "LRA";
    + dlg,op-mode = <1>;
    + dlg,nom-microvolt = <2000000>;
    + dlg,abs-max-microvolt = <2000000>;
    + dlg,imax-microamp = <170000>;
    + dlg,resonant-freq-hz = <180>;
    + dlg,impd-micro-ohms = <10500000>;
    + dlg,freq-track-enable;
    + dlg,rapid-stop-enable;
    + dlg,mem-array = <
    + 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    + 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    + 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    + 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    + 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    + 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    + 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    + 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    + 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    + 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    + >;
    +
    + };
    --
    end-of-patch for PATCH V6
    \
     
     \ /
      Last update: 2018-09-11 14:45    [W:6.506 / U:0.108 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site