On Jul 18, 2011, at 12:02 PM, John Baldwin wrote:
> On Friday, July 15, 2011 6:07:31 pm Mark McConnell wrote:
>> Dear folks,
>>
>> I have two LSI raid cards, one of which (SCSI 320-I) supports
>> 64-bit DMA when 4GB+ of DDR is present and another which
>> does not (SATA 150-D) . Consquently I've disabled 64-bit
>> addressing for amr devices.
>>
>> I would like to disable 64-bit addressing for the SATA card, but
>> permit it for the SCSI card. Is this possible?
>
> You'd have to hack the driver perhaps to only disable 64-bit DMA for certain
> PCI IDs. It probably already does this?
>
The driver already had a table for determining 64bit DMA based on the PCI ID.
I guess there's a mistake in the table for this particular card. I think that
changing the following line to remove the AMR_ID_DO_SG64 flag will fix the
problem:
{0x1000, 0x1960, AMR_ID_QUARTZ | AMR_ID_DO_SG64 | AMR_ID_PROBE_SIG},
Actually, what's probably going on is that the driver is only looking at the
vendor and device id's, and is ignoring the subvendor and subdevice id's that
would give it a better clue on the exact hardware in use. Fixing the driver to
look at all 64bits of id info (and take into account wildcards where needed)
would be a good project, if anyone is interested.
Btw, I *HATE* the "chip" and "card" identifiers used in pciconf. Can we change
it to emit the standard (sub)vendor/(sub)device terminology?
Scott
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[email protected]"