diff options
Diffstat (limited to 'include')
41 files changed, 311 insertions, 57 deletions
diff --git a/include/drm/drmP.h b/include/drm/drmP.h index cf399495d38f..1f9e9516e2b7 100644 --- a/include/drm/drmP.h +++ b/include/drm/drmP.h | |||
@@ -990,7 +990,9 @@ struct drm_minor { | |||
990 | struct proc_dir_entry *proc_root; /**< proc directory entry */ | 990 | struct proc_dir_entry *proc_root; /**< proc directory entry */ |
991 | struct drm_info_node proc_nodes; | 991 | struct drm_info_node proc_nodes; |
992 | struct dentry *debugfs_root; | 992 | struct dentry *debugfs_root; |
993 | struct drm_info_node debugfs_nodes; | 993 | |
994 | struct list_head debugfs_list; | ||
995 | struct mutex debugfs_lock; /* Protects debugfs_list. */ | ||
994 | 996 | ||
995 | struct drm_master *master; /* currently active master for this node */ | 997 | struct drm_master *master; /* currently active master for this node */ |
996 | struct list_head master_list; | 998 | struct list_head master_list; |
diff --git a/include/drm/drm_mode.h b/include/drm/drm_mode.h index d30bedfeb7ef..ddd46db65b57 100644 --- a/include/drm/drm_mode.h +++ b/include/drm/drm_mode.h | |||
@@ -235,6 +235,8 @@ struct drm_mode_fb_cmd { | |||
235 | #define DRM_MODE_FB_DIRTY_ANNOTATE_FILL 0x02 | 235 | #define DRM_MODE_FB_DIRTY_ANNOTATE_FILL 0x02 |
236 | #define DRM_MODE_FB_DIRTY_FLAGS 0x03 | 236 | #define DRM_MODE_FB_DIRTY_FLAGS 0x03 |
237 | 237 | ||
238 | #define DRM_MODE_FB_DIRTY_MAX_CLIPS 256 | ||
239 | |||
238 | /* | 240 | /* |
239 | * Mark a region of a framebuffer as dirty. | 241 | * Mark a region of a framebuffer as dirty. |
240 | * | 242 | * |
diff --git a/include/drm/drm_pciids.h b/include/drm/drm_pciids.h index 3d53efd25ab9..f81676f1b310 100644 --- a/include/drm/drm_pciids.h +++ b/include/drm/drm_pciids.h | |||
@@ -4,6 +4,7 @@ | |||
4 | */ | 4 | */ |
5 | #define radeon_PCI_IDS \ | 5 | #define radeon_PCI_IDS \ |
6 | {0x1002, 0x3150, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY}, \ | 6 | {0x1002, 0x3150, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY}, \ |
7 | {0x1002, 0x3151, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ | ||
7 | {0x1002, 0x3152, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ | 8 | {0x1002, 0x3152, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ |
8 | {0x1002, 0x3154, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ | 9 | {0x1002, 0x3154, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ |
9 | {0x1002, 0x3155, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ | 10 | {0x1002, 0x3155, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP}, \ |
@@ -55,6 +56,7 @@ | |||
55 | {0x1002, 0x4C64, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV250|RADEON_IS_MOBILITY}, \ | 56 | {0x1002, 0x4C64, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV250|RADEON_IS_MOBILITY}, \ |
56 | {0x1002, 0x4C66, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV250|RADEON_IS_MOBILITY}, \ | 57 | {0x1002, 0x4C66, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV250|RADEON_IS_MOBILITY}, \ |
57 | {0x1002, 0x4C67, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV250|RADEON_IS_MOBILITY}, \ | 58 | {0x1002, 0x4C67, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV250|RADEON_IS_MOBILITY}, \ |
59 | {0x1002, 0x4C6E, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_RV280|RADEON_IS_MOBILITY}, \ | ||
58 | {0x1002, 0x4E44, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_R300}, \ | 60 | {0x1002, 0x4E44, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_R300}, \ |
59 | {0x1002, 0x4E45, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_R300}, \ | 61 | {0x1002, 0x4E45, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_R300}, \ |
60 | {0x1002, 0x4E46, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_R300}, \ | 62 | {0x1002, 0x4E46, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_R300}, \ |
diff --git a/include/drm/exynos_drm.h b/include/drm/exynos_drm.h index 874c4d271328..1d161cb3aca5 100644 --- a/include/drm/exynos_drm.h +++ b/include/drm/exynos_drm.h | |||
@@ -36,11 +36,13 @@ | |||
36 | * - this size value would be page-aligned internally. | 36 | * - this size value would be page-aligned internally. |
37 | * @flags: user request for setting memory type or cache attributes. | 37 | * @flags: user request for setting memory type or cache attributes. |
38 | * @handle: returned handle for the object. | 38 | * @handle: returned handle for the object. |
39 | * @pad: just padding to be 64-bit aligned. | ||
39 | */ | 40 | */ |
40 | struct drm_exynos_gem_create { | 41 | struct drm_exynos_gem_create { |
41 | unsigned int size; | 42 | unsigned int size; |
42 | unsigned int flags; | 43 | unsigned int flags; |
43 | unsigned int handle; | 44 | unsigned int handle; |
45 | unsigned int pad; | ||
44 | }; | 46 | }; |
45 | 47 | ||
46 | /** | 48 | /** |
diff --git a/include/drm/radeon_drm.h b/include/drm/radeon_drm.h index b65be6054a18..be94be6d6f17 100644 --- a/include/drm/radeon_drm.h +++ b/include/drm/radeon_drm.h | |||
@@ -874,6 +874,10 @@ struct drm_radeon_gem_pwrite { | |||
874 | 874 | ||
875 | #define RADEON_CHUNK_ID_RELOCS 0x01 | 875 | #define RADEON_CHUNK_ID_RELOCS 0x01 |
876 | #define RADEON_CHUNK_ID_IB 0x02 | 876 | #define RADEON_CHUNK_ID_IB 0x02 |
877 | #define RADEON_CHUNK_ID_FLAGS 0x03 | ||
878 | |||
879 | /* The first dword of RADEON_CHUNK_ID_FLAGS is a uint32 of these flags: */ | ||
880 | #define RADEON_CS_KEEP_TILING_FLAGS 0x01 | ||
877 | 881 | ||
878 | struct drm_radeon_cs_chunk { | 882 | struct drm_radeon_cs_chunk { |
879 | uint32_t chunk_id; | 883 | uint32_t chunk_id; |
diff --git a/include/linux/bio.h b/include/linux/bio.h index a3c071c9e189..847994aef0e9 100644 --- a/include/linux/bio.h +++ b/include/linux/bio.h | |||
@@ -211,8 +211,8 @@ extern void bio_pair_release(struct bio_pair *dbio); | |||
211 | extern struct bio_set *bioset_create(unsigned int, unsigned int); | 211 | extern struct bio_set *bioset_create(unsigned int, unsigned int); |
212 | extern void bioset_free(struct bio_set *); | 212 | extern void bioset_free(struct bio_set *); |
213 | 213 | ||
214 | extern struct bio *bio_alloc(gfp_t, int); | 214 | extern struct bio *bio_alloc(gfp_t, unsigned int); |
215 | extern struct bio *bio_kmalloc(gfp_t, int); | 215 | extern struct bio *bio_kmalloc(gfp_t, unsigned int); |
216 | extern struct bio *bio_alloc_bioset(gfp_t, int, struct bio_set *); | 216 | extern struct bio *bio_alloc_bioset(gfp_t, int, struct bio_set *); |
217 | extern void bio_put(struct bio *); | 217 | extern void bio_put(struct bio *); |
218 | extern void bio_free(struct bio *, struct bio_set *); | 218 | extern void bio_free(struct bio *, struct bio_set *); |
@@ -519,7 +519,11 @@ extern void bio_integrity_init(void); | |||
519 | #define bioset_integrity_create(a, b) (0) | 519 | #define bioset_integrity_create(a, b) (0) |
520 | #define bio_integrity_prep(a) (0) | 520 | #define bio_integrity_prep(a) (0) |
521 | #define bio_integrity_enabled(a) (0) | 521 | #define bio_integrity_enabled(a) (0) |
522 | #define bio_integrity_clone(a, b, c, d) (0) | 522 | static inline int bio_integrity_clone(struct bio *bio, struct bio *bio_src, |
523 | gfp_t gfp_mask, struct bio_set *bs) | ||
524 | { | ||
525 | return 0; | ||
526 | } | ||
523 | #define bioset_integrity_free(a) do { } while (0) | 527 | #define bioset_integrity_free(a) do { } while (0) |
524 | #define bio_integrity_free(a, b) do { } while (0) | 528 | #define bio_integrity_free(a, b) do { } while (0) |
525 | #define bio_integrity_endio(a, b) do { } while (0) | 529 | #define bio_integrity_endio(a, b) do { } while (0) |
diff --git a/include/linux/ceph/osd_client.h b/include/linux/ceph/osd_client.h index f88eacb111d4..7c05ac202d90 100644 --- a/include/linux/ceph/osd_client.h +++ b/include/linux/ceph/osd_client.h | |||
@@ -10,6 +10,12 @@ | |||
10 | #include "osdmap.h" | 10 | #include "osdmap.h" |
11 | #include "messenger.h" | 11 | #include "messenger.h" |
12 | 12 | ||
13 | /* | ||
14 | * Maximum object name size | ||
15 | * (must be at least as big as RBD_MAX_MD_NAME_LEN -- currently 100) | ||
16 | */ | ||
17 | #define MAX_OBJ_NAME_SIZE 100 | ||
18 | |||
13 | struct ceph_msg; | 19 | struct ceph_msg; |
14 | struct ceph_snap_context; | 20 | struct ceph_snap_context; |
15 | struct ceph_osd_request; | 21 | struct ceph_osd_request; |
@@ -75,7 +81,7 @@ struct ceph_osd_request { | |||
75 | struct inode *r_inode; /* for use by callbacks */ | 81 | struct inode *r_inode; /* for use by callbacks */ |
76 | void *r_priv; /* ditto */ | 82 | void *r_priv; /* ditto */ |
77 | 83 | ||
78 | char r_oid[40]; /* object name */ | 84 | char r_oid[MAX_OBJ_NAME_SIZE]; /* object name */ |
79 | int r_oid_len; | 85 | int r_oid_len; |
80 | unsigned long r_stamp; /* send OR check time */ | 86 | unsigned long r_stamp; /* send OR check time */ |
81 | 87 | ||
diff --git a/include/linux/devfreq.h b/include/linux/devfreq.h index afb94583960c..98ce8124b1cc 100644 --- a/include/linux/devfreq.h +++ b/include/linux/devfreq.h | |||
@@ -41,7 +41,7 @@ struct devfreq_dev_status { | |||
41 | unsigned long total_time; | 41 | unsigned long total_time; |
42 | unsigned long busy_time; | 42 | unsigned long busy_time; |
43 | unsigned long current_frequency; | 43 | unsigned long current_frequency; |
44 | void *private_date; | 44 | void *private_data; |
45 | }; | 45 | }; |
46 | 46 | ||
47 | /** | 47 | /** |
diff --git a/include/linux/device.h b/include/linux/device.h index ffbcf95cd97d..3136ede5a1e1 100644 --- a/include/linux/device.h +++ b/include/linux/device.h | |||
@@ -69,7 +69,7 @@ extern void bus_remove_file(struct bus_type *, struct bus_attribute *); | |||
69 | * @resume: Called to bring a device on this bus out of sleep mode. | 69 | * @resume: Called to bring a device on this bus out of sleep mode. |
70 | * @pm: Power management operations of this bus, callback the specific | 70 | * @pm: Power management operations of this bus, callback the specific |
71 | * device driver's pm-ops. | 71 | * device driver's pm-ops. |
72 | * @iommu_ops IOMMU specific operations for this bus, used to attach IOMMU | 72 | * @iommu_ops: IOMMU specific operations for this bus, used to attach IOMMU |
73 | * driver implementations to a bus and allow the driver to do | 73 | * driver implementations to a bus and allow the driver to do |
74 | * bus-specific setup | 74 | * bus-specific setup |
75 | * @p: The private data of the driver core, only the driver core can | 75 | * @p: The private data of the driver core, only the driver core can |
@@ -682,6 +682,11 @@ static inline bool device_async_suspend_enabled(struct device *dev) | |||
682 | return !!dev->power.async_suspend; | 682 | return !!dev->power.async_suspend; |
683 | } | 683 | } |
684 | 684 | ||
685 | static inline void pm_suspend_ignore_children(struct device *dev, bool enable) | ||
686 | { | ||
687 | dev->power.ignore_children = enable; | ||
688 | } | ||
689 | |||
685 | static inline void device_lock(struct device *dev) | 690 | static inline void device_lock(struct device *dev) |
686 | { | 691 | { |
687 | mutex_lock(&dev->mutex); | 692 | mutex_lock(&dev->mutex); |
diff --git a/include/linux/fs.h b/include/linux/fs.h index 0c4df261af7e..e3130220ce3e 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
@@ -1886,6 +1886,7 @@ extern struct dentry *mount_single(struct file_system_type *fs_type, | |||
1886 | extern struct dentry *mount_nodev(struct file_system_type *fs_type, | 1886 | extern struct dentry *mount_nodev(struct file_system_type *fs_type, |
1887 | int flags, void *data, | 1887 | int flags, void *data, |
1888 | int (*fill_super)(struct super_block *, void *, int)); | 1888 | int (*fill_super)(struct super_block *, void *, int)); |
1889 | extern struct dentry *mount_subtree(struct vfsmount *mnt, const char *path); | ||
1889 | void generic_shutdown_super(struct super_block *sb); | 1890 | void generic_shutdown_super(struct super_block *sb); |
1890 | void kill_block_super(struct super_block *sb); | 1891 | void kill_block_super(struct super_block *sb); |
1891 | void kill_anon_super(struct super_block *sb); | 1892 | void kill_anon_super(struct super_block *sb); |
diff --git a/include/linux/genhd.h b/include/linux/genhd.h index 9de31bc98c88..6d18f3531f18 100644 --- a/include/linux/genhd.h +++ b/include/linux/genhd.h | |||
@@ -21,8 +21,6 @@ | |||
21 | #define dev_to_part(device) container_of((device), struct hd_struct, __dev) | 21 | #define dev_to_part(device) container_of((device), struct hd_struct, __dev) |
22 | #define disk_to_dev(disk) (&(disk)->part0.__dev) | 22 | #define disk_to_dev(disk) (&(disk)->part0.__dev) |
23 | #define part_to_dev(part) (&((part)->__dev)) | 23 | #define part_to_dev(part) (&((part)->__dev)) |
24 | #define alias_name(disk) ((disk)->alias ? (disk)->alias : \ | ||
25 | (disk)->disk_name) | ||
26 | 24 | ||
27 | extern struct device_type part_type; | 25 | extern struct device_type part_type; |
28 | extern struct kobject *block_depr; | 26 | extern struct kobject *block_depr; |
@@ -60,7 +58,6 @@ enum { | |||
60 | 58 | ||
61 | #define DISK_MAX_PARTS 256 | 59 | #define DISK_MAX_PARTS 256 |
62 | #define DISK_NAME_LEN 32 | 60 | #define DISK_NAME_LEN 32 |
63 | #define ALIAS_LEN 256 | ||
64 | 61 | ||
65 | #include <linux/major.h> | 62 | #include <linux/major.h> |
66 | #include <linux/device.h> | 63 | #include <linux/device.h> |
@@ -166,7 +163,6 @@ struct gendisk { | |||
166 | * disks that can't be partitioned. */ | 163 | * disks that can't be partitioned. */ |
167 | 164 | ||
168 | char disk_name[DISK_NAME_LEN]; /* name of major driver */ | 165 | char disk_name[DISK_NAME_LEN]; /* name of major driver */ |
169 | char *alias; /* alias name of disk */ | ||
170 | char *(*devnode)(struct gendisk *gd, mode_t *mode); | 166 | char *(*devnode)(struct gendisk *gd, mode_t *mode); |
171 | 167 | ||
172 | unsigned int events; /* supported events */ | 168 | unsigned int events; /* supported events */ |
diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h index 19644e0016bd..d9d6c868b86b 100644 --- a/include/linux/hugetlb.h +++ b/include/linux/hugetlb.h | |||
@@ -110,11 +110,6 @@ static inline void copy_huge_page(struct page *dst, struct page *src) | |||
110 | 110 | ||
111 | #define hugetlb_change_protection(vma, address, end, newprot) | 111 | #define hugetlb_change_protection(vma, address, end, newprot) |
112 | 112 | ||
113 | #ifndef HPAGE_MASK | ||
114 | #define HPAGE_MASK PAGE_MASK /* Keep the compiler happy */ | ||
115 | #define HPAGE_SIZE PAGE_SIZE | ||
116 | #endif | ||
117 | |||
118 | #endif /* !CONFIG_HUGETLB_PAGE */ | 113 | #endif /* !CONFIG_HUGETLB_PAGE */ |
119 | 114 | ||
120 | #define HUGETLB_ANON_FILE "anon_hugepage" | 115 | #define HUGETLB_ANON_FILE "anon_hugepage" |
diff --git a/include/linux/hwspinlock.h b/include/linux/hwspinlock.h index 08a2fee40659..aad6bd4b3efd 100644 --- a/include/linux/hwspinlock.h +++ b/include/linux/hwspinlock.h | |||
@@ -118,7 +118,6 @@ int __hwspin_trylock(struct hwspinlock *hwlock, int mode, unsigned long *flags) | |||
118 | static inline | 118 | static inline |
119 | void __hwspin_unlock(struct hwspinlock *hwlock, int mode, unsigned long *flags) | 119 | void __hwspin_unlock(struct hwspinlock *hwlock, int mode, unsigned long *flags) |
120 | { | 120 | { |
121 | return 0; | ||
122 | } | 121 | } |
123 | 122 | ||
124 | static inline int hwspin_lock_get_id(struct hwspinlock *hwlock) | 123 | static inline int hwspin_lock_get_id(struct hwspinlock *hwlock) |
diff --git a/include/linux/i2c.h b/include/linux/i2c.h index a81bf6d23b3e..07d103a06d64 100644 --- a/include/linux/i2c.h +++ b/include/linux/i2c.h | |||
@@ -432,9 +432,6 @@ void i2c_unlock_adapter(struct i2c_adapter *); | |||
432 | /* Internal numbers to terminate lists */ | 432 | /* Internal numbers to terminate lists */ |
433 | #define I2C_CLIENT_END 0xfffeU | 433 | #define I2C_CLIENT_END 0xfffeU |
434 | 434 | ||
435 | /* The numbers to use to set I2C bus address */ | ||
436 | #define ANY_I2C_BUS 0xffff | ||
437 | |||
438 | /* Construct an I2C_CLIENT_END-terminated array of i2c addresses */ | 435 | /* Construct an I2C_CLIENT_END-terminated array of i2c addresses */ |
439 | #define I2C_ADDRS(addr, addrs...) \ | 436 | #define I2C_ADDRS(addr, addrs...) \ |
440 | ((const unsigned short []){ addr, ## addrs, I2C_CLIENT_END }) | 437 | ((const unsigned short []){ addr, ## addrs, I2C_CLIENT_END }) |
diff --git a/include/linux/inet_diag.h b/include/linux/inet_diag.h index 80b480c97532..abf5028db981 100644 --- a/include/linux/inet_diag.h +++ b/include/linux/inet_diag.h | |||
@@ -98,9 +98,10 @@ enum { | |||
98 | INET_DIAG_VEGASINFO, | 98 | INET_DIAG_VEGASINFO, |
99 | INET_DIAG_CONG, | 99 | INET_DIAG_CONG, |
100 | INET_DIAG_TOS, | 100 | INET_DIAG_TOS, |
101 | INET_DIAG_TCLASS, | ||
101 | }; | 102 | }; |
102 | 103 | ||
103 | #define INET_DIAG_MAX INET_DIAG_TOS | 104 | #define INET_DIAG_MAX INET_DIAG_TCLASS |
104 | 105 | ||
105 | 106 | ||
106 | /* INET_DIAG_MEM */ | 107 | /* INET_DIAG_MEM */ |
diff --git a/include/linux/init_task.h b/include/linux/init_task.h index 08ffab01e76c..94b1e356c02a 100644 --- a/include/linux/init_task.h +++ b/include/linux/init_task.h | |||
@@ -184,7 +184,6 @@ extern struct cred init_cred; | |||
184 | [PIDTYPE_SID] = INIT_PID_LINK(PIDTYPE_SID), \ | 184 | [PIDTYPE_SID] = INIT_PID_LINK(PIDTYPE_SID), \ |
185 | }, \ | 185 | }, \ |
186 | .thread_group = LIST_HEAD_INIT(tsk.thread_group), \ | 186 | .thread_group = LIST_HEAD_INIT(tsk.thread_group), \ |
187 | .dirties = INIT_PROP_LOCAL_SINGLE(dirties), \ | ||
188 | INIT_IDS \ | 187 | INIT_IDS \ |
189 | INIT_PERF_EVENTS(tsk) \ | 188 | INIT_PERF_EVENTS(tsk) \ |
190 | INIT_TRACE_IRQFLAGS \ | 189 | INIT_TRACE_IRQFLAGS \ |
diff --git a/include/linux/kvm.h b/include/linux/kvm.h index f47fcd30273d..c3892fc1d538 100644 --- a/include/linux/kvm.h +++ b/include/linux/kvm.h | |||
@@ -555,7 +555,6 @@ struct kvm_ppc_pvinfo { | |||
555 | #define KVM_CAP_PPC_SMT 64 | 555 | #define KVM_CAP_PPC_SMT 64 |
556 | #define KVM_CAP_PPC_RMA 65 | 556 | #define KVM_CAP_PPC_RMA 65 |
557 | #define KVM_CAP_MAX_VCPUS 66 /* returns max vcpus per vm */ | 557 | #define KVM_CAP_MAX_VCPUS 66 /* returns max vcpus per vm */ |
558 | #define KVM_CAP_PPC_HIOR 67 | ||
559 | #define KVM_CAP_PPC_PAPR 68 | 558 | #define KVM_CAP_PPC_PAPR 68 |
560 | #define KVM_CAP_S390_GMAP 71 | 559 | #define KVM_CAP_S390_GMAP 71 |
561 | 560 | ||
diff --git a/include/linux/mfd/tps65910.h b/include/linux/mfd/tps65910.h index 82b4c8801a4f..8bf2cb9502dd 100644 --- a/include/linux/mfd/tps65910.h +++ b/include/linux/mfd/tps65910.h | |||
@@ -243,7 +243,8 @@ | |||
243 | 243 | ||
244 | 244 | ||
245 | /*Registers VDD1, VDD2 voltage values definitions */ | 245 | /*Registers VDD1, VDD2 voltage values definitions */ |
246 | #define VDD1_2_NUM_VOLTS 73 | 246 | #define VDD1_2_NUM_VOLT_FINE 73 |
247 | #define VDD1_2_NUM_VOLT_COARSE 3 | ||
247 | #define VDD1_2_MIN_VOLT 6000 | 248 | #define VDD1_2_MIN_VOLT 6000 |
248 | #define VDD1_2_OFFSET 125 | 249 | #define VDD1_2_OFFSET 125 |
249 | 250 | ||
diff --git a/include/linux/mfd/wm8994/core.h b/include/linux/mfd/wm8994/core.h index f44bdb7273bd..9eff2a351ec5 100644 --- a/include/linux/mfd/wm8994/core.h +++ b/include/linux/mfd/wm8994/core.h | |||
@@ -15,6 +15,7 @@ | |||
15 | #ifndef __MFD_WM8994_CORE_H__ | 15 | #ifndef __MFD_WM8994_CORE_H__ |
16 | #define __MFD_WM8994_CORE_H__ | 16 | #define __MFD_WM8994_CORE_H__ |
17 | 17 | ||
18 | #include <linux/mutex.h> | ||
18 | #include <linux/interrupt.h> | 19 | #include <linux/interrupt.h> |
19 | 20 | ||
20 | enum wm8994_type { | 21 | enum wm8994_type { |
@@ -55,6 +56,7 @@ struct wm8994 { | |||
55 | struct mutex irq_lock; | 56 | struct mutex irq_lock; |
56 | 57 | ||
57 | enum wm8994_type type; | 58 | enum wm8994_type type; |
59 | int revision; | ||
58 | 60 | ||
59 | struct device *dev; | 61 | struct device *dev; |
60 | struct regmap *regmap; | 62 | struct regmap *regmap; |
@@ -65,13 +67,10 @@ struct wm8994 { | |||
65 | int irq_base; | 67 | int irq_base; |
66 | 68 | ||
67 | int irq; | 69 | int irq; |
68 | u16 irq_masks_cur[WM8994_NUM_IRQ_REGS]; | 70 | struct regmap_irq_chip_data *irq_data; |
69 | u16 irq_masks_cache[WM8994_NUM_IRQ_REGS]; | ||
70 | 71 | ||
71 | /* Used over suspend/resume */ | 72 | /* Used over suspend/resume */ |
72 | bool suspended; | 73 | bool suspended; |
73 | u16 ldo_regs[WM8994_NUM_LDO_REGS]; | ||
74 | u16 gpio_regs[WM8994_NUM_GPIO_REGS]; | ||
75 | 74 | ||
76 | struct regulator_dev *dbvdd; | 75 | struct regulator_dev *dbvdd; |
77 | int num_supplies; | 76 | int num_supplies; |
diff --git a/include/linux/mfd/wm8994/pdata.h b/include/linux/mfd/wm8994/pdata.h index 5256f1f41d7f..3fb1f407d5e6 100644 --- a/include/linux/mfd/wm8994/pdata.h +++ b/include/linux/mfd/wm8994/pdata.h | |||
@@ -23,7 +23,7 @@ struct wm8994_ldo_pdata { | |||
23 | int enable; | 23 | int enable; |
24 | 24 | ||
25 | const char *supply; | 25 | const char *supply; |
26 | struct regulator_init_data *init_data; | 26 | const struct regulator_init_data *init_data; |
27 | }; | 27 | }; |
28 | 28 | ||
29 | #define WM8994_CONFIGURE_GPIO 0x10000 | 29 | #define WM8994_CONFIGURE_GPIO 0x10000 |
@@ -197,6 +197,12 @@ struct wm8994_pdata { | |||
197 | * consumption will rise. | 197 | * consumption will rise. |
198 | */ | 198 | */ |
199 | bool ldo_ena_always_driven; | 199 | bool ldo_ena_always_driven; |
200 | |||
201 | /* | ||
202 | * SPKMODE must be pulled internally by the device on this | ||
203 | * system. | ||
204 | */ | ||
205 | bool spkmode_pu; | ||
200 | }; | 206 | }; |
201 | 207 | ||
202 | #endif | 208 | #endif |
diff --git a/include/linux/mfd/wm8994/registers.h b/include/linux/mfd/wm8994/registers.h index ebfc92fdcd77..86e6a032a078 100644 --- a/include/linux/mfd/wm8994/registers.h +++ b/include/linux/mfd/wm8994/registers.h | |||
@@ -95,11 +95,15 @@ | |||
95 | #define WM8994_FLL1_CONTROL_3 0x222 | 95 | #define WM8994_FLL1_CONTROL_3 0x222 |
96 | #define WM8994_FLL1_CONTROL_4 0x223 | 96 | #define WM8994_FLL1_CONTROL_4 0x223 |
97 | #define WM8994_FLL1_CONTROL_5 0x224 | 97 | #define WM8994_FLL1_CONTROL_5 0x224 |
98 | #define WM8958_FLL1_EFS_1 0x226 | ||
99 | #define WM8958_FLL1_EFS_2 0x227 | ||
98 | #define WM8994_FLL2_CONTROL_1 0x240 | 100 | #define WM8994_FLL2_CONTROL_1 0x240 |
99 | #define WM8994_FLL2_CONTROL_2 0x241 | 101 | #define WM8994_FLL2_CONTROL_2 0x241 |
100 | #define WM8994_FLL2_CONTROL_3 0x242 | 102 | #define WM8994_FLL2_CONTROL_3 0x242 |
101 | #define WM8994_FLL2_CONTROL_4 0x243 | 103 | #define WM8994_FLL2_CONTROL_4 0x243 |
102 | #define WM8994_FLL2_CONTROL_5 0x244 | 104 | #define WM8994_FLL2_CONTROL_5 0x244 |
105 | #define WM8958_FLL2_EFS_1 0x246 | ||
106 | #define WM8958_FLL2_EFS_2 0x247 | ||
103 | #define WM8994_AIF1_CONTROL_1 0x300 | 107 | #define WM8994_AIF1_CONTROL_1 0x300 |
104 | #define WM8994_AIF1_CONTROL_2 0x301 | 108 | #define WM8994_AIF1_CONTROL_2 0x301 |
105 | #define WM8994_AIF1_MASTER_SLAVE 0x302 | 109 | #define WM8994_AIF1_MASTER_SLAVE 0x302 |
@@ -116,6 +120,7 @@ | |||
116 | #define WM8994_AIF2DAC_LRCLK 0x315 | 120 | #define WM8994_AIF2DAC_LRCLK 0x315 |
117 | #define WM8994_AIF2DAC_DATA 0x316 | 121 | #define WM8994_AIF2DAC_DATA 0x316 |
118 | #define WM8994_AIF2ADC_DATA 0x317 | 122 | #define WM8994_AIF2ADC_DATA 0x317 |
123 | #define WM1811_AIF2TX_CONTROL 0x318 | ||
119 | #define WM8958_AIF3_CONTROL_1 0x320 | 124 | #define WM8958_AIF3_CONTROL_1 0x320 |
120 | #define WM8958_AIF3_CONTROL_2 0x321 | 125 | #define WM8958_AIF3_CONTROL_2 0x321 |
121 | #define WM8958_AIF3DAC_DATA 0x322 | 126 | #define WM8958_AIF3DAC_DATA 0x322 |
@@ -166,6 +171,7 @@ | |||
166 | #define WM8994_AIF1_DAC1_EQ_BAND_5_A 0x491 | 171 | #define WM8994_AIF1_DAC1_EQ_BAND_5_A 0x491 |
167 | #define WM8994_AIF1_DAC1_EQ_BAND_5_B 0x492 | 172 | #define WM8994_AIF1_DAC1_EQ_BAND_5_B 0x492 |
168 | #define WM8994_AIF1_DAC1_EQ_BAND_5_PG 0x493 | 173 | #define WM8994_AIF1_DAC1_EQ_BAND_5_PG 0x493 |
174 | #define WM8994_AIF1_DAC1_EQ_BAND_1_C 0x494 | ||
169 | #define WM8994_AIF1_DAC2_EQ_GAINS_1 0x4A0 | 175 | #define WM8994_AIF1_DAC2_EQ_GAINS_1 0x4A0 |
170 | #define WM8994_AIF1_DAC2_EQ_GAINS_2 0x4A1 | 176 | #define WM8994_AIF1_DAC2_EQ_GAINS_2 0x4A1 |
171 | #define WM8994_AIF1_DAC2_EQ_BAND_1_A 0x4A2 | 177 | #define WM8994_AIF1_DAC2_EQ_BAND_1_A 0x4A2 |
@@ -186,6 +192,7 @@ | |||
186 | #define WM8994_AIF1_DAC2_EQ_BAND_5_A 0x4B1 | 192 | #define WM8994_AIF1_DAC2_EQ_BAND_5_A 0x4B1 |
187 | #define WM8994_AIF1_DAC2_EQ_BAND_5_B 0x4B2 | 193 | #define WM8994_AIF1_DAC2_EQ_BAND_5_B 0x4B2 |
188 | #define WM8994_AIF1_DAC2_EQ_BAND_5_PG 0x4B3 | 194 | #define WM8994_AIF1_DAC2_EQ_BAND_5_PG 0x4B3 |
195 | #define WM8994_AIF1_DAC2_EQ_BAND_1_C 0x4B4 | ||
189 | #define WM8994_AIF2_ADC_LEFT_VOLUME 0x500 | 196 | #define WM8994_AIF2_ADC_LEFT_VOLUME 0x500 |
190 | #define WM8994_AIF2_ADC_RIGHT_VOLUME 0x501 | 197 | #define WM8994_AIF2_ADC_RIGHT_VOLUME 0x501 |
191 | #define WM8994_AIF2_DAC_LEFT_VOLUME 0x502 | 198 | #define WM8994_AIF2_DAC_LEFT_VOLUME 0x502 |
@@ -219,6 +226,7 @@ | |||
219 | #define WM8994_AIF2_EQ_BAND_5_A 0x591 | 226 | #define WM8994_AIF2_EQ_BAND_5_A 0x591 |
220 | #define WM8994_AIF2_EQ_BAND_5_B 0x592 | 227 | #define WM8994_AIF2_EQ_BAND_5_B 0x592 |
221 | #define WM8994_AIF2_EQ_BAND_5_PG 0x593 | 228 | #define WM8994_AIF2_EQ_BAND_5_PG 0x593 |
229 | #define WM8994_AIF2_EQ_BAND_1_C 0x594 | ||
222 | #define WM8994_DAC1_MIXER_VOLUMES 0x600 | 230 | #define WM8994_DAC1_MIXER_VOLUMES 0x600 |
223 | #define WM8994_DAC1_LEFT_MIXER_ROUTING 0x601 | 231 | #define WM8994_DAC1_LEFT_MIXER_ROUTING 0x601 |
224 | #define WM8994_DAC1_RIGHT_MIXER_ROUTING 0x602 | 232 | #define WM8994_DAC1_RIGHT_MIXER_ROUTING 0x602 |
@@ -265,7 +273,43 @@ | |||
265 | #define WM8958_DSP2_RELEASETIME 0xA03 | 273 | #define WM8958_DSP2_RELEASETIME 0xA03 |
266 | #define WM8958_DSP2_VERMAJMIN 0xA04 | 274 | #define WM8958_DSP2_VERMAJMIN 0xA04 |
267 | #define WM8958_DSP2_VERBUILD 0xA05 | 275 | #define WM8958_DSP2_VERBUILD 0xA05 |
276 | #define WM8958_DSP2_TESTREG 0xA06 | ||
277 | #define WM8958_DSP2_XORREG 0xA07 | ||
278 | #define WM8958_DSP2_SHIFTMAXX 0xA08 | ||
279 | #define WM8958_DSP2_SHIFTMAXY 0xA09 | ||
280 | #define WM8958_DSP2_SHIFTMAXZ 0xA0A | ||
281 | #define WM8958_DSP2_SHIFTMAXEXTLO 0xA0B | ||
282 | #define WM8958_DSP2_AESSELECT 0xA0C | ||
268 | #define WM8958_DSP2_EXECCONTROL 0xA0D | 283 | #define WM8958_DSP2_EXECCONTROL 0xA0D |
284 | #define WM8958_DSP2_SAMPLEBREAK 0xA0E | ||
285 | #define WM8958_DSP2_COUNTBREAK 0xA0F | ||
286 | #define WM8958_DSP2_INTSTATUS 0xA10 | ||
287 | #define WM8958_DSP2_EVENTSTATUS 0xA11 | ||
288 | #define WM8958_DSP2_INTMASK 0xA12 | ||
289 | #define WM8958_DSP2_CONFIGDWIDTH 0xA13 | ||
290 | #define WM8958_DSP2_CONFIGINSTR 0xA14 | ||
291 | #define WM8958_DSP2_CONFIGDMEM 0xA15 | ||
292 | #define WM8958_DSP2_CONFIGDELAYS 0xA16 | ||
293 | #define WM8958_DSP2_CONFIGNUMIO 0xA17 | ||
294 | #define WM8958_DSP2_CONFIGEXTDEPTH 0xA18 | ||
295 | #define WM8958_DSP2_CONFIGMULTIPLIER 0xA19 | ||
296 | #define WM8958_DSP2_CONFIGCTRLDWIDTH 0xA1A | ||
297 | #define WM8958_DSP2_CONFIGPIPELINE 0xA1B | ||
298 | #define WM8958_DSP2_SHIFTMAXEXTHI 0xA1C | ||
299 | #define WM8958_DSP2_SWVERSIONREG 0xA1D | ||
300 | #define WM8958_DSP2_CONFIGXMEM 0xA1E | ||
301 | #define WM8958_DSP2_CONFIGYMEM 0xA1F | ||
302 | #define WM8958_DSP2_CONFIGZMEM 0xA20 | ||
303 | #define WM8958_FW_BUILD_1 0x2000 | ||
304 | #define WM8958_FW_BUILD_0 0x2001 | ||
305 | #define WM8958_FW_ID_1 0x2002 | ||
306 | #define WM8958_FW_ID_0 0x2003 | ||
307 | #define WM8958_FW_MAJOR_1 0x2004 | ||
308 | #define WM8958_FW_MAJOR_0 0x2005 | ||
309 | #define WM8958_FW_MINOR_1 0x2006 | ||
310 | #define WM8958_FW_MINOR_0 0x2007 | ||
311 | #define WM8958_FW_PATCH_1 0x2008 | ||
312 | #define WM8958_FW_PATCH_0 0x2009 | ||
269 | #define WM8958_MBC_BAND_2_LOWER_CUTOFF_C1_1 0x2200 | 313 | #define WM8958_MBC_BAND_2_LOWER_CUTOFF_C1_1 0x2200 |
270 | #define WM8958_MBC_BAND_2_LOWER_CUTOFF_C1_2 0x2201 | 314 | #define WM8958_MBC_BAND_2_LOWER_CUTOFF_C1_2 0x2201 |
271 | #define WM8958_MBC_BAND_2_LOWER_CUTOFF_C2_1 0x2202 | 315 | #define WM8958_MBC_BAND_2_LOWER_CUTOFF_C2_1 0x2202 |
@@ -334,6 +378,14 @@ | |||
334 | #define WM8958_MBC_B2_PG2_2 0x242D | 378 | #define WM8958_MBC_B2_PG2_2 0x242D |
335 | #define WM8958_MBC_B1_PG2_1 0x242E | 379 | #define WM8958_MBC_B1_PG2_1 0x242E |
336 | #define WM8958_MBC_B1_PG2_2 0x242F | 380 | #define WM8958_MBC_B1_PG2_2 0x242F |
381 | #define WM8958_MBC_CROSSOVER_1 0x2600 | ||
382 | #define WM8958_MBC_CROSSOVER_2 0x2601 | ||
383 | #define WM8958_MBC_HPF_1 0x2602 | ||
384 | #define WM8958_MBC_HPF_2 0x2603 | ||
385 | #define WM8958_MBC_LPF_1 0x2606 | ||
386 | #define WM8958_MBC_LPF_2 0x2607 | ||
387 | #define WM8958_MBC_RMS_LIMIT_1 0x260A | ||
388 | #define WM8958_MBC_RMS_LIMIT_2 0x260B | ||
337 | #define WM8994_WRITE_SEQUENCER_0 0x3000 | 389 | #define WM8994_WRITE_SEQUENCER_0 0x3000 |
338 | #define WM8994_WRITE_SEQUENCER_1 0x3001 | 390 | #define WM8994_WRITE_SEQUENCER_1 0x3001 |
339 | #define WM8994_WRITE_SEQUENCER_2 0x3002 | 391 | #define WM8994_WRITE_SEQUENCER_2 0x3002 |
@@ -2393,6 +2445,10 @@ | |||
2393 | /* | 2445 | /* |
2394 | * R548 (0x224) - FLL1 Control (5) | 2446 | * R548 (0x224) - FLL1 Control (5) |
2395 | */ | 2447 | */ |
2448 | #define WM8958_FLL1_BYP 0x8000 /* FLL1_BYP */ | ||
2449 | #define WM8958_FLL1_BYP_MASK 0x8000 /* FLL1_BYP */ | ||
2450 | #define WM8958_FLL1_BYP_SHIFT 15 /* FLL1_BYP */ | ||
2451 | #define WM8958_FLL1_BYP_WIDTH 1 /* FLL1_BYP */ | ||
2396 | #define WM8994_FLL1_FRC_NCO_VAL_MASK 0x1F80 /* FLL1_FRC_NCO_VAL - [12:7] */ | 2452 | #define WM8994_FLL1_FRC_NCO_VAL_MASK 0x1F80 /* FLL1_FRC_NCO_VAL - [12:7] */ |
2397 | #define WM8994_FLL1_FRC_NCO_VAL_SHIFT 7 /* FLL1_FRC_NCO_VAL - [12:7] */ | 2453 | #define WM8994_FLL1_FRC_NCO_VAL_SHIFT 7 /* FLL1_FRC_NCO_VAL - [12:7] */ |
2398 | #define WM8994_FLL1_FRC_NCO_VAL_WIDTH 6 /* FLL1_FRC_NCO_VAL - [12:7] */ | 2454 | #define WM8994_FLL1_FRC_NCO_VAL_WIDTH 6 /* FLL1_FRC_NCO_VAL - [12:7] */ |
@@ -2408,6 +2464,24 @@ | |||
2408 | #define WM8994_FLL1_REFCLK_SRC_WIDTH 2 /* FLL1_REFCLK_SRC - [1:0] */ | 2464 | #define WM8994_FLL1_REFCLK_SRC_WIDTH 2 /* FLL1_REFCLK_SRC - [1:0] */ |
2409 | 2465 | ||
2410 | /* | 2466 | /* |
2467 | * R550 (0x226) - FLL1 EFS 1 | ||
2468 | */ | ||
2469 | #define WM8958_FLL1_LAMBDA_MASK 0xFFFF /* FLL1_LAMBDA - [15:0] */ | ||
2470 | #define WM8958_FLL1_LAMBDA_SHIFT 0 /* FLL1_LAMBDA - [15:0] */ | ||
2471 | #define WM8958_FLL1_LAMBDA_WIDTH 16 /* FLL1_LAMBDA - [15:0] */ | ||
2472 | |||
2473 | /* | ||
2474 | * R551 (0x227) - FLL1 EFS 2 | ||
2475 | */ | ||
2476 | #define WM8958_FLL1_LFSR_SEL_MASK 0x0006 /* FLL1_LFSR_SEL - [2:1] */ | ||
2477 | #define WM8958_FLL1_LFSR_SEL_SHIFT 1 /* FLL1_LFSR_SEL - [2:1] */ | ||
2478 | #define WM8958_FLL1_LFSR_SEL_WIDTH 2 /* FLL1_LFSR_SEL - [2:1] */ | ||
2479 | #define WM8958_FLL1_EFS_ENA 0x0001 /* FLL1_EFS_ENA */ | ||
2480 | #define WM8958_FLL1_EFS_ENA_MASK 0x0001 /* FLL1_EFS_ENA */ | ||
2481 | #define WM8958_FLL1_EFS_ENA_SHIFT 0 /* FLL1_EFS_ENA */ | ||
2482 | #define WM8958_FLL1_EFS_ENA_WIDTH 1 /* FLL1_EFS_ENA */ | ||
2483 | |||
2484 | /* | ||
2411 | * R576 (0x240) - FLL2 Control (1) | 2485 | * R576 (0x240) - FLL2 Control (1) |
2412 | */ | 2486 | */ |
2413 | #define WM8994_FLL2_FRAC 0x0004 /* FLL2_FRAC */ | 2487 | #define WM8994_FLL2_FRAC 0x0004 /* FLL2_FRAC */ |
@@ -2456,6 +2530,10 @@ | |||
2456 | /* | 2530 | /* |
2457 | * R580 (0x244) - FLL2 Control (5) | 2531 | * R580 (0x244) - FLL2 Control (5) |
2458 | */ | 2532 | */ |
2533 | #define WM8958_FLL2_BYP 0x8000 /* FLL2_BYP */ | ||
2534 | #define WM8958_FLL2_BYP_MASK 0x8000 /* FLL2_BYP */ | ||
2535 | #define WM8958_FLL2_BYP_SHIFT 15 /* FLL2_BYP */ | ||
2536 | #define WM8958_FLL2_BYP_WIDTH 1 /* FLL2_BYP */ | ||
2459 | #define WM8994_FLL2_FRC_NCO_VAL_MASK 0x1F80 /* FLL2_FRC_NCO_VAL - [12:7] */ | 2537 | #define WM8994_FLL2_FRC_NCO_VAL_MASK 0x1F80 /* FLL2_FRC_NCO_VAL - [12:7] */ |
2460 | #define WM8994_FLL2_FRC_NCO_VAL_SHIFT 7 /* FLL2_FRC_NCO_VAL - [12:7] */ | 2538 | #define WM8994_FLL2_FRC_NCO_VAL_SHIFT 7 /* FLL2_FRC_NCO_VAL - [12:7] */ |
2461 | #define WM8994_FLL2_FRC_NCO_VAL_WIDTH 6 /* FLL2_FRC_NCO_VAL - [12:7] */ | 2539 | #define WM8994_FLL2_FRC_NCO_VAL_WIDTH 6 /* FLL2_FRC_NCO_VAL - [12:7] */ |
@@ -2471,6 +2549,24 @@ | |||
2471 | #define WM8994_FLL2_REFCLK_SRC_WIDTH 2 /* FLL2_REFCLK_SRC - [1:0] */ | 2549 | #define WM8994_FLL2_REFCLK_SRC_WIDTH 2 /* FLL2_REFCLK_SRC - [1:0] */ |
2472 | 2550 | ||
2473 | /* | 2551 | /* |
2552 | * R582 (0x246) - FLL2 EFS 1 | ||
2553 | */ | ||
2554 | #define WM8958_FLL2_LAMBDA_MASK 0xFFFF /* FLL2_LAMBDA - [15:0] */ | ||
2555 | #define WM8958_FLL2_LAMBDA_SHIFT 0 /* FLL2_LAMBDA - [15:0] */ | ||
2556 | #define WM8958_FLL2_LAMBDA_WIDTH 16 /* FLL2_LAMBDA - [15:0] */ | ||
2557 | |||
2558 | /* | ||
2559 | * R583 (0x247) - FLL2 EFS 2 | ||
2560 | */ | ||
2561 | #define WM8958_FLL2_LFSR_SEL_MASK 0x0006 /* FLL2_LFSR_SEL - [2:1] */ | ||
2562 | #define WM8958_FLL2_LFSR_SEL_SHIFT 1 /* FLL2_LFSR_SEL - [2:1] */ | ||
2563 | #define WM8958_FLL2_LFSR_SEL_WIDTH 2 /* FLL2_LFSR_SEL - [2:1] */ | ||
2564 | #define WM8958_FLL2_EFS_ENA 0x0001 /* FLL2_EFS_ENA */ | ||
2565 | #define WM8958_FLL2_EFS_ENA_MASK 0x0001 /* FLL2_EFS_ENA */ | ||
2566 | #define WM8958_FLL2_EFS_ENA_SHIFT 0 /* FLL2_EFS_ENA */ | ||
2567 | #define WM8958_FLL2_EFS_ENA_WIDTH 1 /* FLL2_EFS_ENA */ | ||
2568 | |||
2569 | /* | ||
2474 | * R768 (0x300) - AIF1 Control (1) | 2570 | * R768 (0x300) - AIF1 Control (1) |
2475 | */ | 2571 | */ |
2476 | #define WM8994_AIF1ADCL_SRC 0x8000 /* AIF1ADCL_SRC */ | 2572 | #define WM8994_AIF1ADCL_SRC 0x8000 /* AIF1ADCL_SRC */ |
diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h index ab2c6343361a..92ecf5585fac 100644 --- a/include/linux/nfs_fs.h +++ b/include/linux/nfs_fs.h | |||
@@ -410,6 +410,9 @@ extern const struct inode_operations nfs_file_inode_operations; | |||
410 | extern const struct inode_operations nfs3_file_inode_operations; | 410 | extern const struct inode_operations nfs3_file_inode_operations; |
411 | #endif /* CONFIG_NFS_V3 */ | 411 | #endif /* CONFIG_NFS_V3 */ |
412 | extern const struct file_operations nfs_file_operations; | 412 | extern const struct file_operations nfs_file_operations; |
413 | #ifdef CONFIG_NFS_V4 | ||
414 | extern const struct file_operations nfs4_file_operations; | ||
415 | #endif /* CONFIG_NFS_V4 */ | ||
413 | extern const struct address_space_operations nfs_file_aops; | 416 | extern const struct address_space_operations nfs_file_aops; |
414 | extern const struct address_space_operations nfs_dir_aops; | 417 | extern const struct address_space_operations nfs_dir_aops; |
415 | 418 | ||
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h index c74595ba7094..2a7c533be5dd 100644 --- a/include/linux/nfs_xdr.h +++ b/include/linux/nfs_xdr.h | |||
@@ -1192,6 +1192,7 @@ struct nfs_rpc_ops { | |||
1192 | const struct dentry_operations *dentry_ops; | 1192 | const struct dentry_operations *dentry_ops; |
1193 | const struct inode_operations *dir_inode_ops; | 1193 | const struct inode_operations *dir_inode_ops; |
1194 | const struct inode_operations *file_inode_ops; | 1194 | const struct inode_operations *file_inode_ops; |
1195 | const struct file_operations *file_ops; | ||
1195 | 1196 | ||
1196 | int (*getroot) (struct nfs_server *, struct nfs_fh *, | 1197 | int (*getroot) (struct nfs_server *, struct nfs_fh *, |
1197 | struct nfs_fsinfo *); | 1198 | struct nfs_fsinfo *); |
diff --git a/include/linux/pci-ats.h b/include/linux/pci-ats.h index e3d0b3890249..7ef68724f0f0 100644 --- a/include/linux/pci-ats.h +++ b/include/linux/pci-ats.h | |||
@@ -12,7 +12,7 @@ struct pci_ats { | |||
12 | unsigned int is_enabled:1; /* Enable bit is set */ | 12 | unsigned int is_enabled:1; /* Enable bit is set */ |
13 | }; | 13 | }; |
14 | 14 | ||
15 | #ifdef CONFIG_PCI_IOV | 15 | #ifdef CONFIG_PCI_ATS |
16 | 16 | ||
17 | extern int pci_enable_ats(struct pci_dev *dev, int ps); | 17 | extern int pci_enable_ats(struct pci_dev *dev, int ps); |
18 | extern void pci_disable_ats(struct pci_dev *dev); | 18 | extern void pci_disable_ats(struct pci_dev *dev); |
@@ -29,7 +29,7 @@ static inline int pci_ats_enabled(struct pci_dev *dev) | |||
29 | return dev->ats && dev->ats->is_enabled; | 29 | return dev->ats && dev->ats->is_enabled; |
30 | } | 30 | } |
31 | 31 | ||
32 | #else /* CONFIG_PCI_IOV */ | 32 | #else /* CONFIG_PCI_ATS */ |
33 | 33 | ||
34 | static inline int pci_enable_ats(struct pci_dev *dev, int ps) | 34 | static inline int pci_enable_ats(struct pci_dev *dev, int ps) |
35 | { | 35 | { |
@@ -50,7 +50,7 @@ static inline int pci_ats_enabled(struct pci_dev *dev) | |||
50 | return 0; | 50 | return 0; |
51 | } | 51 | } |
52 | 52 | ||
53 | #endif /* CONFIG_PCI_IOV */ | 53 | #endif /* CONFIG_PCI_ATS */ |
54 | 54 | ||
55 | #ifdef CONFIG_PCI_PRI | 55 | #ifdef CONFIG_PCI_PRI |
56 | 56 | ||
diff --git a/include/linux/pci.h b/include/linux/pci.h index 337df0d5d5f7..7cda65b5f798 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h | |||
@@ -338,7 +338,7 @@ struct pci_dev { | |||
338 | struct list_head msi_list; | 338 | struct list_head msi_list; |
339 | #endif | 339 | #endif |
340 | struct pci_vpd *vpd; | 340 | struct pci_vpd *vpd; |
341 | #ifdef CONFIG_PCI_IOV | 341 | #ifdef CONFIG_PCI_ATS |
342 | union { | 342 | union { |
343 | struct pci_sriov *sriov; /* SR-IOV capability related */ | 343 | struct pci_sriov *sriov; /* SR-IOV capability related */ |
344 | struct pci_dev *physfn; /* the PF this VF is associated with */ | 344 | struct pci_dev *physfn; /* the PF this VF is associated with */ |
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index 3fdf251389de..172ba70306d1 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h | |||
@@ -2405,6 +2405,8 @@ | |||
2405 | 2405 | ||
2406 | #define PCI_VENDOR_ID_AZWAVE 0x1a3b | 2406 | #define PCI_VENDOR_ID_AZWAVE 0x1a3b |
2407 | 2407 | ||
2408 | #define PCI_VENDOR_ID_ASMEDIA 0x1b21 | ||
2409 | |||
2408 | #define PCI_VENDOR_ID_TEKRAM 0x1de1 | 2410 | #define PCI_VENDOR_ID_TEKRAM 0x1de1 |
2409 | #define PCI_DEVICE_ID_TEKRAM_DC290 0xdc29 | 2411 | #define PCI_DEVICE_ID_TEKRAM_DC290 0xdc29 |
2410 | 2412 | ||
diff --git a/include/linux/pinctrl/pinctrl.h b/include/linux/pinctrl/pinctrl.h index 3605e947fa90..04c011038f32 100644 --- a/include/linux/pinctrl/pinctrl.h +++ b/include/linux/pinctrl/pinctrl.h | |||
@@ -121,6 +121,7 @@ extern const char *pinctrl_dev_get_name(struct pinctrl_dev *pctldev); | |||
121 | extern void *pinctrl_dev_get_drvdata(struct pinctrl_dev *pctldev); | 121 | extern void *pinctrl_dev_get_drvdata(struct pinctrl_dev *pctldev); |
122 | #else | 122 | #else |
123 | 123 | ||
124 | struct pinctrl_dev; | ||
124 | 125 | ||
125 | /* Sufficiently stupid default function when pinctrl is not in use */ | 126 | /* Sufficiently stupid default function when pinctrl is not in use */ |
126 | static inline bool pin_is_valid(struct pinctrl_dev *pctldev, int pin) | 127 | static inline bool pin_is_valid(struct pinctrl_dev *pctldev, int pin) |
diff --git a/include/linux/pm.h b/include/linux/pm.h index f15acb646813..5c4c8b18c8b7 100644 --- a/include/linux/pm.h +++ b/include/linux/pm.h | |||
@@ -447,6 +447,7 @@ struct dev_pm_info { | |||
447 | unsigned int async_suspend:1; | 447 | unsigned int async_suspend:1; |
448 | bool is_prepared:1; /* Owned by the PM core */ | 448 | bool is_prepared:1; /* Owned by the PM core */ |
449 | bool is_suspended:1; /* Ditto */ | 449 | bool is_suspended:1; /* Ditto */ |
450 | bool ignore_children:1; | ||
450 | spinlock_t lock; | 451 | spinlock_t lock; |
451 | #ifdef CONFIG_PM_SLEEP | 452 | #ifdef CONFIG_PM_SLEEP |
452 | struct list_head entry; | 453 | struct list_head entry; |
@@ -464,7 +465,6 @@ struct dev_pm_info { | |||
464 | atomic_t usage_count; | 465 | atomic_t usage_count; |
465 | atomic_t child_count; | 466 | atomic_t child_count; |
466 | unsigned int disable_depth:3; | 467 | unsigned int disable_depth:3; |
467 | unsigned int ignore_children:1; | ||
468 | unsigned int idle_notification:1; | 468 | unsigned int idle_notification:1; |
469 | unsigned int request_pending:1; | 469 | unsigned int request_pending:1; |
470 | unsigned int deferred_resume:1; | 470 | unsigned int deferred_resume:1; |
diff --git a/include/linux/pm_runtime.h b/include/linux/pm_runtime.h index d8d903619642..d3085e72a0ee 100644 --- a/include/linux/pm_runtime.h +++ b/include/linux/pm_runtime.h | |||
@@ -52,11 +52,6 @@ static inline bool pm_children_suspended(struct device *dev) | |||
52 | || !atomic_read(&dev->power.child_count); | 52 | || !atomic_read(&dev->power.child_count); |
53 | } | 53 | } |
54 | 54 | ||
55 | static inline void pm_suspend_ignore_children(struct device *dev, bool enable) | ||
56 | { | ||
57 | dev->power.ignore_children = enable; | ||
58 | } | ||
59 | |||
60 | static inline void pm_runtime_get_noresume(struct device *dev) | 55 | static inline void pm_runtime_get_noresume(struct device *dev) |
61 | { | 56 | { |
62 | atomic_inc(&dev->power.usage_count); | 57 | atomic_inc(&dev->power.usage_count); |
@@ -130,7 +125,6 @@ static inline void pm_runtime_allow(struct device *dev) {} | |||
130 | static inline void pm_runtime_forbid(struct device *dev) {} | 125 | static inline void pm_runtime_forbid(struct device *dev) {} |
131 | 126 | ||
132 | static inline bool pm_children_suspended(struct device *dev) { return false; } | 127 | static inline bool pm_children_suspended(struct device *dev) { return false; } |
133 | static inline void pm_suspend_ignore_children(struct device *dev, bool en) {} | ||
134 | static inline void pm_runtime_get_noresume(struct device *dev) {} | 128 | static inline void pm_runtime_get_noresume(struct device *dev) {} |
135 | static inline void pm_runtime_put_noidle(struct device *dev) {} | 129 | static inline void pm_runtime_put_noidle(struct device *dev) {} |
136 | static inline bool device_run_wake(struct device *dev) { return false; } | 130 | static inline bool device_run_wake(struct device *dev) { return false; } |
diff --git a/include/linux/regmap.h b/include/linux/regmap.h index 32043a9749e6..946868c67cd6 100644 --- a/include/linux/regmap.h +++ b/include/linux/regmap.h | |||
@@ -25,7 +25,7 @@ enum regcache_type { | |||
25 | REGCACHE_NONE, | 25 | REGCACHE_NONE, |
26 | REGCACHE_INDEXED, | 26 | REGCACHE_INDEXED, |
27 | REGCACHE_RBTREE, | 27 | REGCACHE_RBTREE, |
28 | REGCACHE_LZO | 28 | REGCACHE_COMPRESSED |
29 | }; | 29 | }; |
30 | 30 | ||
31 | /** | 31 | /** |
@@ -129,6 +129,8 @@ struct regmap *regmap_init_spi(struct spi_device *dev, | |||
129 | const struct regmap_config *config); | 129 | const struct regmap_config *config); |
130 | 130 | ||
131 | void regmap_exit(struct regmap *map); | 131 | void regmap_exit(struct regmap *map); |
132 | int regmap_reinit_cache(struct regmap *map, | ||
133 | const struct regmap_config *config); | ||
132 | int regmap_write(struct regmap *map, unsigned int reg, unsigned int val); | 134 | int regmap_write(struct regmap *map, unsigned int reg, unsigned int val); |
133 | int regmap_raw_write(struct regmap *map, unsigned int reg, | 135 | int regmap_raw_write(struct regmap *map, unsigned int reg, |
134 | const void *val, size_t val_len); | 136 | const void *val, size_t val_len); |
@@ -145,4 +147,52 @@ void regcache_cache_only(struct regmap *map, bool enable); | |||
145 | void regcache_cache_bypass(struct regmap *map, bool enable); | 147 | void regcache_cache_bypass(struct regmap *map, bool enable); |
146 | void regcache_mark_dirty(struct regmap *map); | 148 | void regcache_mark_dirty(struct regmap *map); |
147 | 149 | ||
150 | /** | ||
151 | * Description of an IRQ for the generic regmap irq_chip. | ||
152 | * | ||
153 | * @reg_offset: Offset of the status/mask register within the bank | ||
154 | * @mask: Mask used to flag/control the register. | ||
155 | */ | ||
156 | struct regmap_irq { | ||
157 | unsigned int reg_offset; | ||
158 | unsigned int mask; | ||
159 | }; | ||
160 | |||
161 | /** | ||
162 | * Description of a generic regmap irq_chip. This is not intended to | ||
163 | * handle every possible interrupt controller, but it should handle a | ||
164 | * substantial proportion of those that are found in the wild. | ||
165 | * | ||
166 | * @name: Descriptive name for IRQ controller. | ||
167 | * | ||
168 | * @status_base: Base status register address. | ||
169 | * @mask_base: Base mask register address. | ||
170 | * @ack_base: Base ack address. If zero then the chip is clear on read. | ||
171 | * | ||
172 | * @num_regs: Number of registers in each control bank. | ||
173 | * @irqs: Descriptors for individual IRQs. Interrupt numbers are | ||
174 | * assigned based on the index in the array of the interrupt. | ||
175 | * @num_irqs: Number of descriptors. | ||
176 | */ | ||
177 | struct regmap_irq_chip { | ||
178 | const char *name; | ||
179 | |||
180 | unsigned int status_base; | ||
181 | unsigned int mask_base; | ||
182 | unsigned int ack_base; | ||
183 | |||
184 | int num_regs; | ||
185 | |||
186 | const struct regmap_irq *irqs; | ||
187 | int num_irqs; | ||
188 | }; | ||
189 | |||
190 | struct regmap_irq_chip_data; | ||
191 | |||
192 | int regmap_add_irq_chip(struct regmap *map, int irq, int irq_flags, | ||
193 | int irq_base, struct regmap_irq_chip *chip, | ||
194 | struct regmap_irq_chip_data **data); | ||
195 | void regmap_del_irq_chip(int irq, struct regmap_irq_chip_data *data); | ||
196 | int regmap_irq_chip_get_base(struct regmap_irq_chip_data *data); | ||
197 | |||
148 | #endif | 198 | #endif |
diff --git a/include/linux/sched.h b/include/linux/sched.h index 68daf4f27e2c..1c4f3e9b9bc5 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -1521,7 +1521,6 @@ struct task_struct { | |||
1521 | #ifdef CONFIG_FAULT_INJECTION | 1521 | #ifdef CONFIG_FAULT_INJECTION |
1522 | int make_it_fail; | 1522 | int make_it_fail; |
1523 | #endif | 1523 | #endif |
1524 | struct prop_local_single dirties; | ||
1525 | /* | 1524 | /* |
1526 | * when (nr_dirtied >= nr_dirtied_pause), it's time to call | 1525 | * when (nr_dirtied >= nr_dirtied_pause), it's time to call |
1527 | * balance_dirty_pages() for some dirty throttling pause | 1526 | * balance_dirty_pages() for some dirty throttling pause |
diff --git a/include/linux/serial.h b/include/linux/serial.h index 97ff8e27a6cc..3d86517fe7d5 100644 --- a/include/linux/serial.h +++ b/include/linux/serial.h | |||
@@ -207,13 +207,15 @@ struct serial_icounter_struct { | |||
207 | 207 | ||
208 | struct serial_rs485 { | 208 | struct serial_rs485 { |
209 | __u32 flags; /* RS485 feature flags */ | 209 | __u32 flags; /* RS485 feature flags */ |
210 | #define SER_RS485_ENABLED (1 << 0) | 210 | #define SER_RS485_ENABLED (1 << 0) /* If enabled */ |
211 | #define SER_RS485_RTS_ON_SEND (1 << 1) | 211 | #define SER_RS485_RTS_ON_SEND (1 << 1) /* Logical level for |
212 | #define SER_RS485_RTS_AFTER_SEND (1 << 2) | 212 | RTS pin when |
213 | #define SER_RS485_RTS_BEFORE_SEND (1 << 3) | 213 | sending */ |
214 | #define SER_RS485_RTS_AFTER_SEND (1 << 2) /* Logical level for | ||
215 | RTS pin after sent*/ | ||
214 | #define SER_RS485_RX_DURING_TX (1 << 4) | 216 | #define SER_RS485_RX_DURING_TX (1 << 4) |
215 | __u32 delay_rts_before_send; /* Milliseconds */ | 217 | __u32 delay_rts_before_send; /* Delay before send (milliseconds) */ |
216 | __u32 delay_rts_after_send; /* Milliseconds */ | 218 | __u32 delay_rts_after_send; /* Delay after send (milliseconds) */ |
217 | __u32 padding[5]; /* Memory is cheap, new structs | 219 | __u32 padding[5]; /* Memory is cheap, new structs |
218 | are a royal PITA .. */ | 220 | are a royal PITA .. */ |
219 | }; | 221 | }; |
diff --git a/include/linux/serial_sci.h b/include/linux/serial_sci.h index 0efa1f10bc2b..369273a52679 100644 --- a/include/linux/serial_sci.h +++ b/include/linux/serial_sci.h | |||
@@ -67,6 +67,7 @@ enum { | |||
67 | SCIx_IRDA_REGTYPE, | 67 | SCIx_IRDA_REGTYPE, |
68 | SCIx_SCIFA_REGTYPE, | 68 | SCIx_SCIFA_REGTYPE, |
69 | SCIx_SCIFB_REGTYPE, | 69 | SCIx_SCIFB_REGTYPE, |
70 | SCIx_SH2_SCIF_FIFODATA_REGTYPE, | ||
70 | SCIx_SH3_SCIF_REGTYPE, | 71 | SCIx_SH3_SCIF_REGTYPE, |
71 | SCIx_SH4_SCIF_REGTYPE, | 72 | SCIx_SH4_SCIF_REGTYPE, |
72 | SCIx_SH4_SCIF_NO_SCSPTR_REGTYPE, | 73 | SCIx_SH4_SCIF_NO_SCSPTR_REGTYPE, |
diff --git a/include/linux/sh_clk.h b/include/linux/sh_clk.h index 3ccf18648d0a..a20831cf336a 100644 --- a/include/linux/sh_clk.h +++ b/include/linux/sh_clk.h | |||
@@ -52,7 +52,6 @@ struct clk { | |||
52 | 52 | ||
53 | unsigned long arch_flags; | 53 | unsigned long arch_flags; |
54 | void *priv; | 54 | void *priv; |
55 | struct dentry *dentry; | ||
56 | struct clk_mapping *mapping; | 55 | struct clk_mapping *mapping; |
57 | struct cpufreq_frequency_table *freq_table; | 56 | struct cpufreq_frequency_table *freq_table; |
58 | unsigned int nr_freqs; | 57 | unsigned int nr_freqs; |
@@ -94,6 +93,9 @@ int clk_rate_table_find(struct clk *clk, | |||
94 | long clk_rate_div_range_round(struct clk *clk, unsigned int div_min, | 93 | long clk_rate_div_range_round(struct clk *clk, unsigned int div_min, |
95 | unsigned int div_max, unsigned long rate); | 94 | unsigned int div_max, unsigned long rate); |
96 | 95 | ||
96 | long clk_rate_mult_range_round(struct clk *clk, unsigned int mult_min, | ||
97 | unsigned int mult_max, unsigned long rate); | ||
98 | |||
97 | long clk_round_parent(struct clk *clk, unsigned long target, | 99 | long clk_round_parent(struct clk *clk, unsigned long target, |
98 | unsigned long *best_freq, unsigned long *parent_freq, | 100 | unsigned long *best_freq, unsigned long *parent_freq, |
99 | unsigned int div_min, unsigned int div_max); | 101 | unsigned int div_min, unsigned int div_max); |
diff --git a/include/linux/sh_pfc.h b/include/linux/sh_pfc.h index bc8c9208f7e2..8446789216e5 100644 --- a/include/linux/sh_pfc.h +++ b/include/linux/sh_pfc.h | |||
@@ -104,4 +104,80 @@ struct pinmux_info { | |||
104 | int register_pinmux(struct pinmux_info *pip); | 104 | int register_pinmux(struct pinmux_info *pip); |
105 | int unregister_pinmux(struct pinmux_info *pip); | 105 | int unregister_pinmux(struct pinmux_info *pip); |
106 | 106 | ||
107 | /* helper macro for port */ | ||
108 | #define PORT_1(fn, pfx, sfx) fn(pfx, sfx) | ||
109 | |||
110 | #define PORT_10(fn, pfx, sfx) \ | ||
111 | PORT_1(fn, pfx##0, sfx), PORT_1(fn, pfx##1, sfx), \ | ||
112 | PORT_1(fn, pfx##2, sfx), PORT_1(fn, pfx##3, sfx), \ | ||
113 | PORT_1(fn, pfx##4, sfx), PORT_1(fn, pfx##5, sfx), \ | ||
114 | PORT_1(fn, pfx##6, sfx), PORT_1(fn, pfx##7, sfx), \ | ||
115 | PORT_1(fn, pfx##8, sfx), PORT_1(fn, pfx##9, sfx) | ||
116 | |||
117 | #define PORT_90(fn, pfx, sfx) \ | ||
118 | PORT_10(fn, pfx##1, sfx), PORT_10(fn, pfx##2, sfx), \ | ||
119 | PORT_10(fn, pfx##3, sfx), PORT_10(fn, pfx##4, sfx), \ | ||
120 | PORT_10(fn, pfx##5, sfx), PORT_10(fn, pfx##6, sfx), \ | ||
121 | PORT_10(fn, pfx##7, sfx), PORT_10(fn, pfx##8, sfx), \ | ||
122 | PORT_10(fn, pfx##9, sfx) | ||
123 | |||
124 | #define _PORT_ALL(pfx, sfx) pfx##_##sfx | ||
125 | #define _GPIO_PORT(pfx, sfx) PINMUX_GPIO(GPIO_PORT##pfx, PORT##pfx##_DATA) | ||
126 | #define PORT_ALL(str) CPU_ALL_PORT(_PORT_ALL, PORT, str) | ||
127 | #define GPIO_PORT_ALL() CPU_ALL_PORT(_GPIO_PORT, , unused) | ||
128 | #define GPIO_FN(str) PINMUX_GPIO(GPIO_FN_##str, str##_MARK) | ||
129 | |||
130 | /* helper macro for pinmux_enum_t */ | ||
131 | #define PORT_DATA_I(nr) \ | ||
132 | PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_IN) | ||
133 | |||
134 | #define PORT_DATA_I_PD(nr) \ | ||
135 | PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, \ | ||
136 | PORT##nr##_IN, PORT##nr##_IN_PD) | ||
137 | |||
138 | #define PORT_DATA_I_PU(nr) \ | ||
139 | PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, \ | ||
140 | PORT##nr##_IN, PORT##nr##_IN_PU) | ||
141 | |||
142 | #define PORT_DATA_I_PU_PD(nr) \ | ||
143 | PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, \ | ||
144 | PORT##nr##_IN, PORT##nr##_IN_PD, PORT##nr##_IN_PU) | ||
145 | |||
146 | #define PORT_DATA_O(nr) \ | ||
147 | PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_OUT) | ||
148 | |||
149 | #define PORT_DATA_IO(nr) \ | ||
150 | PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_OUT, \ | ||
151 | PORT##nr##_IN) | ||
152 | |||
153 | #define PORT_DATA_IO_PD(nr) \ | ||
154 | PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_OUT, \ | ||
155 | PORT##nr##_IN, PORT##nr##_IN_PD) | ||
156 | |||
157 | #define PORT_DATA_IO_PU(nr) \ | ||
158 | PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_OUT, \ | ||
159 | PORT##nr##_IN, PORT##nr##_IN_PU) | ||
160 | |||
161 | #define PORT_DATA_IO_PU_PD(nr) \ | ||
162 | PINMUX_DATA(PORT##nr##_DATA, PORT##nr##_FN0, PORT##nr##_OUT, \ | ||
163 | PORT##nr##_IN, PORT##nr##_IN_PD, PORT##nr##_IN_PU) | ||
164 | |||
165 | /* helper macro for top 4 bits in PORTnCR */ | ||
166 | #define _PCRH(in, in_pd, in_pu, out) \ | ||
167 | 0, (out), (in), 0, \ | ||
168 | 0, 0, 0, 0, \ | ||
169 | 0, 0, (in_pd), 0, \ | ||
170 | 0, 0, (in_pu), 0 | ||
171 | |||
172 | #define PORTCR(nr, reg) \ | ||
173 | { \ | ||
174 | PINMUX_CFG_REG("PORT" nr "CR", reg, 8, 4) { \ | ||
175 | _PCRH(PORT##nr##_IN, PORT##nr##_IN_PD, \ | ||
176 | PORT##nr##_IN_PU, PORT##nr##_OUT), \ | ||
177 | PORT##nr##_FN0, PORT##nr##_FN1, \ | ||
178 | PORT##nr##_FN2, PORT##nr##_FN3, \ | ||
179 | PORT##nr##_FN4, PORT##nr##_FN5, \ | ||
180 | PORT##nr##_FN6, PORT##nr##_FN7 } \ | ||
181 | } | ||
182 | |||
107 | #endif /* __SH_PFC_H */ | 183 | #endif /* __SH_PFC_H */ |
diff --git a/include/linux/virtio_config.h b/include/linux/virtio_config.h index add4790b21fe..e9e72bda1b72 100644 --- a/include/linux/virtio_config.h +++ b/include/linux/virtio_config.h | |||
@@ -85,6 +85,8 @@ | |||
85 | * @reset: reset the device | 85 | * @reset: reset the device |
86 | * vdev: the virtio device | 86 | * vdev: the virtio device |
87 | * After this, status and feature negotiation must be done again | 87 | * After this, status and feature negotiation must be done again |
88 | * Device must not be reset from its vq/config callbacks, or in | ||
89 | * parallel with being added/removed. | ||
88 | * @find_vqs: find virtqueues and instantiate them. | 90 | * @find_vqs: find virtqueues and instantiate them. |
89 | * vdev: the virtio_device | 91 | * vdev: the virtio_device |
90 | * nvqs: the number of virtqueues to find | 92 | * nvqs: the number of virtqueues to find |
diff --git a/include/linux/virtio_mmio.h b/include/linux/virtio_mmio.h index 27c7edefbc86..5c7b6f0daef8 100644 --- a/include/linux/virtio_mmio.h +++ b/include/linux/virtio_mmio.h | |||
@@ -63,7 +63,7 @@ | |||
63 | #define VIRTIO_MMIO_GUEST_FEATURES 0x020 | 63 | #define VIRTIO_MMIO_GUEST_FEATURES 0x020 |
64 | 64 | ||
65 | /* Activated features set selector - Write Only */ | 65 | /* Activated features set selector - Write Only */ |
66 | #define VIRTIO_MMIO_GUEST_FEATURES_SET 0x024 | 66 | #define VIRTIO_MMIO_GUEST_FEATURES_SEL 0x024 |
67 | 67 | ||
68 | /* Guest's memory page size in bytes - Write Only */ | 68 | /* Guest's memory page size in bytes - Write Only */ |
69 | #define VIRTIO_MMIO_GUEST_PAGE_SIZE 0x028 | 69 | #define VIRTIO_MMIO_GUEST_PAGE_SIZE 0x028 |
diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h index 687fb11e2010..4bde182fcf93 100644 --- a/include/linux/vmalloc.h +++ b/include/linux/vmalloc.h | |||
@@ -119,7 +119,7 @@ unmap_kernel_range(unsigned long addr, unsigned long size) | |||
119 | #endif | 119 | #endif |
120 | 120 | ||
121 | /* Allocate/destroy a 'vmalloc' VM area. */ | 121 | /* Allocate/destroy a 'vmalloc' VM area. */ |
122 | extern struct vm_struct *alloc_vm_area(size_t size); | 122 | extern struct vm_struct *alloc_vm_area(size_t size, pte_t **ptes); |
123 | extern void free_vm_area(struct vm_struct *area); | 123 | extern void free_vm_area(struct vm_struct *area); |
124 | 124 | ||
125 | /* for /dev/kmem */ | 125 | /* for /dev/kmem */ |
diff --git a/include/net/bluetooth/l2cap.h b/include/net/bluetooth/l2cap.h index ab90ae0970a6..6cc18f371675 100644 --- a/include/net/bluetooth/l2cap.h +++ b/include/net/bluetooth/l2cap.h | |||
@@ -39,8 +39,11 @@ | |||
39 | #define L2CAP_DEFAULT_ACK_TO 200 | 39 | #define L2CAP_DEFAULT_ACK_TO 200 |
40 | #define L2CAP_LE_DEFAULT_MTU 23 | 40 | #define L2CAP_LE_DEFAULT_MTU 23 |
41 | 41 | ||
42 | #define L2CAP_CONN_TIMEOUT (40000) /* 40 seconds */ | 42 | #define L2CAP_DISC_TIMEOUT (100) |
43 | #define L2CAP_INFO_TIMEOUT (4000) /* 4 seconds */ | 43 | #define L2CAP_DISC_REJ_TIMEOUT (5000) /* 5 seconds */ |
44 | #define L2CAP_ENC_TIMEOUT (5000) /* 5 seconds */ | ||
45 | #define L2CAP_CONN_TIMEOUT (40000) /* 40 seconds */ | ||
46 | #define L2CAP_INFO_TIMEOUT (4000) /* 4 seconds */ | ||
44 | 47 | ||
45 | /* L2CAP socket address */ | 48 | /* L2CAP socket address */ |
46 | struct sockaddr_l2 { | 49 | struct sockaddr_l2 { |
diff --git a/include/net/cfg80211.h b/include/net/cfg80211.h index 92cf1c2c30c9..95852e36713b 100644 --- a/include/net/cfg80211.h +++ b/include/net/cfg80211.h | |||
@@ -456,6 +456,9 @@ enum station_parameters_apply_mask { | |||
456 | * as the AC bitmap in the QoS info field | 456 | * as the AC bitmap in the QoS info field |
457 | * @max_sp: max Service Period. same format as the MAX_SP in the | 457 | * @max_sp: max Service Period. same format as the MAX_SP in the |
458 | * QoS info field (but already shifted down) | 458 | * QoS info field (but already shifted down) |
459 | * @sta_modify_mask: bitmap indicating which parameters changed | ||
460 | * (for those that don't have a natural "no change" value), | ||
461 | * see &enum station_parameters_apply_mask | ||
459 | */ | 462 | */ |
460 | struct station_parameters { | 463 | struct station_parameters { |
461 | u8 *supported_rates; | 464 | u8 *supported_rates; |
@@ -615,6 +618,7 @@ struct sta_bss_parameters { | |||
615 | * user space MLME/SME implementation. The information is provided for | 618 | * user space MLME/SME implementation. The information is provided for |
616 | * the cfg80211_new_sta() calls to notify user space of the IEs. | 619 | * the cfg80211_new_sta() calls to notify user space of the IEs. |
617 | * @assoc_req_ies_len: Length of assoc_req_ies buffer in octets. | 620 | * @assoc_req_ies_len: Length of assoc_req_ies buffer in octets. |
621 | * @sta_flags: station flags mask & values | ||
618 | */ | 622 | */ |
619 | struct station_info { | 623 | struct station_info { |
620 | u32 filled; | 624 | u32 filled; |
diff --git a/include/xen/platform_pci.h b/include/xen/platform_pci.h index a785a3b0c8c7..438c256c274b 100644 --- a/include/xen/platform_pci.h +++ b/include/xen/platform_pci.h | |||
@@ -29,8 +29,7 @@ | |||
29 | static inline int xen_must_unplug_nics(void) { | 29 | static inline int xen_must_unplug_nics(void) { |
30 | #if (defined(CONFIG_XEN_NETDEV_FRONTEND) || \ | 30 | #if (defined(CONFIG_XEN_NETDEV_FRONTEND) || \ |
31 | defined(CONFIG_XEN_NETDEV_FRONTEND_MODULE)) && \ | 31 | defined(CONFIG_XEN_NETDEV_FRONTEND_MODULE)) && \ |
32 | (defined(CONFIG_XEN_PLATFORM_PCI) || \ | 32 | defined(CONFIG_XEN_PVHVM) |
33 | defined(CONFIG_XEN_PLATFORM_PCI_MODULE)) | ||
34 | return 1; | 33 | return 1; |
35 | #else | 34 | #else |
36 | return 0; | 35 | return 0; |
@@ -40,8 +39,7 @@ static inline int xen_must_unplug_nics(void) { | |||
40 | static inline int xen_must_unplug_disks(void) { | 39 | static inline int xen_must_unplug_disks(void) { |
41 | #if (defined(CONFIG_XEN_BLKDEV_FRONTEND) || \ | 40 | #if (defined(CONFIG_XEN_BLKDEV_FRONTEND) || \ |
42 | defined(CONFIG_XEN_BLKDEV_FRONTEND_MODULE)) && \ | 41 | defined(CONFIG_XEN_BLKDEV_FRONTEND_MODULE)) && \ |
43 | (defined(CONFIG_XEN_PLATFORM_PCI) || \ | 42 | defined(CONFIG_XEN_PVHVM) |
44 | defined(CONFIG_XEN_PLATFORM_PCI_MODULE)) | ||
45 | return 1; | 43 | return 1; |
46 | #else | 44 | #else |
47 | return 0; | 45 | return 0; |