Remove ISP2100_FABRIC (we're always fabric now). Fix usage of isp_lastmbxcmd
to report the mailbox command that times out. Fix isp_unswizzle_sns_rsp which for reasons *I* find obscurer just doesn't work correctly on sparc64 with words past 128. I have no idea why this *does* work on SparcLinux.
This commit is contained in:
parent
25bc760687
commit
4409fa23b2
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: isp_netbsd.h,v 1.35 2001/01/05 07:03:54 mjacob Exp $ */
|
||||
/* $NetBSD: isp_netbsd.h,v 1.36 2001/02/12 23:32:11 mjacob Exp $ */
|
||||
/*
|
||||
* This driver, which is contained in NetBSD in the files:
|
||||
*
|
||||
|
@ -116,7 +116,6 @@ struct isposinfo {
|
|||
|
||||
#define INLINE inline
|
||||
|
||||
#define ISP2100_FABRIC 1
|
||||
#define ISP2100_SCRLEN 0x400
|
||||
|
||||
#define MEMZERO bzero
|
||||
|
@ -394,7 +393,7 @@ isp_wait_complete(isp)
|
|||
if (isp->isp_mboxbsy != 0) {
|
||||
isp_prt(isp, ISP_LOGWARN,
|
||||
"Polled Mailbox Command (0x%x) Timeout",
|
||||
isp->isp_mboxtmp[0]);
|
||||
isp->isp_lastmbxcmd);
|
||||
}
|
||||
} else {
|
||||
int rv = 0;
|
||||
|
@ -416,7 +415,7 @@ isp_wait_complete(isp)
|
|||
isp->isp_osinfo.mboxwaiting = 0;
|
||||
isp_prt(isp, ISP_LOGWARN,
|
||||
"Interrupting Mailbox Command (0x%x) Timeout",
|
||||
isp->isp_mboxtmp[0]);
|
||||
isp->isp_lastmbxcmd);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -584,6 +583,13 @@ static inline void
|
|||
isp_unswizzle_sns_rsp(struct ispsoftc *isp, sns_scrsp_t *resp, int nwords)
|
||||
{
|
||||
int index;
|
||||
/*
|
||||
* Don't even think about asking. This. Is. So. Lame.
|
||||
*/
|
||||
if (IS_2200(isp) &&
|
||||
ISP_FW_REVX(isp->isp_fwrev) == ISP_FW_REV(2, 1, 26)) {
|
||||
nwords = 128;
|
||||
}
|
||||
for (index = 0; index < nwords; index++) {
|
||||
resp->snscb_data[index] = bswap16(resp->snscb_data[index]);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue