svn commit: r244811 - projects/altix2/sys/dev/mpt
Marcel Moolenaar
marcel at FreeBSD.org
Sat Dec 29 05:50:17 UTC 2012
Author: marcel
Date: Sat Dec 29 05:50:16 2012
New Revision: 244811
URL: http://svnweb.freebsd.org/changeset/base/244811
Log:
Use busdma_sync_range() for the request and reply buffers.
Modified:
projects/altix2/sys/dev/mpt/mpt.c
Modified: projects/altix2/sys/dev/mpt/mpt.c
==============================================================================
--- projects/altix2/sys/dev/mpt/mpt.c Sat Dec 29 03:28:55 2012 (r244810)
+++ projects/altix2/sys/dev/mpt/mpt.c Sat Dec 29 05:50:16 2012 (r244811)
@@ -806,8 +806,9 @@ mpt_intr(void *arg)
" 0x%x)\n", req_index, reply_desc);
}
- busdma_sync(mpt->request_md,
- BUSDMA_SYNC_POSTREAD | BUSDMA_SYNC_POSTWRITE);
+ busdma_sync_range(mpt->request_md,
+ BUSDMA_SYNC_POSTREAD | BUSDMA_SYNC_POSTWRITE,
+ req->req_pbuf, MPT_REQUEST_AREA);
free_rf = mpt_reply_handlers[cb_index](mpt, req,
reply_desc, reply_frame);
@@ -846,8 +847,9 @@ mpt_complete_request_chain(struct mpt_so
MSG_REQUEST_HEADER *msg_hdr;
u_int cb_index;
- busdma_sync(mpt->request_md,
- BUSDMA_SYNC_POSTREAD | BUSDMA_SYNC_POSTWRITE);
+ busdma_sync_range(mpt->request_md,
+ BUSDMA_SYNC_POSTREAD | BUSDMA_SYNC_POSTWRITE,
+ req->req_pbuf, MPT_REQUEST_AREA);
msg_hdr = (MSG_REQUEST_HEADER *)req->req_vbuf;
ioc_status_frame.Function = msg_hdr->Function;
ioc_status_frame.MsgContext = msg_hdr->MsgContext;
@@ -1235,7 +1237,7 @@ mpt_free_request(struct mpt_softc *mpt,
mpt_send_event_ack(mpt, req, &record->reply, record->context);
offset = (uint32_t)((uint8_t *)record - mpt->reply);
reply_baddr = offset + (mpt->reply_phys & 0xFFFFFFFF);
- busdma_sync_range(mpt->reply_md, BUSDMA_SYNC_PREREAD, offset,
+ busdma_sync_range(mpt->reply_md, BUSDMA_SYNC_PREREAD, reply_baddr,
MPT_REPLY_SIZE);
mpt_free_reply(mpt, reply_baddr);
}
@@ -1276,8 +1278,9 @@ mpt_send_cmd(struct mpt_softc *mpt, requ
if (mpt->verbose > MPT_PRT_DEBUG2) {
mpt_dump_request(mpt, req);
}
- busdma_sync(mpt->request_md,
- BUSDMA_SYNC_PREREAD | BUSDMA_SYNC_PREWRITE);
+ busdma_sync_range(mpt->request_md,
+ BUSDMA_SYNC_PREREAD | BUSDMA_SYNC_PREWRITE,
+ req->req_pbuf, MPT_REQUEST_AREA);
req->state |= REQ_STATE_QUEUED;
KASSERT(mpt_req_on_free_list(mpt, req) == 0,
("req %p:%u func %x on freelist list in mpt_send_cmd",
More information about the svn-src-projects
mailing list