aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2008-04-17 18:46:21 -0400
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2008-04-17 18:46:21 -0400
commit2625cd52b6eafb63b72f2e53f933f41ba9e34dff (patch)
tree1d104d623465a7c566dfa886ef1a77d43bb17970 /drivers
parentce9b248bb451134fcb41e189e83e3838fb57caf0 (diff)
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 <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/ide/Makefile2
-rw-r--r--drivers/ide/ide.c2
2 files changed, 2 insertions, 2 deletions
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)
36endif 36endif
37 37
38obj-$(CONFIG_BLK_DEV_IDE) += cris/ ppc/ 38obj-$(CONFIG_BLK_DEV_IDE) += cris/ ppc/
39obj-$(CONFIG_BLK_DEV_IDEPNP) += ide-pnp.o
40obj-$(CONFIG_IDE_H8300) += h8300/ 39obj-$(CONFIG_IDE_H8300) += h8300/
41obj-$(CONFIG_IDE_GENERIC) += ide-generic.o 40obj-$(CONFIG_IDE_GENERIC) += ide-generic.o
41obj-$(CONFIG_BLK_DEV_IDEPNP) += ide-pnp.o
42 42
43ide-cd_mod-y += ide-cd.o ide-cd_ioctl.o ide-cd_verbose.o 43ide-cd_mod-y += ide-cd.o ide-cd_ioctl.o ide-cd_verbose.o
44 44
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)
255 255
256 for (i = 0; i < MAX_HWIFS; i++) { 256 for (i = 0; i < MAX_HWIFS; i++) {
257 hwif = &ide_hwifs[i]; 257 hwif = &ide_hwifs[i];
258 if (hwif->io_ports[IDE_DATA_OFFSET] == 0) 258 if (hwif->chipset == ide_unknown)
259 goto found; 259 goto found;
260 } 260 }
261 261