diff options
| author | Ingo Molnar <mingo@elte.hu> | 2008-06-16 05:25:56 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-06-16 05:25:56 -0400 |
| commit | c444debaaa22011b4a84e58e5333575b3f800a33 (patch) | |
| tree | 896a9589aa9e701896da7ea1ae6a24cb04495b8f /include/linux | |
| parent | 70ef6d595b6e51618a0cbe44b848d8c9db11a010 (diff) | |
| parent | 066519068ad2fbe98c7f45552b1f592903a9c8c8 (diff) | |
Merge branch 'linus' into timers/hpet
Diffstat (limited to 'include/linux')
41 files changed, 217 insertions, 99 deletions
diff --git a/include/linux/bitrev.h b/include/linux/bitrev.h index 05e540d6963a..7ffe03f4693d 100644 --- a/include/linux/bitrev.h +++ b/include/linux/bitrev.h | |||
| @@ -10,6 +10,7 @@ static inline u8 bitrev8(u8 byte) | |||
| 10 | return byte_rev_table[byte]; | 10 | return byte_rev_table[byte]; |
| 11 | } | 11 | } |
| 12 | 12 | ||
| 13 | extern u16 bitrev16(u16 in); | ||
| 13 | extern u32 bitrev32(u32 in); | 14 | extern u32 bitrev32(u32 in); |
| 14 | 15 | ||
| 15 | #endif /* _LINUX_BITREV_H */ | 16 | #endif /* _LINUX_BITREV_H */ |
diff --git a/include/linux/blktrace_api.h b/include/linux/blktrace_api.h index cfc3147e5cf9..e3ef903aae88 100644 --- a/include/linux/blktrace_api.h +++ b/include/linux/blktrace_api.h | |||
| @@ -55,6 +55,7 @@ enum blktrace_act { | |||
| 55 | enum blktrace_notify { | 55 | enum blktrace_notify { |
| 56 | __BLK_TN_PROCESS = 0, /* establish pid/name mapping */ | 56 | __BLK_TN_PROCESS = 0, /* establish pid/name mapping */ |
| 57 | __BLK_TN_TIMESTAMP, /* include system clock */ | 57 | __BLK_TN_TIMESTAMP, /* include system clock */ |
| 58 | __BLK_TN_MESSAGE, /* Character string message */ | ||
| 58 | }; | 59 | }; |
| 59 | 60 | ||
| 60 | 61 | ||
| @@ -79,6 +80,7 @@ enum blktrace_notify { | |||
| 79 | 80 | ||
| 80 | #define BLK_TN_PROCESS (__BLK_TN_PROCESS | BLK_TC_ACT(BLK_TC_NOTIFY)) | 81 | #define BLK_TN_PROCESS (__BLK_TN_PROCESS | BLK_TC_ACT(BLK_TC_NOTIFY)) |
| 81 | #define BLK_TN_TIMESTAMP (__BLK_TN_TIMESTAMP | BLK_TC_ACT(BLK_TC_NOTIFY)) | 82 | #define BLK_TN_TIMESTAMP (__BLK_TN_TIMESTAMP | BLK_TC_ACT(BLK_TC_NOTIFY)) |
| 83 | #define BLK_TN_MESSAGE (__BLK_TN_MESSAGE | BLK_TC_ACT(BLK_TC_NOTIFY)) | ||
| 82 | 84 | ||
| 83 | #define BLK_IO_TRACE_MAGIC 0x65617400 | 85 | #define BLK_IO_TRACE_MAGIC 0x65617400 |
| 84 | #define BLK_IO_TRACE_VERSION 0x07 | 86 | #define BLK_IO_TRACE_VERSION 0x07 |
| @@ -119,6 +121,7 @@ struct blk_trace { | |||
| 119 | int trace_state; | 121 | int trace_state; |
| 120 | struct rchan *rchan; | 122 | struct rchan *rchan; |
| 121 | unsigned long *sequence; | 123 | unsigned long *sequence; |
| 124 | unsigned char *msg_data; | ||
| 122 | u16 act_mask; | 125 | u16 act_mask; |
| 123 | u64 start_lba; | 126 | u64 start_lba; |
| 124 | u64 end_lba; | 127 | u64 end_lba; |
| @@ -149,7 +152,28 @@ extern void blk_trace_shutdown(struct request_queue *); | |||
| 149 | extern void __blk_add_trace(struct blk_trace *, sector_t, int, int, u32, int, int, void *); | 152 | extern void __blk_add_trace(struct blk_trace *, sector_t, int, int, u32, int, int, void *); |
| 150 | extern int do_blk_trace_setup(struct request_queue *q, | 153 | extern int do_blk_trace_setup(struct request_queue *q, |
| 151 | char *name, dev_t dev, struct blk_user_trace_setup *buts); | 154 | char *name, dev_t dev, struct blk_user_trace_setup *buts); |
| 155 | extern void __trace_note_message(struct blk_trace *, const char *fmt, ...); | ||
| 152 | 156 | ||
| 157 | /** | ||
| 158 | * blk_add_trace_msg - Add a (simple) message to the blktrace stream | ||
| 159 | * @q: queue the io is for | ||
| 160 | * @fmt: format to print message in | ||
| 161 | * args... Variable argument list for format | ||
| 162 | * | ||
| 163 | * Description: | ||
| 164 | * Records a (simple) message onto the blktrace stream. | ||
| 165 | * | ||
| 166 | * NOTE: BLK_TN_MAX_MSG characters are output at most. | ||
| 167 | * NOTE: Can not use 'static inline' due to presence of var args... | ||
| 168 | * | ||
| 169 | **/ | ||
| 170 | #define blk_add_trace_msg(q, fmt, ...) \ | ||
| 171 | do { \ | ||
| 172 | struct blk_trace *bt = (q)->blk_trace; \ | ||
| 173 | if (unlikely(bt)) \ | ||
| 174 | __trace_note_message(bt, fmt, ##__VA_ARGS__); \ | ||
| 175 | } while (0) | ||
| 176 | #define BLK_TN_MAX_MSG 128 | ||
| 153 | 177 | ||
| 154 | /** | 178 | /** |
| 155 | * blk_add_trace_rq - Add a trace for a request oriented action | 179 | * blk_add_trace_rq - Add a trace for a request oriented action |
| @@ -299,6 +323,8 @@ extern int blk_trace_remove(struct request_queue *q); | |||
| 299 | #define blk_trace_setup(q, name, dev, arg) (-ENOTTY) | 323 | #define blk_trace_setup(q, name, dev, arg) (-ENOTTY) |
| 300 | #define blk_trace_startstop(q, start) (-ENOTTY) | 324 | #define blk_trace_startstop(q, start) (-ENOTTY) |
| 301 | #define blk_trace_remove(q) (-ENOTTY) | 325 | #define blk_trace_remove(q) (-ENOTTY) |
| 326 | #define blk_add_trace_msg(q, fmt, ...) do { } while (0) | ||
| 327 | |||
| 302 | #endif /* CONFIG_BLK_DEV_IO_TRACE */ | 328 | #endif /* CONFIG_BLK_DEV_IO_TRACE */ |
| 303 | #endif /* __KERNEL__ */ | 329 | #endif /* __KERNEL__ */ |
| 304 | #endif | 330 | #endif |
diff --git a/include/linux/capability.h b/include/linux/capability.h index f4ea0dd9a618..fa830f8de032 100644 --- a/include/linux/capability.h +++ b/include/linux/capability.h | |||
| @@ -31,11 +31,11 @@ struct task_struct; | |||
| 31 | #define _LINUX_CAPABILITY_VERSION_1 0x19980330 | 31 | #define _LINUX_CAPABILITY_VERSION_1 0x19980330 |
| 32 | #define _LINUX_CAPABILITY_U32S_1 1 | 32 | #define _LINUX_CAPABILITY_U32S_1 1 |
| 33 | 33 | ||
| 34 | #define _LINUX_CAPABILITY_VERSION_2 0x20071026 | 34 | #define _LINUX_CAPABILITY_VERSION_2 0x20071026 /* deprecated - use v3 */ |
| 35 | #define _LINUX_CAPABILITY_U32S_2 2 | 35 | #define _LINUX_CAPABILITY_U32S_2 2 |
| 36 | 36 | ||
| 37 | #define _LINUX_CAPABILITY_VERSION _LINUX_CAPABILITY_VERSION_2 | 37 | #define _LINUX_CAPABILITY_VERSION_3 0x20080522 |
| 38 | #define _LINUX_CAPABILITY_U32S _LINUX_CAPABILITY_U32S_2 | 38 | #define _LINUX_CAPABILITY_U32S_3 2 |
| 39 | 39 | ||
| 40 | typedef struct __user_cap_header_struct { | 40 | typedef struct __user_cap_header_struct { |
| 41 | __u32 version; | 41 | __u32 version; |
| @@ -77,10 +77,23 @@ struct vfs_cap_data { | |||
| 77 | } data[VFS_CAP_U32]; | 77 | } data[VFS_CAP_U32]; |
| 78 | }; | 78 | }; |
| 79 | 79 | ||
| 80 | #ifdef __KERNEL__ | 80 | #ifndef __KERNEL__ |
| 81 | |||
| 82 | /* | ||
| 83 | * Backwardly compatible definition for source code - trapped in a | ||
| 84 | * 32-bit world. If you find you need this, please consider using | ||
| 85 | * libcap to untrap yourself... | ||
| 86 | */ | ||
| 87 | #define _LINUX_CAPABILITY_VERSION _LINUX_CAPABILITY_VERSION_1 | ||
| 88 | #define _LINUX_CAPABILITY_U32S _LINUX_CAPABILITY_U32S_1 | ||
| 89 | |||
| 90 | #else | ||
| 91 | |||
| 92 | #define _KERNEL_CAPABILITY_VERSION _LINUX_CAPABILITY_VERSION_3 | ||
| 93 | #define _KERNEL_CAPABILITY_U32S _LINUX_CAPABILITY_U32S_3 | ||
| 81 | 94 | ||
| 82 | typedef struct kernel_cap_struct { | 95 | typedef struct kernel_cap_struct { |
| 83 | __u32 cap[_LINUX_CAPABILITY_U32S]; | 96 | __u32 cap[_KERNEL_CAPABILITY_U32S]; |
| 84 | } kernel_cap_t; | 97 | } kernel_cap_t; |
| 85 | 98 | ||
| 86 | #define _USER_CAP_HEADER_SIZE (sizeof(struct __user_cap_header_struct)) | 99 | #define _USER_CAP_HEADER_SIZE (sizeof(struct __user_cap_header_struct)) |
| @@ -351,7 +364,7 @@ typedef struct kernel_cap_struct { | |||
| 351 | */ | 364 | */ |
| 352 | 365 | ||
| 353 | #define CAP_FOR_EACH_U32(__capi) \ | 366 | #define CAP_FOR_EACH_U32(__capi) \ |
| 354 | for (__capi = 0; __capi < _LINUX_CAPABILITY_U32S; ++__capi) | 367 | for (__capi = 0; __capi < _KERNEL_CAPABILITY_U32S; ++__capi) |
| 355 | 368 | ||
| 356 | # define CAP_FS_MASK_B0 (CAP_TO_MASK(CAP_CHOWN) \ | 369 | # define CAP_FS_MASK_B0 (CAP_TO_MASK(CAP_CHOWN) \ |
| 357 | | CAP_TO_MASK(CAP_DAC_OVERRIDE) \ | 370 | | CAP_TO_MASK(CAP_DAC_OVERRIDE) \ |
| @@ -361,7 +374,7 @@ typedef struct kernel_cap_struct { | |||
| 361 | 374 | ||
| 362 | # define CAP_FS_MASK_B1 (CAP_TO_MASK(CAP_MAC_OVERRIDE)) | 375 | # define CAP_FS_MASK_B1 (CAP_TO_MASK(CAP_MAC_OVERRIDE)) |
| 363 | 376 | ||
| 364 | #if _LINUX_CAPABILITY_U32S != 2 | 377 | #if _KERNEL_CAPABILITY_U32S != 2 |
| 365 | # error Fix up hand-coded capability macro initializers | 378 | # error Fix up hand-coded capability macro initializers |
| 366 | #else /* HAND-CODED capability initializers */ | 379 | #else /* HAND-CODED capability initializers */ |
| 367 | 380 | ||
| @@ -372,7 +385,7 @@ typedef struct kernel_cap_struct { | |||
| 372 | # define CAP_NFSD_SET ((kernel_cap_t){{ CAP_FS_MASK_B0|CAP_TO_MASK(CAP_SYS_RESOURCE), \ | 385 | # define CAP_NFSD_SET ((kernel_cap_t){{ CAP_FS_MASK_B0|CAP_TO_MASK(CAP_SYS_RESOURCE), \ |
| 373 | CAP_FS_MASK_B1 } }) | 386 | CAP_FS_MASK_B1 } }) |
| 374 | 387 | ||
| 375 | #endif /* _LINUX_CAPABILITY_U32S != 2 */ | 388 | #endif /* _KERNEL_CAPABILITY_U32S != 2 */ |
| 376 | 389 | ||
| 377 | #define CAP_INIT_INH_SET CAP_EMPTY_SET | 390 | #define CAP_INIT_INH_SET CAP_EMPTY_SET |
| 378 | 391 | ||
diff --git a/include/linux/cpuidle.h b/include/linux/cpuidle.h index 51e6b1e520e6..dcf77fa826b5 100644 --- a/include/linux/cpuidle.h +++ b/include/linux/cpuidle.h | |||
| @@ -82,6 +82,7 @@ struct cpuidle_state_kobj { | |||
| 82 | }; | 82 | }; |
| 83 | 83 | ||
| 84 | struct cpuidle_device { | 84 | struct cpuidle_device { |
| 85 | unsigned int registered:1; | ||
| 85 | unsigned int enabled:1; | 86 | unsigned int enabled:1; |
| 86 | unsigned int cpu; | 87 | unsigned int cpu; |
| 87 | 88 | ||
diff --git a/include/linux/device.h b/include/linux/device.h index 14616e80213c..6a2d04c011bc 100644 --- a/include/linux/device.h +++ b/include/linux/device.h | |||
| @@ -385,6 +385,9 @@ static inline const char *dev_name(struct device *dev) | |||
| 385 | return dev->bus_id; | 385 | return dev->bus_id; |
| 386 | } | 386 | } |
| 387 | 387 | ||
| 388 | extern int dev_set_name(struct device *dev, const char *name, ...) | ||
| 389 | __attribute__((format(printf, 2, 3))); | ||
| 390 | |||
| 388 | #ifdef CONFIG_NUMA | 391 | #ifdef CONFIG_NUMA |
| 389 | static inline int dev_to_node(struct device *dev) | 392 | static inline int dev_to_node(struct device *dev) |
| 390 | { | 393 | { |
diff --git a/include/linux/fs.h b/include/linux/fs.h index f413085f748e..d490779f18d9 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
| @@ -2000,7 +2000,10 @@ extern int simple_fill_super(struct super_block *, int, struct tree_descr *); | |||
| 2000 | extern int simple_pin_fs(struct file_system_type *, struct vfsmount **mount, int *count); | 2000 | extern int simple_pin_fs(struct file_system_type *, struct vfsmount **mount, int *count); |
| 2001 | extern void simple_release_fs(struct vfsmount **mount, int *count); | 2001 | extern void simple_release_fs(struct vfsmount **mount, int *count); |
| 2002 | 2002 | ||
| 2003 | extern ssize_t simple_read_from_buffer(void __user *, size_t, loff_t *, const void *, size_t); | 2003 | extern ssize_t simple_read_from_buffer(void __user *to, size_t count, |
| 2004 | loff_t *ppos, const void *from, size_t available); | ||
| 2005 | extern ssize_t memory_read_from_buffer(void *to, size_t count, loff_t *ppos, | ||
| 2006 | const void *from, size_t available); | ||
| 2004 | 2007 | ||
| 2005 | #ifdef CONFIG_MIGRATION | 2008 | #ifdef CONFIG_MIGRATION |
| 2006 | extern int buffer_migrate_page(struct address_space *, | 2009 | extern int buffer_migrate_page(struct address_space *, |
diff --git a/include/linux/ide.h b/include/linux/ide.h index f8f195c20da2..9918772bf274 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
| @@ -153,7 +153,7 @@ enum { ide_unknown, ide_generic, ide_pci, | |||
| 153 | ide_qd65xx, ide_umc8672, ide_ht6560b, | 153 | ide_qd65xx, ide_umc8672, ide_ht6560b, |
| 154 | ide_rz1000, ide_trm290, | 154 | ide_rz1000, ide_trm290, |
| 155 | ide_cmd646, ide_cy82c693, ide_4drives, | 155 | ide_cmd646, ide_cy82c693, ide_4drives, |
| 156 | ide_pmac, ide_etrax100, ide_acorn, | 156 | ide_pmac, ide_acorn, |
| 157 | ide_au1xxx, ide_palm3710 | 157 | ide_au1xxx, ide_palm3710 |
| 158 | }; | 158 | }; |
| 159 | 159 | ||
diff --git a/include/linux/in_route.h b/include/linux/in_route.h index 61f25c30a2a0..b261b8c915f0 100644 --- a/include/linux/in_route.h +++ b/include/linux/in_route.h | |||
| @@ -10,19 +10,19 @@ | |||
| 10 | #define RTCF_NOPMTUDISC RTM_F_NOPMTUDISC | 10 | #define RTCF_NOPMTUDISC RTM_F_NOPMTUDISC |
| 11 | 11 | ||
| 12 | #define RTCF_NOTIFY 0x00010000 | 12 | #define RTCF_NOTIFY 0x00010000 |
| 13 | #define RTCF_DIRECTDST 0x00020000 | 13 | #define RTCF_DIRECTDST 0x00020000 /* unused */ |
| 14 | #define RTCF_REDIRECTED 0x00040000 | 14 | #define RTCF_REDIRECTED 0x00040000 |
| 15 | #define RTCF_TPROXY 0x00080000 | 15 | #define RTCF_TPROXY 0x00080000 /* unused */ |
| 16 | 16 | ||
| 17 | #define RTCF_FAST 0x00200000 | 17 | #define RTCF_FAST 0x00200000 /* unused */ |
| 18 | #define RTCF_MASQ 0x00400000 | 18 | #define RTCF_MASQ 0x00400000 /* unused */ |
| 19 | #define RTCF_SNAT 0x00800000 | 19 | #define RTCF_SNAT 0x00800000 /* unused */ |
| 20 | #define RTCF_DOREDIRECT 0x01000000 | 20 | #define RTCF_DOREDIRECT 0x01000000 |
| 21 | #define RTCF_DIRECTSRC 0x04000000 | 21 | #define RTCF_DIRECTSRC 0x04000000 |
| 22 | #define RTCF_DNAT 0x08000000 | 22 | #define RTCF_DNAT 0x08000000 |
| 23 | #define RTCF_BROADCAST 0x10000000 | 23 | #define RTCF_BROADCAST 0x10000000 |
| 24 | #define RTCF_MULTICAST 0x20000000 | 24 | #define RTCF_MULTICAST 0x20000000 |
| 25 | #define RTCF_REJECT 0x40000000 | 25 | #define RTCF_REJECT 0x40000000 /* unused */ |
| 26 | #define RTCF_LOCAL 0x80000000 | 26 | #define RTCF_LOCAL 0x80000000 |
| 27 | 27 | ||
| 28 | #define RTCF_NAT (RTCF_DNAT|RTCF_SNAT) | 28 | #define RTCF_NAT (RTCF_DNAT|RTCF_SNAT) |
diff --git a/include/linux/inetdevice.h b/include/linux/inetdevice.h index 7009b0cdd06f..c6f51ad52d5b 100644 --- a/include/linux/inetdevice.h +++ b/include/linux/inetdevice.h | |||
| @@ -117,7 +117,6 @@ struct in_ifaddr | |||
| 117 | __be32 ifa_address; | 117 | __be32 ifa_address; |
| 118 | __be32 ifa_mask; | 118 | __be32 ifa_mask; |
| 119 | __be32 ifa_broadcast; | 119 | __be32 ifa_broadcast; |
| 120 | __be32 ifa_anycast; | ||
| 121 | unsigned char ifa_scope; | 120 | unsigned char ifa_scope; |
| 122 | unsigned char ifa_flags; | 121 | unsigned char ifa_flags; |
| 123 | unsigned char ifa_prefixlen; | 122 | unsigned char ifa_prefixlen; |
diff --git a/include/linux/input.h b/include/linux/input.h index 28a094fcfe20..e075c4b762fb 100644 --- a/include/linux/input.h +++ b/include/linux/input.h | |||
| @@ -637,7 +637,9 @@ struct input_absinfo { | |||
| 637 | #define SW_LID 0x00 /* set = lid shut */ | 637 | #define SW_LID 0x00 /* set = lid shut */ |
| 638 | #define SW_TABLET_MODE 0x01 /* set = tablet mode */ | 638 | #define SW_TABLET_MODE 0x01 /* set = tablet mode */ |
| 639 | #define SW_HEADPHONE_INSERT 0x02 /* set = inserted */ | 639 | #define SW_HEADPHONE_INSERT 0x02 /* set = inserted */ |
| 640 | #define SW_RADIO 0x03 /* set = radio enabled */ | 640 | #define SW_RFKILL_ALL 0x03 /* rfkill master switch, type "any" |
| 641 | set = radio enabled */ | ||
| 642 | #define SW_RADIO SW_RFKILL_ALL /* deprecated */ | ||
| 641 | #define SW_MAX 0x0f | 643 | #define SW_MAX 0x0f |
| 642 | #define SW_CNT (SW_MAX+1) | 644 | #define SW_CNT (SW_MAX+1) |
| 643 | 645 | ||
diff --git a/include/linux/ioport.h b/include/linux/ioport.h index d5d40a9f7929..c6801bffe76d 100644 --- a/include/linux/ioport.h +++ b/include/linux/ioport.h | |||
| @@ -53,14 +53,14 @@ struct resource_list { | |||
| 53 | #define IORESOURCE_AUTO 0x40000000 | 53 | #define IORESOURCE_AUTO 0x40000000 |
| 54 | #define IORESOURCE_BUSY 0x80000000 /* Driver has marked this resource busy */ | 54 | #define IORESOURCE_BUSY 0x80000000 /* Driver has marked this resource busy */ |
| 55 | 55 | ||
| 56 | /* ISA PnP IRQ specific bits (IORESOURCE_BITS) */ | 56 | /* PnP IRQ specific bits (IORESOURCE_BITS) */ |
| 57 | #define IORESOURCE_IRQ_HIGHEDGE (1<<0) | 57 | #define IORESOURCE_IRQ_HIGHEDGE (1<<0) |
| 58 | #define IORESOURCE_IRQ_LOWEDGE (1<<1) | 58 | #define IORESOURCE_IRQ_LOWEDGE (1<<1) |
| 59 | #define IORESOURCE_IRQ_HIGHLEVEL (1<<2) | 59 | #define IORESOURCE_IRQ_HIGHLEVEL (1<<2) |
| 60 | #define IORESOURCE_IRQ_LOWLEVEL (1<<3) | 60 | #define IORESOURCE_IRQ_LOWLEVEL (1<<3) |
| 61 | #define IORESOURCE_IRQ_SHAREABLE (1<<4) | 61 | #define IORESOURCE_IRQ_SHAREABLE (1<<4) |
| 62 | 62 | ||
| 63 | /* ISA PnP DMA specific bits (IORESOURCE_BITS) */ | 63 | /* PnP DMA specific bits (IORESOURCE_BITS) */ |
| 64 | #define IORESOURCE_DMA_TYPE_MASK (3<<0) | 64 | #define IORESOURCE_DMA_TYPE_MASK (3<<0) |
| 65 | #define IORESOURCE_DMA_8BIT (0<<0) | 65 | #define IORESOURCE_DMA_8BIT (0<<0) |
| 66 | #define IORESOURCE_DMA_8AND16BIT (1<<0) | 66 | #define IORESOURCE_DMA_8AND16BIT (1<<0) |
| @@ -76,7 +76,7 @@ struct resource_list { | |||
| 76 | #define IORESOURCE_DMA_TYPEB (2<<6) | 76 | #define IORESOURCE_DMA_TYPEB (2<<6) |
| 77 | #define IORESOURCE_DMA_TYPEF (3<<6) | 77 | #define IORESOURCE_DMA_TYPEF (3<<6) |
| 78 | 78 | ||
| 79 | /* ISA PnP memory I/O specific bits (IORESOURCE_BITS) */ | 79 | /* PnP memory I/O specific bits (IORESOURCE_BITS) */ |
| 80 | #define IORESOURCE_MEM_WRITEABLE (1<<0) /* dup: IORESOURCE_READONLY */ | 80 | #define IORESOURCE_MEM_WRITEABLE (1<<0) /* dup: IORESOURCE_READONLY */ |
| 81 | #define IORESOURCE_MEM_CACHEABLE (1<<1) /* dup: IORESOURCE_CACHEABLE */ | 81 | #define IORESOURCE_MEM_CACHEABLE (1<<1) /* dup: IORESOURCE_CACHEABLE */ |
| 82 | #define IORESOURCE_MEM_RANGELENGTH (1<<2) /* dup: IORESOURCE_RANGELENGTH */ | 82 | #define IORESOURCE_MEM_RANGELENGTH (1<<2) /* dup: IORESOURCE_RANGELENGTH */ |
diff --git a/include/linux/ipv6.h b/include/linux/ipv6.h index 10b666b61add..cde056e08181 100644 --- a/include/linux/ipv6.h +++ b/include/linux/ipv6.h | |||
| @@ -396,8 +396,10 @@ static inline struct request_sock *inet6_reqsk_alloc(struct request_sock_ops *op | |||
| 396 | { | 396 | { |
| 397 | struct request_sock *req = reqsk_alloc(ops); | 397 | struct request_sock *req = reqsk_alloc(ops); |
| 398 | 398 | ||
| 399 | if (req != NULL) | 399 | if (req != NULL) { |
| 400 | inet_rsk(req)->inet6_rsk_offset = inet6_rsk_offset(req); | 400 | inet_rsk(req)->inet6_rsk_offset = inet6_rsk_offset(req); |
| 401 | inet6_rsk(req)->pktopts = NULL; | ||
| 402 | } | ||
| 401 | 403 | ||
| 402 | return req; | 404 | return req; |
| 403 | } | 405 | } |
diff --git a/include/linux/jbd2.h b/include/linux/jbd2.h index 05e2b307161a..d147f0f90360 100644 --- a/include/linux/jbd2.h +++ b/include/linux/jbd2.h | |||
| @@ -919,6 +919,9 @@ struct journal_s | |||
| 919 | struct proc_dir_entry *j_proc_entry; | 919 | struct proc_dir_entry *j_proc_entry; |
| 920 | struct transaction_stats_s j_stats; | 920 | struct transaction_stats_s j_stats; |
| 921 | 921 | ||
| 922 | /* Failed journal commit ID */ | ||
| 923 | unsigned int j_failed_commit; | ||
| 924 | |||
| 922 | /* | 925 | /* |
| 923 | * An opaque pointer to fs-private information. ext3 puts its | 926 | * An opaque pointer to fs-private information. ext3 puts its |
| 924 | * superblock pointer here | 927 | * superblock pointer here |
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h index 398978972b7a..092b1b25291d 100644 --- a/include/linux/kvm_host.h +++ b/include/linux/kvm_host.h | |||
| @@ -297,7 +297,7 @@ static inline gpa_t gfn_to_gpa(gfn_t gfn) | |||
| 297 | return (gpa_t)gfn << PAGE_SHIFT; | 297 | return (gpa_t)gfn << PAGE_SHIFT; |
| 298 | } | 298 | } |
| 299 | 299 | ||
| 300 | static inline void kvm_migrate_apic_timer(struct kvm_vcpu *vcpu) | 300 | static inline void kvm_migrate_timers(struct kvm_vcpu *vcpu) |
| 301 | { | 301 | { |
| 302 | set_bit(KVM_REQ_MIGRATE_TIMER, &vcpu->requests); | 302 | set_bit(KVM_REQ_MIGRATE_TIMER, &vcpu->requests); |
| 303 | } | 303 | } |
diff --git a/include/linux/libata.h b/include/linux/libata.h index 4a92fbafce9d..e57e5d08312d 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
| @@ -111,13 +111,10 @@ enum { | |||
| 111 | /* various global constants */ | 111 | /* various global constants */ |
| 112 | LIBATA_MAX_PRD = ATA_MAX_PRD / 2, | 112 | LIBATA_MAX_PRD = ATA_MAX_PRD / 2, |
| 113 | LIBATA_DUMB_MAX_PRD = ATA_MAX_PRD / 4, /* Worst case */ | 113 | LIBATA_DUMB_MAX_PRD = ATA_MAX_PRD / 4, /* Worst case */ |
| 114 | ATA_MAX_PORTS = 8, | ||
| 115 | ATA_DEF_QUEUE = 1, | 114 | ATA_DEF_QUEUE = 1, |
| 116 | /* tag ATA_MAX_QUEUE - 1 is reserved for internal commands */ | 115 | /* tag ATA_MAX_QUEUE - 1 is reserved for internal commands */ |
| 117 | ATA_MAX_QUEUE = 32, | 116 | ATA_MAX_QUEUE = 32, |
| 118 | ATA_TAG_INTERNAL = ATA_MAX_QUEUE - 1, | 117 | ATA_TAG_INTERNAL = ATA_MAX_QUEUE - 1, |
| 119 | ATA_MAX_BUS = 2, | ||
| 120 | ATA_DEF_BUSY_WAIT = 10000, | ||
| 121 | ATA_SHORT_PAUSE = (HZ >> 6) + 1, | 118 | ATA_SHORT_PAUSE = (HZ >> 6) + 1, |
| 122 | 119 | ||
| 123 | ATAPI_MAX_DRAIN = 16 << 10, | 120 | ATAPI_MAX_DRAIN = 16 << 10, |
| @@ -1435,7 +1432,8 @@ extern void ata_sff_qc_prep(struct ata_queued_cmd *qc); | |||
| 1435 | extern void ata_sff_dumb_qc_prep(struct ata_queued_cmd *qc); | 1432 | extern void ata_sff_dumb_qc_prep(struct ata_queued_cmd *qc); |
| 1436 | extern void ata_sff_dev_select(struct ata_port *ap, unsigned int device); | 1433 | extern void ata_sff_dev_select(struct ata_port *ap, unsigned int device); |
| 1437 | extern u8 ata_sff_check_status(struct ata_port *ap); | 1434 | extern u8 ata_sff_check_status(struct ata_port *ap); |
| 1438 | extern u8 ata_sff_altstatus(struct ata_port *ap); | 1435 | extern void ata_sff_pause(struct ata_port *ap); |
| 1436 | extern void ata_sff_dma_pause(struct ata_port *ap); | ||
| 1439 | extern int ata_sff_busy_sleep(struct ata_port *ap, | 1437 | extern int ata_sff_busy_sleep(struct ata_port *ap, |
| 1440 | unsigned long timeout_pat, unsigned long timeout); | 1438 | unsigned long timeout_pat, unsigned long timeout); |
| 1441 | extern int ata_sff_wait_ready(struct ata_link *link, unsigned long deadline); | 1439 | extern int ata_sff_wait_ready(struct ata_link *link, unsigned long deadline); |
| @@ -1496,19 +1494,6 @@ extern int ata_pci_sff_init_one(struct pci_dev *pdev, | |||
| 1496 | #endif /* CONFIG_PCI */ | 1494 | #endif /* CONFIG_PCI */ |
| 1497 | 1495 | ||
| 1498 | /** | 1496 | /** |
| 1499 | * ata_sff_pause - Flush writes and pause 400 nanoseconds. | ||
| 1500 | * @ap: Port to wait for. | ||
| 1501 | * | ||
| 1502 | * LOCKING: | ||
| 1503 | * Inherited from caller. | ||
| 1504 | */ | ||
| 1505 | static inline void ata_sff_pause(struct ata_port *ap) | ||
| 1506 | { | ||
| 1507 | ata_sff_altstatus(ap); | ||
| 1508 | ndelay(400); | ||
| 1509 | } | ||
| 1510 | |||
| 1511 | /** | ||
| 1512 | * ata_sff_busy_wait - Wait for a port status register | 1497 | * ata_sff_busy_wait - Wait for a port status register |
| 1513 | * @ap: Port to wait for. | 1498 | * @ap: Port to wait for. |
| 1514 | * @bits: bits that must be clear | 1499 | * @bits: bits that must be clear |
diff --git a/include/linux/math64.h b/include/linux/math64.h index c1a5f81501ff..c87f1528703a 100644 --- a/include/linux/math64.h +++ b/include/linux/math64.h | |||
| @@ -81,4 +81,25 @@ static inline s64 div_s64(s64 dividend, s32 divisor) | |||
| 81 | } | 81 | } |
| 82 | #endif | 82 | #endif |
| 83 | 83 | ||
| 84 | u32 iter_div_u64_rem(u64 dividend, u32 divisor, u64 *remainder); | ||
| 85 | |||
| 86 | static __always_inline u32 | ||
| 87 | __iter_div_u64_rem(u64 dividend, u32 divisor, u64 *remainder) | ||
| 88 | { | ||
| 89 | u32 ret = 0; | ||
| 90 | |||
| 91 | while (dividend >= divisor) { | ||
| 92 | /* The following asm() prevents the compiler from | ||
| 93 | optimising this loop into a modulo operation. */ | ||
| 94 | asm("" : "+rm"(dividend)); | ||
| 95 | |||
| 96 | dividend -= divisor; | ||
| 97 | ret++; | ||
| 98 | } | ||
| 99 | |||
| 100 | *remainder = dividend; | ||
| 101 | |||
| 102 | return ret; | ||
| 103 | } | ||
| 104 | |||
| 84 | #endif /* _LINUX_MATH64_H */ | 105 | #endif /* _LINUX_MATH64_H */ |
diff --git a/include/linux/memory_hotplug.h b/include/linux/memory_hotplug.h index 73e358612eaf..ea9f5ad9ec8e 100644 --- a/include/linux/memory_hotplug.h +++ b/include/linux/memory_hotplug.h | |||
| @@ -77,14 +77,6 @@ extern int __add_pages(struct zone *zone, unsigned long start_pfn, | |||
| 77 | extern int __remove_pages(struct zone *zone, unsigned long start_pfn, | 77 | extern int __remove_pages(struct zone *zone, unsigned long start_pfn, |
| 78 | unsigned long nr_pages); | 78 | unsigned long nr_pages); |
| 79 | 79 | ||
| 80 | /* | ||
| 81 | * Walk through all memory which is registered as resource. | ||
| 82 | * arg is (start_pfn, nr_pages, private_arg_pointer) | ||
| 83 | */ | ||
| 84 | extern int walk_memory_resource(unsigned long start_pfn, | ||
| 85 | unsigned long nr_pages, void *arg, | ||
| 86 | int (*func)(unsigned long, unsigned long, void *)); | ||
| 87 | |||
| 88 | #ifdef CONFIG_NUMA | 80 | #ifdef CONFIG_NUMA |
| 89 | extern int memory_add_physaddr_to_nid(u64 start); | 81 | extern int memory_add_physaddr_to_nid(u64 start); |
| 90 | #else | 82 | #else |
| @@ -199,6 +191,14 @@ static inline void register_page_bootmem_info_node(struct pglist_data *pgdat) | |||
| 199 | 191 | ||
| 200 | #endif /* ! CONFIG_MEMORY_HOTPLUG */ | 192 | #endif /* ! CONFIG_MEMORY_HOTPLUG */ |
| 201 | 193 | ||
| 194 | /* | ||
| 195 | * Walk through all memory which is registered as resource. | ||
| 196 | * arg is (start_pfn, nr_pages, private_arg_pointer) | ||
| 197 | */ | ||
| 198 | extern int walk_memory_resource(unsigned long start_pfn, | ||
| 199 | unsigned long nr_pages, void *arg, | ||
| 200 | int (*func)(unsigned long, unsigned long, void *)); | ||
| 201 | |||
| 202 | extern int add_memory(int nid, u64 start, u64 size); | 202 | extern int add_memory(int nid, u64 start, u64 size); |
| 203 | extern int arch_add_memory(int nid, u64 start, u64 size); | 203 | extern int arch_add_memory(int nid, u64 start, u64 size); |
| 204 | extern int remove_memory(u64 start, u64 size); | 204 | extern int remove_memory(u64 start, u64 size); |
diff --git a/include/linux/mm.h b/include/linux/mm.h index c31a9cd2a30e..586a943cab01 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h | |||
| @@ -760,16 +760,17 @@ unsigned long unmap_vmas(struct mmu_gather **tlb, | |||
| 760 | * (see walk_page_range for more details) | 760 | * (see walk_page_range for more details) |
| 761 | */ | 761 | */ |
| 762 | struct mm_walk { | 762 | struct mm_walk { |
| 763 | int (*pgd_entry)(pgd_t *, unsigned long, unsigned long, void *); | 763 | int (*pgd_entry)(pgd_t *, unsigned long, unsigned long, struct mm_walk *); |
| 764 | int (*pud_entry)(pud_t *, unsigned long, unsigned long, void *); | 764 | int (*pud_entry)(pud_t *, unsigned long, unsigned long, struct mm_walk *); |
| 765 | int (*pmd_entry)(pmd_t *, unsigned long, unsigned long, void *); | 765 | int (*pmd_entry)(pmd_t *, unsigned long, unsigned long, struct mm_walk *); |
| 766 | int (*pte_entry)(pte_t *, unsigned long, unsigned long, void *); | 766 | int (*pte_entry)(pte_t *, unsigned long, unsigned long, struct mm_walk *); |
| 767 | int (*pte_hole)(unsigned long, unsigned long, void *); | 767 | int (*pte_hole)(unsigned long, unsigned long, struct mm_walk *); |
| 768 | struct mm_struct *mm; | ||
| 769 | void *private; | ||
| 768 | }; | 770 | }; |
| 769 | 771 | ||
| 770 | int walk_page_range(const struct mm_struct *, unsigned long addr, | 772 | int walk_page_range(unsigned long addr, unsigned long end, |
| 771 | unsigned long end, const struct mm_walk *walk, | 773 | struct mm_walk *walk); |
| 772 | void *private); | ||
| 773 | void free_pgd_range(struct mmu_gather **tlb, unsigned long addr, | 774 | void free_pgd_range(struct mmu_gather **tlb, unsigned long addr, |
| 774 | unsigned long end, unsigned long floor, unsigned long ceiling); | 775 | unsigned long end, unsigned long floor, unsigned long ceiling); |
| 775 | void free_pgtables(struct mmu_gather **tlb, struct vm_area_struct *start_vma, | 776 | void free_pgtables(struct mmu_gather **tlb, struct vm_area_struct *start_vma, |
diff --git a/include/linux/msdos_fs.h b/include/linux/msdos_fs.h index b03b27457413..81cd36b735b0 100644 --- a/include/linux/msdos_fs.h +++ b/include/linux/msdos_fs.h | |||
| @@ -57,12 +57,6 @@ | |||
| 57 | #define MSDOS_DOT ". " /* ".", padded to MSDOS_NAME chars */ | 57 | #define MSDOS_DOT ". " /* ".", padded to MSDOS_NAME chars */ |
| 58 | #define MSDOS_DOTDOT ".. " /* "..", padded to MSDOS_NAME chars */ | 58 | #define MSDOS_DOTDOT ".. " /* "..", padded to MSDOS_NAME chars */ |
| 59 | 59 | ||
| 60 | /* media of boot sector */ | ||
| 61 | static inline int fat_valid_media(u8 media) | ||
| 62 | { | ||
| 63 | return 0xf8 <= media || media == 0xf0; | ||
| 64 | } | ||
| 65 | |||
| 66 | #define FAT_FIRST_ENT(s, x) ((MSDOS_SB(s)->fat_bits == 32 ? 0x0FFFFF00 : \ | 60 | #define FAT_FIRST_ENT(s, x) ((MSDOS_SB(s)->fat_bits == 32 ? 0x0FFFFF00 : \ |
| 67 | MSDOS_SB(s)->fat_bits == 16 ? 0xFF00 : 0xF00) | (x)) | 61 | MSDOS_SB(s)->fat_bits == 16 ? 0xFF00 : 0xF00) | (x)) |
| 68 | 62 | ||
| @@ -334,6 +328,12 @@ static inline void fatwchar_to16(__u8 *dst, const wchar_t *src, size_t len) | |||
| 334 | #endif | 328 | #endif |
| 335 | } | 329 | } |
| 336 | 330 | ||
| 331 | /* media of boot sector */ | ||
| 332 | static inline int fat_valid_media(u8 media) | ||
| 333 | { | ||
| 334 | return 0xf8 <= media || media == 0xf0; | ||
| 335 | } | ||
| 336 | |||
| 337 | /* fat/cache.c */ | 337 | /* fat/cache.c */ |
| 338 | extern void fat_cache_inval_inode(struct inode *inode); | 338 | extern void fat_cache_inval_inode(struct inode *inode); |
| 339 | extern int fat_get_cluster(struct inode *inode, int cluster, | 339 | extern int fat_get_cluster(struct inode *inode, int cluster, |
diff --git a/include/linux/msg.h b/include/linux/msg.h index 6f3b8e79a991..56abf1558fdd 100644 --- a/include/linux/msg.h +++ b/include/linux/msg.h | |||
| @@ -64,11 +64,11 @@ struct msginfo { | |||
| 64 | #define MSGMNB 16384 /* <= INT_MAX */ /* default max size of a message queue */ | 64 | #define MSGMNB 16384 /* <= INT_MAX */ /* default max size of a message queue */ |
| 65 | 65 | ||
| 66 | /* unused */ | 66 | /* unused */ |
| 67 | #define MSGPOOL (MSGMNI * MSGMNB) /* size in bytes of message pool */ | 67 | #define MSGPOOL (MSGMNI * MSGMNB / 1024) /* size in kbytes of message pool */ |
| 68 | #define MSGTQL MSGMNB /* number of system message headers */ | 68 | #define MSGTQL MSGMNB /* number of system message headers */ |
| 69 | #define MSGMAP MSGMNB /* number of entries in message map */ | 69 | #define MSGMAP MSGMNB /* number of entries in message map */ |
| 70 | #define MSGSSZ 16 /* message segment size */ | 70 | #define MSGSSZ 16 /* message segment size */ |
| 71 | #define __MSGSEG (MSGPOOL / MSGSSZ) /* max no. of segments */ | 71 | #define __MSGSEG ((MSGPOOL * 1024) / MSGSSZ) /* max no. of segments */ |
| 72 | #define MSGSEG (__MSGSEG <= 0xffff ? __MSGSEG : 0xffff) | 72 | #define MSGSEG (__MSGSEG <= 0xffff ? __MSGSEG : 0xffff) |
| 73 | 73 | ||
| 74 | #ifdef __KERNEL__ | 74 | #ifdef __KERNEL__ |
diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h index c42bc7f533a5..53ea3dc8b0e8 100644 --- a/include/linux/mtd/nand.h +++ b/include/linux/mtd/nand.h | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * linux/include/linux/mtd/nand.h | 2 | * linux/include/linux/mtd/nand.h |
| 3 | * | 3 | * |
| 4 | * Copyright (c) 2000 David Woodhouse <dwmw2@mvhi.com> | 4 | * Copyright (c) 2000 David Woodhouse <dwmw2@infradead.org> |
| 5 | * Steven J. Hill <sjhill@realitydiluted.com> | 5 | * Steven J. Hill <sjhill@realitydiluted.com> |
| 6 | * Thomas Gleixner <tglx@linutronix.de> | 6 | * Thomas Gleixner <tglx@linutronix.de> |
| 7 | * | 7 | * |
diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h index 590cff32415d..f31debfac926 100644 --- a/include/linux/page-flags.h +++ b/include/linux/page-flags.h | |||
| @@ -306,5 +306,29 @@ static inline void __ClearPageTail(struct page *page) | |||
| 306 | } | 306 | } |
| 307 | 307 | ||
| 308 | #endif /* !PAGEFLAGS_EXTENDED */ | 308 | #endif /* !PAGEFLAGS_EXTENDED */ |
| 309 | |||
| 310 | #define PAGE_FLAGS (1 << PG_lru | 1 << PG_private | 1 << PG_locked | \ | ||
| 311 | 1 << PG_buddy | 1 << PG_writeback | \ | ||
| 312 | 1 << PG_slab | 1 << PG_swapcache | 1 << PG_active) | ||
| 313 | |||
| 314 | /* | ||
| 315 | * Flags checked in bad_page(). Pages on the free list should not have | ||
| 316 | * these flags set. It they are, there is a problem. | ||
| 317 | */ | ||
| 318 | #define PAGE_FLAGS_CLEAR_WHEN_BAD (PAGE_FLAGS | 1 << PG_reclaim | 1 << PG_dirty) | ||
| 319 | |||
| 320 | /* | ||
| 321 | * Flags checked when a page is freed. Pages being freed should not have | ||
| 322 | * these flags set. It they are, there is a problem. | ||
| 323 | */ | ||
| 324 | #define PAGE_FLAGS_CHECK_AT_FREE (PAGE_FLAGS | 1 << PG_reserved) | ||
| 325 | |||
| 326 | /* | ||
| 327 | * Flags checked when a page is prepped for return by the page allocator. | ||
| 328 | * Pages being prepped should not have these flags set. It they are, there | ||
| 329 | * is a problem. | ||
| 330 | */ | ||
| 331 | #define PAGE_FLAGS_CHECK_AT_PREP (PAGE_FLAGS | 1 << PG_reserved | 1 << PG_dirty) | ||
| 332 | |||
| 309 | #endif /* !__GENERATING_BOUNDS_H */ | 333 | #endif /* !__GENERATING_BOUNDS_H */ |
| 310 | #endif /* PAGE_FLAGS_H */ | 334 | #endif /* PAGE_FLAGS_H */ |
diff --git a/include/linux/pci.h b/include/linux/pci.h index 509159bcd4e7..d18b1dd49fab 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h | |||
| @@ -206,6 +206,7 @@ struct pci_dev { | |||
| 206 | struct bin_attribute *rom_attr; /* attribute descriptor for sysfs ROM entry */ | 206 | struct bin_attribute *rom_attr; /* attribute descriptor for sysfs ROM entry */ |
| 207 | int rom_attr_enabled; /* has display of the rom attribute been enabled? */ | 207 | int rom_attr_enabled; /* has display of the rom attribute been enabled? */ |
| 208 | struct bin_attribute *res_attr[DEVICE_COUNT_RESOURCE]; /* sysfs file for resources */ | 208 | struct bin_attribute *res_attr[DEVICE_COUNT_RESOURCE]; /* sysfs file for resources */ |
| 209 | struct bin_attribute *res_attr_wc[DEVICE_COUNT_RESOURCE]; /* sysfs file for WC mapping of resources */ | ||
| 209 | #ifdef CONFIG_PCI_MSI | 210 | #ifdef CONFIG_PCI_MSI |
| 210 | struct list_head msi_list; | 211 | struct list_head msi_list; |
| 211 | #endif | 212 | #endif |
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index 9b940e644179..eafc9d6d2b35 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h | |||
| @@ -716,6 +716,7 @@ | |||
| 716 | #define PCI_DEVICE_ID_HP_CISSA 0x3220 | 716 | #define PCI_DEVICE_ID_HP_CISSA 0x3220 |
| 717 | #define PCI_DEVICE_ID_HP_CISSC 0x3230 | 717 | #define PCI_DEVICE_ID_HP_CISSC 0x3230 |
| 718 | #define PCI_DEVICE_ID_HP_CISSD 0x3238 | 718 | #define PCI_DEVICE_ID_HP_CISSD 0x3238 |
| 719 | #define PCI_DEVICE_ID_HP_CISSE 0x323a | ||
| 719 | #define PCI_DEVICE_ID_HP_ZX2_IOC 0x4031 | 720 | #define PCI_DEVICE_ID_HP_ZX2_IOC 0x4031 |
| 720 | 721 | ||
| 721 | #define PCI_VENDOR_ID_PCTECH 0x1042 | 722 | #define PCI_VENDOR_ID_PCTECH 0x1042 |
diff --git a/include/linux/proc_fs.h b/include/linux/proc_fs.h index 9883bc942262..fff1d27ddb4c 100644 --- a/include/linux/proc_fs.h +++ b/include/linux/proc_fs.h | |||
| @@ -9,6 +9,8 @@ | |||
| 9 | 9 | ||
| 10 | struct net; | 10 | struct net; |
| 11 | struct completion; | 11 | struct completion; |
| 12 | struct mm_struct; | ||
| 13 | |||
| 12 | /* | 14 | /* |
| 13 | * The proc filesystem constants/structures | 15 | * The proc filesystem constants/structures |
| 14 | */ | 16 | */ |
| @@ -101,8 +103,6 @@ extern spinlock_t proc_subdir_lock; | |||
| 101 | extern void proc_root_init(void); | 103 | extern void proc_root_init(void); |
| 102 | extern void proc_misc_init(void); | 104 | extern void proc_misc_init(void); |
| 103 | 105 | ||
| 104 | struct mm_struct; | ||
| 105 | |||
| 106 | void proc_flush_task(struct task_struct *task); | 106 | void proc_flush_task(struct task_struct *task); |
| 107 | struct dentry *proc_pid_lookup(struct inode *dir, struct dentry * dentry, struct nameidata *); | 107 | struct dentry *proc_pid_lookup(struct inode *dir, struct dentry * dentry, struct nameidata *); |
| 108 | int proc_pid_readdir(struct file * filp, void * dirent, filldir_t filldir); | 108 | int proc_pid_readdir(struct file * filp, void * dirent, filldir_t filldir); |
diff --git a/include/linux/rtnetlink.h b/include/linux/rtnetlink.h index 44c81c744538..b358c704d102 100644 --- a/include/linux/rtnetlink.h +++ b/include/linux/rtnetlink.h | |||
| @@ -246,6 +246,7 @@ enum rt_class_t | |||
| 246 | { | 246 | { |
| 247 | RT_TABLE_UNSPEC=0, | 247 | RT_TABLE_UNSPEC=0, |
| 248 | /* User defined values */ | 248 | /* User defined values */ |
| 249 | RT_TABLE_COMPAT=252, | ||
| 249 | RT_TABLE_DEFAULT=253, | 250 | RT_TABLE_DEFAULT=253, |
| 250 | RT_TABLE_MAIN=254, | 251 | RT_TABLE_MAIN=254, |
| 251 | RT_TABLE_LOCAL=255, | 252 | RT_TABLE_LOCAL=255, |
| @@ -267,10 +268,10 @@ enum rtattr_type_t | |||
| 267 | RTA_PREFSRC, | 268 | RTA_PREFSRC, |
| 268 | RTA_METRICS, | 269 | RTA_METRICS, |
| 269 | RTA_MULTIPATH, | 270 | RTA_MULTIPATH, |
| 270 | RTA_PROTOINFO, | 271 | RTA_PROTOINFO, /* no longer used */ |
| 271 | RTA_FLOW, | 272 | RTA_FLOW, |
| 272 | RTA_CACHEINFO, | 273 | RTA_CACHEINFO, |
| 273 | RTA_SESSION, | 274 | RTA_SESSION, /* no longer used */ |
| 274 | RTA_MP_ALGO, /* no longer used */ | 275 | RTA_MP_ALGO, /* no longer used */ |
| 275 | RTA_TABLE, | 276 | RTA_TABLE, |
| 276 | __RTA_MAX | 277 | __RTA_MAX |
diff --git a/include/linux/sched.h b/include/linux/sched.h index 3e05e5474749..c5d3f847ca8d 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
| @@ -766,7 +766,6 @@ struct sched_domain { | |||
| 766 | struct sched_domain *child; /* bottom domain must be null terminated */ | 766 | struct sched_domain *child; /* bottom domain must be null terminated */ |
| 767 | struct sched_group *groups; /* the balancing groups of the domain */ | 767 | struct sched_group *groups; /* the balancing groups of the domain */ |
| 768 | cpumask_t span; /* span of all CPUs in this domain */ | 768 | cpumask_t span; /* span of all CPUs in this domain */ |
| 769 | int first_cpu; /* cache of the first cpu in this domain */ | ||
| 770 | unsigned long min_interval; /* Minimum balance interval ms */ | 769 | unsigned long min_interval; /* Minimum balance interval ms */ |
| 771 | unsigned long max_interval; /* Maximum balance interval ms */ | 770 | unsigned long max_interval; /* Maximum balance interval ms */ |
| 772 | unsigned int busy_factor; /* less balancing by factor if busy */ | 771 | unsigned int busy_factor; /* less balancing by factor if busy */ |
| @@ -2027,6 +2026,19 @@ static inline int fatal_signal_pending(struct task_struct *p) | |||
| 2027 | return signal_pending(p) && __fatal_signal_pending(p); | 2026 | return signal_pending(p) && __fatal_signal_pending(p); |
| 2028 | } | 2027 | } |
| 2029 | 2028 | ||
| 2029 | static inline int signal_pending_state(long state, struct task_struct *p) | ||
| 2030 | { | ||
| 2031 | if (!(state & (TASK_INTERRUPTIBLE | TASK_WAKEKILL))) | ||
| 2032 | return 0; | ||
| 2033 | if (!signal_pending(p)) | ||
| 2034 | return 0; | ||
| 2035 | |||
| 2036 | if (state & (__TASK_STOPPED | __TASK_TRACED)) | ||
| 2037 | return 0; | ||
| 2038 | |||
| 2039 | return (state & TASK_INTERRUPTIBLE) || __fatal_signal_pending(p); | ||
| 2040 | } | ||
| 2041 | |||
| 2030 | static inline int need_resched(void) | 2042 | static inline int need_resched(void) |
| 2031 | { | 2043 | { |
| 2032 | return unlikely(test_thread_flag(TIF_NEED_RESCHED)); | 2044 | return unlikely(test_thread_flag(TIF_NEED_RESCHED)); |
diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h index d32123ae08ad..d8f31de632c5 100644 --- a/include/linux/serial_core.h +++ b/include/linux/serial_core.h | |||
| @@ -192,6 +192,7 @@ struct uart_ops { | |||
| 192 | void (*shutdown)(struct uart_port *); | 192 | void (*shutdown)(struct uart_port *); |
| 193 | void (*set_termios)(struct uart_port *, struct ktermios *new, | 193 | void (*set_termios)(struct uart_port *, struct ktermios *new, |
| 194 | struct ktermios *old); | 194 | struct ktermios *old); |
| 195 | void (*set_ldisc)(struct uart_port *); | ||
| 195 | void (*pm)(struct uart_port *, unsigned int state, | 196 | void (*pm)(struct uart_port *, unsigned int state, |
| 196 | unsigned int oldstate); | 197 | unsigned int oldstate); |
| 197 | int (*set_wake)(struct uart_port *, unsigned int state); | 198 | int (*set_wake)(struct uart_port *, unsigned int state); |
diff --git a/include/linux/slab.h b/include/linux/slab.h index 805ed4b92f9a..c2ad35016599 100644 --- a/include/linux/slab.h +++ b/include/linux/slab.h | |||
| @@ -276,6 +276,17 @@ static inline void *kzalloc(size_t size, gfp_t flags) | |||
| 276 | return kmalloc(size, flags | __GFP_ZERO); | 276 | return kmalloc(size, flags | __GFP_ZERO); |
| 277 | } | 277 | } |
| 278 | 278 | ||
| 279 | /** | ||
| 280 | * kzalloc_node - allocate zeroed memory from a particular memory node. | ||
| 281 | * @size: how many bytes of memory are required. | ||
| 282 | * @flags: the type of memory to allocate (see kmalloc). | ||
| 283 | * @node: memory node from which to allocate | ||
| 284 | */ | ||
| 285 | static inline void *kzalloc_node(size_t size, gfp_t flags, int node) | ||
| 286 | { | ||
| 287 | return kmalloc_node(size, flags | __GFP_ZERO, node); | ||
| 288 | } | ||
| 289 | |||
| 279 | #ifdef CONFIG_SLABINFO | 290 | #ifdef CONFIG_SLABINFO |
| 280 | extern const struct seq_operations slabinfo_op; | 291 | extern const struct seq_operations slabinfo_op; |
| 281 | ssize_t slabinfo_write(struct file *, const char __user *, size_t, loff_t *); | 292 | ssize_t slabinfo_write(struct file *, const char __user *, size_t, loff_t *); |
diff --git a/include/linux/spi/mmc_spi.h b/include/linux/spi/mmc_spi.h index e9bbe3ebd721..d5ca78b93a3b 100644 --- a/include/linux/spi/mmc_spi.h +++ b/include/linux/spi/mmc_spi.h | |||
| @@ -1,6 +1,8 @@ | |||
| 1 | #ifndef __LINUX_SPI_MMC_SPI_H | 1 | #ifndef __LINUX_SPI_MMC_SPI_H |
| 2 | #define __LINUX_SPI_MMC_SPI_H | 2 | #define __LINUX_SPI_MMC_SPI_H |
| 3 | 3 | ||
| 4 | #include <linux/interrupt.h> | ||
| 5 | |||
| 4 | struct device; | 6 | struct device; |
| 5 | struct mmc_host; | 7 | struct mmc_host; |
| 6 | 8 | ||
diff --git a/include/linux/ssb/ssb_driver_gige.h b/include/linux/ssb/ssb_driver_gige.h index 01fbdf5fef22..942e38736901 100644 --- a/include/linux/ssb/ssb_driver_gige.h +++ b/include/linux/ssb/ssb_driver_gige.h | |||
| @@ -100,7 +100,7 @@ extern char * nvram_get(const char *name); | |||
| 100 | /* Get the device MAC address */ | 100 | /* Get the device MAC address */ |
| 101 | static inline void ssb_gige_get_macaddr(struct pci_dev *pdev, u8 *macaddr) | 101 | static inline void ssb_gige_get_macaddr(struct pci_dev *pdev, u8 *macaddr) |
| 102 | { | 102 | { |
| 103 | #ifdef CONFIG_BCM947XX | 103 | #ifdef CONFIG_BCM47XX |
| 104 | char *res = nvram_get("et0macaddr"); | 104 | char *res = nvram_get("et0macaddr"); |
| 105 | if (res) | 105 | if (res) |
| 106 | memcpy(macaddr, res, 6); | 106 | memcpy(macaddr, res, 6); |
diff --git a/include/linux/tcp.h b/include/linux/tcp.h index 18e62e3d406f..b31b6b74aa28 100644 --- a/include/linux/tcp.h +++ b/include/linux/tcp.h | |||
| @@ -239,11 +239,6 @@ static inline struct tcp_request_sock *tcp_rsk(const struct request_sock *req) | |||
| 239 | return (struct tcp_request_sock *)req; | 239 | return (struct tcp_request_sock *)req; |
| 240 | } | 240 | } |
| 241 | 241 | ||
| 242 | struct tcp_deferred_accept_info { | ||
| 243 | struct sock *listen_sk; | ||
| 244 | struct request_sock *request; | ||
| 245 | }; | ||
| 246 | |||
| 247 | struct tcp_sock { | 242 | struct tcp_sock { |
| 248 | /* inet_connection_sock has to be the first member of tcp_sock */ | 243 | /* inet_connection_sock has to be the first member of tcp_sock */ |
| 249 | struct inet_connection_sock inet_conn; | 244 | struct inet_connection_sock inet_conn; |
| @@ -379,8 +374,6 @@ struct tcp_sock { | |||
| 379 | unsigned int keepalive_intvl; /* time interval between keep alive probes */ | 374 | unsigned int keepalive_intvl; /* time interval between keep alive probes */ |
| 380 | int linger2; | 375 | int linger2; |
| 381 | 376 | ||
| 382 | struct tcp_deferred_accept_info defer_tcp_accept; | ||
| 383 | |||
| 384 | unsigned long last_synq_overflow; | 377 | unsigned long last_synq_overflow; |
| 385 | 378 | ||
| 386 | u32 tso_deferred; | 379 | u32 tso_deferred; |
diff --git a/include/linux/time.h b/include/linux/time.h index d32ef0ad4c0a..e15206a7e82e 100644 --- a/include/linux/time.h +++ b/include/linux/time.h | |||
| @@ -6,6 +6,7 @@ | |||
| 6 | #ifdef __KERNEL__ | 6 | #ifdef __KERNEL__ |
| 7 | # include <linux/cache.h> | 7 | # include <linux/cache.h> |
| 8 | # include <linux/seqlock.h> | 8 | # include <linux/seqlock.h> |
| 9 | # include <linux/math64.h> | ||
| 9 | #endif | 10 | #endif |
| 10 | 11 | ||
| 11 | #ifndef _STRUCT_TIMESPEC | 12 | #ifndef _STRUCT_TIMESPEC |
| @@ -169,18 +170,13 @@ extern struct timeval ns_to_timeval(const s64 nsec); | |||
| 169 | * timespec_add_ns - Adds nanoseconds to a timespec | 170 | * timespec_add_ns - Adds nanoseconds to a timespec |
| 170 | * @a: pointer to timespec to be incremented | 171 | * @a: pointer to timespec to be incremented |
| 171 | * @ns: unsigned nanoseconds value to be added | 172 | * @ns: unsigned nanoseconds value to be added |
| 173 | * | ||
| 174 | * This must always be inlined because its used from the x86-64 vdso, | ||
| 175 | * which cannot call other kernel functions. | ||
| 172 | */ | 176 | */ |
| 173 | static inline void timespec_add_ns(struct timespec *a, u64 ns) | 177 | static __always_inline void timespec_add_ns(struct timespec *a, u64 ns) |
| 174 | { | 178 | { |
| 175 | ns += a->tv_nsec; | 179 | a->tv_sec += __iter_div_u64_rem(a->tv_nsec + ns, NSEC_PER_SEC, &ns); |
| 176 | while(unlikely(ns >= NSEC_PER_SEC)) { | ||
| 177 | /* The following asm() prevents the compiler from | ||
| 178 | * optimising this loop into a modulo operation. */ | ||
| 179 | asm("" : "+r"(ns)); | ||
| 180 | |||
| 181 | ns -= NSEC_PER_SEC; | ||
| 182 | a->tv_sec++; | ||
| 183 | } | ||
| 184 | a->tv_nsec = ns; | 180 | a->tv_nsec = ns; |
| 185 | } | 181 | } |
| 186 | #endif /* __KERNEL__ */ | 182 | #endif /* __KERNEL__ */ |
diff --git a/include/linux/topology.h b/include/linux/topology.h index 4bb7074a2c3a..24f3d2282e11 100644 --- a/include/linux/topology.h +++ b/include/linux/topology.h | |||
| @@ -166,7 +166,9 @@ void arch_update_cpu_topology(void); | |||
| 166 | .busy_idx = 3, \ | 166 | .busy_idx = 3, \ |
| 167 | .idle_idx = 3, \ | 167 | .idle_idx = 3, \ |
| 168 | .flags = SD_LOAD_BALANCE \ | 168 | .flags = SD_LOAD_BALANCE \ |
| 169 | | SD_SERIALIZE, \ | 169 | | SD_BALANCE_NEWIDLE \ |
| 170 | | SD_WAKE_AFFINE \ | ||
| 171 | | SD_SERIALIZE, \ | ||
| 170 | .last_balance = jiffies, \ | 172 | .last_balance = jiffies, \ |
| 171 | .balance_interval = 64, \ | 173 | .balance_interval = 64, \ |
| 172 | } | 174 | } |
diff --git a/include/linux/tty.h b/include/linux/tty.h index 7f7121f9c968..324a3b231d40 100644 --- a/include/linux/tty.h +++ b/include/linux/tty.h | |||
| @@ -36,7 +36,7 @@ | |||
| 36 | #define N_6PACK 7 | 36 | #define N_6PACK 7 |
| 37 | #define N_MASC 8 /* Reserved for Mobitex module <kaz@cafe.net> */ | 37 | #define N_MASC 8 /* Reserved for Mobitex module <kaz@cafe.net> */ |
| 38 | #define N_R3964 9 /* Reserved for Simatic R3964 module */ | 38 | #define N_R3964 9 /* Reserved for Simatic R3964 module */ |
| 39 | #define N_PROFIBUS_FDL 10 /* Reserved for Profibus <Dave@mvhi.com> */ | 39 | #define N_PROFIBUS_FDL 10 /* Reserved for Profibus */ |
| 40 | #define N_IRDA 11 /* Linux IrDa - http://irda.sourceforge.net/ */ | 40 | #define N_IRDA 11 /* Linux IrDa - http://irda.sourceforge.net/ */ |
| 41 | #define N_SMSBLOCK 12 /* SMS block mode - for talking to GSM data */ | 41 | #define N_SMSBLOCK 12 /* SMS block mode - for talking to GSM data */ |
| 42 | /* cards about SMS messages */ | 42 | /* cards about SMS messages */ |
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h index c1411189ba6c..4a535ea1e123 100644 --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h | |||
| @@ -865,9 +865,9 @@ struct v4l2_querymenu | |||
| 865 | #define V4L2_CID_HFLIP (V4L2_CID_BASE+20) | 865 | #define V4L2_CID_HFLIP (V4L2_CID_BASE+20) |
| 866 | #define V4L2_CID_VFLIP (V4L2_CID_BASE+21) | 866 | #define V4L2_CID_VFLIP (V4L2_CID_BASE+21) |
| 867 | 867 | ||
| 868 | /* Deprecated, use V4L2_CID_PAN_RESET and V4L2_CID_TILT_RESET */ | 868 | /* Deprecated; use V4L2_CID_PAN_RESET and V4L2_CID_TILT_RESET */ |
| 869 | #define V4L2_CID_HCENTER_DEPRECATED (V4L2_CID_BASE+22) | 869 | #define V4L2_CID_HCENTER (V4L2_CID_BASE+22) |
| 870 | #define V4L2_CID_VCENTER_DEPRECATED (V4L2_CID_BASE+23) | 870 | #define V4L2_CID_VCENTER (V4L2_CID_BASE+23) |
| 871 | 871 | ||
| 872 | #define V4L2_CID_POWER_LINE_FREQUENCY (V4L2_CID_BASE+24) | 872 | #define V4L2_CID_POWER_LINE_FREQUENCY (V4L2_CID_BASE+24) |
| 873 | enum v4l2_power_line_frequency { | 873 | enum v4l2_power_line_frequency { |
diff --git a/include/linux/virtio_blk.h b/include/linux/virtio_blk.h index d4695a3356d0..5f79a5f9de79 100644 --- a/include/linux/virtio_blk.h +++ b/include/linux/virtio_blk.h | |||
| @@ -10,18 +10,19 @@ | |||
| 10 | #define VIRTIO_BLK_F_SIZE_MAX 1 /* Indicates maximum segment size */ | 10 | #define VIRTIO_BLK_F_SIZE_MAX 1 /* Indicates maximum segment size */ |
| 11 | #define VIRTIO_BLK_F_SEG_MAX 2 /* Indicates maximum # of segments */ | 11 | #define VIRTIO_BLK_F_SEG_MAX 2 /* Indicates maximum # of segments */ |
| 12 | #define VIRTIO_BLK_F_GEOMETRY 4 /* Legacy geometry available */ | 12 | #define VIRTIO_BLK_F_GEOMETRY 4 /* Legacy geometry available */ |
| 13 | #define VIRTIO_BLK_F_RO 5 /* Disk is read-only */ | ||
| 13 | 14 | ||
| 14 | struct virtio_blk_config | 15 | struct virtio_blk_config |
| 15 | { | 16 | { |
| 16 | /* The capacity (in 512-byte sectors). */ | 17 | /* The capacity (in 512-byte sectors). */ |
| 17 | __le64 capacity; | 18 | __u64 capacity; |
| 18 | /* The maximum segment size (if VIRTIO_BLK_F_SIZE_MAX) */ | 19 | /* The maximum segment size (if VIRTIO_BLK_F_SIZE_MAX) */ |
| 19 | __le32 size_max; | 20 | __u32 size_max; |
| 20 | /* The maximum number of segments (if VIRTIO_BLK_F_SEG_MAX) */ | 21 | /* The maximum number of segments (if VIRTIO_BLK_F_SEG_MAX) */ |
| 21 | __le32 seg_max; | 22 | __u32 seg_max; |
| 22 | /* geometry the device (if VIRTIO_BLK_F_GEOMETRY) */ | 23 | /* geometry the device (if VIRTIO_BLK_F_GEOMETRY) */ |
| 23 | struct virtio_blk_geometry { | 24 | struct virtio_blk_geometry { |
| 24 | __le16 cylinders; | 25 | __u16 cylinders; |
| 25 | __u8 heads; | 26 | __u8 heads; |
| 26 | __u8 sectors; | 27 | __u8 sectors; |
| 27 | } geometry; | 28 | } geometry; |
diff --git a/include/linux/virtio_config.h b/include/linux/virtio_config.h index 50db245c81ad..f364bbf63c34 100644 --- a/include/linux/virtio_config.h +++ b/include/linux/virtio_config.h | |||
| @@ -15,6 +15,10 @@ | |||
| 15 | /* We've given up on this device. */ | 15 | /* We've given up on this device. */ |
| 16 | #define VIRTIO_CONFIG_S_FAILED 0x80 | 16 | #define VIRTIO_CONFIG_S_FAILED 0x80 |
| 17 | 17 | ||
| 18 | /* Do we get callbacks when the ring is completely used, even if we've | ||
| 19 | * suppressed them? */ | ||
| 20 | #define VIRTIO_F_NOTIFY_ON_EMPTY 24 | ||
| 21 | |||
| 18 | #ifdef __KERNEL__ | 22 | #ifdef __KERNEL__ |
| 19 | #include <linux/virtio.h> | 23 | #include <linux/virtio.h> |
| 20 | 24 | ||
| @@ -99,7 +103,7 @@ static inline bool virtio_has_feature(const struct virtio_device *vdev, | |||
| 99 | * The return value is -ENOENT if the feature doesn't exist. Otherwise | 103 | * The return value is -ENOENT if the feature doesn't exist. Otherwise |
| 100 | * the config value is copied into whatever is pointed to by v. */ | 104 | * the config value is copied into whatever is pointed to by v. */ |
| 101 | #define virtio_config_val(vdev, fbit, offset, v) \ | 105 | #define virtio_config_val(vdev, fbit, offset, v) \ |
| 102 | virtio_config_buf((vdev), (fbit), (offset), (v), sizeof(v)) | 106 | virtio_config_buf((vdev), (fbit), (offset), (v), sizeof(*v)) |
| 103 | 107 | ||
| 104 | static inline int virtio_config_buf(struct virtio_device *vdev, | 108 | static inline int virtio_config_buf(struct virtio_device *vdev, |
| 105 | unsigned int fbit, | 109 | unsigned int fbit, |
diff --git a/include/linux/virtio_net.h b/include/linux/virtio_net.h index 9405aa6cdf26..38c0571820fb 100644 --- a/include/linux/virtio_net.h +++ b/include/linux/virtio_net.h | |||
| @@ -38,7 +38,7 @@ struct virtio_net_hdr | |||
| 38 | #define VIRTIO_NET_HDR_GSO_ECN 0x80 // TCP has ECN set | 38 | #define VIRTIO_NET_HDR_GSO_ECN 0x80 // TCP has ECN set |
| 39 | __u8 gso_type; | 39 | __u8 gso_type; |
| 40 | __u16 hdr_len; /* Ethernet + IP + tcp/udp hdrs */ | 40 | __u16 hdr_len; /* Ethernet + IP + tcp/udp hdrs */ |
| 41 | __u16 gso_size; /* Bytes to append to gso_hdr_len per frame */ | 41 | __u16 gso_size; /* Bytes to append to hdr_len per frame */ |
| 42 | __u16 csum_start; /* Position to start checksumming from */ | 42 | __u16 csum_start; /* Position to start checksumming from */ |
| 43 | __u16 csum_offset; /* Offset after that to place checksum */ | 43 | __u16 csum_offset; /* Offset after that to place checksum */ |
| 44 | }; | 44 | }; |
diff --git a/include/linux/virtio_rng.h b/include/linux/virtio_rng.h new file mode 100644 index 000000000000..331afb6c9f62 --- /dev/null +++ b/include/linux/virtio_rng.h | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | #ifndef _LINUX_VIRTIO_RNG_H | ||
| 2 | #define _LINUX_VIRTIO_RNG_H | ||
| 3 | #include <linux/virtio_config.h> | ||
| 4 | |||
| 5 | /* The ID for virtio_rng */ | ||
| 6 | #define VIRTIO_ID_RNG 4 | ||
| 7 | |||
| 8 | #endif /* _LINUX_VIRTIO_RNG_H */ | ||
diff --git a/include/linux/wm97xx.h b/include/linux/wm97xx.h index 4d13732e9cf0..6f69968eab24 100644 --- a/include/linux/wm97xx.h +++ b/include/linux/wm97xx.h | |||
| @@ -100,6 +100,7 @@ | |||
| 100 | #define WM9713_ADCSEL_Y 0x0004 /* Y measurement */ | 100 | #define WM9713_ADCSEL_Y 0x0004 /* Y measurement */ |
| 101 | #define WM9713_ADCSEL_PRES 0x0008 /* Pressure measurement */ | 101 | #define WM9713_ADCSEL_PRES 0x0008 /* Pressure measurement */ |
| 102 | #define WM9713_COO 0x0001 /* enable coordinate mode */ | 102 | #define WM9713_COO 0x0001 /* enable coordinate mode */ |
| 103 | #define WM9713_45W 0x1000 /* set for 5 wire panel */ | ||
| 103 | #define WM9713_PDEN 0x0800 /* measure only when pen down */ | 104 | #define WM9713_PDEN 0x0800 /* measure only when pen down */ |
| 104 | #define WM9713_ADCSEL_MASK 0x00fe /* ADC selection mask */ | 105 | #define WM9713_ADCSEL_MASK 0x00fe /* ADC selection mask */ |
| 105 | #define WM9713_WAIT 0x0200 /* coordinate wait */ | 106 | #define WM9713_WAIT 0x0200 /* coordinate wait */ |
