summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/cciss_ioctl.h11
-rw-r--r--include/linux/fs.h7
-rw-r--r--include/linux/i2o.h7
-rw-r--r--include/linux/ide.h1
-rw-r--r--include/linux/iso_fs.h48
-rw-r--r--include/linux/nbd.h3
-rw-r--r--include/linux/serial_reg.h4
-rw-r--r--include/linux/synclink.h14
-rw-r--r--include/linux/timer.h16
-rw-r--r--include/linux/videodev.h1
10 files changed, 85 insertions, 27 deletions
diff --git a/include/linux/cciss_ioctl.h b/include/linux/cciss_ioctl.h
index 989549b2413f..54e513cf7a23 100644
--- a/include/linux/cciss_ioctl.h
+++ b/include/linux/cciss_ioctl.h
@@ -80,25 +80,28 @@ typedef __u32 DriverVer_type;
#define CISS_MAX_LUN 16
+#define LEVEL2LUN 1 // index into Target(x) structure, due to byte swapping
+#define LEVEL3LUN 0
+
#pragma pack(1)
//Command List Structure
typedef union _SCSI3Addr_struct {
struct {
+ BYTE Dev;
BYTE Bus:6;
BYTE Mode:2; // b00
- BYTE Dev;
} PeripDev;
struct {
+ BYTE DevLSB;
BYTE DevMSB:6;
BYTE Mode:2; // b01
- BYTE DevLSB;
} LogDev;
struct {
- BYTE Targ:6;
- BYTE Mode:2; // b10
BYTE Dev:5;
BYTE Bus:3;
+ BYTE Targ:6;
+ BYTE Mode:2; // b10
} LogUnit;
} SCSI3Addr_struct;
diff --git a/include/linux/fs.h b/include/linux/fs.h
index b1fa3cc77bff..06ade31b463b 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -121,6 +121,12 @@ extern int leases_enable, dir_notify_enable, lease_break_time;
#define MS_RMT_MASK (MS_RDONLY|MS_NOSUID|MS_NODEV|MS_NOEXEC|\
MS_SYNCHRONOUS|MS_MANDLOCK|MS_NOATIME|MS_NODIRATIME)
+/*
+ * Old magic mount flag and mask
+ */
+#define MS_MGC_VAL 0xC0ED0000
+#define MS_MGC_MSK 0xffff0000
+
/* Inode flags - they have nothing to superblock flags now */
#define S_SYNC 1 /* Writes are synced at once */
@@ -1086,6 +1092,7 @@ static inline void mark_buffer_dirty_inode(struct buffer_head *bh, struct inode
extern void balance_dirty(kdev_t);
extern int check_disk_change(kdev_t);
extern int invalidate_inodes(struct super_block *);
+extern int invalidate_device(kdev_t, int);
extern void invalidate_inode_pages(struct inode *);
extern void invalidate_inode_buffers(struct inode *);
#define invalidate_buffers(dev) __invalidate_buffers((dev), 0)
diff --git a/include/linux/i2o.h b/include/linux/i2o.h
index c15faa66fb3a..0496c344eaca 100644
--- a/include/linux/i2o.h
+++ b/include/linux/i2o.h
@@ -69,6 +69,7 @@ struct i2o_device
struct i2o_controller *controller; /* Controlling IOP */
struct i2o_device *next; /* Chain */
+ struct i2o_device *prev;
char dev_name[8]; /* linux /dev name if available */
};
@@ -78,6 +79,9 @@ struct i2o_device
struct i2o_pci
{
int irq;
+ int queue_buggy:1; /* Don't send a lot of messages */
+ int short_req:1; /* Use small block sizes */
+ int dpt:1; /* Don't quiesce */
#ifdef CONFIG_MTRR
int mtrr_reg0;
int mtrr_reg1;
@@ -120,6 +124,8 @@ struct i2o_controller
u32 mem_offset; /* MFA offset */
u32 mem_phys; /* MFA physical */
+
+ int battery:1; /* Has a battery backup */
struct proc_dir_entry* proc_entry; /* /proc dir */
@@ -295,6 +301,7 @@ extern int i2o_device_notify_off(struct i2o_device *, struct i2o_handler *);
extern int i2o_post_this(struct i2o_controller *, u32 *, int);
extern int i2o_post_wait(struct i2o_controller *, u32 *, int, int);
+extern int i2o_post_wait_mem(struct i2o_controller *, u32 *, int, int, void *, void *);
extern int i2o_query_scalar(struct i2o_controller *, int, int, int, void *, int);
extern int i2o_set_scalar(struct i2o_controller *, int, int, int, void *, int);
diff --git a/include/linux/ide.h b/include/linux/ide.h
index 23866ce797a7..17a7748b996e 100644
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -648,6 +648,7 @@ extern ide_hwif_t ide_hwifs[]; /* master data repository */
extern ide_module_t *ide_modules;
extern ide_module_t *ide_probe;
#endif
+extern int noautodma;
/*
* We need blk.h, but we replace its end_request by our own version.
diff --git a/include/linux/iso_fs.h b/include/linux/iso_fs.h
index e664eed06a86..7f9014588c9b 100644
--- a/include/linux/iso_fs.h
+++ b/include/linux/iso_fs.h
@@ -165,14 +165,46 @@ struct iso_directory_record {
#define ISOFS_SUPER_MAGIC 0x9660
#ifdef __KERNEL__
-extern int isonum_711(char *);
-extern int isonum_712(char *);
-extern int isonum_721(char *);
-extern int isonum_722(char *);
-extern int isonum_723(char *);
-extern int isonum_731(char *);
-extern int isonum_732(char *);
-extern int isonum_733(char *);
+/* Number conversion inlines, named after the section in ISO 9660
+ they correspond to. */
+
+#include <asm/byteorder.h>
+#include <asm/unaligned.h>
+
+static inline int isonum_711(char *p)
+{
+ return *(u8 *)p;
+}
+static inline int isonum_712(char *p)
+{
+ return *(s8 *)p;
+}
+static inline int isonum_721(char *p)
+{
+ return le16_to_cpu(get_unaligned((u16 *)p));
+}
+static inline int isonum_722(char *p)
+{
+ return be16_to_cpu(get_unaligned((u16 *)p));
+}
+static inline int isonum_723(char *p)
+{
+ /* Ignore bigendian datum due to broken mastering programs */
+ return le16_to_cpu(get_unaligned((u16 *)p));
+}
+static inline int isonum_731(char *p)
+{
+ return le32_to_cpu(get_unaligned((u32 *)p));
+}
+static inline int isonum_732(char *p)
+{
+ return be32_to_cpu(get_unaligned((u32 *)p));
+}
+static inline int isonum_733(char *p)
+{
+ /* Ignore bigendian datum due to broken mastering programs */
+ return le32_to_cpu(get_unaligned((u32 *)p));
+}
extern int iso_date(char *, int);
extern int parse_rock_ridge_inode(struct iso_directory_record *, struct inode *);
diff --git a/include/linux/nbd.h b/include/linux/nbd.h
index 229e2e81dc37..b34d4d18d8f9 100644
--- a/include/linux/nbd.h
+++ b/include/linux/nbd.h
@@ -2,6 +2,9 @@
* 1999 Copyright (C) Pavel Machek, pavel@ucw.cz. This code is GPL.
* 1999/11/04 Copyright (C) 1999 VMware, Inc. (Regis "HPReg" Duchesne)
* Made nbd_end_request() use the io_request_lock
+ * 2001 Copyright (C) Steven Whitehouse
+ * New nbd_end_request() for compatibility with new linux block
+ * layer code.
*/
#ifndef LINUX_NBD_H
diff --git a/include/linux/serial_reg.h b/include/linux/serial_reg.h
index be42ec4fa99a..947da230a189 100644
--- a/include/linux/serial_reg.h
+++ b/include/linux/serial_reg.h
@@ -260,8 +260,8 @@
#define UART_RSA_SRR_Rx_FIFO_NEMP (1 << 3) /* Rx FIFO is not empty (1) */
#define UART_RSA_SRR_Rx_FIFO_NHFL (1 << 4) /* Rx FIFO is not half full (1) */
#define UART_RSA_SRR_Rx_FIFO_NFUL (1 << 5) /* Rx FIFO is not full (1) */
-#define UART_RSA_SRR_Rx_TOUT (1 << 6) /* Character reception timeout occured (1) */
-#define UART_RSA_SRR_TIMER (1 << 7) /* Timer interrupt occured */
+#define UART_RSA_SRR_Rx_TOUT (1 << 6) /* Character reception timeout occurred (1) */
+#define UART_RSA_SRR_TIMER (1 << 7) /* Timer interrupt occurred */
#define UART_RSA_FRR ((UART_RSA_BASE) + 2) /* OUT: FIFO Reset Register */
diff --git a/include/linux/synclink.h b/include/linux/synclink.h
index 75254a954869..bb4746c744b0 100644
--- a/include/linux/synclink.h
+++ b/include/linux/synclink.h
@@ -1,17 +1,17 @@
/*
* SyncLink Multiprotocol Serial Adapter Driver
*
- * $Id: synclink.h,v 3.2 2000/11/06 22:34:38 paul Exp $
+ * $Id: synclink.h,v 3.5 2001/03/26 17:04:36 ez Exp $
*
* Copyright (C) 1998-2000 by Microgate Corporation
*
* Redistribution of this file is permitted under
- * the terms of the GNU General Public License (GPL)
+ * the terms of the GNU Public License (GPL)
*/
#ifndef _SYNCLINK_H_
#define _SYNCLINK_H_
-#define SYNCLINK_H_VERSION 3.2
+#define SYNCLINK_H_VERSION 3.5
#define BOOLEAN int
#define TRUE 1
@@ -84,6 +84,11 @@
#define HDLC_CRC_NONE 0
#define HDLC_CRC_16_CCITT 1
#define HDLC_CRC_32_CCITT 2
+#define HDLC_CRC_MASK 0x00ff
+#define HDLC_CRC_RETURN_EX 0x8000
+
+#define RX_OK 0
+#define RX_CRC_ERROR 1
#define HDLC_TXIDLE_FLAGS 0
#define HDLC_TXIDLE_ALT_ZEROS_ONES 1
@@ -117,6 +122,7 @@
#define MGSL_MODE_ASYNC 1
#define MGSL_MODE_HDLC 2
+#define MGSL_MODE_RAW 6
#define MGSL_BUS_TYPE_ISA 1
#define MGSL_BUS_TYPE_EISA 2
@@ -150,6 +156,8 @@ typedef struct _MGSL_PARAMS
#define MICROGATE_VENDOR_ID 0x13c0
#define SYNCLINK_DEVICE_ID 0x0010
+#define MGSCC_DEVICE_ID 0x0020
+#define SYNCLINK_SCA_DEVICE_ID 0x0030
#define MGSL_MAX_SERIAL_NUMBER 30
/*
diff --git a/include/linux/timer.h b/include/linux/timer.h
index 0dc24204f036..e3249bf933a0 100644
--- a/include/linux/timer.h
+++ b/include/linux/timer.h
@@ -5,17 +5,13 @@
#include <linux/list.h>
/*
- * This is completely separate from the above, and is the
- * "new and improved" way of handling timers more dynamically.
- * Hopefully efficient and general enough for most things.
+ * In Linux 2.4, static timers have been removed from the kernel.
+ * Timers may be dynamically created and destroyed, and should be initialized
+ * by a call to init_timer() upon creation.
*
- * The "hardcoded" timers above are still useful for well-
- * defined problems, but the timer-list is probably better
- * when you need multiple outstanding timers or similar.
- *
- * The "data" field is in case you want to use the same
- * timeout function for several timeouts. You can use this
- * to distinguish between the different invocations.
+ * The "data" field enables use of a common timeout function for several
+ * timeouts. You can use this field to distinguish between the different
+ * invocations.
*/
struct timer_list {
struct list_head list;
diff --git a/include/linux/videodev.h b/include/linux/videodev.h
index ae2afc5ab8cc..d13975814dcc 100644
--- a/include/linux/videodev.h
+++ b/include/linux/videodev.h
@@ -374,6 +374,7 @@ struct video_code
#define VID_HARDWARE_OV511 27
#define VID_HARDWARE_ZR356700 28 /* Zoran 36700 series */
#define VID_HARDWARE_W9966 29
+#define VID_HARDWARE_SE401 30 /* SE401 USB webcams */
/*