Problem
Sata disks are connected to onboard sata ports of PowerEdge 1900 (ESB2 
southbridge chipset). If one of the port is disabled in the bios then they get 
enabled again by the ata_piix driver because of a default port map being 
written to the Port control and status register(0x91-93). 
Instead the driver should preserve the bios setting by way of a fix like this.

Fix:
The BIOS configured PCS value must be anded logically with the default port map 
for the chipset. This way the BIOS information will not be lost by the 
reinitialization of the config space by the ata_piix driver. The below patch is 
against 2.6.21 kernel.

--- ata_piix.c.orig     2007-06-08 02:38:03.000000000 +0530
+++ ata_piix.c  2007-06-08 02:39:45.000000000 +0530
@@ -990,7 +990,7 @@ static void __devinit piix_init_pcs(stru
 
        pci_read_config_word(pdev, ICH5_PCS, &pcs);
 
-       new_pcs = pcs | map_db->port_enable;
+       new_pcs = pcs & map_db->port_enable;
 
        if (new_pcs != pcs) {
                DPRINTK("updating PCS from 0x%x to 0x%x\n", pcs, new_pcs);

Signed-off-by: Shyam Iyer <[EMAIL PROTECTED]>



--
This message was sent on behalf of [EMAIL PROTECTED] at openSubscriber.com
http://www.opensubscriber.com/messages/linux-ide@vger.kernel.org/topic.html
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to