diff options
| author | Martin Dalecki <dalecki@evision-ventures.com> | 2002-03-10 21:40:36 -0800 |
|---|---|---|
| committer | Linus Torvalds <torvalds@penguin.transmeta.com> | 2002-03-10 21:40:36 -0800 |
| commit | 9fbca83457a2b9926d1353d9b50d745a4733b8e3 (patch) | |
| tree | 6d7eec6777ddd9f0decba3292a1b41143a856523 /include/linux/ide.h | |
| parent | 4dabe948e0eba707a9f2c432698c7dce60b15b10 (diff) | |
[PATCH] 2.5.6 IDE 19
- Fix oversight in replacement of sti() cli() pairs for data structure
access protection. This finally resolvs my problems with the 2.5.6
kernel series. Now I'm in fact quite puzzled how it was even possible
for the system to get into the init stage without this fix..
- Fix usage of CONFIG_BLK_DEV_IDE_MODULES instead of
CONFIG_BLK_DEV_IDE_MODULE.
- Make idescsi_init global for usage in systems without module support
enabled.
- Apply Pavels Macheks patch for suspend support. Whatever some persons
argue that it's not fully implemented, I think that we are in
development series right now. I don't buy the mock-up examples for
problems with either outdated or broken hardware. Micro Drives are
for example expected to be drop in replacements for CF cards in
digital cameras and I would rather expect them to be very tolerant
about the driver in front of them. And then the WB caches of IDE
devices are not caches in the sense of a MESI cache, they are more
like buffer caches and should therefore flush them self after s short
period of inactivity without the application of any special flush
command. The upcoming explicit flushing commands in the ATA standard
are about data integrity guarantees in high reliability systems, like
DB servers for example, and not about simple cache validity.
- Apply Vojtech Pavliks fix to the VIA host chip initialization code.
- Add missing if-defs around PIO timing tables.
- Fix max() min() related compile warnings in IDE-scsi.
Diffstat (limited to 'include/linux/ide.h')
| -rw-r--r-- | include/linux/ide.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/include/linux/ide.h b/include/linux/ide.h index d0b5304f0d6b..6fe678abd65f 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h @@ -240,10 +240,6 @@ typedef struct hw_regs_s { } hw_regs_t; /* - * Register new hardware with ide - */ -extern int ide_register_hw(hw_regs_t *hw, struct hwif_s **hwifp); -/* * Set up hw_regs_t structure before calling ide_register_hw (optional) */ void ide_setup_ports(hw_regs_t *hw, @@ -336,6 +332,7 @@ typedef struct ide_drive_s { unsigned autotune : 2; /* 1=autotune, 2=noautotune, 0=default */ unsigned remap_0_to_1 : 2; /* 0=remap if ezdrive, 1=remap, 2=noremap */ unsigned ata_flash : 1; /* 1=present, 0=default */ + unsigned blocked : 1; /* 1=powermanagment told us not to do anything, so sleep nicely */ unsigned addressing; /* : 2; 0=28-bit, 1=48-bit, 2=64-bit */ byte scsi; /* 0=default, 1=skip current ide-subdriver for ide-scsi emulation */ select_t select; /* basic drive/head select reg value */ @@ -505,6 +502,10 @@ typedef struct hwif_s { struct device device; /* global device tree handle */ } ide_hwif_t; +/* + * Register new hardware with ide + */ +extern int ide_register_hw(hw_regs_t *hw, struct hwif_s **hwifp); extern void ide_unregister(ide_hwif_t *hwif); /* |
