diff options
| author | Martin Dalecki <dalecki@evision-ventures.com> | 2002-06-02 02:41:38 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@home.transmeta.com> | 2002-06-02 02:41:38 -0700 |
| commit | 8b4e98ea6d0e2cf0be06c1efd68da378e90ace27 (patch) | |
| tree | bfc7d930ebc0cbfdd64e6b7e64c58aba0b7ce06b /drivers/ide/ide-disk.c | |
| parent | 78a6728c4db0c6c37feeceb28296c21bd5e5f3d4 (diff) | |
[PATCH] 2.5.19 IDE 78
- Move ide_fixstring() from ide.c to probe.c, since this is the place, where it's
most used.
- Remove GET_STAT() - it's not used any longer.
- Remove last parameter of ide_error. Rename it to ata_error().
- Don't use ide_fixstring in qd65xx.c host chip driver. The model name is
already fixed in probe.c.
- Invent ata_irq_enable() for the handling of the trice nIEN bit of the
control register. Consistently use ch->intrproc method every time we toggle
this bit. This simply wasn't the case before!
- Disable interrupts on a previous channel only when we share them indeed.
- Eliminate simple drive command handling function drive_cmd.
- Simplify the ioctl handler. Move it to ioctl, since that's the only place
where it's actually used.
Diffstat (limited to 'drivers/ide/ide-disk.c')
| -rw-r--r-- | drivers/ide/ide-disk.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/ide/ide-disk.c b/drivers/ide/ide-disk.c index 20db7a78fec9..19578f2f96de 100644 --- a/drivers/ide/ide-disk.c +++ b/drivers/ide/ide-disk.c @@ -257,14 +257,15 @@ static ide_startstop_t lba48_do_request(struct ata_device *drive, struct request args.taskfile.sector_number = block; /* low lba */ args.taskfile.low_cylinder = (block >>= 8); /* mid lba */ args.taskfile.high_cylinder = (block >>= 8); /* hi lba */ + args.taskfile.device_head = drive->select.all; args.hobfile.sector_number = (block >>= 8); /* low lba */ args.hobfile.low_cylinder = (block >>= 8); /* mid lba */ args.hobfile.high_cylinder = (block >>= 8); /* hi lba */ + args.hobfile.device_head = drive->select.all; + + args.hobfile.control = 0x80; - args.taskfile.device_head = drive->select.all; - args.hobfile.device_head = args.taskfile.device_head; - args.hobfile.control = (drive->ctl|0x80); args.taskfile.command = get_command(drive, rq_data_dir(rq)); #ifdef DEBUG @@ -727,7 +728,7 @@ static u64 set_max_address_ext(struct ata_device *drive, u64 addr_req) args.hobfile.high_cylinder = (addr_req >>= 8); args.hobfile.device_head = 0x40; - args.hobfile.control = (drive->ctl | 0x80); + args.hobfile.control = 0x80; args.handler = task_no_data_intr; /* submit command request */ |
