Commit 7d234f1b authored by Linus Torvalds's avatar Linus Torvalds

Remove old stale header files that aren't referenced anywhere.

Noted by Alexey Dobriyan.
parent 8d1503d8
#ifndef IEEE_802_11
#define IEEE_802_11
#include <linux/types.h>
enum ieee_802_11_link_status_failure_reason {
reserved0, Unspecified=1, Previous_not_valid,
Sender_Quits_ESS_or_IBSS,
Due_Inactivity, AP_Overload,
Class_2_from_NonAuth,
Class_3_from_NonAuth,
Sender_Quits_BSS,
Association_requester_not_authenticated,
Reserved10
};
#define IEEE_802_11_LINK_STATUS_FAILURE_REASON_STRINGS \
{ \
{reserved0, 0xff," Reserved reason "},\
{Unspecified, 0xff," Unspecified Reason "},\
{Previous_not_valid, 0xff," Previous Authentication no longer valid "},\
{Sender_Quits_ESS_or_IBSS,0xff," Deauthenticated because sending station is leaving (has left) IBSS or ESS "},\
{Due_Inactivity, 0xff," Disassociated due to inactivity "},\
{AP_Overload, 0xff," Disassociated because AP is unable to handle all currently associated stations "},\
{Class_2_from_NonAuth, 0xff," Class 2 frame received from non-Authenticated station"},\
{Class_3_from_NonAuth, 0xff," Class 3 frame received from nonAssociated station"},\
{Sender_Quits_BSS, 0xff," Disassociated because sending station is leaving (has left) BSS"},\
{Association_requester_not_authenticated,0xff," Station requesting (Re)Association is not Authenticated with responding station"},\
{Reserved10, 0xff," Reserved"},\
{0,0,NULL}\
};
struct ieee_802_11_header {
u16 frame_control;// needs to be subtyped
u16 duration;
u8 mac1[6];
u8 mac2[6];
u8 mac3[6];
u16 SeqCtl;
u8 mac4[6];
u16 gapLen;
u8 gap[8];
};
struct ieee_802_3_header {
u16 status;
u16 payload_length;
u8 dst_mac[6];
u8 src_mac[6];
};
#define P80211_OUI_LEN 3
struct ieee_802_11_snap_header {
u8 dsap; /* always 0xAA */
u8 ssap; /* always 0xAA */
u8 ctrl; /* always 0x03 */
u8 oui[P80211_OUI_LEN]; /* organizational universal id */
} __attribute__ ((packed));
#define P80211_LLC_OUI_LEN 3
struct ieee_802_11_802_1H_header {
u8 dsap;
u8 ssap; /* always 0xAA */
u8 ctrl; /* always 0x03 */
u8 oui[P80211_OUI_LEN]; /* organizational universal id */
u16 unknown1; /* packet type ID fields */
u16 unknown2; /* here is something like length in some cases */
} __attribute__ ((packed));
struct ieee_802_11_802_2_header {
u8 dsap;
u8 ssap; /* always 0xAA */
u8 ctrl; /* always 0x03 */
u8 oui[P80211_OUI_LEN]; /* organizational universal id */
u8 type; /* packet type ID field. i guess, */
} __attribute__ ((packed));
// following is incoplete and may be incorrect and need reorganization
#define ieee_802_11_frame_type_Management 0x00
#define ieee_802_11_frame_type_Control 0x01
#define ieee_802_11_frame_type_Data 0x10
#define ieee_802_11_frame_type_Reserved 0x11
#define ieee_802_11_frame_subtype_Association_Req 0x0 // Association Request
#define ieee_802_11_frame_subtype_Association_Resp 0x1 // Association Response
#define ieee_802_11_frame_subtype_Reassociation_Req 0x2 // Reassociation Request
#define ieee_802_11_frame_subtype_Reassociation_Resp 0x3 // Reassociation Response
#define ieee_802_11_frame_subtype_Probe_Req 0x4 // Probe Request
#define ieee_802_11_frame_subtype_Probe_Resp 0x5 // Probe Response
#define ieee_802_11_frame_subtype_Beacon 0x8 // Beacon
#define ieee_802_11_frame_subtype_ATIM 0x9 // ATIM
#define ieee_802_11_frame_subtype_Disassociation 0xA // Disassociation
#define ieee_802_11_frame_subtype_Authentication 0xB // Authentication
#define ieee_802_11_frame_subtype_Deauthentication 0xC // Deauthentication
#define ieee_802_11_frame_subtype_PS_Poll 0xA // PS-Poll
#define ieee_802_11_frame_subtype_RTS 0xB // RTS
#define ieee_802_11_frame_subtype_CTS 0xC // CTS
#define ieee_802_11_frame_subtype_ACK 0xD // ACK
#define ieee_802_11_frame_subtype_CFEnd 0xE // CF-End
#define ieee_802_11_frame_subtype_CFEnd_CFAck 0xF // CF-End + CF-Ack
#define ieee_802_11_frame_subtype_Data 0x0 // Data
#define ieee_802_11_frame_subtype_Data_CFAck 0x1 // Data + CF-Ack
#define ieee_802_11_frame_subtype_Data_CF_Poll 0x2 // Data + CF-Poll
#define ieee_802_11_frame_subtype_Data_CF_AckCF_Poll 0x3 // Data + CF-Ack + CF-Poll
#define ieee_802_11_frame_subtype_NullFunction 0x4 // Null Function (no data)
#define ieee_802_11_frame_subtype_CF_Ack 0x5 // CF-Ack (no data)
#define ieee_802_11_frame_subtype_CF_Poll 0x6 // CF-Poll (no data)
#define ieee_802_11_frame_subtype_CF_AckCF_Poll 0x7 // CF-Ack + CF-Poll (no data)
#define ieee_802_11_frame_subtype_strings {\
{ ieee_802_11_frame_subtype_Association_Req, 0xF,"f Association Request"},\
{ ieee_802_11_frame_subtype_Association_Resp, 0xF,"1 Association Response"},\
{ ieee_802_11_frame_subtype_Reassociation_Req, 0xF,"2 Reassociation Request"},\
{ ieee_802_11_frame_subtype_Reassociation_Resp, 0xF,"3 Reassociation Response"},\
{ ieee_802_11_frame_subtype_Probe_Req , 0xF,"4 Probe Request"},\
{ ieee_802_11_frame_subtype_Probe_Resp , 0xF,"5 Probe Response"},\
{ ieee_802_11_frame_subtype_Beacon , 0xF,"8 Beacon"},\
{ ieee_802_11_frame_subtype_ATIM , 0xF,"9 ATIM"},\
{ ieee_802_11_frame_subtype_Disassociation, 0xF,"A Disassociation"},\
{ ieee_802_11_frame_subtype_Authentication, 0xF,"B Authentication"},\
{ ieee_802_11_frame_subtype_Deauthentication, 0xF,"C Deauthentication"},\
{ ieee_802_11_frame_subtype_PS_Poll , 0xF,"A PS-Poll"},\
{ ieee_802_11_frame_subtype_RTS , 0xF,"B RTS"},\
{ ieee_802_11_frame_subtype_CTS , 0xF,"C CTS"},\
{ ieee_802_11_frame_subtype_ACK , 0xF,"D ACK"},\
{ ieee_802_11_frame_subtype_CFEnd , 0xF,"E CF-End"},\
{ ieee_802_11_frame_subtype_CFEnd_CFAck , 0xF,"F CF-End + CF-Ack"},\
{ ieee_802_11_frame_subtype_Data , 0xF,"0 Data"},\
{ ieee_802_11_frame_subtype_Data_CFAck , 0xF,"1 Data + CF-Ack"},\
{ ieee_802_11_frame_subtype_Data_CFPoll , 0xF,"2 Data + CF-Poll"},\
{ ieee_802_11_frame_subtype_Data_CFAck_CFPoll, 0xF,"3 Data + CF-Ack + CF-Poll"},\
{ ieee_802_11_frame_subtype_Null_Function , 0xF,"4 Null Function (no data)"},\
{ ieee_802_11_frame_subtype_CFAck , 0xF,"5 CF-Ack (no data)"},\
{ ieee_802_11_frame_subtype_CFPoll , 0xF,"6 CF-Poll (no data)"},\
{ ieee_802_11_frame_subtype_CFAck_CFPoll, 0xF,"y7 CF-Ack + CF-Poll (no data)"},\
{ 0,0,NULL}\
}
struct ieee_802_11_frame_subtype_class {
u8 subtype;
u8 mask;
u8 class;
u8 type;
};
#define ieee_802_11_frame_subtype_classes {\
{ ieee_802_11_frame_subtype_Association_Req, 0xF,2,ieee_802_11_frame_type_Management},\
{ ieee_802_11_frame_subtype_Association_Resp, 0xF,2,ieee_802_11_frame_type_Management},\
{ ieee_802_11_frame_subtype_Reassociation_Req, 0xF,2,ieee_802_11_frame_type_Management},\
{ ieee_802_11_frame_subtype_Reassociation_Resp, 0xF,2,ieee_802_11_frame_type_Management},\
{ ieee_802_11_frame_subtype_Probe_Req , 0xF,1,ieee_802_11_frame_type_Management},\
{ ieee_802_11_frame_subtype_Probe_Resp , 0xF,1,ieee_802_11_frame_type_Management},\
{ ieee_802_11_frame_subtype_Beacon , 0xF,1,ieee_802_11_frame_type_Management},\
{ ieee_802_11_frame_subtype_ATIM , 0xF,1,ieee_802_11_frame_type_Management},\
{ ieee_802_11_frame_subtype_Disassociation, 0xF,2,ieee_802_11_frame_type_Management},\
{ ieee_802_11_frame_subtype_Authentication, 0xF,1,ieee_802_11_frame_type_Management},\
{ ieee_802_11_frame_subtype_Deauthentication, 0xF,3,ieee_802_11_frame_type_Management},\
{ ieee_802_11_frame_subtype_PS-Poll , 0xF,3,ieee_802_11_frame_type_Control},\
{ ieee_802_11_frame_subtype_RTS , 0xF,1,ieee_802_11_frame_type_Control},\
{ ieee_802_11_frame_subtype_CTS , 0xF,1,ieee_802_11_frame_type_Control},\
{ ieee_802_11_frame_subtype_ACK , 0xF,1,ieee_802_11_frame_type_Control},\
{ ieee_802_11_frame_subtype_CFEnd , 0xF,1,ieee_802_11_frame_type_Control},\
{ ieee_802_11_frame_subtype_CFEnd_CFAck , 0xF,1,ieee_802_11_frame_type_Control},\
{ ieee_802_11_frame_subtype_Data , 0xF,3,ieee_802_11_frame_type_Data},\
{ ieee_802_11_frame_subtype_Data_CFAck , 0xF,3,ieee_802_11_frame_type_Data},\
{ ieee_802_11_frame_subtype_Data_CF_Poll 0xF,3,ieee_802_11_frame_type_Data},\
{ ieee_802_11_frame_subtype_Data_CF_AckCF_Poll, 0xF,3,ieee_802_11_frame_type_Data},\
{ ieee_802_11_frame_subtype_NullFunction 0xF,1,ieee_802_11_frame_type_Data},\
{ ieee_802_11_frame_subtype_CF_Ack , 0xF,1,ieee_802_11_frame_type_Data},\
{ ieee_802_11_frame_subtype_CF_Poll , 0xF,1,ieee_802_11_frame_type_Data},\
{ ieee_802_11_frame_subtype_CF_AckCF_Poll, 0xF,1,ieee_802_11_frame_type_Data},\
{ 0,0,NULL}\
}
#endif
/*
* linux/include/linux/acpi_serial.h
*
* Copyright (C) 2000 Hewlett-Packard Co.
* Copyright (C) 2000 Khalid Aziz <khalid_aziz@hp.com>
*
* Definitions for ACPI defined serial ports (headless console and
* debug ports)
*
*/
#include <linux/serial.h>
extern void setup_serial_acpi(void *);
#define ACPI_SIG_LEN 4
/* ACPI table signatures */
#define ACPI_SPCRT_SIGNATURE "SPCR"
#define ACPI_DBGPT_SIGNATURE "DBGP"
/* Interface type as defined in ACPI serial port tables */
#define ACPI_SERIAL_INTFC_16550 0
#define ACPI_SERIAL_INTFC_16450 1
/* Interrupt types for ACPI serial port tables */
#define ACPI_SERIAL_INT_PCAT 0x01
#define ACPI_SERIAL_INT_APIC 0x02
#define ACPI_SERIAL_INT_SAPIC 0x04
/* Baud rates as defined in ACPI serial port tables */
#define ACPI_SERIAL_BAUD_9600 3
#define ACPI_SERIAL_BAUD_19200 4
#define ACPI_SERIAL_BAUD_57600 6
#define ACPI_SERIAL_BAUD_115200 7
/* Parity as defined in ACPI serial port tables */
#define ACPI_SERIAL_PARITY_NONE 0
/* Flow control methods as defined in ACPI serial port tables */
#define ACPI_SERIAL_FLOW_DCD 0x01
#define ACPI_SERIAL_FLOW_RTS 0x02
#define ACPI_SERIAL_FLOW_XON 0x04
/* Terminal types as defined in ACPI serial port tables */
#define ACPI_SERIAL_TERM_VT100 0
#define ACPI_SERIAL_TERM_VT100X 1
/* PCI Flags as defined by SPCR table */
#define ACPI_SERIAL_PCIFLAG_PNP 0x00000001
/* Space ID as defined in base address structure in ACPI serial port tables */
#define ACPI_SERIAL_MEM_SPACE 0
#define ACPI_SERIAL_IO_SPACE 1
#define ACPI_SERIAL_PCICONF_SPACE 2
/*
* Generic Register Address Structure - as defined by Microsoft
* in http://www.microsoft.com/hwdev/onnow/download/LFreeACPI.doc
*
*/
typedef struct {
u8 space_id;
u8 bit_width;
u8 bit_offset;
u8 resv;
u32 addrl;
u32 addrh;
} gen_regaddr;
/* Space ID for generic register address structure */
#define REGADDR_SPACE_SYSMEM 0
#define REGADDR_SPACE_SYSIO 1
#define REGADDR_SPACE_PCICONFIG 2
/* Serial Port Console Redirection and Debug Port Table formats */
typedef struct {
u8 signature[4];
u32 length;
u8 rev;
u8 chksum;
u8 oemid[6];
u8 oem_tabid[8];
u32 oem_rev;
u8 creator_id[4];
u32 creator_rev;
u8 intfc_type;
u8 resv1[3];
gen_regaddr base_addr;
u8 int_type;
u8 irq;
u8 global_int[4];
u8 baud;
u8 parity;
u8 stop_bits;
u8 flow_ctrl;
u8 termtype;
u8 language;
u16 pci_dev_id;
u16 pci_vendor_id;
u8 pci_bus;
u8 pci_dev;
u8 pci_func;
u8 pci_flags[4];
u8 pci_seg;
u32 resv2;
} acpi_ser_t;
#ifndef _LINUX_ADB_MOUSE_H
#define _LINUX_ADB_MOUSE_H
/*
* linux/include/linux/mac_mouse.h
* header file for Macintosh ADB mouse driver
* 27-10-97 Michael Schmitz
* copied from:
* header file for Atari Mouse driver
* by Robert de Vries (robert@and.nl) on 19Jul93
*/
struct mouse_status {
char buttons;
short dx;
short dy;
int ready;
int active;
struct wait_queue *wait;
struct fasync_struct *fasyncptr;
};
#endif
/**** vi:set ts=8 sts=8 sw=8:************************************************
*
* Copyright (C) 2002 Marcin Dalecki <martin@dalecki.de>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 as published by
* the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*/
#include <linux/types.h>
#include <asm/byteorder.h>
/*
* With each packet command, we allocate a buffer.
* This is used for several packet
* commands (Not for READ/WRITE commands).
*/
#define IDEFLOPPY_PC_BUFFER_SIZE 256
#define IDETAPE_PC_BUFFER_SIZE 256
/*
* Packet flags bits.
*/
#define PC_ABORT 0 /* set when an error is considered normal - we won't retry */
#define PC_WAIT_FOR_DSC 1 /* 1 when polling for DSC on a media access command */
#define PC_DMA_RECOMMENDED 2 /* 1 when we prefer to use DMA if possible */
#define PC_DMA_IN_PROGRESS 3 /* 1 while DMA in progress */
#define PC_DMA_ERROR 4 /* 1 when encountered problem during DMA */
#define PC_WRITING 5 /* data direction */
#define PC_SUPPRESS_ERROR 6 /* suppress error reporting */
#define PC_TRANSFORM 7 /* transform SCSI commands */
/* This struct get's shared between different drivers.
*/
struct atapi_packet_command {
u8 c[12]; /* Actual packet bytes */
char *buffer; /* Data buffer */
int buffer_size; /* Size of our data buffer */
char *current_position; /* Pointer into the above buffer */
int request_transfer; /* Bytes to transfer */
int actually_transferred; /* Bytes actually transferred */
unsigned long flags; /* Status/Action bit flags: long for set_bit */
/* FIXME: the following is ugly as hell, but the only way we can start
* actually to unify the code.
*/
/* driver specific data. */
/* floppy/tape */
int retries; /* On each retry, we increment retries */
int error; /* Error code */
char *b_data; /* Pointer which runs on the buffers */
unsigned int b_count; /* Missing/Available data on the current buffer */
u8 pc_buffer[IDEFLOPPY_PC_BUFFER_SIZE]; /* Temporary buffer */
/* Called when this packet command is completed */
void (*callback) (struct ata_device *, struct request *);
/* only tape */
struct bio *bio;
/* only scsi */
struct {
unsigned int b_count; /* Bytes transferred from current entry */
struct scatterlist *sg; /* Scatter gather table */
struct scsi_cmnd *scsi_cmd; /* SCSI command */
void (*done)(struct scsi_cmnd *); /* Scsi completion routine */
unsigned long timeout; /* Command timeout */
} s;
};
/*
* ATAPI Status Register.
*/
typedef union {
u8 all : 8;
struct {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 check : 1; /* Error occurred */
u8 idx : 1; /* Reserved */
u8 corr : 1; /* Correctable error occurred */
u8 drq : 1; /* Data is request by the device */
u8 dsc : 1; /* Media access command finished / Buffer availability */
u8 reserved5 : 1; /* Reserved */
u8 drdy : 1; /* Ignored for ATAPI commands (ready to accept ATA command) */
u8 bsy : 1; /* The device has access to the command block */
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 bsy : 1;
u8 drdy : 1;
u8 reserved5 : 1;
u8 dsc : 1;
u8 drq : 1;
u8 corr : 1;
u8 idx : 1;
u8 check : 1;
#else
#error "Please fix <asm/byteorder.h>"
#endif
} b;
} atapi_status_reg_t;
/*
* ATAPI error register.
*/
typedef union {
u8 all : 8;
struct {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 ili : 1; /* Illegal Length Indication */
u8 eom : 1; /* End Of Media Detected */
u8 abrt : 1; /* Aborted command - As defined by ATA */
u8 mcr : 1; /* Media Change Requested - As defined by ATA */
u8 sense_key : 4; /* Sense key of the last failed packet command */
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 sense_key : 4;
u8 mcr : 1;
u8 abrt : 1;
u8 eom : 1;
u8 ili : 1;
#else
#error "Please fix <asm/byteorder.h>"
#endif
} b;
} atapi_error_reg_t;
/* Currently unused, but please do not remove. --bkz */
/*
* ATAPI Feature Register.
*/
typedef union {
u8 all : 8;
struct {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 dma : 1; /* Using DMA or PIO */
u8 reserved321 : 3; /* Reserved */
u8 reserved654 : 3; /* Reserved (Tag Type) */
u8 reserved7 : 1; /* Reserved */
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 reserved7 : 1;
u8 reserved654 : 3;
u8 reserved321 : 3;
u8 dma : 1;
#else
#error "Please fix <asm/byteorder.h>"
#endif
} b;
} atapi_feature_reg_t;
/*
* ATAPI Byte Count Register.
*/
typedef union {
u16 all : 16;
struct {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 low; /* LSB */
u8 high; /* MSB */
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 high;
u8 low;
#else
#error "Please fix <asm/byteorder.h>"
#endif
} b;
} atapi_bcount_reg_t;
/*
* ATAPI Interrupt Reason Register.
*/
typedef union {
u8 all : 8;
struct {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 cod : 1; /* Information transferred is command (1) or data (0) */
u8 io : 1; /* The device requests us to read (1) or write (0) */
u8 reserved : 6; /* Reserved */
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 reserved : 6;
u8 io : 1;
u8 cod : 1;
#else
#error "Please fix <asm/byteorder.h>"
#endif
} b;
} atapi_ireason_reg_t;
/* Currently unused, but please do not remove. --bkz */
/*
* ATAPI Drive Select Register.
*/
typedef union {
u8 all :8;
struct {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 sam_lun :3; /* Logical unit number */
u8 reserved3 :1; /* Reserved */
u8 drv :1; /* The responding drive will be drive 0 (0) or drive 1 (1) */
u8 one5 :1; /* Should be set to 1 */
u8 reserved6 :1; /* Reserved */
u8 one7 :1; /* Should be set to 1 */
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 one7 :1;
u8 reserved6 :1;
u8 one5 :1;
u8 drv :1;
u8 reserved3 :1;
u8 sam_lun :3;
#else
#error "Please fix <asm/byteorder.h>"
#endif
} b;
} atapi_drivesel_reg_t;
/* Currently unused, but please do not remove. --bkz */
/*
* ATAPI Device Control Register.
*/
typedef union {
u8 all : 8;
struct {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 zero0 : 1; /* Should be set to zero */
u8 nien : 1; /* Device interrupt is disabled (1) or enabled (0) */
u8 srst : 1; /* ATA software reset. ATAPI devices should use the new ATAPI srst. */
u8 one3 : 1; /* Should be set to 1 */
u8 reserved4567 : 4; /* Reserved */
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 reserved4567 : 4;
u8 one3 : 1;
u8 srst : 1;
u8 nien : 1;
u8 zero0 : 1;
#else
#error "Please fix <asm/byteorder.h>"
#endif
} b;
} atapi_control_reg_t;
/*
* The following is used to format the general configuration word
* of the ATAPI IDENTIFY DEVICE command.
*/
struct atapi_id_gcw {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 packet_size : 2; /* Packet Size */
u8 reserved234 : 3; /* Reserved */
u8 drq_type : 2; /* Command packet DRQ type */
u8 removable : 1; /* Removable media */
u8 device_type : 5; /* Device type */
u8 reserved13 : 1; /* Reserved */
u8 protocol : 2; /* Protocol type */
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 protocol : 2;
u8 reserved13 : 1;
u8 device_type : 5;
u8 removable : 1;
u8 drq_type : 2;
u8 reserved234 : 3;
u8 packet_size : 2;
#else
#error "Please fix <asm/byteorder.h>"
#endif
};
/*
* INQUIRY packet command - Data Format.
*/
typedef struct {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 device_type : 5; /* Peripheral Device Type */
u8 reserved0_765 : 3; /* Peripheral Qualifier - Reserved */
u8 reserved1_6t0 : 7; /* Reserved */
u8 rmb : 1; /* Removable Medium Bit */
u8 ansi_version : 3; /* ANSI Version */
u8 ecma_version : 3; /* ECMA Version */
u8 iso_version : 2; /* ISO Version */
u8 response_format : 4; /* Response Data Format */
u8 reserved3_45 : 2; /* Reserved */
u8 reserved3_6 : 1; /* TrmIOP - Reserved */
u8 reserved3_7 : 1; /* AENC - Reserved */
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 reserved0_765 : 3;
u8 device_type : 5;
u8 rmb : 1;
u8 reserved1_6t0 : 7;
u8 iso_version : 2;
u8 ecma_version : 3;
u8 ansi_version : 3;
u8 reserved3_7 : 1;
u8 reserved3_6 : 1;
u8 reserved3_45 : 2;
u8 response_format : 4;
#else
#error "Please fix <asm/byteorder.h>"
#endif
u8 additional_length; /* Additional Length (total_length-4) */
u8 rsv5, rsv6, rsv7; /* Reserved */
u8 vendor_id[8]; /* Vendor Identification */
u8 product_id[16]; /* Product Identification */
u8 revision_level[4]; /* Revision Level */
u8 vendor_specific[20]; /* Vendor Specific - Optional */
u8 reserved56t95[40]; /* Reserved - Optional */
/* Additional information may be returned */
} atapi_inquiry_result_t;
/*
* REQUEST SENSE packet command result - Data Format.
*/
typedef struct atapi_request_sense {
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 error_code : 7; /* Error Code (0x70 - current or 0x71 - deferred) */
u8 valid : 1; /* The information field conforms to standard */
u8 reserved1 : 8; /* Reserved (Segment Number) */
u8 sense_key : 4; /* Sense Key */
u8 reserved2_4 : 1; /* Reserved */
u8 ili : 1; /* Incorrect Length Indicator */
u8 eom : 1; /* End Of Medium */
u8 filemark : 1; /* Filemark */
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 valid : 1;
u8 error_code : 7;
u8 reserved1 : 8;
u8 filemark : 1;
u8 eom : 1;
u8 ili : 1;
u8 reserved2_4 : 1;
u8 sense_key : 4;
#else
#error "Please fix <asm/byteorder.h>"
#endif
u32 information __attribute__ ((packed));
u8 asl; /* Additional sense length (n-7) */
u32 command_specific; /* Additional command specific information */
u8 asc; /* Additional Sense Code */
u8 ascq; /* Additional Sense Code Qualifier */
u8 replaceable_unit_code; /* Field Replaceable Unit Code */
#if defined(__LITTLE_ENDIAN_BITFIELD)
u8 sk_specific1 : 7; /* Sense Key Specific */
u8 sksv : 1; /* Sense Key Specific information is valid */
#elif defined(__BIG_ENDIAN_BITFIELD)
u8 sksv : 1; /* Sense Key Specific information is valid */
u8 sk_specific1 : 7; /* Sense Key Specific */
#else
#error "Please fix <asm/byteorder.h>"
#endif
u8 sk_specific[2]; /* Sense Key Specific */
u8 pad[2]; /* Padding to 20 bytes */
} atapi_request_sense_result_t;
extern void atapi_init_pc(struct atapi_packet_command *pc);
extern void atapi_discard_data(struct ata_device *, unsigned int);
extern void atapi_write_zeros(struct ata_device *, unsigned int);
extern void atapi_read(struct ata_device *, u8 *, unsigned int);
extern void atapi_write(struct ata_device *, u8 *, unsigned int);
typedef enum {
ide_wait, /* insert rq at end of list, and wait for it */
ide_preempt, /* insert rq in front of current request */
ide_end /* insert rq at end of list, but don't wait for it */
} ide_action_t;
extern int ide_do_drive_cmd(struct ata_device *, struct request *, ide_action_t);
/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
* vim:expandtab:shiftwidth=8:tabstop=8:
*/
#ifndef __FILTER_H_
#define __FILTER_H_ 1
#ifdef __KERNEL__
/* cachetype.c */
/*
* it is important that things like inode, super and file operations
* for intermezzo are not defined statically. If methods are NULL
* the VFS takes special action based on that. Given that different
* cache types have NULL ops at different slots, we must install opeation
* talbes for InterMezzo with NULL's in the same spot
*/
struct filter_ops {
struct super_operations filter_sops;
struct inode_operations filter_dir_iops;
struct inode_operations filter_file_iops;
struct inode_operations filter_sym_iops;
struct file_operations filter_dir_fops;
struct file_operations filter_file_fops;
struct file_operations filter_sym_fops;
struct dentry_operations filter_dentry_ops;
};
struct cache_ops {
/* operations on the file store */
struct super_operations *cache_sops;
struct inode_operations *cache_dir_iops;
struct inode_operations *cache_file_iops;
struct inode_operations *cache_sym_iops;
struct file_operations *cache_dir_fops;
struct file_operations *cache_file_fops;
struct file_operations *cache_sym_fops;
struct dentry_operations *cache_dentry_ops;
};
#define FILTER_DID_SUPER_OPS 0x1
#define FILTER_DID_INODE_OPS 0x2
#define FILTER_DID_FILE_OPS 0x4
#define FILTER_DID_DENTRY_OPS 0x8
#define FILTER_DID_DEV_OPS 0x10
#define FILTER_DID_SYMLINK_OPS 0x20
#define FILTER_DID_DIR_OPS 0x40
struct filter_fs {
int o_flags;
struct filter_ops o_fops;
struct cache_ops o_caops;
struct journal_ops *o_trops;
struct snapshot_ops *o_snops;
};
#define FILTER_FS_TYPES 6
#define FILTER_FS_EXT2 0
#define FILTER_FS_EXT3 1
#define FILTER_FS_REISERFS 2
#define FILTER_FS_XFS 3
#define FILTER_FS_OBDFS 4
#define FILTER_FS_TMPFS 5
extern struct filter_fs filter_oppar[FILTER_FS_TYPES];
struct filter_fs *filter_get_filter_fs(const char *cache_type);
void filter_setup_journal_ops(struct filter_fs *ops, char *cache_type);
struct super_operations *filter_c2usops(struct filter_fs *cache);
struct inode_operations *filter_c2ufiops(struct filter_fs *cache);
struct inode_operations *filter_c2udiops(struct filter_fs *cache);
struct inode_operations *filter_c2usiops(struct filter_fs *cache);
struct file_operations *filter_c2uffops(struct filter_fs *cache);
struct file_operations *filter_c2udfops(struct filter_fs *cache);
struct file_operations *filter_c2usfops(struct filter_fs *cache);
struct super_operations *filter_c2csops(struct filter_fs *cache);
struct inode_operations *filter_c2cfiops(struct filter_fs *cache);
struct inode_operations *filter_c2cdiops(struct filter_fs *cache);
struct inode_operations *filter_c2csiops(struct filter_fs *cache);
struct file_operations *filter_c2cffops(struct filter_fs *cache);
struct file_operations *filter_c2cdfops(struct filter_fs *cache);
struct file_operations *filter_c2csfops(struct filter_fs *cache);
struct dentry_operations *filter_c2cdops(struct filter_fs *cache);
struct dentry_operations *filter_c2udops(struct filter_fs *cache);
void filter_setup_super_ops(struct filter_fs *cache, struct super_operations *cache_ops, struct super_operations *filter_sops);
void filter_setup_dir_ops(struct filter_fs *cache, struct inode *cache_inode, struct inode_operations *filter_iops, struct file_operations *ffops);
void filter_setup_file_ops(struct filter_fs *cache, struct inode *cache_inode, struct inode_operations *filter_iops, struct file_operations *filter_op);
void filter_setup_symlink_ops(struct filter_fs *cache, struct inode *cache_inode, struct inode_operations *filter_iops, struct file_operations *filter_op);
void filter_setup_dentry_ops(struct filter_fs *cache, struct dentry_operations *cache_dop, struct dentry_operations *filter_dop);
#define PRESTO_DEBUG
#ifdef PRESTO_DEBUG
/* debugging masks */
#define D_SUPER 1
#define D_INODE 2 /* print entry and exit into procedure */
#define D_FILE 4
#define D_CACHE 8 /* cache debugging */
#define D_MALLOC 16 /* print malloc, de-alloc information */
#define D_JOURNAL 32
#define D_UPCALL 64 /* up and downcall debugging */
#define D_PSDEV 128
#define D_PIOCTL 256
#define D_SPECIAL 512
#define D_TIMING 1024
#define D_DOWNCALL 2048
#define FDEBUG(mask, format, a...) \
do { \
if (filter_debug & mask) { \
printk("(%s,l. %d): ", __FUNCTION__, __LINE__); \
printk(format, ##a); } \
} while (0)
#define FENTRY \
if(filter_print_entry) \
printk("Process %d entered %s\n", current->pid, __FUNCTION__)
#define FEXIT \
if(filter_print_entry) \
printk("Process %d leaving %s at %d\n", current->pid, \
__FUNCTION__,__LINE__)
#endif
#endif
#endif
/*
* INET An implementation of the TCP/IP protocol suite for the LINUX
* operating system. INET is implemented using the BSD Socket
* interface as the means of communication with the user level.
*
* Miscellaneous internetwork definitions for kernel.
*
* Version: @(#)in_systm.h 1.0.0 12/17/93
*
* Authors: Original taken from Berkeley BSD UNIX 4.3-RENO.
* Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*/
#ifndef _LINUX_IN_SYSTM_H
#define _LINUX_IN_SYSTM_H
/*
* Network types.
* The n_ types are network-order variants of their natural
* equivalents. The Linux kernel NET-2 code does not use
* them (yet), but it might in the future. This is mostly
* there for compatibility with BSD user-level programs.
*/
typedef u_short n_short; /* short as received from the net */
typedef u_long n_long; /* long as received from the net */
typedef u_long n_time; /* ms since 00:00 GMT, byte rev */
#endif /* _LINUX_IN_SYSTM_H */
/* $Id: isdn_lzscomp.h,v 1.1.10.1 2001/09/23 22:25:05 kai Exp $
*
* Header for isdn_lzscomp.c
* Concentrated here to not mess up half a dozen kernel headers with code
* snippets
*
* This software may be used and distributed according to the terms
* of the GNU General Public License, incorporated herein by reference.
*
*/
#define CI_LZS_COMPRESS 17
#define CILEN_LZS_COMPRESS 5
#define LZS_CMODE_NONE 0
#define LZS_CMODE_LCB 1
#define LZS_CMODE_CRC 2
#define LZS_CMODE_SEQNO 3 /* MUST be implemented (default) */
#define LZS_CMODE_EXT 4 /* Seems to be what Win0.95 uses */
#define LZS_COMP_MAX_HISTS 1 /* Don't waste peers ressources */
#define LZS_COMP_DEF_HISTS 1 /* Most likely to negotiate */
#define LZS_DECOMP_MAX_HISTS 32 /* More is really nonsense */
#define LZS_DECOMP_DEF_HISTS 8 /* If we get it, this may be optimal */
#define LZS_HIST_BYTE1(word) (word>>8) /* Just for better reading */
#define LZS_HIST_BYTE2(word) (word&0xff) /* of this big endian stuff */
#define LZS_HIST_WORD(b1,b2) ((b1<<8)|b2) /* (network byte order rulez) */
#ifndef _LINUX_MPP_H
#define _LINUX_MPP_H
/*
* Definitions related to Massively Parallel Processing support.
*/
/* All mpp implementations must supply these functions */
extern void mpp_init(void);
extern void mpp_hw_init(void);
extern void mpp_procfs_init(void);
extern int mpp_num_cells(void);
extern int mpp_cid(void);
extern int get_mppinfo(char *buffer);
#endif
#ifndef _LINUX_NETBEUI_H
#define _LINUX_NETBEUI_H
#include <linux/if.h>
#define NB_NAME_LEN 20 /* Set this properly from the full docs when
I get them */
struct sockaddr_netbeui
{
sa_family snb_family;
char snb_name[NB_NAME_LEN];
char snb_devhint[IFNAMSIZ];
};
#endif
#ifndef __LINUX_DDP_NETFILTER_H
#define __LINUX_DDP_NETFILTER_H
/* DDP-specific defines for netfilter. Complete me sometime.
* (C)1998 Rusty Russell -- This code is GPL.
*/
#include <linux/netfilter.h>
/* Appletalk hooks */
#define NF_DDP_INPUT 0
#define NF_DDP_FORWARD 1
#define NF_DDP_OUTPUT 2
#endif /*__LINUX_DDP_NETFILTER_H*/
#ifndef __LINUX_IPX_NETFILTER_H
#define __LINUX_IPX_NETFILTER_H
/* IPX-specific defines for netfilter. Complete me sometime.
* (C)1998 Rusty Russell -- This code is GPL.
*/
#include <linux/netfilter.h>
/* IPX Hooks */
#define NF_IPX_INPUT 0
#define NF_IPX_FORWARD 1
#define NF_IPX_OUTPUT 2
#endif /*__LINUX_IPX_NETFILTER_H*/
#ifndef __LINUX_X25_NETFILTER_H
#define __LINUX_X25_NETFILTER_H
/* X25-specific defines for netfilter. Complete me sometime.
* (C)1998 Rusty Russell -- This code is GPL.
*/
#include <linux/netfilter.h>
/* Hooks */
#define NF_X25_INPUT 0
#define NF_X25_FORWARD 1
#define NF_X25_OUTPUT 2
#endif /*__LINUX_X25_NETFILTER_H*/
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment