Andrew, could you push this into 2.5 for me? I got the patch originally
from Michael Griffith <[email protected]>. I've looked it over
and tested it on the equipment I have. The change makes the transfer
rate numbers come out right for the fibre channel version of this controller.
For 1G FC, the NegotiatedSynchronousMegaTransfers is 1000, and the
NegotiatedDataWidthBIts is 1. The old code assumed NegotiatedDataWidthBits
was always either 8 or 16. The new code is simpler, and does the calculation
correctly for all cases.
Thanks!
Dave Olien
--- linux-2.5.70/drivers/block/DAC960.c Mon May 26 18:00:45 2003
+++ linux-grif/drivers/block/DAC960.c Fri May 30 23:46:23 2003
@@ -2309,8 +2309,7 @@
(PhysicalDeviceInfo->NegotiatedDataWidthBits == 16
? "Wide " :""),
(PhysicalDeviceInfo->NegotiatedSynchronousMegaTransfers
- * (PhysicalDeviceInfo->NegotiatedDataWidthBits == 16
- ? 2 : 1)));
+ * PhysicalDeviceInfo->NegotiatedDataWidthBits/8));
if (InquiryUnitSerialNumber->PeripheralDeviceType != 0x1F)
DAC960_Info(" Serial Number: %s\n", Controller, SerialNumber);
if (PhysicalDeviceInfo->PhysicalDeviceState ==