1*5decbf53SPrzemyslaw MarczakADC device binding 2*5decbf53SPrzemyslaw Marczak 3*5decbf53SPrzemyslaw MarczakThere are no mandatory properties for ADC. However, if Voltage info is required, 4*5decbf53SPrzemyslaw Marczakthen there are two options: 5*5decbf53SPrzemyslaw Marczak- use microvolts constraint or 6*5decbf53SPrzemyslaw Marczak- use regulator phandle to enable/read supply's Voltage 7*5decbf53SPrzemyslaw Marczak 8*5decbf53SPrzemyslaw MarczakProperties and constraints: 9*5decbf53SPrzemyslaw Marczak*optional and always checked, Voltage polarity info: 10*5decbf53SPrzemyslaw Marczak- vdd-polarity-negative: positive reference Voltage has a negative polarity 11*5decbf53SPrzemyslaw Marczak- vss-polarity-negative: negative reference Voltage has a negative polarity 12*5decbf53SPrzemyslaw Marczak 13*5decbf53SPrzemyslaw MarczakChose one option, for each supply (Vdd/Vss): 14*5decbf53SPrzemyslaw Marczak 15*5decbf53SPrzemyslaw Marczak*optional and always checked, supply Voltage constants: 16*5decbf53SPrzemyslaw Marczak- vdd-supply: phandle to Vdd regulator's node 17*5decbf53SPrzemyslaw Marczak- vss-supply: phandle to Vss regulator's node 18*5decbf53SPrzemyslaw Marczak 19*5decbf53SPrzemyslaw Marczak*optional and checked only if the above corresponding, doesn't exist: 20*5decbf53SPrzemyslaw Marczak- vdd-microvolts: positive reference Voltage value [uV] 21*5decbf53SPrzemyslaw Marczak- vss-microvolts: negative reference Voltage value [uV] 22*5decbf53SPrzemyslaw Marczak 23*5decbf53SPrzemyslaw MarczakExample with constant 'Vdd' value: 24*5decbf53SPrzemyslaw Marczakadc@1000000 { 25*5decbf53SPrzemyslaw Marczak compatible = "some-adc"; 26*5decbf53SPrzemyslaw Marczak reg = <0xaabb000 0x100>; 27*5decbf53SPrzemyslaw Marczak status = "enabled"; 28*5decbf53SPrzemyslaw Marczak vdd-microvolts = <1800000>; 29*5decbf53SPrzemyslaw Marczak}; 30*5decbf53SPrzemyslaw Marczak 31*5decbf53SPrzemyslaw MarczakExample of supply phandle usage, for the ADC's VDD/VSS references as below: 32*5decbf53SPrzemyslaw Marczak _______ _______ 33*5decbf53SPrzemyslaw Marczak |Sandbox| |Sandbox| 34*5decbf53SPrzemyslaw Marczak : PMIC : : ADC : 35*5decbf53SPrzemyslaw Marczak . . . . 36*5decbf53SPrzemyslaw Marczak | | (Vdd) | AIN0|--> 37*5decbf53SPrzemyslaw Marczak | BUCK2|-------|VDDref | 38*5decbf53SPrzemyslaw Marczak | (3.3V)| _|VSSref | 39*5decbf53SPrzemyslaw Marczak |_______| | |_______| 40*5decbf53SPrzemyslaw Marczak _|_ 41*5decbf53SPrzemyslaw Marczak 42*5decbf53SPrzemyslaw MarczakFor the above PMIC, the node can be defined as follows: 43*5decbf53SPrzemyslaw Marczaksandbox_pmic { 44*5decbf53SPrzemyslaw Marczak compatible = "sandbox,pmic"; 45*5decbf53SPrzemyslaw Marczak ... 46*5decbf53SPrzemyslaw Marczak buck2: buck2 { 47*5decbf53SPrzemyslaw Marczak regulator-name = "SUPPLY_3.3V"; 48*5decbf53SPrzemyslaw Marczak regulator-min-microvolt = <3300000>; 49*5decbf53SPrzemyslaw Marczak regulator-max-microvolt = <3300000>; 50*5decbf53SPrzemyslaw Marczak }; 51*5decbf53SPrzemyslaw Marczak ... 52*5decbf53SPrzemyslaw Marczak}; 53*5decbf53SPrzemyslaw Marczak 54*5decbf53SPrzemyslaw MarczakFor the above ADC, the node can be defined as follows: 55*5decbf53SPrzemyslaw Marczakadc@0 { 56*5decbf53SPrzemyslaw Marczak compatible = "sandbox,adc"; 57*5decbf53SPrzemyslaw Marczak vdd-supply = <&buck2>; 58*5decbf53SPrzemyslaw Marczak vss-microvolts = <0>; 59*5decbf53SPrzemyslaw Marczak}; 60*5decbf53SPrzemyslaw Marczak 61*5decbf53SPrzemyslaw MarczakThe ADC uclass code, will enable the supply before start of the conversion, 62*5decbf53SPrzemyslaw Marczakbut it will not configure the regulator settings. 63