diff options
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/Kbuild | 4 | ||||
-rw-r--r-- | include/linux/acct.h | 1 | ||||
-rw-r--r-- | include/linux/ata.h | 14 | ||||
-rw-r--r-- | include/linux/fs.h | 37 | ||||
-rw-r--r-- | include/linux/ftape-header-segment.h | 122 | ||||
-rw-r--r-- | include/linux/ftape-vendors.h | 137 | ||||
-rw-r--r-- | include/linux/ftape.h | 201 | ||||
-rw-r--r-- | include/linux/igmp.h | 1 | ||||
-rw-r--r-- | include/linux/kernelcapi.h | 2 | ||||
-rw-r--r-- | include/linux/libata.h | 52 | ||||
-rw-r--r-- | include/linux/module.h | 13 | ||||
-rw-r--r-- | include/linux/netdevice.h | 1 | ||||
-rw-r--r-- | include/linux/netfilter_ipv4/ip_conntrack.h | 1 | ||||
-rw-r--r-- | include/linux/pata_platform.h | 13 | ||||
-rw-r--r-- | include/linux/poll.h | 3 | ||||
-rw-r--r-- | include/linux/radix-tree.h | 1 | ||||
-rw-r--r-- | include/linux/skbuff.h | 22 | ||||
-rw-r--r-- | include/linux/zftape.h | 87 |
18 files changed, 57 insertions, 655 deletions
diff --git a/include/linux/Kbuild b/include/linux/Kbuild index d7e04689304c..ff433126361f 100644 --- a/include/linux/Kbuild +++ b/include/linux/Kbuild | |||
@@ -60,8 +60,6 @@ header-y += fadvise.h | |||
60 | header-y += fd.h | 60 | header-y += fd.h |
61 | header-y += fdreg.h | 61 | header-y += fdreg.h |
62 | header-y += fib_rules.h | 62 | header-y += fib_rules.h |
63 | header-y += ftape-header-segment.h | ||
64 | header-y += ftape-vendors.h | ||
65 | header-y += fuse.h | 63 | header-y += fuse.h |
66 | header-y += futex.h | 64 | header-y += futex.h |
67 | header-y += genetlink.h | 65 | header-y += genetlink.h |
@@ -206,7 +204,6 @@ unifdef-y += fcntl.h | |||
206 | unifdef-y += filter.h | 204 | unifdef-y += filter.h |
207 | unifdef-y += flat.h | 205 | unifdef-y += flat.h |
208 | unifdef-y += fs.h | 206 | unifdef-y += fs.h |
209 | unifdef-y += ftape.h | ||
210 | unifdef-y += gameport.h | 207 | unifdef-y += gameport.h |
211 | unifdef-y += generic_serial.h | 208 | unifdef-y += generic_serial.h |
212 | unifdef-y += genhd.h | 209 | unifdef-y += genhd.h |
@@ -341,6 +338,5 @@ unifdef-y += wait.h | |||
341 | unifdef-y += wanrouter.h | 338 | unifdef-y += wanrouter.h |
342 | unifdef-y += watchdog.h | 339 | unifdef-y += watchdog.h |
343 | unifdef-y += xfrm.h | 340 | unifdef-y += xfrm.h |
344 | unifdef-y += zftape.h | ||
345 | 341 | ||
346 | objhdr-y += version.h | 342 | objhdr-y += version.h |
diff --git a/include/linux/acct.h b/include/linux/acct.h index 0496d1f09952..302eb727ecb8 100644 --- a/include/linux/acct.h +++ b/include/linux/acct.h | |||
@@ -119,6 +119,7 @@ struct acct_v3 | |||
119 | #ifdef CONFIG_BSD_PROCESS_ACCT | 119 | #ifdef CONFIG_BSD_PROCESS_ACCT |
120 | struct vfsmount; | 120 | struct vfsmount; |
121 | struct super_block; | 121 | struct super_block; |
122 | struct pacct_struct; | ||
122 | extern void acct_auto_close_mnt(struct vfsmount *m); | 123 | extern void acct_auto_close_mnt(struct vfsmount *m); |
123 | extern void acct_auto_close(struct super_block *sb); | 124 | extern void acct_auto_close(struct super_block *sb); |
124 | extern void acct_init_pacct(struct pacct_struct *pacct); | 125 | extern void acct_init_pacct(struct pacct_struct *pacct); |
diff --git a/include/linux/ata.h b/include/linux/ata.h index d89441907024..1df941648a57 100644 --- a/include/linux/ata.h +++ b/include/linux/ata.h | |||
@@ -200,8 +200,9 @@ enum { | |||
200 | ATA_CBL_NONE = 0, | 200 | ATA_CBL_NONE = 0, |
201 | ATA_CBL_PATA40 = 1, | 201 | ATA_CBL_PATA40 = 1, |
202 | ATA_CBL_PATA80 = 2, | 202 | ATA_CBL_PATA80 = 2, |
203 | ATA_CBL_PATA_UNK = 3, | 203 | ATA_CBL_PATA40_SHORT = 3, /* 40 wire cable to high UDMA spec */ |
204 | ATA_CBL_SATA = 4, | 204 | ATA_CBL_PATA_UNK = 4, |
205 | ATA_CBL_SATA = 5, | ||
205 | 206 | ||
206 | /* SATA Status and Control Registers */ | 207 | /* SATA Status and Control Registers */ |
207 | SCR_STATUS = 0, | 208 | SCR_STATUS = 0, |
@@ -342,6 +343,15 @@ static inline int ata_id_is_cfa(const u16 *id) | |||
342 | return 0; | 343 | return 0; |
343 | } | 344 | } |
344 | 345 | ||
346 | static inline int ata_drive_40wire(const u16 *dev_id) | ||
347 | { | ||
348 | if (ata_id_major_version(dev_id) >= 5 && ata_id_is_sata(dev_id)) | ||
349 | return 0; /* SATA */ | ||
350 | if (dev_id[93] & 0x4000) | ||
351 | return 0; /* 80 wire */ | ||
352 | return 1; | ||
353 | } | ||
354 | |||
345 | static inline int atapi_cdb_len(const u16 *dev_id) | 355 | static inline int atapi_cdb_len(const u16 *dev_id) |
346 | { | 356 | { |
347 | u16 tmp = dev_id[0] & 0x3; | 357 | u16 tmp = dev_id[0] & 0x3; |
diff --git a/include/linux/fs.h b/include/linux/fs.h index 2fe6e3f900ba..cac7b1ef9543 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
@@ -276,7 +276,7 @@ extern int dir_notify_enable; | |||
276 | #include <linux/radix-tree.h> | 276 | #include <linux/radix-tree.h> |
277 | #include <linux/prio_tree.h> | 277 | #include <linux/prio_tree.h> |
278 | #include <linux/init.h> | 278 | #include <linux/init.h> |
279 | #include <linux/sched.h> | 279 | #include <linux/pid.h> |
280 | #include <linux/mutex.h> | 280 | #include <linux/mutex.h> |
281 | 281 | ||
282 | #include <asm/atomic.h> | 282 | #include <asm/atomic.h> |
@@ -977,36 +977,13 @@ enum { | |||
977 | #define vfs_check_frozen(sb, level) \ | 977 | #define vfs_check_frozen(sb, level) \ |
978 | wait_event((sb)->s_wait_unfrozen, ((sb)->s_frozen < (level))) | 978 | wait_event((sb)->s_wait_unfrozen, ((sb)->s_frozen < (level))) |
979 | 979 | ||
980 | static inline void get_fs_excl(void) | 980 | #define get_fs_excl() atomic_inc(¤t->fs_excl) |
981 | { | 981 | #define put_fs_excl() atomic_dec(¤t->fs_excl) |
982 | atomic_inc(¤t->fs_excl); | 982 | #define has_fs_excl() atomic_read(¤t->fs_excl) |
983 | } | ||
984 | |||
985 | static inline void put_fs_excl(void) | ||
986 | { | ||
987 | atomic_dec(¤t->fs_excl); | ||
988 | } | ||
989 | |||
990 | static inline int has_fs_excl(void) | ||
991 | { | ||
992 | return atomic_read(¤t->fs_excl); | ||
993 | } | ||
994 | 983 | ||
995 | 984 | /* not quite ready to be deprecated, but... */ | |
996 | /* | 985 | extern void lock_super(struct super_block *); |
997 | * Superblock locking. | 986 | extern void unlock_super(struct super_block *); |
998 | */ | ||
999 | static inline void lock_super(struct super_block * sb) | ||
1000 | { | ||
1001 | get_fs_excl(); | ||
1002 | mutex_lock(&sb->s_lock); | ||
1003 | } | ||
1004 | |||
1005 | static inline void unlock_super(struct super_block * sb) | ||
1006 | { | ||
1007 | put_fs_excl(); | ||
1008 | mutex_unlock(&sb->s_lock); | ||
1009 | } | ||
1010 | 987 | ||
1011 | /* | 988 | /* |
1012 | * VFS helper functions.. | 989 | * VFS helper functions.. |
diff --git a/include/linux/ftape-header-segment.h b/include/linux/ftape-header-segment.h deleted file mode 100644 index 4732218f0708..000000000000 --- a/include/linux/ftape-header-segment.h +++ /dev/null | |||
@@ -1,122 +0,0 @@ | |||
1 | #ifndef _FTAPE_HEADER_SEGMENT_H | ||
2 | #define _FTAPE_HEADER_SEGMENT_H | ||
3 | |||
4 | /* | ||
5 | * Copyright (C) 1996-1997 Claus-Justus Heine. | ||
6 | |||
7 | This program is free software; you can redistribute it and/or modify | ||
8 | it under the terms of the GNU General Public License as published by | ||
9 | the Free Software Foundation; either version 2, or (at your option) | ||
10 | any later version. | ||
11 | |||
12 | This program is distributed in the hope that it will be useful, | ||
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
15 | GNU General Public License for more details. | ||
16 | |||
17 | You should have received a copy of the GNU General Public License | ||
18 | along with this program; see the file COPYING. If not, write to | ||
19 | the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | ||
20 | |||
21 | * | ||
22 | * $Source: /homes/cvs/ftape-stacked/include/linux/ftape-header-segment.h,v $ | ||
23 | * $Revision: 1.2 $ | ||
24 | * $Date: 1997/10/05 19:19:28 $ | ||
25 | * | ||
26 | * This file defines some offsets into the header segment of a | ||
27 | * floppy tape cartridge. For use with the QIC-40/80/3010/3020 | ||
28 | * floppy-tape driver "ftape" for Linux. | ||
29 | */ | ||
30 | |||
31 | #define FT_SIGNATURE 0 /* must be 0xaa55aa55 */ | ||
32 | #define FT_FMT_CODE 4 | ||
33 | #define FT_REV_LEVEL 5 /* only for QIC-80 since. Rev. L (== 0x0c) */ | ||
34 | #define FT_HSEG_1 6 /* first header segment, except for format code 6 */ | ||
35 | #define FT_HSEG_2 8 /* second header segment, except for format code 6 */ | ||
36 | #define FT_FRST_SEG 10 /* first data segment, except for format code 6 */ | ||
37 | #define FT_LAST_SEG 12 /* last data segment, except for format code 6 */ | ||
38 | #define FT_FMT_DATE 14 /* date and time of most recent format, see below */ | ||
39 | #define FT_WR_DATE 18 /* date and time of most recent write or format */ | ||
40 | #define FT_SPT 24 /* segments per track */ | ||
41 | #define FT_TPC 26 /* tracks per cartridge */ | ||
42 | #define FT_FHM 27 /* floppy drive head (maximum of it) */ | ||
43 | #define FT_FTM 28 /* floppy track max. */ | ||
44 | #define FT_FSM 29 /* floppy sector max. (128) */ | ||
45 | #define FT_LABEL 30 /* floppy tape label */ | ||
46 | #define FT_LABEL_DATE 74 /* date and time the tape label was written */ | ||
47 | #define FT_LABEL_SZ (FT_LABEL_DATE - FT_LABEL) | ||
48 | #define FT_CMAP_START 78 /* starting segment of compression map */ | ||
49 | #define FT_FMT_ERROR 128 /* must be set to 0xff if remainder gets lost during | ||
50 | * tape format | ||
51 | */ | ||
52 | #define FT_SEG_CNT 130 /* number of seg. written, formatted or verified | ||
53 | * through lifetime of tape (why not read?) | ||
54 | */ | ||
55 | #define FT_INIT_DATE 138 /* date and time of initial tape format */ | ||
56 | #define FT_FMT_CNT 142 /* number of times tape has been formatted */ | ||
57 | #define FT_FSL_CNT 144 /* number of segments in failed sector log */ | ||
58 | #define FT_MK_CODE 146 /* id string of tape manufacturer */ | ||
59 | #define FT_LOT_CODE 190 /* tape manufacturer lot code */ | ||
60 | #define FT_6_HSEG_1 234 /* first header segment for format code 6 */ | ||
61 | #define FT_6_HSEG_2 238 /* second header segment for format code 6 */ | ||
62 | #define FT_6_FRST_SEG 242 /* first data segment for format code 6 */ | ||
63 | #define FT_6_LAST_SEG 246 /* last data segment for format code 6 */ | ||
64 | |||
65 | #define FT_FSL 256 | ||
66 | #define FT_HEADER_END 256 /* space beyond this point: | ||
67 | * format codes 2, 3 and 5: | ||
68 | * - failed sector log until byte 2047 | ||
69 | * - bad sector map in the reamining part of segment | ||
70 | * format codes 4 and 6: | ||
71 | * - bad sector map starts hear | ||
72 | */ | ||
73 | |||
74 | |||
75 | /* value to be stored at the FT_SIGNATURE offset | ||
76 | */ | ||
77 | #define FT_HSEG_MAGIC 0xaa55aa55 | ||
78 | #define FT_D2G_MAGIC 0x82288228 /* Ditto 2GB */ | ||
79 | |||
80 | /* data and time encoding: */ | ||
81 | #define FT_YEAR_SHIFT 25 | ||
82 | #define FT_YEAR_MASK 0xfe000000 | ||
83 | #define FT_YEAR_0 1970 | ||
84 | #define FT_YEAR_MAX 127 | ||
85 | #define FT_YEAR(year) ((((year)-FT_YEAR_0)<<FT_YEAR_SHIFT)&FT_YEAR_MASK) | ||
86 | |||
87 | #define FT_TIME_SHIFT 0 | ||
88 | #define FT_TIME_MASK 0x01FFFFFF | ||
89 | #define FT_TIME_MAX 0x01ea6dff /* last second of a year */ | ||
90 | #define FT_TIME(mo,d,h,m,s) \ | ||
91 | ((((s)+60*((m)+60*((h)+24*((d)+31*(mo))))) & FT_TIME_MASK)) | ||
92 | |||
93 | #define FT_TIME_STAMP(y,mo,d,h,m,s) (FT_YEAR(y) | FT_TIME(mo,d,h,m,s)) | ||
94 | |||
95 | /* values for the format code field */ | ||
96 | typedef enum { | ||
97 | fmt_normal = 2, /* QIC-80 post Rev. B 205Ft or 307Ft tape */ | ||
98 | fmt_1100ft = 3, /* QIC-80 post Rev. B 1100Ft tape */ | ||
99 | fmt_var = 4, /* QIC-80 post Rev. B variabel length format */ | ||
100 | fmt_425ft = 5, /* QIC-80 post Rev. B 425Ft tape */ | ||
101 | fmt_big = 6 /* QIC-3010/3020 variable length tape with more | ||
102 | * than 2^16 segments per tape | ||
103 | */ | ||
104 | } ft_format_type; | ||
105 | |||
106 | /* definitions for the failed sector log */ | ||
107 | #define FT_FSL_SIZE (2 * FT_SECTOR_SIZE - FT_HEADER_END) | ||
108 | #define FT_FSL_MAX_ENTRIES (FT_FSL_SIZE/sizeof(__u32)) | ||
109 | |||
110 | typedef struct ft_fsl_entry { | ||
111 | __u16 segment; | ||
112 | __u16 date; | ||
113 | } __attribute__ ((packed)) ft_fsl_entry; | ||
114 | |||
115 | |||
116 | /* date encoding for the failed sector log | ||
117 | * month: 1..12, day: 1..31, year: 1970..2097 | ||
118 | */ | ||
119 | #define FT_FSL_TIME_STAMP(y,m,d) \ | ||
120 | (((((y) - FT_YEAR_0)<<9)&0xfe00) | (((m)<<5)&0x01e0) | ((d)&0x001f)) | ||
121 | |||
122 | #endif /* _FTAPE_HEADER_SEGMENT_H */ | ||
diff --git a/include/linux/ftape-vendors.h b/include/linux/ftape-vendors.h deleted file mode 100644 index ec1a81f059e5..000000000000 --- a/include/linux/ftape-vendors.h +++ /dev/null | |||
@@ -1,137 +0,0 @@ | |||
1 | #ifndef _FTAPE_VENDORS_H | ||
2 | #define _FTAPE_VENDORS_H | ||
3 | |||
4 | /* | ||
5 | * Copyright (C) 1993-1996 Bas Laarhoven, | ||
6 | * (C) 1996-1997 Claus-Justus Heine. | ||
7 | |||
8 | This program is free software; you can redistribute it and/or modify | ||
9 | it under the terms of the GNU General Public License as published by | ||
10 | the Free Software Foundation; either version 2, or (at your option) | ||
11 | any later version. | ||
12 | |||
13 | This program is distributed in the hope that it will be useful, | ||
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
16 | GNU General Public License for more details. | ||
17 | |||
18 | You should have received a copy of the GNU General Public License | ||
19 | along with this program; see the file COPYING. If not, write to | ||
20 | the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | ||
21 | |||
22 | * | ||
23 | * $Source: /homes/cvs/ftape-stacked/include/linux/ftape-vendors.h,v $ | ||
24 | * $Revision: 1.6 $ | ||
25 | * $Date: 1997/10/09 15:38:11 $ | ||
26 | * | ||
27 | * This file contains the supported drive types with their | ||
28 | * QIC-117 spec. vendor code and drive dependent configuration | ||
29 | * information. | ||
30 | */ | ||
31 | |||
32 | typedef enum { | ||
33 | unknown_wake_up = 0, | ||
34 | no_wake_up, | ||
35 | wake_up_colorado, | ||
36 | wake_up_mountain, | ||
37 | wake_up_insight, | ||
38 | } wake_up_types; | ||
39 | |||
40 | typedef struct { | ||
41 | wake_up_types wake_up; /* see wake_up_types */ | ||
42 | char *name; /* Text describing the drive */ | ||
43 | } wakeup_method; | ||
44 | |||
45 | /* Note: order of entries in WAKEUP_METHODS must be so that a variable | ||
46 | * of type wake_up_types can be used as an index in the array. | ||
47 | */ | ||
48 | #define WAKEUP_METHODS { \ | ||
49 | { unknown_wake_up, "Unknown" }, \ | ||
50 | { no_wake_up, "None" }, \ | ||
51 | { wake_up_colorado, "Colorado" }, \ | ||
52 | { wake_up_mountain, "Mountain" }, \ | ||
53 | { wake_up_insight, "Motor-on" }, \ | ||
54 | } | ||
55 | |||
56 | typedef struct { | ||
57 | unsigned int vendor_id; /* vendor id from drive */ | ||
58 | int speed; /* maximum tape transport speed (ips) */ | ||
59 | wake_up_types wake_up; /* see wake_up_types */ | ||
60 | char *name; /* Text describing the drive */ | ||
61 | } vendor_struct; | ||
62 | |||
63 | #define UNKNOWN_VENDOR (-1) | ||
64 | |||
65 | #define QIC117_VENDORS { \ | ||
66 | /* see _vendor_struct */ \ | ||
67 | { 0x00000, 82, wake_up_colorado, "Colorado DJ-10 (old)" }, \ | ||
68 | { 0x00047, 90, wake_up_colorado, "Colorado DJ-10/DJ-20" }, \ | ||
69 | { 0x011c2, 84, wake_up_colorado, "Colorado 700" }, \ | ||
70 | { 0x011c3, 90, wake_up_colorado, "Colorado 1400" }, \ | ||
71 | { 0x011c4, 84, wake_up_colorado, "Colorado DJ-10/DJ-20 (new)" }, \ | ||
72 | { 0x011c5, 84, wake_up_colorado, "HP Colorado T1000" }, \ | ||
73 | { 0x011c6, 90, wake_up_colorado, "HP Colorado T3000" }, \ | ||
74 | { 0x00005, 45, wake_up_mountain, "Archive 5580i" }, \ | ||
75 | { 0x10005, 50, wake_up_insight, "Insight 80Mb, Irwin 80SX" }, \ | ||
76 | { 0x00140, 74, wake_up_mountain, "Archive S.Hornet [Identity/Escom]" }, \ | ||
77 | { 0x00146, 72, wake_up_mountain, "Archive 31250Q [Escom]" }, \ | ||
78 | { 0x0014a, 100, wake_up_mountain, "Archive XL9250i [Conner/Escom]" }, \ | ||
79 | { 0x0014c, 98, wake_up_mountain, "Conner C250MQT" }, \ | ||
80 | { 0x0014e, 80, wake_up_mountain, "Conner C250MQ" }, \ | ||
81 | { 0x00150, 80, wake_up_mountain, "Conner TSM420R/TST800R" }, \ | ||
82 | { 0x00152, 80, wake_up_mountain, "Conner TSM850R" }, \ | ||
83 | { 0x00156, 80, wake_up_mountain, "Conner TSM850R/1700R/TST3200R" }, \ | ||
84 | { 0x00180, 0, wake_up_mountain, "Summit SE 150" }, \ | ||
85 | { 0x00181, 85, wake_up_mountain, "Summit SE 250, Mountain FS8000" }, \ | ||
86 | { 0x001c1, 82, no_wake_up, "Wangtek 3040F" }, \ | ||
87 | { 0x001c8, 64, no_wake_up, "Wangtek 3080F" }, \ | ||
88 | { 0x001c8, 64, wake_up_colorado, "Wangtek 3080F" }, \ | ||
89 | { 0x001ca, 67, no_wake_up, "Wangtek 3080F (new)" }, \ | ||
90 | { 0x001cc, 77, wake_up_colorado, "Wangtek 3200 / Teac 700" }, \ | ||
91 | { 0x001cd, 75, wake_up_colorado, "Reveal TB1400" }, \ | ||
92 | { 0x00380, 85, wake_up_colorado, "Exabyte Eagle-96" }, \ | ||
93 | { 0x00381, 85, wake_up_colorado, "Exabyte Eagle TR-3" }, \ | ||
94 | { 0x00382, 85, wake_up_colorado, "Exabyte Eagle TR-3" }, \ | ||
95 | { 0x003ce, 77, wake_up_colorado, "Teac 800" }, \ | ||
96 | { 0x003cf, 0, wake_up_colorado, "Teac FT3010TR" }, \ | ||
97 | { 0x08880, 64, no_wake_up, "Iomega 250, Ditto 800" }, \ | ||
98 | { 0x08880, 64, wake_up_colorado, "Iomega 250, Ditto 800" }, \ | ||
99 | { 0x08880, 64, wake_up_insight, "Iomega 250, Ditto 800" }, \ | ||
100 | { 0x08881, 80, wake_up_colorado, "Iomega 700" }, \ | ||
101 | { 0x08882, 80, wake_up_colorado, "Iomega 3200" }, \ | ||
102 | { 0x08883, 80, wake_up_colorado, "Iomega DITTO 2GB" }, \ | ||
103 | { 0x00021, 70, no_wake_up, "AIWA CT-803" }, \ | ||
104 | { 0x004c0, 80, no_wake_up, "AIWA TD-S1600" }, \ | ||
105 | { 0x00021, 0, wake_up_mountain, "COREtape QIC80" }, \ | ||
106 | { 0x00441, 0, wake_up_mountain, "ComByte DoublePlay" }, \ | ||
107 | { 0x00481, 127, wake_up_mountain, "PERTEC MyTape 800" }, \ | ||
108 | { 0x00483, 130, wake_up_mountain, "PERTEC MyTape 3200" }, \ | ||
109 | { UNKNOWN_VENDOR, 0, no_wake_up, "unknown" } \ | ||
110 | } | ||
111 | |||
112 | #define QIC117_MAKE_CODES { \ | ||
113 | { 0, "Unassigned" }, \ | ||
114 | { 1, "Alloy Computer Products" }, \ | ||
115 | { 2, "3M" }, \ | ||
116 | { 3, "Tandberg Data" }, \ | ||
117 | { 4, "Colorado" }, \ | ||
118 | { 5, "Archive/Conner" }, \ | ||
119 | { 6, "Mountain/Summit Memory Systems" }, \ | ||
120 | { 7, "Wangtek/Rexon/Tecmar" }, \ | ||
121 | { 8, "Sony" }, \ | ||
122 | { 9, "Cipher Data Products" }, \ | ||
123 | { 10, "Irwin Magnetic Systems" }, \ | ||
124 | { 11, "Braemar" }, \ | ||
125 | { 12, "Verbatim" }, \ | ||
126 | { 13, "Core International" }, \ | ||
127 | { 14, "Exabyte" }, \ | ||
128 | { 15, "Teac" }, \ | ||
129 | { 16, "Gigatek" }, \ | ||
130 | { 17, "ComByte" }, \ | ||
131 | { 18, "PERTEC Memories" }, \ | ||
132 | { 19, "Aiwa" }, \ | ||
133 | { 71, "Colorado" }, \ | ||
134 | { 546, "Iomega Inc" }, \ | ||
135 | } | ||
136 | |||
137 | #endif /* _FTAPE_VENDORS_H */ | ||
diff --git a/include/linux/ftape.h b/include/linux/ftape.h deleted file mode 100644 index 7e7038cba86a..000000000000 --- a/include/linux/ftape.h +++ /dev/null | |||
@@ -1,201 +0,0 @@ | |||
1 | #ifndef _FTAPE_H | ||
2 | #define _FTAPE_H | ||
3 | |||
4 | /* | ||
5 | * Copyright (C) 1994-1996 Bas Laarhoven, | ||
6 | * (C) 1996-1997 Claus-Justus Heine. | ||
7 | |||
8 | This program is free software; you can redistribute it and/or modify | ||
9 | it under the terms of the GNU General Public License as published by | ||
10 | the Free Software Foundation; either version 2, or (at your option) | ||
11 | any later version. | ||
12 | |||
13 | This program is distributed in the hope that it will be useful, | ||
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
16 | GNU General Public License for more details. | ||
17 | |||
18 | You should have received a copy of the GNU General Public License | ||
19 | along with this program; see the file COPYING. If not, write to | ||
20 | the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | ||
21 | |||
22 | * | ||
23 | * $Source: /homes/cvs/ftape-stacked/include/linux/ftape.h,v $ | ||
24 | * $Revision: 1.17.6.4 $ | ||
25 | * $Date: 1997/11/25 01:52:54 $ | ||
26 | * | ||
27 | * This file contains global definitions, typedefs and macro's | ||
28 | * for the QIC-40/80/3010/3020 floppy-tape driver for Linux. | ||
29 | */ | ||
30 | |||
31 | #define FTAPE_VERSION "ftape v3.04d 25/11/97" | ||
32 | |||
33 | #ifdef __KERNEL__ | ||
34 | #include <linux/interrupt.h> | ||
35 | #include <linux/mm.h> | ||
36 | #endif | ||
37 | #include <linux/types.h> | ||
38 | #include <linux/mtio.h> | ||
39 | |||
40 | #define FT_SECTOR(x) (x+1) /* sector offset into real sector */ | ||
41 | #define FT_SECTOR_SIZE 1024 | ||
42 | #define FT_SECTORS_PER_SEGMENT 32 | ||
43 | #define FT_ECC_SECTORS 3 | ||
44 | #define FT_SEGMENT_SIZE ((FT_SECTORS_PER_SEGMENT - FT_ECC_SECTORS) * FT_SECTOR_SIZE) | ||
45 | #define FT_BUFF_SIZE (FT_SECTORS_PER_SEGMENT * FT_SECTOR_SIZE) | ||
46 | |||
47 | /* | ||
48 | * bits of the minor device number that define drive selection | ||
49 | * methods. Could be used one day to access multiple tape | ||
50 | * drives on the same controller. | ||
51 | */ | ||
52 | #define FTAPE_SEL_A 0 | ||
53 | #define FTAPE_SEL_B 1 | ||
54 | #define FTAPE_SEL_C 2 | ||
55 | #define FTAPE_SEL_D 3 | ||
56 | #define FTAPE_SEL_MASK 3 | ||
57 | #define FTAPE_SEL(unit) ((unit) & FTAPE_SEL_MASK) | ||
58 | #define FTAPE_NO_REWIND 4 /* mask for minor nr */ | ||
59 | |||
60 | /* the following two may be reported when MTIOCGET is requested ... */ | ||
61 | typedef union { | ||
62 | struct { | ||
63 | __u8 error; | ||
64 | __u8 command; | ||
65 | } error; | ||
66 | long space; | ||
67 | } ft_drive_error; | ||
68 | typedef union { | ||
69 | struct { | ||
70 | __u8 drive_status; | ||
71 | __u8 drive_config; | ||
72 | __u8 tape_status; | ||
73 | } status; | ||
74 | long space; | ||
75 | } ft_drive_status; | ||
76 | |||
77 | #ifdef __KERNEL__ | ||
78 | |||
79 | #define FT_RQM_DELAY 12 | ||
80 | #define FT_MILLISECOND 1 | ||
81 | #define FT_SECOND 1000 | ||
82 | #define FT_FOREVER -1 | ||
83 | #ifndef HZ | ||
84 | #error "HZ undefined." | ||
85 | #endif | ||
86 | #define FT_USPT (1000000/HZ) /* microseconds per tick */ | ||
87 | |||
88 | /* This defines the number of retries that the driver will allow | ||
89 | * before giving up (and letting a higher level handle the error). | ||
90 | */ | ||
91 | #ifdef TESTING | ||
92 | #define FT_SOFT_RETRIES 1 /* number of low level retries */ | ||
93 | #define FT_RETRIES_ON_ECC_ERROR 3 /* ecc error when correcting segment */ | ||
94 | #else | ||
95 | #define FT_SOFT_RETRIES 6 /* number of low level retries (triple) */ | ||
96 | #define FT_RETRIES_ON_ECC_ERROR 3 /* ecc error when correcting segment */ | ||
97 | #endif | ||
98 | |||
99 | #ifndef THE_FTAPE_MAINTAINER | ||
100 | #define THE_FTAPE_MAINTAINER "the ftape maintainer" | ||
101 | #endif | ||
102 | |||
103 | /* Initialize missing configuration parameters. | ||
104 | */ | ||
105 | #ifndef CONFIG_FT_NR_BUFFERS | ||
106 | # define CONFIG_FT_NR_BUFFERS 3 | ||
107 | #endif | ||
108 | #ifndef CONFIG_FT_FDC_THR | ||
109 | # define CONFIG_FT_FDC_THR 8 | ||
110 | #endif | ||
111 | #ifndef CONFIG_FT_FDC_MAX_RATE | ||
112 | # define CONFIG_FT_FDC_MAX_RATE 2000 | ||
113 | #endif | ||
114 | #ifndef CONFIG_FT_FDC_BASE | ||
115 | # define CONFIG_FT_FDC_BASE 0 | ||
116 | #endif | ||
117 | #ifndef CONFIG_FT_FDC_IRQ | ||
118 | # define CONFIG_FT_FDC_IRQ 0 | ||
119 | #endif | ||
120 | #ifndef CONFIG_FT_FDC_DMA | ||
121 | # define CONFIG_FT_FDC_DMA 0 | ||
122 | #endif | ||
123 | |||
124 | /* Turn some booleans into numbers. | ||
125 | */ | ||
126 | #ifdef CONFIG_FT_PROBE_FC10 | ||
127 | # undef CONFIG_FT_PROBE_FC10 | ||
128 | # define CONFIG_FT_PROBE_FC10 1 | ||
129 | #else | ||
130 | # define CONFIG_FT_PROBE_FC10 0 | ||
131 | #endif | ||
132 | #ifdef CONFIG_FT_MACH2 | ||
133 | # undef CONFIG_FT_MACH2 | ||
134 | # define CONFIG_FT_MACH2 1 | ||
135 | #else | ||
136 | # define CONFIG_FT_MACH2 0 | ||
137 | #endif | ||
138 | |||
139 | /* Insert default settings | ||
140 | */ | ||
141 | #if CONFIG_FT_PROBE_FC10 == 1 | ||
142 | # if CONFIG_FT_FDC_BASE == 0 | ||
143 | # undef CONFIG_FT_FDC_BASE | ||
144 | # define CONFIG_FT_FDC_BASE 0x180 | ||
145 | # endif | ||
146 | # if CONFIG_FT_FDC_IRQ == 0 | ||
147 | # undef CONFIG_FT_FDC_IRQ | ||
148 | # define CONFIG_FT_FDC_IRQ 9 | ||
149 | # endif | ||
150 | # if CONFIG_FT_FDC_DMA == 0 | ||
151 | # undef CONFIG_FT_FDC_DMA | ||
152 | # define CONFIG_FT_FDC_DMA 3 | ||
153 | # endif | ||
154 | #elif CONFIG_FT_MACH2 == 1 /* CONFIG_FT_PROBE_FC10 == 1 */ | ||
155 | # if CONFIG_FT_FDC_BASE == 0 | ||
156 | # undef CONFIG_FT_FDC_BASE | ||
157 | # define CONFIG_FT_FDC_BASE 0x1E0 | ||
158 | # endif | ||
159 | # if CONFIG_FT_FDC_IRQ == 0 | ||
160 | # undef CONFIG_FT_FDC_IRQ | ||
161 | # define CONFIG_FT_FDC_IRQ 6 | ||
162 | # endif | ||
163 | # if CONFIG_FT_FDC_DMA == 0 | ||
164 | # undef CONFIG_FT_FDC_DMA | ||
165 | # define CONFIG_FT_FDC_DMA 2 | ||
166 | # endif | ||
167 | #elif defined(CONFIG_FT_ALT_FDC) /* CONFIG_FT_MACH2 */ | ||
168 | # if CONFIG_FT_FDC_BASE == 0 | ||
169 | # undef CONFIG_FT_FDC_BASE | ||
170 | # define CONFIG_FT_FDC_BASE 0x370 | ||
171 | # endif | ||
172 | # if CONFIG_FT_FDC_IRQ == 0 | ||
173 | # undef CONFIG_FT_FDC_IRQ | ||
174 | # define CONFIG_FT_FDC_IRQ 6 | ||
175 | # endif | ||
176 | # if CONFIG_FT_FDC_DMA == 0 | ||
177 | # undef CONFIG_FT_FDC_DMA | ||
178 | # define CONFIG_FT_FDC_DMA 2 | ||
179 | # endif | ||
180 | #else /* CONFIG_FT_ALT_FDC */ | ||
181 | # if CONFIG_FT_FDC_BASE == 0 | ||
182 | # undef CONFIG_FT_FDC_BASE | ||
183 | # define CONFIG_FT_FDC_BASE 0x3f0 | ||
184 | # endif | ||
185 | # if CONFIG_FT_FDC_IRQ == 0 | ||
186 | # undef CONFIG_FT_FDC_IRQ | ||
187 | # define CONFIG_FT_FDC_IRQ 6 | ||
188 | # endif | ||
189 | # if CONFIG_FT_FDC_DMA == 0 | ||
190 | # undef CONFIG_FT_FDC_DMA | ||
191 | # define CONFIG_FT_FDC_DMA 2 | ||
192 | # endif | ||
193 | #endif /* standard FDC */ | ||
194 | |||
195 | /* some useful macro's | ||
196 | */ | ||
197 | #define NR_ITEMS(x) (int)(sizeof(x)/ sizeof(*x)) | ||
198 | |||
199 | #endif /* __KERNEL__ */ | ||
200 | |||
201 | #endif | ||
diff --git a/include/linux/igmp.h b/include/linux/igmp.h index 6e7ea2f0a57c..9dbb525c5178 100644 --- a/include/linux/igmp.h +++ b/include/linux/igmp.h | |||
@@ -127,6 +127,7 @@ struct igmpv3_query { | |||
127 | 127 | ||
128 | #ifdef __KERNEL__ | 128 | #ifdef __KERNEL__ |
129 | #include <linux/skbuff.h> | 129 | #include <linux/skbuff.h> |
130 | #include <linux/timer.h> | ||
130 | #include <linux/in.h> | 131 | #include <linux/in.h> |
131 | 132 | ||
132 | extern int sysctl_igmp_max_memberships; | 133 | extern int sysctl_igmp_max_memberships; |
diff --git a/include/linux/kernelcapi.h b/include/linux/kernelcapi.h index 891bb2cf0aa8..aea34e74c496 100644 --- a/include/linux/kernelcapi.h +++ b/include/linux/kernelcapi.h | |||
@@ -47,6 +47,8 @@ typedef struct kcapi_carddef { | |||
47 | 47 | ||
48 | #include <linux/list.h> | 48 | #include <linux/list.h> |
49 | #include <linux/skbuff.h> | 49 | #include <linux/skbuff.h> |
50 | #include <linux/workqueue.h> | ||
51 | #include <asm/semaphore.h> | ||
50 | 52 | ||
51 | #define KCI_CONTRUP 0 /* arg: struct capi_profile */ | 53 | #define KCI_CONTRUP 0 /* arg: struct capi_profile */ |
52 | #define KCI_CONTRDOWN 1 /* arg: NULL */ | 54 | #define KCI_CONTRDOWN 1 /* arg: NULL */ |
diff --git a/include/linux/libata.h b/include/linux/libata.h index abd2debebca2..202283b5df96 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -140,6 +140,7 @@ enum { | |||
140 | ATA_DFLAG_LBA48 = (1 << 1), /* device supports LBA48 */ | 140 | ATA_DFLAG_LBA48 = (1 << 1), /* device supports LBA48 */ |
141 | ATA_DFLAG_CDB_INTR = (1 << 2), /* device asserts INTRQ when ready for CDB */ | 141 | ATA_DFLAG_CDB_INTR = (1 << 2), /* device asserts INTRQ when ready for CDB */ |
142 | ATA_DFLAG_NCQ = (1 << 3), /* device supports NCQ */ | 142 | ATA_DFLAG_NCQ = (1 << 3), /* device supports NCQ */ |
143 | ATA_DFLAG_FLUSH_EXT = (1 << 4), /* do FLUSH_EXT instead of FLUSH */ | ||
143 | ATA_DFLAG_CFG_MASK = (1 << 8) - 1, | 144 | ATA_DFLAG_CFG_MASK = (1 << 8) - 1, |
144 | 145 | ||
145 | ATA_DFLAG_PIO = (1 << 8), /* device limited to PIO mode */ | 146 | ATA_DFLAG_PIO = (1 << 8), /* device limited to PIO mode */ |
@@ -175,6 +176,7 @@ enum { | |||
175 | ATA_FLAG_SKIP_D2H_BSY = (1 << 12), /* can't wait for the first D2H | 176 | ATA_FLAG_SKIP_D2H_BSY = (1 << 12), /* can't wait for the first D2H |
176 | * Register FIS clearing BSY */ | 177 | * Register FIS clearing BSY */ |
177 | ATA_FLAG_DEBUGMSG = (1 << 13), | 178 | ATA_FLAG_DEBUGMSG = (1 << 13), |
179 | ATA_FLAG_SETXFER_POLLING= (1 << 14), /* use polling for SETXFER */ | ||
178 | 180 | ||
179 | /* The following flag belongs to ap->pflags but is kept in | 181 | /* The following flag belongs to ap->pflags but is kept in |
180 | * ap->flags because it's referenced in many LLDs and will be | 182 | * ap->flags because it's referenced in many LLDs and will be |
@@ -283,6 +285,9 @@ enum { | |||
283 | ATA_EHI_QUIET = (1 << 3), /* be quiet */ | 285 | ATA_EHI_QUIET = (1 << 3), /* be quiet */ |
284 | 286 | ||
285 | ATA_EHI_DID_RESET = (1 << 16), /* already reset this port */ | 287 | ATA_EHI_DID_RESET = (1 << 16), /* already reset this port */ |
288 | ATA_EHI_PRINTINFO = (1 << 17), /* print configuration info */ | ||
289 | ATA_EHI_SETMODE = (1 << 18), /* configure transfer mode */ | ||
290 | ATA_EHI_POST_SETMODE = (1 << 19), /* revaildating after setmode */ | ||
286 | 291 | ||
287 | ATA_EHI_RESET_MODIFIER_MASK = ATA_EHI_RESUME_LINK, | 292 | ATA_EHI_RESET_MODIFIER_MASK = ATA_EHI_RESUME_LINK, |
288 | 293 | ||
@@ -307,10 +312,11 @@ enum { | |||
307 | (some horkage may be drive/controller pair dependant */ | 312 | (some horkage may be drive/controller pair dependant */ |
308 | 313 | ||
309 | ATA_HORKAGE_DIAGNOSTIC = (1 << 0), /* Failed boot diag */ | 314 | ATA_HORKAGE_DIAGNOSTIC = (1 << 0), /* Failed boot diag */ |
315 | ATA_HORKAGE_NODMA = (1 << 1), /* DMA problems */ | ||
316 | ATA_HORKAGE_NONCQ = (1 << 2), /* Don't use NCQ */ | ||
310 | }; | 317 | }; |
311 | 318 | ||
312 | enum hsm_task_states { | 319 | enum hsm_task_states { |
313 | HSM_ST_UNKNOWN, /* state unknown */ | ||
314 | HSM_ST_IDLE, /* no command on going */ | 320 | HSM_ST_IDLE, /* no command on going */ |
315 | HSM_ST, /* (waiting the device to) transfer data */ | 321 | HSM_ST, /* (waiting the device to) transfer data */ |
316 | HSM_ST_LAST, /* (waiting the device to) complete command */ | 322 | HSM_ST_LAST, /* (waiting the device to) complete command */ |
@@ -329,6 +335,7 @@ enum ata_completion_errors { | |||
329 | AC_ERR_SYSTEM = (1 << 6), /* system error */ | 335 | AC_ERR_SYSTEM = (1 << 6), /* system error */ |
330 | AC_ERR_INVALID = (1 << 7), /* invalid argument */ | 336 | AC_ERR_INVALID = (1 << 7), /* invalid argument */ |
331 | AC_ERR_OTHER = (1 << 8), /* unknown */ | 337 | AC_ERR_OTHER = (1 << 8), /* unknown */ |
338 | AC_ERR_NODEV_HINT = (1 << 9), /* polling device detection hint */ | ||
332 | }; | 339 | }; |
333 | 340 | ||
334 | /* forward declarations */ | 341 | /* forward declarations */ |
@@ -700,6 +707,8 @@ extern int sata_phy_debounce(struct ata_port *ap, const unsigned long *param); | |||
700 | extern int sata_phy_resume(struct ata_port *ap, const unsigned long *param); | 707 | extern int sata_phy_resume(struct ata_port *ap, const unsigned long *param); |
701 | extern int ata_std_prereset(struct ata_port *ap); | 708 | extern int ata_std_prereset(struct ata_port *ap); |
702 | extern int ata_std_softreset(struct ata_port *ap, unsigned int *classes); | 709 | extern int ata_std_softreset(struct ata_port *ap, unsigned int *classes); |
710 | extern int sata_port_hardreset(struct ata_port *ap, | ||
711 | const unsigned long *timing); | ||
703 | extern int sata_std_hardreset(struct ata_port *ap, unsigned int *class); | 712 | extern int sata_std_hardreset(struct ata_port *ap, unsigned int *class); |
704 | extern void ata_std_postreset(struct ata_port *ap, unsigned int *classes); | 713 | extern void ata_std_postreset(struct ata_port *ap, unsigned int *classes); |
705 | extern void ata_port_disable(struct ata_port *); | 714 | extern void ata_port_disable(struct ata_port *); |
@@ -744,9 +753,8 @@ extern int ata_scsi_device_suspend(struct scsi_device *, pm_message_t mesg); | |||
744 | extern int ata_host_suspend(struct ata_host *host, pm_message_t mesg); | 753 | extern int ata_host_suspend(struct ata_host *host, pm_message_t mesg); |
745 | extern void ata_host_resume(struct ata_host *host); | 754 | extern void ata_host_resume(struct ata_host *host); |
746 | extern int ata_ratelimit(void); | 755 | extern int ata_ratelimit(void); |
747 | extern unsigned int ata_busy_sleep(struct ata_port *ap, | 756 | extern int ata_busy_sleep(struct ata_port *ap, |
748 | unsigned long timeout_pat, | 757 | unsigned long timeout_pat, unsigned long timeout); |
749 | unsigned long timeout); | ||
750 | extern void ata_port_queue_task(struct ata_port *ap, void (*fn)(void *), | 758 | extern void ata_port_queue_task(struct ata_port *ap, void (*fn)(void *), |
751 | void *data, unsigned long delay); | 759 | void *data, unsigned long delay); |
752 | extern u32 ata_wait_register(void __iomem *reg, u32 mask, u32 val, | 760 | extern u32 ata_wait_register(void __iomem *reg, u32 mask, u32 val, |
@@ -787,6 +795,7 @@ extern void ata_id_string(const u16 *id, unsigned char *s, | |||
787 | unsigned int ofs, unsigned int len); | 795 | unsigned int ofs, unsigned int len); |
788 | extern void ata_id_c_string(const u16 *id, unsigned char *s, | 796 | extern void ata_id_c_string(const u16 *id, unsigned char *s, |
789 | unsigned int ofs, unsigned int len); | 797 | unsigned int ofs, unsigned int len); |
798 | extern unsigned long ata_device_blacklisted(const struct ata_device *dev); | ||
790 | extern void ata_bmdma_setup (struct ata_queued_cmd *qc); | 799 | extern void ata_bmdma_setup (struct ata_queued_cmd *qc); |
791 | extern void ata_bmdma_start (struct ata_queued_cmd *qc); | 800 | extern void ata_bmdma_start (struct ata_queued_cmd *qc); |
792 | extern void ata_bmdma_stop(struct ata_queued_cmd *qc); | 801 | extern void ata_bmdma_stop(struct ata_queued_cmd *qc); |
@@ -1061,7 +1070,7 @@ static inline u8 ata_busy_wait(struct ata_port *ap, unsigned int bits, | |||
1061 | udelay(10); | 1070 | udelay(10); |
1062 | status = ata_chk_status(ap); | 1071 | status = ata_chk_status(ap); |
1063 | max--; | 1072 | max--; |
1064 | } while ((status & bits) && (max > 0)); | 1073 | } while (status != 0xff && (status & bits) && (max > 0)); |
1065 | 1074 | ||
1066 | return status; | 1075 | return status; |
1067 | } | 1076 | } |
@@ -1082,7 +1091,7 @@ static inline u8 ata_wait_idle(struct ata_port *ap) | |||
1082 | { | 1091 | { |
1083 | u8 status = ata_busy_wait(ap, ATA_BUSY | ATA_DRQ, 1000); | 1092 | u8 status = ata_busy_wait(ap, ATA_BUSY | ATA_DRQ, 1000); |
1084 | 1093 | ||
1085 | if (status & (ATA_BUSY | ATA_DRQ)) { | 1094 | if (status != 0xff && (status & (ATA_BUSY | ATA_DRQ))) { |
1086 | unsigned long l = ap->ioaddr.status_addr; | 1095 | unsigned long l = ap->ioaddr.status_addr; |
1087 | if (ata_msg_warn(ap)) | 1096 | if (ata_msg_warn(ap)) |
1088 | printk(KERN_WARNING "ATA: abnormal status 0x%X on port 0x%lX\n", | 1097 | printk(KERN_WARNING "ATA: abnormal status 0x%X on port 0x%lX\n", |
@@ -1148,37 +1157,6 @@ static inline void ata_qc_reinit(struct ata_queued_cmd *qc) | |||
1148 | } | 1157 | } |
1149 | 1158 | ||
1150 | /** | 1159 | /** |
1151 | * ata_irq_on - Enable interrupts on a port. | ||
1152 | * @ap: Port on which interrupts are enabled. | ||
1153 | * | ||
1154 | * Enable interrupts on a legacy IDE device using MMIO or PIO, | ||
1155 | * wait for idle, clear any pending interrupts. | ||
1156 | * | ||
1157 | * LOCKING: | ||
1158 | * Inherited from caller. | ||
1159 | */ | ||
1160 | |||
1161 | static inline u8 ata_irq_on(struct ata_port *ap) | ||
1162 | { | ||
1163 | struct ata_ioports *ioaddr = &ap->ioaddr; | ||
1164 | u8 tmp; | ||
1165 | |||
1166 | ap->ctl &= ~ATA_NIEN; | ||
1167 | ap->last_ctl = ap->ctl; | ||
1168 | |||
1169 | if (ap->flags & ATA_FLAG_MMIO) | ||
1170 | writeb(ap->ctl, (void __iomem *) ioaddr->ctl_addr); | ||
1171 | else | ||
1172 | outb(ap->ctl, ioaddr->ctl_addr); | ||
1173 | tmp = ata_wait_idle(ap); | ||
1174 | |||
1175 | ap->ops->irq_clear(ap); | ||
1176 | |||
1177 | return tmp; | ||
1178 | } | ||
1179 | |||
1180 | |||
1181 | /** | ||
1182 | * ata_irq_ack - Acknowledge a device interrupt. | 1160 | * ata_irq_ack - Acknowledge a device interrupt. |
1183 | * @ap: Port on which interrupts are enabled. | 1161 | * @ap: Port on which interrupts are enabled. |
1184 | * | 1162 | * |
diff --git a/include/linux/module.h b/include/linux/module.h index 9258ffd8a7f0..d33df2408e05 100644 --- a/include/linux/module.h +++ b/include/linux/module.h | |||
@@ -6,7 +6,6 @@ | |||
6 | * Rewritten by Richard Henderson <rth@tamu.edu> Dec 1996 | 6 | * Rewritten by Richard Henderson <rth@tamu.edu> Dec 1996 |
7 | * Rewritten again by Rusty Russell, 2002 | 7 | * Rewritten again by Rusty Russell, 2002 |
8 | */ | 8 | */ |
9 | #include <linux/sched.h> | ||
10 | #include <linux/spinlock.h> | 9 | #include <linux/spinlock.h> |
11 | #include <linux/list.h> | 10 | #include <linux/list.h> |
12 | #include <linux/stat.h> | 11 | #include <linux/stat.h> |
@@ -411,17 +410,7 @@ static inline int try_module_get(struct module *module) | |||
411 | return ret; | 410 | return ret; |
412 | } | 411 | } |
413 | 412 | ||
414 | static inline void module_put(struct module *module) | 413 | extern void module_put(struct module *module); |
415 | { | ||
416 | if (module) { | ||
417 | unsigned int cpu = get_cpu(); | ||
418 | local_dec(&module->ref[cpu].count); | ||
419 | /* Maybe they're waiting for us to drop reference? */ | ||
420 | if (unlikely(!module_is_live(module))) | ||
421 | wake_up_process(module->waiter); | ||
422 | put_cpu(); | ||
423 | } | ||
424 | } | ||
425 | 414 | ||
426 | #else /*!CONFIG_MODULE_UNLOAD*/ | 415 | #else /*!CONFIG_MODULE_UNLOAD*/ |
427 | static inline int try_module_get(struct module *module) | 416 | static inline int try_module_get(struct module *module) |
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 949eada46ce1..c57088f575a3 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <linux/if_packet.h> | 30 | #include <linux/if_packet.h> |
31 | 31 | ||
32 | #ifdef __KERNEL__ | 32 | #ifdef __KERNEL__ |
33 | #include <linux/timer.h> | ||
33 | #include <asm/atomic.h> | 34 | #include <asm/atomic.h> |
34 | #include <asm/cache.h> | 35 | #include <asm/cache.h> |
35 | #include <asm/byteorder.h> | 36 | #include <asm/byteorder.h> |
diff --git a/include/linux/netfilter_ipv4/ip_conntrack.h b/include/linux/netfilter_ipv4/ip_conntrack.h index 61da56941dce..33581c13d947 100644 --- a/include/linux/netfilter_ipv4/ip_conntrack.h +++ b/include/linux/netfilter_ipv4/ip_conntrack.h | |||
@@ -9,6 +9,7 @@ | |||
9 | #include <linux/compiler.h> | 9 | #include <linux/compiler.h> |
10 | #include <asm/atomic.h> | 10 | #include <asm/atomic.h> |
11 | 11 | ||
12 | #include <linux/timer.h> | ||
12 | #include <linux/netfilter_ipv4/ip_conntrack_tcp.h> | 13 | #include <linux/netfilter_ipv4/ip_conntrack_tcp.h> |
13 | #include <linux/netfilter_ipv4/ip_conntrack_icmp.h> | 14 | #include <linux/netfilter_ipv4/ip_conntrack_icmp.h> |
14 | #include <linux/netfilter_ipv4/ip_conntrack_proto_gre.h> | 15 | #include <linux/netfilter_ipv4/ip_conntrack_proto_gre.h> |
diff --git a/include/linux/pata_platform.h b/include/linux/pata_platform.h new file mode 100644 index 000000000000..2d5fd647e0e9 --- /dev/null +++ b/include/linux/pata_platform.h | |||
@@ -0,0 +1,13 @@ | |||
1 | #ifndef __LINUX_PATA_PLATFORM_H | ||
2 | #define __LINUX_PATA_PLATFORM_H | ||
3 | |||
4 | struct pata_platform_info { | ||
5 | /* | ||
6 | * I/O port shift, for platforms with ports that are | ||
7 | * constantly spaced and need larger than the 1-byte | ||
8 | * spacing used by ata_std_ports(). | ||
9 | */ | ||
10 | unsigned int ioport_shift; | ||
11 | }; | ||
12 | |||
13 | #endif /* __LINUX_PATA_PLATFORM_H */ | ||
diff --git a/include/linux/poll.h b/include/linux/poll.h index 51e1b56741fb..27690798623f 100644 --- a/include/linux/poll.h +++ b/include/linux/poll.h | |||
@@ -8,7 +8,8 @@ | |||
8 | #include <linux/compiler.h> | 8 | #include <linux/compiler.h> |
9 | #include <linux/wait.h> | 9 | #include <linux/wait.h> |
10 | #include <linux/string.h> | 10 | #include <linux/string.h> |
11 | #include <linux/mm.h> | 11 | #include <linux/fs.h> |
12 | #include <linux/sched.h> | ||
12 | #include <asm/uaccess.h> | 13 | #include <asm/uaccess.h> |
13 | 14 | ||
14 | /* ~832 bytes of stack space used max in sys_select/sys_poll before allocating | 15 | /* ~832 bytes of stack space used max in sys_select/sys_poll before allocating |
diff --git a/include/linux/radix-tree.h b/include/linux/radix-tree.h index 9158a68140c9..cbfa11537421 100644 --- a/include/linux/radix-tree.h +++ b/include/linux/radix-tree.h | |||
@@ -19,7 +19,6 @@ | |||
19 | #ifndef _LINUX_RADIX_TREE_H | 19 | #ifndef _LINUX_RADIX_TREE_H |
20 | #define _LINUX_RADIX_TREE_H | 20 | #define _LINUX_RADIX_TREE_H |
21 | 21 | ||
22 | #include <linux/sched.h> | ||
23 | #include <linux/preempt.h> | 22 | #include <linux/preempt.h> |
24 | #include <linux/types.h> | 23 | #include <linux/types.h> |
25 | 24 | ||
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h index 14ec16d2d9ba..a05a5f7c0b73 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h | |||
@@ -22,12 +22,10 @@ | |||
22 | #include <asm/atomic.h> | 22 | #include <asm/atomic.h> |
23 | #include <asm/types.h> | 23 | #include <asm/types.h> |
24 | #include <linux/spinlock.h> | 24 | #include <linux/spinlock.h> |
25 | #include <linux/mm.h> | ||
26 | #include <linux/highmem.h> | ||
27 | #include <linux/poll.h> | ||
28 | #include <linux/net.h> | 25 | #include <linux/net.h> |
29 | #include <linux/textsearch.h> | 26 | #include <linux/textsearch.h> |
30 | #include <net/checksum.h> | 27 | #include <net/checksum.h> |
28 | #include <linux/rcupdate.h> | ||
31 | #include <linux/dmaengine.h> | 29 | #include <linux/dmaengine.h> |
32 | 30 | ||
33 | #define HAVE_ALLOC_SKB /* For the drivers to know */ | 31 | #define HAVE_ALLOC_SKB /* For the drivers to know */ |
@@ -1295,24 +1293,6 @@ static inline int pskb_trim_rcsum(struct sk_buff *skb, unsigned int len) | |||
1295 | return __pskb_trim(skb, len); | 1293 | return __pskb_trim(skb, len); |
1296 | } | 1294 | } |
1297 | 1295 | ||
1298 | static inline void *kmap_skb_frag(const skb_frag_t *frag) | ||
1299 | { | ||
1300 | #ifdef CONFIG_HIGHMEM | ||
1301 | BUG_ON(in_irq()); | ||
1302 | |||
1303 | local_bh_disable(); | ||
1304 | #endif | ||
1305 | return kmap_atomic(frag->page, KM_SKB_DATA_SOFTIRQ); | ||
1306 | } | ||
1307 | |||
1308 | static inline void kunmap_skb_frag(void *vaddr) | ||
1309 | { | ||
1310 | kunmap_atomic(vaddr, KM_SKB_DATA_SOFTIRQ); | ||
1311 | #ifdef CONFIG_HIGHMEM | ||
1312 | local_bh_enable(); | ||
1313 | #endif | ||
1314 | } | ||
1315 | |||
1316 | #define skb_queue_walk(queue, skb) \ | 1296 | #define skb_queue_walk(queue, skb) \ |
1317 | for (skb = (queue)->next; \ | 1297 | for (skb = (queue)->next; \ |
1318 | prefetch(skb->next), (skb != (struct sk_buff *)(queue)); \ | 1298 | prefetch(skb->next), (skb != (struct sk_buff *)(queue)); \ |
diff --git a/include/linux/zftape.h b/include/linux/zftape.h deleted file mode 100644 index b057c65366c6..000000000000 --- a/include/linux/zftape.h +++ /dev/null | |||
@@ -1,87 +0,0 @@ | |||
1 | #ifndef _ZFTAPE_H | ||
2 | #define _ZFTAPE_H | ||
3 | |||
4 | /* | ||
5 | * Copyright (C) 1996, 1997 Claus-Justus Heine. | ||
6 | |||
7 | This program is free software; you can redistribute it and/or modify | ||
8 | it under the terms of the GNU General Public License as published by | ||
9 | the Free Software Foundation; either version 2, or (at your option) | ||
10 | any later version. | ||
11 | |||
12 | This program is distributed in the hope that it will be useful, | ||
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
15 | GNU General Public License for more details. | ||
16 | |||
17 | You should have received a copy of the GNU General Public License | ||
18 | along with this program; see the file COPYING. If not, write to | ||
19 | the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | ||
20 | |||
21 | * | ||
22 | * $Source: /homes/cvs/ftape-stacked/include/linux/zftape.h,v $ | ||
23 | * $Revision: 1.12 $ | ||
24 | * $Date: 1997/10/21 11:02:37 $ | ||
25 | * | ||
26 | * Special ioctl and other global info for the zftape VFS | ||
27 | * interface for the QIC-40/80/3010/3020 floppy-tape driver for | ||
28 | * Linux. | ||
29 | */ | ||
30 | |||
31 | #define ZFTAPE_VERSION "zftape for " FTAPE_VERSION | ||
32 | |||
33 | #include <linux/ftape.h> | ||
34 | |||
35 | #define ZFTAPE_LABEL "Ftape - The Linux Floppy Tape Project!" | ||
36 | |||
37 | /* Bits of the minor device number that control the operation mode */ | ||
38 | #define ZFT_Q80_MODE (1 << 3) | ||
39 | #define ZFT_ZIP_MODE (1 << 4) | ||
40 | #define ZFT_RAW_MODE (1 << 5) | ||
41 | #define ZFT_MINOR_OP_MASK (ZFT_Q80_MODE | \ | ||
42 | ZFT_ZIP_MODE | \ | ||
43 | ZFT_RAW_MODE) | ||
44 | #define ZFT_MINOR_MASK (FTAPE_SEL_MASK | \ | ||
45 | ZFT_MINOR_OP_MASK | \ | ||
46 | FTAPE_NO_REWIND) | ||
47 | |||
48 | #ifdef ZFT_OBSOLETE | ||
49 | struct mtblksz { | ||
50 | unsigned int mt_blksz; | ||
51 | }; | ||
52 | #define MTIOC_ZFTAPE_GETBLKSZ _IOR('m', 104, struct mtblksz) | ||
53 | #endif | ||
54 | |||
55 | #ifdef __KERNEL__ | ||
56 | |||
57 | extern int zft_init(void); | ||
58 | |||
59 | static inline __s64 zft_div_blksz(__s64 value, __u32 blk_sz) | ||
60 | { | ||
61 | if (blk_sz == 1) { | ||
62 | return value; | ||
63 | } else { | ||
64 | return (__s64)(((__u32)(value >> 10) + (blk_sz >> 10) - 1) | ||
65 | / (blk_sz >> 10)); | ||
66 | } | ||
67 | } | ||
68 | |||
69 | static inline __s64 zft_mul_blksz(__s64 value, __u32 blk_sz) | ||
70 | { | ||
71 | if (blk_sz == 1) { | ||
72 | return value; | ||
73 | } else { | ||
74 | /* if blk_sz != 1, then it is a multiple of 1024. In | ||
75 | * this case, `value' will also fit into 32 bits. | ||
76 | * | ||
77 | * Actually, this limits the capacity to 42 | ||
78 | * bits. This is (2^32)*1024, roughly a thousand | ||
79 | * times 2GB, or 3 Terabytes. Hopefully this is enough | ||
80 | */ | ||
81 | return(__s64)(((__u32)(value)*(blk_sz>>10))<<10); | ||
82 | } | ||
83 | } | ||
84 | |||
85 | #endif | ||
86 | |||
87 | #endif | ||