162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 262306a36Sopenharmony_ci# Copyright (c) 2020 MediaTek Inc. 362306a36Sopenharmony_ci%YAML 1.2 462306a36Sopenharmony_ci--- 562306a36Sopenharmony_ci$id: http://devicetree.org/schemas/media/i2c/dongwoon,dw9768.yaml# 662306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 762306a36Sopenharmony_ci 862306a36Sopenharmony_cititle: Dongwoon Anatech DW9768 Voice Coil Motor (VCM) Lens 962306a36Sopenharmony_ci 1062306a36Sopenharmony_cimaintainers: 1162306a36Sopenharmony_ci - Dongchun Zhu <dongchun.zhu@mediatek.com> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_cidescription: |- 1462306a36Sopenharmony_ci The Dongwoon DW9768 is a single 10-bit digital-to-analog (DAC) converter 1562306a36Sopenharmony_ci with 100 mA output current sink capability. VCM current is controlled with 1662306a36Sopenharmony_ci a linear mode driver. The DAC is controlled via a 2-wire (I2C-compatible) 1762306a36Sopenharmony_ci serial interface that operates at clock rates up to 1MHz. This chip 1862306a36Sopenharmony_ci integrates Advanced Actuator Control (AAC) technology and is intended for 1962306a36Sopenharmony_ci driving voice coil lenses in camera modules. 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ciproperties: 2262306a36Sopenharmony_ci compatible: 2362306a36Sopenharmony_ci enum: 2462306a36Sopenharmony_ci - dongwoon,dw9768 # for DW9768 VCM 2562306a36Sopenharmony_ci - giantec,gt9769 # for GT9769 VCM 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci reg: 2862306a36Sopenharmony_ci maxItems: 1 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci vin-supply: 3162306a36Sopenharmony_ci description: 3262306a36Sopenharmony_ci Definition of the regulator used as Digital I/O voltage supply. 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ci vdd-supply: 3562306a36Sopenharmony_ci description: 3662306a36Sopenharmony_ci Definition of the regulator used as Digital core voltage supply. 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci dongwoon,aac-mode: 3962306a36Sopenharmony_ci description: 4062306a36Sopenharmony_ci Indication of AAC mode select. 4162306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 4262306a36Sopenharmony_ci enum: 4362306a36Sopenharmony_ci - 1 # AAC2 mode(operation time# 0.48 x Tvib) 4462306a36Sopenharmony_ci - 2 # AAC3 mode(operation time# 0.70 x Tvib) 4562306a36Sopenharmony_ci - 3 # AAC4 mode(operation time# 0.75 x Tvib) 4662306a36Sopenharmony_ci - 5 # AAC8 mode(operation time# 1.13 x Tvib) 4762306a36Sopenharmony_ci default: 2 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci dongwoon,aac-timing: 5062306a36Sopenharmony_ci description: 5162306a36Sopenharmony_ci Number of AAC Timing count that controlled by one 6-bit period of 5262306a36Sopenharmony_ci vibration register AACT[5:0], the unit of which is 100 us. 5362306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 5462306a36Sopenharmony_ci default: 0x20 5562306a36Sopenharmony_ci minimum: 0x00 5662306a36Sopenharmony_ci maximum: 0x3f 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci dongwoon,clock-presc: 5962306a36Sopenharmony_ci description: 6062306a36Sopenharmony_ci Indication of VCM internal clock dividing rate select, as one multiple 6162306a36Sopenharmony_ci factor to calculate VCM ring periodic time Tvib. 6262306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 6362306a36Sopenharmony_ci enum: 6462306a36Sopenharmony_ci - 0 # Dividing Rate - 2 6562306a36Sopenharmony_ci - 1 # Dividing Rate - 1 6662306a36Sopenharmony_ci - 2 # Dividing Rate - 1/2 6762306a36Sopenharmony_ci - 3 # Dividing Rate - 1/4 6862306a36Sopenharmony_ci - 4 # Dividing Rate - 8 6962306a36Sopenharmony_ci - 5 # Dividing Rate - 4 7062306a36Sopenharmony_ci default: 1 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_cirequired: 7362306a36Sopenharmony_ci - compatible 7462306a36Sopenharmony_ci - reg 7562306a36Sopenharmony_ci - vin-supply 7662306a36Sopenharmony_ci - vdd-supply 7762306a36Sopenharmony_ci 7862306a36Sopenharmony_ciadditionalProperties: false 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ciexamples: 8162306a36Sopenharmony_ci - | 8262306a36Sopenharmony_ci 8362306a36Sopenharmony_ci i2c { 8462306a36Sopenharmony_ci #address-cells = <1>; 8562306a36Sopenharmony_ci #size-cells = <0>; 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci dw9768: camera-lens@c { 8862306a36Sopenharmony_ci compatible = "dongwoon,dw9768"; 8962306a36Sopenharmony_ci reg = <0x0c>; 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_ci vin-supply = <&mt6358_vcamio_reg>; 9262306a36Sopenharmony_ci vdd-supply = <&mt6358_vcama2_reg>; 9362306a36Sopenharmony_ci dongwoon,aac-timing = <0x39>; 9462306a36Sopenharmony_ci }; 9562306a36Sopenharmony_ci }; 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci... 98