diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/backing-dev.h | 2 | ||||
| -rw-r--r-- | include/linux/blkdev.h | 9 | ||||
| -rw-r--r-- | include/linux/drbd.h | 2 | ||||
| -rw-r--r-- | include/linux/edac_mce.h | 31 | ||||
| -rw-r--r-- | include/linux/fs.h | 2 | ||||
| -rw-r--r-- | include/linux/iocontext.h | 1 | ||||
| -rw-r--r-- | include/linux/mmc/sh_mmcif.h | 161 | ||||
| -rw-r--r-- | include/linux/module.h | 44 | ||||
| -rw-r--r-- | include/linux/pci.h | 1 | ||||
| -rw-r--r-- | include/linux/pci_ids.h | 52 | ||||
| -rw-r--r-- | include/linux/personality.h | 2 | ||||
| -rw-r--r-- | include/linux/pipe_fs_i.h | 4 | ||||
| -rw-r--r-- | include/linux/serial_sci.h | 4 | ||||
| -rw-r--r-- | include/linux/syscalls.h | 2 | ||||
| -rw-r--r-- | include/linux/usb/audio-v2.h | 31 | ||||
| -rw-r--r-- | include/linux/usb/audio.h | 90 | ||||
| -rw-r--r-- | include/linux/writeback.h | 10 | ||||
| -rw-r--r-- | include/media/rc-map.h | 3 | ||||
| -rw-r--r-- | include/media/soc_camera.h | 2 | ||||
| -rw-r--r-- | include/media/v4l2-mediabus.h | 21 | ||||
| -rw-r--r-- | include/media/v4l2-subdev.h | 2 | ||||
| -rw-r--r-- | include/net/dst.h | 6 |
22 files changed, 395 insertions, 87 deletions
diff --git a/include/linux/backing-dev.h b/include/linux/backing-dev.h index e6e0cb5437e6..aee5f6ce166e 100644 --- a/include/linux/backing-dev.h +++ b/include/linux/backing-dev.h | |||
| @@ -106,7 +106,7 @@ int bdi_register_dev(struct backing_dev_info *bdi, dev_t dev); | |||
| 106 | void bdi_unregister(struct backing_dev_info *bdi); | 106 | void bdi_unregister(struct backing_dev_info *bdi); |
| 107 | int bdi_setup_and_register(struct backing_dev_info *, char *, unsigned int); | 107 | int bdi_setup_and_register(struct backing_dev_info *, char *, unsigned int); |
| 108 | void bdi_start_writeback(struct backing_dev_info *bdi, struct super_block *sb, | 108 | void bdi_start_writeback(struct backing_dev_info *bdi, struct super_block *sb, |
| 109 | long nr_pages, int sb_locked); | 109 | long nr_pages); |
| 110 | int bdi_writeback_task(struct bdi_writeback *wb); | 110 | int bdi_writeback_task(struct bdi_writeback *wb); |
| 111 | int bdi_has_dirty_io(struct backing_dev_info *bdi); | 111 | int bdi_has_dirty_io(struct backing_dev_info *bdi); |
| 112 | void bdi_arm_supers_timer(void); | 112 | void bdi_arm_supers_timer(void); |
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index 8b7f5e0914ad..09a840264d6f 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h | |||
| @@ -1211,14 +1211,23 @@ struct work_struct; | |||
| 1211 | int kblockd_schedule_work(struct request_queue *q, struct work_struct *work); | 1211 | int kblockd_schedule_work(struct request_queue *q, struct work_struct *work); |
| 1212 | 1212 | ||
| 1213 | #ifdef CONFIG_BLK_CGROUP | 1213 | #ifdef CONFIG_BLK_CGROUP |
| 1214 | /* | ||
| 1215 | * This should not be using sched_clock(). A real patch is in progress | ||
| 1216 | * to fix this up, until that is in place we need to disable preemption | ||
| 1217 | * around sched_clock() in this function and set_io_start_time_ns(). | ||
| 1218 | */ | ||
| 1214 | static inline void set_start_time_ns(struct request *req) | 1219 | static inline void set_start_time_ns(struct request *req) |
| 1215 | { | 1220 | { |
| 1221 | preempt_disable(); | ||
| 1216 | req->start_time_ns = sched_clock(); | 1222 | req->start_time_ns = sched_clock(); |
| 1223 | preempt_enable(); | ||
| 1217 | } | 1224 | } |
| 1218 | 1225 | ||
| 1219 | static inline void set_io_start_time_ns(struct request *req) | 1226 | static inline void set_io_start_time_ns(struct request *req) |
| 1220 | { | 1227 | { |
| 1228 | preempt_disable(); | ||
| 1221 | req->io_start_time_ns = sched_clock(); | 1229 | req->io_start_time_ns = sched_clock(); |
| 1230 | preempt_enable(); | ||
| 1222 | } | 1231 | } |
| 1223 | 1232 | ||
| 1224 | static inline uint64_t rq_start_time_ns(struct request *req) | 1233 | static inline uint64_t rq_start_time_ns(struct request *req) |
diff --git a/include/linux/drbd.h b/include/linux/drbd.h index 68530521ad00..30da4ae48972 100644 --- a/include/linux/drbd.h +++ b/include/linux/drbd.h | |||
| @@ -53,7 +53,7 @@ | |||
| 53 | 53 | ||
| 54 | 54 | ||
| 55 | extern const char *drbd_buildtag(void); | 55 | extern const char *drbd_buildtag(void); |
| 56 | #define REL_VERSION "8.3.8rc1" | 56 | #define REL_VERSION "8.3.8rc2" |
| 57 | #define API_VERSION 88 | 57 | #define API_VERSION 88 |
| 58 | #define PRO_VERSION_MIN 86 | 58 | #define PRO_VERSION_MIN 86 |
| 59 | #define PRO_VERSION_MAX 94 | 59 | #define PRO_VERSION_MAX 94 |
diff --git a/include/linux/edac_mce.h b/include/linux/edac_mce.h new file mode 100644 index 000000000000..f974fc035363 --- /dev/null +++ b/include/linux/edac_mce.h | |||
| @@ -0,0 +1,31 @@ | |||
| 1 | /* Provides edac interface to mcelog events | ||
| 2 | * | ||
| 3 | * This file may be distributed under the terms of the | ||
| 4 | * GNU General Public License version 2. | ||
| 5 | * | ||
| 6 | * Copyright (c) 2009 by: | ||
| 7 | * Mauro Carvalho Chehab <mchehab@redhat.com> | ||
| 8 | * | ||
| 9 | * Red Hat Inc. http://www.redhat.com | ||
| 10 | */ | ||
| 11 | |||
| 12 | #if defined(CONFIG_EDAC_MCE) || \ | ||
| 13 | (defined(CONFIG_EDAC_MCE_MODULE) && defined(MODULE)) | ||
| 14 | |||
| 15 | #include <asm/mce.h> | ||
| 16 | #include <linux/list.h> | ||
| 17 | |||
| 18 | struct edac_mce { | ||
| 19 | struct list_head list; | ||
| 20 | |||
| 21 | void *priv; | ||
| 22 | int (*check_error)(void *priv, struct mce *mce); | ||
| 23 | }; | ||
| 24 | |||
| 25 | int edac_mce_register(struct edac_mce *edac_mce); | ||
| 26 | void edac_mce_unregister(struct edac_mce *edac_mce); | ||
| 27 | int edac_mce_parse(struct mce *mce); | ||
| 28 | |||
| 29 | #else | ||
| 30 | #define edac_mce_parse(mce) (0) | ||
| 31 | #endif | ||
diff --git a/include/linux/fs.h b/include/linux/fs.h index 3428393942a6..471e1ff5079a 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
| @@ -2388,7 +2388,7 @@ extern const struct file_operations simple_dir_operations; | |||
| 2388 | extern const struct inode_operations simple_dir_inode_operations; | 2388 | extern const struct inode_operations simple_dir_inode_operations; |
| 2389 | struct tree_descr { char *name; const struct file_operations *ops; int mode; }; | 2389 | struct tree_descr { char *name; const struct file_operations *ops; int mode; }; |
| 2390 | struct dentry *d_alloc_name(struct dentry *, const char *); | 2390 | struct dentry *d_alloc_name(struct dentry *, const char *); |
| 2391 | extern int simple_fill_super(struct super_block *, int, struct tree_descr *); | 2391 | extern int simple_fill_super(struct super_block *, unsigned long, struct tree_descr *); |
| 2392 | extern int simple_pin_fs(struct file_system_type *, struct vfsmount **mount, int *count); | 2392 | extern int simple_pin_fs(struct file_system_type *, struct vfsmount **mount, int *count); |
| 2393 | extern void simple_release_fs(struct vfsmount **mount, int *count); | 2393 | extern void simple_release_fs(struct vfsmount **mount, int *count); |
| 2394 | 2394 | ||
diff --git a/include/linux/iocontext.h b/include/linux/iocontext.h index a0bb301afac0..64d529133031 100644 --- a/include/linux/iocontext.h +++ b/include/linux/iocontext.h | |||
| @@ -7,7 +7,6 @@ | |||
| 7 | struct cfq_queue; | 7 | struct cfq_queue; |
| 8 | struct cfq_io_context { | 8 | struct cfq_io_context { |
| 9 | void *key; | 9 | void *key; |
| 10 | unsigned long dead_key; | ||
| 11 | 10 | ||
| 12 | struct cfq_queue *cfqq[2]; | 11 | struct cfq_queue *cfqq[2]; |
| 13 | 12 | ||
diff --git a/include/linux/mmc/sh_mmcif.h b/include/linux/mmc/sh_mmcif.h index aafe832f18aa..d4a2ebbdab4b 100644 --- a/include/linux/mmc/sh_mmcif.h +++ b/include/linux/mmc/sh_mmcif.h | |||
| @@ -14,6 +14,9 @@ | |||
| 14 | #ifndef __SH_MMCIF_H__ | 14 | #ifndef __SH_MMCIF_H__ |
| 15 | #define __SH_MMCIF_H__ | 15 | #define __SH_MMCIF_H__ |
| 16 | 16 | ||
| 17 | #include <linux/platform_device.h> | ||
| 18 | #include <linux/io.h> | ||
| 19 | |||
| 17 | /* | 20 | /* |
| 18 | * MMCIF : CE_CLK_CTRL [19:16] | 21 | * MMCIF : CE_CLK_CTRL [19:16] |
| 19 | * 1000 : Peripheral clock / 512 | 22 | * 1000 : Peripheral clock / 512 |
| @@ -36,4 +39,162 @@ struct sh_mmcif_plat_data { | |||
| 36 | u32 ocr; | 39 | u32 ocr; |
| 37 | }; | 40 | }; |
| 38 | 41 | ||
| 42 | #define MMCIF_CE_CMD_SET 0x00000000 | ||
| 43 | #define MMCIF_CE_ARG 0x00000008 | ||
| 44 | #define MMCIF_CE_ARG_CMD12 0x0000000C | ||
| 45 | #define MMCIF_CE_CMD_CTRL 0x00000010 | ||
| 46 | #define MMCIF_CE_BLOCK_SET 0x00000014 | ||
| 47 | #define MMCIF_CE_CLK_CTRL 0x00000018 | ||
| 48 | #define MMCIF_CE_BUF_ACC 0x0000001C | ||
| 49 | #define MMCIF_CE_RESP3 0x00000020 | ||
| 50 | #define MMCIF_CE_RESP2 0x00000024 | ||
| 51 | #define MMCIF_CE_RESP1 0x00000028 | ||
| 52 | #define MMCIF_CE_RESP0 0x0000002C | ||
| 53 | #define MMCIF_CE_RESP_CMD12 0x00000030 | ||
| 54 | #define MMCIF_CE_DATA 0x00000034 | ||
| 55 | #define MMCIF_CE_INT 0x00000040 | ||
| 56 | #define MMCIF_CE_INT_MASK 0x00000044 | ||
| 57 | #define MMCIF_CE_HOST_STS1 0x00000048 | ||
| 58 | #define MMCIF_CE_HOST_STS2 0x0000004C | ||
| 59 | #define MMCIF_CE_VERSION 0x0000007C | ||
| 60 | |||
| 61 | extern inline u32 sh_mmcif_readl(void __iomem *addr, int reg) | ||
| 62 | { | ||
| 63 | return readl(addr + reg); | ||
| 64 | } | ||
| 65 | |||
| 66 | extern inline void sh_mmcif_writel(void __iomem *addr, int reg, u32 val) | ||
| 67 | { | ||
| 68 | writel(val, addr + reg); | ||
| 69 | } | ||
| 70 | |||
| 71 | #define SH_MMCIF_BBS 512 /* boot block size */ | ||
| 72 | |||
| 73 | extern inline void sh_mmcif_boot_cmd_send(void __iomem *base, | ||
| 74 | unsigned long cmd, unsigned long arg) | ||
| 75 | { | ||
| 76 | sh_mmcif_writel(base, MMCIF_CE_INT, 0); | ||
| 77 | sh_mmcif_writel(base, MMCIF_CE_ARG, arg); | ||
| 78 | sh_mmcif_writel(base, MMCIF_CE_CMD_SET, cmd); | ||
| 79 | } | ||
| 80 | |||
| 81 | extern inline int sh_mmcif_boot_cmd_poll(void __iomem *base, unsigned long mask) | ||
| 82 | { | ||
| 83 | unsigned long tmp; | ||
| 84 | int cnt; | ||
| 85 | |||
| 86 | for (cnt = 0; cnt < 1000000; cnt++) { | ||
| 87 | tmp = sh_mmcif_readl(base, MMCIF_CE_INT); | ||
| 88 | if (tmp & mask) { | ||
| 89 | sh_mmcif_writel(base, MMCIF_CE_INT, tmp & ~mask); | ||
| 90 | return 0; | ||
| 91 | } | ||
| 92 | } | ||
| 93 | |||
| 94 | return -1; | ||
| 95 | } | ||
| 96 | |||
| 97 | extern inline int sh_mmcif_boot_cmd(void __iomem *base, | ||
| 98 | unsigned long cmd, unsigned long arg) | ||
| 99 | { | ||
| 100 | sh_mmcif_boot_cmd_send(base, cmd, arg); | ||
| 101 | return sh_mmcif_boot_cmd_poll(base, 0x00010000); | ||
| 102 | } | ||
| 103 | |||
| 104 | extern inline int sh_mmcif_boot_do_read_single(void __iomem *base, | ||
| 105 | unsigned int block_nr, | ||
| 106 | unsigned long *buf) | ||
| 107 | { | ||
| 108 | int k; | ||
| 109 | |||
| 110 | /* CMD13 - Status */ | ||
| 111 | sh_mmcif_boot_cmd(base, 0x0d400000, 0x00010000); | ||
| 112 | |||
| 113 | if (sh_mmcif_readl(base, MMCIF_CE_RESP0) != 0x0900) | ||
| 114 | return -1; | ||
| 115 | |||
| 116 | /* CMD17 - Read */ | ||
| 117 | sh_mmcif_boot_cmd(base, 0x11480000, block_nr * SH_MMCIF_BBS); | ||
| 118 | if (sh_mmcif_boot_cmd_poll(base, 0x00100000) < 0) | ||
| 119 | return -1; | ||
| 120 | |||
| 121 | for (k = 0; k < (SH_MMCIF_BBS / 4); k++) | ||
| 122 | buf[k] = sh_mmcif_readl(base, MMCIF_CE_DATA); | ||
| 123 | |||
| 124 | return 0; | ||
| 125 | } | ||
| 126 | |||
| 127 | extern inline int sh_mmcif_boot_do_read(void __iomem *base, | ||
| 128 | unsigned long first_block, | ||
| 129 | unsigned long nr_blocks, | ||
| 130 | void *buf) | ||
| 131 | { | ||
| 132 | unsigned long k; | ||
| 133 | int ret = 0; | ||
| 134 | |||
| 135 | /* CMD16 - Set the block size */ | ||
| 136 | sh_mmcif_boot_cmd(base, 0x10400000, SH_MMCIF_BBS); | ||
| 137 | |||
| 138 | for (k = 0; !ret && k < nr_blocks; k++) | ||
| 139 | ret = sh_mmcif_boot_do_read_single(base, first_block + k, | ||
| 140 | buf + (k * SH_MMCIF_BBS)); | ||
| 141 | |||
| 142 | return ret; | ||
| 143 | } | ||
| 144 | |||
| 145 | extern inline void sh_mmcif_boot_init(void __iomem *base) | ||
| 146 | { | ||
| 147 | unsigned long tmp; | ||
| 148 | |||
| 149 | /* reset */ | ||
| 150 | tmp = sh_mmcif_readl(base, MMCIF_CE_VERSION); | ||
| 151 | sh_mmcif_writel(base, MMCIF_CE_VERSION, tmp | 0x80000000); | ||
| 152 | sh_mmcif_writel(base, MMCIF_CE_VERSION, tmp & ~0x80000000); | ||
| 153 | |||
| 154 | /* byte swap */ | ||
| 155 | sh_mmcif_writel(base, MMCIF_CE_BUF_ACC, 0x00010000); | ||
| 156 | |||
| 157 | /* Set block size in MMCIF hardware */ | ||
| 158 | sh_mmcif_writel(base, MMCIF_CE_BLOCK_SET, SH_MMCIF_BBS); | ||
| 159 | |||
| 160 | /* Enable the clock, set it to Bus clock/256 (about 325Khz)*/ | ||
| 161 | sh_mmcif_writel(base, MMCIF_CE_CLK_CTRL, 0x01072fff); | ||
| 162 | |||
| 163 | /* CMD0 */ | ||
| 164 | sh_mmcif_boot_cmd(base, 0x00000040, 0); | ||
| 165 | |||
| 166 | /* CMD1 - Get OCR */ | ||
| 167 | do { | ||
| 168 | sh_mmcif_boot_cmd(base, 0x01405040, 0x40300000); /* CMD1 */ | ||
| 169 | } while ((sh_mmcif_readl(base, MMCIF_CE_RESP0) & 0x80000000) | ||
| 170 | != 0x80000000); | ||
| 171 | |||
| 172 | /* CMD2 - Get CID */ | ||
| 173 | sh_mmcif_boot_cmd(base, 0x02806040, 0); | ||
| 174 | |||
| 175 | /* CMD3 - Set card relative address */ | ||
| 176 | sh_mmcif_boot_cmd(base, 0x03400040, 0x00010000); | ||
| 177 | } | ||
| 178 | |||
| 179 | extern inline void sh_mmcif_boot_slurp(void __iomem *base, | ||
| 180 | unsigned char *buf, | ||
| 181 | unsigned long no_bytes) | ||
| 182 | { | ||
| 183 | unsigned long tmp; | ||
| 184 | |||
| 185 | /* In data transfer mode: Set clock to Bus clock/4 (about 20Mhz) */ | ||
| 186 | sh_mmcif_writel(base, MMCIF_CE_CLK_CTRL, 0x01012fff); | ||
| 187 | |||
| 188 | /* CMD9 - Get CSD */ | ||
| 189 | sh_mmcif_boot_cmd(base, 0x09806000, 0x00010000); | ||
| 190 | |||
| 191 | /* CMD7 - Select the card */ | ||
| 192 | sh_mmcif_boot_cmd(base, 0x07400000, 0x00010000); | ||
| 193 | |||
| 194 | tmp = no_bytes / SH_MMCIF_BBS; | ||
| 195 | tmp += (no_bytes % SH_MMCIF_BBS) ? 1 : 0; | ||
| 196 | |||
| 197 | sh_mmcif_boot_do_read(base, 512, tmp, buf); | ||
| 198 | } | ||
| 199 | |||
| 39 | #endif /* __SH_MMCIF_H__ */ | 200 | #endif /* __SH_MMCIF_H__ */ |
diff --git a/include/linux/module.h b/include/linux/module.h index 6914fcad4673..8a6b9fdc7ffa 100644 --- a/include/linux/module.h +++ b/include/linux/module.h | |||
| @@ -181,6 +181,13 @@ void *__symbol_get(const char *symbol); | |||
| 181 | void *__symbol_get_gpl(const char *symbol); | 181 | void *__symbol_get_gpl(const char *symbol); |
| 182 | #define symbol_get(x) ((typeof(&x))(__symbol_get(MODULE_SYMBOL_PREFIX #x))) | 182 | #define symbol_get(x) ((typeof(&x))(__symbol_get(MODULE_SYMBOL_PREFIX #x))) |
| 183 | 183 | ||
| 184 | /* modules using other modules: kdb wants to see this. */ | ||
| 185 | struct module_use { | ||
| 186 | struct list_head source_list; | ||
| 187 | struct list_head target_list; | ||
| 188 | struct module *source, *target; | ||
| 189 | }; | ||
| 190 | |||
| 184 | #ifndef __GENKSYMS__ | 191 | #ifndef __GENKSYMS__ |
| 185 | #ifdef CONFIG_MODVERSIONS | 192 | #ifdef CONFIG_MODVERSIONS |
| 186 | /* Mark the CRC weak since genksyms apparently decides not to | 193 | /* Mark the CRC weak since genksyms apparently decides not to |
| @@ -359,7 +366,9 @@ struct module | |||
| 359 | 366 | ||
| 360 | #ifdef CONFIG_MODULE_UNLOAD | 367 | #ifdef CONFIG_MODULE_UNLOAD |
| 361 | /* What modules depend on me? */ | 368 | /* What modules depend on me? */ |
| 362 | struct list_head modules_which_use_me; | 369 | struct list_head source_list; |
| 370 | /* What modules do I depend on? */ | ||
| 371 | struct list_head target_list; | ||
| 363 | 372 | ||
| 364 | /* Who is waiting for us to be unloaded */ | 373 | /* Who is waiting for us to be unloaded */ |
| 365 | struct task_struct *waiter; | 374 | struct task_struct *waiter; |
| @@ -663,43 +672,10 @@ static inline int module_get_iter_tracepoints(struct tracepoint_iter *iter) | |||
| 663 | 672 | ||
| 664 | #endif /* CONFIG_MODULES */ | 673 | #endif /* CONFIG_MODULES */ |
| 665 | 674 | ||
| 666 | struct device_driver; | ||
| 667 | #ifdef CONFIG_SYSFS | 675 | #ifdef CONFIG_SYSFS |
| 668 | struct module; | ||
| 669 | |||
| 670 | extern struct kset *module_kset; | 676 | extern struct kset *module_kset; |
| 671 | extern struct kobj_type module_ktype; | 677 | extern struct kobj_type module_ktype; |
| 672 | extern int module_sysfs_initialized; | 678 | extern int module_sysfs_initialized; |
| 673 | |||
| 674 | int mod_sysfs_init(struct module *mod); | ||
| 675 | int mod_sysfs_setup(struct module *mod, | ||
| 676 | struct kernel_param *kparam, | ||
| 677 | unsigned int num_params); | ||
| 678 | int module_add_modinfo_attrs(struct module *mod); | ||
| 679 | void module_remove_modinfo_attrs(struct module *mod); | ||
| 680 | |||
| 681 | #else /* !CONFIG_SYSFS */ | ||
| 682 | |||
| 683 | static inline int mod_sysfs_init(struct module *mod) | ||
| 684 | { | ||
| 685 | return 0; | ||
| 686 | } | ||
| 687 | |||
| 688 | static inline int mod_sysfs_setup(struct module *mod, | ||
| 689 | struct kernel_param *kparam, | ||
| 690 | unsigned int num_params) | ||
| 691 | { | ||
| 692 | return 0; | ||
| 693 | } | ||
| 694 | |||
| 695 | static inline int module_add_modinfo_attrs(struct module *mod) | ||
| 696 | { | ||
| 697 | return 0; | ||
| 698 | } | ||
| 699 | |||
| 700 | static inline void module_remove_modinfo_attrs(struct module *mod) | ||
| 701 | { } | ||
| 702 | |||
| 703 | #endif /* CONFIG_SYSFS */ | 679 | #endif /* CONFIG_SYSFS */ |
| 704 | 680 | ||
| 705 | #define symbol_request(x) try_then_request_module(symbol_get(x), "symbol:" #x) | 681 | #define symbol_request(x) try_then_request_module(symbol_get(x), "symbol:" #x) |
diff --git a/include/linux/pci.h b/include/linux/pci.h index 6a471aba3b07..7cb00845f150 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h | |||
| @@ -632,6 +632,7 @@ void pci_fixup_cardbus(struct pci_bus *); | |||
| 632 | 632 | ||
| 633 | /* Generic PCI functions used internally */ | 633 | /* Generic PCI functions used internally */ |
| 634 | 634 | ||
| 635 | void pcibios_scan_specific_bus(int busn); | ||
| 635 | extern struct pci_bus *pci_find_bus(int domain, int busnr); | 636 | extern struct pci_bus *pci_find_bus(int domain, int busnr); |
| 636 | void pci_bus_add_devices(const struct pci_bus *bus); | 637 | void pci_bus_add_devices(const struct pci_bus *bus); |
| 637 | struct pci_bus *pci_scan_bus_parented(struct device *parent, int bus, | 638 | struct pci_bus *pci_scan_bus_parented(struct device *parent, int bus, |
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index ae66851870be..f149dd10908b 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h | |||
| @@ -2532,11 +2532,63 @@ | |||
| 2532 | #define PCI_DEVICE_ID_INTEL_ICH9_6 0x2930 | 2532 | #define PCI_DEVICE_ID_INTEL_ICH9_6 0x2930 |
| 2533 | #define PCI_DEVICE_ID_INTEL_ICH9_7 0x2916 | 2533 | #define PCI_DEVICE_ID_INTEL_ICH9_7 0x2916 |
| 2534 | #define PCI_DEVICE_ID_INTEL_ICH9_8 0x2918 | 2534 | #define PCI_DEVICE_ID_INTEL_ICH9_8 0x2918 |
| 2535 | #define PCI_DEVICE_ID_INTEL_I7_MCR 0x2c18 | ||
| 2536 | #define PCI_DEVICE_ID_INTEL_I7_MC_TAD 0x2c19 | ||
| 2537 | #define PCI_DEVICE_ID_INTEL_I7_MC_RAS 0x2c1a | ||
| 2538 | #define PCI_DEVICE_ID_INTEL_I7_MC_TEST 0x2c1c | ||
| 2539 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH0_CTRL 0x2c20 | ||
| 2540 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH0_ADDR 0x2c21 | ||
| 2541 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH0_RANK 0x2c22 | ||
| 2542 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH0_TC 0x2c23 | ||
| 2543 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH1_CTRL 0x2c28 | ||
| 2544 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH1_ADDR 0x2c29 | ||
| 2545 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH1_RANK 0x2c2a | ||
| 2546 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH1_TC 0x2c2b | ||
| 2547 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH2_CTRL 0x2c30 | ||
| 2548 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH2_ADDR 0x2c31 | ||
| 2549 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH2_RANK 0x2c32 | ||
| 2550 | #define PCI_DEVICE_ID_INTEL_I7_MC_CH2_TC 0x2c33 | ||
| 2551 | #define PCI_DEVICE_ID_INTEL_I7_NONCORE 0x2c41 | ||
| 2552 | #define PCI_DEVICE_ID_INTEL_I7_NONCORE_ALT 0x2c40 | ||
| 2553 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_NONCORE 0x2c50 | ||
| 2554 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_NONCORE_ALT 0x2c51 | ||
| 2555 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_NONCORE_REV2 0x2c70 | ||
| 2556 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_SAD 0x2c81 | ||
| 2557 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_QPI_LINK0 0x2c90 | ||
| 2558 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_QPI_PHY0 0x2c91 | ||
| 2559 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MCR 0x2c98 | ||
| 2560 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_TAD 0x2c99 | ||
| 2561 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_TEST 0x2c9C | ||
| 2562 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH0_CTRL 0x2ca0 | ||
| 2563 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH0_ADDR 0x2ca1 | ||
| 2564 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH0_RANK 0x2ca2 | ||
| 2565 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH0_TC 0x2ca3 | ||
| 2566 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH1_CTRL 0x2ca8 | ||
| 2567 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH1_ADDR 0x2ca9 | ||
| 2568 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH1_RANK 0x2caa | ||
| 2569 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH1_TC 0x2cab | ||
| 2570 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MCR_REV2 0x2d98 | ||
| 2571 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_TAD_REV2 0x2d99 | ||
| 2572 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_RAS_REV2 0x2d9a | ||
| 2573 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_TEST_REV2 0x2d9c | ||
| 2574 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH0_CTRL_REV2 0x2da0 | ||
| 2575 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH0_ADDR_REV2 0x2da1 | ||
| 2576 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH0_RANK_REV2 0x2da2 | ||
| 2577 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH0_TC_REV2 0x2da3 | ||
| 2578 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH1_CTRL_REV2 0x2da8 | ||
| 2579 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH1_ADDR_REV2 0x2da9 | ||
| 2580 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH1_RANK_REV2 0x2daa | ||
| 2581 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH1_TC_REV2 0x2dab | ||
| 2582 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH2_CTRL_REV2 0x2db0 | ||
| 2583 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH2_ADDR_REV2 0x2db1 | ||
| 2584 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH2_RANK_REV2 0x2db2 | ||
| 2585 | #define PCI_DEVICE_ID_INTEL_LYNNFIELD_MC_CH2_TC_REV2 0x2db3 | ||
| 2535 | #define PCI_DEVICE_ID_INTEL_82855PM_HB 0x3340 | 2586 | #define PCI_DEVICE_ID_INTEL_82855PM_HB 0x3340 |
| 2536 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG4 0x3429 | 2587 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG4 0x3429 |
| 2537 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG5 0x342a | 2588 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG5 0x342a |
| 2538 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG6 0x342b | 2589 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG6 0x342b |
| 2539 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG7 0x342c | 2590 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG7 0x342c |
| 2591 | #define PCI_DEVICE_ID_INTEL_X58_HUB_MGMT 0x342e | ||
| 2540 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG0 0x3430 | 2592 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG0 0x3430 |
| 2541 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG1 0x3431 | 2593 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG1 0x3431 |
| 2542 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG2 0x3432 | 2594 | #define PCI_DEVICE_ID_INTEL_IOAT_TBG2 0x3432 |
diff --git a/include/linux/personality.h b/include/linux/personality.h index 126120819a0d..eec3bae164d4 100644 --- a/include/linux/personality.h +++ b/include/linux/personality.h | |||
| @@ -12,7 +12,7 @@ struct pt_regs; | |||
| 12 | 12 | ||
| 13 | extern int register_exec_domain(struct exec_domain *); | 13 | extern int register_exec_domain(struct exec_domain *); |
| 14 | extern int unregister_exec_domain(struct exec_domain *); | 14 | extern int unregister_exec_domain(struct exec_domain *); |
| 15 | extern int __set_personality(unsigned long); | 15 | extern int __set_personality(unsigned int); |
| 16 | 16 | ||
| 17 | #endif /* __KERNEL__ */ | 17 | #endif /* __KERNEL__ */ |
| 18 | 18 | ||
diff --git a/include/linux/pipe_fs_i.h b/include/linux/pipe_fs_i.h index 16de3933c45e..445796945ac9 100644 --- a/include/linux/pipe_fs_i.h +++ b/include/linux/pipe_fs_i.h | |||
| @@ -139,7 +139,9 @@ void pipe_lock(struct pipe_inode_info *); | |||
| 139 | void pipe_unlock(struct pipe_inode_info *); | 139 | void pipe_unlock(struct pipe_inode_info *); |
| 140 | void pipe_double_lock(struct pipe_inode_info *, struct pipe_inode_info *); | 140 | void pipe_double_lock(struct pipe_inode_info *, struct pipe_inode_info *); |
| 141 | 141 | ||
| 142 | extern unsigned int pipe_max_pages; | 142 | extern unsigned int pipe_max_size, pipe_min_size; |
| 143 | int pipe_proc_fn(struct ctl_table *, int, void __user *, size_t *, loff_t *); | ||
| 144 | |||
| 143 | 145 | ||
| 144 | /* Drop the inode semaphore and wait for a pipe event, atomically */ | 146 | /* Drop the inode semaphore and wait for a pipe event, atomically */ |
| 145 | void pipe_wait(struct pipe_inode_info *pipe); | 147 | void pipe_wait(struct pipe_inode_info *pipe); |
diff --git a/include/linux/serial_sci.h b/include/linux/serial_sci.h index f5364a1de68b..baed2122c5a6 100644 --- a/include/linux/serial_sci.h +++ b/include/linux/serial_sci.h | |||
| @@ -2,9 +2,7 @@ | |||
| 2 | #define __LINUX_SERIAL_SCI_H | 2 | #define __LINUX_SERIAL_SCI_H |
| 3 | 3 | ||
| 4 | #include <linux/serial_core.h> | 4 | #include <linux/serial_core.h> |
| 5 | #ifdef CONFIG_SERIAL_SH_SCI_DMA | 5 | #include <linux/sh_dma.h> |
| 6 | #include <asm/dmaengine.h> | ||
| 7 | #endif | ||
| 8 | 6 | ||
| 9 | /* | 7 | /* |
| 10 | * Generic header for SuperH SCI(F) (used by sh/sh64/h8300 and related parts) | 8 | * Generic header for SuperH SCI(F) (used by sh/sh64/h8300 and related parts) |
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index a1a86a53bc73..7f614ce274a9 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h | |||
| @@ -289,7 +289,7 @@ asmlinkage long sys_capget(cap_user_header_t header, | |||
| 289 | cap_user_data_t dataptr); | 289 | cap_user_data_t dataptr); |
| 290 | asmlinkage long sys_capset(cap_user_header_t header, | 290 | asmlinkage long sys_capset(cap_user_header_t header, |
| 291 | const cap_user_data_t data); | 291 | const cap_user_data_t data); |
| 292 | asmlinkage long sys_personality(u_long personality); | 292 | asmlinkage long sys_personality(unsigned int personality); |
| 293 | 293 | ||
| 294 | asmlinkage long sys_sigpending(old_sigset_t __user *set); | 294 | asmlinkage long sys_sigpending(old_sigset_t __user *set); |
| 295 | asmlinkage long sys_sigprocmask(int how, old_sigset_t __user *set, | 295 | asmlinkage long sys_sigprocmask(int how, old_sigset_t __user *set, |
diff --git a/include/linux/usb/audio-v2.h b/include/linux/usb/audio-v2.h index 92f1d99f0f17..383b94ba8c20 100644 --- a/include/linux/usb/audio-v2.h +++ b/include/linux/usb/audio-v2.h | |||
| @@ -18,6 +18,16 @@ | |||
| 18 | /* v1.0 and v2.0 of this standard have many things in common. For the rest | 18 | /* v1.0 and v2.0 of this standard have many things in common. For the rest |
| 19 | * of the definitions, please refer to audio.h */ | 19 | * of the definitions, please refer to audio.h */ |
| 20 | 20 | ||
| 21 | static inline bool uac2_control_is_readable(u32 bmControls, u8 control) | ||
| 22 | { | ||
| 23 | return (bmControls >> (control * 2)) & 0x1; | ||
| 24 | } | ||
| 25 | |||
| 26 | static inline bool uac2_control_is_writeable(u32 bmControls, u8 control) | ||
| 27 | { | ||
| 28 | return (bmControls >> (control * 2)) & 0x2; | ||
| 29 | } | ||
| 30 | |||
| 21 | /* 4.7.2.1 Clock Source Descriptor */ | 31 | /* 4.7.2.1 Clock Source Descriptor */ |
| 22 | 32 | ||
| 23 | struct uac_clock_source_descriptor { | 33 | struct uac_clock_source_descriptor { |
| @@ -31,6 +41,13 @@ struct uac_clock_source_descriptor { | |||
| 31 | __u8 iClockSource; | 41 | __u8 iClockSource; |
| 32 | } __attribute__((packed)); | 42 | } __attribute__((packed)); |
| 33 | 43 | ||
| 44 | /* bmAttribute fields */ | ||
| 45 | #define UAC_CLOCK_SOURCE_TYPE_EXT 0x0 | ||
| 46 | #define UAC_CLOCK_SOURCE_TYPE_INT_FIXED 0x1 | ||
| 47 | #define UAC_CLOCK_SOURCE_TYPE_INT_VAR 0x2 | ||
| 48 | #define UAC_CLOCK_SOURCE_TYPE_INT_PROG 0x3 | ||
| 49 | #define UAC_CLOCK_SOURCE_SYNCED_TO_SOF (1 << 2) | ||
| 50 | |||
| 34 | /* 4.7.2.2 Clock Source Descriptor */ | 51 | /* 4.7.2.2 Clock Source Descriptor */ |
| 35 | 52 | ||
| 36 | struct uac_clock_selector_descriptor { | 53 | struct uac_clock_selector_descriptor { |
| @@ -39,8 +56,20 @@ struct uac_clock_selector_descriptor { | |||
| 39 | __u8 bDescriptorSubtype; | 56 | __u8 bDescriptorSubtype; |
| 40 | __u8 bClockID; | 57 | __u8 bClockID; |
| 41 | __u8 bNrInPins; | 58 | __u8 bNrInPins; |
| 42 | __u8 bmControls; | ||
| 43 | __u8 baCSourceID[]; | 59 | __u8 baCSourceID[]; |
| 60 | /* bmControls, bAssocTerminal and iClockSource omitted */ | ||
| 61 | } __attribute__((packed)); | ||
| 62 | |||
| 63 | /* 4.7.2.3 Clock Multiplier Descriptor */ | ||
| 64 | |||
| 65 | struct uac_clock_multiplier_descriptor { | ||
| 66 | __u8 bLength; | ||
| 67 | __u8 bDescriptorType; | ||
| 68 | __u8 bDescriptorSubtype; | ||
| 69 | __u8 bClockID; | ||
| 70 | __u8 bCSourceID; | ||
| 71 | __u8 bmControls; | ||
| 72 | __u8 iClockMultiplier; | ||
| 44 | } __attribute__((packed)); | 73 | } __attribute__((packed)); |
| 45 | 74 | ||
| 46 | /* 4.7.2.4 Input terminal descriptor */ | 75 | /* 4.7.2.4 Input terminal descriptor */ |
diff --git a/include/linux/usb/audio.h b/include/linux/usb/audio.h index 5d646c388752..c51200c715e5 100644 --- a/include/linux/usb/audio.h +++ b/include/linux/usb/audio.h | |||
| @@ -47,6 +47,15 @@ | |||
| 47 | #define UAC_FORMAT_TYPE 0x02 | 47 | #define UAC_FORMAT_TYPE 0x02 |
| 48 | #define UAC_FORMAT_SPECIFIC 0x03 | 48 | #define UAC_FORMAT_SPECIFIC 0x03 |
| 49 | 49 | ||
| 50 | /* A.7 Processing Unit Process Types */ | ||
| 51 | #define UAC_PROCESS_UNDEFINED 0x00 | ||
| 52 | #define UAC_PROCESS_UP_DOWNMIX 0x01 | ||
| 53 | #define UAC_PROCESS_DOLBY_PROLOGIC 0x02 | ||
| 54 | #define UAC_PROCESS_STEREO_EXTENDER 0x03 | ||
| 55 | #define UAC_PROCESS_REVERB 0x04 | ||
| 56 | #define UAC_PROCESS_CHORUS 0x05 | ||
| 57 | #define UAC_PROCESS_DYN_RANGE_COMP 0x06 | ||
| 58 | |||
| 50 | /* A.8 Audio Class-Specific Endpoint Descriptor Subtypes */ | 59 | /* A.8 Audio Class-Specific Endpoint Descriptor Subtypes */ |
| 51 | #define UAC_EP_GENERAL 0x01 | 60 | #define UAC_EP_GENERAL 0x01 |
| 52 | 61 | ||
| @@ -73,6 +82,60 @@ | |||
| 73 | 82 | ||
| 74 | #define UAC_GET_STAT 0xff | 83 | #define UAC_GET_STAT 0xff |
| 75 | 84 | ||
| 85 | /* A.10 Control Selector Codes */ | ||
| 86 | |||
| 87 | /* A.10.1 Terminal Control Selectors */ | ||
| 88 | #define UAC_TERM_COPY_PROTECT 0x01 | ||
| 89 | |||
| 90 | /* A.10.2 Feature Unit Control Selectors */ | ||
| 91 | #define UAC_FU_MUTE 0x01 | ||
| 92 | #define UAC_FU_VOLUME 0x02 | ||
| 93 | #define UAC_FU_BASS 0x03 | ||
| 94 | #define UAC_FU_MID 0x04 | ||
| 95 | #define UAC_FU_TREBLE 0x05 | ||
| 96 | #define UAC_FU_GRAPHIC_EQUALIZER 0x06 | ||
| 97 | #define UAC_FU_AUTOMATIC_GAIN 0x07 | ||
| 98 | #define UAC_FU_DELAY 0x08 | ||
| 99 | #define UAC_FU_BASS_BOOST 0x09 | ||
| 100 | #define UAC_FU_LOUDNESS 0x0a | ||
| 101 | |||
| 102 | #define UAC_CONTROL_BIT(CS) (1 << ((CS) - 1)) | ||
| 103 | |||
| 104 | /* A.10.3.1 Up/Down-mix Processing Unit Controls Selectors */ | ||
| 105 | #define UAC_UD_ENABLE 0x01 | ||
| 106 | #define UAC_UD_MODE_SELECT 0x02 | ||
| 107 | |||
| 108 | /* A.10.3.2 Dolby Prologic (tm) Processing Unit Controls Selectors */ | ||
| 109 | #define UAC_DP_ENABLE 0x01 | ||
| 110 | #define UAC_DP_MODE_SELECT 0x02 | ||
| 111 | |||
| 112 | /* A.10.3.3 3D Stereo Extender Processing Unit Control Selectors */ | ||
| 113 | #define UAC_3D_ENABLE 0x01 | ||
| 114 | #define UAC_3D_SPACE 0x02 | ||
| 115 | |||
| 116 | /* A.10.3.4 Reverberation Processing Unit Control Selectors */ | ||
| 117 | #define UAC_REVERB_ENABLE 0x01 | ||
| 118 | #define UAC_REVERB_LEVEL 0x02 | ||
| 119 | #define UAC_REVERB_TIME 0x03 | ||
| 120 | #define UAC_REVERB_FEEDBACK 0x04 | ||
| 121 | |||
| 122 | /* A.10.3.5 Chorus Processing Unit Control Selectors */ | ||
| 123 | #define UAC_CHORUS_ENABLE 0x01 | ||
| 124 | #define UAC_CHORUS_LEVEL 0x02 | ||
| 125 | #define UAC_CHORUS_RATE 0x03 | ||
| 126 | #define UAC_CHORUS_DEPTH 0x04 | ||
| 127 | |||
| 128 | /* A.10.3.6 Dynamic Range Compressor Unit Control Selectors */ | ||
| 129 | #define UAC_DCR_ENABLE 0x01 | ||
| 130 | #define UAC_DCR_RATE 0x02 | ||
| 131 | #define UAC_DCR_MAXAMPL 0x03 | ||
| 132 | #define UAC_DCR_THRESHOLD 0x04 | ||
| 133 | #define UAC_DCR_ATTACK_TIME 0x05 | ||
| 134 | #define UAC_DCR_RELEASE_TIME 0x06 | ||
| 135 | |||
| 136 | /* A.10.4 Extension Unit Control Selectors */ | ||
| 137 | #define UAC_XU_ENABLE 0x01 | ||
| 138 | |||
| 76 | /* MIDI - A.1 MS Class-Specific Interface Descriptor Subtypes */ | 139 | /* MIDI - A.1 MS Class-Specific Interface Descriptor Subtypes */ |
| 77 | #define UAC_MS_HEADER 0x01 | 140 | #define UAC_MS_HEADER 0x01 |
| 78 | #define UAC_MIDI_IN_JACK 0x02 | 141 | #define UAC_MIDI_IN_JACK 0x02 |
| @@ -244,7 +307,7 @@ struct uac_selector_unit_descriptor { | |||
| 244 | static inline __u8 uac_selector_unit_iSelector(struct uac_selector_unit_descriptor *desc) | 307 | static inline __u8 uac_selector_unit_iSelector(struct uac_selector_unit_descriptor *desc) |
| 245 | { | 308 | { |
| 246 | __u8 *raw = (__u8 *) desc; | 309 | __u8 *raw = (__u8 *) desc; |
| 247 | return raw[9 + desc->bLength - 1]; | 310 | return raw[desc->bLength - 1]; |
| 248 | } | 311 | } |
| 249 | 312 | ||
| 250 | /* 4.3.2.5 Feature Unit Descriptor */ | 313 | /* 4.3.2.5 Feature Unit Descriptor */ |
| @@ -463,31 +526,6 @@ struct uac_iso_endpoint_descriptor { | |||
| 463 | #define UAC_EP_CS_ATTR_PITCH_CONTROL 0x02 | 526 | #define UAC_EP_CS_ATTR_PITCH_CONTROL 0x02 |
| 464 | #define UAC_EP_CS_ATTR_FILL_MAX 0x80 | 527 | #define UAC_EP_CS_ATTR_FILL_MAX 0x80 |
| 465 | 528 | ||
| 466 | /* A.10.2 Feature Unit Control Selectors */ | ||
| 467 | |||
| 468 | #define UAC_FU_CONTROL_UNDEFINED 0x00 | ||
| 469 | #define UAC_MUTE_CONTROL 0x01 | ||
| 470 | #define UAC_VOLUME_CONTROL 0x02 | ||
| 471 | #define UAC_BASS_CONTROL 0x03 | ||
| 472 | #define UAC_MID_CONTROL 0x04 | ||
| 473 | #define UAC_TREBLE_CONTROL 0x05 | ||
| 474 | #define UAC_GRAPHIC_EQUALIZER_CONTROL 0x06 | ||
| 475 | #define UAC_AUTOMATIC_GAIN_CONTROL 0x07 | ||
| 476 | #define UAC_DELAY_CONTROL 0x08 | ||
| 477 | #define UAC_BASS_BOOST_CONTROL 0x09 | ||
| 478 | #define UAC_LOUDNESS_CONTROL 0x0a | ||
| 479 | |||
| 480 | #define UAC_FU_MUTE (1 << (UAC_MUTE_CONTROL - 1)) | ||
| 481 | #define UAC_FU_VOLUME (1 << (UAC_VOLUME_CONTROL - 1)) | ||
| 482 | #define UAC_FU_BASS (1 << (UAC_BASS_CONTROL - 1)) | ||
| 483 | #define UAC_FU_MID (1 << (UAC_MID_CONTROL - 1)) | ||
| 484 | #define UAC_FU_TREBLE (1 << (UAC_TREBLE_CONTROL - 1)) | ||
| 485 | #define UAC_FU_GRAPHIC_EQ (1 << (UAC_GRAPHIC_EQUALIZER_CONTROL - 1)) | ||
| 486 | #define UAC_FU_AUTO_GAIN (1 << (UAC_AUTOMATIC_GAIN_CONTROL - 1)) | ||
| 487 | #define UAC_FU_DELAY (1 << (UAC_DELAY_CONTROL - 1)) | ||
| 488 | #define UAC_FU_BASS_BOOST (1 << (UAC_BASS_BOOST_CONTROL - 1)) | ||
| 489 | #define UAC_FU_LOUDNESS (1 << (UAC_LOUDNESS_CONTROL - 1)) | ||
| 490 | |||
| 491 | /* status word format (3.7.1.1) */ | 529 | /* status word format (3.7.1.1) */ |
| 492 | 530 | ||
| 493 | #define UAC1_STATUS_TYPE_ORIG_MASK 0x0f | 531 | #define UAC1_STATUS_TYPE_ORIG_MASK 0x0f |
diff --git a/include/linux/writeback.h b/include/linux/writeback.h index cc97d6caf2b3..f64134653a8c 100644 --- a/include/linux/writeback.h +++ b/include/linux/writeback.h | |||
| @@ -65,15 +65,6 @@ struct writeback_control { | |||
| 65 | * so we use a single control to update them | 65 | * so we use a single control to update them |
| 66 | */ | 66 | */ |
| 67 | unsigned no_nrwrite_index_update:1; | 67 | unsigned no_nrwrite_index_update:1; |
| 68 | |||
| 69 | /* | ||
| 70 | * For WB_SYNC_ALL, the sb must always be pinned. For WB_SYNC_NONE, | ||
| 71 | * the writeback code will pin the sb for the caller. However, | ||
| 72 | * for eg umount, the caller does WB_SYNC_NONE but already has | ||
| 73 | * the sb pinned. If the below is set, caller already has the | ||
| 74 | * sb pinned. | ||
| 75 | */ | ||
| 76 | unsigned sb_pinned:1; | ||
| 77 | }; | 68 | }; |
| 78 | 69 | ||
| 79 | /* | 70 | /* |
| @@ -82,7 +73,6 @@ struct writeback_control { | |||
| 82 | struct bdi_writeback; | 73 | struct bdi_writeback; |
| 83 | int inode_wait(void *); | 74 | int inode_wait(void *); |
| 84 | void writeback_inodes_sb(struct super_block *); | 75 | void writeback_inodes_sb(struct super_block *); |
| 85 | void writeback_inodes_sb_locked(struct super_block *); | ||
| 86 | int writeback_inodes_sb_if_idle(struct super_block *); | 76 | int writeback_inodes_sb_if_idle(struct super_block *); |
| 87 | void sync_inodes_sb(struct super_block *); | 77 | void sync_inodes_sb(struct super_block *); |
| 88 | void writeback_inodes_wbc(struct writeback_control *wbc); | 78 | void writeback_inodes_wbc(struct writeback_control *wbc); |
diff --git a/include/media/rc-map.h b/include/media/rc-map.h index 5833966a7100..c78e99a435b6 100644 --- a/include/media/rc-map.h +++ b/include/media/rc-map.h | |||
| @@ -55,7 +55,8 @@ void rc_map_init(void); | |||
| 55 | #define RC_MAP_AVERMEDIA_A16D "rc-avermedia-a16d" | 55 | #define RC_MAP_AVERMEDIA_A16D "rc-avermedia-a16d" |
| 56 | #define RC_MAP_AVERMEDIA_CARDBUS "rc-avermedia-cardbus" | 56 | #define RC_MAP_AVERMEDIA_CARDBUS "rc-avermedia-cardbus" |
| 57 | #define RC_MAP_AVERMEDIA_DVBT "rc-avermedia-dvbt" | 57 | #define RC_MAP_AVERMEDIA_DVBT "rc-avermedia-dvbt" |
| 58 | #define RC_MAP_AVERMEDIA_M135A_RM_JX "rc-avermedia-m135a-rm-jx" | 58 | #define RC_MAP_AVERMEDIA_M135A "rc-avermedia-m135a" |
| 59 | #define RC_MAP_AVERMEDIA_M733A_RM_K6 "rc-avermedia-m733a-rm-k6" | ||
| 59 | #define RC_MAP_AVERMEDIA "rc-avermedia" | 60 | #define RC_MAP_AVERMEDIA "rc-avermedia" |
| 60 | #define RC_MAP_AVERTV_303 "rc-avertv-303" | 61 | #define RC_MAP_AVERTV_303 "rc-avertv-303" |
| 61 | #define RC_MAP_BEHOLD_COLUMBUS "rc-behold-columbus" | 62 | #define RC_MAP_BEHOLD_COLUMBUS "rc-behold-columbus" |
diff --git a/include/media/soc_camera.h b/include/media/soc_camera.h index c9a5bbfa6ab5..b8289c2f609b 100644 --- a/include/media/soc_camera.h +++ b/include/media/soc_camera.h | |||
| @@ -66,7 +66,7 @@ struct soc_camera_host_ops { | |||
| 66 | * .get_formats() fail, .put_formats() will not be called at all, the | 66 | * .get_formats() fail, .put_formats() will not be called at all, the |
| 67 | * failing .get_formats() must then clean up internally. | 67 | * failing .get_formats() must then clean up internally. |
| 68 | */ | 68 | */ |
| 69 | int (*get_formats)(struct soc_camera_device *, int, | 69 | int (*get_formats)(struct soc_camera_device *, unsigned int, |
| 70 | struct soc_camera_format_xlate *); | 70 | struct soc_camera_format_xlate *); |
| 71 | void (*put_formats)(struct soc_camera_device *); | 71 | void (*put_formats)(struct soc_camera_device *); |
| 72 | int (*cropcap)(struct soc_camera_device *, struct v4l2_cropcap *); | 72 | int (*cropcap)(struct soc_camera_device *, struct v4l2_cropcap *); |
diff --git a/include/media/v4l2-mediabus.h b/include/media/v4l2-mediabus.h index 0dbe02ada259..865cda7cd611 100644 --- a/include/media/v4l2-mediabus.h +++ b/include/media/v4l2-mediabus.h | |||
| @@ -40,6 +40,7 @@ enum v4l2_mbus_pixelcode { | |||
| 40 | V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_LE, | 40 | V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_LE, |
| 41 | V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_BE, | 41 | V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_BE, |
| 42 | V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_BE, | 42 | V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_BE, |
| 43 | V4L2_MBUS_FMT_SGRBG8_1X8, | ||
| 43 | }; | 44 | }; |
| 44 | 45 | ||
| 45 | /** | 46 | /** |
| @@ -58,4 +59,24 @@ struct v4l2_mbus_framefmt { | |||
| 58 | enum v4l2_colorspace colorspace; | 59 | enum v4l2_colorspace colorspace; |
| 59 | }; | 60 | }; |
| 60 | 61 | ||
| 62 | static inline void v4l2_fill_pix_format(struct v4l2_pix_format *pix_fmt, | ||
| 63 | const struct v4l2_mbus_framefmt *mbus_fmt) | ||
| 64 | { | ||
| 65 | pix_fmt->width = mbus_fmt->width; | ||
| 66 | pix_fmt->height = mbus_fmt->height; | ||
| 67 | pix_fmt->field = mbus_fmt->field; | ||
| 68 | pix_fmt->colorspace = mbus_fmt->colorspace; | ||
| 69 | } | ||
| 70 | |||
| 71 | static inline void v4l2_fill_mbus_format(struct v4l2_mbus_framefmt *mbus_fmt, | ||
| 72 | const struct v4l2_pix_format *pix_fmt, | ||
| 73 | enum v4l2_mbus_pixelcode code) | ||
| 74 | { | ||
| 75 | mbus_fmt->width = pix_fmt->width; | ||
| 76 | mbus_fmt->height = pix_fmt->height; | ||
| 77 | mbus_fmt->field = pix_fmt->field; | ||
| 78 | mbus_fmt->colorspace = pix_fmt->colorspace; | ||
| 79 | mbus_fmt->code = code; | ||
| 80 | } | ||
| 81 | |||
| 61 | #endif | 82 | #endif |
diff --git a/include/media/v4l2-subdev.h b/include/media/v4l2-subdev.h index a88889355ae0..02c6f4d11ed3 100644 --- a/include/media/v4l2-subdev.h +++ b/include/media/v4l2-subdev.h | |||
| @@ -246,7 +246,7 @@ struct v4l2_subdev_video_ops { | |||
| 246 | struct v4l2_dv_timings *timings); | 246 | struct v4l2_dv_timings *timings); |
| 247 | int (*g_dv_timings)(struct v4l2_subdev *sd, | 247 | int (*g_dv_timings)(struct v4l2_subdev *sd, |
| 248 | struct v4l2_dv_timings *timings); | 248 | struct v4l2_dv_timings *timings); |
| 249 | int (*enum_mbus_fmt)(struct v4l2_subdev *sd, int index, | 249 | int (*enum_mbus_fmt)(struct v4l2_subdev *sd, unsigned int index, |
| 250 | enum v4l2_mbus_pixelcode *code); | 250 | enum v4l2_mbus_pixelcode *code); |
| 251 | int (*g_mbus_fmt)(struct v4l2_subdev *sd, | 251 | int (*g_mbus_fmt)(struct v4l2_subdev *sd, |
| 252 | struct v4l2_mbus_framefmt *fmt); | 252 | struct v4l2_mbus_framefmt *fmt); |
diff --git a/include/net/dst.h b/include/net/dst.h index 612069beda73..81d1413a8701 100644 --- a/include/net/dst.h +++ b/include/net/dst.h | |||
| @@ -250,11 +250,11 @@ static inline void skb_tunnel_rx(struct sk_buff *skb, struct net_device *dev) | |||
| 250 | * Linux networking. Thus, destinations are stackable. | 250 | * Linux networking. Thus, destinations are stackable. |
| 251 | */ | 251 | */ |
| 252 | 252 | ||
| 253 | static inline struct dst_entry *dst_pop(struct dst_entry *dst) | 253 | static inline struct dst_entry *skb_dst_pop(struct sk_buff *skb) |
| 254 | { | 254 | { |
| 255 | struct dst_entry *child = dst_clone(dst->child); | 255 | struct dst_entry *child = skb_dst(skb)->child; |
| 256 | 256 | ||
| 257 | dst_release(dst); | 257 | skb_dst_drop(skb); |
| 258 | return child; | 258 | return child; |
| 259 | } | 259 | } |
| 260 | 260 | ||
