diff -Nur rtems-4.6.99.2.orig/c/src/lib/libbsp/i386/pc386/configure.ac rtems-4.6.99.2/c/src/lib/libbsp/i386/pc386/configure.ac
--- rtems-4.6.99.2.orig/c/src/lib/libbsp/i386/pc386/configure.ac	2004-09-24 08:32:08.000000000 +0200
+++ rtems-4.6.99.2/c/src/lib/libbsp/i386/pc386/configure.ac	2005-09-15 08:33:56.408452232 +0200
@@ -18,6 +18,22 @@
 
 RTEMS_CHECK_NETWORKING
 
+RTEMS_BSPOPTS_SET([IDE_USE_PRIMARY_INTERFACE],[*],[1])
+RTEMS_BSPOPTS_HELP([IDE_USE_PRIMARY_INTERFACE],
+[Determines, whether RTEMS will try to use the primary IDE interface. 
+ Disable it, if:
+ - you have no primary IDE interface 
+ - or you have no disk attached to this interface  
+ - or you do not want to access disks attached to this interface])
+
+RTEMS_BSPOPTS_SET([IDE_USE_SECONDARY_INTERFACE],[*],[0])
+RTEMS_BSPOPTS_HELP([IDE_USE_SECONDARY_INTERFACE],
+[Determines, whether RTEMS will try to use the primary IDE interface. 
+ Enable it, if:
+ - you have a secondary IDE interface 
+ - and you have at least one disk attached to this interface  
+ - and you do want to access disks attached to this interface])
+
 ## if this is an i386, does gas have good code16 support?
 RTEMS_I386_GAS_CODE16
 AM_CONDITIONAL(RTEMS_GAS_CODE16,[test "$RTEMS_GAS_CODE16" = "yes"])
diff -Nur rtems-4.6.99.2.orig/c/src/lib/libbsp/i386/pc386/ide/idecfg.c rtems-4.6.99.2/c/src/lib/libbsp/i386/pc386/ide/idecfg.c
--- rtems-4.6.99.2.orig/c/src/lib/libbsp/i386/pc386/ide/idecfg.c	2004-04-21 18:01:33.000000000 +0200
+++ rtems-4.6.99.2/c/src/lib/libbsp/i386/pc386/ide/idecfg.c	2005-09-15 08:49:55.072713112 +0200
@@ -35,7 +35,8 @@
 
 /* IDE controllers Table */
 ide_controller_bsp_table_t IDE_Controller_Table[] = {
-  {"/dev/ide",
+#if IDE_USE_PRIMARY_INTERFACE
+  {"/dev/ide0",
    IDE_STD, /* standard IDE controller */
    &pc386_ide_ctrl_fns,
    NULL, /* probe for IDE standard registers */
@@ -44,6 +45,21 @@
    FALSE,0, /* not (yet) interrupt driven */
    NULL
   }
+#if IDE_USE_SECONDARY_INTERFACE
+  , /* colon only neede when bith interfaces present */
+#endif
+#endif
+#if IDE_USE_SECONDARY_INTERFACE
+  {"/dev/ide1",
+   IDE_STD, /* standard IDE controller */
+   &pc386_ide_ctrl_fns,
+   NULL, /* probe for IDE standard registers */
+   FALSE, /* not (yet) initialized */
+   0x170,  /* base I/O address for second IDE controller */
+   FALSE,0, /* not (yet) interrupt driven */
+   NULL
+  }
+#endif
 };
 
 /* Number of rows in IDE_Controller_Table */
