diff options
Diffstat (limited to 'include/linux')
28 files changed, 333 insertions, 44 deletions
diff --git a/include/linux/cciss_ioctl.h b/include/linux/cciss_ioctl.h index cb57c30081a8..eb130b4d8e72 100644 --- a/include/linux/cciss_ioctl.h +++ b/include/linux/cciss_ioctl.h | |||
| @@ -39,7 +39,7 @@ typedef __u32 DriverVer_type; | |||
| 39 | #ifndef CCISS_CMD_H | 39 | #ifndef CCISS_CMD_H |
| 40 | // This defines are duplicated in cciss_cmd.h in the driver directory | 40 | // This defines are duplicated in cciss_cmd.h in the driver directory |
| 41 | 41 | ||
| 42 | //general boundary defintions | 42 | //general boundary definitions |
| 43 | #define SENSEINFOBYTES 32//note that this value may vary between host implementations | 43 | #define SENSEINFOBYTES 32//note that this value may vary between host implementations |
| 44 | 44 | ||
| 45 | //Command Status value | 45 | //Command Status value |
diff --git a/include/linux/chio.h b/include/linux/chio.h index 519248d8b2b6..d9bac7f97282 100644 --- a/include/linux/chio.h +++ b/include/linux/chio.h | |||
| @@ -21,7 +21,7 @@ | |||
| 21 | * query vendor-specific element types | 21 | * query vendor-specific element types |
| 22 | * | 22 | * |
| 23 | * accessing elements works by specifing type and unit of the element. | 23 | * accessing elements works by specifing type and unit of the element. |
| 24 | * for eample, storage elements are addressed with type = CHET_ST and | 24 | * for example, storage elements are addressed with type = CHET_ST and |
| 25 | * unit = 0 .. cp_nslots-1 | 25 | * unit = 0 .. cp_nslots-1 |
| 26 | * | 26 | * |
| 27 | */ | 27 | */ |
diff --git a/include/linux/dm-log-userspace.h b/include/linux/dm-log-userspace.h index 8a1f972c0fe9..0c3c3a2110c4 100644 --- a/include/linux/dm-log-userspace.h +++ b/include/linux/dm-log-userspace.h | |||
| @@ -363,7 +363,7 @@ | |||
| 363 | * various request types above. The remaining 24-bits are currently | 363 | * various request types above. The remaining 24-bits are currently |
| 364 | * set to zero and are reserved for future use and compatibility concerns. | 364 | * set to zero and are reserved for future use and compatibility concerns. |
| 365 | * | 365 | * |
| 366 | * User-space should always use DM_ULOG_REQUEST_TYPE to aquire the | 366 | * User-space should always use DM_ULOG_REQUEST_TYPE to acquire the |
| 367 | * request type from the 'request_type' field to maintain forward compatibility. | 367 | * request type from the 'request_type' field to maintain forward compatibility. |
| 368 | */ | 368 | */ |
| 369 | #define DM_ULOG_REQUEST_MASK 0xFF | 369 | #define DM_ULOG_REQUEST_MASK 0xFF |
diff --git a/include/linux/hid.h b/include/linux/hid.h index 10f628416740..87093652dda8 100644 --- a/include/linux/hid.h +++ b/include/linux/hid.h | |||
| @@ -312,6 +312,7 @@ struct hid_item { | |||
| 312 | #define HID_QUIRK_MULTI_INPUT 0x00000040 | 312 | #define HID_QUIRK_MULTI_INPUT 0x00000040 |
| 313 | #define HID_QUIRK_SKIP_OUTPUT_REPORTS 0x00010000 | 313 | #define HID_QUIRK_SKIP_OUTPUT_REPORTS 0x00010000 |
| 314 | #define HID_QUIRK_FULLSPEED_INTERVAL 0x10000000 | 314 | #define HID_QUIRK_FULLSPEED_INTERVAL 0x10000000 |
| 315 | #define HID_QUIRK_NO_INIT_REPORTS 0x20000000 | ||
| 315 | 316 | ||
| 316 | /* | 317 | /* |
| 317 | * This is the global environment of the parser. This information is | 318 | * This is the global environment of the parser. This information is |
diff --git a/include/linux/ide.h b/include/linux/ide.h index e4135d6e0556..0ec612959042 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
| @@ -125,8 +125,8 @@ struct ide_io_ports { | |||
| 125 | * Timeouts for various operations: | 125 | * Timeouts for various operations: |
| 126 | */ | 126 | */ |
| 127 | enum { | 127 | enum { |
| 128 | /* spec allows up to 20ms */ | 128 | /* spec allows up to 20ms, but CF cards and SSD drives need more */ |
| 129 | WAIT_DRQ = HZ / 10, /* 100ms */ | 129 | WAIT_DRQ = 1 * HZ, /* 1s */ |
| 130 | /* some laptops are very slow */ | 130 | /* some laptops are very slow */ |
| 131 | WAIT_READY = 5 * HZ, /* 5s */ | 131 | WAIT_READY = 5 * HZ, /* 5s */ |
| 132 | /* should be less than 3ms (?), if all ATAPI CD is closed at boot */ | 132 | /* should be less than 3ms (?), if all ATAPI CD is closed at boot */ |
diff --git a/include/linux/in6.h b/include/linux/in6.h index dfa29168e6ab..bd55c6e46b2e 100644 --- a/include/linux/in6.h +++ b/include/linux/in6.h | |||
| @@ -110,7 +110,7 @@ struct in6_flowlabel_req { | |||
| 110 | #define IPV6_FLOWINFO_FLOWLABEL 0x000fffff | 110 | #define IPV6_FLOWINFO_FLOWLABEL 0x000fffff |
| 111 | #define IPV6_FLOWINFO_PRIORITY 0x0ff00000 | 111 | #define IPV6_FLOWINFO_PRIORITY 0x0ff00000 |
| 112 | 112 | ||
| 113 | /* These defintions are obsolete */ | 113 | /* These definitions are obsolete */ |
| 114 | #define IPV6_PRIORITY_UNCHARACTERIZED 0x0000 | 114 | #define IPV6_PRIORITY_UNCHARACTERIZED 0x0000 |
| 115 | #define IPV6_PRIORITY_FILLER 0x0100 | 115 | #define IPV6_PRIORITY_FILLER 0x0100 |
| 116 | #define IPV6_PRIORITY_UNATTENDED 0x0200 | 116 | #define IPV6_PRIORITY_UNATTENDED 0x0200 |
diff --git a/include/linux/input-polldev.h b/include/linux/input-polldev.h index 597a0077b3c5..5e3dddf8f562 100644 --- a/include/linux/input-polldev.h +++ b/include/linux/input-polldev.h | |||
| @@ -14,12 +14,19 @@ | |||
| 14 | 14 | ||
| 15 | /** | 15 | /** |
| 16 | * struct input_polled_dev - simple polled input device | 16 | * struct input_polled_dev - simple polled input device |
| 17 | * @private: private driver data | 17 | * @private: private driver data. |
| 18 | * @flush: driver-supplied method that flushes device's state upon | 18 | * @open: driver-supplied method that prepares device for polling |
| 19 | * opening (optional) | 19 | * (enabled the device and maybe flushes device state). |
| 20 | * @close: driver-supplied method that is called when device is no | ||
| 21 | * longer being polled. Used to put device into low power mode. | ||
| 20 | * @poll: driver-supplied method that polls the device and posts | 22 | * @poll: driver-supplied method that polls the device and posts |
| 21 | * input events (mandatory). | 23 | * input events (mandatory). |
| 22 | * @poll_interval: specifies how often the poll() method shoudl be called. | 24 | * @poll_interval: specifies how often the poll() method should be called. |
| 25 | * Defaults to 500 msec unless overriden when registering the device. | ||
| 26 | * @poll_interval_max: specifies upper bound for the poll interval. | ||
| 27 | * Defaults to the initial value of @poll_interval. | ||
| 28 | * @poll_interval_min: specifies lower bound for the poll interval. | ||
| 29 | * Defaults to 0. | ||
| 23 | * @input: input device structire associated with the polled device. | 30 | * @input: input device structire associated with the polled device. |
| 24 | * Must be properly initialized by the driver (id, name, phys, bits). | 31 | * Must be properly initialized by the driver (id, name, phys, bits). |
| 25 | * | 32 | * |
| @@ -30,11 +37,16 @@ | |||
| 30 | struct input_polled_dev { | 37 | struct input_polled_dev { |
| 31 | void *private; | 38 | void *private; |
| 32 | 39 | ||
| 33 | void (*flush)(struct input_polled_dev *dev); | 40 | void (*open)(struct input_polled_dev *dev); |
| 41 | void (*close)(struct input_polled_dev *dev); | ||
| 34 | void (*poll)(struct input_polled_dev *dev); | 42 | void (*poll)(struct input_polled_dev *dev); |
| 35 | unsigned int poll_interval; /* msec */ | 43 | unsigned int poll_interval; /* msec */ |
| 44 | unsigned int poll_interval_max; /* msec */ | ||
| 45 | unsigned int poll_interval_min; /* msec */ | ||
| 36 | 46 | ||
| 37 | struct input_dev *input; | 47 | struct input_dev *input; |
| 48 | |||
| 49 | /* private: */ | ||
| 38 | struct delayed_work work; | 50 | struct delayed_work work; |
| 39 | }; | 51 | }; |
| 40 | 52 | ||
diff --git a/include/linux/input.h b/include/linux/input.h index 84b501ab0d8f..7be8a6537b57 100644 --- a/include/linux/input.h +++ b/include/linux/input.h | |||
| @@ -895,7 +895,7 @@ struct ff_periodic_effect { | |||
| 895 | struct ff_envelope envelope; | 895 | struct ff_envelope envelope; |
| 896 | 896 | ||
| 897 | __u32 custom_len; | 897 | __u32 custom_len; |
| 898 | __s16 *custom_data; | 898 | __s16 __user *custom_data; |
| 899 | }; | 899 | }; |
| 900 | 900 | ||
| 901 | /** | 901 | /** |
| @@ -1021,9 +1021,12 @@ struct ff_effect { | |||
| 1021 | * @keycodesize: size of elements in keycode table | 1021 | * @keycodesize: size of elements in keycode table |
| 1022 | * @keycode: map of scancodes to keycodes for this device | 1022 | * @keycode: map of scancodes to keycodes for this device |
| 1023 | * @setkeycode: optional method to alter current keymap, used to implement | 1023 | * @setkeycode: optional method to alter current keymap, used to implement |
| 1024 | * sparse keymaps. If not supplied default mechanism will be used | 1024 | * sparse keymaps. If not supplied default mechanism will be used. |
| 1025 | * The method is being called while holding event_lock and thus must | ||
| 1026 | * not sleep | ||
| 1025 | * @getkeycode: optional method to retrieve current keymap. If not supplied | 1027 | * @getkeycode: optional method to retrieve current keymap. If not supplied |
| 1026 | * default mechanism will be used | 1028 | * default mechanism will be used. The method is being called while |
| 1029 | * holding event_lock and thus must not sleep | ||
| 1027 | * @ff: force feedback structure associated with the device if device | 1030 | * @ff: force feedback structure associated with the device if device |
| 1028 | * supports force feedback effects | 1031 | * supports force feedback effects |
| 1029 | * @repeat_key: stores key code of the last key pressed; used to implement | 1032 | * @repeat_key: stores key code of the last key pressed; used to implement |
| @@ -1040,6 +1043,7 @@ struct ff_effect { | |||
| 1040 | * @absmin: minimum values for events coming from absolute axes | 1043 | * @absmin: minimum values for events coming from absolute axes |
| 1041 | * @absfuzz: describes noisiness for axes | 1044 | * @absfuzz: describes noisiness for axes |
| 1042 | * @absflat: size of the center flat position (used by joydev) | 1045 | * @absflat: size of the center flat position (used by joydev) |
| 1046 | * @absres: resolution used for events coming form absolute axes | ||
| 1043 | * @open: this method is called when the very first user calls | 1047 | * @open: this method is called when the very first user calls |
| 1044 | * input_open_device(). The driver must prepare the device | 1048 | * input_open_device(). The driver must prepare the device |
| 1045 | * to start generating events (start polling thread, | 1049 | * to start generating events (start polling thread, |
| @@ -1294,6 +1298,9 @@ void input_unregister_device(struct input_dev *); | |||
| 1294 | int __must_check input_register_handler(struct input_handler *); | 1298 | int __must_check input_register_handler(struct input_handler *); |
| 1295 | void input_unregister_handler(struct input_handler *); | 1299 | void input_unregister_handler(struct input_handler *); |
| 1296 | 1300 | ||
| 1301 | int input_handler_for_each_handle(struct input_handler *, void *data, | ||
| 1302 | int (*fn)(struct input_handle *, void *)); | ||
| 1303 | |||
| 1297 | int input_register_handle(struct input_handle *); | 1304 | int input_register_handle(struct input_handle *); |
| 1298 | void input_unregister_handle(struct input_handle *); | 1305 | void input_unregister_handle(struct input_handle *); |
| 1299 | 1306 | ||
diff --git a/include/linux/input/matrix_keypad.h b/include/linux/input/matrix_keypad.h index b3cd42d50e16..3bd018baae20 100644 --- a/include/linux/input/matrix_keypad.h +++ b/include/linux/input/matrix_keypad.h | |||
| @@ -41,6 +41,9 @@ struct matrix_keymap_data { | |||
| 41 | * @col_scan_delay_us: delay, measured in microseconds, that is | 41 | * @col_scan_delay_us: delay, measured in microseconds, that is |
| 42 | * needed before we can keypad after activating column gpio | 42 | * needed before we can keypad after activating column gpio |
| 43 | * @debounce_ms: debounce interval in milliseconds | 43 | * @debounce_ms: debounce interval in milliseconds |
| 44 | * @active_low: gpio polarity | ||
| 45 | * @wakeup: controls whether the device should be set up as wakeup | ||
| 46 | * source | ||
| 44 | * | 47 | * |
| 45 | * This structure represents platform-specific data that use used by | 48 | * This structure represents platform-specific data that use used by |
| 46 | * matrix_keypad driver to perform proper initialization. | 49 | * matrix_keypad driver to perform proper initialization. |
diff --git a/include/linux/input/sh_keysc.h b/include/linux/input/sh_keysc.h new file mode 100644 index 000000000000..c211b5cf08e6 --- /dev/null +++ b/include/linux/input/sh_keysc.h | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | #ifndef __SH_KEYSC_H__ | ||
| 2 | #define __SH_KEYSC_H__ | ||
| 3 | |||
| 4 | #define SH_KEYSC_MAXKEYS 30 | ||
| 5 | |||
| 6 | struct sh_keysc_info { | ||
| 7 | enum { SH_KEYSC_MODE_1, SH_KEYSC_MODE_2, SH_KEYSC_MODE_3 } mode; | ||
| 8 | int scan_timing; /* 0 -> 7, see KYCR1, SCN[2:0] */ | ||
| 9 | int delay; | ||
| 10 | int kycr2_delay; | ||
| 11 | int keycodes[SH_KEYSC_MAXKEYS]; | ||
| 12 | }; | ||
| 13 | |||
| 14 | #endif /* __SH_KEYSC_H__ */ | ||
diff --git a/include/linux/input/sparse-keymap.h b/include/linux/input/sparse-keymap.h new file mode 100644 index 000000000000..52db62064c6e --- /dev/null +++ b/include/linux/input/sparse-keymap.h | |||
| @@ -0,0 +1,62 @@ | |||
| 1 | #ifndef _SPARSE_KEYMAP_H | ||
| 2 | #define _SPARSE_KEYMAP_H | ||
| 3 | |||
| 4 | /* | ||
| 5 | * Copyright (c) 2009 Dmitry Torokhov | ||
| 6 | * | ||
| 7 | * This program is free software; you can redistribute it and/or modify it | ||
| 8 | * under the terms of the GNU General Public License version 2 as published by | ||
| 9 | * the Free Software Foundation. | ||
| 10 | */ | ||
| 11 | |||
| 12 | #define KE_END 0 /* Indicates end of keymap */ | ||
| 13 | #define KE_KEY 1 /* Ordinary key/button */ | ||
| 14 | #define KE_SW 2 /* Switch (predetermined value) */ | ||
| 15 | #define KE_VSW 3 /* Switch (value supplied at runtime) */ | ||
| 16 | #define KE_IGNORE 4 /* Known entry that should be ignored */ | ||
| 17 | #define KE_LAST KE_IGNORE | ||
| 18 | |||
| 19 | /** | ||
| 20 | * struct key_entry - keymap entry for use in sparse keymap | ||
| 21 | * @type: Type of the key entry (KE_KEY, KE_SW, KE_VSW, KE_END); | ||
| 22 | * drivers are allowed to extend the list with their own | ||
| 23 | * private definitions. | ||
| 24 | * @code: Device-specific data identifying the button/switch | ||
| 25 | * @keycode: KEY_* code assigned to a key/button | ||
| 26 | * @sw.code: SW_* code assigned to a switch | ||
| 27 | * @sw.value: Value that should be sent in an input even when KE_SW | ||
| 28 | * switch is toggled. KE_VSW switches ignore this field and | ||
| 29 | * expect driver to supply value for the event. | ||
| 30 | * | ||
| 31 | * This structure defines an entry in a sparse keymap used by some | ||
| 32 | * input devices for which traditional table-based approach is not | ||
| 33 | * suitable. | ||
| 34 | */ | ||
| 35 | struct key_entry { | ||
| 36 | int type; /* See KE_* above */ | ||
| 37 | u32 code; | ||
| 38 | union { | ||
| 39 | u16 keycode; /* For KE_KEY */ | ||
| 40 | struct { /* For KE_SW, KE_VSW */ | ||
| 41 | u8 code; | ||
| 42 | u8 value; /* For KE_SW, ignored by KE_VSW */ | ||
| 43 | } sw; | ||
| 44 | }; | ||
| 45 | }; | ||
| 46 | |||
| 47 | struct key_entry *sparse_keymap_entry_from_scancode(struct input_dev *dev, | ||
| 48 | unsigned int code); | ||
| 49 | struct key_entry *sparse_keymap_entry_from_keycode(struct input_dev *dev, | ||
| 50 | unsigned int code); | ||
| 51 | int sparse_keymap_setup(struct input_dev *dev, | ||
| 52 | const struct key_entry *keymap, | ||
| 53 | int (*setup)(struct input_dev *, struct key_entry *)); | ||
| 54 | void sparse_keymap_free(struct input_dev *dev); | ||
| 55 | |||
| 56 | void sparse_keymap_report_entry(struct input_dev *dev, const struct key_entry *ke, | ||
| 57 | unsigned int value, bool autorelease); | ||
| 58 | |||
| 59 | bool sparse_keymap_report_event(struct input_dev *dev, unsigned int code, | ||
| 60 | unsigned int value, bool autorelease); | ||
| 61 | |||
| 62 | #endif /* _SPARSE_KEYMAP_H */ | ||
diff --git a/include/linux/irq.h b/include/linux/irq.h index ae9653dbcd78..a287cfc0b1a6 100644 --- a/include/linux/irq.h +++ b/include/linux/irq.h | |||
| @@ -282,7 +282,7 @@ extern irqreturn_t handle_IRQ_event(unsigned int irq, struct irqaction *action); | |||
| 282 | 282 | ||
| 283 | /* | 283 | /* |
| 284 | * Built-in IRQ handlers for various IRQ types, | 284 | * Built-in IRQ handlers for various IRQ types, |
| 285 | * callable via desc->chip->handle_irq() | 285 | * callable via desc->handle_irq() |
| 286 | */ | 286 | */ |
| 287 | extern void handle_level_irq(unsigned int irq, struct irq_desc *desc); | 287 | extern void handle_level_irq(unsigned int irq, struct irq_desc *desc); |
| 288 | extern void handle_fasteoi_irq(unsigned int irq, struct irq_desc *desc); | 288 | extern void handle_fasteoi_irq(unsigned int irq, struct irq_desc *desc); |
diff --git a/include/linux/libata.h b/include/linux/libata.h index a5b3dc71e819..6a9c4ddd3d95 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
| @@ -1024,7 +1024,7 @@ extern int ata_std_bios_param(struct scsi_device *sdev, | |||
| 1024 | extern int ata_scsi_slave_config(struct scsi_device *sdev); | 1024 | extern int ata_scsi_slave_config(struct scsi_device *sdev); |
| 1025 | extern void ata_scsi_slave_destroy(struct scsi_device *sdev); | 1025 | extern void ata_scsi_slave_destroy(struct scsi_device *sdev); |
| 1026 | extern int ata_scsi_change_queue_depth(struct scsi_device *sdev, | 1026 | extern int ata_scsi_change_queue_depth(struct scsi_device *sdev, |
| 1027 | int queue_depth); | 1027 | int queue_depth, int reason); |
| 1028 | extern struct ata_device *ata_dev_pair(struct ata_device *adev); | 1028 | extern struct ata_device *ata_dev_pair(struct ata_device *adev); |
| 1029 | extern int ata_do_set_mode(struct ata_link *link, struct ata_device **r_failed_dev); | 1029 | extern int ata_do_set_mode(struct ata_link *link, struct ata_device **r_failed_dev); |
| 1030 | 1030 | ||
diff --git a/include/linux/mfd/ezx-pcap.h b/include/linux/mfd/ezx-pcap.h index e5124ceea769..3402042ddc31 100644 --- a/include/linux/mfd/ezx-pcap.h +++ b/include/linux/mfd/ezx-pcap.h | |||
| @@ -45,7 +45,7 @@ void pcap_set_ts_bits(struct pcap_chip *, u32); | |||
| 45 | #define PCAP_CLEAR_INTERRUPT_REGISTER 0x01ffffff | 45 | #define PCAP_CLEAR_INTERRUPT_REGISTER 0x01ffffff |
| 46 | #define PCAP_MASK_ALL_INTERRUPT 0x01ffffff | 46 | #define PCAP_MASK_ALL_INTERRUPT 0x01ffffff |
| 47 | 47 | ||
| 48 | /* registers acessible by both pcap ports */ | 48 | /* registers accessible by both pcap ports */ |
| 49 | #define PCAP_REG_ISR 0x0 /* Interrupt Status */ | 49 | #define PCAP_REG_ISR 0x0 /* Interrupt Status */ |
| 50 | #define PCAP_REG_MSR 0x1 /* Interrupt Mask */ | 50 | #define PCAP_REG_MSR 0x1 /* Interrupt Mask */ |
| 51 | #define PCAP_REG_PSTAT 0x2 /* Processor Status */ | 51 | #define PCAP_REG_PSTAT 0x2 /* Processor Status */ |
| @@ -67,7 +67,7 @@ void pcap_set_ts_bits(struct pcap_chip *, u32); | |||
| 67 | #define PCAP_REG_VENDOR_TEST1 0x1e | 67 | #define PCAP_REG_VENDOR_TEST1 0x1e |
| 68 | #define PCAP_REG_VENDOR_TEST2 0x1f | 68 | #define PCAP_REG_VENDOR_TEST2 0x1f |
| 69 | 69 | ||
| 70 | /* registers acessible by pcap port 1 only (a1200, e2 & e6) */ | 70 | /* registers accessible by pcap port 1 only (a1200, e2 & e6) */ |
| 71 | #define PCAP_REG_INT_SEL 0x3 /* Interrupt Select */ | 71 | #define PCAP_REG_INT_SEL 0x3 /* Interrupt Select */ |
| 72 | #define PCAP_REG_SWCTRL 0x4 /* Switching Regulator Control */ | 72 | #define PCAP_REG_SWCTRL 0x4 /* Switching Regulator Control */ |
| 73 | #define PCAP_REG_VREG1 0x5 /* Regulator Bank 1 Control */ | 73 | #define PCAP_REG_VREG1 0x5 /* Regulator Bank 1 Control */ |
diff --git a/include/linux/mfd/sh_mobile_sdhi.h b/include/linux/mfd/sh_mobile_sdhi.h new file mode 100644 index 000000000000..3bcd7163485c --- /dev/null +++ b/include/linux/mfd/sh_mobile_sdhi.h | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | #ifndef __SH_MOBILE_SDHI_H__ | ||
| 2 | #define __SH_MOBILE_SDHI_H__ | ||
| 3 | |||
| 4 | struct sh_mobile_sdhi_info { | ||
| 5 | void (*set_pwr)(struct platform_device *pdev, int state); | ||
| 6 | }; | ||
| 7 | |||
| 8 | #endif /* __SH_MOBILE_SDHI_H__ */ | ||
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index cabf074b4324..eae1f864c934 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h | |||
| @@ -1587,6 +1587,8 @@ | |||
| 1587 | #define PCI_VENDOR_ID_COMPEX 0x11f6 | 1587 | #define PCI_VENDOR_ID_COMPEX 0x11f6 |
| 1588 | #define PCI_DEVICE_ID_COMPEX_ENET100VG4 0x0112 | 1588 | #define PCI_DEVICE_ID_COMPEX_ENET100VG4 0x0112 |
| 1589 | 1589 | ||
| 1590 | #define PCI_VENDOR_ID_PMC_Sierra 0x11f8 | ||
| 1591 | |||
| 1590 | #define PCI_VENDOR_ID_RP 0x11fe | 1592 | #define PCI_VENDOR_ID_RP 0x11fe |
| 1591 | #define PCI_DEVICE_ID_RP32INTF 0x0001 | 1593 | #define PCI_DEVICE_ID_RP32INTF 0x0001 |
| 1592 | #define PCI_DEVICE_ID_RP8INTF 0x0002 | 1594 | #define PCI_DEVICE_ID_RP8INTF 0x0002 |
diff --git a/include/linux/pktcdvd.h b/include/linux/pktcdvd.h index d745f5b6c7b0..76e5053e1fac 100644 --- a/include/linux/pktcdvd.h +++ b/include/linux/pktcdvd.h | |||
| @@ -30,7 +30,7 @@ | |||
| 30 | 30 | ||
| 31 | /* | 31 | /* |
| 32 | * use drive write caching -- we need deferred error handling to be | 32 | * use drive write caching -- we need deferred error handling to be |
| 33 | * able to sucessfully recover with this option (drive will return good | 33 | * able to successfully recover with this option (drive will return good |
| 34 | * status as soon as the cdb is validated). | 34 | * status as soon as the cdb is validated). |
| 35 | */ | 35 | */ |
| 36 | #if defined(CONFIG_CDROM_PKTCDVD_WCACHE) | 36 | #if defined(CONFIG_CDROM_PKTCDVD_WCACHE) |
diff --git a/include/linux/reiserfs_fs.h b/include/linux/reiserfs_fs.h index dd31e7bae35c..a05b4a20768d 100644 --- a/include/linux/reiserfs_fs.h +++ b/include/linux/reiserfs_fs.h | |||
| @@ -52,11 +52,63 @@ | |||
| 52 | #define REISERFS_IOC32_GETVERSION FS_IOC32_GETVERSION | 52 | #define REISERFS_IOC32_GETVERSION FS_IOC32_GETVERSION |
| 53 | #define REISERFS_IOC32_SETVERSION FS_IOC32_SETVERSION | 53 | #define REISERFS_IOC32_SETVERSION FS_IOC32_SETVERSION |
| 54 | 54 | ||
| 55 | /* Locking primitives */ | 55 | /* |
| 56 | /* Right now we are still falling back to (un)lock_kernel, but eventually that | 56 | * Locking primitives. The write lock is a per superblock |
| 57 | would evolve into real per-fs locks */ | 57 | * special mutex that has properties close to the Big Kernel Lock |
| 58 | #define reiserfs_write_lock( sb ) lock_kernel() | 58 | * which was used in the previous locking scheme. |
| 59 | #define reiserfs_write_unlock( sb ) unlock_kernel() | 59 | */ |
| 60 | void reiserfs_write_lock(struct super_block *s); | ||
| 61 | void reiserfs_write_unlock(struct super_block *s); | ||
| 62 | int reiserfs_write_lock_once(struct super_block *s); | ||
| 63 | void reiserfs_write_unlock_once(struct super_block *s, int lock_depth); | ||
| 64 | |||
| 65 | /* | ||
| 66 | * Several mutexes depend on the write lock. | ||
| 67 | * However sometimes we want to relax the write lock while we hold | ||
| 68 | * these mutexes, according to the release/reacquire on schedule() | ||
| 69 | * properties of the Bkl that were used. | ||
| 70 | * Reiserfs performances and locking were based on this scheme. | ||
| 71 | * Now that the write lock is a mutex and not the bkl anymore, doing so | ||
| 72 | * may result in a deadlock: | ||
| 73 | * | ||
| 74 | * A acquire write_lock | ||
| 75 | * A acquire j_commit_mutex | ||
| 76 | * A release write_lock and wait for something | ||
| 77 | * B acquire write_lock | ||
| 78 | * B can't acquire j_commit_mutex and sleep | ||
| 79 | * A can't acquire write lock anymore | ||
| 80 | * deadlock | ||
| 81 | * | ||
| 82 | * What we do here is avoiding such deadlock by playing the same game | ||
| 83 | * than the Bkl: if we can't acquire a mutex that depends on the write lock, | ||
| 84 | * we release the write lock, wait a bit and then retry. | ||
| 85 | * | ||
| 86 | * The mutexes concerned by this hack are: | ||
| 87 | * - The commit mutex of a journal list | ||
| 88 | * - The flush mutex | ||
| 89 | * - The journal lock | ||
| 90 | * - The inode mutex | ||
| 91 | */ | ||
| 92 | static inline void reiserfs_mutex_lock_safe(struct mutex *m, | ||
| 93 | struct super_block *s) | ||
| 94 | { | ||
| 95 | reiserfs_write_unlock(s); | ||
| 96 | mutex_lock(m); | ||
| 97 | reiserfs_write_lock(s); | ||
| 98 | } | ||
| 99 | |||
| 100 | /* | ||
| 101 | * When we schedule, we usually want to also release the write lock, | ||
| 102 | * according to the previous bkl based locking scheme of reiserfs. | ||
| 103 | */ | ||
| 104 | static inline void reiserfs_cond_resched(struct super_block *s) | ||
| 105 | { | ||
| 106 | if (need_resched()) { | ||
| 107 | reiserfs_write_unlock(s); | ||
| 108 | schedule(); | ||
| 109 | reiserfs_write_lock(s); | ||
| 110 | } | ||
| 111 | } | ||
| 60 | 112 | ||
| 61 | struct fid; | 113 | struct fid; |
| 62 | 114 | ||
| @@ -1329,7 +1381,11 @@ static inline loff_t max_reiserfs_offset(struct inode *inode) | |||
| 1329 | #define get_generation(s) atomic_read (&fs_generation(s)) | 1381 | #define get_generation(s) atomic_read (&fs_generation(s)) |
| 1330 | #define FILESYSTEM_CHANGED_TB(tb) (get_generation((tb)->tb_sb) != (tb)->fs_gen) | 1382 | #define FILESYSTEM_CHANGED_TB(tb) (get_generation((tb)->tb_sb) != (tb)->fs_gen) |
| 1331 | #define __fs_changed(gen,s) (gen != get_generation (s)) | 1383 | #define __fs_changed(gen,s) (gen != get_generation (s)) |
| 1332 | #define fs_changed(gen,s) ({cond_resched(); __fs_changed(gen, s);}) | 1384 | #define fs_changed(gen,s) \ |
| 1385 | ({ \ | ||
| 1386 | reiserfs_cond_resched(s); \ | ||
| 1387 | __fs_changed(gen, s); \ | ||
| 1388 | }) | ||
| 1333 | 1389 | ||
| 1334 | /***************************************************************************/ | 1390 | /***************************************************************************/ |
| 1335 | /* FIXATE NODES */ | 1391 | /* FIXATE NODES */ |
| @@ -2258,8 +2314,7 @@ __u32 r5_hash(const signed char *msg, int len); | |||
| 2258 | #define SPARE_SPACE 500 | 2314 | #define SPARE_SPACE 500 |
| 2259 | 2315 | ||
| 2260 | /* prototypes from ioctl.c */ | 2316 | /* prototypes from ioctl.c */ |
| 2261 | int reiserfs_ioctl(struct inode *inode, struct file *filp, | 2317 | long reiserfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg); |
| 2262 | unsigned int cmd, unsigned long arg); | ||
| 2263 | long reiserfs_compat_ioctl(struct file *filp, | 2318 | long reiserfs_compat_ioctl(struct file *filp, |
| 2264 | unsigned int cmd, unsigned long arg); | 2319 | unsigned int cmd, unsigned long arg); |
| 2265 | int reiserfs_unpack(struct inode *inode, struct file *filp); | 2320 | int reiserfs_unpack(struct inode *inode, struct file *filp); |
diff --git a/include/linux/reiserfs_fs_sb.h b/include/linux/reiserfs_fs_sb.h index dab68bbed675..52c83b6a758a 100644 --- a/include/linux/reiserfs_fs_sb.h +++ b/include/linux/reiserfs_fs_sb.h | |||
| @@ -7,6 +7,8 @@ | |||
| 7 | #ifdef __KERNEL__ | 7 | #ifdef __KERNEL__ |
| 8 | #include <linux/workqueue.h> | 8 | #include <linux/workqueue.h> |
| 9 | #include <linux/rwsem.h> | 9 | #include <linux/rwsem.h> |
| 10 | #include <linux/mutex.h> | ||
| 11 | #include <linux/sched.h> | ||
| 10 | #endif | 12 | #endif |
| 11 | 13 | ||
| 12 | typedef enum { | 14 | typedef enum { |
| @@ -355,6 +357,13 @@ struct reiserfs_sb_info { | |||
| 355 | struct reiserfs_journal *s_journal; /* pointer to journal information */ | 357 | struct reiserfs_journal *s_journal; /* pointer to journal information */ |
| 356 | unsigned short s_mount_state; /* reiserfs state (valid, invalid) */ | 358 | unsigned short s_mount_state; /* reiserfs state (valid, invalid) */ |
| 357 | 359 | ||
| 360 | /* Serialize writers access, replace the old bkl */ | ||
| 361 | struct mutex lock; | ||
| 362 | /* Owner of the lock (can be recursive) */ | ||
| 363 | struct task_struct *lock_owner; | ||
| 364 | /* Depth of the lock, start from -1 like the bkl */ | ||
| 365 | int lock_depth; | ||
| 366 | |||
| 358 | /* Comment? -Hans */ | 367 | /* Comment? -Hans */ |
| 359 | void (*end_io_handler) (struct buffer_head *, int); | 368 | void (*end_io_handler) (struct buffer_head *, int); |
| 360 | hashf_t s_hash_function; /* pointer to function which is used | 369 | hashf_t s_hash_function; /* pointer to function which is used |
| @@ -408,6 +417,17 @@ struct reiserfs_sb_info { | |||
| 408 | char *s_qf_names[MAXQUOTAS]; | 417 | char *s_qf_names[MAXQUOTAS]; |
| 409 | int s_jquota_fmt; | 418 | int s_jquota_fmt; |
| 410 | #endif | 419 | #endif |
| 420 | #ifdef CONFIG_REISERFS_CHECK | ||
| 421 | |||
| 422 | struct tree_balance *cur_tb; /* | ||
| 423 | * Detects whether more than one | ||
| 424 | * copy of tb exists per superblock | ||
| 425 | * as a means of checking whether | ||
| 426 | * do_balance is executing concurrently | ||
| 427 | * against another tree reader/writer | ||
| 428 | * on a same mount point. | ||
| 429 | */ | ||
| 430 | #endif | ||
| 411 | }; | 431 | }; |
| 412 | 432 | ||
| 413 | /* Definitions of reiserfs on-disk properties: */ | 433 | /* Definitions of reiserfs on-disk properties: */ |
diff --git a/include/linux/serial_reg.h b/include/linux/serial_reg.h index 850db2e80510..cf9327c051ad 100644 --- a/include/linux/serial_reg.h +++ b/include/linux/serial_reg.h | |||
| @@ -216,10 +216,10 @@ | |||
| 216 | 216 | ||
| 217 | #define UART_IIR_TOD 0x08 /* Character Timeout Indication Detected */ | 217 | #define UART_IIR_TOD 0x08 /* Character Timeout Indication Detected */ |
| 218 | 218 | ||
| 219 | #define UART_FCR_PXAR1 0x00 /* receive FIFO treshold = 1 */ | 219 | #define UART_FCR_PXAR1 0x00 /* receive FIFO threshold = 1 */ |
| 220 | #define UART_FCR_PXAR8 0x40 /* receive FIFO treshold = 8 */ | 220 | #define UART_FCR_PXAR8 0x40 /* receive FIFO threshold = 8 */ |
| 221 | #define UART_FCR_PXAR16 0x80 /* receive FIFO treshold = 16 */ | 221 | #define UART_FCR_PXAR16 0x80 /* receive FIFO threshold = 16 */ |
| 222 | #define UART_FCR_PXAR32 0xc0 /* receive FIFO treshold = 32 */ | 222 | #define UART_FCR_PXAR32 0xc0 /* receive FIFO threshold = 32 */ |
| 223 | 223 | ||
| 224 | 224 | ||
| 225 | 225 | ||
diff --git a/include/linux/serio.h b/include/linux/serio.h index a640bc2afe76..e2f3044d4a4a 100644 --- a/include/linux/serio.h +++ b/include/linux/serio.h | |||
| @@ -215,5 +215,6 @@ static inline void serio_unpin_driver(struct serio *serio) | |||
| 215 | #define SERIO_INEXIO 0x37 | 215 | #define SERIO_INEXIO 0x37 |
| 216 | #define SERIO_TOUCHIT213 0x38 | 216 | #define SERIO_TOUCHIT213 0x38 |
| 217 | #define SERIO_W8001 0x39 | 217 | #define SERIO_W8001 0x39 |
| 218 | #define SERIO_DYNAPRO 0x3a | ||
| 218 | 219 | ||
| 219 | #endif | 220 | #endif |
diff --git a/include/linux/sh_intc.h b/include/linux/sh_intc.h index 68e212ff9dde..4ef246f14654 100644 --- a/include/linux/sh_intc.h +++ b/include/linux/sh_intc.h | |||
| @@ -57,10 +57,8 @@ struct intc_desc { | |||
| 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; | 59 | char *name; |
| 60 | #if defined(CONFIG_CPU_SH3) || defined(CONFIG_CPU_SH4A) | ||
| 61 | struct intc_mask_reg *ack_regs; | 60 | struct intc_mask_reg *ack_regs; |
| 62 | unsigned int nr_ack_regs; | 61 | unsigned int nr_ack_regs; |
| 63 | #endif | ||
| 64 | }; | 62 | }; |
| 65 | 63 | ||
| 66 | #define _INTC_ARRAY(a) a, sizeof(a)/sizeof(*a) | 64 | #define _INTC_ARRAY(a) a, sizeof(a)/sizeof(*a) |
| @@ -73,7 +71,6 @@ struct intc_desc symbol __initdata = { \ | |||
| 73 | chipname, \ | 71 | chipname, \ |
| 74 | } | 72 | } |
| 75 | 73 | ||
| 76 | #if defined(CONFIG_CPU_SH3) || defined(CONFIG_CPU_SH4A) | ||
| 77 | #define DECLARE_INTC_DESC_ACK(symbol, chipname, vectors, groups, \ | 74 | #define DECLARE_INTC_DESC_ACK(symbol, chipname, vectors, groups, \ |
| 78 | mask_regs, prio_regs, sense_regs, ack_regs) \ | 75 | mask_regs, prio_regs, sense_regs, ack_regs) \ |
| 79 | struct intc_desc symbol __initdata = { \ | 76 | struct intc_desc symbol __initdata = { \ |
| @@ -83,9 +80,11 @@ struct intc_desc symbol __initdata = { \ | |||
| 83 | chipname, \ | 80 | chipname, \ |
| 84 | _INTC_ARRAY(ack_regs), \ | 81 | _INTC_ARRAY(ack_regs), \ |
| 85 | } | 82 | } |
| 86 | #endif | ||
| 87 | 83 | ||
| 88 | void __init register_intc_controller(struct intc_desc *desc); | 84 | void __init register_intc_controller(struct intc_desc *desc); |
| 89 | int intc_set_priority(unsigned int irq, unsigned int prio); | 85 | int intc_set_priority(unsigned int irq, unsigned int prio); |
| 90 | 86 | ||
| 87 | int reserve_irq_vector(unsigned int irq); | ||
| 88 | void reserve_irq_legacy(void); | ||
| 89 | |||
| 91 | #endif /* __SH_INTC_H */ | 90 | #endif /* __SH_INTC_H */ |
diff --git a/include/linux/sh_pfc.h b/include/linux/sh_pfc.h new file mode 100644 index 000000000000..07c08af9f8f6 --- /dev/null +++ b/include/linux/sh_pfc.h | |||
| @@ -0,0 +1,96 @@ | |||
| 1 | /* | ||
| 2 | * SuperH Pin Function Controller Support | ||
| 3 | * | ||
| 4 | * Copyright (c) 2008 Magnus Damm | ||
| 5 | * | ||
| 6 | * This file is subject to the terms and conditions of the GNU General Public | ||
| 7 | * License. See the file "COPYING" in the main directory of this archive | ||
| 8 | * for more details. | ||
| 9 | */ | ||
| 10 | |||
| 11 | #ifndef __SH_PFC_H | ||
| 12 | #define __SH_PFC_H | ||
| 13 | |||
| 14 | #include <asm-generic/gpio.h> | ||
| 15 | |||
| 16 | typedef unsigned short pinmux_enum_t; | ||
| 17 | typedef unsigned short pinmux_flag_t; | ||
| 18 | |||
| 19 | #define PINMUX_TYPE_NONE 0 | ||
| 20 | #define PINMUX_TYPE_FUNCTION 1 | ||
| 21 | #define PINMUX_TYPE_GPIO 2 | ||
| 22 | #define PINMUX_TYPE_OUTPUT 3 | ||
| 23 | #define PINMUX_TYPE_INPUT 4 | ||
| 24 | #define PINMUX_TYPE_INPUT_PULLUP 5 | ||
| 25 | #define PINMUX_TYPE_INPUT_PULLDOWN 6 | ||
| 26 | |||
| 27 | #define PINMUX_FLAG_TYPE (0x7) | ||
| 28 | #define PINMUX_FLAG_WANT_PULLUP (1 << 3) | ||
| 29 | #define PINMUX_FLAG_WANT_PULLDOWN (1 << 4) | ||
| 30 | |||
| 31 | #define PINMUX_FLAG_DBIT_SHIFT 5 | ||
| 32 | #define PINMUX_FLAG_DBIT (0x1f << PINMUX_FLAG_DBIT_SHIFT) | ||
| 33 | #define PINMUX_FLAG_DREG_SHIFT 10 | ||
| 34 | #define PINMUX_FLAG_DREG (0x3f << PINMUX_FLAG_DREG_SHIFT) | ||
| 35 | |||
| 36 | struct pinmux_gpio { | ||
| 37 | pinmux_enum_t enum_id; | ||
| 38 | pinmux_flag_t flags; | ||
| 39 | }; | ||
| 40 | |||
| 41 | #define PINMUX_GPIO(gpio, data_or_mark) [gpio] = { data_or_mark } | ||
| 42 | #define PINMUX_DATA(data_or_mark, ids...) data_or_mark, ids, 0 | ||
| 43 | |||
| 44 | struct pinmux_cfg_reg { | ||
| 45 | unsigned long reg, reg_width, field_width; | ||
| 46 | unsigned long *cnt; | ||
| 47 | pinmux_enum_t *enum_ids; | ||
| 48 | }; | ||
| 49 | |||
| 50 | #define PINMUX_CFG_REG(name, r, r_width, f_width) \ | ||
| 51 | .reg = r, .reg_width = r_width, .field_width = f_width, \ | ||
| 52 | .cnt = (unsigned long [r_width / f_width]) {}, \ | ||
| 53 | .enum_ids = (pinmux_enum_t [(r_width / f_width) * (1 << f_width)]) \ | ||
| 54 | |||
| 55 | struct pinmux_data_reg { | ||
| 56 | unsigned long reg, reg_width, reg_shadow; | ||
| 57 | pinmux_enum_t *enum_ids; | ||
| 58 | }; | ||
| 59 | |||
| 60 | #define PINMUX_DATA_REG(name, r, r_width) \ | ||
| 61 | .reg = r, .reg_width = r_width, \ | ||
| 62 | .enum_ids = (pinmux_enum_t [r_width]) \ | ||
| 63 | |||
| 64 | struct pinmux_range { | ||
| 65 | pinmux_enum_t begin; | ||
| 66 | pinmux_enum_t end; | ||
| 67 | pinmux_enum_t force; | ||
| 68 | }; | ||
| 69 | |||
| 70 | struct pinmux_info { | ||
| 71 | char *name; | ||
| 72 | pinmux_enum_t reserved_id; | ||
| 73 | struct pinmux_range data; | ||
| 74 | struct pinmux_range input; | ||
| 75 | struct pinmux_range input_pd; | ||
| 76 | struct pinmux_range input_pu; | ||
| 77 | struct pinmux_range output; | ||
| 78 | struct pinmux_range mark; | ||
| 79 | struct pinmux_range function; | ||
| 80 | |||
| 81 | unsigned first_gpio, last_gpio; | ||
| 82 | |||
| 83 | struct pinmux_gpio *gpios; | ||
| 84 | struct pinmux_cfg_reg *cfg_regs; | ||
| 85 | struct pinmux_data_reg *data_regs; | ||
| 86 | |||
| 87 | pinmux_enum_t *gpio_data; | ||
| 88 | unsigned int gpio_data_size; | ||
| 89 | |||
| 90 | unsigned long *gpio_in_use; | ||
| 91 | struct gpio_chip chip; | ||
| 92 | }; | ||
| 93 | |||
| 94 | int register_pinmux(struct pinmux_info *pip); | ||
| 95 | |||
| 96 | #endif /* __SH_PFC_H */ | ||
diff --git a/include/linux/spi/spi_bitbang.h b/include/linux/spi/spi_bitbang.h index eed4254bd503..3274c507b8a9 100644 --- a/include/linux/spi/spi_bitbang.h +++ b/include/linux/spi/spi_bitbang.h | |||
| @@ -15,7 +15,7 @@ | |||
| 15 | * Some hardware works well with requests at spi_transfer scope: | 15 | * Some hardware works well with requests at spi_transfer scope: |
| 16 | * | 16 | * |
| 17 | * - Drivers leveraging smarter hardware, with fifos or DMA; or for half | 17 | * - Drivers leveraging smarter hardware, with fifos or DMA; or for half |
| 18 | * duplex (MicroWire) controllers. Provide chipslect() and txrx_bufs(), | 18 | * duplex (MicroWire) controllers. Provide chipselect() and txrx_bufs(), |
| 19 | * and custom setup()/cleanup() methods. | 19 | * and custom setup()/cleanup() methods. |
| 20 | */ | 20 | */ |
| 21 | 21 | ||
diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h index 56af3ca75e24..877ba039e6a4 100644 --- a/include/linux/sysctl.h +++ b/include/linux/sysctl.h | |||
| @@ -89,8 +89,8 @@ enum | |||
| 89 | KERN_VERSION=4, /* string: compile time info */ | 89 | KERN_VERSION=4, /* string: compile time info */ |
| 90 | KERN_SECUREMASK=5, /* struct: maximum rights mask */ | 90 | KERN_SECUREMASK=5, /* struct: maximum rights mask */ |
| 91 | KERN_PROF=6, /* table: profiling information */ | 91 | KERN_PROF=6, /* table: profiling information */ |
| 92 | KERN_NODENAME=7, | 92 | KERN_NODENAME=7, /* string: hostname */ |
| 93 | KERN_DOMAINNAME=8, | 93 | KERN_DOMAINNAME=8, /* string: domainname */ |
| 94 | 94 | ||
| 95 | KERN_PANIC=15, /* int: panic timeout */ | 95 | KERN_PANIC=15, /* int: panic timeout */ |
| 96 | KERN_REALROOTDEV=16, /* real root device to mount after initrd */ | 96 | KERN_REALROOTDEV=16, /* real root device to mount after initrd */ |
| @@ -102,8 +102,8 @@ enum | |||
| 102 | KERN_PPC_HTABRECLAIM=25, /* turn htab reclaimation on/off on PPC */ | 102 | KERN_PPC_HTABRECLAIM=25, /* turn htab reclaimation on/off on PPC */ |
| 103 | KERN_PPC_ZEROPAGED=26, /* turn idle page zeroing on/off on PPC */ | 103 | KERN_PPC_ZEROPAGED=26, /* turn idle page zeroing on/off on PPC */ |
| 104 | KERN_PPC_POWERSAVE_NAP=27, /* use nap mode for power saving */ | 104 | KERN_PPC_POWERSAVE_NAP=27, /* use nap mode for power saving */ |
| 105 | KERN_MODPROBE=28, | 105 | KERN_MODPROBE=28, /* string: modprobe path */ |
| 106 | KERN_SG_BIG_BUFF=29, | 106 | KERN_SG_BIG_BUFF=29, /* int: sg driver reserved buffer size */ |
| 107 | KERN_ACCT=30, /* BSD process accounting parameters */ | 107 | KERN_ACCT=30, /* BSD process accounting parameters */ |
| 108 | KERN_PPC_L2CR=31, /* l2cr register on PPC */ | 108 | KERN_PPC_L2CR=31, /* l2cr register on PPC */ |
| 109 | 109 | ||
| @@ -150,7 +150,7 @@ enum | |||
| 150 | KERN_ACPI_VIDEO_FLAGS=71, /* int: flags for setting up video after ACPI sleep */ | 150 | KERN_ACPI_VIDEO_FLAGS=71, /* int: flags for setting up video after ACPI sleep */ |
| 151 | KERN_IA64_UNALIGNED=72, /* int: ia64 unaligned userland trap enable */ | 151 | KERN_IA64_UNALIGNED=72, /* int: ia64 unaligned userland trap enable */ |
| 152 | KERN_COMPAT_LOG=73, /* int: print compat layer messages */ | 152 | KERN_COMPAT_LOG=73, /* int: print compat layer messages */ |
| 153 | KERN_MAX_LOCK_DEPTH=74, | 153 | KERN_MAX_LOCK_DEPTH=74, /* int: rtmutex's maximum lock depth */ |
| 154 | KERN_NMI_WATCHDOG=75, /* int: enable/disable nmi watchdog */ | 154 | KERN_NMI_WATCHDOG=75, /* int: enable/disable nmi watchdog */ |
| 155 | KERN_PANIC_ON_NMI=76, /* int: whether we will panic on an unrecovered */ | 155 | KERN_PANIC_ON_NMI=76, /* int: whether we will panic on an unrecovered */ |
| 156 | }; | 156 | }; |
diff --git a/include/linux/ucb1400.h b/include/linux/ucb1400.h index adb44066680c..1b4790911052 100644 --- a/include/linux/ucb1400.h +++ b/include/linux/ucb1400.h | |||
| @@ -110,6 +110,10 @@ struct ucb1400 { | |||
| 110 | struct platform_device *ucb1400_gpio; | 110 | struct platform_device *ucb1400_gpio; |
| 111 | }; | 111 | }; |
| 112 | 112 | ||
| 113 | struct ucb1400_pdata { | ||
| 114 | int irq; | ||
| 115 | }; | ||
| 116 | |||
| 113 | static inline u16 ucb1400_reg_read(struct snd_ac97 *ac97, u16 reg) | 117 | static inline u16 ucb1400_reg_read(struct snd_ac97 *ac97, u16 reg) |
| 114 | { | 118 | { |
| 115 | return ac97->bus->ops->read(ac97, reg); | 119 | return ac97->bus->ops->read(ac97, reg); |
diff --git a/include/linux/usb/wusb.h b/include/linux/usb/wusb.h index 429c631d2aad..63ebdcc5dda6 100644 --- a/include/linux/usb/wusb.h +++ b/include/linux/usb/wusb.h | |||
| @@ -74,7 +74,7 @@ enum { | |||
| 74 | * WUSB defines that CHIDs, CDIDs and CKs are a 16 byte string of | 74 | * WUSB defines that CHIDs, CDIDs and CKs are a 16 byte string of |
| 75 | * data. In order to avoid confusion and enforce types, we wrap it. | 75 | * data. In order to avoid confusion and enforce types, we wrap it. |
| 76 | * | 76 | * |
| 77 | * Make it packed, as we use it in some hw defintions. | 77 | * Make it packed, as we use it in some hw definitions. |
| 78 | */ | 78 | */ |
| 79 | struct wusb_ckhdid { | 79 | struct wusb_ckhdid { |
| 80 | u8 data[16]; | 80 | u8 data[16]; |
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h index b59e78c57161..32b92298fd79 100644 --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h | |||
| @@ -361,6 +361,7 @@ struct v4l2_pix_format { | |||
| 361 | #define V4L2_PIX_FMT_PJPG v4l2_fourcc('P', 'J', 'P', 'G') /* Pixart 73xx JPEG */ | 361 | #define V4L2_PIX_FMT_PJPG v4l2_fourcc('P', 'J', 'P', 'G') /* Pixart 73xx JPEG */ |
| 362 | #define V4L2_PIX_FMT_OV511 v4l2_fourcc('O', '5', '1', '1') /* ov511 JPEG */ | 362 | #define V4L2_PIX_FMT_OV511 v4l2_fourcc('O', '5', '1', '1') /* ov511 JPEG */ |
| 363 | #define V4L2_PIX_FMT_OV518 v4l2_fourcc('O', '5', '1', '8') /* ov518 JPEG */ | 363 | #define V4L2_PIX_FMT_OV518 v4l2_fourcc('O', '5', '1', '8') /* ov518 JPEG */ |
| 364 | #define V4L2_PIX_FMT_STV0680 v4l2_fourcc('S', '6', '8', '0') /* stv0680 bayer */ | ||
| 364 | 365 | ||
| 365 | /* | 366 | /* |
| 366 | * F O R M A T E N U M E R A T I O N | 367 | * F O R M A T E N U M E R A T I O N |
| @@ -490,7 +491,7 @@ struct v4l2_jpegcompression { | |||
| 490 | * you do, leave them untouched. | 491 | * you do, leave them untouched. |
| 491 | * Inluding less markers will make the | 492 | * Inluding less markers will make the |
| 492 | * resulting code smaller, but there will | 493 | * resulting code smaller, but there will |
| 493 | * be fewer aplications which can read it. | 494 | * be fewer applications which can read it. |
| 494 | * The presence of the APP and COM marker | 495 | * The presence of the APP and COM marker |
| 495 | * is influenced by APP_len and COM_len | 496 | * is influenced by APP_len and COM_len |
| 496 | * ONLY, not by this property! */ | 497 | * ONLY, not by this property! */ |
| @@ -563,6 +564,7 @@ struct v4l2_framebuffer { | |||
| 563 | #define V4L2_FBUF_CAP_LOCAL_ALPHA 0x0010 | 564 | #define V4L2_FBUF_CAP_LOCAL_ALPHA 0x0010 |
| 564 | #define V4L2_FBUF_CAP_GLOBAL_ALPHA 0x0020 | 565 | #define V4L2_FBUF_CAP_GLOBAL_ALPHA 0x0020 |
| 565 | #define V4L2_FBUF_CAP_LOCAL_INV_ALPHA 0x0040 | 566 | #define V4L2_FBUF_CAP_LOCAL_INV_ALPHA 0x0040 |
| 567 | #define V4L2_FBUF_CAP_SRC_CHROMAKEY 0x0080 | ||
| 566 | /* Flags for the 'flags' field. */ | 568 | /* Flags for the 'flags' field. */ |
| 567 | #define V4L2_FBUF_FLAG_PRIMARY 0x0001 | 569 | #define V4L2_FBUF_FLAG_PRIMARY 0x0001 |
| 568 | #define V4L2_FBUF_FLAG_OVERLAY 0x0002 | 570 | #define V4L2_FBUF_FLAG_OVERLAY 0x0002 |
| @@ -570,6 +572,7 @@ struct v4l2_framebuffer { | |||
| 570 | #define V4L2_FBUF_FLAG_LOCAL_ALPHA 0x0008 | 572 | #define V4L2_FBUF_FLAG_LOCAL_ALPHA 0x0008 |
| 571 | #define V4L2_FBUF_FLAG_GLOBAL_ALPHA 0x0010 | 573 | #define V4L2_FBUF_FLAG_GLOBAL_ALPHA 0x0010 |
| 572 | #define V4L2_FBUF_FLAG_LOCAL_INV_ALPHA 0x0020 | 574 | #define V4L2_FBUF_FLAG_LOCAL_INV_ALPHA 0x0020 |
| 575 | #define V4L2_FBUF_FLAG_SRC_CHROMAKEY 0x0040 | ||
| 573 | 576 | ||
| 574 | struct v4l2_clip { | 577 | struct v4l2_clip { |
| 575 | struct v4l2_rect c; | 578 | struct v4l2_rect c; |
| @@ -912,8 +915,10 @@ enum v4l2_colorfx { | |||
| 912 | #define V4L2_CID_AUTOBRIGHTNESS (V4L2_CID_BASE+32) | 915 | #define V4L2_CID_AUTOBRIGHTNESS (V4L2_CID_BASE+32) |
| 913 | #define V4L2_CID_BAND_STOP_FILTER (V4L2_CID_BASE+33) | 916 | #define V4L2_CID_BAND_STOP_FILTER (V4L2_CID_BASE+33) |
| 914 | 917 | ||
| 918 | #define V4L2_CID_ROTATE (V4L2_CID_BASE+34) | ||
| 919 | #define V4L2_CID_BG_COLOR (V4L2_CID_BASE+35) | ||
| 915 | /* last CID + 1 */ | 920 | /* last CID + 1 */ |
| 916 | #define V4L2_CID_LASTP1 (V4L2_CID_BASE+34) | 921 | #define V4L2_CID_LASTP1 (V4L2_CID_BASE+36) |
| 917 | 922 | ||
| 918 | /* MPEG-class control IDs defined by V4L2 */ | 923 | /* MPEG-class control IDs defined by V4L2 */ |
| 919 | #define V4L2_CID_MPEG_BASE (V4L2_CTRL_CLASS_MPEG | 0x900) | 924 | #define V4L2_CID_MPEG_BASE (V4L2_CTRL_CLASS_MPEG | 0x900) |
