diff options
| author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-01-18 19:02:02 -0800 |
|---|---|---|
| committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-01-18 19:02:02 -0800 |
| commit | 171b1609f1ecdbbab1cd2390cbe9d24dc817f54d (patch) | |
| tree | dab7a9ed701afd03362a7f6db47be38cea3b8209 /include | |
| parent | 9790ee6f6a30db6b9fd4f27e437b87fa8e511cdd (diff) | |
| parent | f21ec4092851e6d7939d7c2a49ac94947840f789 (diff) | |
Merge http://lia64.bkbits.net/linux-ia64-release-2.6.11
into ppc970.osdl.org:/home/torvalds/v2.6/linux
Diffstat (limited to 'include')
| -rw-r--r-- | include/asm-arm/arch-pxa/pxa-regs.h | 7 | ||||
| -rw-r--r-- | include/asm-arm/arch-s3c2410/dma.h | 8 | ||||
| -rw-r--r-- | include/asm-arm/arch-s3c2410/regs-iis.h | 14 | ||||
| -rw-r--r-- | include/asm-arm/arch-s3c2410/vr1000-map.h | 8 | ||||
| -rw-r--r-- | include/linux/genhd.h | 6 | ||||
| -rw-r--r-- | include/linux/if_tun.h | 2 | ||||
| -rw-r--r-- | include/linux/pci_ids.h | 2 | ||||
| -rw-r--r-- | include/linux/pcieport_if.h | 74 |
8 files changed, 110 insertions, 11 deletions
diff --git a/include/asm-arm/arch-pxa/pxa-regs.h b/include/asm-arm/arch-pxa/pxa-regs.h index 34a4cce6f5cf..e201bdc157fc 100644 --- a/include/asm-arm/arch-pxa/pxa-regs.h +++ b/include/asm-arm/arch-pxa/pxa-regs.h @@ -1210,6 +1210,7 @@ #define GPIO30_SDATA_OUT 30 /* AC97/I2S Sdata_out */ #define GPIO31_SYNC 31 /* AC97/I2S sync */ #define GPIO32_SDATA_IN1 32 /* AC97 Sdata_in1 */ +#define GPIO32_SYSCLK 32 /* I2S System Clock */ #define GPIO32_MMCCLK 32 /* MMC Clock (PXA270) */ #define GPIO33_nCS_5 33 /* chip select 5 */ #define GPIO34_FFRXD 34 /* FFUART receive */ @@ -1327,14 +1328,16 @@ #define GPIO26_SRXD_MD (26 | GPIO_ALT_FN_1_IN) #define GPIO27_SEXTCLK_MD (27 | GPIO_ALT_FN_1_IN) #define GPIO28_BITCLK_AC97_MD (28 | GPIO_ALT_FN_1_IN) -#define GPIO28_BITCLK_I2S_MD (28 | GPIO_ALT_FN_2_IN) +#define GPIO28_BITCLK_IN_I2S_MD (28 | GPIO_ALT_FN_2_IN) +#define GPIO28_BITCLK_OUT_I2S_MD (28 | GPIO_ALT_FN_1_OUT) #define GPIO29_SDATA_IN_AC97_MD (29 | GPIO_ALT_FN_1_IN) #define GPIO29_SDATA_IN_I2S_MD (29 | GPIO_ALT_FN_2_IN) #define GPIO30_SDATA_OUT_AC97_MD (30 | GPIO_ALT_FN_2_OUT) #define GPIO30_SDATA_OUT_I2S_MD (30 | GPIO_ALT_FN_1_OUT) -#define GPIO31_SYNC_AC97_MD (31 | GPIO_ALT_FN_2_OUT) #define GPIO31_SYNC_I2S_MD (31 | GPIO_ALT_FN_1_OUT) +#define GPIO31_SYNC_AC97_MD (31 | GPIO_ALT_FN_2_OUT) #define GPIO32_SDATA_IN1_AC97_MD (32 | GPIO_ALT_FN_1_IN) +#define GPIO32_SYSCLK_I2S_MD (32 | GPIO_ALT_FN_1_OUT) #define GPIO32_MMCCLK_MD ( 32 | GPIO_ALT_FN_2_OUT) #define GPIO33_nCS_5_MD (33 | GPIO_ALT_FN_2_OUT) #define GPIO34_FFRXD_MD (34 | GPIO_ALT_FN_1_IN) diff --git a/include/asm-arm/arch-s3c2410/dma.h b/include/asm-arm/arch-s3c2410/dma.h index c1019ef3d72b..e830a40e573a 100644 --- a/include/asm-arm/arch-s3c2410/dma.h +++ b/include/asm-arm/arch-s3c2410/dma.h @@ -285,6 +285,14 @@ extern int s3c2410_dma_config(dmach_t channel, int xferunit, int dcon); extern int s3c2410_dma_devconfig(int channel, s3c2410_dmasrc_t source, int hwcfg, unsigned long devaddr); +/* s3c2410_dma_getposition + * + * get the position that the dma transfer is currently at +*/ + +extern int s3c2410_dma_getposition(dmach_t channel, + dma_addr_t *src, dma_addr_t *dest); + extern int s3c2410_dma_set_opfn(dmach_t, s3c2410_dma_opfn_t rtn); extern int s3c2410_dma_set_buffdone_fn(dmach_t, s3c2410_dma_cbfn_t rtn); diff --git a/include/asm-arm/arch-s3c2410/regs-iis.h b/include/asm-arm/arch-s3c2410/regs-iis.h index 75a7f3797072..a3fde605f5c8 100644 --- a/include/asm-arm/arch-s3c2410/regs-iis.h +++ b/include/asm-arm/arch-s3c2410/regs-iis.h @@ -18,7 +18,7 @@ #ifndef __ASM_ARCH_REGS_IIS_H #define __ASM_ARCH_REGS_IIS_H -#define S3C2410_IISCON (S3C2410_VA_IIS + 0x00) +#define S3C2410_IISCON (0x00) #define S3C2410_IISCON_LRINDEX (1<<8) #define S3C2410_IISCON_TXFIFORDY (1<<7) @@ -29,7 +29,7 @@ #define S3C2410_IISCON_RXIDLE (1<<2) #define S3C2410_IISCON_IISEN (1<<0) -#define S3C2410_IISMOD (S3C2410_VA_IIS + 0x04) +#define S3C2410_IISMOD (0x04) #define S3C2410_IISMOD_SLAVE (1<<8) #define S3C2410_IISMOD_NOXFER (0<<6) @@ -48,16 +48,20 @@ #define S3C2410_IISMOD_32FS (1<<0) #define S3C2410_IISMOD_48FS (2<<0) -#define S3C2410_IISPSR (S3C2410_VA_IIS + 0x08) +#define S3C2410_IISPSR (0x08) +#define S3C2410_IISPSR_INTMASK (31<<5) +#define S3C2410_IISPSR_INTSHFIT (5) +#define S3C2410_IISPSR_EXTMASK (31<<0) +#define S3C2410_IISPSR_EXTSHFIT (0) -#define S3C2410_IISFCON (S3C2410_VA_IIS + 0x0c) +#define S3C2410_IISFCON (0x0c) #define S3C2410_IISFCON_TXDMA (1<<15) #define S3C2410_IISFCON_RXDMA (1<<14) #define S3C2410_IISFCON_TXENABLE (1<<13) #define S3C2410_IISFCON_RXENABLE (1<<12) -#define S3C2410_IISFIFO (S3C2410_VA_IIS + 0x10) +#define S3C2410_IISFIFO (0x10) #endif /* __ASM_ARCH_REGS_IIS_H */ diff --git a/include/asm-arm/arch-s3c2410/vr1000-map.h b/include/asm-arm/arch-s3c2410/vr1000-map.h index 6ee283d11a96..867c9355fd39 100644 --- a/include/asm-arm/arch-s3c2410/vr1000-map.h +++ b/include/asm-arm/arch-s3c2410/vr1000-map.h @@ -1,6 +1,6 @@ /* linux/include/asm-arm/arch-s3c2410/vr1000-map.h * - * (c) 2003,2004 Simtec Electronics + * (c) 2003-2005 Simtec Electronics * Ben Dooks <ben@simtec.co.uk> * * Machine VR1000 - Memory map definitions @@ -13,6 +13,7 @@ * 06-Jan-2003 BJD Linux 2.6.0 version, split specifics from arch/map.h * 12-Mar-2004 BJD Fixed header include protection * 19-Mar-2004 BJD Copied to VR1000 machine headers. + * 19-Jan-2005 BJD Updated map definitions */ /* needs arch/map.h including with this */ @@ -94,7 +95,6 @@ #define VR1000_VA_DM9000 (VR1000_VA_MULTISPACE + 0x02500000) #define VR1000_VA_SUPERIO (VR1000_VA_MULTISPACE + 0x02600000) - /* physical offset addresses for the peripherals */ #define VR1000_PA_IDEPRI (0x02000000) @@ -104,6 +104,10 @@ #define VR1000_PA_DM9000 (0x05000000) #define VR1000_PA_SERIAL (0x11800000) +#define VR1000_VA_SERIAL (VR1000_IOADDR(0x00700000)) + +/* VR1000 ram is in CS1, with A26..A24 = 2_101 */ +#define VR1000_PA_SRAM (S3C2410_CS1 | 0x05000000) /* some configurations for the peripherals */ diff --git a/include/linux/genhd.h b/include/linux/genhd.h index fc15d63f9947..47dedaf971d6 100644 --- a/include/linux/genhd.h +++ b/include/linux/genhd.h @@ -128,6 +128,12 @@ struct gendisk { #endif }; +/* Structure for sysfs attributes on block devices */ +struct disk_attribute { + struct attribute attr; + ssize_t (*show)(struct gendisk *, char *); +}; + /* * Macros to operate on percpu disk statistics: * diff --git a/include/linux/if_tun.h b/include/linux/if_tun.h index 386e1f91a1e1..096a85a58ae5 100644 --- a/include/linux/if_tun.h +++ b/include/linux/if_tun.h @@ -58,7 +58,7 @@ struct tun_struct { #endif /* __KERNEL__ */ /* Read queue size */ -#define TUN_READQ_SIZE 10 +#define TUN_READQ_SIZE 500 /* TUN device flags */ #define TUN_TUN_DEV 0x0001 diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index 9f6d4812646a..710135a0567a 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h @@ -2246,7 +2246,7 @@ #define PCI_DEVICE_ID_INTEL_ICH6_17 0x266d #define PCI_DEVICE_ID_INTEL_ICH6_18 0x266e #define PCI_DEVICE_ID_INTEL_ICH6_19 0x266f -#define PCI_DEVICE_ID_INTEL_ICH7_0 0x27b0 +#define PCI_DEVICE_ID_INTEL_ICH7_0 0x27b8 #define PCI_DEVICE_ID_INTEL_ICH7_1 0x27b1 #define PCI_DEVICE_ID_INTEL_ICH7_2 0x27c0 #define PCI_DEVICE_ID_INTEL_ICH7_3 0x27c1 diff --git a/include/linux/pcieport_if.h b/include/linux/pcieport_if.h new file mode 100644 index 000000000000..cd3eafc2c233 --- /dev/null +++ b/include/linux/pcieport_if.h @@ -0,0 +1,74 @@ +/* + * File: pcieport_if.h + * Purpose: PCI Express Port Bus Driver's IF Data Structure + * + * Copyright (C) 2004 Intel + * Copyright (C) Tom Long Nguyen (tom.l.nguyen@intel.com) + */ + +#ifndef _PCIEPORT_IF_H_ +#define _PCIEPORT_IF_H_ + +/* Port Type */ +#define PCIE_RC_PORT 4 /* Root port of RC */ +#define PCIE_SW_UPSTREAM_PORT 5 /* Upstream port of Switch */ +#define PCIE_SW_DOWNSTREAM_PORT 6 /* Downstream port of Switch */ +#define PCIE_ANY_PORT 7 + +/* Service Type */ +#define PCIE_PORT_SERVICE_PME 1 /* Power Management Event */ +#define PCIE_PORT_SERVICE_AER 2 /* Advanced Error Reporting */ +#define PCIE_PORT_SERVICE_HP 4 /* Native Hotplug */ +#define PCIE_PORT_SERVICE_VC 8 /* Virtual Channel */ + +/* Root/Upstream/Downstream Port's Interrupt Mode */ +#define PCIE_PORT_INTx_MODE 0 +#define PCIE_PORT_MSI_MODE 1 +#define PCIE_PORT_MSIX_MODE 2 + +struct pcie_port_service_id { + __u32 vendor, device; /* Vendor and device ID or PCI_ANY_ID*/ + __u32 subvendor, subdevice; /* Subsystem ID's or PCI_ANY_ID */ + __u32 class, class_mask; /* (class,subclass,prog-if) triplet */ + __u32 port_type, service_type; /* Port Entity */ + kernel_ulong_t driver_data; +}; + +struct pcie_device { + int irq; /* Service IRQ/MSI/MSI-X Vector */ + int interrupt_mode; /* [0:INTx | 1:MSI | 2:MSI-X] */ + struct pcie_port_service_id id; /* Service ID */ + struct pci_dev *port; /* Root/Upstream/Downstream Port */ + void *priv_data; /* Service Private Data */ + struct device device; /* Generic Device Interface */ +}; +#define to_pcie_device(d) container_of(d, struct pcie_device, device) + +static inline void set_service_data(struct pcie_device *dev, void *data) +{ + dev->priv_data = data; +} + +static inline void* get_service_data(struct pcie_device *dev) +{ + return dev->priv_data; +} + +struct pcie_port_service_driver { + const char *name; + int (*probe) (struct pcie_device *dev, + const struct pcie_port_service_id *id); + void (*remove) (struct pcie_device *dev); + int (*suspend) (struct pcie_device *dev, u32 state); + int (*resume) (struct pcie_device *dev); + + const struct pcie_port_service_id *id_table; + struct device_driver driver; +}; +#define to_service_driver(d) \ + container_of(d, struct pcie_port_service_driver, driver) + +extern int pcie_port_service_register(struct pcie_port_service_driver *new); +extern void pcie_port_service_unregister(struct pcie_port_service_driver *new); + +#endif /* _PCIEPORT_IF_H_ */ |
