Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
* 'for-linus' of git://git.kernel.dk/linux-2.6-block: Revert "unexport bio_{,un}map_user" relay: fix subbuf_splice_actor() adding too many pages The ps2esdi driver was marked as BROKEN more than two years ago due to being
This commit is contained in:
commit
92f53c6f1e
8 changed files with 10 additions and 1203 deletions
|
@ -143,14 +143,7 @@ MCA Device Drivers
|
|||
|
||||
Currently, there are a number of MCA-specific device drivers.
|
||||
|
||||
1) PS/2 ESDI
|
||||
drivers/block/ps2esdi.c
|
||||
include/linux/ps2esdi.h
|
||||
Uses major number 36, and should use /dev files /dev/eda, /dev/edb.
|
||||
Supports two drives, but only one controller. May use the
|
||||
command-line args "ed=cyl,head,sec" and "tp720".
|
||||
|
||||
2) PS/2 SCSI
|
||||
1) PS/2 SCSI
|
||||
drivers/scsi/ibmmca.c
|
||||
drivers/scsi/ibmmca.h
|
||||
The driver for the IBM SCSI subsystem. Includes both integrated
|
||||
|
@ -159,25 +152,25 @@ Currently, there are a number of MCA-specific device drivers.
|
|||
machine with a front-panel display (i.e. model 95), you can use
|
||||
"ibmmcascsi=display" to enable a drive activity indicator.
|
||||
|
||||
3) 3c523
|
||||
2) 3c523
|
||||
drivers/net/3c523.c
|
||||
drivers/net/3c523.h
|
||||
3Com 3c523 Etherlink/MC ethernet driver.
|
||||
|
||||
4) SMC Ultra/MCA and IBM Adapter/A
|
||||
3) SMC Ultra/MCA and IBM Adapter/A
|
||||
drivers/net/smc-mca.c
|
||||
drivers/net/smc-mca.h
|
||||
Driver for the MCA version of the SMC Ultra and various other
|
||||
OEM'ed and work-alike cards (Elite, Adapter/A, etc).
|
||||
|
||||
5) NE/2
|
||||
4) NE/2
|
||||
driver/net/ne2.c
|
||||
driver/net/ne2.h
|
||||
The NE/2 is the MCA version of the NE2000. This may not work
|
||||
with clones that have a different adapter id than the original
|
||||
NE/2.
|
||||
|
||||
6) Future Domain MCS-600/700, OEM'd IBM Fast SCSI Adapter/A and
|
||||
5) Future Domain MCS-600/700, OEM'd IBM Fast SCSI Adapter/A and
|
||||
Reply Sound Blaster/SCSI (SCSI part)
|
||||
Better support for these cards than the driver for ISA.
|
||||
Supports multiple cards with IRQ sharing.
|
||||
|
|
|
@ -44,16 +44,6 @@ config MAC_FLOPPY
|
|||
If you have a SWIM-3 (Super Woz Integrated Machine 3; from Apple)
|
||||
floppy controller, say Y here. Most commonly found in PowerMacs.
|
||||
|
||||
config BLK_DEV_PS2
|
||||
tristate "PS/2 ESDI hard disk support"
|
||||
depends on MCA && MCA_LEGACY && BROKEN
|
||||
help
|
||||
Say Y here if you have a PS/2 machine with a MCA bus and an ESDI
|
||||
hard disk.
|
||||
|
||||
To compile this driver as a module, choose M here: the
|
||||
module will be called ps2esdi.
|
||||
|
||||
config AMIGA_Z2RAM
|
||||
tristate "Amiga Zorro II ramdisk support"
|
||||
depends on ZORRO
|
||||
|
|
|
@ -13,7 +13,6 @@ obj-$(CONFIG_ATARI_FLOPPY) += ataflop.o
|
|||
obj-$(CONFIG_AMIGA_Z2RAM) += z2ram.o
|
||||
obj-$(CONFIG_BLK_DEV_RAM) += brd.o
|
||||
obj-$(CONFIG_BLK_DEV_LOOP) += loop.o
|
||||
obj-$(CONFIG_BLK_DEV_PS2) += ps2esdi.o
|
||||
obj-$(CONFIG_BLK_DEV_XD) += xd.o
|
||||
obj-$(CONFIG_BLK_CPQ_DA) += cpqarray.o
|
||||
obj-$(CONFIG_BLK_CPQ_CISS_DA) += cciss.o
|
||||
|
|
File diff suppressed because it is too large
Load diff
2
fs/bio.c
2
fs/bio.c
|
@ -1194,6 +1194,8 @@ EXPORT_SYMBOL(bio_hw_segments);
|
|||
EXPORT_SYMBOL(bio_add_page);
|
||||
EXPORT_SYMBOL(bio_add_pc_page);
|
||||
EXPORT_SYMBOL(bio_get_nr_vecs);
|
||||
EXPORT_SYMBOL(bio_map_user);
|
||||
EXPORT_SYMBOL(bio_unmap_user);
|
||||
EXPORT_SYMBOL(bio_map_kern);
|
||||
EXPORT_SYMBOL(bio_pair_release);
|
||||
EXPORT_SYMBOL(bio_split);
|
||||
|
|
|
@ -127,7 +127,6 @@ header-y += pkt_sched.h
|
|||
header-y += posix_types.h
|
||||
header-y += ppdev.h
|
||||
header-y += prctl.h
|
||||
header-y += ps2esdi.h
|
||||
header-y += qnxtypes.h
|
||||
header-y += quotaio_v1.h
|
||||
header-y += quotaio_v2.h
|
||||
|
|
|
@ -1,98 +0,0 @@
|
|||
#ifndef _PS2ESDI_H_
|
||||
#define _PS2ESDI_H_
|
||||
|
||||
#define NRML_ESDI_ID 0xddff
|
||||
#define INTG_ESDI_ID 0xdf9f
|
||||
|
||||
#define PRIMARY_IO_BASE 0x3510
|
||||
#define ALT_IO_BASE 0x3518
|
||||
|
||||
#define ESDI_CMD_INT (io_base+0)
|
||||
#define ESDI_STT_INT (io_base+0)
|
||||
#define ESDI_CONTROL (io_base+2)
|
||||
#define ESDI_STATUS (io_base+2)
|
||||
#define ESDI_ATTN (io_base+3)
|
||||
#define ESDI_INTRPT (io_base+3)
|
||||
|
||||
#define STATUS_ENABLED 0x01
|
||||
#define STATUS_ALTERNATE 0x02
|
||||
#define STATUS_BUSY 0x10
|
||||
#define STATUS_STAT_AVAIL 0x08
|
||||
#define STATUS_INTR 0x01
|
||||
#define STATUS_RESET_FAIL 0xea
|
||||
#define STATUS_CMD_INF 0x04
|
||||
|
||||
#define CTRL_SOFT_RESET 0xe4
|
||||
#define CTRL_HARD_RESET 0x80
|
||||
#define CTRL_EOI 0xe2
|
||||
#define CTRL_ENABLE_DMA 0x02
|
||||
#define CTRL_ENABLE_INTR 0x01
|
||||
#define CTRL_DISABLE_INTR 0x00
|
||||
|
||||
#define ATT_EOI 0x02
|
||||
|
||||
/* bits of word 0 of configuration status block. more info see p.38 of tech ref */
|
||||
#define CONFIG_IS 0x10 /* Invalid Secondary */
|
||||
#define CONFIG_ZD 0x08 /* Zero Defect */
|
||||
#define CONFIG_SF 0x04 /* Skewed Format */
|
||||
#define CONFIG_FR 0x02 /* Removable */
|
||||
#define CONFIG_RT 0x01 /* Retries */
|
||||
|
||||
#define PORT_SYS_A 0x92
|
||||
#define PORT_DMA_FN 0x18
|
||||
#define PORT_DMA_EX 0x1a
|
||||
|
||||
#define ON (unsigned char)0x40
|
||||
#define OFF (unsigned char)~ON
|
||||
#define LITE_ON outb(inb(PORT_SYS_A) | ON,PORT_SYS_A)
|
||||
#define LITE_OFF outb((inb(PORT_SYS_A) & OFF),PORT_SYS_A)
|
||||
|
||||
#define FAIL 0
|
||||
#define SUCCES 1
|
||||
|
||||
#define INT_CMD_COMPLETE 0x01
|
||||
#define INT_CMD_ECC 0x03
|
||||
#define INT_CMD_RETRY 0x05
|
||||
#define INT_CMD_FORMAT 0x06
|
||||
#define INT_CMD_ECC_RETRY 0x07
|
||||
#define INT_CMD_WARNING 0x08
|
||||
#define INT_CMD_ABORT 0x09
|
||||
#define INT_RESET 0x0A
|
||||
#define INT_TRANSFER_REQ 0x0B
|
||||
#define INT_CMD_FAILED 0x0C
|
||||
#define INT_DMA_ERR 0x0D
|
||||
#define INT_CMD_BLK_ERR 0x0E
|
||||
#define INT_ATTN_ERROR 0x0F
|
||||
|
||||
#define DMA_MASK_CHAN 0x90
|
||||
#define DMA_UNMASK_CHAN 0xA0
|
||||
#define DMA_WRITE_ADDR 0x20
|
||||
#define DMA_WRITE_TC 0x40
|
||||
#define DMA_WRITE_MODE 0x70
|
||||
|
||||
#define CMD_GET_DEV_CONFIG 0x09
|
||||
#define CMD_READ 0x4601
|
||||
#define CMD_WRITE 0x4602
|
||||
#define DMA_READ_16 0x4C
|
||||
#define DMA_WRITE_16 0x44
|
||||
|
||||
|
||||
#define MB 1024*1024
|
||||
#define SECT_SIZE 512
|
||||
|
||||
#define ERROR 1
|
||||
#define OK 0
|
||||
|
||||
#define HDIO_GETGEO 0x0301
|
||||
|
||||
#define FALSE 0
|
||||
#define TRUE !FALSE
|
||||
|
||||
struct ps2esdi_geometry {
|
||||
unsigned char heads;
|
||||
unsigned char sectors;
|
||||
unsigned short cylinders;
|
||||
unsigned long start;
|
||||
};
|
||||
|
||||
#endif /* _PS2ESDI_H_ */
|
|
@ -1066,7 +1066,7 @@ static int subbuf_splice_actor(struct file *in,
|
|||
unsigned int flags,
|
||||
int *nonpad_ret)
|
||||
{
|
||||
unsigned int pidx, poff, total_len, subbuf_pages, ret;
|
||||
unsigned int pidx, poff, total_len, subbuf_pages, nr_pages, ret;
|
||||
struct rchan_buf *rbuf = in->private_data;
|
||||
unsigned int subbuf_size = rbuf->chan->subbuf_size;
|
||||
uint64_t pos = (uint64_t) *ppos;
|
||||
|
@ -1097,8 +1097,9 @@ static int subbuf_splice_actor(struct file *in,
|
|||
subbuf_pages = rbuf->chan->alloc_size >> PAGE_SHIFT;
|
||||
pidx = (read_start / PAGE_SIZE) % subbuf_pages;
|
||||
poff = read_start & ~PAGE_MASK;
|
||||
nr_pages = min_t(unsigned int, subbuf_pages, PIPE_BUFFERS);
|
||||
|
||||
for (total_len = 0; spd.nr_pages < subbuf_pages; spd.nr_pages++) {
|
||||
for (total_len = 0; spd.nr_pages < nr_pages; spd.nr_pages++) {
|
||||
unsigned int this_len, this_end, private;
|
||||
unsigned int cur_pos = read_start + total_len;
|
||||
|
||||
|
|
Loading…
Reference in a new issue