Pull staging tree changes from Greg Kroah-Hartman: "Here is the big staging tree pull request for the 3.5-rc1 merge window. Loads of changes here, and we just narrowly added more lines than we added: 622 files changed, 28356 insertions(+), 26059 deletions(-) But, good news is that there is a number of subsystems that moved out of the staging tree, to their respective "real" portions of the kernel. Code that moved out was: - iio core code - mei driver - vme core and bridge drivers There was one broken network driver that moved into staging as a step before it is removed from the tree (pc300), and there was a few new drivers added to the tree: - new iio drivers - gdm72xx wimax USB driver - ipack subsystem and 2 drivers All of the movements around have acks from the various subsystem maintainers, and all of this has been in the linux-next tree for a while. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>" Fixed up various trivial conflicts, along with a non-trivial one found in -next and pointed out by Olof Johanssen: a clean - but incorrect - merge of the arch/arm/boot/dts/at91sam9g20.dtsi file. Fix up manually as per Stephen Rothwell. * tag 'staging-3.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (536 commits) Staging: bcm: Remove two unused variables from Adapter.h Staging: bcm: Removes the volatile type definition from Adapter.h Staging: bcm: Rename all "INT" to "int" in Adapter.h Staging: bcm: Fix warning: __packed vs. __attribute__((packed)) in Adapter.h Staging: bcm: Correctly format all comments in Adapter.h Staging: bcm: Fix all whitespace issues in Adapter.h Staging: bcm: Properly format braces in Adapter.h Staging: ipack/bridges/tpci200: remove unneeded casts Staging: ipack/bridges/tpci200: remove TPCI200_SHORTNAME constant Staging: ipack: remove board_name and bus_name fields from struct ipack_device Staging: ipack: improve the register of a bus and a device in the bus. staging: comedi: cleanup all the comedi_driver 'detach' functions staging: comedi: remove all 'default N' in Kconfig staging: line6/config.h: Delete unused header staging: gdm72xx depends on NET staging: gdm72xx: Set up parent link in sysfs for gdm72xx devices staging: drm/omap: initial dmabuf/prime import support staging: drm/omap: dmabuf/prime mmap support pstore/ram: Add ECC support pstore/ram: Switch to persistent_ram routines ...
Showing the changes to include/linux/platform_data (1 of 611 files). Show all
Unified · Split
| @@ -0,0 +1,61 @@ | ||
| 1 | +/* | |
| 2 | + * Copyright (C) 2011 Free Electrons | |
| 3 | + * | |
| 4 | + * Licensed under the GPLv2 or later. | |
| 5 | + */ | |
| 6 | + | |
| 7 | +#ifndef _AT91_ADC_H_ | |
| 8 | +#define _AT91_ADC_H_ | |
| 9 | + | |
| 10 | +/** | |
| 11 | + * struct at91_adc_reg_desc - Various informations relative to registers | |
| 12 | + * @channel_base: Base offset for the channel data registers | |
| 13 | + * @drdy_mask: Mask of the DRDY field in the relevant registers | |
| 14 | + (Interruptions registers mostly) | |
| 15 | + * @status_register: Offset of the Interrupt Status Register | |
| 16 | + * @trigger_register: Offset of the Trigger setup register | |
| 17 | + */ | |
| 18 | +struct at91_adc_reg_desc { | |
| 19 | + u8 channel_base; | |
| 20 | + u32 drdy_mask; | |
| 21 | + u8 status_register; | |
| 22 | + u8 trigger_register; | |
| 23 | +}; | |
| 24 | + | |
| 25 | +/** | |
| 26 | + * struct at91_adc_trigger - description of triggers | |
| 27 | + * @name: name of the trigger advertised to the user | |
| 28 | + * @value: value to set in the ADC's trigger setup register | |
| 29 | + to enable the trigger | |
| 30 | + * @is_external: Does the trigger rely on an external pin? | |
| 31 | + */ | |
| 32 | +struct at91_adc_trigger { | |
| 33 | + const char *name; | |
| 34 | + u8 value; | |
| 35 | + bool is_external; | |
| 36 | +}; | |
| 37 | + | |
| 38 | +/** | |
| 39 | + * struct at91_adc_data - platform data for ADC driver | |
| 40 | + * @channels_used: channels in use on the board as a bitmask | |
| 41 | + * @num_channels: global number of channels available on the board | |
| 42 | + * @registers: Registers definition on the board | |
| 43 | + * @startup_time: startup time of the ADC in microseconds | |
| 44 | + * @trigger_list: Triggers available in the ADC | |
| 45 | + * @trigger_number: Number of triggers available in the ADC | |
| 46 | + * @use_external_triggers: does the board has external triggers availables | |
| 47 | + * @vref: Reference voltage for the ADC in millivolts | |
| 48 | + */ | |
| 49 | +struct at91_adc_data { | |
| 50 | + unsigned long channels_used; | |
| 51 | + u8 num_channels; | |
| 52 | + struct at91_adc_reg_desc *registers; | |
| 53 | + u8 startup_time; | |
| 54 | + struct at91_adc_trigger *trigger_list; | |
| 55 | + u8 trigger_number; | |
| 56 | + bool use_external_triggers; | |
| 57 | + u16 vref; | |
| 58 | +}; | |
| 59 | + | |
| 60 | +extern void __init at91_add_device_adc(struct at91_adc_data *data); | |
| 61 | +#endif | |