From: Bartlomiej Zolnierkiewicz Date: Thu, 17 Apr 2008 22:46:21 +0000 (+0200) Subject: ide: fix ide_find_port() X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=2625cd52b6eafb63b72f2e53f933f41ba9e34dff;p=openwrt%2Fstaging%2Fblogic.git ide: fix ide_find_port() * Instead of checking for '->io_ports[IDE_DATA_OFFSET] == 0' check for '->chipset == ide_unknown' when looking for an empty ide_hwifs[] slot. * Do ide-pnp initialization after ide-generic when IDE is built-in (ide-pnp is the only user of ide_find_port() which needs such fixup). Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz --- diff --git a/drivers/ide/Makefile b/drivers/ide/Makefile index a4a4323be911..571544c37bb2 100644 --- a/drivers/ide/Makefile +++ b/drivers/ide/Makefile @@ -36,9 +36,9 @@ ifeq ($(CONFIG_BLK_DEV_CMD640), y) endif obj-$(CONFIG_BLK_DEV_IDE) += cris/ ppc/ -obj-$(CONFIG_BLK_DEV_IDEPNP) += ide-pnp.o obj-$(CONFIG_IDE_H8300) += h8300/ obj-$(CONFIG_IDE_GENERIC) += ide-generic.o +obj-$(CONFIG_BLK_DEV_IDEPNP) += ide-pnp.o ide-cd_mod-y += ide-cd.o ide-cd_ioctl.o ide-cd_verbose.o diff --git a/drivers/ide/ide.c b/drivers/ide/ide.c index 5f545153391a..67ce697a9d51 100644 --- a/drivers/ide/ide.c +++ b/drivers/ide/ide.c @@ -255,7 +255,7 @@ ide_hwif_t * ide_find_port(unsigned long base) for (i = 0; i < MAX_HWIFS; i++) { hwif = &ide_hwifs[i]; - if (hwif->io_ports[IDE_DATA_OFFSET] == 0) + if (hwif->chipset == ide_unknown) goto found; }