Hi to all,
I tried to modify ata.c simply add more ioaddress (I attach the diff file
from 1.96 version), and it work and recognize
my four sata disk on different pc. If I try to change sata port, the name
of device on grub change because it depend by index of ioaddress
in grub_ata_io_address array.
There is some reason because ata.c currently report thar support "only two
ide drives" ? the driver seems work well... I can read file for my
partition, and then boot linux and even windows with chainloader. (i.e.:
chailoader (ata4,1)+1 and boot)
and forgive me if I write something of stupid...
bye
Marco
--- ata.c 2008-05-03 19:30:37.000000000 +0200
+++ ata.c~ 2008-05-03 18:06:15.000000000 +0200
@@ -32,11 +32,9 @@
GRUB_ATA_LBA48
} grub_ata_addressing_t;
-
-/* try address of commons sata controller */
-static const int grub_ata_ioaddress[] = {0x1f0, 0x170
,0x9800,0x9000,0x8800,0x18f8,0x18f0};
-static const int grub_ata_ioaddress2[] = {0x3f6,
0x376,0x9402,0x8802,0x8402,0x18ce,0x18ca};
-
+/* At the moment, only two IDE ports are supported. */
+static const int grub_ata_ioaddress[] = { 0x1f0, 0x170 };
+static const int grub_ata_ioaddress2[] = { 0x3f6, 0x376 };
#define GRUB_CDROM_SECTOR_SIZE 2048
@@ -338,7 +336,7 @@
int port;
int device;
- for (port = 0; port <= 6; port++)
+ for (port = 0; port <= 1; port++)
{
for (device = 0; device <= 1; device++)
{
_______________________________________________
Grub-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/grub-devel