Subject: Re: 53c876 support (SCSI)?
To: Michael K. Sanders <msanders@aros.net>
From: Matthew Jacob <mjacob@feral.com>
List: current-users
Date: 07/15/1998 08:06:00
On Wed, 15 Jul 1998, Michael K. Sanders wrote:

> >dev/pci/ncr.c.
> 
> How does one know which chips this supports?  The comment just says
> 53C810.  I'm wondering if it supports the 825A.  I compared the
> registers in the driver to the data manual, and they look the same,
> but I don't have a card yet to try it.

Supports or works?

Support, at line 3440:

static ncr_chip ncr_chip_table[] = {
 {NCR_810_ID, 0x00,     "ncr 53c810 fast10 scsi",               4,  8, 4,
 FE_ERL}        
 ,
 {NCR_810_ID, 0x10,     "ncr 53c810a fast10 scsi",              4,  8, 4,
 FE_ERL|FE_LDSTR|FE_PFEN|FE_BOF}
 ,              
 {NCR_815_ID, 0x00,     "ncr 53c815 fast10 scsi",               4,  8, 4,
 FE_ERL|FE_BOF} 
 ,      
 {NCR_820_ID, 0x00,     "ncr 53c820 fast10 wide scsi",          4,  8, 4,
 FE_WIDE|FE_ERL}
 ,      
 {NCR_825_ID, 0x00,     "ncr 53c825 fast10 wide scsi",          4,  8, 4,
 FE_WIDE|FE_ERL|FE_BOF} 
 ,      
 {NCR_825_ID, 0x10,     "ncr 53c825a fast10 wide scsi",         7,  8, 4,
 FE_WIDE|FE_CACHE_SET|FE_DFS|FE_LDSTR|FE_PFEN|FE_RAM}
 ,      
 {NCR_860_ID, 0x00,     "ncr 53c860 fast20 scsi",               4,  8, 5,
 FE_ULTRA|FE_CLK80|FE_CACHE_SET|FE_LDSTR|FE_PFEN}
 ,              
 {NCR_875_ID, 0x00,     "ncr 53c875 fast20 wide scsi",          7, 16, 5,
 FE_WIDE|FE_ULTRA|FE_CLK80|FE_CACHE_SET|FE_DFS|FE_LDSTR|FE_PFEN|FE_RAM}
 ,                      
 {NCR_875_ID, 0x02,     "ncr 53c875 fast20 wide scsi",          7, 16, 5,
 FE_WIDE|FE_ULTRA|FE_DBLR|FE_CACHE_SET|FE_DFS|FE_LDSTR|FE_PFEN|FE_RAM}
 ,      
 {NCR_875_ID2, 0x00,    "ncr 53c875j fast20 wide scsi",         7, 16, 5,
 FE_WIDE|FE_ULTRA|FE_DBLR|FE_CACHE_SET|FE_DFS|FE_LDSTR|FE_PFEN|FE_RAM}
 ,      
 {NCR_885_ID, 0x00,     "ncr 53c885 fast20 wide scsi",          7, 16, 5,
 FE_WIDE|FE_ULTRA|FE_DBLR|FE_CACHE_SET|FE_DFS|FE_LDSTR|FE_PFEN|FE_RAM}
 ,
 {NCR_895_ID, 0x00,     "ncr 53c895 fast40 wide scsi",          7, 31, 7,
 FE_WIDE|FE_ULTRA2|FE_QUAD|FE_CACHE_SET|FE_DFS|FE_LDSTR|FE_PFEN|FE_RAM}
 ,      
 {NCR_896_ID, 0x00,     "ncr 53c896 fast40 wide scsi",          7, 31, 7,
 FE_WIDE|FE_ULTRA2|FE_QUAD|FE_CACHE_SET|FE_DFS|FE_LDSTR|FE_PFEN|FE_RAM}
};      

static int ncr_chip_lookup(u_long device_id, u_char revision_id)
{
        int i, found;
        
        found = -1;
        for (i = 0; i < sizeof(ncr_chip_table)/sizeof(ncr_chip_table[0]);
i++) {
                if (device_id   == ncr_chip_table[i].device_id &&
                    ncr_chip_table[i].minrevid <= revision_id) {
                        if (found < 0 ||
                            ncr_chip_table[found].minrevid
                              < ncr_chip_table[i].minrevid) {
                                found = i;
                        }
                }
        }   
        return found;   
}