diff options
Diffstat (limited to 'include/linux/platform_data')
24 files changed, 525 insertions, 33 deletions
diff --git a/include/linux/platform_data/cpsw.h b/include/linux/platform_data/cpsw.h index 24368a2e8b87..798fb80b024b 100644 --- a/include/linux/platform_data/cpsw.h +++ b/include/linux/platform_data/cpsw.h | |||
| @@ -21,6 +21,8 @@ struct cpsw_slave_data { | |||
| 21 | char phy_id[MII_BUS_ID_SIZE]; | 21 | char phy_id[MII_BUS_ID_SIZE]; |
| 22 | int phy_if; | 22 | int phy_if; |
| 23 | u8 mac_addr[ETH_ALEN]; | 23 | u8 mac_addr[ETH_ALEN]; |
| 24 | u16 dual_emac_res_vlan; /* Reserved VLAN for DualEMAC */ | ||
| 25 | |||
| 24 | }; | 26 | }; |
| 25 | 27 | ||
| 26 | struct cpsw_platform_data { | 28 | struct cpsw_platform_data { |
| @@ -35,6 +37,8 @@ struct cpsw_platform_data { | |||
| 35 | u32 bd_ram_size; /*buffer descriptor ram size */ | 37 | u32 bd_ram_size; /*buffer descriptor ram size */ |
| 36 | u32 rx_descs; /* Number of Rx Descriptios */ | 38 | u32 rx_descs; /* Number of Rx Descriptios */ |
| 37 | u32 mac_control; /* Mac control register */ | 39 | u32 mac_control; /* Mac control register */ |
| 40 | u16 default_vlan; /* Def VLAN for ALE lookup in VLAN aware mode*/ | ||
| 41 | bool dual_emac; /* Enable Dual EMAC mode */ | ||
| 38 | }; | 42 | }; |
| 39 | 43 | ||
| 40 | #endif /* __CPSW_H__ */ | 44 | #endif /* __CPSW_H__ */ |
diff --git a/include/linux/platform_data/dma-coh901318.h b/include/linux/platform_data/dma-coh901318.h new file mode 100644 index 000000000000..c4cb9590d115 --- /dev/null +++ b/include/linux/platform_data/dma-coh901318.h | |||
| @@ -0,0 +1,72 @@ | |||
| 1 | /* | ||
| 2 | * Platform data for the COH901318 DMA controller | ||
| 3 | * Copyright (C) 2007-2013 ST-Ericsson | ||
| 4 | * License terms: GNU General Public License (GPL) version 2 | ||
| 5 | */ | ||
| 6 | |||
| 7 | #ifndef PLAT_COH901318_H | ||
| 8 | #define PLAT_COH901318_H | ||
| 9 | |||
| 10 | #ifdef CONFIG_COH901318 | ||
| 11 | |||
| 12 | /* We only support the U300 DMA channels */ | ||
| 13 | #define U300_DMA_MSL_TX_0 0 | ||
| 14 | #define U300_DMA_MSL_TX_1 1 | ||
| 15 | #define U300_DMA_MSL_TX_2 2 | ||
| 16 | #define U300_DMA_MSL_TX_3 3 | ||
| 17 | #define U300_DMA_MSL_TX_4 4 | ||
| 18 | #define U300_DMA_MSL_TX_5 5 | ||
| 19 | #define U300_DMA_MSL_TX_6 6 | ||
| 20 | #define U300_DMA_MSL_RX_0 7 | ||
| 21 | #define U300_DMA_MSL_RX_1 8 | ||
| 22 | #define U300_DMA_MSL_RX_2 9 | ||
| 23 | #define U300_DMA_MSL_RX_3 10 | ||
| 24 | #define U300_DMA_MSL_RX_4 11 | ||
| 25 | #define U300_DMA_MSL_RX_5 12 | ||
| 26 | #define U300_DMA_MSL_RX_6 13 | ||
| 27 | #define U300_DMA_MMCSD_RX_TX 14 | ||
| 28 | #define U300_DMA_MSPRO_TX 15 | ||
| 29 | #define U300_DMA_MSPRO_RX 16 | ||
| 30 | #define U300_DMA_UART0_TX 17 | ||
| 31 | #define U300_DMA_UART0_RX 18 | ||
| 32 | #define U300_DMA_APEX_TX 19 | ||
| 33 | #define U300_DMA_APEX_RX 20 | ||
| 34 | #define U300_DMA_PCM_I2S0_TX 21 | ||
| 35 | #define U300_DMA_PCM_I2S0_RX 22 | ||
| 36 | #define U300_DMA_PCM_I2S1_TX 23 | ||
| 37 | #define U300_DMA_PCM_I2S1_RX 24 | ||
| 38 | #define U300_DMA_XGAM_CDI 25 | ||
| 39 | #define U300_DMA_XGAM_PDI 26 | ||
| 40 | #define U300_DMA_SPI_TX 27 | ||
| 41 | #define U300_DMA_SPI_RX 28 | ||
| 42 | #define U300_DMA_GENERAL_PURPOSE_0 29 | ||
| 43 | #define U300_DMA_GENERAL_PURPOSE_1 30 | ||
| 44 | #define U300_DMA_GENERAL_PURPOSE_2 31 | ||
| 45 | #define U300_DMA_GENERAL_PURPOSE_3 32 | ||
| 46 | #define U300_DMA_GENERAL_PURPOSE_4 33 | ||
| 47 | #define U300_DMA_GENERAL_PURPOSE_5 34 | ||
| 48 | #define U300_DMA_GENERAL_PURPOSE_6 35 | ||
| 49 | #define U300_DMA_GENERAL_PURPOSE_7 36 | ||
| 50 | #define U300_DMA_GENERAL_PURPOSE_8 37 | ||
| 51 | #define U300_DMA_UART1_TX 38 | ||
| 52 | #define U300_DMA_UART1_RX 39 | ||
| 53 | |||
| 54 | #define U300_DMA_DEVICE_CHANNELS 32 | ||
| 55 | #define U300_DMA_CHANNELS 40 | ||
| 56 | |||
| 57 | /** | ||
| 58 | * coh901318_filter_id() - DMA channel filter function | ||
| 59 | * @chan: dma channel handle | ||
| 60 | * @chan_id: id of dma channel to be filter out | ||
| 61 | * | ||
| 62 | * In dma_request_channel() it specifies what channel id to be requested | ||
| 63 | */ | ||
| 64 | bool coh901318_filter_id(struct dma_chan *chan, void *chan_id); | ||
| 65 | #else | ||
| 66 | static inline bool coh901318_filter_id(struct dma_chan *chan, void *chan_id) | ||
| 67 | { | ||
| 68 | return false; | ||
| 69 | } | ||
| 70 | #endif | ||
| 71 | |||
| 72 | #endif /* PLAT_COH901318_H */ | ||
diff --git a/include/linux/platform_data/dma-ste-dma40.h b/include/linux/platform_data/dma-ste-dma40.h index 9ff93b065686..4b781014b0a0 100644 --- a/include/linux/platform_data/dma-ste-dma40.h +++ b/include/linux/platform_data/dma-ste-dma40.h | |||
| @@ -147,6 +147,16 @@ struct stedma40_chan_cfg { | |||
| 147 | * @memcpy_conf_log: default configuration of logical channel memcpy | 147 | * @memcpy_conf_log: default configuration of logical channel memcpy |
| 148 | * @disabled_channels: A vector, ending with -1, that marks physical channels | 148 | * @disabled_channels: A vector, ending with -1, that marks physical channels |
| 149 | * that are for different reasons not available for the driver. | 149 | * that are for different reasons not available for the driver. |
| 150 | * @soft_lli_chans: A vector, that marks physical channels will use LLI by SW | ||
| 151 | * which avoids HW bug that exists in some versions of the controller. | ||
| 152 | * SoftLLI introduces relink overhead that could impact performace for | ||
| 153 | * certain use cases. | ||
| 154 | * @num_of_soft_lli_chans: The number of channels that needs to be configured | ||
| 155 | * to use SoftLLI. | ||
| 156 | * @use_esram_lcla: flag for mapping the lcla into esram region | ||
| 157 | * @num_of_phy_chans: The number of physical channels implemented in HW. | ||
| 158 | * 0 means reading the number of channels from DMA HW but this is only valid | ||
| 159 | * for 'multiple of 4' channels, like 8. | ||
| 150 | */ | 160 | */ |
| 151 | struct stedma40_platform_data { | 161 | struct stedma40_platform_data { |
| 152 | u32 dev_len; | 162 | u32 dev_len; |
| @@ -157,7 +167,10 @@ struct stedma40_platform_data { | |||
| 157 | struct stedma40_chan_cfg *memcpy_conf_phy; | 167 | struct stedma40_chan_cfg *memcpy_conf_phy; |
| 158 | struct stedma40_chan_cfg *memcpy_conf_log; | 168 | struct stedma40_chan_cfg *memcpy_conf_log; |
| 159 | int disabled_channels[STEDMA40_MAX_PHYS]; | 169 | int disabled_channels[STEDMA40_MAX_PHYS]; |
| 170 | int *soft_lli_chans; | ||
| 171 | int num_of_soft_lli_chans; | ||
| 160 | bool use_esram_lcla; | 172 | bool use_esram_lcla; |
| 173 | int num_of_phy_chans; | ||
| 161 | }; | 174 | }; |
| 162 | 175 | ||
| 163 | #ifdef CONFIG_STE_DMA40 | 176 | #ifdef CONFIG_STE_DMA40 |
diff --git a/include/linux/platform_data/i2c-s3c2410.h b/include/linux/platform_data/i2c-s3c2410.h index 51d52e767a19..2a50048c1c44 100644 --- a/include/linux/platform_data/i2c-s3c2410.h +++ b/include/linux/platform_data/i2c-s3c2410.h | |||
| @@ -15,6 +15,8 @@ | |||
| 15 | 15 | ||
| 16 | #define S3C_IICFLG_FILTER (1<<0) /* enable s3c2440 filter */ | 16 | #define S3C_IICFLG_FILTER (1<<0) /* enable s3c2440 filter */ |
| 17 | 17 | ||
| 18 | struct platform_device; | ||
| 19 | |||
| 18 | /** | 20 | /** |
| 19 | * struct s3c2410_platform_i2c - Platform data for s3c I2C. | 21 | * struct s3c2410_platform_i2c - Platform data for s3c I2C. |
| 20 | * @bus_num: The bus number to use (if possible). | 22 | * @bus_num: The bus number to use (if possible). |
diff --git a/include/linux/platform_data/imx-iram.h b/include/linux/platform_data/imx-iram.h new file mode 100644 index 000000000000..022690c33702 --- /dev/null +++ b/include/linux/platform_data/imx-iram.h | |||
| @@ -0,0 +1,41 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (C) 2010 Freescale Semiconductor, Inc. All Rights Reserved. | ||
| 3 | * | ||
| 4 | * This program is free software; you can redistribute it and/or | ||
| 5 | * modify it under the terms of the GNU General Public License | ||
| 6 | * as published by the Free Software Foundation; either version 2 | ||
| 7 | * of the License, or (at your option) any later version. | ||
| 8 | * | ||
| 9 | * This program is distributed in the hope that it will be useful, | ||
| 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 12 | * GNU General Public License for more details. | ||
| 13 | * | ||
| 14 | * You should have received a copy of the GNU General Public License | ||
| 15 | * along with this program; if not, write to the Free Software | ||
| 16 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, | ||
| 17 | * MA 02110-1301, USA. | ||
| 18 | */ | ||
| 19 | #include <linux/errno.h> | ||
| 20 | |||
| 21 | #ifdef CONFIG_IRAM_ALLOC | ||
| 22 | |||
| 23 | int __init iram_init(unsigned long base, unsigned long size); | ||
| 24 | void __iomem *iram_alloc(unsigned int size, unsigned long *dma_addr); | ||
| 25 | void iram_free(unsigned long dma_addr, unsigned int size); | ||
| 26 | |||
| 27 | #else | ||
| 28 | |||
| 29 | static inline int __init iram_init(unsigned long base, unsigned long size) | ||
| 30 | { | ||
| 31 | return -ENOMEM; | ||
| 32 | } | ||
| 33 | |||
| 34 | static inline void __iomem *iram_alloc(unsigned int size, unsigned long *dma_addr) | ||
| 35 | { | ||
| 36 | return NULL; | ||
| 37 | } | ||
| 38 | |||
| 39 | static inline void iram_free(unsigned long base, unsigned long size) {} | ||
| 40 | |||
| 41 | #endif | ||
diff --git a/include/linux/platform_data/invensense_mpu6050.h b/include/linux/platform_data/invensense_mpu6050.h new file mode 100644 index 000000000000..ad3aa7b95f35 --- /dev/null +++ b/include/linux/platform_data/invensense_mpu6050.h | |||
| @@ -0,0 +1,31 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (C) 2012 Invensense, Inc. | ||
| 3 | * | ||
| 4 | * This software is licensed under the terms of the GNU General Public | ||
| 5 | * License version 2, as published by the Free Software Foundation, and | ||
| 6 | * may be copied, distributed, and modified under those terms. | ||
| 7 | * | ||
| 8 | * This program is distributed in the hope that it will be useful, | ||
| 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 11 | * GNU General Public License for more details. | ||
| 12 | */ | ||
| 13 | |||
| 14 | #ifndef __INV_MPU6050_PLATFORM_H_ | ||
| 15 | #define __INV_MPU6050_PLATFORM_H_ | ||
| 16 | |||
| 17 | /** | ||
| 18 | * struct inv_mpu6050_platform_data - Platform data for the mpu driver | ||
| 19 | * @orientation: Orientation matrix of the chip | ||
| 20 | * | ||
| 21 | * Contains platform specific information on how to configure the MPU6050 to | ||
| 22 | * work on this platform. The orientation matricies are 3x3 rotation matricies | ||
| 23 | * that are applied to the data to rotate from the mounting orientation to the | ||
| 24 | * platform orientation. The values must be one of 0, 1, or -1 and each row and | ||
| 25 | * column should have exactly 1 non-zero value. | ||
| 26 | */ | ||
| 27 | struct inv_mpu6050_platform_data { | ||
| 28 | __s8 orientation[9]; | ||
| 29 | }; | ||
| 30 | |||
| 31 | #endif | ||
diff --git a/include/linux/platform_data/leds-lp55xx.h b/include/linux/platform_data/leds-lp55xx.h new file mode 100644 index 000000000000..1509570d5a3f --- /dev/null +++ b/include/linux/platform_data/leds-lp55xx.h | |||
| @@ -0,0 +1,87 @@ | |||
| 1 | /* | ||
| 2 | * LP55XX Platform Data Header | ||
| 3 | * | ||
| 4 | * Copyright (C) 2012 Texas Instruments | ||
| 5 | * | ||
| 6 | * Author: Milo(Woogyom) Kim <milo.kim@ti.com> | ||
| 7 | * | ||
| 8 | * This program is free software; you can redistribute it and/or | ||
| 9 | * modify it under the terms of the GNU General Public License | ||
| 10 | * version 2 as published by the Free Software Foundation. | ||
| 11 | * | ||
| 12 | * Derived from leds-lp5521.h, leds-lp5523.h | ||
| 13 | */ | ||
| 14 | |||
| 15 | #ifndef _LEDS_LP55XX_H | ||
| 16 | #define _LEDS_LP55XX_H | ||
| 17 | |||
| 18 | /* Clock configuration */ | ||
| 19 | #define LP55XX_CLOCK_AUTO 0 | ||
| 20 | #define LP55XX_CLOCK_INT 1 | ||
| 21 | #define LP55XX_CLOCK_EXT 2 | ||
| 22 | |||
| 23 | /* Bits in LP5521 CONFIG register. 'update_config' in lp55xx_platform_data */ | ||
| 24 | #define LP5521_PWM_HF 0x40 /* PWM: 0 = 256Hz, 1 = 558Hz */ | ||
| 25 | #define LP5521_PWRSAVE_EN 0x20 /* 1 = Power save mode */ | ||
| 26 | #define LP5521_CP_MODE_OFF 0 /* Charge pump (CP) off */ | ||
| 27 | #define LP5521_CP_MODE_BYPASS 8 /* CP forced to bypass mode */ | ||
| 28 | #define LP5521_CP_MODE_1X5 0x10 /* CP forced to 1.5x mode */ | ||
| 29 | #define LP5521_CP_MODE_AUTO 0x18 /* Automatic mode selection */ | ||
| 30 | #define LP5521_R_TO_BATT 4 /* R out: 0 = CP, 1 = Vbat */ | ||
| 31 | #define LP5521_CLK_SRC_EXT 0 /* Ext-clk source (CLK_32K) */ | ||
| 32 | #define LP5521_CLK_INT 1 /* Internal clock */ | ||
| 33 | #define LP5521_CLK_AUTO 2 /* Automatic clock selection */ | ||
| 34 | |||
| 35 | struct lp55xx_led_config { | ||
| 36 | const char *name; | ||
| 37 | u8 chan_nr; | ||
| 38 | u8 led_current; /* mA x10, 0 if led is not connected */ | ||
| 39 | u8 max_current; | ||
| 40 | }; | ||
| 41 | |||
| 42 | struct lp55xx_predef_pattern { | ||
| 43 | u8 *r; | ||
| 44 | u8 *g; | ||
| 45 | u8 *b; | ||
| 46 | u8 size_r; | ||
| 47 | u8 size_g; | ||
| 48 | u8 size_b; | ||
| 49 | }; | ||
| 50 | |||
| 51 | /* | ||
| 52 | * struct lp55xx_platform_data | ||
| 53 | * @led_config : Configurable led class device | ||
| 54 | * @num_channels : Number of LED channels | ||
| 55 | * @label : Used for naming LEDs | ||
| 56 | * @clock_mode : Input clock mode. LP55XX_CLOCK_AUTO or _INT or _EXT | ||
| 57 | * @setup_resources : Platform specific function before enabling the chip | ||
| 58 | * @release_resources : Platform specific function after disabling the chip | ||
| 59 | * @enable : EN pin control by platform side | ||
| 60 | * @patterns : Predefined pattern data for RGB channels | ||
| 61 | * @num_patterns : Number of patterns | ||
| 62 | * @update_config : Value of CONFIG register | ||
| 63 | */ | ||
| 64 | struct lp55xx_platform_data { | ||
| 65 | |||
| 66 | /* LED channel configuration */ | ||
| 67 | struct lp55xx_led_config *led_config; | ||
| 68 | u8 num_channels; | ||
| 69 | const char *label; | ||
| 70 | |||
| 71 | /* Clock configuration */ | ||
| 72 | u8 clock_mode; | ||
| 73 | |||
| 74 | /* Platform specific functions */ | ||
| 75 | int (*setup_resources)(void); | ||
| 76 | void (*release_resources)(void); | ||
| 77 | void (*enable)(bool state); | ||
| 78 | |||
| 79 | /* Predefined pattern data */ | ||
| 80 | struct lp55xx_predef_pattern *patterns; | ||
| 81 | unsigned int num_patterns; | ||
| 82 | |||
| 83 | /* _CONFIG register */ | ||
| 84 | u8 update_config; | ||
| 85 | }; | ||
| 86 | |||
| 87 | #endif /* _LEDS_LP55XX_H */ | ||
diff --git a/include/linux/platform_data/lp855x.h b/include/linux/platform_data/lp855x.h index e81f62d24ee2..20ee8b221dbd 100644 --- a/include/linux/platform_data/lp855x.h +++ b/include/linux/platform_data/lp855x.h | |||
| @@ -49,12 +49,24 @@ | |||
| 49 | #define LP8556_FAST_CONFIG BIT(7) /* use it if EPROMs should be maintained | 49 | #define LP8556_FAST_CONFIG BIT(7) /* use it if EPROMs should be maintained |
| 50 | when exiting the low power mode */ | 50 | when exiting the low power mode */ |
| 51 | 51 | ||
| 52 | /* CONFIG register - LP8557 */ | ||
| 53 | #define LP8557_PWM_STANDBY BIT(7) | ||
| 54 | #define LP8557_PWM_FILTER BIT(6) | ||
| 55 | #define LP8557_RELOAD_EPROM BIT(3) /* use it if EPROMs should be reset | ||
| 56 | when the backlight turns on */ | ||
| 57 | #define LP8557_OFF_OPENLEDS BIT(2) | ||
| 58 | #define LP8557_PWM_CONFIG LP8557_PWM_ONLY | ||
| 59 | #define LP8557_I2C_CONFIG LP8557_I2C_ONLY | ||
| 60 | #define LP8557_COMB1_CONFIG LP8557_COMBINED1 | ||
| 61 | #define LP8557_COMB2_CONFIG LP8557_COMBINED2 | ||
| 62 | |||
| 52 | enum lp855x_chip_id { | 63 | enum lp855x_chip_id { |
| 53 | LP8550, | 64 | LP8550, |
| 54 | LP8551, | 65 | LP8551, |
| 55 | LP8552, | 66 | LP8552, |
| 56 | LP8553, | 67 | LP8553, |
| 57 | LP8556, | 68 | LP8556, |
| 69 | LP8557, | ||
| 58 | }; | 70 | }; |
| 59 | 71 | ||
| 60 | enum lp855x_brightness_ctrl_mode { | 72 | enum lp855x_brightness_ctrl_mode { |
| @@ -89,6 +101,13 @@ enum lp8556_brightness_source { | |||
| 89 | LP8556_COMBINED2, /* pwm + i2c after the shaper block */ | 101 | LP8556_COMBINED2, /* pwm + i2c after the shaper block */ |
| 90 | }; | 102 | }; |
| 91 | 103 | ||
| 104 | enum lp8557_brightness_source { | ||
| 105 | LP8557_PWM_ONLY, | ||
| 106 | LP8557_I2C_ONLY, | ||
| 107 | LP8557_COMBINED1, /* pwm + i2c after the shaper block */ | ||
| 108 | LP8557_COMBINED2, /* pwm + i2c before the shaper block */ | ||
| 109 | }; | ||
| 110 | |||
| 92 | struct lp855x_rom_data { | 111 | struct lp855x_rom_data { |
| 93 | u8 addr; | 112 | u8 addr; |
| 94 | u8 val; | 113 | u8 val; |
diff --git a/include/linux/platform_data/lp8755.h b/include/linux/platform_data/lp8755.h new file mode 100644 index 000000000000..a7fd0776c9bf --- /dev/null +++ b/include/linux/platform_data/lp8755.h | |||
| @@ -0,0 +1,71 @@ | |||
| 1 | /* | ||
| 2 | * LP8755 High Performance Power Management Unit Driver:System Interface Driver | ||
| 3 | * | ||
| 4 | * Copyright (C) 2012 Texas Instruments | ||
| 5 | * | ||
| 6 | * Author: Daniel(Geon Si) Jeong <daniel.jeong@ti.com> | ||
| 7 | * G.Shark Jeong <gshark.jeong@gmail.com> | ||
| 8 | * | ||
| 9 | * This program is free software; you can redistribute it and/or modify | ||
| 10 | * it under the terms of the GNU General Public License version 2 as | ||
| 11 | * published by the Free Software Foundation. | ||
| 12 | * | ||
| 13 | */ | ||
| 14 | |||
| 15 | #ifndef _LP8755_H | ||
| 16 | #define _LP8755_H | ||
| 17 | |||
| 18 | #include <linux/regulator/consumer.h> | ||
| 19 | |||
| 20 | #define LP8755_NAME "lp8755-regulator" | ||
| 21 | /* | ||
| 22 | *PWR FAULT : power fault detected | ||
| 23 | *OCP : over current protect activated | ||
| 24 | *OVP : over voltage protect activated | ||
| 25 | *TEMP_WARN : thermal warning | ||
| 26 | *TEMP_SHDN : thermal shutdonw detected | ||
| 27 | *I_LOAD : current measured | ||
| 28 | */ | ||
| 29 | #define LP8755_EVENT_PWR_FAULT REGULATOR_EVENT_FAIL | ||
| 30 | #define LP8755_EVENT_OCP REGULATOR_EVENT_OVER_CURRENT | ||
| 31 | #define LP8755_EVENT_OVP 0x10000 | ||
| 32 | #define LP8755_EVENT_TEMP_WARN 0x2000 | ||
| 33 | #define LP8755_EVENT_TEMP_SHDN REGULATOR_EVENT_OVER_TEMP | ||
| 34 | #define LP8755_EVENT_I_LOAD 0x40000 | ||
| 35 | |||
| 36 | enum lp8755_bucks { | ||
| 37 | LP8755_BUCK0 = 0, | ||
| 38 | LP8755_BUCK1, | ||
| 39 | LP8755_BUCK2, | ||
| 40 | LP8755_BUCK3, | ||
| 41 | LP8755_BUCK4, | ||
| 42 | LP8755_BUCK5, | ||
| 43 | LP8755_BUCK_MAX, | ||
| 44 | }; | ||
| 45 | |||
| 46 | /** | ||
| 47 | * multiphase configuration options | ||
| 48 | */ | ||
| 49 | enum lp8755_mphase_config { | ||
| 50 | MPHASE_CONF0, | ||
| 51 | MPHASE_CONF1, | ||
| 52 | MPHASE_CONF2, | ||
| 53 | MPHASE_CONF3, | ||
| 54 | MPHASE_CONF4, | ||
| 55 | MPHASE_CONF5, | ||
| 56 | MPHASE_CONF6, | ||
| 57 | MPHASE_CONF7, | ||
| 58 | MPHASE_CONF8, | ||
| 59 | MPHASE_CONF_MAX | ||
| 60 | }; | ||
| 61 | |||
| 62 | /** | ||
| 63 | * struct lp8755_platform_data | ||
| 64 | * @mphase_type : Multiphase Switcher Configurations. | ||
| 65 | * @buck_data : buck0~6 init voltage in uV | ||
| 66 | */ | ||
| 67 | struct lp8755_platform_data { | ||
| 68 | int mphase; | ||
| 69 | struct regulator_init_data *buck_data[LP8755_BUCK_MAX]; | ||
| 70 | }; | ||
| 71 | #endif | ||
diff --git a/include/linux/platform_data/max6697.h b/include/linux/platform_data/max6697.h new file mode 100644 index 000000000000..ed9d3b3daf02 --- /dev/null +++ b/include/linux/platform_data/max6697.h | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | /* | ||
| 2 | * max6697.h | ||
| 3 | * Copyright (c) 2012 Guenter Roeck <linux@roeck-us.net> | ||
| 4 | * | ||
| 5 | * This program is free software; you can redistribute it and/or modify | ||
| 6 | * it under the terms of the GNU General Public License version 2 as | ||
| 7 | * published by the Free Software Foundation. | ||
| 8 | */ | ||
| 9 | |||
| 10 | #ifndef MAX6697_H | ||
| 11 | #define MAX6697_H | ||
| 12 | |||
| 13 | #include <linux/types.h> | ||
| 14 | |||
| 15 | /* | ||
| 16 | * For all bit masks: | ||
| 17 | * bit 0: local temperature | ||
| 18 | * bit 1..7: remote temperatures | ||
| 19 | */ | ||
| 20 | struct max6697_platform_data { | ||
| 21 | bool smbus_timeout_disable; /* set to disable SMBus timeouts */ | ||
| 22 | bool extended_range_enable; /* set to enable extended temp range */ | ||
| 23 | bool beta_compensation; /* set to enable beta compensation */ | ||
| 24 | u8 alert_mask; /* set bit to 1 to disable alert */ | ||
| 25 | u8 over_temperature_mask; /* set bit to 1 to disable */ | ||
| 26 | u8 resistance_cancellation; /* set bit to 0 to disable | ||
| 27 | * bit mask for MAX6581, | ||
| 28 | * boolean for other chips | ||
| 29 | */ | ||
| 30 | u8 ideality_mask; /* set bit to 0 to disable */ | ||
| 31 | u8 ideality_value; /* transistor ideality as per | ||
| 32 | * MAX6581 datasheet | ||
| 33 | */ | ||
| 34 | }; | ||
| 35 | |||
| 36 | #endif /* MAX6697_H */ | ||
diff --git a/include/linux/platform_data/microread.h b/include/linux/platform_data/microread.h new file mode 100644 index 000000000000..cfda59b226ee --- /dev/null +++ b/include/linux/platform_data/microread.h | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | /* | ||
| 2 | * Driver include for the PN544 NFC chip. | ||
| 3 | * | ||
| 4 | * Copyright (C) 2011 Tieto Poland | ||
| 5 | * Copyright (C) 2012 Intel Corporation. All rights reserved. | ||
| 6 | * | ||
| 7 | * This program is free software; you can redistribute it and/or | ||
| 8 | * modify it under the terms of the GNU General Public License | ||
| 9 | * version 2 as published by the Free Software Foundation. | ||
| 10 | * | ||
| 11 | * This program is distributed in the hope that it will be useful, | ||
| 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 14 | * GNU General Public License for more details. | ||
| 15 | * | ||
| 16 | * You should have received a copy of the GNU General Public License | ||
| 17 | * along with this program; if not, write to the Free Software | ||
| 18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
| 19 | */ | ||
| 20 | |||
| 21 | #ifndef _MICROREAD_H | ||
| 22 | #define _MICROREAD_H | ||
| 23 | |||
| 24 | #include <linux/i2c.h> | ||
| 25 | |||
| 26 | #define MICROREAD_DRIVER_NAME "microread" | ||
| 27 | |||
| 28 | /* board config platform data for microread */ | ||
| 29 | struct microread_nfc_platform_data { | ||
| 30 | unsigned int rst_gpio; | ||
| 31 | unsigned int irq_gpio; | ||
| 32 | unsigned int ioh_gpio; | ||
| 33 | }; | ||
| 34 | |||
| 35 | #endif /* _MICROREAD_H */ | ||
diff --git a/include/linux/platform_data/mmc-esdhc-imx.h b/include/linux/platform_data/mmc-esdhc-imx.h index aaf97481f413..b4a0521ce411 100644 --- a/include/linux/platform_data/mmc-esdhc-imx.h +++ b/include/linux/platform_data/mmc-esdhc-imx.h | |||
| @@ -39,5 +39,6 @@ struct esdhc_platform_data { | |||
| 39 | unsigned int cd_gpio; | 39 | unsigned int cd_gpio; |
| 40 | enum wp_types wp_type; | 40 | enum wp_types wp_type; |
| 41 | enum cd_types cd_type; | 41 | enum cd_types cd_type; |
| 42 | int max_bus_width; | ||
| 42 | }; | 43 | }; |
| 43 | #endif /* __ASM_ARCH_IMX_ESDHC_H */ | 44 | #endif /* __ASM_ARCH_IMX_ESDHC_H */ |
diff --git a/include/linux/platform_data/mmc-sdhci-tegra.h b/include/linux/platform_data/mmc-sdhci-tegra.h deleted file mode 100644 index 8f8430697686..000000000000 --- a/include/linux/platform_data/mmc-sdhci-tegra.h +++ /dev/null | |||
| @@ -1,28 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (C) 2009 Palm, Inc. | ||
| 3 | * Author: Yvonne Yip <y@palm.com> | ||
| 4 | * | ||
| 5 | * This software is licensed under the terms of the GNU General Public | ||
| 6 | * License version 2, as published by the Free Software Foundation, and | ||
| 7 | * may be copied, distributed, and modified under those terms. | ||
| 8 | * | ||
| 9 | * This program is distributed in the hope that it will be useful, | ||
| 10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 12 | * GNU General Public License for more details. | ||
| 13 | * | ||
| 14 | */ | ||
| 15 | #ifndef __PLATFORM_DATA_TEGRA_SDHCI_H | ||
| 16 | #define __PLATFORM_DATA_TEGRA_SDHCI_H | ||
| 17 | |||
| 18 | #include <linux/mmc/host.h> | ||
| 19 | |||
| 20 | struct tegra_sdhci_platform_data { | ||
| 21 | int cd_gpio; | ||
| 22 | int wp_gpio; | ||
| 23 | int power_gpio; | ||
| 24 | int is_8bit; | ||
| 25 | int pm_flags; | ||
| 26 | }; | ||
| 27 | |||
| 28 | #endif | ||
diff --git a/include/linux/platform_data/mtd-nand-omap2.h b/include/linux/platform_data/mtd-nand-omap2.h index 24d32ca34bef..6bf9ef43ddb1 100644 --- a/include/linux/platform_data/mtd-nand-omap2.h +++ b/include/linux/platform_data/mtd-nand-omap2.h | |||
| @@ -60,6 +60,8 @@ struct omap_nand_platform_data { | |||
| 60 | int devsize; | 60 | int devsize; |
| 61 | enum omap_ecc ecc_opt; | 61 | enum omap_ecc ecc_opt; |
| 62 | struct gpmc_nand_regs reg; | 62 | struct gpmc_nand_regs reg; |
| 63 | }; | ||
| 64 | 63 | ||
| 64 | /* for passing the partitions */ | ||
| 65 | struct device_node *of_node; | ||
| 66 | }; | ||
| 65 | #endif | 67 | #endif |
diff --git a/include/linux/platform_data/mtd-onenand-omap2.h b/include/linux/platform_data/mtd-onenand-omap2.h index 685af7e8b120..e9a9fb188f97 100644 --- a/include/linux/platform_data/mtd-onenand-omap2.h +++ b/include/linux/platform_data/mtd-onenand-omap2.h | |||
| @@ -29,5 +29,8 @@ struct omap_onenand_platform_data { | |||
| 29 | u8 flags; | 29 | u8 flags; |
| 30 | u8 regulator_can_sleep; | 30 | u8 regulator_can_sleep; |
| 31 | u8 skip_initial_unlocking; | 31 | u8 skip_initial_unlocking; |
| 32 | |||
| 33 | /* for passing the partitions */ | ||
| 34 | struct device_node *of_node; | ||
| 32 | }; | 35 | }; |
| 33 | #endif | 36 | #endif |
diff --git a/include/linux/platform_data/s3c-hsotg.h b/include/linux/platform_data/s3c-hsotg.h index 8b79e0967f9c..3f1cbf95ec3b 100644 --- a/include/linux/platform_data/s3c-hsotg.h +++ b/include/linux/platform_data/s3c-hsotg.h | |||
| @@ -15,6 +15,8 @@ | |||
| 15 | #ifndef __LINUX_USB_S3C_HSOTG_H | 15 | #ifndef __LINUX_USB_S3C_HSOTG_H |
| 16 | #define __LINUX_USB_S3C_HSOTG_H | 16 | #define __LINUX_USB_S3C_HSOTG_H |
| 17 | 17 | ||
| 18 | struct platform_device; | ||
| 19 | |||
| 18 | enum s3c_hsotg_dmamode { | 20 | enum s3c_hsotg_dmamode { |
| 19 | S3C_HSOTG_DMA_NONE, /* do not use DMA at-all */ | 21 | S3C_HSOTG_DMA_NONE, /* do not use DMA at-all */ |
| 20 | S3C_HSOTG_DMA_ONLY, /* always use DMA */ | 22 | S3C_HSOTG_DMA_ONLY, /* always use DMA */ |
diff --git a/include/linux/platform_data/samsung-usbphy.h b/include/linux/platform_data/samsung-usbphy.h new file mode 100644 index 000000000000..1bd24cba982b --- /dev/null +++ b/include/linux/platform_data/samsung-usbphy.h | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (C) 2012 Samsung Electronics Co.Ltd | ||
| 3 | * http://www.samsung.com/ | ||
| 4 | * Author: Praveen Paneri <p.paneri@samsung.com> | ||
| 5 | * | ||
| 6 | * Defines platform data for samsung usb phy driver. | ||
| 7 | * | ||
| 8 | * This program is free software; you can redistribute it and/or modify it | ||
| 9 | * under the terms of the GNU General Public License as published by the | ||
| 10 | * Free Software Foundation; either version 2 of the License, or (at your | ||
| 11 | * option) any later version. | ||
| 12 | */ | ||
| 13 | |||
| 14 | #ifndef __SAMSUNG_USBPHY_PLATFORM_H | ||
| 15 | #define __SAMSUNG_USBPHY_PLATFORM_H | ||
| 16 | |||
| 17 | /** | ||
| 18 | * samsung_usbphy_data - Platform data for USB PHY driver. | ||
| 19 | * @pmu_isolation: Function to control usb phy isolation in PMU. | ||
| 20 | */ | ||
| 21 | struct samsung_usbphy_data { | ||
| 22 | void (*pmu_isolation)(int on); | ||
| 23 | }; | ||
| 24 | |||
| 25 | extern void samsung_usbphy_set_pdata(struct samsung_usbphy_data *pd); | ||
| 26 | |||
| 27 | #endif /* __SAMSUNG_USBPHY_PLATFORM_H */ | ||
diff --git a/include/linux/platform_data/sccnxp.h b/include/linux/platform_data/serial-sccnxp.h index 7311ccd3217f..215574d1e81d 100644 --- a/include/linux/platform_data/sccnxp.h +++ b/include/linux/platform_data/serial-sccnxp.h | |||
| @@ -11,8 +11,8 @@ | |||
| 11 | * (at your option) any later version. | 11 | * (at your option) any later version. |
| 12 | */ | 12 | */ |
| 13 | 13 | ||
| 14 | #ifndef __SCCNXP_H | 14 | #ifndef _PLATFORM_DATA_SERIAL_SCCNXP_H_ |
| 15 | #define __SCCNXP_H | 15 | #define _PLATFORM_DATA_SERIAL_SCCNXP_H_ |
| 16 | 16 | ||
| 17 | #define SCCNXP_MAX_UARTS 2 | 17 | #define SCCNXP_MAX_UARTS 2 |
| 18 | 18 | ||
| @@ -84,6 +84,8 @@ struct sccnxp_pdata { | |||
| 84 | const u8 reg_shift; | 84 | const u8 reg_shift; |
| 85 | /* Modem control lines configuration */ | 85 | /* Modem control lines configuration */ |
| 86 | const u32 mctrl_cfg[SCCNXP_MAX_UARTS]; | 86 | const u32 mctrl_cfg[SCCNXP_MAX_UARTS]; |
| 87 | /* Timer value for polling mode (usecs) */ | ||
| 88 | const unsigned int poll_time_us; | ||
| 87 | /* Called during startup */ | 89 | /* Called during startup */ |
| 88 | void (*init)(void); | 90 | void (*init)(void); |
| 89 | /* Called before finish */ | 91 | /* Called before finish */ |
diff --git a/include/linux/platform_data/sh_ipmmu.h b/include/linux/platform_data/sh_ipmmu.h new file mode 100644 index 000000000000..39f7405cdac5 --- /dev/null +++ b/include/linux/platform_data/sh_ipmmu.h | |||
| @@ -0,0 +1,18 @@ | |||
| 1 | /* sh_ipmmu.h | ||
| 2 | * | ||
| 3 | * Copyright (C) 2012 Hideki EIRAKU | ||
| 4 | * | ||
| 5 | * This program is free software; you can redistribute it and/or modify | ||
| 6 | * it under the terms of the GNU General Public License as published by | ||
| 7 | * the Free Software Foundation; version 2 of the License. | ||
| 8 | */ | ||
| 9 | |||
| 10 | #ifndef __SH_IPMMU_H__ | ||
| 11 | #define __SH_IPMMU_H__ | ||
| 12 | |||
| 13 | struct shmobile_ipmmu_platform_data { | ||
| 14 | const char * const *dev_names; | ||
| 15 | unsigned int num_dev_names; | ||
| 16 | }; | ||
| 17 | |||
| 18 | #endif /* __SH_IPMMU_H__ */ | ||
diff --git a/include/linux/platform_data/spi-omap2-mcspi.h b/include/linux/platform_data/spi-omap2-mcspi.h index a65572d53211..c100456eab17 100644 --- a/include/linux/platform_data/spi-omap2-mcspi.h +++ b/include/linux/platform_data/spi-omap2-mcspi.h | |||
| @@ -22,6 +22,9 @@ struct omap2_mcspi_dev_attr { | |||
| 22 | 22 | ||
| 23 | struct omap2_mcspi_device_config { | 23 | struct omap2_mcspi_device_config { |
| 24 | unsigned turbo_mode:1; | 24 | unsigned turbo_mode:1; |
| 25 | |||
| 26 | /* toggle chip select after every word */ | ||
| 27 | unsigned cs_per_word:1; | ||
| 25 | }; | 28 | }; |
| 26 | 29 | ||
| 27 | #endif | 30 | #endif |
diff --git a/include/linux/platform_data/tsl2563.h b/include/linux/platform_data/tsl2563.h new file mode 100644 index 000000000000..c90d7a09dda7 --- /dev/null +++ b/include/linux/platform_data/tsl2563.h | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | #ifndef __LINUX_TSL2563_H | ||
| 2 | #define __LINUX_TSL2563_H | ||
| 3 | |||
| 4 | struct tsl2563_platform_data { | ||
| 5 | int cover_comp_gain; | ||
| 6 | }; | ||
| 7 | |||
| 8 | #endif /* __LINUX_TSL2563_H */ | ||
diff --git a/include/linux/platform_data/usb-omap.h b/include/linux/platform_data/usb-omap.h index ef65b67c56c3..fa579b4c666b 100644 --- a/include/linux/platform_data/usb-omap.h +++ b/include/linux/platform_data/usb-omap.h | |||
| @@ -55,13 +55,18 @@ struct ohci_hcd_omap_platform_data { | |||
| 55 | }; | 55 | }; |
| 56 | 56 | ||
| 57 | struct usbhs_omap_platform_data { | 57 | struct usbhs_omap_platform_data { |
| 58 | enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS]; | 58 | int nports; |
| 59 | enum usbhs_omap_port_mode port_mode[OMAP3_HS_USB_PORTS]; | ||
| 60 | int reset_gpio_port[OMAP3_HS_USB_PORTS]; | ||
| 61 | struct regulator *regulator[OMAP3_HS_USB_PORTS]; | ||
| 59 | 62 | ||
| 60 | struct ehci_hcd_omap_platform_data *ehci_data; | 63 | struct ehci_hcd_omap_platform_data *ehci_data; |
| 61 | struct ohci_hcd_omap_platform_data *ohci_data; | 64 | struct ohci_hcd_omap_platform_data *ohci_data; |
| 62 | 65 | ||
| 63 | /* OMAP3 <= ES2.1 have a single ulpi bypass control bit */ | 66 | /* OMAP3 <= ES2.1 have a single ulpi bypass control bit */ |
| 64 | unsigned single_ulpi_bypass:1; | 67 | unsigned single_ulpi_bypass:1; |
| 68 | unsigned es2_compatibility:1; | ||
| 69 | unsigned phy_reset:1; | ||
| 65 | }; | 70 | }; |
| 66 | 71 | ||
| 67 | /*-------------------------------------------------------------------------*/ | 72 | /*-------------------------------------------------------------------------*/ |
diff --git a/include/linux/platform_data/usb3503.h b/include/linux/platform_data/usb3503.h new file mode 100644 index 000000000000..85dcc709f7e9 --- /dev/null +++ b/include/linux/platform_data/usb3503.h | |||
| @@ -0,0 +1,19 @@ | |||
| 1 | #ifndef __USB3503_H__ | ||
| 2 | #define __USB3503_H__ | ||
| 3 | |||
| 4 | #define USB3503_I2C_NAME "usb3503" | ||
| 5 | |||
| 6 | enum usb3503_mode { | ||
| 7 | USB3503_MODE_UNKNOWN, | ||
| 8 | USB3503_MODE_HUB, | ||
| 9 | USB3503_MODE_STANDBY, | ||
| 10 | }; | ||
| 11 | |||
| 12 | struct usb3503_platform_data { | ||
| 13 | enum usb3503_mode initial_mode; | ||
| 14 | int gpio_intn; | ||
| 15 | int gpio_connect; | ||
| 16 | int gpio_reset; | ||
| 17 | }; | ||
| 18 | |||
| 19 | #endif | ||
diff --git a/include/linux/platform_data/ux500_wdt.h b/include/linux/platform_data/ux500_wdt.h new file mode 100644 index 000000000000..1689ff4c3bfd --- /dev/null +++ b/include/linux/platform_data/ux500_wdt.h | |||
| @@ -0,0 +1,19 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (C) ST Ericsson SA 2011 | ||
| 3 | * | ||
| 4 | * License Terms: GNU General Public License v2 | ||
| 5 | * | ||
| 6 | * STE Ux500 Watchdog platform data | ||
| 7 | */ | ||
| 8 | #ifndef __UX500_WDT_H | ||
| 9 | #define __UX500_WDT_H | ||
| 10 | |||
| 11 | /** | ||
| 12 | * struct ux500_wdt_data | ||
| 13 | */ | ||
| 14 | struct ux500_wdt_data { | ||
| 15 | unsigned int timeout; | ||
| 16 | bool has_28_bits_resolution; | ||
| 17 | }; | ||
| 18 | |||
| 19 | #endif /* __UX500_WDT_H */ | ||
