diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-01 19:45:00 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-01 19:45:00 -0400 |
commit | c12e69c6aaf785fd307d05cb6f36ca0e7577ead7 (patch) | |
tree | d12feba57d1f42f8a2a1a382d3bea29603312d14 /include | |
parent | 158e0d3621683ee0cdfeeba56f0e5ddd97ae984f (diff) | |
parent | 94debda32429e1a348fec8543245f1190a92d68c (diff) |
Merge tag 'staging-3.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging
Pull staging driver updates from Greg KH:
"Here's the huge drivers/staging/ update for 3.15-rc1.
Loads of cleanup fixes, a few drivers removed, and some new ones
added.
All have been in linux-next for a while"
* tag 'staging-3.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1375 commits)
staging: xillybus: XILLYBUS_PCIE depends on PCI_MSI
staging: xillybus: Added "select CRC32" for XILLYBUS in Kconfig
staging: comedi: poc: remove obsolete driver
staging: unisys: replace kzalloc/kfree with UISMALLOC/UISFREE
staging: octeon-usb: prevent memory corruption
staging: usbip: fix line over 80 characters
staging: usbip: fix quoted string split across lines
Staging: unisys: Remove RETINT macro
Staging: unisys: Remove FAIL macro
Staging: unisys: Remove RETVOID macro
Staging: unisys: Remove RETPTR macro
Staging: unisys: Remove RETBOOL macro
Staging: unisys: Remove FAIL_WPOSTCODE_1 macro
Staging: unisys: Cleanup macros to get rid of goto statements
Staging: unisys: include: Remove unused macros from timskmod.h
staging: dgap: fix the rest of the checkpatch warnings in dgap.c
Staging: bcm: Remove unnecessary parentheses
staging: wlags49_h2: Delete unnecessary braces
staging: wlags49_h2: Do not use assignment in if condition
staging: wlags49_h2: Enclose macro in a do-while loop
...
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/hid-sensor-ids.h | 10 | ||||
-rw-r--r-- | include/linux/iio/iio.h | 16 | ||||
-rw-r--r-- | include/linux/of_graph.h | 66 | ||||
-rw-r--r-- | include/linux/platform_data/bt-nokia-h4p.h | 38 | ||||
-rw-r--r-- | include/linux/usb.h | 11 | ||||
-rw-r--r-- | include/media/v4l2-of.h | 33 |
6 files changed, 138 insertions, 36 deletions
diff --git a/include/linux/hid-sensor-ids.h b/include/linux/hid-sensor-ids.h index beaf965621c1..537161a997ab 100644 --- a/include/linux/hid-sensor-ids.h +++ b/include/linux/hid-sensor-ids.h | |||
@@ -33,6 +33,16 @@ | |||
33 | #define HID_USAGE_SENSOR_DATA_LIGHT 0x2004d0 | 33 | #define HID_USAGE_SENSOR_DATA_LIGHT 0x2004d0 |
34 | #define HID_USAGE_SENSOR_LIGHT_ILLUM 0x2004d1 | 34 | #define HID_USAGE_SENSOR_LIGHT_ILLUM 0x2004d1 |
35 | 35 | ||
36 | /* PROX (200011) */ | ||
37 | #define HID_USAGE_SENSOR_PROX 0x200011 | ||
38 | #define HID_USAGE_SENSOR_DATA_PRESENCE 0x2004b0 | ||
39 | #define HID_USAGE_SENSOR_HUMAN_PRESENCE 0x2004b1 | ||
40 | |||
41 | /* Pressure (200031) */ | ||
42 | #define HID_USAGE_SENSOR_PRESSURE 0x200031 | ||
43 | #define HID_USAGE_SENSOR_DATA_ATMOSPHERIC_PRESSURE 0x200430 | ||
44 | #define HID_USAGE_SENSOR_ATMOSPHERIC_PRESSURE 0x200431 | ||
45 | |||
36 | /* Gyro 3D: (200076) */ | 46 | /* Gyro 3D: (200076) */ |
37 | #define HID_USAGE_SENSOR_GYRO_3D 0x200076 | 47 | #define HID_USAGE_SENSOR_GYRO_3D 0x200076 |
38 | #define HID_USAGE_SENSOR_DATA_ANGL_VELOCITY 0x200456 | 48 | #define HID_USAGE_SENSOR_DATA_ANGL_VELOCITY 0x200456 |
diff --git a/include/linux/iio/iio.h b/include/linux/iio/iio.h index 75a8a20c8179..5f2d00e7e488 100644 --- a/include/linux/iio/iio.h +++ b/include/linux/iio/iio.h | |||
@@ -254,12 +254,16 @@ static inline bool iio_channel_has_info(const struct iio_chan_spec *chan, | |||
254 | (chan->info_mask_shared_by_all & BIT(type)); | 254 | (chan->info_mask_shared_by_all & BIT(type)); |
255 | } | 255 | } |
256 | 256 | ||
257 | #define IIO_ST(si, rb, sb, sh) \ | 257 | #define IIO_CHAN_SOFT_TIMESTAMP(_si) { \ |
258 | { .sign = si, .realbits = rb, .storagebits = sb, .shift = sh } | 258 | .type = IIO_TIMESTAMP, \ |
259 | 259 | .channel = -1, \ | |
260 | #define IIO_CHAN_SOFT_TIMESTAMP(_si) \ | 260 | .scan_index = _si, \ |
261 | { .type = IIO_TIMESTAMP, .channel = -1, \ | 261 | .scan_type = { \ |
262 | .scan_index = _si, .scan_type = IIO_ST('s', 64, 64, 0) } | 262 | .sign = 's', \ |
263 | .realbits = 64, \ | ||
264 | .storagebits = 64, \ | ||
265 | }, \ | ||
266 | } | ||
263 | 267 | ||
264 | /** | 268 | /** |
265 | * iio_get_time_ns() - utility function to get a time stamp for events etc | 269 | * iio_get_time_ns() - utility function to get a time stamp for events etc |
diff --git a/include/linux/of_graph.h b/include/linux/of_graph.h new file mode 100644 index 000000000000..befef42e015b --- /dev/null +++ b/include/linux/of_graph.h | |||
@@ -0,0 +1,66 @@ | |||
1 | /* | ||
2 | * OF graph binding parsing helpers | ||
3 | * | ||
4 | * Copyright (C) 2012 - 2013 Samsung Electronics Co., Ltd. | ||
5 | * Author: Sylwester Nawrocki <s.nawrocki@samsung.com> | ||
6 | * | ||
7 | * Copyright (C) 2012 Renesas Electronics Corp. | ||
8 | * Author: Guennadi Liakhovetski <g.liakhovetski@gmx.de> | ||
9 | * | ||
10 | * This program is free software; you can redistribute it and/or modify | ||
11 | * it under the terms of version 2 of the GNU General Public License as | ||
12 | * published by the Free Software Foundation. | ||
13 | */ | ||
14 | #ifndef __LINUX_OF_GRAPH_H | ||
15 | #define __LINUX_OF_GRAPH_H | ||
16 | |||
17 | /** | ||
18 | * struct of_endpoint - the OF graph endpoint data structure | ||
19 | * @port: identifier (value of reg property) of a port this endpoint belongs to | ||
20 | * @id: identifier (value of reg property) of this endpoint | ||
21 | * @local_node: pointer to device_node of this endpoint | ||
22 | */ | ||
23 | struct of_endpoint { | ||
24 | unsigned int port; | ||
25 | unsigned int id; | ||
26 | const struct device_node *local_node; | ||
27 | }; | ||
28 | |||
29 | #ifdef CONFIG_OF | ||
30 | int of_graph_parse_endpoint(const struct device_node *node, | ||
31 | struct of_endpoint *endpoint); | ||
32 | struct device_node *of_graph_get_next_endpoint(const struct device_node *parent, | ||
33 | struct device_node *previous); | ||
34 | struct device_node *of_graph_get_remote_port_parent( | ||
35 | const struct device_node *node); | ||
36 | struct device_node *of_graph_get_remote_port(const struct device_node *node); | ||
37 | #else | ||
38 | |||
39 | static inline int of_graph_parse_endpoint(const struct device_node *node, | ||
40 | struct of_endpoint *endpoint) | ||
41 | { | ||
42 | return -ENOSYS; | ||
43 | } | ||
44 | |||
45 | static inline struct device_node *of_graph_get_next_endpoint( | ||
46 | const struct device_node *parent, | ||
47 | struct device_node *previous) | ||
48 | { | ||
49 | return NULL; | ||
50 | } | ||
51 | |||
52 | static inline struct device_node *of_graph_get_remote_port_parent( | ||
53 | const struct device_node *node) | ||
54 | { | ||
55 | return NULL; | ||
56 | } | ||
57 | |||
58 | static inline struct device_node *of_graph_get_remote_port( | ||
59 | const struct device_node *node) | ||
60 | { | ||
61 | return NULL; | ||
62 | } | ||
63 | |||
64 | #endif /* CONFIG_OF */ | ||
65 | |||
66 | #endif /* __LINUX_OF_GRAPH_H */ | ||
diff --git a/include/linux/platform_data/bt-nokia-h4p.h b/include/linux/platform_data/bt-nokia-h4p.h new file mode 100644 index 000000000000..30d169dfadf3 --- /dev/null +++ b/include/linux/platform_data/bt-nokia-h4p.h | |||
@@ -0,0 +1,38 @@ | |||
1 | /* | ||
2 | * This file is part of Nokia H4P bluetooth driver | ||
3 | * | ||
4 | * Copyright (C) 2010 Nokia Corporation. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or | ||
7 | * modify it under the terms of the GNU General Public License | ||
8 | * version 2 as published by the Free Software Foundation. | ||
9 | * | ||
10 | * This program is distributed in the hope that it will be useful, but | ||
11 | * WITHOUT ANY WARRANTY; without even the implied warranty of | ||
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
13 | * General Public License for more details. | ||
14 | * | ||
15 | * You should have received a copy of the GNU General Public License | ||
16 | * along with this program; if not, write to the Free Software | ||
17 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA | ||
18 | * 02110-1301 USA | ||
19 | * | ||
20 | */ | ||
21 | |||
22 | |||
23 | /** | ||
24 | * struct hci_h4p_platform data - hci_h4p Platform data structure | ||
25 | */ | ||
26 | struct hci_h4p_platform_data { | ||
27 | int chip_type; | ||
28 | int bt_sysclk; | ||
29 | unsigned int bt_wakeup_gpio; | ||
30 | unsigned int host_wakeup_gpio; | ||
31 | unsigned int reset_gpio; | ||
32 | int reset_gpio_shared; | ||
33 | unsigned int uart_irq; | ||
34 | phys_addr_t uart_base; | ||
35 | const char *uart_iclk; | ||
36 | const char *uart_fclk; | ||
37 | void (*set_pm_limits)(struct device *dev, bool set); | ||
38 | }; | ||
diff --git a/include/linux/usb.h b/include/linux/usb.h index 7f6eb859873e..b55600a1edc3 100644 --- a/include/linux/usb.h +++ b/include/linux/usb.h | |||
@@ -366,6 +366,8 @@ struct usb_bus { | |||
366 | #endif | 366 | #endif |
367 | }; | 367 | }; |
368 | 368 | ||
369 | struct usb_dev_state; | ||
370 | |||
369 | /* ----------------------------------------------------------------------- */ | 371 | /* ----------------------------------------------------------------------- */ |
370 | 372 | ||
371 | struct usb_tt; | 373 | struct usb_tt; |
@@ -749,6 +751,11 @@ extern struct usb_host_interface *usb_find_alt_setting( | |||
749 | unsigned int iface_num, | 751 | unsigned int iface_num, |
750 | unsigned int alt_num); | 752 | unsigned int alt_num); |
751 | 753 | ||
754 | /* port claiming functions */ | ||
755 | int usb_hub_claim_port(struct usb_device *hdev, unsigned port1, | ||
756 | struct usb_dev_state *owner); | ||
757 | int usb_hub_release_port(struct usb_device *hdev, unsigned port1, | ||
758 | struct usb_dev_state *owner); | ||
752 | 759 | ||
753 | /** | 760 | /** |
754 | * usb_make_path - returns stable device path in the usb tree | 761 | * usb_make_path - returns stable device path in the usb tree |
@@ -1666,6 +1673,10 @@ extern void usb_reset_endpoint(struct usb_device *dev, unsigned int epaddr); | |||
1666 | /* this request isn't really synchronous, but it belongs with the others */ | 1673 | /* this request isn't really synchronous, but it belongs with the others */ |
1667 | extern int usb_driver_set_configuration(struct usb_device *udev, int config); | 1674 | extern int usb_driver_set_configuration(struct usb_device *udev, int config); |
1668 | 1675 | ||
1676 | /* choose and set configuration for device */ | ||
1677 | extern int usb_choose_configuration(struct usb_device *udev); | ||
1678 | extern int usb_set_configuration(struct usb_device *dev, int configuration); | ||
1679 | |||
1669 | /* | 1680 | /* |
1670 | * timeouts, in milliseconds, used for sending/receiving control messages | 1681 | * timeouts, in milliseconds, used for sending/receiving control messages |
1671 | * they typically complete within a few frames (msec) after they're issued | 1682 | * they typically complete within a few frames (msec) after they're issued |
diff --git a/include/media/v4l2-of.h b/include/media/v4l2-of.h index 541cea4122e9..70fa7b7b0487 100644 --- a/include/media/v4l2-of.h +++ b/include/media/v4l2-of.h | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/list.h> | 17 | #include <linux/list.h> |
18 | #include <linux/types.h> | 18 | #include <linux/types.h> |
19 | #include <linux/errno.h> | 19 | #include <linux/errno.h> |
20 | #include <linux/of_graph.h> | ||
20 | 21 | ||
21 | #include <media/v4l2-mediabus.h> | 22 | #include <media/v4l2-mediabus.h> |
22 | 23 | ||
@@ -50,17 +51,13 @@ struct v4l2_of_bus_parallel { | |||
50 | 51 | ||
51 | /** | 52 | /** |
52 | * struct v4l2_of_endpoint - the endpoint data structure | 53 | * struct v4l2_of_endpoint - the endpoint data structure |
53 | * @port: identifier (value of reg property) of a port this endpoint belongs to | 54 | * @base: struct of_endpoint containing port, id, and local of_node |
54 | * @id: identifier (value of reg property) of this endpoint | ||
55 | * @local_node: pointer to device_node of this endpoint | ||
56 | * @bus_type: bus type | 55 | * @bus_type: bus type |
57 | * @bus: bus configuration data structure | 56 | * @bus: bus configuration data structure |
58 | * @head: list head for this structure | 57 | * @head: list head for this structure |
59 | */ | 58 | */ |
60 | struct v4l2_of_endpoint { | 59 | struct v4l2_of_endpoint { |
61 | unsigned int port; | 60 | struct of_endpoint base; |
62 | unsigned int id; | ||
63 | const struct device_node *local_node; | ||
64 | enum v4l2_mbus_type bus_type; | 61 | enum v4l2_mbus_type bus_type; |
65 | union { | 62 | union { |
66 | struct v4l2_of_bus_parallel parallel; | 63 | struct v4l2_of_bus_parallel parallel; |
@@ -72,11 +69,6 @@ struct v4l2_of_endpoint { | |||
72 | #ifdef CONFIG_OF | 69 | #ifdef CONFIG_OF |
73 | int v4l2_of_parse_endpoint(const struct device_node *node, | 70 | int v4l2_of_parse_endpoint(const struct device_node *node, |
74 | struct v4l2_of_endpoint *endpoint); | 71 | struct v4l2_of_endpoint *endpoint); |
75 | struct device_node *v4l2_of_get_next_endpoint(const struct device_node *parent, | ||
76 | struct device_node *previous); | ||
77 | struct device_node *v4l2_of_get_remote_port_parent( | ||
78 | const struct device_node *node); | ||
79 | struct device_node *v4l2_of_get_remote_port(const struct device_node *node); | ||
80 | #else /* CONFIG_OF */ | 72 | #else /* CONFIG_OF */ |
81 | 73 | ||
82 | static inline int v4l2_of_parse_endpoint(const struct device_node *node, | 74 | static inline int v4l2_of_parse_endpoint(const struct device_node *node, |
@@ -85,25 +77,6 @@ static inline int v4l2_of_parse_endpoint(const struct device_node *node, | |||
85 | return -ENOSYS; | 77 | return -ENOSYS; |
86 | } | 78 | } |
87 | 79 | ||
88 | static inline struct device_node *v4l2_of_get_next_endpoint( | ||
89 | const struct device_node *parent, | ||
90 | struct device_node *previous) | ||
91 | { | ||
92 | return NULL; | ||
93 | } | ||
94 | |||
95 | static inline struct device_node *v4l2_of_get_remote_port_parent( | ||
96 | const struct device_node *node) | ||
97 | { | ||
98 | return NULL; | ||
99 | } | ||
100 | |||
101 | static inline struct device_node *v4l2_of_get_remote_port( | ||
102 | const struct device_node *node) | ||
103 | { | ||
104 | return NULL; | ||
105 | } | ||
106 | |||
107 | #endif /* CONFIG_OF */ | 80 | #endif /* CONFIG_OF */ |
108 | 81 | ||
109 | #endif /* _V4L2_OF_H */ | 82 | #endif /* _V4L2_OF_H */ |