# 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 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>; }; }; ...