aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2014-09-08 00:41:53 -0400
committerDavid S. Miller <davem@davemloft.net>2014-09-08 00:41:53 -0400
commiteb84d6b60491a3ca3d90d62ee5346b007770d40d (patch)
tree22aadf9ada15e1ae5ba4c400aafab6f2541996e6 /include
parent97a13e5289baa96eaddd06e61d277457d837af3a (diff)
parentd030671f3f261e528dc6e396a13f10859a74ae7c (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Diffstat (limited to 'include')
-rw-r--r--include/acpi/acpi_bus.h1
-rw-r--r--include/drm/drm_pciids.h7
-rw-r--r--include/linux/blk-mq.h7
-rw-r--r--include/linux/f2fs_fs.h16
-rw-r--r--include/linux/ftrace.h14
-rw-r--r--include/linux/gpio/consumer.h109
-rw-r--r--include/linux/jbd2.h30
-rw-r--r--include/linux/leds.h3
-rw-r--r--include/linux/mlx4/device.h3
-rw-r--r--include/linux/mtd/nand.h2
-rw-r--r--include/linux/netdevice.h4
-rw-r--r--include/linux/netfilter.h5
-rw-r--r--include/linux/nfs_page.h1
-rw-r--r--include/linux/platform_data/mtd-nand-omap2.h13
-rw-r--r--include/linux/pm_domain.h2
-rw-r--r--include/linux/regulator/driver.h2
-rw-r--r--include/linux/regulator/machine.h1
-rw-r--r--include/linux/seqno-fence.h1
-rw-r--r--include/linux/spi/spi.h7
-rw-r--r--include/linux/tick.h7
-rw-r--r--include/net/bluetooth/hci_core.h2
-rw-r--r--include/net/netns/ieee802154_6lowpan.h1
-rw-r--r--include/net/regulatory.h2
-rw-r--r--include/net/sctp/sctp.h13
-rw-r--r--include/net/sock.h4
-rw-r--r--include/net/wimax.h2
-rw-r--r--include/sound/soc.h2
-rw-r--r--include/trace/events/irq.h4
-rw-r--r--include/uapi/drm/radeon_drm.h1
-rw-r--r--include/uapi/linux/usbip.h26
-rw-r--r--include/uapi/linux/xattr.h2
31 files changed, 206 insertions, 88 deletions
diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h
index bcfd808b1098..c1c9de19edbe 100644
--- a/include/acpi/acpi_bus.h
+++ b/include/acpi/acpi_bus.h
@@ -246,7 +246,6 @@ struct acpi_device_pnp {
246 acpi_device_name device_name; /* Driver-determined */ 246 acpi_device_name device_name; /* Driver-determined */
247 acpi_device_class device_class; /* " */ 247 acpi_device_class device_class; /* " */
248 union acpi_object *str_obj; /* unicode string for _STR method */ 248 union acpi_object *str_obj; /* unicode string for _STR method */
249 unsigned long sun; /* _SUN */
250}; 249};
251 250
252#define acpi_device_bid(d) ((d)->pnp.bus_id) 251#define acpi_device_bid(d) ((d)->pnp.bus_id)
diff --git a/include/drm/drm_pciids.h b/include/drm/drm_pciids.h
index 6dfd64b3a604..e973540cd15b 100644
--- a/include/drm/drm_pciids.h
+++ b/include/drm/drm_pciids.h
@@ -17,6 +17,7 @@
17 {0x1002, 0x1315, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 17 {0x1002, 0x1315, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
18 {0x1002, 0x1316, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 18 {0x1002, 0x1316, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
19 {0x1002, 0x1317, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 19 {0x1002, 0x1317, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
20 {0x1002, 0x1318, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
20 {0x1002, 0x131B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 21 {0x1002, 0x131B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
21 {0x1002, 0x131C, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 22 {0x1002, 0x131C, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
22 {0x1002, 0x131D, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \ 23 {0x1002, 0x131D, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_KAVERI|RADEON_NEW_MEMMAP|RADEON_IS_IGP}, \
@@ -164,8 +165,11 @@
164 {0x1002, 0x6601, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 165 {0x1002, 0x6601, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
165 {0x1002, 0x6602, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 166 {0x1002, 0x6602, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
166 {0x1002, 0x6603, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 167 {0x1002, 0x6603, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
168 {0x1002, 0x6604, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
169 {0x1002, 0x6605, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
167 {0x1002, 0x6606, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 170 {0x1002, 0x6606, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
168 {0x1002, 0x6607, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 171 {0x1002, 0x6607, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
172 {0x1002, 0x6608, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_NEW_MEMMAP}, \
169 {0x1002, 0x6610, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_NEW_MEMMAP}, \ 173 {0x1002, 0x6610, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_NEW_MEMMAP}, \
170 {0x1002, 0x6611, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_NEW_MEMMAP}, \ 174 {0x1002, 0x6611, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_NEW_MEMMAP}, \
171 {0x1002, 0x6613, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_NEW_MEMMAP}, \ 175 {0x1002, 0x6613, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_NEW_MEMMAP}, \
@@ -175,6 +179,8 @@
175 {0x1002, 0x6631, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_NEW_MEMMAP}, \ 179 {0x1002, 0x6631, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_OLAND|RADEON_NEW_MEMMAP}, \
176 {0x1002, 0x6640, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 180 {0x1002, 0x6640, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
177 {0x1002, 0x6641, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 181 {0x1002, 0x6641, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
182 {0x1002, 0x6646, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
183 {0x1002, 0x6647, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
178 {0x1002, 0x6649, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_NEW_MEMMAP}, \ 184 {0x1002, 0x6649, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_NEW_MEMMAP}, \
179 {0x1002, 0x6650, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_NEW_MEMMAP}, \ 185 {0x1002, 0x6650, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_NEW_MEMMAP}, \
180 {0x1002, 0x6651, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_NEW_MEMMAP}, \ 186 {0x1002, 0x6651, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_BONAIRE|RADEON_NEW_MEMMAP}, \
@@ -297,6 +303,7 @@
297 {0x1002, 0x6829, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \ 303 {0x1002, 0x6829, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \
298 {0x1002, 0x682A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 304 {0x1002, 0x682A, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
299 {0x1002, 0x682B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 305 {0x1002, 0x682B, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
306 {0x1002, 0x682C, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_NEW_MEMMAP}, \
300 {0x1002, 0x682D, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 307 {0x1002, 0x682D, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
301 {0x1002, 0x682F, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 308 {0x1002, 0x682F, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
302 {0x1002, 0x6830, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ 309 {0x1002, 0x6830, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VERDE|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \
diff --git a/include/linux/blk-mq.h b/include/linux/blk-mq.h
index eb726b9c5762..a1e31f274fcd 100644
--- a/include/linux/blk-mq.h
+++ b/include/linux/blk-mq.h
@@ -127,10 +127,9 @@ enum {
127 BLK_MQ_RQ_QUEUE_ERROR = 2, /* end IO with error */ 127 BLK_MQ_RQ_QUEUE_ERROR = 2, /* end IO with error */
128 128
129 BLK_MQ_F_SHOULD_MERGE = 1 << 0, 129 BLK_MQ_F_SHOULD_MERGE = 1 << 0,
130 BLK_MQ_F_SHOULD_SORT = 1 << 1, 130 BLK_MQ_F_TAG_SHARED = 1 << 1,
131 BLK_MQ_F_TAG_SHARED = 1 << 2, 131 BLK_MQ_F_SG_MERGE = 1 << 2,
132 BLK_MQ_F_SG_MERGE = 1 << 3, 132 BLK_MQ_F_SYSFS_UP = 1 << 3,
133 BLK_MQ_F_SYSFS_UP = 1 << 4,
134 133
135 BLK_MQ_S_STOPPED = 0, 134 BLK_MQ_S_STOPPED = 0,
136 BLK_MQ_S_TAG_ACTIVE = 1, 135 BLK_MQ_S_TAG_ACTIVE = 1,
diff --git a/include/linux/f2fs_fs.h b/include/linux/f2fs_fs.h
index 6ff0b0b42d47..08ed2b0a96e6 100644
--- a/include/linux/f2fs_fs.h
+++ b/include/linux/f2fs_fs.h
@@ -24,6 +24,9 @@
24#define NULL_ADDR ((block_t)0) /* used as block_t addresses */ 24#define NULL_ADDR ((block_t)0) /* used as block_t addresses */
25#define NEW_ADDR ((block_t)-1) /* used as block_t addresses */ 25#define NEW_ADDR ((block_t)-1) /* used as block_t addresses */
26 26
27/* 0, 1(node nid), 2(meta nid) are reserved node id */
28#define F2FS_RESERVED_NODE_NUM 3
29
27#define F2FS_ROOT_INO(sbi) (sbi->root_ino_num) 30#define F2FS_ROOT_INO(sbi) (sbi->root_ino_num)
28#define F2FS_NODE_INO(sbi) (sbi->node_ino_num) 31#define F2FS_NODE_INO(sbi) (sbi->node_ino_num)
29#define F2FS_META_INO(sbi) (sbi->meta_ino_num) 32#define F2FS_META_INO(sbi) (sbi->meta_ino_num)
@@ -87,6 +90,8 @@ struct f2fs_super_block {
87#define CP_ORPHAN_PRESENT_FLAG 0x00000002 90#define CP_ORPHAN_PRESENT_FLAG 0x00000002
88#define CP_UMOUNT_FLAG 0x00000001 91#define CP_UMOUNT_FLAG 0x00000001
89 92
93#define F2FS_CP_PACKS 2 /* # of checkpoint packs */
94
90struct f2fs_checkpoint { 95struct f2fs_checkpoint {
91 __le64 checkpoint_ver; /* checkpoint block version number */ 96 __le64 checkpoint_ver; /* checkpoint block version number */
92 __le64 user_block_count; /* # of user blocks */ 97 __le64 user_block_count; /* # of user blocks */
@@ -123,6 +128,9 @@ struct f2fs_checkpoint {
123 */ 128 */
124#define F2FS_ORPHANS_PER_BLOCK 1020 129#define F2FS_ORPHANS_PER_BLOCK 1020
125 130
131#define GET_ORPHAN_BLOCKS(n) ((n + F2FS_ORPHANS_PER_BLOCK - 1) / \
132 F2FS_ORPHANS_PER_BLOCK)
133
126struct f2fs_orphan_block { 134struct f2fs_orphan_block {
127 __le32 ino[F2FS_ORPHANS_PER_BLOCK]; /* inode numbers */ 135 __le32 ino[F2FS_ORPHANS_PER_BLOCK]; /* inode numbers */
128 __le32 reserved; /* reserved */ 136 __le32 reserved; /* reserved */
@@ -144,6 +152,7 @@ struct f2fs_extent {
144#define F2FS_NAME_LEN 255 152#define F2FS_NAME_LEN 255
145#define F2FS_INLINE_XATTR_ADDRS 50 /* 200 bytes for inline xattrs */ 153#define F2FS_INLINE_XATTR_ADDRS 50 /* 200 bytes for inline xattrs */
146#define DEF_ADDRS_PER_INODE 923 /* Address Pointers in an Inode */ 154#define DEF_ADDRS_PER_INODE 923 /* Address Pointers in an Inode */
155#define DEF_NIDS_PER_INODE 5 /* Node IDs in an Inode */
147#define ADDRS_PER_INODE(fi) addrs_per_inode(fi) 156#define ADDRS_PER_INODE(fi) addrs_per_inode(fi)
148#define ADDRS_PER_BLOCK 1018 /* Address Pointers in a Direct Block */ 157#define ADDRS_PER_BLOCK 1018 /* Address Pointers in a Direct Block */
149#define NIDS_PER_BLOCK 1018 /* Node IDs in an Indirect Block */ 158#define NIDS_PER_BLOCK 1018 /* Node IDs in an Indirect Block */
@@ -163,8 +172,9 @@ struct f2fs_extent {
163#define MAX_INLINE_DATA (sizeof(__le32) * (DEF_ADDRS_PER_INODE - \ 172#define MAX_INLINE_DATA (sizeof(__le32) * (DEF_ADDRS_PER_INODE - \
164 F2FS_INLINE_XATTR_ADDRS - 1)) 173 F2FS_INLINE_XATTR_ADDRS - 1))
165 174
166#define INLINE_DATA_OFFSET (PAGE_CACHE_SIZE - sizeof(struct node_footer) \ 175#define INLINE_DATA_OFFSET (PAGE_CACHE_SIZE - sizeof(struct node_footer) -\
167 - sizeof(__le32) * (DEF_ADDRS_PER_INODE + 5 - 1)) 176 sizeof(__le32) * (DEF_ADDRS_PER_INODE + \
177 DEF_NIDS_PER_INODE - 1))
168 178
169struct f2fs_inode { 179struct f2fs_inode {
170 __le16 i_mode; /* file mode */ 180 __le16 i_mode; /* file mode */
@@ -194,7 +204,7 @@ struct f2fs_inode {
194 204
195 __le32 i_addr[DEF_ADDRS_PER_INODE]; /* Pointers to data blocks */ 205 __le32 i_addr[DEF_ADDRS_PER_INODE]; /* Pointers to data blocks */
196 206
197 __le32 i_nid[5]; /* direct(2), indirect(2), 207 __le32 i_nid[DEF_NIDS_PER_INODE]; /* direct(2), indirect(2),
198 double_indirect(1) node id */ 208 double_indirect(1) node id */
199} __packed; 209} __packed;
200 210
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h
index 6bb5e3f2a3b4..f0b0edbf55a9 100644
--- a/include/linux/ftrace.h
+++ b/include/linux/ftrace.h
@@ -102,6 +102,15 @@ enum {
102 FTRACE_OPS_FL_DELETED = 1 << 8, 102 FTRACE_OPS_FL_DELETED = 1 << 8,
103}; 103};
104 104
105#ifdef CONFIG_DYNAMIC_FTRACE
106/* The hash used to know what functions callbacks trace */
107struct ftrace_ops_hash {
108 struct ftrace_hash *notrace_hash;
109 struct ftrace_hash *filter_hash;
110 struct mutex regex_lock;
111};
112#endif
113
105/* 114/*
106 * Note, ftrace_ops can be referenced outside of RCU protection. 115 * Note, ftrace_ops can be referenced outside of RCU protection.
107 * (Although, for perf, the control ops prevent that). If ftrace_ops is 116 * (Although, for perf, the control ops prevent that). If ftrace_ops is
@@ -121,10 +130,9 @@ struct ftrace_ops {
121 int __percpu *disabled; 130 int __percpu *disabled;
122#ifdef CONFIG_DYNAMIC_FTRACE 131#ifdef CONFIG_DYNAMIC_FTRACE
123 int nr_trampolines; 132 int nr_trampolines;
124 struct ftrace_hash *notrace_hash; 133 struct ftrace_ops_hash local_hash;
125 struct ftrace_hash *filter_hash; 134 struct ftrace_ops_hash *func_hash;
126 struct ftrace_hash *tramp_hash; 135 struct ftrace_hash *tramp_hash;
127 struct mutex regex_lock;
128 unsigned long trampoline; 136 unsigned long trampoline;
129#endif 137#endif
130}; 138};
diff --git a/include/linux/gpio/consumer.h b/include/linux/gpio/consumer.h
index b7ce0c64c6f3..12f146fa6604 100644
--- a/include/linux/gpio/consumer.h
+++ b/include/linux/gpio/consumer.h
@@ -16,8 +16,6 @@ struct device;
16 */ 16 */
17struct gpio_desc; 17struct gpio_desc;
18 18
19#ifdef CONFIG_GPIOLIB
20
21#define GPIOD_FLAGS_BIT_DIR_SET BIT(0) 19#define GPIOD_FLAGS_BIT_DIR_SET BIT(0)
22#define GPIOD_FLAGS_BIT_DIR_OUT BIT(1) 20#define GPIOD_FLAGS_BIT_DIR_OUT BIT(1)
23#define GPIOD_FLAGS_BIT_DIR_VAL BIT(2) 21#define GPIOD_FLAGS_BIT_DIR_VAL BIT(2)
@@ -34,64 +32,38 @@ enum gpiod_flags {
34 GPIOD_FLAGS_BIT_DIR_VAL, 32 GPIOD_FLAGS_BIT_DIR_VAL,
35}; 33};
36 34
35#ifdef CONFIG_GPIOLIB
36
37/* Acquire and dispose GPIOs */ 37/* Acquire and dispose GPIOs */
38struct gpio_desc *__must_check __gpiod_get(struct device *dev, 38struct gpio_desc *__must_check __gpiod_get(struct device *dev,
39 const char *con_id, 39 const char *con_id,
40 enum gpiod_flags flags); 40 enum gpiod_flags flags);
41#define __gpiod_get(dev, con_id, flags, ...) __gpiod_get(dev, con_id, flags)
42#define gpiod_get(varargs...) __gpiod_get(varargs, 0)
43struct gpio_desc *__must_check __gpiod_get_index(struct device *dev, 41struct gpio_desc *__must_check __gpiod_get_index(struct device *dev,
44 const char *con_id, 42 const char *con_id,
45 unsigned int idx, 43 unsigned int idx,
46 enum gpiod_flags flags); 44 enum gpiod_flags flags);
47#define __gpiod_get_index(dev, con_id, index, flags, ...) \
48 __gpiod_get_index(dev, con_id, index, flags)
49#define gpiod_get_index(varargs...) __gpiod_get_index(varargs, 0)
50struct gpio_desc *__must_check __gpiod_get_optional(struct device *dev, 45struct gpio_desc *__must_check __gpiod_get_optional(struct device *dev,
51 const char *con_id, 46 const char *con_id,
52 enum gpiod_flags flags); 47 enum gpiod_flags flags);
53#define __gpiod_get_optional(dev, con_id, flags, ...) \
54 __gpiod_get_optional(dev, con_id, flags)
55#define gpiod_get_optional(varargs...) __gpiod_get_optional(varargs, 0)
56struct gpio_desc *__must_check __gpiod_get_index_optional(struct device *dev, 48struct gpio_desc *__must_check __gpiod_get_index_optional(struct device *dev,
57 const char *con_id, 49 const char *con_id,
58 unsigned int index, 50 unsigned int index,
59 enum gpiod_flags flags); 51 enum gpiod_flags flags);
60#define __gpiod_get_index_optional(dev, con_id, index, flags, ...) \
61 __gpiod_get_index_optional(dev, con_id, index, flags)
62#define gpiod_get_index_optional(varargs...) \
63 __gpiod_get_index_optional(varargs, 0)
64
65void gpiod_put(struct gpio_desc *desc); 52void gpiod_put(struct gpio_desc *desc);
66 53
67struct gpio_desc *__must_check __devm_gpiod_get(struct device *dev, 54struct gpio_desc *__must_check __devm_gpiod_get(struct device *dev,
68 const char *con_id, 55 const char *con_id,
69 enum gpiod_flags flags); 56 enum gpiod_flags flags);
70#define __devm_gpiod_get(dev, con_id, flags, ...) \
71 __devm_gpiod_get(dev, con_id, flags)
72#define devm_gpiod_get(varargs...) __devm_gpiod_get(varargs, 0)
73struct gpio_desc *__must_check __devm_gpiod_get_index(struct device *dev, 57struct gpio_desc *__must_check __devm_gpiod_get_index(struct device *dev,
74 const char *con_id, 58 const char *con_id,
75 unsigned int idx, 59 unsigned int idx,
76 enum gpiod_flags flags); 60 enum gpiod_flags flags);
77#define __devm_gpiod_get_index(dev, con_id, index, flags, ...) \
78 __devm_gpiod_get_index(dev, con_id, index, flags)
79#define devm_gpiod_get_index(varargs...) __devm_gpiod_get_index(varargs, 0)
80struct gpio_desc *__must_check __devm_gpiod_get_optional(struct device *dev, 61struct gpio_desc *__must_check __devm_gpiod_get_optional(struct device *dev,
81 const char *con_id, 62 const char *con_id,
82 enum gpiod_flags flags); 63 enum gpiod_flags flags);
83#define __devm_gpiod_get_optional(dev, con_id, flags, ...) \
84 __devm_gpiod_get_optional(dev, con_id, flags)
85#define devm_gpiod_get_optional(varargs...) \
86 __devm_gpiod_get_optional(varargs, 0)
87struct gpio_desc *__must_check 64struct gpio_desc *__must_check
88__devm_gpiod_get_index_optional(struct device *dev, const char *con_id, 65__devm_gpiod_get_index_optional(struct device *dev, const char *con_id,
89 unsigned int index, enum gpiod_flags flags); 66 unsigned int index, enum gpiod_flags flags);
90#define __devm_gpiod_get_index_optional(dev, con_id, index, flags, ...) \
91 __devm_gpiod_get_index_optional(dev, con_id, index, flags)
92#define devm_gpiod_get_index_optional(varargs...) \
93 __devm_gpiod_get_index_optional(varargs, 0)
94
95void devm_gpiod_put(struct device *dev, struct gpio_desc *desc); 67void devm_gpiod_put(struct device *dev, struct gpio_desc *desc);
96 68
97int gpiod_get_direction(const struct gpio_desc *desc); 69int gpiod_get_direction(const struct gpio_desc *desc);
@@ -124,27 +96,31 @@ int desc_to_gpio(const struct gpio_desc *desc);
124 96
125#else /* CONFIG_GPIOLIB */ 97#else /* CONFIG_GPIOLIB */
126 98
127static inline struct gpio_desc *__must_check gpiod_get(struct device *dev, 99static inline struct gpio_desc *__must_check __gpiod_get(struct device *dev,
128 const char *con_id) 100 const char *con_id,
101 enum gpiod_flags flags)
129{ 102{
130 return ERR_PTR(-ENOSYS); 103 return ERR_PTR(-ENOSYS);
131} 104}
132static inline struct gpio_desc *__must_check gpiod_get_index(struct device *dev, 105static inline struct gpio_desc *__must_check
133 const char *con_id, 106__gpiod_get_index(struct device *dev,
134 unsigned int idx) 107 const char *con_id,
108 unsigned int idx,
109 enum gpiod_flags flags)
135{ 110{
136 return ERR_PTR(-ENOSYS); 111 return ERR_PTR(-ENOSYS);
137} 112}
138 113
139static inline struct gpio_desc *__must_check 114static inline struct gpio_desc *__must_check
140gpiod_get_optional(struct device *dev, const char *con_id) 115__gpiod_get_optional(struct device *dev, const char *con_id,
116 enum gpiod_flags flags)
141{ 117{
142 return ERR_PTR(-ENOSYS); 118 return ERR_PTR(-ENOSYS);
143} 119}
144 120
145static inline struct gpio_desc *__must_check 121static inline struct gpio_desc *__must_check
146gpiod_get_index_optional(struct device *dev, const char *con_id, 122__gpiod_get_index_optional(struct device *dev, const char *con_id,
147 unsigned int index) 123 unsigned int index, enum gpiod_flags flags)
148{ 124{
149 return ERR_PTR(-ENOSYS); 125 return ERR_PTR(-ENOSYS);
150} 126}
@@ -157,28 +133,33 @@ static inline void gpiod_put(struct gpio_desc *desc)
157 WARN_ON(1); 133 WARN_ON(1);
158} 134}
159 135
160static inline struct gpio_desc *__must_check devm_gpiod_get(struct device *dev, 136static inline struct gpio_desc *__must_check
161 const char *con_id) 137__devm_gpiod_get(struct device *dev,
138 const char *con_id,
139 enum gpiod_flags flags)
162{ 140{
163 return ERR_PTR(-ENOSYS); 141 return ERR_PTR(-ENOSYS);
164} 142}
165static inline 143static inline
166struct gpio_desc *__must_check devm_gpiod_get_index(struct device *dev, 144struct gpio_desc *__must_check
167 const char *con_id, 145__devm_gpiod_get_index(struct device *dev,
168 unsigned int idx) 146 const char *con_id,
147 unsigned int idx,
148 enum gpiod_flags flags)
169{ 149{
170 return ERR_PTR(-ENOSYS); 150 return ERR_PTR(-ENOSYS);
171} 151}
172 152
173static inline struct gpio_desc *__must_check 153static inline struct gpio_desc *__must_check
174devm_gpiod_get_optional(struct device *dev, const char *con_id) 154__devm_gpiod_get_optional(struct device *dev, const char *con_id,
155 enum gpiod_flags flags)
175{ 156{
176 return ERR_PTR(-ENOSYS); 157 return ERR_PTR(-ENOSYS);
177} 158}
178 159
179static inline struct gpio_desc *__must_check 160static inline struct gpio_desc *__must_check
180devm_gpiod_get_index_optional(struct device *dev, const char *con_id, 161__devm_gpiod_get_index_optional(struct device *dev, const char *con_id,
181 unsigned int index) 162 unsigned int index, enum gpiod_flags flags)
182{ 163{
183 return ERR_PTR(-ENOSYS); 164 return ERR_PTR(-ENOSYS);
184} 165}
@@ -303,9 +284,43 @@ static inline int desc_to_gpio(const struct gpio_desc *desc)
303 return -EINVAL; 284 return -EINVAL;
304} 285}
305 286
306
307#endif /* CONFIG_GPIOLIB */ 287#endif /* CONFIG_GPIOLIB */
308 288
289/*
290 * Vararg-hacks! This is done to transition the kernel to always pass
291 * the options flags argument to the below functions. During a transition
292 * phase these vararg macros make both old-and-newstyle code compile,
293 * but when all calls to the elder API are removed, these should go away
294 * and the __gpiod_get() etc functions above be renamed just gpiod_get()
295 * etc.
296 */
297#define __gpiod_get(dev, con_id, flags, ...) __gpiod_get(dev, con_id, flags)
298#define gpiod_get(varargs...) __gpiod_get(varargs, 0)
299#define __gpiod_get_index(dev, con_id, index, flags, ...) \
300 __gpiod_get_index(dev, con_id, index, flags)
301#define gpiod_get_index(varargs...) __gpiod_get_index(varargs, 0)
302#define __gpiod_get_optional(dev, con_id, flags, ...) \
303 __gpiod_get_optional(dev, con_id, flags)
304#define gpiod_get_optional(varargs...) __gpiod_get_optional(varargs, 0)
305#define __gpiod_get_index_optional(dev, con_id, index, flags, ...) \
306 __gpiod_get_index_optional(dev, con_id, index, flags)
307#define gpiod_get_index_optional(varargs...) \
308 __gpiod_get_index_optional(varargs, 0)
309#define __devm_gpiod_get(dev, con_id, flags, ...) \
310 __devm_gpiod_get(dev, con_id, flags)
311#define devm_gpiod_get(varargs...) __devm_gpiod_get(varargs, 0)
312#define __devm_gpiod_get_index(dev, con_id, index, flags, ...) \
313 __devm_gpiod_get_index(dev, con_id, index, flags)
314#define devm_gpiod_get_index(varargs...) __devm_gpiod_get_index(varargs, 0)
315#define __devm_gpiod_get_optional(dev, con_id, flags, ...) \
316 __devm_gpiod_get_optional(dev, con_id, flags)
317#define devm_gpiod_get_optional(varargs...) \
318 __devm_gpiod_get_optional(varargs, 0)
319#define __devm_gpiod_get_index_optional(dev, con_id, index, flags, ...) \
320 __devm_gpiod_get_index_optional(dev, con_id, index, flags)
321#define devm_gpiod_get_index_optional(varargs...) \
322 __devm_gpiod_get_index_optional(varargs, 0)
323
309#if IS_ENABLED(CONFIG_GPIOLIB) && IS_ENABLED(CONFIG_GPIO_SYSFS) 324#if IS_ENABLED(CONFIG_GPIOLIB) && IS_ENABLED(CONFIG_GPIO_SYSFS)
310 325
311int gpiod_export(struct gpio_desc *desc, bool direction_may_change); 326int gpiod_export(struct gpio_desc *desc, bool direction_may_change);
diff --git a/include/linux/jbd2.h b/include/linux/jbd2.h
index d5b50a19463c..0dae71e9971c 100644
--- a/include/linux/jbd2.h
+++ b/include/linux/jbd2.h
@@ -159,7 +159,11 @@ typedef struct journal_header_s
159 * journal_block_tag (in the descriptor). The other h_chksum* fields are 159 * journal_block_tag (in the descriptor). The other h_chksum* fields are
160 * not used. 160 * not used.
161 * 161 *
162 * Checksum v1 and v2 are mutually exclusive features. 162 * If FEATURE_INCOMPAT_CSUM_V3 is set, the descriptor block uses
163 * journal_block_tag3_t to store a full 32-bit checksum. Everything else
164 * is the same as v2.
165 *
166 * Checksum v1, v2, and v3 are mutually exclusive features.
163 */ 167 */
164struct commit_header { 168struct commit_header {
165 __be32 h_magic; 169 __be32 h_magic;
@@ -179,6 +183,14 @@ struct commit_header {
179 * raw struct shouldn't be used for pointer math or sizeof() - use 183 * raw struct shouldn't be used for pointer math or sizeof() - use
180 * journal_tag_bytes(journal) instead to compute this. 184 * journal_tag_bytes(journal) instead to compute this.
181 */ 185 */
186typedef struct journal_block_tag3_s
187{
188 __be32 t_blocknr; /* The on-disk block number */
189 __be32 t_flags; /* See below */
190 __be32 t_blocknr_high; /* most-significant high 32bits. */
191 __be32 t_checksum; /* crc32c(uuid+seq+block) */
192} journal_block_tag3_t;
193
182typedef struct journal_block_tag_s 194typedef struct journal_block_tag_s
183{ 195{
184 __be32 t_blocknr; /* The on-disk block number */ 196 __be32 t_blocknr; /* The on-disk block number */
@@ -187,9 +199,6 @@ typedef struct journal_block_tag_s
187 __be32 t_blocknr_high; /* most-significant high 32bits. */ 199 __be32 t_blocknr_high; /* most-significant high 32bits. */
188} journal_block_tag_t; 200} journal_block_tag_t;
189 201
190#define JBD2_TAG_SIZE32 (offsetof(journal_block_tag_t, t_blocknr_high))
191#define JBD2_TAG_SIZE64 (sizeof(journal_block_tag_t))
192
193/* Tail of descriptor block, for checksumming */ 202/* Tail of descriptor block, for checksumming */
194struct jbd2_journal_block_tail { 203struct jbd2_journal_block_tail {
195 __be32 t_checksum; /* crc32c(uuid+descr_block) */ 204 __be32 t_checksum; /* crc32c(uuid+descr_block) */
@@ -284,6 +293,7 @@ typedef struct journal_superblock_s
284#define JBD2_FEATURE_INCOMPAT_64BIT 0x00000002 293#define JBD2_FEATURE_INCOMPAT_64BIT 0x00000002
285#define JBD2_FEATURE_INCOMPAT_ASYNC_COMMIT 0x00000004 294#define JBD2_FEATURE_INCOMPAT_ASYNC_COMMIT 0x00000004
286#define JBD2_FEATURE_INCOMPAT_CSUM_V2 0x00000008 295#define JBD2_FEATURE_INCOMPAT_CSUM_V2 0x00000008
296#define JBD2_FEATURE_INCOMPAT_CSUM_V3 0x00000010
287 297
288/* Features known to this kernel version: */ 298/* Features known to this kernel version: */
289#define JBD2_KNOWN_COMPAT_FEATURES JBD2_FEATURE_COMPAT_CHECKSUM 299#define JBD2_KNOWN_COMPAT_FEATURES JBD2_FEATURE_COMPAT_CHECKSUM
@@ -291,7 +301,8 @@ typedef struct journal_superblock_s
291#define JBD2_KNOWN_INCOMPAT_FEATURES (JBD2_FEATURE_INCOMPAT_REVOKE | \ 301#define JBD2_KNOWN_INCOMPAT_FEATURES (JBD2_FEATURE_INCOMPAT_REVOKE | \
292 JBD2_FEATURE_INCOMPAT_64BIT | \ 302 JBD2_FEATURE_INCOMPAT_64BIT | \
293 JBD2_FEATURE_INCOMPAT_ASYNC_COMMIT | \ 303 JBD2_FEATURE_INCOMPAT_ASYNC_COMMIT | \
294 JBD2_FEATURE_INCOMPAT_CSUM_V2) 304 JBD2_FEATURE_INCOMPAT_CSUM_V2 | \
305 JBD2_FEATURE_INCOMPAT_CSUM_V3)
295 306
296#ifdef __KERNEL__ 307#ifdef __KERNEL__
297 308
@@ -1296,6 +1307,15 @@ static inline int tid_geq(tid_t x, tid_t y)
1296extern int jbd2_journal_blocks_per_page(struct inode *inode); 1307extern int jbd2_journal_blocks_per_page(struct inode *inode);
1297extern size_t journal_tag_bytes(journal_t *journal); 1308extern size_t journal_tag_bytes(journal_t *journal);
1298 1309
1310static inline int jbd2_journal_has_csum_v2or3(journal_t *journal)
1311{
1312 if (JBD2_HAS_INCOMPAT_FEATURE(journal, JBD2_FEATURE_INCOMPAT_CSUM_V2) ||
1313 JBD2_HAS_INCOMPAT_FEATURE(journal, JBD2_FEATURE_INCOMPAT_CSUM_V3))
1314 return 1;
1315
1316 return 0;
1317}
1318
1299/* 1319/*
1300 * We reserve t_outstanding_credits >> JBD2_CONTROL_BLOCKS_SHIFT for 1320 * We reserve t_outstanding_credits >> JBD2_CONTROL_BLOCKS_SHIFT for
1301 * transaction control blocks. 1321 * transaction control blocks.
diff --git a/include/linux/leds.h b/include/linux/leds.h
index 6a599dce7f9d..e43686472197 100644
--- a/include/linux/leds.h
+++ b/include/linux/leds.h
@@ -15,6 +15,7 @@
15#include <linux/list.h> 15#include <linux/list.h>
16#include <linux/spinlock.h> 16#include <linux/spinlock.h>
17#include <linux/rwsem.h> 17#include <linux/rwsem.h>
18#include <linux/timer.h>
18#include <linux/workqueue.h> 19#include <linux/workqueue.h>
19 20
20struct device; 21struct device;
@@ -68,7 +69,7 @@ struct led_classdev {
68 const char *default_trigger; /* Trigger to use */ 69 const char *default_trigger; /* Trigger to use */
69 70
70 unsigned long blink_delay_on, blink_delay_off; 71 unsigned long blink_delay_on, blink_delay_off;
71 struct delayed_work blink_work; 72 struct timer_list blink_timer;
72 int blink_brightness; 73 int blink_brightness;
73 74
74 struct work_struct set_brightness_work; 75 struct work_struct set_brightness_work;
diff --git a/include/linux/mlx4/device.h b/include/linux/mlx4/device.h
index 783dd099abd1..1befd8df9cfc 100644
--- a/include/linux/mlx4/device.h
+++ b/include/linux/mlx4/device.h
@@ -1197,6 +1197,9 @@ int mlx4_map_sw_to_hw_steering_id(struct mlx4_dev *dev,
1197 enum mlx4_net_trans_rule_id id); 1197 enum mlx4_net_trans_rule_id id);
1198int mlx4_hw_rule_sz(struct mlx4_dev *dev, enum mlx4_net_trans_rule_id id); 1198int mlx4_hw_rule_sz(struct mlx4_dev *dev, enum mlx4_net_trans_rule_id id);
1199 1199
1200int mlx4_tunnel_steer_add(struct mlx4_dev *dev, unsigned char *addr,
1201 int port, int qpn, u16 prio, u64 *reg_id);
1202
1200void mlx4_sync_pkey_table(struct mlx4_dev *dev, int slave, int port, 1203void mlx4_sync_pkey_table(struct mlx4_dev *dev, int slave, int port,
1201 int i, int val); 1204 int i, int val);
1202 1205
diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h
index 3083c53e0270..c300db3ae285 100644
--- a/include/linux/mtd/nand.h
+++ b/include/linux/mtd/nand.h
@@ -949,7 +949,7 @@ static inline int jedec_feature(struct nand_chip *chip)
949 : 0; 949 : 0;
950} 950}
951 951
952/** 952/*
953 * struct nand_sdr_timings - SDR NAND chip timings 953 * struct nand_sdr_timings - SDR NAND chip timings
954 * 954 *
955 * This struct defines the timing requirements of a SDR NAND chip. 955 * This struct defines the timing requirements of a SDR NAND chip.
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 5be20a7bbb0d..ba72f6baae1a 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -3272,7 +3272,7 @@ static inline int __dev_uc_sync(struct net_device *dev,
3272} 3272}
3273 3273
3274/** 3274/**
3275 * __dev_uc_unsync - Remove synchonized addresses from device 3275 * __dev_uc_unsync - Remove synchronized addresses from device
3276 * @dev: device to sync 3276 * @dev: device to sync
3277 * @unsync: function to call if address should be removed 3277 * @unsync: function to call if address should be removed
3278 * 3278 *
@@ -3316,7 +3316,7 @@ static inline int __dev_mc_sync(struct net_device *dev,
3316} 3316}
3317 3317
3318/** 3318/**
3319 * __dev_mc_unsync - Remove synchonized addresses from device 3319 * __dev_mc_unsync - Remove synchronized addresses from device
3320 * @dev: device to sync 3320 * @dev: device to sync
3321 * @unsync: function to call if address should be removed 3321 * @unsync: function to call if address should be removed
3322 * 3322 *
diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h
index 2077489f9887..2517ece98820 100644
--- a/include/linux/netfilter.h
+++ b/include/linux/netfilter.h
@@ -9,6 +9,7 @@
9#include <linux/in6.h> 9#include <linux/in6.h>
10#include <linux/wait.h> 10#include <linux/wait.h>
11#include <linux/list.h> 11#include <linux/list.h>
12#include <linux/static_key.h>
12#include <uapi/linux/netfilter.h> 13#include <uapi/linux/netfilter.h>
13#ifdef CONFIG_NETFILTER 14#ifdef CONFIG_NETFILTER
14static inline int NF_DROP_GETERR(int verdict) 15static inline int NF_DROP_GETERR(int verdict)
@@ -99,9 +100,9 @@ void nf_unregister_sockopt(struct nf_sockopt_ops *reg);
99 100
100extern struct list_head nf_hooks[NFPROTO_NUMPROTO][NF_MAX_HOOKS]; 101extern struct list_head nf_hooks[NFPROTO_NUMPROTO][NF_MAX_HOOKS];
101 102
102#if defined(CONFIG_JUMP_LABEL) 103#ifdef HAVE_JUMP_LABEL
103#include <linux/static_key.h>
104extern struct static_key nf_hooks_needed[NFPROTO_NUMPROTO][NF_MAX_HOOKS]; 104extern struct static_key nf_hooks_needed[NFPROTO_NUMPROTO][NF_MAX_HOOKS];
105
105static inline bool nf_hooks_active(u_int8_t pf, unsigned int hook) 106static inline bool nf_hooks_active(u_int8_t pf, unsigned int hook)
106{ 107{
107 if (__builtin_constant_p(pf) && 108 if (__builtin_constant_p(pf) &&
diff --git a/include/linux/nfs_page.h b/include/linux/nfs_page.h
index 6ad2bbcad405..6c3e06ee2fb7 100644
--- a/include/linux/nfs_page.h
+++ b/include/linux/nfs_page.h
@@ -123,6 +123,7 @@ extern int nfs_wait_on_request(struct nfs_page *);
123extern void nfs_unlock_request(struct nfs_page *req); 123extern void nfs_unlock_request(struct nfs_page *req);
124extern void nfs_unlock_and_release_request(struct nfs_page *); 124extern void nfs_unlock_and_release_request(struct nfs_page *);
125extern int nfs_page_group_lock(struct nfs_page *, bool); 125extern int nfs_page_group_lock(struct nfs_page *, bool);
126extern void nfs_page_group_lock_wait(struct nfs_page *);
126extern void nfs_page_group_unlock(struct nfs_page *); 127extern void nfs_page_group_unlock(struct nfs_page *);
127extern bool nfs_page_group_sync_on_bit(struct nfs_page *, unsigned int); 128extern bool nfs_page_group_sync_on_bit(struct nfs_page *, unsigned int);
128 129
diff --git a/include/linux/platform_data/mtd-nand-omap2.h b/include/linux/platform_data/mtd-nand-omap2.h
index 660c029d694f..16ec262dfcc8 100644
--- a/include/linux/platform_data/mtd-nand-omap2.h
+++ b/include/linux/platform_data/mtd-nand-omap2.h
@@ -21,8 +21,17 @@ enum nand_io {
21}; 21};
22 22
23enum omap_ecc { 23enum omap_ecc {
24 /* 1-bit ECC calculation by GPMC, Error detection by Software */ 24 /*
25 OMAP_ECC_HAM1_CODE_HW = 0, 25 * 1-bit ECC: calculation and correction by SW
26 * ECC stored at end of spare area
27 */
28 OMAP_ECC_HAM1_CODE_SW = 0,
29
30 /*
31 * 1-bit ECC: calculation by GPMC, Error detection by Software
32 * ECC layout compatible with ROM code layout
33 */
34 OMAP_ECC_HAM1_CODE_HW,
26 /* 4-bit ECC calculation by GPMC, Error detection by Software */ 35 /* 4-bit ECC calculation by GPMC, Error detection by Software */
27 OMAP_ECC_BCH4_CODE_HW_DETECTION_SW, 36 OMAP_ECC_BCH4_CODE_HW_DETECTION_SW,
28 /* 4-bit ECC calculation by GPMC, Error detection by ELM */ 37 /* 4-bit ECC calculation by GPMC, Error detection by ELM */
diff --git a/include/linux/pm_domain.h b/include/linux/pm_domain.h
index 7c1d252b20c0..ebc4c76ffb73 100644
--- a/include/linux/pm_domain.h
+++ b/include/linux/pm_domain.h
@@ -60,7 +60,7 @@ struct generic_pm_domain {
60 struct mutex lock; 60 struct mutex lock;
61 struct dev_power_governor *gov; 61 struct dev_power_governor *gov;
62 struct work_struct power_off_work; 62 struct work_struct power_off_work;
63 char *name; 63 const char *name;
64 unsigned int in_progress; /* Number of devices being suspended now */ 64 unsigned int in_progress; /* Number of devices being suspended now */
65 atomic_t sd_count; /* Number of subdomains with power "on" */ 65 atomic_t sd_count; /* Number of subdomains with power "on" */
66 enum gpd_status status; /* Current state of the domain */ 66 enum gpd_status status; /* Current state of the domain */
diff --git a/include/linux/regulator/driver.h b/include/linux/regulator/driver.h
index bbe03a1924c0..4efa1ed8a2b0 100644
--- a/include/linux/regulator/driver.h
+++ b/include/linux/regulator/driver.h
@@ -218,6 +218,8 @@ enum regulator_type {
218 * @linear_min_sel: Minimal selector for starting linear mapping 218 * @linear_min_sel: Minimal selector for starting linear mapping
219 * @fixed_uV: Fixed voltage of rails. 219 * @fixed_uV: Fixed voltage of rails.
220 * @ramp_delay: Time to settle down after voltage change (unit: uV/us) 220 * @ramp_delay: Time to settle down after voltage change (unit: uV/us)
221 * @linear_ranges: A constant table of possible voltage ranges.
222 * @n_linear_ranges: Number of entries in the @linear_ranges table.
221 * @volt_table: Voltage mapping table (if table based mapping) 223 * @volt_table: Voltage mapping table (if table based mapping)
222 * 224 *
223 * @vsel_reg: Register for selector when using regulator_regmap_X_voltage_ 225 * @vsel_reg: Register for selector when using regulator_regmap_X_voltage_
diff --git a/include/linux/regulator/machine.h b/include/linux/regulator/machine.h
index 730e638c5589..0b08d05d470b 100644
--- a/include/linux/regulator/machine.h
+++ b/include/linux/regulator/machine.h
@@ -85,6 +85,7 @@ struct regulator_state {
85 * bootloader then it will be enabled when the constraints are 85 * bootloader then it will be enabled when the constraints are
86 * applied. 86 * applied.
87 * @apply_uV: Apply the voltage constraint when initialising. 87 * @apply_uV: Apply the voltage constraint when initialising.
88 * @ramp_disable: Disable ramp delay when initialising or when setting voltage.
88 * 89 *
89 * @input_uV: Input voltage for regulator when supplied by another regulator. 90 * @input_uV: Input voltage for regulator when supplied by another regulator.
90 * 91 *
diff --git a/include/linux/seqno-fence.h b/include/linux/seqno-fence.h
index 3d6003de4b0d..a1ba6a5ccdd6 100644
--- a/include/linux/seqno-fence.h
+++ b/include/linux/seqno-fence.h
@@ -62,6 +62,7 @@ to_seqno_fence(struct fence *fence)
62 * @context: the execution context this fence is a part of 62 * @context: the execution context this fence is a part of
63 * @seqno_ofs: the offset within @sync_buf 63 * @seqno_ofs: the offset within @sync_buf
64 * @seqno: the sequence # to signal on 64 * @seqno: the sequence # to signal on
65 * @cond: fence wait condition
65 * @ops: the fence_ops for operations on this seqno fence 66 * @ops: the fence_ops for operations on this seqno fence
66 * 67 *
67 * This function initializes a struct seqno_fence with passed parameters, 68 * This function initializes a struct seqno_fence with passed parameters,
diff --git a/include/linux/spi/spi.h b/include/linux/spi/spi.h
index e713543336f1..46d188a9947c 100644
--- a/include/linux/spi/spi.h
+++ b/include/linux/spi/spi.h
@@ -253,6 +253,7 @@ static inline void spi_unregister_driver(struct spi_driver *sdrv)
253 * the device whose settings are being modified. 253 * the device whose settings are being modified.
254 * @transfer: adds a message to the controller's transfer queue. 254 * @transfer: adds a message to the controller's transfer queue.
255 * @cleanup: frees controller-specific state 255 * @cleanup: frees controller-specific state
256 * @can_dma: determine whether this master supports DMA
256 * @queued: whether this master is providing an internal message queue 257 * @queued: whether this master is providing an internal message queue
257 * @kworker: thread struct for message pump 258 * @kworker: thread struct for message pump
258 * @kworker_task: pointer to task for message pump kworker thread 259 * @kworker_task: pointer to task for message pump kworker thread
@@ -262,6 +263,7 @@ static inline void spi_unregister_driver(struct spi_driver *sdrv)
262 * @cur_msg: the currently in-flight message 263 * @cur_msg: the currently in-flight message
263 * @cur_msg_prepared: spi_prepare_message was called for the currently 264 * @cur_msg_prepared: spi_prepare_message was called for the currently
264 * in-flight message 265 * in-flight message
266 * @cur_msg_mapped: message has been mapped for DMA
265 * @xfer_completion: used by core transfer_one_message() 267 * @xfer_completion: used by core transfer_one_message()
266 * @busy: message pump is busy 268 * @busy: message pump is busy
267 * @running: message pump is running 269 * @running: message pump is running
@@ -299,6 +301,10 @@ static inline void spi_unregister_driver(struct spi_driver *sdrv)
299 * @cs_gpios: Array of GPIOs to use as chip select lines; one per CS 301 * @cs_gpios: Array of GPIOs to use as chip select lines; one per CS
300 * number. Any individual value may be -ENOENT for CS lines that 302 * number. Any individual value may be -ENOENT for CS lines that
301 * are not GPIOs (driven by the SPI controller itself). 303 * are not GPIOs (driven by the SPI controller itself).
304 * @dma_tx: DMA transmit channel
305 * @dma_rx: DMA receive channel
306 * @dummy_rx: dummy receive buffer for full-duplex devices
307 * @dummy_tx: dummy transmit buffer for full-duplex devices
302 * 308 *
303 * Each SPI master controller can communicate with one or more @spi_device 309 * Each SPI master controller can communicate with one or more @spi_device
304 * children. These make a small bus, sharing MOSI, MISO and SCK signals 310 * children. These make a small bus, sharing MOSI, MISO and SCK signals
@@ -632,6 +638,7 @@ struct spi_transfer {
632 * addresses for each transfer buffer 638 * addresses for each transfer buffer
633 * @complete: called to report transaction completions 639 * @complete: called to report transaction completions
634 * @context: the argument to complete() when it's called 640 * @context: the argument to complete() when it's called
641 * @frame_length: the total number of bytes in the message
635 * @actual_length: the total number of bytes that were transferred in all 642 * @actual_length: the total number of bytes that were transferred in all
636 * successful segments 643 * successful segments
637 * @status: zero for success, else negative errno 644 * @status: zero for success, else negative errno
diff --git a/include/linux/tick.h b/include/linux/tick.h
index 059052306831..9a82c7dc3fdd 100644
--- a/include/linux/tick.h
+++ b/include/linux/tick.h
@@ -183,13 +183,8 @@ static inline bool tick_nohz_full_cpu(int cpu)
183 183
184extern void tick_nohz_init(void); 184extern void tick_nohz_init(void);
185extern void __tick_nohz_full_check(void); 185extern void __tick_nohz_full_check(void);
186extern void tick_nohz_full_kick(void);
186extern void tick_nohz_full_kick_cpu(int cpu); 187extern void tick_nohz_full_kick_cpu(int cpu);
187
188static inline void tick_nohz_full_kick(void)
189{
190 tick_nohz_full_kick_cpu(smp_processor_id());
191}
192
193extern void tick_nohz_full_kick_all(void); 188extern void tick_nohz_full_kick_all(void);
194extern void __tick_nohz_task_switch(struct task_struct *tsk); 189extern void __tick_nohz_task_switch(struct task_struct *tsk);
195#else 190#else
diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h
index b5d5af3aa469..6f884e6c731e 100644
--- a/include/net/bluetooth/hci_core.h
+++ b/include/net/bluetooth/hci_core.h
@@ -464,6 +464,8 @@ struct hci_conn_params {
464 HCI_AUTO_CONN_ALWAYS, 464 HCI_AUTO_CONN_ALWAYS,
465 HCI_AUTO_CONN_LINK_LOSS, 465 HCI_AUTO_CONN_LINK_LOSS,
466 } auto_connect; 466 } auto_connect;
467
468 struct hci_conn *conn;
467}; 469};
468 470
469extern struct list_head hci_dev_list; 471extern struct list_head hci_dev_list;
diff --git a/include/net/netns/ieee802154_6lowpan.h b/include/net/netns/ieee802154_6lowpan.h
index e2070960bac0..8170f8d7052b 100644
--- a/include/net/netns/ieee802154_6lowpan.h
+++ b/include/net/netns/ieee802154_6lowpan.h
@@ -16,7 +16,6 @@ struct netns_sysctl_lowpan {
16struct netns_ieee802154_lowpan { 16struct netns_ieee802154_lowpan {
17 struct netns_sysctl_lowpan sysctl; 17 struct netns_sysctl_lowpan sysctl;
18 struct netns_frags frags; 18 struct netns_frags frags;
19 int max_dsize;
20}; 19};
21 20
22#endif 21#endif
diff --git a/include/net/regulatory.h b/include/net/regulatory.h
index 259992444e80..dad7ab20a8cb 100644
--- a/include/net/regulatory.h
+++ b/include/net/regulatory.h
@@ -167,7 +167,7 @@ struct ieee80211_reg_rule {
167struct ieee80211_regdomain { 167struct ieee80211_regdomain {
168 struct rcu_head rcu_head; 168 struct rcu_head rcu_head;
169 u32 n_reg_rules; 169 u32 n_reg_rules;
170 char alpha2[2]; 170 char alpha2[3];
171 enum nl80211_dfs_regions dfs_region; 171 enum nl80211_dfs_regions dfs_region;
172 struct ieee80211_reg_rule reg_rules[]; 172 struct ieee80211_reg_rule reg_rules[];
173}; 173};
diff --git a/include/net/sctp/sctp.h b/include/net/sctp/sctp.h
index f6e7397e799d..9fbd856e6713 100644
--- a/include/net/sctp/sctp.h
+++ b/include/net/sctp/sctp.h
@@ -320,6 +320,19 @@ static inline sctp_assoc_t sctp_assoc2id(const struct sctp_association *asoc)
320 return asoc ? asoc->assoc_id : 0; 320 return asoc ? asoc->assoc_id : 0;
321} 321}
322 322
323static inline enum sctp_sstat_state
324sctp_assoc_to_state(const struct sctp_association *asoc)
325{
326 /* SCTP's uapi always had SCTP_EMPTY(=0) as a dummy state, but we
327 * got rid of it in kernel space. Therefore SCTP_CLOSED et al
328 * start at =1 in user space, but actually as =0 in kernel space.
329 * Now that we can not break user space and SCTP_EMPTY is exposed
330 * there, we need to fix it up with an ugly offset not to break
331 * applications. :(
332 */
333 return asoc->state + 1;
334}
335
323/* Look up the association by its id. */ 336/* Look up the association by its id. */
324struct sctp_association *sctp_id2assoc(struct sock *sk, sctp_assoc_t id); 337struct sctp_association *sctp_id2assoc(struct sock *sk, sctp_assoc_t id);
325 338
diff --git a/include/net/sock.h b/include/net/sock.h
index ad23e80cb8d3..049ab1b732a6 100644
--- a/include/net/sock.h
+++ b/include/net/sock.h
@@ -2171,9 +2171,7 @@ sock_recv_timestamp(struct msghdr *msg, struct sock *sk, struct sk_buff *skb)
2171 */ 2171 */
2172 if (sock_flag(sk, SOCK_RCVTSTAMP) || 2172 if (sock_flag(sk, SOCK_RCVTSTAMP) ||
2173 (sk->sk_tsflags & SOF_TIMESTAMPING_RX_SOFTWARE) || 2173 (sk->sk_tsflags & SOF_TIMESTAMPING_RX_SOFTWARE) ||
2174 (kt.tv64 && 2174 (kt.tv64 && sk->sk_tsflags & SOF_TIMESTAMPING_SOFTWARE) ||
2175 (sk->sk_tsflags & SOF_TIMESTAMPING_SOFTWARE ||
2176 skb_shinfo(skb)->tx_flags & SKBTX_ANY_SW_TSTAMP)) ||
2177 (hwtstamps->hwtstamp.tv64 && 2175 (hwtstamps->hwtstamp.tv64 &&
2178 (sk->sk_tsflags & SOF_TIMESTAMPING_RAW_HARDWARE))) 2176 (sk->sk_tsflags & SOF_TIMESTAMPING_RAW_HARDWARE)))
2179 __sock_recv_timestamp(msg, sk, skb); 2177 __sock_recv_timestamp(msg, sk, skb);
diff --git a/include/net/wimax.h b/include/net/wimax.h
index e52ef5357e08..c52b68577cb0 100644
--- a/include/net/wimax.h
+++ b/include/net/wimax.h
@@ -290,7 +290,7 @@ struct wimax_dev;
290 * This operation has to be synchronous, and return only when the 290 * This operation has to be synchronous, and return only when the
291 * reset is complete. In case of having had to resort to bus/cold 291 * reset is complete. In case of having had to resort to bus/cold
292 * reset implying a device disconnection, the call is allowed to 292 * reset implying a device disconnection, the call is allowed to
293 * return inmediately. 293 * return immediately.
294 * NOTE: wimax_dev->mutex is NOT locked when this op is being 294 * NOTE: wimax_dev->mutex is NOT locked when this op is being
295 * called; however, wimax_dev->mutex_reset IS locked to ensure 295 * called; however, wimax_dev->mutex_reset IS locked to ensure
296 * serialization of calls to wimax_reset(). 296 * serialization of calls to wimax_reset().
diff --git a/include/sound/soc.h b/include/sound/soc.h
index be6ecae247b0..c83a334dd00f 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -277,7 +277,7 @@
277 .access = SNDRV_CTL_ELEM_ACCESS_TLV_READWRITE | \ 277 .access = SNDRV_CTL_ELEM_ACCESS_TLV_READWRITE | \
278 SNDRV_CTL_ELEM_ACCESS_TLV_CALLBACK, \ 278 SNDRV_CTL_ELEM_ACCESS_TLV_CALLBACK, \
279 .tlv.c = (snd_soc_bytes_tlv_callback), \ 279 .tlv.c = (snd_soc_bytes_tlv_callback), \
280 .info = snd_soc_info_bytes_ext, \ 280 .info = snd_soc_bytes_info_ext, \
281 .private_value = (unsigned long)&(struct soc_bytes_ext) \ 281 .private_value = (unsigned long)&(struct soc_bytes_ext) \
282 {.max = xcount, .get = xhandler_get, .put = xhandler_put, } } 282 {.max = xcount, .get = xhandler_get, .put = xhandler_put, } }
283#define SOC_SINGLE_XR_SX(xname, xregbase, xregcount, xnbits, \ 283#define SOC_SINGLE_XR_SX(xname, xregbase, xregcount, xnbits, \
diff --git a/include/trace/events/irq.h b/include/trace/events/irq.h
index 1c09820df585..3608bebd3d9c 100644
--- a/include/trace/events/irq.h
+++ b/include/trace/events/irq.h
@@ -107,7 +107,7 @@ DECLARE_EVENT_CLASS(softirq,
107 * @vec_nr: softirq vector number 107 * @vec_nr: softirq vector number
108 * 108 *
109 * When used in combination with the softirq_exit tracepoint 109 * When used in combination with the softirq_exit tracepoint
110 * we can determine the softirq handler runtine. 110 * we can determine the softirq handler routine.
111 */ 111 */
112DEFINE_EVENT(softirq, softirq_entry, 112DEFINE_EVENT(softirq, softirq_entry,
113 113
@@ -121,7 +121,7 @@ DEFINE_EVENT(softirq, softirq_entry,
121 * @vec_nr: softirq vector number 121 * @vec_nr: softirq vector number
122 * 122 *
123 * When used in combination with the softirq_entry tracepoint 123 * When used in combination with the softirq_entry tracepoint
124 * we can determine the softirq handler runtine. 124 * we can determine the softirq handler routine.
125 */ 125 */
126DEFINE_EVENT(softirq, softirq_exit, 126DEFINE_EVENT(softirq, softirq_exit,
127 127
diff --git a/include/uapi/drm/radeon_drm.h b/include/uapi/drm/radeon_drm.h
index 509b2d7a41b7..fea6099608ef 100644
--- a/include/uapi/drm/radeon_drm.h
+++ b/include/uapi/drm/radeon_drm.h
@@ -944,6 +944,7 @@ struct drm_radeon_cs_chunk {
944}; 944};
945 945
946/* drm_radeon_cs_reloc.flags */ 946/* drm_radeon_cs_reloc.flags */
947#define RADEON_RELOC_PRIO_MASK (0xf << 0)
947 948
948struct drm_radeon_cs_reloc { 949struct drm_radeon_cs_reloc {
949 uint32_t handle; 950 uint32_t handle;
diff --git a/include/uapi/linux/usbip.h b/include/uapi/linux/usbip.h
new file mode 100644
index 000000000000..fa5db30ede36
--- /dev/null
+++ b/include/uapi/linux/usbip.h
@@ -0,0 +1,26 @@
1/*
2 * usbip.h
3 *
4 * USBIP uapi defines and function prototypes etc.
5*/
6
7#ifndef _UAPI_LINUX_USBIP_H
8#define _UAPI_LINUX_USBIP_H
9
10/* usbip device status - exported in usbip device sysfs status */
11enum usbip_device_status {
12 /* sdev is available. */
13 SDEV_ST_AVAILABLE = 0x01,
14 /* sdev is now used. */
15 SDEV_ST_USED,
16 /* sdev is unusable because of a fatal error. */
17 SDEV_ST_ERROR,
18
19 /* vdev does not connect a remote device. */
20 VDEV_ST_NULL,
21 /* vdev is used, but the USB address is not assigned yet */
22 VDEV_ST_NOTASSIGNED,
23 VDEV_ST_USED,
24 VDEV_ST_ERROR
25};
26#endif /* _UAPI_LINUX_USBIP_H */
diff --git a/include/uapi/linux/xattr.h b/include/uapi/linux/xattr.h
index c38355c1f3c9..1590c49cae57 100644
--- a/include/uapi/linux/xattr.h
+++ b/include/uapi/linux/xattr.h
@@ -13,7 +13,7 @@
13#ifndef _UAPI_LINUX_XATTR_H 13#ifndef _UAPI_LINUX_XATTR_H
14#define _UAPI_LINUX_XATTR_H 14#define _UAPI_LINUX_XATTR_H
15 15
16#ifdef __UAPI_DEF_XATTR 16#if __UAPI_DEF_XATTR
17#define __USE_KERNEL_XATTR_DEFS 17#define __USE_KERNEL_XATTR_DEFS
18 18
19#define XATTR_CREATE 0x1 /* set value, fail if attr already exists */ 19#define XATTR_CREATE 0x1 /* set value, fail if attr already exists */