| # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) |
| # Copyright (c) 2020 MediaTek Inc. |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/media/i2c/dongwoon,dw9768.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Dongwoon Anatech DW9768 Voice Coil Motor (VCM) Lens Device Tree Bindings |
| |
| maintainers: |
| - Dongchun Zhu <dongchun.zhu@mediatek.com> |
| |
| description: |- |
| The Dongwoon DW9768 is a single 10-bit digital-to-analog (DAC) converter |
| with 100 mA output current sink capability. VCM current is controlled with |
| a linear mode driver. The DAC is controlled via a 2-wire (I2C-compatible) |
| serial interface that operates at clock rates up to 1MHz. This chip |
| integrates Advanced Actuator Control (AAC) technology and is intended for |
| driving voice coil lenses in camera modules. |
| |
| properties: |
| compatible: |
| enum: |
| - dongwoon,dw9768 # for DW9768 VCM |
| - giantec,gt9769 # for GT9769 VCM |
| |
| reg: |
| maxItems: 1 |
| |
| vin-supply: |
| description: |
| Definition of the regulator used as Digital I/O voltage supply. |
| |
| vdd-supply: |
| description: |
| Definition of the regulator used as Digital core voltage supply. |
| |
| dongwoon,aac-mode: |
| description: |
| Indication of AAC mode select. |
| $ref: "/schemas/types.yaml#/definitions/uint32" |
| enum: |
| - 1 # AAC2 mode(operation time# 0.48 x Tvib) |
| - 2 # AAC3 mode(operation time# 0.70 x Tvib) |
| - 3 # AAC4 mode(operation time# 0.75 x Tvib) |
| - 5 # AAC8 mode(operation time# 1.13 x Tvib) |
| default: 2 |
| |
| dongwoon,aac-timing: |
| description: |
| Number of AAC Timing count that controlled by one 6-bit period of |
| vibration register AACT[5:0], the unit of which is 100 us. |
| $ref: "/schemas/types.yaml#/definitions/uint32" |
| default: 0x20 |
| minimum: 0x00 |
| maximum: 0x3f |
| |
| dongwoon,clock-presc: |
| description: |
| Indication of VCM internal clock dividing rate select, as one multiple |
| factor to calculate VCM ring periodic time Tvib. |
| $ref: "/schemas/types.yaml#/definitions/uint32" |
| enum: |
| - 0 # Dividing Rate - 2 |
| - 1 # Dividing Rate - 1 |
| - 2 # Dividing Rate - 1/2 |
| - 3 # Dividing Rate - 1/4 |
| - 4 # Dividing Rate - 8 |
| - 5 # Dividing Rate - 4 |
| default: 1 |
| |
| required: |
| - compatible |
| - reg |
| - vin-supply |
| - vdd-supply |
| |
| additionalProperties: false |
| |
| examples: |
| - | |
| |
| i2c { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| dw9768: camera-lens@c { |
| compatible = "dongwoon,dw9768"; |
| reg = <0x0c>; |
| |
| vin-supply = <&mt6358_vcamio_reg>; |
| vdd-supply = <&mt6358_vcama2_reg>; |
| dongwoon,aac-timing = <0x39>; |
| }; |
| }; |
| |
| ... |