Based on kernel version 3.14.11. Page generated on 2014-07-07 08:52 EST.
1 * AT91's Analog to Digital Converter (ADC) 2 3 Required properties: 4 - compatible: Should be "atmel,<chip>-adc" 5 <chip> can be "at91sam9260", "at91sam9g45" or "at91sam9x5" 6 - reg: Should contain ADC registers location and length 7 - interrupts: Should contain the IRQ line for the ADC 8 - atmel,adc-channels-used: Bitmask of the channels muxed and enable for this 9 device 10 - atmel,adc-startup-time: Startup Time of the ADC in microseconds as 11 defined in the datasheet 12 - atmel,adc-vref: Reference voltage in millivolts for the conversions 13 - atmel,adc-res: List of resolution in bits supported by the ADC. List size 14 must be two at least. 15 - atmel,adc-res-names: Contains one identifier string for each resolution 16 in atmel,adc-res property. "lowres" and "highres" 17 identifiers are required. 18 19 Optional properties: 20 - atmel,adc-use-external: Boolean to enable of external triggers 21 - atmel,adc-use-res: String corresponding to an identifier from 22 atmel,adc-res-names property. If not specified, the highest 23 resolution will be used. 24 - atmel,adc-sleep-mode: Boolean to enable sleep mode when no conversion 25 - atmel,adc-sample-hold-time: Sample and Hold Time in microseconds 26 - atmel,adc-ts-wires: Number of touch screen wires. Should be 4 or 5. If this 27 value is set, then adc driver will enable touch screen 28 support. 29 NOTE: when adc touch screen enabled, the adc hardware trigger will be 30 disabled. Since touch screen will occupied the trigger register. 31 - atmel,adc-ts-pressure-threshold: a pressure threshold for touchscreen. It 32 make touch detect more precision. 33 34 Optional trigger Nodes: 35 - Required properties: 36 * trigger-name: Name of the trigger exposed to the user 37 * trigger-value: Value to put in the Trigger register 38 to activate this trigger 39 - Optional properties: 40 * trigger-external: Is the trigger an external trigger? 41 42 Examples: 43 adc0: adc@fffb0000 { 44 compatible = "atmel,at91sam9260-adc"; 45 reg = <0xfffb0000 0x100>; 46 interrupts = <20 4>; 47 atmel,adc-channel-base = <0x30>; 48 atmel,adc-channels-used = <0xff>; 49 atmel,adc-drdy-mask = <0x10000>; 50 atmel,adc-num-channels = <8>; 51 atmel,adc-startup-time = <40>; 52 atmel,adc-status-register = <0x1c>; 53 atmel,adc-trigger-register = <0x08>; 54 atmel,adc-use-external; 55 atmel,adc-vref = <3300>; 56 atmel,adc-res = <8 10>; 57 atmel,adc-res-names = "lowres", "highres"; 58 atmel,adc-use-res = "lowres"; 59 60 trigger@0 { 61 trigger-name = "external-rising"; 62 trigger-value = <0x1>; 63 trigger-external; 64 }; 65 trigger@1 { 66 trigger-name = "external-falling"; 67 trigger-value = <0x2>; 68 trigger-external; 69 }; 70 71 trigger@2 { 72 trigger-name = "external-any"; 73 trigger-value = <0x3>; 74 trigger-external; 75 }; 76 77 trigger@3 { 78 trigger-name = "continuous"; 79 trigger-value = <0x6>; 80 }; 81 };