diff options
| author | Len Brown <len.brown@intel.com> | 2004-12-21 12:18:28 -0500 |
|---|---|---|
| committer | Len Brown <len.brown@intel.com> | 2004-12-21 12:18:28 -0500 |
| commit | 83d89b6a6e40344b2b95ac42bb72cc6411447917 (patch) | |
| tree | f86ba022e71e7f184d7e4e9665c0866ae0984fa3 /include | |
| parent | 677b19cac4e87d012455e876c254529c481ee96d (diff) | |
| parent | 641c3d820f4daa6f7ea81e84fb635b1c3f8b1106 (diff) | |
Merge intel.com:/home/lenb/src/26-latest-dev
into intel.com:/home/lenb/src/26-latest-hotplug
Diffstat (limited to 'include')
42 files changed, 190 insertions, 83 deletions
diff --git a/include/acpi/acconfig.h b/include/acpi/acconfig.h index 9949b1c51c22..87004b5d8e1f 100644 --- a/include/acpi/acconfig.h +++ b/include/acpi/acconfig.h @@ -64,7 +64,7 @@ /* Version string */ -#define ACPI_CA_VERSION 0x20041203 +#define ACPI_CA_VERSION 0x20041210 /* * OS name, used for the _OS object. The _OS object is essentially obsolete, @@ -99,7 +99,7 @@ /* Version of ACPI supported */ -#define ACPI_CA_SUPPORT_LEVEL 2 +#define ACPI_CA_SUPPORT_LEVEL 3 /* String size constants */ diff --git a/include/acpi/acdisasm.h b/include/acpi/acdisasm.h index 67f6c5cfd5c7..61e82679de6c 100644 --- a/include/acpi/acdisasm.h +++ b/include/acpi/acdisasm.h @@ -317,6 +317,12 @@ acpi_dm_dword_descriptor ( u32 level); void +acpi_dm_extended_descriptor ( + struct asl_extended_address_desc *resource, + u32 length, + u32 level); + +void acpi_dm_qword_descriptor ( struct asl_qword_address_desc *resource, u32 length, diff --git a/include/acpi/aclocal.h b/include/acpi/aclocal.h index da7dbb95a229..545a2b7bb4d9 100644 --- a/include/acpi/aclocal.h +++ b/include/acpi/aclocal.h @@ -862,7 +862,6 @@ struct acpi_bit_register_info /* * Large resource descriptor types */ - #define ACPI_RDESC_TYPE_MEMORY_24 0x81 #define ACPI_RDESC_TYPE_GENERAL_REGISTER 0x82 #define ACPI_RDESC_TYPE_LARGE_VENDOR 0x84 @@ -872,6 +871,7 @@ struct acpi_bit_register_info #define ACPI_RDESC_TYPE_WORD_ADDRESS_SPACE 0x88 #define ACPI_RDESC_TYPE_EXTENDED_XRUPT 0x89 #define ACPI_RDESC_TYPE_QWORD_ADDRESS_SPACE 0x8A +#define ACPI_RDESC_TYPE_EXTENDED_ADDRESS_SPACE 0x8B /***************************************************************************** diff --git a/include/acpi/actbl2.h b/include/acpi/actbl2.h index 44716e46ce6e..0793908812e8 100644 --- a/include/acpi/actbl2.h +++ b/include/acpi/actbl2.h @@ -115,7 +115,7 @@ struct acpi_generic_address u8 address_space_id; /* Address space where struct or register exists. */ u8 register_bit_width; /* Size in bits of given register */ u8 register_bit_offset; /* Bit offset within the register */ - u8 reserved; /* Must be 0 */ + u8 access_width; /* Minimum Access size (ACPI 3.0) */ u64 address; /* 64-bit address of struct or register */ }; diff --git a/include/acpi/amlresrc.h b/include/acpi/amlresrc.h index 89a52ddae530..c59098770ad1 100644 --- a/include/acpi/amlresrc.h +++ b/include/acpi/amlresrc.h @@ -50,6 +50,8 @@ #define ASL_RESNAME_ADDRESS "_ADR" #define ASL_RESNAME_ALIGNMENT "_ALN" #define ASL_RESNAME_ADDRESSSPACE "_ASI" +#define ASL_RESNAME_ACCESSSIZE "_ASZ" +#define ASL_RESNAME_TYPESPECIFICATTRIBUTES "_ATT" #define ASL_RESNAME_BASEADDRESS "_BAS" #define ASL_RESNAME_BUSMASTER "_BM_" /* Master(1), Slave(0) */ #define ASL_RESNAME_DECODE "_DEC" @@ -223,6 +225,27 @@ struct asl_fixed_memory_32_desc }; +struct asl_extended_address_desc +{ + u8 descriptor_type; + u16 length; + u8 resource_type; + u8 flags; + u8 specific_flags; + u8 revision_iD; + u8 reserved; + u64 granularity; + u64 address_min; + u64 address_max; + u64 translation_offset; + u64 address_length; + u64 type_specific_attributes; + u8 optional_fields[2]; /* Used for length calculation only */ +}; + +#define ASL_EXTENDED_ADDRESS_DESC_REVISION 1 /* ACPI 3.0 */ + + struct asl_qword_address_desc { u8 descriptor_type; @@ -289,7 +312,7 @@ struct asl_general_register_desc u8 address_space_id; u8 bit_width; u8 bit_offset; - u8 reserved; + u8 access_size; /* ACPI 3.0, was Reserved */ u64 address; }; @@ -317,6 +340,7 @@ union asl_resource_desc struct asl_qword_address_desc qas; struct asl_dword_address_desc das; struct asl_word_address_desc was; + struct asl_extended_address_desc eas; struct asl_extended_xrupt_desc exx; struct asl_general_register_desc grg; u32 u32_item; diff --git a/include/asm-arm/arch-ixp4xx/io.h b/include/asm-arm/arch-ixp4xx/io.h index ea9f8333d26d..c27b9d3079a7 100644 --- a/include/asm-arm/arch-ixp4xx/io.h +++ b/include/asm-arm/arch-ixp4xx/io.h @@ -292,7 +292,7 @@ __ixp4xx_outb(u8 value, u32 addr) } static inline void -__ixp4xx_outsb(u32 io_addr, u8 *vaddr, u32 count) +__ixp4xx_outsb(u32 io_addr, const u8 *vaddr, u32 count) { while (count--) outb(*vaddr++, io_addr); @@ -309,7 +309,7 @@ __ixp4xx_outw(u16 value, u32 addr) } static inline void -__ixp4xx_outsw(u32 io_addr, u16 *vaddr, u32 count) +__ixp4xx_outsw(u32 io_addr, const u16 *vaddr, u32 count) { while (count--) outw(cpu_to_le16(*vaddr++), io_addr); @@ -322,7 +322,7 @@ __ixp4xx_outl(u32 value, u32 addr) } static inline void -__ixp4xx_outsl(u32 io_addr, u32 *vaddr, u32 count) +__ixp4xx_outsl(u32 io_addr, const u32 *vaddr, u32 count) { while (count--) outl(*vaddr++, io_addr); diff --git a/include/asm-arm/arch-pxa/pxa-regs.h b/include/asm-arm/arch-pxa/pxa-regs.h index 1f36b66be63c..c43cafe17e19 100644 --- a/include/asm-arm/arch-pxa/pxa-regs.h +++ b/include/asm-arm/arch-pxa/pxa-regs.h @@ -1494,7 +1494,7 @@ #define PVCR_CommandDelay (0xf80) #define PCFR_PI2C_EN (0x1 << 6) -#define PSSR_OTGPH (1 << 7) /* OTG Peripheral control Hold */ +#define PSSR_OTGPH (1 << 6) /* OTG Peripheral control Hold */ #define PSSR_RDH (1 << 5) /* Read Disable Hold */ #define PSSR_PH (1 << 4) /* Peripheral Control Hold */ #define PSSR_VFS (1 << 2) /* VDD Fault Status */ diff --git a/include/asm-arm/arch-sa1100/ide.h b/include/asm-arm/arch-sa1100/ide.h index f63b96baa6b9..2153538069c7 100644 --- a/include/asm-arm/arch-sa1100/ide.h +++ b/include/asm-arm/arch-sa1100/ide.h @@ -14,6 +14,8 @@ #include <asm/hardware.h> #include <asm/mach-types.h> +#error "This code is broken and needs update to match with current ide support" + /* * Set up a hw structure for a specified data port, control port and IRQ. diff --git a/include/asm-arm/arch-versatile/platform.h b/include/asm-arm/arch-versatile/platform.h index bc75b3ca0e67..2598d1f08548 100644 --- a/include/asm-arm/arch-versatile/platform.h +++ b/include/asm-arm/arch-versatile/platform.h @@ -61,7 +61,7 @@ #define VERSATILE_SYS_OSC2_OFFSET 0x14 #define VERSATILE_SYS_OSC3_OFFSET 0x18 #define VERSATILE_SYS_OSC4_OFFSET 0x1C -#elif defined(CONFIG_ARCH_VERSATILE_AB) +#elif defined(CONFIG_MACH_VERSATILE_AB) #define VERSATILE_SYS_OSC1_OFFSET 0x1C #endif @@ -494,7 +494,7 @@ #define VERSATILE_CSR_BASE 0x10000000 #define VERSATILE_CSR_SIZE 0x10000000 -#ifdef CONFIG_ARCH_VERSATILE_AB +#ifdef CONFIG_MACH_VERSATILE_AB /* * IB2 Versatile/AB expansion board definitions */ diff --git a/include/asm-arm/ide.h b/include/asm-arm/ide.h index cf9b1b35f8e7..2114acb3d237 100644 --- a/include/asm-arm/ide.h +++ b/include/asm-arm/ide.h @@ -17,10 +17,6 @@ #define MAX_HWIFS 4 #endif -#if defined(CONFIG_ARCH_SA1100) -# include <asm/arch/ide.h> /* obsolete + broken */ -#endif - #if !defined(CONFIG_ARCH_L7200) # define IDE_ARCH_OBSOLETE_INIT # ifdef CONFIG_ARCH_CLPS7500 diff --git a/include/asm-arm/mach/irda.h b/include/asm-arm/mach/irda.h new file mode 100644 index 000000000000..58984d9c0b0b --- /dev/null +++ b/include/asm-arm/mach/irda.h @@ -0,0 +1,20 @@ +/* + * linux/include/asm-arm/mach/irda.h + * + * Copyright (C) 2004 Russell King. + * + * 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. + */ +#ifndef __ASM_ARM_MACH_IRDA_H +#define __ASM_ARM_MACH_IRDA_H + +struct irda_platform_data { + int (*startup)(struct device *); + void (*shutdown)(struct device *); + int (*set_power)(struct device *, unsigned int state); + void (*set_speed)(struct device *, unsigned int speed); +}; + +#endif diff --git a/include/asm-arm/mach/map.h b/include/asm-arm/mach/map.h index 2a75545a2d04..0dbac30ed127 100644 --- a/include/asm-arm/mach/map.h +++ b/include/asm-arm/mach/map.h @@ -21,9 +21,10 @@ struct meminfo; #define MT_DEVICE 0 #define MT_CACHECLEAN 1 #define MT_MINICLEAN 2 -#define MT_VECTORS 3 -#define MT_MEMORY 4 -#define MT_ROM 5 +#define MT_LOW_VECTORS 3 +#define MT_HIGH_VECTORS 4 +#define MT_MEMORY 5 +#define MT_ROM 6 extern void create_memmap_holes(struct meminfo *); extern void memtable_init(struct meminfo *); diff --git a/include/asm-arm/system.h b/include/asm-arm/system.h index 53cd8d3a08f2..77d0dcf0b713 100644 --- a/include/asm-arm/system.h +++ b/include/asm-arm/system.h @@ -128,9 +128,9 @@ extern unsigned long cr_alignment; /* defined in entry-armv.S */ extern unsigned int user_debug; #if __LINUX_ARM_ARCH__ >= 4 -#define vectors_base() ((cr_alignment & CR_V) ? 0xffff0000 : 0) +#define vectors_high() (cr_alignment & CR_V) #else -#define vectors_base() (0) +#define vectors_high() (0) #endif #define mb() __asm__ __volatile__ ("" : : : "memory") diff --git a/include/asm-i386/acpi.h b/include/asm-i386/acpi.h index 9e5d4c8a21fa..a4ab82cb2b72 100644 --- a/include/asm-i386/acpi.h +++ b/include/asm-i386/acpi.h @@ -104,12 +104,6 @@ __acpi_release_global_lock (unsigned int *lock) /* * Refer Intel ACPI _PDC support document for bit definitions */ -#define ACPI_PDC_EST_CAPABILITY_SMP 0xa -#define ACPI_PDC_EST_CAPABILITY_MSR 0x1 - -/* - * Refer Intel ACPI _PDC support document for bit definitions - */ #define ACPI_PDC_EST_CAPABILITY_SMP 0xa #define ACPI_PDC_EST_CAPABILITY_MSR 0x1 diff --git a/include/asm-i386/io.h b/include/asm-i386/io.h index 7b27cf130b1a..479e976ed86c 100644 --- a/include/asm-i386/io.h +++ b/include/asm-i386/io.h @@ -184,7 +184,7 @@ static inline void memset_io(volatile void __iomem *addr, unsigned char val, int { memset((void __force *) addr, val, count); } -static inline void memcpy_fromio(void *dst, volatile void __iomem *src, int count) +static inline void memcpy_fromio(void *dst, const volatile void __iomem *src, int count) { __memcpy(dst, (void __force *) src, count); } diff --git a/include/asm-ia64/delay.h b/include/asm-ia64/delay.h index aa627cfd88f5..57182d6f2b9a 100644 --- a/include/asm-ia64/delay.h +++ b/include/asm-ia64/delay.h @@ -91,7 +91,7 @@ udelay (unsigned long usecs) unsigned long cycles = usecs*local_cpu_data->cyc_per_usec; while (ia64_get_itc() - start < cycles) - /* skip */; + cpu_relax(); } #endif /* _ASM_IA64_DELAY_H */ diff --git a/include/asm-ppc64/paca.h b/include/asm-ppc64/paca.h index 71de51ac951f..53ee1a758baa 100644 --- a/include/asm-ppc64/paca.h +++ b/include/asm-ppc64/paca.h @@ -99,11 +99,17 @@ struct paca_struct { u64 exdsi[8]; /* used for linear mapping hash table misses */ /* - * iSeries structues which the hypervisor knows about - Not - * sure if these particularly need to be cacheline aligned. + * iSeries structure which the hypervisor knows about - + * this structure should not cross a page boundary. + * The vpa_init/register_vpa call is now known to fail if the + * lppaca structure crosses a page boundary. * The lppaca is also used on POWER5 pSeries boxes. + * The lppaca is 640 bytes long, and cannot readily change + * since the hypervisor knows its layout, so a 1kB + * alignment will suffice to ensure that it doesn't + * cross a page boundary. */ - struct ItLpPaca lppaca __attribute__((aligned(0x80))); + struct ItLpPaca lppaca __attribute__((__aligned__(0x400))); #ifdef CONFIG_PPC_ISERIES struct ItLpRegSave reg_save; #endif diff --git a/include/asm-ppc64/plpar_wrappers.h b/include/asm-ppc64/plpar_wrappers.h index 17452d372024..f4a5fb7d67c7 100644 --- a/include/asm-ppc64/plpar_wrappers.h +++ b/include/asm-ppc64/plpar_wrappers.h @@ -22,12 +22,14 @@ static inline long cede_processor(void) return(0); } -static inline long register_vpa(unsigned long flags, unsigned long proc, unsigned long vpa) +static inline long register_vpa(unsigned long flags, unsigned long proc, + unsigned long vpa) { - plpar_hcall_norets(H_REGISTER_VPA, flags, proc, vpa); - return(0); + return plpar_hcall_norets(H_REGISTER_VPA, flags, proc, vpa); } +void vpa_init(int cpu); + static inline long plpar_pte_remove(unsigned long flags, unsigned long ptex, unsigned long avpn, diff --git a/include/asm-ppc64/ptrace-common.h b/include/asm-ppc64/ptrace-common.h index 3dbd3e5847b3..af03547f9c7e 100644 --- a/include/asm-ppc64/ptrace-common.h +++ b/include/asm-ppc64/ptrace-common.h @@ -58,6 +58,7 @@ static inline void set_single_step(struct task_struct *task) struct pt_regs *regs = task->thread.regs; if (regs != NULL) regs->msr |= MSR_SE; + set_ti_thread_flag(task->thread_info, TIF_SINGLESTEP); } static inline void clear_single_step(struct task_struct *task) @@ -65,6 +66,7 @@ static inline void clear_single_step(struct task_struct *task) struct pt_regs *regs = task->thread.regs; if (regs != NULL) regs->msr &= ~MSR_SE; + clear_ti_thread_flag(task->thread_info, TIF_SINGLESTEP); } #endif /* _PPC64_PTRACE_COMMON_H */ diff --git a/include/asm-ppc64/thread_info.h b/include/asm-ppc64/thread_info.h index 6a8a4c4c334d..595d67ef4b6f 100644 --- a/include/asm-ppc64/thread_info.h +++ b/include/asm-ppc64/thread_info.h @@ -97,6 +97,7 @@ static inline struct thread_info *current_thread_info(void) #define TIF_RUN_LIGHT 6 /* iSeries run light */ #define TIF_ABI_PENDING 7 /* 32/64 bit switch needed */ #define TIF_SYSCALL_AUDIT 8 /* syscall auditing active */ +#define TIF_SINGLESTEP 9 /* singlestepping active */ /* as above, but as bit values */ #define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE) @@ -108,6 +109,7 @@ static inline struct thread_info *current_thread_info(void) #define _TIF_RUN_LIGHT (1<<TIF_RUN_LIGHT) #define _TIF_ABI_PENDING (1<<TIF_ABI_PENDING) #define _TIF_SYSCALL_AUDIT (1<<TIF_SYSCALL_AUDIT) +#define _TIF_SINGLESTEP (1<<TIF_SINGLESTEP) #define _TIF_SYSCALL_T_OR_A (_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT) #define _TIF_USER_WORK_MASK (_TIF_NOTIFY_RESUME | _TIF_SIGPENDING | \ diff --git a/include/asm-sparc/elf.h b/include/asm-sparc/elf.h index 2b2a5195004f..d17864207d07 100644 --- a/include/asm-sparc/elf.h +++ b/include/asm-sparc/elf.h @@ -143,7 +143,7 @@ typedef struct { the loader. We need to make sure that it is out of the way of the program that it will "exec", and that there is sufficient room for the brk. */ -#define ELF_ET_DYN_BASE (0x08000000) +#define ELF_ET_DYN_BASE (TASK_UNMAPPED_BASE) /* This yields a mask that user programs can use to figure out what instruction set this cpu supports. This can NOT be done in userspace diff --git a/include/asm-sparc/mostek.h b/include/asm-sparc/mostek.h index f88760d9e1df..c6022a5d611d 100644 --- a/include/asm-sparc/mostek.h +++ b/include/asm-sparc/mostek.h @@ -11,6 +11,7 @@ #include <linux/config.h> #include <asm/idprom.h> +#include <asm/io.h> /* M48T02 Register Map (adapted from Sun NVRAM/Hostid FAQ) * diff --git a/include/asm-sparc/processor.h b/include/asm-sparc/processor.h index 371a105056f3..83feef80c494 100644 --- a/include/asm-sparc/processor.h +++ b/include/asm-sparc/processor.h @@ -43,10 +43,12 @@ struct task_struct; +#ifdef __KERNEL__ struct fpq { unsigned long *insn_addr; unsigned long insn; }; +#endif typedef struct { int seg; diff --git a/include/asm-sparc/sigcontext.h b/include/asm-sparc/sigcontext.h index 86dc000ad681..7fa2c7d01ab4 100644 --- a/include/asm-sparc/sigcontext.h +++ b/include/asm-sparc/sigcontext.h @@ -4,7 +4,6 @@ #ifdef __KERNEL__ #include <asm/ptrace.h> -#endif #ifndef __ASSEMBLY__ @@ -59,4 +58,6 @@ typedef struct { #endif /* !(__ASSEMBLY__) */ +#endif /* (__KERNEL__) */ + #endif /* !(__SPARC_SIGCONTEXT_H) */ diff --git a/include/asm-sparc/signal.h b/include/asm-sparc/signal.h index 98aade6c4616..d8211cb6e6b4 100644 --- a/include/asm-sparc/signal.h +++ b/include/asm-sparc/signal.h @@ -3,6 +3,7 @@ #define _ASMSPARC_SIGNAL_H #include <asm/sigcontext.h> +#include <linux/compiler.h> #ifdef __KERNEL__ #ifndef __ASSEMBLY__ @@ -111,11 +112,14 @@ typedef struct { unsigned long sig[_NSIG_WORDS]; } __new_sigset_t; + +#ifdef __KERNEL__ /* A SunOS sigstack */ struct sigstack { char *the_stack; int cur_status; }; +#endif /* Sigvec flags */ #define _SV_SSTACK 1u /* This signal handler should use sig-stack */ @@ -189,6 +193,7 @@ typedef void (*__sighandler_t)(int); #define SIG_IGN ((__sighandler_t)1) /* ignore signal */ #define SIG_ERR ((__sighandler_t)-1) /* error return from signal */ +#ifdef __KERNEL__ struct __new_sigaction { __sighandler_t sa_handler; unsigned long sa_flags; @@ -196,12 +201,10 @@ struct __new_sigaction { __new_sigset_t sa_mask; }; -#ifdef __KERNEL__ struct k_sigaction { struct __new_sigaction sa; void __user *ka_restorer; }; -#endif struct __old_sigaction { __sighandler_t sa_handler; @@ -216,7 +219,6 @@ typedef struct sigaltstack { size_t ss_size; } stack_t; -#ifdef __KERNEL__ struct sparc_deliver_cookie { int restart_syscall; unsigned long orig_i0; diff --git a/include/linux/dvb/frontend.h b/include/linux/dvb/frontend.h index d0300dcff0af..fd0bc530dda8 100644 --- a/include/linux/dvb/frontend.h +++ b/include/linux/dvb/frontend.h @@ -62,7 +62,7 @@ typedef enum fe_caps { FE_CAN_HIERARCHY_AUTO = 0x100000, FE_CAN_8VSB = 0x200000, FE_CAN_16VSB = 0x400000, - FE_NEEDS_BENDING = 0x20000000, // frontend requires frequency bending + FE_NEEDS_BENDING = 0x20000000, // not supported anymore, don't use (frontend requires frequency bending) FE_CAN_RECOVER = 0x40000000, // frontend can recover from a cable unplug automatically FE_CAN_MUTE_TS = 0x80000000 // frontend can stop spurious TS data output } fe_caps_t; @@ -78,7 +78,7 @@ struct dvb_frontend_info { __u32 symbol_rate_min; __u32 symbol_rate_max; __u32 symbol_rate_tolerance; /* ppm */ - __u32 notifier_delay; /* ms */ + __u32 notifier_delay; /* DEPRECATED */ fe_caps_t caps; }; diff --git a/include/linux/filter.h b/include/linux/filter.h index 17218abef8f1..3ba843c46382 100644 --- a/include/linux/filter.h +++ b/include/linux/filter.h @@ -8,7 +8,9 @@ #include <linux/compiler.h> #include <linux/types.h> +#ifdef __KERNEL__ #include <asm/atomic.h> +#endif /* * Current version of the filter code architecture. diff --git a/include/linux/hdreg.h b/include/linux/hdreg.h index c94de12a5ee1..b5d660089de4 100644 --- a/include/linux/hdreg.h +++ b/include/linux/hdreg.h @@ -1,6 +1,7 @@ #ifndef _LINUX_HDREG_H #define _LINUX_HDREG_H +#ifdef __KERNEL__ #include <linux/ata.h> /* @@ -57,7 +58,7 @@ #define IO 0x02 #define REL 0x04 #define TAG_MASK 0xf8 - +#endif /* __KERNEL__ */ /* * Command Header sizes for IOCTL commands diff --git a/include/linux/i2o.h b/include/linux/i2o.h index 777a80f9f4a3..229bb91364ad 100644 --- a/include/linux/i2o.h +++ b/include/linux/i2o.h @@ -976,7 +976,7 @@ extern void i2o_debug_state(struct i2o_controller *c); #define I2O_TIMEOUT_MESSAGE_GET 5 #define I2O_TIMEOUT_RESET 30 #define I2O_TIMEOUT_STATUS_GET 5 -#define I2O_TIMEOUT_LCT_GET 20 +#define I2O_TIMEOUT_LCT_GET 360 #define I2O_TIMEOUT_SCSI_SCB_ABORT 240 /* retries */ diff --git a/include/linux/libata.h b/include/linux/libata.h index 605e0a728c0e..95a7b0ddb096 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h @@ -112,6 +112,7 @@ enum { ATA_FLAG_SRST = (1 << 5), /* use ATA SRST, not E.D.D. */ ATA_FLAG_MMIO = (1 << 6), /* use MMIO, not PIO */ ATA_FLAG_SATA_RESET = (1 << 7), /* use COMRESET */ + ATA_FLAG_PIO_DMA = (1 << 8), /* PIO cmds via DMA */ ATA_QCFLAG_ACTIVE = (1 << 1), /* cmd not yet ack'd to scsi lyer */ ATA_QCFLAG_SG = (1 << 3), /* have s/g table? */ diff --git a/include/linux/netfilter_ipv4/ip_conntrack_tcp.h b/include/linux/netfilter_ipv4/ip_conntrack_tcp.h index 0ab4590a0b16..61dad5790198 100644 --- a/include/linux/netfilter_ipv4/ip_conntrack_tcp.h +++ b/include/linux/netfilter_ipv4/ip_conntrack_tcp.h @@ -18,7 +18,7 @@ enum tcp_conntrack { }; /* Window scaling is advertised by the sender */ -#define IP_CT_TCP_STATE_FLAG_WINDOW_SCALE 0x01 +#define IP_CT_TCP_FLAG_WINDOW_SCALE 0x01 /* SACK is permitted by the sender */ #define IP_CT_TCP_FLAG_SACK_PERM 0x02 diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index f1946ad646e4..affb193a43e6 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h @@ -344,6 +344,7 @@ #define PCI_DEVICE_ID_ATI_RS300_200 0x5833 /* ATI IXP Chipset */ #define PCI_DEVICE_ID_ATI_IXP_IDE 0x4349 +#define PCI_DEVICE_ID_ATI_IXP2_IDE 0x4369 /* True name not yet sure */ #define PCI_VENDOR_ID_VLSI 0x1004 #define PCI_DEVICE_ID_VLSI_82C592 0x0005 @@ -1029,6 +1030,7 @@ #define PCI_DEVICE_ID_AL_M3307 0x3307 #define PCI_DEVICE_ID_AL_M4803 0x5215 #define PCI_DEVICE_ID_AL_M5219 0x5219 +#define PCI_DEVICE_ID_AL_M5228 0x5228 #define PCI_DEVICE_ID_AL_M5229 0x5229 #define PCI_DEVICE_ID_AL_M5237 0x5237 #define PCI_DEVICE_ID_AL_M5243 0x5243 diff --git a/include/linux/socket.h b/include/linux/socket.h index b3aef7bf1380..4c7d11301abf 100644 --- a/include/linux/socket.h +++ b/include/linux/socket.h @@ -90,6 +90,10 @@ struct cmsghdr { (struct cmsghdr *)(ctl) : \ (struct cmsghdr *)NULL) #define CMSG_FIRSTHDR(msg) __CMSG_FIRSTHDR((msg)->msg_control, (msg)->msg_controllen) +#define CMSG_OK(mhdr, cmsg) ((cmsg)->cmsg_len >= sizeof(struct cmsghdr) && \ + (cmsg)->cmsg_len <= (unsigned long) \ + ((mhdr)->msg_controllen - \ + ((char *)(cmsg) - (char *)(mhdr)->msg_control))) /* * This mess will go away with glibc diff --git a/include/linux/types.h b/include/linux/types.h index 893c4b367bae..dcb13f865df9 100644 --- a/include/linux/types.h +++ b/include/linux/types.h @@ -157,8 +157,10 @@ typedef __u16 __bitwise __le16; typedef __u16 __bitwise __be16; typedef __u32 __bitwise __le32; typedef __u32 __bitwise __be32; +#if defined(__GNUC__) && !defined(__STRICT_ANSI__) typedef __u64 __bitwise __le64; typedef __u64 __bitwise __be64; +#endif struct ustat { __kernel_daddr_t f_tfree; diff --git a/include/linux/usb_sl811.h b/include/linux/usb_sl811.h new file mode 100644 index 000000000000..4f2d012d7309 --- /dev/null +++ b/include/linux/usb_sl811.h @@ -0,0 +1,26 @@ + +/* + * board initialization should put one of these into dev->platform_data + * and place the sl811hs onto platform_bus named "sl811-hcd". + */ + +struct sl811_platform_data { + unsigned can_wakeup:1; + + /* given port_power, msec/2 after power on till power good */ + u8 potpg; + + /* mA/2 power supplied on this port (max = default = 250) */ + u8 power; + + /* sl811 relies on an external source of VBUS current */ + void (*port_power)(struct device *dev, int is_on); + + /* pulse sl811 nRST (probably with a GPIO) */ + void (*reset)(struct device *dev); + + // some boards need something like these: + // int (*check_overcurrent)(struct device *dev); + // void (*clock_enable)(struct device *dev, int is_on); +}; + diff --git a/include/linux/wait.h b/include/linux/wait.h index 8b3a2b86d92a..ddb0a16f31c9 100644 --- a/include/linux/wait.h +++ b/include/linux/wait.h @@ -326,8 +326,8 @@ int wake_bit_function(wait_queue_t *wait, unsigned mode, int sync, void *key); wait_queue_t name = { \ .task = current, \ .func = autoremove_wake_function, \ - .task_list = { .next = &name.task_list, \ - .prev = &name.task_list, \ + .task_list = { .next = &(name).task_list, \ + .prev = &(name).task_list, \ }, \ } @@ -338,15 +338,15 @@ int wake_bit_function(wait_queue_t *wait, unsigned mode, int sync, void *key); .task = current, \ .func = wake_bit_function, \ .task_list = \ - LIST_HEAD_INIT(name.wait.task_list), \ + LIST_HEAD_INIT((name).wait.task_list), \ }, \ } #define init_wait(wait) \ do { \ - wait->task = current; \ - wait->func = autoremove_wake_function; \ - INIT_LIST_HEAD(&wait->task_list); \ + (wait)->task = current; \ + (wait)->func = autoremove_wake_function; \ + INIT_LIST_HEAD(&(wait)->task_list); \ } while (0) /** diff --git a/include/media/saa7146.h b/include/media/saa7146.h index 815964d52dd2..171dbb682a0e 100644 --- a/include/media/saa7146.h +++ b/include/media/saa7146.h @@ -51,10 +51,12 @@ extern unsigned int saa7146_debug; #define DEB_INT(x) if (0!=(DEBUG_VARIABLE&0x20)) { DEBUG_PROLOG; printk x; } /* interrupt debug messages */ #define DEB_CAP(x) if (0!=(DEBUG_VARIABLE&0x40)) { DEBUG_PROLOG; printk x; } /* capture debug messages */ -#define IER_DISABLE(x,y) \ +#define SAA7146_IER_DISABLE(x,y) \ saa7146_write(x, IER, saa7146_read(x, IER) & ~(y)); -#define IER_ENABLE(x,y) \ +#define SAA7146_IER_ENABLE(x,y) \ saa7146_write(x, IER, saa7146_read(x, IER) | (y)); +#define SAA7146_ISR_CLEAR(x,y) \ + saa7146_write(x, ISR, (y)); struct saa7146_dev; struct saa7146_extension; @@ -168,7 +170,7 @@ void saa7146_pgtable_free(struct pci_dev *pci, struct saa7146_pgtable *pt); int saa7146_pgtable_build_single(struct pci_dev *pci, struct saa7146_pgtable *pt, struct scatterlist *list, int length ); char *saa7146_vmalloc_build_pgtable(struct pci_dev *pci, long length, struct saa7146_pgtable *pt); void saa7146_setgpio(struct saa7146_dev *dev, int port, u32 data); -int saa7146_wait_for_debi_done(struct saa7146_dev *dev); +int saa7146_wait_for_debi_done(struct saa7146_dev *dev, int nobusyloop); /* some memory sizes */ #define SAA7146_I2C_MEM ( 1*PAGE_SIZE) diff --git a/include/media/saa7146_vv.h b/include/media/saa7146_vv.h index 61a509eb1bc6..eddf16aa3e8e 100644 --- a/include/media/saa7146_vv.h +++ b/include/media/saa7146_vv.h @@ -219,8 +219,6 @@ extern struct saa7146_use_ops saa7146_vbi_uops; /* resource management functions */ int saa7146_res_get(struct saa7146_fh *fh, unsigned int bit); -int saa7146_res_check(struct saa7146_fh *fh, unsigned int bit); -int saa7146_res_locked(struct saa7146_dev *dev, unsigned int bit); void saa7146_res_free(struct saa7146_fh *fh, unsigned int bits); #define RESOURCE_DMA1_HPS 0x1 diff --git a/include/net/act_api.h b/include/net/act_api.h index ea9c442c1a55..749637e1694d 100644 --- a/include/net/act_api.h +++ b/include/net/act_api.h @@ -8,15 +8,23 @@ #include <net/sch_generic.h> #include <net/pkt_sched.h> +#define tca_gen(name) \ +struct tcf_##name *next; \ + u32 index; \ + int refcnt; \ + int bindcnt; \ + u32 capab; \ + int action; \ + struct tcf_t tm; \ + struct gnet_stats_basic bstats; \ + struct gnet_stats_queue qstats; \ + struct gnet_stats_rate_est rate_est; \ + spinlock_t *stats_lock; \ + spinlock_t lock + struct tcf_police { - struct tcf_police *next; - int refcnt; -#ifdef CONFIG_NET_CLS_ACT - int bindcnt; -#endif - u32 index; - int action; + tca_gen(police); int result; u32 ewma_rate; u32 burst; @@ -24,33 +32,14 @@ struct tcf_police u32 toks; u32 ptoks; psched_time_t t_c; - spinlock_t lock; struct qdisc_rate_table *R_tab; struct qdisc_rate_table *P_tab; - - struct gnet_stats_basic bstats; - struct gnet_stats_queue qstats; - struct gnet_stats_rate_est rate_est; - spinlock_t *stats_lock; }; #ifdef CONFIG_NET_CLS_ACT #define ACT_P_CREATED 1 #define ACT_P_DELETED 1 -#define tca_gen(name) \ -struct tcf_##name *next; \ - u32 index; \ - int refcnt; \ - int bindcnt; \ - u32 capab; \ - int action; \ - struct tcf_t tm; \ - struct gnet_stats_basic bstats; \ - struct gnet_stats_queue qstats; \ - struct gnet_stats_rate_est rate_est; \ - spinlock_t *stats_lock; \ - spinlock_t lock struct tcf_act_hdr { diff --git a/include/net/bluetooth/hci_core.h b/include/net/bluetooth/hci_core.h index 16dec2fe1762..fe5cc98511ba 100644 --- a/include/net/bluetooth/hci_core.h +++ b/include/net/bluetooth/hci_core.h @@ -38,10 +38,20 @@ extern struct proc_dir_entry *proc_bt_hci; /* HCI Core structures */ +struct inquiry_data { + bdaddr_t bdaddr; + __u8 pscan_rep_mode; + __u8 pscan_period_mode; + __u8 pscan_mode; + __u8 dev_class[3]; + __u16 clock_offset; + __s8 rssi; +}; + struct inquiry_entry { struct inquiry_entry *next; __u32 timestamp; - struct inquiry_info info; + struct inquiry_data data; }; struct inquiry_cache { @@ -142,6 +152,7 @@ struct hci_conn { __u16 state; __u8 type; __u8 out; + __u8 dev_class[3]; __u32 link_mode; unsigned long pend; @@ -199,7 +210,7 @@ static inline long inquiry_entry_age(struct inquiry_entry *e) } struct inquiry_entry *hci_inquiry_cache_lookup(struct hci_dev *hdev, bdaddr_t *bdaddr); -void hci_inquiry_cache_update(struct hci_dev *hdev, struct inquiry_info *info); +void hci_inquiry_cache_update(struct hci_dev *hdev, struct inquiry_data *data); /* ----- HCI Connections ----- */ enum { diff --git a/include/net/ip_vs.h b/include/net/ip_vs.h index 4c441ef94d93..7fee4c0b2353 100644 --- a/include/net/ip_vs.h +++ b/include/net/ip_vs.h @@ -358,6 +358,7 @@ enum { NET_IPV4_VS_EXPIRE_NODEST_CONN=23, NET_IPV4_VS_SYNC_THRESHOLD=24, NET_IPV4_VS_NAT_ICMP_SEND=25, + NET_IPV4_VS_EXPIRE_QUIESCENT_TEMPLATE=26, NET_IPV4_VS_LAST }; @@ -879,6 +880,7 @@ extern int ip_vs_leave(struct ip_vs_service *svc, struct sk_buff *skb, */ extern int sysctl_ip_vs_cache_bypass; extern int sysctl_ip_vs_expire_nodest_conn; +extern int sysctl_ip_vs_expire_quiescent_template; extern int sysctl_ip_vs_sync_threshold[2]; extern int sysctl_ip_vs_nat_icmp_send; extern struct ip_vs_stats ip_vs_stats; diff --git a/include/net/pkt_sched.h b/include/net/pkt_sched.h index 2ad20e79a4a3..87496e3aa330 100644 --- a/include/net/pkt_sched.h +++ b/include/net/pkt_sched.h @@ -228,6 +228,12 @@ extern void qdisc_put_rtab(struct qdisc_rate_table *tab); extern int qdisc_restart(struct net_device *dev); +static inline void qdisc_run(struct net_device *dev) +{ + while (!netif_queue_stopped(dev) && qdisc_restart(dev) < 0) + /* NOTHING */; +} + extern int tc_classify(struct sk_buff *skb, struct tcf_proto *tp, struct tcf_result *res); |
