1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/iio/adc/aspeed,ast2600-adc.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: ADC that forms part of an ASPEED server management processor. 8 9maintainers: 10 - Billy Tsai <billy_tsai@aspeedtech.com> 11 12description: | 13 • 10-bits resolution for 16 voltage channels. 14 • The device split into two individual engine and each contains 8 voltage 15 channels. 16 • Channel scanning can be non-continuous. 17 • Programmable ADC clock frequency. 18 • Programmable upper and lower threshold for each channels. 19 • Interrupt when larger or less than threshold for each channels. 20 • Support hysteresis for each channels. 21 • Built-in a compensating method. 22 • Built-in a register to trim internal reference voltage. 23 • Internal or External reference voltage. 24 • Support 2 Internal reference voltage 1.2v or 2.5v. 25 • Integrate dividing circuit for battery sensing. 26 27properties: 28 compatible: 29 enum: 30 - aspeed,ast2600-adc0 31 - aspeed,ast2600-adc1 32 description: 33 Their trimming data, which is used to calibrate internal reference volage, 34 locates in different address of OTP. 35 36 reg: 37 maxItems: 1 38 39 clocks: 40 maxItems: 1 41 description: 42 Input clock used to derive the sample clock. Expected to be the 43 SoC's APB clock. 44 45 resets: 46 maxItems: 1 47 48 "#io-channel-cells": 49 const: 1 50 51 vref-supply: 52 description: 53 The external regulator supply ADC reference voltage. 54 55 aspeed,int-vref-microvolt: 56 enum: [1200000, 2500000] 57 description: 58 ADC internal reference voltage in microvolts. 59 60 aspeed,battery-sensing: 61 type: boolean 62 description: 63 Inform the driver that last channel will be used to sensor battery. 64 65 aspeed,trim-data-valid: 66 type: boolean 67 description: | 68 The ADC reference voltage can be calibrated to obtain the trimming 69 data which will be stored in otp. This property informs the driver that 70 the data store in the otp is valid. 71 72required: 73 - compatible 74 - reg 75 - clocks 76 - resets 77 - "#io-channel-cells" 78 79additionalProperties: false 80 81examples: 82 - | 83 #include <dt-bindings/clock/ast2600-clock.h> 84 adc0: adc@1e6e9000 { 85 compatible = "aspeed,ast2600-adc0"; 86 reg = <0x1e6e9000 0x100>; 87 clocks = <&syscon ASPEED_CLK_APB2>; 88 resets = <&syscon ASPEED_RESET_ADC>; 89 #io-channel-cells = <1>; 90 aspeed,int-vref-microvolt = <2500000>; 91 }; 92 adc1: adc@1e6e9100 { 93 compatible = "aspeed,ast2600-adc1"; 94 reg = <0x1e6e9100 0x100>; 95 clocks = <&syscon ASPEED_CLK_APB2>; 96 resets = <&syscon ASPEED_RESET_ADC>; 97 #io-channel-cells = <1>; 98 aspeed,int-vref-microvolt = <2500000>; 99 }; 100... 101