diff options
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/amba/pl022.h | 4 | ||||
| -rw-r--r-- | include/linux/of.h | 11 | ||||
| -rw-r--r-- | include/linux/of_gpio.h | 10 |
3 files changed, 19 insertions, 6 deletions
diff --git a/include/linux/amba/pl022.h b/include/linux/amba/pl022.h index 4ce98f54186b..572f637299c9 100644 --- a/include/linux/amba/pl022.h +++ b/include/linux/amba/pl022.h | |||
| @@ -238,6 +238,9 @@ struct dma_chan; | |||
| 238 | * @enable_dma: if true enables DMA driven transfers. | 238 | * @enable_dma: if true enables DMA driven transfers. |
| 239 | * @dma_rx_param: parameter to locate an RX DMA channel. | 239 | * @dma_rx_param: parameter to locate an RX DMA channel. |
| 240 | * @dma_tx_param: parameter to locate a TX DMA channel. | 240 | * @dma_tx_param: parameter to locate a TX DMA channel. |
| 241 | * @autosuspend_delay: delay in ms following transfer completion before the | ||
| 242 | * runtime power management system suspends the device. A setting of 0 | ||
| 243 | * indicates no delay and the device will be suspended immediately. | ||
| 241 | */ | 244 | */ |
| 242 | struct pl022_ssp_controller { | 245 | struct pl022_ssp_controller { |
| 243 | u16 bus_id; | 246 | u16 bus_id; |
| @@ -246,6 +249,7 @@ struct pl022_ssp_controller { | |||
| 246 | bool (*dma_filter)(struct dma_chan *chan, void *filter_param); | 249 | bool (*dma_filter)(struct dma_chan *chan, void *filter_param); |
| 247 | void *dma_rx_param; | 250 | void *dma_rx_param; |
| 248 | void *dma_tx_param; | 251 | void *dma_tx_param; |
| 252 | int autosuspend_delay; | ||
| 249 | }; | 253 | }; |
| 250 | 254 | ||
| 251 | /** | 255 | /** |
diff --git a/include/linux/of.h b/include/linux/of.h index 4948552d60f5..ea44fd72af5f 100644 --- a/include/linux/of.h +++ b/include/linux/of.h | |||
| @@ -65,6 +65,13 @@ struct device_node { | |||
| 65 | #endif | 65 | #endif |
| 66 | }; | 66 | }; |
| 67 | 67 | ||
| 68 | #define MAX_PHANDLE_ARGS 8 | ||
| 69 | struct of_phandle_args { | ||
| 70 | struct device_node *np; | ||
| 71 | int args_count; | ||
| 72 | uint32_t args[MAX_PHANDLE_ARGS]; | ||
| 73 | }; | ||
| 74 | |||
| 68 | #ifdef CONFIG_OF | 75 | #ifdef CONFIG_OF |
| 69 | 76 | ||
| 70 | /* Pointer for first entry in chain of all nodes. */ | 77 | /* Pointer for first entry in chain of all nodes. */ |
| @@ -230,9 +237,9 @@ extern int of_modalias_node(struct device_node *node, char *modalias, int len); | |||
| 230 | extern struct device_node *of_parse_phandle(struct device_node *np, | 237 | extern struct device_node *of_parse_phandle(struct device_node *np, |
| 231 | const char *phandle_name, | 238 | const char *phandle_name, |
| 232 | int index); | 239 | int index); |
| 233 | extern int of_parse_phandles_with_args(struct device_node *np, | 240 | extern int of_parse_phandle_with_args(struct device_node *np, |
| 234 | const char *list_name, const char *cells_name, int index, | 241 | const char *list_name, const char *cells_name, int index, |
| 235 | struct device_node **out_node, const void **out_args); | 242 | struct of_phandle_args *out_args); |
| 236 | 243 | ||
| 237 | extern void of_alias_scan(void * (*dt_alloc)(u64 size, u64 align)); | 244 | extern void of_alias_scan(void * (*dt_alloc)(u64 size, u64 align)); |
| 238 | extern int of_alias_get_id(struct device_node *np, const char *stem); | 245 | extern int of_alias_get_id(struct device_node *np, const char *stem); |
diff --git a/include/linux/of_gpio.h b/include/linux/of_gpio.h index 52280a2b5e63..b254052a49d7 100644 --- a/include/linux/of_gpio.h +++ b/include/linux/of_gpio.h | |||
| @@ -18,6 +18,7 @@ | |||
| 18 | #include <linux/kernel.h> | 18 | #include <linux/kernel.h> |
| 19 | #include <linux/errno.h> | 19 | #include <linux/errno.h> |
| 20 | #include <linux/gpio.h> | 20 | #include <linux/gpio.h> |
| 21 | #include <linux/of.h> | ||
| 21 | 22 | ||
| 22 | struct device_node; | 23 | struct device_node; |
| 23 | 24 | ||
| @@ -57,8 +58,9 @@ extern int of_mm_gpiochip_add(struct device_node *np, | |||
| 57 | extern void of_gpiochip_add(struct gpio_chip *gc); | 58 | extern void of_gpiochip_add(struct gpio_chip *gc); |
| 58 | extern void of_gpiochip_remove(struct gpio_chip *gc); | 59 | extern void of_gpiochip_remove(struct gpio_chip *gc); |
| 59 | extern struct gpio_chip *of_node_to_gpiochip(struct device_node *np); | 60 | extern struct gpio_chip *of_node_to_gpiochip(struct device_node *np); |
| 60 | extern int of_gpio_simple_xlate(struct gpio_chip *gc, struct device_node *np, | 61 | extern int of_gpio_simple_xlate(struct gpio_chip *gc, |
| 61 | const void *gpio_spec, u32 *flags); | 62 | const struct of_phandle_args *gpiospec, |
| 63 | u32 *flags); | ||
| 62 | 64 | ||
| 63 | #else /* CONFIG_OF_GPIO */ | 65 | #else /* CONFIG_OF_GPIO */ |
| 64 | 66 | ||
| @@ -75,8 +77,8 @@ static inline unsigned int of_gpio_count(struct device_node *np) | |||
| 75 | } | 77 | } |
| 76 | 78 | ||
| 77 | static inline int of_gpio_simple_xlate(struct gpio_chip *gc, | 79 | static inline int of_gpio_simple_xlate(struct gpio_chip *gc, |
| 78 | struct device_node *np, | 80 | const struct of_phandle_args *gpiospec, |
| 79 | const void *gpio_spec, u32 *flags) | 81 | u32 *flags) |
| 80 | { | 82 | { |
| 81 | return -ENOSYS; | 83 | return -ENOSYS; |
| 82 | } | 84 | } |
