diff options
author | Michael Hennerich <michael.hennerich@analog.com> | 2011-08-02 02:48:22 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-08-23 16:37:02 -0400 |
commit | f94aa354d676532448e8e222e737fdd0755fc786 (patch) | |
tree | 8492bacbcee0a4b94121dd19653f7cb72f4c1b2e /drivers/staging/iio/impedance-analyzer/ad5933.h | |
parent | 2051f25d2a26573918b59d69847f5bf77635023e (diff) |
iio: impedance-analyzer: New driver for AD5933/4 Impedance Converter, Network Analyzer
The AD5933 is a high precision impedance converter system solution
that combines an on-board frequency generator with a 12-bit, 1 MSPS,
analog-to-digital converter (ADC). The frequency generator allows an
external complex impedance to be excited with a known frequency.
The response signal from the impedance is sampled by the on-board ADC
and a discrete Fourier transform (DFT) is processed by an on-chip DSP engine.
The DFT algorithm returns a real (R) and imaginary (I) data-word at each
output frequency.
Changes since V1:
Apply list review feedback:
Consistently use poll_time_jiffies.
Use be|le cpu endian helpers where applicable.
Add various comments.
Changes since V2:
Fix KernelVersion tag in Documentation.
Declare ad5933_default_pdata static.
Fix typos.
Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/iio/impedance-analyzer/ad5933.h')
-rw-r--r-- | drivers/staging/iio/impedance-analyzer/ad5933.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/drivers/staging/iio/impedance-analyzer/ad5933.h b/drivers/staging/iio/impedance-analyzer/ad5933.h new file mode 100644 index 00000000000..b140e42d67c --- /dev/null +++ b/drivers/staging/iio/impedance-analyzer/ad5933.h | |||
@@ -0,0 +1,28 @@ | |||
1 | /* | ||
2 | * AD5933 AD5934 Impedance Converter, Network Analyzer | ||
3 | * | ||
4 | * Copyright 2011 Analog Devices Inc. | ||
5 | * | ||
6 | * Licensed under the GPL-2. | ||
7 | */ | ||
8 | |||
9 | #ifndef IIO_ADC_AD5933_H_ | ||
10 | #define IIO_ADC_AD5933_H_ | ||
11 | |||
12 | /* | ||
13 | * TODO: struct ad5933_platform_data needs to go into include/linux/iio | ||
14 | */ | ||
15 | |||
16 | /** | ||
17 | * struct ad5933_platform_data - platform specific data | ||
18 | * @ext_clk_Hz: the external clock frequency in Hz, if not set | ||
19 | * the driver uses the internal clock (16.776 MHz) | ||
20 | * @vref_mv: the external reference voltage in millivolt | ||
21 | */ | ||
22 | |||
23 | struct ad5933_platform_data { | ||
24 | unsigned long ext_clk_Hz; | ||
25 | unsigned short vref_mv; | ||
26 | }; | ||
27 | |||
28 | #endif /* IIO_ADC_AD5933_H_ */ | ||