diff options
-rw-r--r-- | sys/dev/isp/isp.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/isp/isp.c b/sys/dev/isp/isp.c index da13a73..b880a45 100644 --- a/sys/dev/isp/isp.c +++ b/sys/dev/isp/isp.c @@ -665,9 +665,9 @@ again: nxtaddr = ptr[3]; ptr = &ptr[nxtaddr]; - offset = ptr[5] | (((uint32_t)(ptr[4] & 0xff)) << 16); + offset = ptr[5] | (((uint32_t)(ptr[4] & 0x3f)) << 16); isp->isp_mbxworkp = &ptr[1]; - isp->isp_mbxwrk0 = ptr[3] + 1; + isp->isp_mbxwrk0 = ptr[3] - 1; isp->isp_mbxwrk1 = offset + 1; isp->isp_mbxwrk8 = (offset + 1) >> 16; MEMZERO(&mbs, sizeof (mbs)); @@ -684,7 +684,7 @@ again: nxtaddr = ptr[3]; ptr = &ptr[nxtaddr]; - offset = ptr[5] | (((uint32_t)(ptr[4] & 0xff)) << 16); + offset = ptr[5] | (((uint32_t)(ptr[4] & 0x3f)) << 16); isp->isp_mbxworkp = &ptr[1]; isp->isp_mbxwrk0 = ptr[3] - 1; isp->isp_mbxwrk1 = (offset + 1); |