Skip to contentSkip to conversation

IDE fixes (updated)

GIT PULL Bartlomiej Zolnierkiewicz 1 participant 1 message Apr 23, 2009

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

The pull request from yesterday updated with more palm_bk3710 bug fixes from David Brownell and a little CodingStyle fixup (noticed by Joe Perches).

I also updated MAINTAINERS file to reflect conversion of the IDE tree from quilt to git (done based on a popular demand :).

Linus, please pull from 'for-linus' branch of:

master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6.git for-linus

to receive the following updates:

 MAINTAINERS                  |    2 +-
 drivers/ide/ide-cd.c         |    2 +-
 drivers/ide/ide-gd.c         |   17 +++++++-
 drivers/ide/palm_bk3710.c    |   93 +++++++++++++----------------------------
 drivers/macintosh/mediabay.c |    1 -
 5 files changed, 48 insertions(+), 67 deletions(-)

Bartlomiej Zolnierkiewicz (3):
mediabay: fix build for CONFIG_BLOCK=n
palm_bk3710: palm_bk3710_udmatimings[] CodingStyle fixup
MAINTAINERS: update IDE entry

Bruno Prémont (1):
ide: Stop disks on reboot for laptop which cuts power

David Brownell (2):
palm_bk3710: UDMA performance fix
palm_bk3710: those registers/bitfields don't exist

Helge Deller (1):
ide-cd: fix kernel crash on hppa regression

MAINTAINERS +1 -1
index 0beac8a..2431b05 100644
@@ -2743,7 +2743,7 @@ IDE SUBSYSTEM
 P:	Bartlomiej Zolnierkiewicz
 M:	[email protected]
 L:	[email protected]
-T:	quilt kernel.org/pub/linux/kernel/people/bart/pata-2.6/
+T:	git git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6.git
 S:	Maintained
 F:	Documentation/ide/
 F:	drivers/ide/
drivers/ide/ide-cd.c +1 -1
index 3aec19d..3d4e099 100644
@@ -609,7 +609,7 @@ static ide_startstop_t cdrom_newpc_intr(ide_drive_t *drive)
 	struct request *rq = hwif->rq;
 	ide_expiry_t *expiry = NULL;
 	int dma_error = 0, dma, thislen, uptodate = 0;
-	int write = (rq_data_dir(rq) == WRITE) ? 1 : 0, rc, nsectors;
+	int write = (rq_data_dir(rq) == WRITE) ? 1 : 0, rc = 0, nsectors;
 	int sense = blk_sense_request(rq);
 	unsigned int timeout;
 	u16 len;
drivers/ide/ide-gd.c +16 -1
index 1aebdf1..4b6b71e 100644
@@ -7,6 +7,7 @@
 #include <linux/mutex.h>
 #include <linux/ide.h>
 #include <linux/hdreg.h>
+#include <linux/dmi.h>
 
 #if !defined(CONFIG_DEBUG_BLOCK_EXT_DEVT)
 #define IDE_DISK_MINORS		(1 << PARTN_BITS)
@@ -99,6 +100,19 @@ static void ide_gd_resume(ide_drive_t *drive)
 		(void)drive->disk_ops->get_capacity(drive);
 }
 
+static const struct dmi_system_id ide_coldreboot_table[] = {
+	{
+		/* Acer TravelMate 66x cuts power during reboot */
+		.ident   = "Acer TravelMate 660",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "Acer"),
+			DMI_MATCH(DMI_PRODUCT_NAME, "TravelMate 660"),
+		},
+	},
+
+	{ }	/* terminate list */
+};
+
 static void ide_gd_shutdown(ide_drive_t *drive)
 {
 #ifdef	CONFIG_ALPHA
@@ -115,7 +129,8 @@ static void ide_gd_shutdown(ide_drive_t *drive)
 	   the disk to expire its write cache. */
 	if (system_state != SYSTEM_POWER_OFF) {
 #else
-	if (system_state == SYSTEM_RESTART) {
+	if (system_state == SYSTEM_RESTART &&
+		!dmi_check_system(ide_coldreboot_table)) {
 #endif
 		drive->disk_ops->flush(drive);
 		return;
drivers/ide/palm_bk3710.c +30 -63

177 lines not on this page · raw message

drivers/macintosh/mediabay.c +0 -1
index d7e46d3..eca55ef 100644
@@ -18,7 +18,6 @@
 #include <linux/timer.h>
 #include <linux/stddef.h>
 #include <linux/init.h>
-#include <linux/ide.h>
 #include <linux/kthread.h>
 #include <linux/mutex.h>
 #include <asm/prom.h>