IDE fixes
Subsystems (3)
PATCH 1/1 IDE fixes
Hi,
- ide-generic post-2.6.25 regression bugfix
(thanks to bugreport from Mikael Pettersson)
- ide-cs fixes (including post-2.6.25 regression bugfix)
- ide-pmac fixes (including post-2.6.25 regression bugfix)
- opti621 fixes (including 2.6.25 regression bugfix)
opti621 changes outstand in the diffstat and they are on the border of being too much for -rc but since they were all tested on the real hardware (thanks to Juergen Kosel) and they match behavior of Alan's pata_opti621 they should be safe.
BTW 2.6.26 cycle was a bit rougher than usual when it comes to IDE (due to nature of changes that went in and hitting few corner-cases which slipped through audit + -mm/-next testing) but it should be all good now and back to the norm in 2.6.27 cycle.
Linus, please pull from:
master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6.git/
to receive the following updates:
drivers/ide/ide-generic.c | 9 ++- drivers/ide/legacy/ide-cs.c | 41 ++++---- drivers/ide/pci/opti621.c | 221 ++++++++---------------------------------- drivers/ide/ppc/pmac.c | 60 ++++++------ drivers/macintosh/mediabay.c | 3 +- 5 files changed, 101 insertions(+), 233 deletions(-)
Bartlomiej Zolnierkiewicz (12):
opti621: disable read prefetch
opti621: remove DMA support
opti621: use PCI clock value provided by controller
opti621: program devices timings separately in ->set_pio_mode
opti621: use pre-calculated PIO timings
opti621: add PIO 4 support
ide-pmac: bugfix for media-bay support rework
ide-pmac: add ->cable_detect method
ide-pmac: remove bogus comment about pmac_ide_setup_device()
ide-cs: fix probing and add warm-plug support
ide-cs: fix releasing I/O resources
ide-generic: don't probe all legacy ISA IDE ports by default
drivers/ide/ide-generic.c +8 -1
@@ -22,6 +22,10 @@#define DRV_NAME "ide_generic" +static int probe_mask =0x03 ; +module_param (probe_mask, int,0 ); +MODULE_PARM_DESC (probe_mask,"probe mask for legacy ISA IDE ports" ); +static ssize_t store_add (struct class *cls,const char *buf,size_t n) {ide_hwif_t *hwif;
@@ -89,6 +93,9 @@ static int __init ide_generic_init(void)u8 idx[MAX_HWIFS ];int i; + printk(KERN_INFO DRV_NAME ": please use \"probe_mask=0x3f\" module " + "parameter for probing all legacy ISA IDE ports\n"); +for (i =0 ; i <MAX_HWIFS ; i++) {ide_hwif_t *hwif;unsigned long io_addr =ide_default_io_base (i);
@@ -96,7 +103,7 @@ static int __init ide_generic_init(void) idx[i] =0xff ; -if (io_addr) { +if ((probe_mask & (1 << i)) && io_addr) {if (!request_region (io_addr,8 ,DRV_NAME )) { printk(KERN_ERR "%s: I/O resource 0x%lX-0x%lX " "not free.\n",
drivers/ide/legacy/ide-cs.c +20 -21
76 lines not on this page · raw message
drivers/ide/pci/opti621.c +39 -182
278 lines not on this page · raw message
drivers/ide/ppc/pmac.c +32 -28
112 lines not on this page · raw message
drivers/macintosh/mediabay.c +2 -1
@@ -556,7 +556,8 @@ static void media_bay_step(int i)printk ("mediabay %d, registering IDE...\n" , i);pmu_suspend ();ide_port_scan (bay->cd_port); - bay->cd_index = bay->cd_port->index; +if (bay->cd_port->present) + bay->cd_index = bay->cd_port->index;pmu_resume (); }if (bay->cd_index ==-1 ) {
Quoted 4 lines · Bartlomiej Zolnierkiewicz
Linus, please pull from:
master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6.git/
That repo seems incomplete.
It *looks* like it has all the new objects, but its objects/info/alternates is corrupt:
[torvalds@hera ide-2.6.git]$ cat objects/info/alternates /home/dump/git/linux-2.6.git/.git/objects
and there is no such thing as "/home/dump/git/linux-2.6.git/"
So you seem to have screwed up the alternates file (you probably have something like that alternates file on your own machine?), and then rsync'ed it to master.kernel.org or something like that?
Linus
Quoted 8 lines · Linus Torvalds
It *looks* like it has all the new objects, but its objects/info/alternates is corrupt:
[torvalds@hera ide-2.6.git]$ cat objects/info/alternates /home/dump/git/linux-2.6.git/.git/objectsand there is no such thing as "
/home/dump/git/linux-2.6.git/"
Ok, I did the pull by just copying the objects to a local repo, and setting the alternates file correctly. So it worked this time, but please double-check your alternates next time,
Linus
Quoted 6 lines · Linus Torvalds
Quoted 4 lines · Linus Torvalds
It *looks* like it has all the new objects, but its objects/info/alternates is corrupt:
Quoted 8 lines
Quoted 4 lines
[torvalds@hera ide-2.6.git]$ cat objects/info/alternates /home/dump/git/linux-2.6.git/.git/objectsand there is no such thing as "
/home/dump/git/linux-2.6.git/"Ok, I did the pull by just copying the objects to a local repo, and setting the alternates file correctly. So it worked this time, but please double-check your alternates next time,
Thanks, and sorry for troubles.
Bart