From: Dave Olien 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. drivers/block/DAC960.c | 3 +-- 1 files changed, 1 insertion(+), 2 deletions(-) diff -puN drivers/block/DAC960.c~dac960-negotiation-fix drivers/block/DAC960.c --- 25/drivers/block/DAC960.c~dac960-negotiation-fix 2003-06-04 18:16:22.000000000 -0700 +++ 25-akpm/drivers/block/DAC960.c 2003-06-04 18:16:22.000000000 -0700 @@ -2309,8 +2309,7 @@ static boolean DAC960_V2_ReportDeviceCon (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 == _