diff options
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/highmem.h | 6 | ||||
| -rw-r--r-- | include/linux/mtd/sh_flctl.h | 3 | ||||
| -rw-r--r-- | include/linux/padata.h | 88 | ||||
| -rw-r--r-- | include/linux/pfkeyv2.h | 1 | ||||
| -rw-r--r-- | include/linux/raid_class.h | 1 | ||||
| -rw-r--r-- | include/linux/sh_intc.h | 33 | ||||
| -rw-r--r-- | include/linux/videodev2.h | 2 |
7 files changed, 123 insertions, 11 deletions
diff --git a/include/linux/highmem.h b/include/linux/highmem.h index ab2cc20e21a5..74152c08ad07 100644 --- a/include/linux/highmem.h +++ b/include/linux/highmem.h | |||
| @@ -17,6 +17,12 @@ static inline void flush_anon_page(struct vm_area_struct *vma, struct page *page | |||
| 17 | static inline void flush_kernel_dcache_page(struct page *page) | 17 | static inline void flush_kernel_dcache_page(struct page *page) |
| 18 | { | 18 | { |
| 19 | } | 19 | } |
| 20 | static inline void flush_kernel_vmap_range(void *vaddr, int size) | ||
| 21 | { | ||
| 22 | } | ||
| 23 | static inline void invalidate_kernel_vmap_range(void *vaddr, int size) | ||
| 24 | { | ||
| 25 | } | ||
| 20 | #endif | 26 | #endif |
| 21 | 27 | ||
| 22 | #include <asm/kmap_types.h> | 28 | #include <asm/kmap_types.h> |
diff --git a/include/linux/mtd/sh_flctl.h b/include/linux/mtd/sh_flctl.h index e77c1cea404d..ab77609ec337 100644 --- a/include/linux/mtd/sh_flctl.h +++ b/include/linux/mtd/sh_flctl.h | |||
| @@ -51,6 +51,8 @@ | |||
| 51 | #define _4ECCCNTEN (0x1 << 24) | 51 | #define _4ECCCNTEN (0x1 << 24) |
| 52 | #define _4ECCEN (0x1 << 23) | 52 | #define _4ECCEN (0x1 << 23) |
| 53 | #define _4ECCCORRECT (0x1 << 22) | 53 | #define _4ECCCORRECT (0x1 << 22) |
| 54 | #define SHBUSSEL (0x1 << 20) | ||
| 55 | #define SEL_16BIT (0x1 << 19) | ||
| 54 | #define SNAND_E (0x1 << 18) /* SNAND (0=512 1=2048)*/ | 56 | #define SNAND_E (0x1 << 18) /* SNAND (0=512 1=2048)*/ |
| 55 | #define QTSEL_E (0x1 << 17) | 57 | #define QTSEL_E (0x1 << 17) |
| 56 | #define ENDIAN (0x1 << 16) /* 1 = little endian */ | 58 | #define ENDIAN (0x1 << 16) /* 1 = little endian */ |
| @@ -96,6 +98,7 @@ | |||
| 96 | struct sh_flctl { | 98 | struct sh_flctl { |
| 97 | struct mtd_info mtd; | 99 | struct mtd_info mtd; |
| 98 | struct nand_chip chip; | 100 | struct nand_chip chip; |
| 101 | struct platform_device *pdev; | ||
| 99 | void __iomem *reg; | 102 | void __iomem *reg; |
| 100 | 103 | ||
| 101 | uint8_t done_buff[2048 + 64]; /* max size 2048 + 64 */ | 104 | uint8_t done_buff[2048 + 64]; /* max size 2048 + 64 */ |
diff --git a/include/linux/padata.h b/include/linux/padata.h new file mode 100644 index 000000000000..51611da9c498 --- /dev/null +++ b/include/linux/padata.h | |||
| @@ -0,0 +1,88 @@ | |||
| 1 | /* | ||
| 2 | * padata.h - header for the padata parallelization interface | ||
| 3 | * | ||
| 4 | * Copyright (C) 2008, 2009 secunet Security Networks AG | ||
| 5 | * Copyright (C) 2008, 2009 Steffen Klassert <steffen.klassert@secunet.com> | ||
| 6 | * | ||
| 7 | * This program is free software; you can redistribute it and/or modify it | ||
| 8 | * under the terms and conditions of the GNU General Public License, | ||
| 9 | * version 2, as published by the Free Software Foundation. | ||
| 10 | * | ||
| 11 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
| 12 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
| 13 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
| 14 | * more details. | ||
| 15 | * | ||
| 16 | * You should have received a copy of the GNU General Public License along with | ||
| 17 | * this program; if not, write to the Free Software Foundation, Inc., | ||
| 18 | * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA. | ||
| 19 | */ | ||
| 20 | |||
| 21 | #ifndef PADATA_H | ||
| 22 | #define PADATA_H | ||
| 23 | |||
| 24 | #include <linux/workqueue.h> | ||
| 25 | #include <linux/spinlock.h> | ||
| 26 | #include <linux/list.h> | ||
| 27 | |||
| 28 | struct padata_priv { | ||
| 29 | struct list_head list; | ||
| 30 | struct parallel_data *pd; | ||
| 31 | int cb_cpu; | ||
| 32 | int seq_nr; | ||
| 33 | int info; | ||
| 34 | void (*parallel)(struct padata_priv *padata); | ||
| 35 | void (*serial)(struct padata_priv *padata); | ||
| 36 | }; | ||
| 37 | |||
| 38 | struct padata_list { | ||
| 39 | struct list_head list; | ||
| 40 | spinlock_t lock; | ||
| 41 | }; | ||
| 42 | |||
| 43 | struct padata_queue { | ||
| 44 | struct padata_list parallel; | ||
| 45 | struct padata_list reorder; | ||
| 46 | struct padata_list serial; | ||
| 47 | struct work_struct pwork; | ||
| 48 | struct work_struct swork; | ||
| 49 | struct parallel_data *pd; | ||
| 50 | atomic_t num_obj; | ||
| 51 | int cpu_index; | ||
| 52 | }; | ||
| 53 | |||
| 54 | struct parallel_data { | ||
| 55 | struct padata_instance *pinst; | ||
| 56 | struct padata_queue *queue; | ||
| 57 | atomic_t seq_nr; | ||
| 58 | atomic_t reorder_objects; | ||
| 59 | atomic_t refcnt; | ||
| 60 | unsigned int max_seq_nr; | ||
| 61 | cpumask_var_t cpumask; | ||
| 62 | spinlock_t lock; | ||
| 63 | }; | ||
| 64 | |||
| 65 | struct padata_instance { | ||
| 66 | struct notifier_block cpu_notifier; | ||
| 67 | struct workqueue_struct *wq; | ||
| 68 | struct parallel_data *pd; | ||
| 69 | cpumask_var_t cpumask; | ||
| 70 | struct mutex lock; | ||
| 71 | u8 flags; | ||
| 72 | #define PADATA_INIT 1 | ||
| 73 | #define PADATA_RESET 2 | ||
| 74 | }; | ||
| 75 | |||
| 76 | extern struct padata_instance *padata_alloc(const struct cpumask *cpumask, | ||
| 77 | struct workqueue_struct *wq); | ||
| 78 | extern void padata_free(struct padata_instance *pinst); | ||
| 79 | extern int padata_do_parallel(struct padata_instance *pinst, | ||
| 80 | struct padata_priv *padata, int cb_cpu); | ||
| 81 | extern void padata_do_serial(struct padata_priv *padata); | ||
| 82 | extern int padata_set_cpumask(struct padata_instance *pinst, | ||
| 83 | cpumask_var_t cpumask); | ||
| 84 | extern int padata_add_cpu(struct padata_instance *pinst, int cpu); | ||
| 85 | extern int padata_remove_cpu(struct padata_instance *pinst, int cpu); | ||
| 86 | extern void padata_start(struct padata_instance *pinst); | ||
| 87 | extern void padata_stop(struct padata_instance *pinst); | ||
| 88 | #endif | ||
diff --git a/include/linux/pfkeyv2.h b/include/linux/pfkeyv2.h index 228b0b6306b0..0b80c806631f 100644 --- a/include/linux/pfkeyv2.h +++ b/include/linux/pfkeyv2.h | |||
| @@ -315,6 +315,7 @@ struct sadb_x_kmaddress { | |||
| 315 | #define SADB_X_EALG_AES_GCM_ICV12 19 | 315 | #define SADB_X_EALG_AES_GCM_ICV12 19 |
| 316 | #define SADB_X_EALG_AES_GCM_ICV16 20 | 316 | #define SADB_X_EALG_AES_GCM_ICV16 20 |
| 317 | #define SADB_X_EALG_CAMELLIACBC 22 | 317 | #define SADB_X_EALG_CAMELLIACBC 22 |
| 318 | #define SADB_X_EALG_NULL_AES_GMAC 23 | ||
| 318 | #define SADB_EALG_MAX 253 /* last EALG */ | 319 | #define SADB_EALG_MAX 253 /* last EALG */ |
| 319 | /* private allocations should use 249-255 (RFC2407) */ | 320 | /* private allocations should use 249-255 (RFC2407) */ |
| 320 | #define SADB_X_EALG_SERPENTCBC 252 /* draft-ietf-ipsec-ciph-aes-cbc-00 */ | 321 | #define SADB_X_EALG_SERPENTCBC 252 /* draft-ietf-ipsec-ciph-aes-cbc-00 */ |
diff --git a/include/linux/raid_class.h b/include/linux/raid_class.h index 6b537f1ac96c..31e1ff69efc8 100644 --- a/include/linux/raid_class.h +++ b/include/linux/raid_class.h | |||
| @@ -32,6 +32,7 @@ enum raid_level { | |||
| 32 | RAID_LEVEL_0, | 32 | RAID_LEVEL_0, |
| 33 | RAID_LEVEL_1, | 33 | RAID_LEVEL_1, |
| 34 | RAID_LEVEL_10, | 34 | RAID_LEVEL_10, |
| 35 | RAID_LEVEL_1E, | ||
| 35 | RAID_LEVEL_3, | 36 | RAID_LEVEL_3, |
| 36 | RAID_LEVEL_4, | 37 | RAID_LEVEL_4, |
| 37 | RAID_LEVEL_5, | 38 | RAID_LEVEL_5, |
diff --git a/include/linux/sh_intc.h b/include/linux/sh_intc.h index 4ef246f14654..51d288d8ac88 100644 --- a/include/linux/sh_intc.h +++ b/include/linux/sh_intc.h | |||
| @@ -45,7 +45,7 @@ struct intc_sense_reg { | |||
| 45 | #define INTC_SMP(stride, nr) | 45 | #define INTC_SMP(stride, nr) |
| 46 | #endif | 46 | #endif |
| 47 | 47 | ||
| 48 | struct intc_desc { | 48 | struct intc_hw_desc { |
| 49 | struct intc_vect *vectors; | 49 | struct intc_vect *vectors; |
| 50 | unsigned int nr_vectors; | 50 | unsigned int nr_vectors; |
| 51 | struct intc_group *groups; | 51 | struct intc_group *groups; |
| @@ -56,29 +56,40 @@ struct intc_desc { | |||
| 56 | unsigned int nr_prio_regs; | 56 | unsigned int nr_prio_regs; |
| 57 | struct intc_sense_reg *sense_regs; | 57 | struct intc_sense_reg *sense_regs; |
| 58 | unsigned int nr_sense_regs; | 58 | unsigned int nr_sense_regs; |
| 59 | char *name; | ||
| 60 | struct intc_mask_reg *ack_regs; | 59 | struct intc_mask_reg *ack_regs; |
| 61 | unsigned int nr_ack_regs; | 60 | unsigned int nr_ack_regs; |
| 62 | }; | 61 | }; |
| 63 | 62 | ||
| 64 | #define _INTC_ARRAY(a) a, sizeof(a)/sizeof(*a) | 63 | #define _INTC_ARRAY(a) a, sizeof(a)/sizeof(*a) |
| 64 | #define INTC_HW_DESC(vectors, groups, mask_regs, \ | ||
| 65 | prio_regs, sense_regs, ack_regs) \ | ||
| 66 | { \ | ||
| 67 | _INTC_ARRAY(vectors), _INTC_ARRAY(groups), \ | ||
| 68 | _INTC_ARRAY(mask_regs), _INTC_ARRAY(prio_regs), \ | ||
| 69 | _INTC_ARRAY(sense_regs), _INTC_ARRAY(ack_regs), \ | ||
| 70 | } | ||
| 71 | |||
| 72 | struct intc_desc { | ||
| 73 | char *name; | ||
| 74 | intc_enum force_enable; | ||
| 75 | intc_enum force_disable; | ||
| 76 | struct intc_hw_desc hw; | ||
| 77 | }; | ||
| 78 | |||
| 65 | #define DECLARE_INTC_DESC(symbol, chipname, vectors, groups, \ | 79 | #define DECLARE_INTC_DESC(symbol, chipname, vectors, groups, \ |
| 66 | mask_regs, prio_regs, sense_regs) \ | 80 | mask_regs, prio_regs, sense_regs) \ |
| 67 | struct intc_desc symbol __initdata = { \ | 81 | struct intc_desc symbol __initdata = { \ |
| 68 | _INTC_ARRAY(vectors), _INTC_ARRAY(groups), \ | 82 | .name = chipname, \ |
| 69 | _INTC_ARRAY(mask_regs), _INTC_ARRAY(prio_regs), \ | 83 | .hw = INTC_HW_DESC(vectors, groups, mask_regs, \ |
| 70 | _INTC_ARRAY(sense_regs), \ | 84 | prio_regs, sense_regs, NULL), \ |
| 71 | chipname, \ | ||
| 72 | } | 85 | } |
| 73 | 86 | ||
| 74 | #define DECLARE_INTC_DESC_ACK(symbol, chipname, vectors, groups, \ | 87 | #define DECLARE_INTC_DESC_ACK(symbol, chipname, vectors, groups, \ |
| 75 | mask_regs, prio_regs, sense_regs, ack_regs) \ | 88 | mask_regs, prio_regs, sense_regs, ack_regs) \ |
| 76 | struct intc_desc symbol __initdata = { \ | 89 | struct intc_desc symbol __initdata = { \ |
| 77 | _INTC_ARRAY(vectors), _INTC_ARRAY(groups), \ | 90 | .name = chipname, \ |
| 78 | _INTC_ARRAY(mask_regs), _INTC_ARRAY(prio_regs), \ | 91 | .hw = INTC_HW_DESC(vectors, groups, mask_regs, \ |
| 79 | _INTC_ARRAY(sense_regs), \ | 92 | prio_regs, sense_regs, ack_regs), \ |
| 80 | chipname, \ | ||
| 81 | _INTC_ARRAY(ack_regs), \ | ||
| 82 | } | 93 | } |
| 83 | 94 | ||
| 84 | void __init register_intc_controller(struct intc_desc *desc); | 95 | void __init register_intc_controller(struct intc_desc *desc); |
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h index d4962a782b8a..3793d168b44d 100644 --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h | |||
| @@ -350,6 +350,7 @@ struct v4l2_pix_format { | |||
| 350 | #define V4L2_PIX_FMT_MPEG v4l2_fourcc('M', 'P', 'E', 'G') /* MPEG-1/2/4 */ | 350 | #define V4L2_PIX_FMT_MPEG v4l2_fourcc('M', 'P', 'E', 'G') /* MPEG-1/2/4 */ |
| 351 | 351 | ||
| 352 | /* Vendor-specific formats */ | 352 | /* Vendor-specific formats */ |
| 353 | #define V4L2_PIX_FMT_CPIA1 v4l2_fourcc('C', 'P', 'I', 'A') /* cpia1 YUV */ | ||
| 353 | #define V4L2_PIX_FMT_WNVA v4l2_fourcc('W', 'N', 'V', 'A') /* Winnov hw compress */ | 354 | #define V4L2_PIX_FMT_WNVA v4l2_fourcc('W', 'N', 'V', 'A') /* Winnov hw compress */ |
| 354 | #define V4L2_PIX_FMT_SN9C10X v4l2_fourcc('S', '9', '1', '0') /* SN9C10x compression */ | 355 | #define V4L2_PIX_FMT_SN9C10X v4l2_fourcc('S', '9', '1', '0') /* SN9C10x compression */ |
| 355 | #define V4L2_PIX_FMT_SN9C20X_I420 v4l2_fourcc('S', '9', '2', '0') /* SN9C20x YUV 4:2:0 */ | 356 | #define V4L2_PIX_FMT_SN9C20X_I420 v4l2_fourcc('S', '9', '2', '0') /* SN9C20x YUV 4:2:0 */ |
| @@ -362,6 +363,7 @@ struct v4l2_pix_format { | |||
| 362 | #define V4L2_PIX_FMT_SPCA561 v4l2_fourcc('S', '5', '6', '1') /* compressed GBRG bayer */ | 363 | #define V4L2_PIX_FMT_SPCA561 v4l2_fourcc('S', '5', '6', '1') /* compressed GBRG bayer */ |
| 363 | #define V4L2_PIX_FMT_PAC207 v4l2_fourcc('P', '2', '0', '7') /* compressed BGGR bayer */ | 364 | #define V4L2_PIX_FMT_PAC207 v4l2_fourcc('P', '2', '0', '7') /* compressed BGGR bayer */ |
| 364 | #define V4L2_PIX_FMT_MR97310A v4l2_fourcc('M', '3', '1', '0') /* compressed BGGR bayer */ | 365 | #define V4L2_PIX_FMT_MR97310A v4l2_fourcc('M', '3', '1', '0') /* compressed BGGR bayer */ |
| 366 | #define V4L2_PIX_FMT_SN9C2028 v4l2_fourcc('S', 'O', 'N', 'X') /* compressed GBRG bayer */ | ||
| 365 | #define V4L2_PIX_FMT_SQ905C v4l2_fourcc('9', '0', '5', 'C') /* compressed RGGB bayer */ | 367 | #define V4L2_PIX_FMT_SQ905C v4l2_fourcc('9', '0', '5', 'C') /* compressed RGGB bayer */ |
| 366 | #define V4L2_PIX_FMT_PJPG v4l2_fourcc('P', 'J', 'P', 'G') /* Pixart 73xx JPEG */ | 368 | #define V4L2_PIX_FMT_PJPG v4l2_fourcc('P', 'J', 'P', 'G') /* Pixart 73xx JPEG */ |
| 367 | #define V4L2_PIX_FMT_OV511 v4l2_fourcc('O', '5', '1', '1') /* ov511 JPEG */ | 369 | #define V4L2_PIX_FMT_OV511 v4l2_fourcc('O', '5', '1', '1') /* ov511 JPEG */ |
