summaryrefslogtreecommitdiffstats
path: root/sys/dev/mpt
diff options
context:
space:
mode:
authormarius <marius@FreeBSD.org>2011-07-29 18:35:10 +0000
committermarius <marius@FreeBSD.org>2011-07-29 18:35:10 +0000
commite7cb795db9683a83789d491b6d72c9e8686fe348 (patch)
tree9f160b5685fb163e25921a4d659ee2bf6fad4dca /sys/dev/mpt
parenta767738f24daef2a31034f81049fe647c89c8e1f (diff)
downloadFreeBSD-src-e7cb795db9683a83789d491b6d72c9e8686fe348.zip
FreeBSD-src-e7cb795db9683a83789d491b6d72c9e8686fe348.tar.gz
- Staticize functions as appropriate and comment out unused ones.
- Sprinkle some const where appropriate. - Consistently use target_id_t for the target parameter of mpt_map_physdisk() and mpt_is_raid_volume(). - Fix some whitespace bugs. Approved by: re (kib)
Diffstat (limited to 'sys/dev/mpt')
-rw-r--r--sys/dev/mpt/mpt.c66
-rw-r--r--sys/dev/mpt/mpt.h16
-rw-r--r--sys/dev/mpt/mpt_cam.c24
-rw-r--r--sys/dev/mpt/mpt_debug.c43
-rw-r--r--sys/dev/mpt/mpt_pci.c10
-rw-r--r--sys/dev/mpt/mpt_raid.c53
-rw-r--r--sys/dev/mpt/mpt_raid.h20
-rw-r--r--sys/dev/mpt/mpt_user.c16
8 files changed, 152 insertions, 96 deletions
diff --git a/sys/dev/mpt/mpt.c b/sys/dev/mpt/mpt.c
index fb24025..9dfd73b 100644
--- a/sys/dev/mpt/mpt.c
+++ b/sys/dev/mpt/mpt.c
@@ -301,66 +301,75 @@ mpt_modevent(module_t mod, int type, void *data)
return (error);
}
-int
+static int
mpt_stdload(struct mpt_personality *pers)
{
+
/* Load is always successful. */
return (0);
}
-int
+static int
mpt_stdprobe(struct mpt_softc *mpt)
{
+
/* Probe is always successful. */
return (0);
}
-int
+static int
mpt_stdattach(struct mpt_softc *mpt)
{
+
/* Attach is always successful. */
return (0);
}
-int
+static int
mpt_stdenable(struct mpt_softc *mpt)
{
+
/* Enable is always successful. */
return (0);
}
-void
+static void
mpt_stdready(struct mpt_softc *mpt)
{
-}
+}
-int
+static int
mpt_stdevent(struct mpt_softc *mpt, request_t *req, MSG_EVENT_NOTIFY_REPLY *msg)
{
+
mpt_lprt(mpt, MPT_PRT_DEBUG, "mpt_stdevent: 0x%x\n", msg->Event & 0xFF);
/* Event was not for us. */
return (0);
}
-void
+static void
mpt_stdreset(struct mpt_softc *mpt, int type)
{
+
}
-void
+static void
mpt_stdshutdown(struct mpt_softc *mpt)
{
+
}
-void
+static void
mpt_stddetach(struct mpt_softc *mpt)
{
+
}
-int
+static int
mpt_stdunload(struct mpt_personality *pers)
{
+
/* Unload is always successful. */
return (0);
}
@@ -383,7 +392,6 @@ mpt_postattach(void *unused)
}
SYSINIT(mptdev, SI_SUB_CONFIGURE, SI_ORDER_MIDDLE, mpt_postattach, NULL);
-
/******************************* Bus DMA Support ******************************/
void
mpt_map_rquest(void *arg, bus_dma_segment_t *segs, int nseg, int error)
@@ -478,6 +486,7 @@ static int
mpt_default_reply_handler(struct mpt_softc *mpt, request_t *req,
uint32_t reply_desc, MSG_DEFAULT_REPLY *reply_frame)
{
+
mpt_prt(mpt,
"Default Handler Called: req=%p:%u reply_descriptor=%x frame=%p\n",
req, req->serno, reply_desc, reply_frame);
@@ -494,8 +503,8 @@ static int
mpt_config_reply_handler(struct mpt_softc *mpt, request_t *req,
uint32_t reply_desc, MSG_DEFAULT_REPLY *reply_frame)
{
- if (req != NULL) {
+ if (req != NULL) {
if (reply_frame != NULL) {
MSG_CONFIG *cfgp;
MSG_CONFIG_REPLY *reply;
@@ -528,6 +537,7 @@ static int
mpt_handshake_reply_handler(struct mpt_softc *mpt, request_t *req,
uint32_t reply_desc, MSG_DEFAULT_REPLY *reply_frame)
{
+
/* Nothing to be done. */
return (TRUE);
}
@@ -650,6 +660,7 @@ static int
mpt_core_event(struct mpt_softc *mpt, request_t *req,
MSG_EVENT_NOTIFY_REPLY *msg)
{
+
mpt_lprt(mpt, MPT_PRT_DEBUG, "mpt_core_event: 0x%x\n",
msg->Event & 0xFF);
switch(msg->Event & 0xFF) {
@@ -870,6 +881,7 @@ mpt_complete_request_chain(struct mpt_softc *mpt, struct req_queue *chain,
void
mpt_dump_reply_frame(struct mpt_softc *mpt, MSG_DEFAULT_REPLY *reply_frame)
{
+
mpt_prt(mpt, "Address Reply:\n");
mpt_print_reply(reply_frame);
}
@@ -881,12 +893,14 @@ static __inline uint32_t mpt_rd_intr(struct mpt_softc *mpt);
static __inline uint32_t
mpt_rd_db(struct mpt_softc *mpt)
{
+
return mpt_read(mpt, MPT_OFFSET_DOORBELL);
}
static __inline uint32_t
mpt_rd_intr(struct mpt_softc *mpt)
{
+
return mpt_read(mpt, MPT_OFFSET_INTR_STATUS);
}
@@ -895,6 +909,7 @@ static int
mpt_wait_db_ack(struct mpt_softc *mpt)
{
int i;
+
for (i=0; i < MPT_MAX_WAIT; i++) {
if (!MPT_DB_IS_BUSY(mpt_rd_intr(mpt))) {
maxwait_ack = i > maxwait_ack ? i : maxwait_ack;
@@ -910,6 +925,7 @@ static int
mpt_wait_db_int(struct mpt_softc *mpt)
{
int i;
+
for (i = 0; i < MPT_MAX_WAIT; i++) {
if (MPT_DB_INTR(mpt_rd_intr(mpt))) {
maxwait_int = i > maxwait_int ? i : maxwait_int;
@@ -925,6 +941,7 @@ void
mpt_check_doorbell(struct mpt_softc *mpt)
{
uint32_t db = mpt_rd_db(mpt);
+
if (MPT_STATE(db) != MPT_DB_STATE_RUNNING) {
mpt_prt(mpt, "Device not running\n");
mpt_print_db(db);
@@ -956,6 +973,7 @@ static int mpt_download_fw(struct mpt_softc *mpt);
static int
mpt_soft_reset(struct mpt_softc *mpt)
{
+
mpt_lprt(mpt, MPT_PRT_DEBUG, "soft reset\n");
/* Have to use hard reset if we are not in Running state */
@@ -1019,6 +1037,7 @@ mpt_enable_diag_mode(struct mpt_softc *mpt)
static void
mpt_disable_diag_mode(struct mpt_softc *mpt)
{
+
mpt_write(mpt, MPT_OFFSET_SEQUENCE, 0xFFFFFFFF);
}
@@ -1094,6 +1113,7 @@ mpt_hard_reset(struct mpt_softc *mpt)
static void
mpt_core_ioc_reset(struct mpt_softc *mpt, int type)
{
+
/*
* Complete all pending requests with a status
* appropriate for an IOC reset.
@@ -1102,7 +1122,6 @@ mpt_core_ioc_reset(struct mpt_softc *mpt, int type)
MPI_IOCSTATUS_INVALID_STATE);
}
-
/*
* Reset the IOC when needed. Try software command first then if needed
* poke at the magic diagnostic reset. Note that a hard reset resets
@@ -1263,6 +1282,7 @@ retry:
void
mpt_send_cmd(struct mpt_softc *mpt, request_t *req)
{
+
if (mpt->verbose > MPT_PRT_DEBUG2) {
mpt_dump_request(mpt, req);
}
@@ -2110,6 +2130,7 @@ mpt_send_event_request(struct mpt_softc *mpt, int onoff)
void
mpt_enable_ints(struct mpt_softc *mpt)
{
+
/* Unmask every thing except door bell int */
mpt_write(mpt, MPT_OFFSET_INTR_MASK, MPT_INTR_DB_MASK);
}
@@ -2120,6 +2141,7 @@ mpt_enable_ints(struct mpt_softc *mpt)
void
mpt_disable_ints(struct mpt_softc *mpt)
{
+
/* Mask all interrupts */
mpt_write(mpt, MPT_OFFSET_INTR_MASK,
MPT_INTR_REPLY_MASK | MPT_INTR_DB_MASK);
@@ -2219,7 +2241,7 @@ mpt_detach(struct mpt_softc *mpt)
return (0);
}
-int
+static int
mpt_core_load(struct mpt_personality *pers)
{
int i;
@@ -2245,7 +2267,7 @@ mpt_core_load(struct mpt_personality *pers)
* Initialize per-instance driver data and perform
* initial controller configuration.
*/
-int
+static int
mpt_core_attach(struct mpt_softc *mpt)
{
int val, error;
@@ -2276,9 +2298,10 @@ mpt_core_attach(struct mpt_softc *mpt)
return (error);
}
-int
+static int
mpt_core_enable(struct mpt_softc *mpt)
{
+
/*
* We enter with the IOC enabled, but async events
* not enabled, ports not enabled and interrupts
@@ -2326,13 +2349,14 @@ mpt_core_enable(struct mpt_softc *mpt)
return (0);
}
-void
+static void
mpt_core_shutdown(struct mpt_softc *mpt)
{
+
mpt_disable_ints(mpt);
}
-void
+static void
mpt_core_detach(struct mpt_softc *mpt)
{
int val;
@@ -2351,9 +2375,10 @@ mpt_core_detach(struct mpt_softc *mpt)
mpt_dma_buf_free(mpt);
}
-int
+static int
mpt_core_unload(struct mpt_personality *pers)
{
+
/* Unload is always successful. */
return (0);
}
@@ -2575,6 +2600,7 @@ static void
mpt_dma_buf_free(struct mpt_softc *mpt)
{
int i;
+
if (mpt->request_dmat == 0) {
mpt_lprt(mpt, MPT_PRT_DEBUG, "already released dma memory\n");
return;
diff --git a/sys/dev/mpt/mpt.h b/sys/dev/mpt/mpt.h
index d12c307..8a20e82 100644
--- a/sys/dev/mpt/mpt.h
+++ b/sys/dev/mpt/mpt.h
@@ -1075,16 +1075,6 @@ mpt_complete_request_chain(struct mpt_softc *, struct req_queue *, u_int);
int mpt_reset(struct mpt_softc *, int /*reinit*/);
/****************************** Debugging ************************************/
-typedef struct mpt_decode_entry {
- char *name;
- u_int value;
- u_int mask;
-} mpt_decode_entry_t;
-
-int mpt_decode_value(mpt_decode_entry_t *table, u_int num_entries,
- const char *name, u_int value, u_int *cur_column,
- u_int wrap_point);
-
void mpt_dump_data(struct mpt_softc *, const char *, void *, int);
void mpt_dump_request(struct mpt_softc *, request_t *);
@@ -1110,17 +1100,21 @@ do { \
mpt_prt(mpt, __VA_ARGS__); \
} while (0)
+#if 0
#define mpt_lprtc(mpt, level, ...) \
do { \
if (level <= (mpt)->verbose) \
mpt_prtc(mpt, __VA_ARGS__); \
} while (0)
+#endif
#else
void mpt_lprt(struct mpt_softc *, int, const char *, ...)
__printflike(3, 4);
+#if 0
void mpt_lprtc(struct mpt_softc *, int, const char *, ...)
__printflike(3, 4);
#endif
+#endif
void mpt_prt(struct mpt_softc *, const char *, ...)
__printflike(2, 3);
void mpt_prtc(struct mpt_softc *, const char *, ...)
@@ -1277,7 +1271,6 @@ void mpt_check_doorbell(struct mpt_softc *mpt);
void mpt_dump_reply_frame(struct mpt_softc *mpt,
MSG_DEFAULT_REPLY *reply_frame);
-void mpt_set_config_regs(struct mpt_softc *);
int mpt_issue_cfg_req(struct mpt_softc */*mpt*/, request_t */*req*/,
cfgparms_t *params,
bus_addr_t /*addr*/, bus_size_t/*len*/,
@@ -1331,6 +1324,5 @@ char *mpt_ioc_diag(uint32_t diag);
void mpt_req_state(mpt_req_state_t state);
void mpt_print_config_request(void *vmsg);
void mpt_print_request(void *vmsg);
-void mpt_print_scsi_io_request(MSG_SCSI_IO_REQUEST *msg);
void mpt_dump_sgl(SGE_IO_UNION *se, int offset);
#endif /* _MPT_H_ */
diff --git a/sys/dev/mpt/mpt_cam.c b/sys/dev/mpt/mpt_cam.c
index 1b997d1..f54ed7f2 100644
--- a/sys/dev/mpt/mpt_cam.c
+++ b/sys/dev/mpt/mpt_cam.c
@@ -193,7 +193,7 @@ MODULE_DEPEND(mpt_cam, cam, 1, 1, 1);
int mpt_enable_sata_wc = -1;
TUNABLE_INT("hw.mpt.enable_sata_wc", &mpt_enable_sata_wc);
-int
+static int
mpt_cam_probe(struct mpt_softc *mpt)
{
int role;
@@ -215,7 +215,7 @@ mpt_cam_probe(struct mpt_softc *mpt)
return (ENODEV);
}
-int
+static int
mpt_cam_attach(struct mpt_softc *mpt)
{
struct cam_devq *devq;
@@ -509,7 +509,6 @@ mpt_read_config_info_fc(struct mpt_softc *mpt)
static int
mpt_set_initial_config_fc(struct mpt_softc *mpt)
{
-
CONFIG_PAGE_FC_PORT_1 fc;
U32 fl;
int r, doit = 0;
@@ -881,8 +880,8 @@ static int
mpt_sata_pass_reply_handler(struct mpt_softc *mpt, request_t *req,
uint32_t reply_desc, MSG_DEFAULT_REPLY *reply_frame)
{
- if (req != NULL) {
+ if (req != NULL) {
if (reply_frame != NULL) {
req->IOCStatus = le16toh(reply_frame->IOCStatus);
}
@@ -1114,7 +1113,7 @@ mpt_set_initial_config_spi(struct mpt_softc *mpt)
return (0);
}
-int
+static int
mpt_cam_enable(struct mpt_softc *mpt)
{
int error;
@@ -1151,9 +1150,10 @@ out:
return (error);
}
-void
+static void
mpt_cam_ready(struct mpt_softc *mpt)
{
+
/*
* If we're in target mode, hang out resources now
* so we don't cause the world to hang talking to us.
@@ -1171,7 +1171,7 @@ mpt_cam_ready(struct mpt_softc *mpt)
mpt->ready = 1;
}
-void
+static void
mpt_cam_detach(struct mpt_softc *mpt)
{
mpt_handler_t handler;
@@ -1842,8 +1842,6 @@ bad:
memset(se, 0,sizeof (*se));
se->Address = htole32(dm_segs->ds_addr);
-
-
MPI_pSGE_SET_LENGTH(se, dm_segs->ds_len);
tf = flags;
if (seg == first_lim - 1) {
@@ -1958,9 +1956,6 @@ bad:
memset(se, 0, sizeof (*se));
se->Address = htole32(dm_segs->ds_addr);
-
-
-
MPI_pSGE_SET_LENGTH(se, dm_segs->ds_len);
tf = flags;
if (seg == this_seg_lim - 1) {
@@ -3045,6 +3040,7 @@ mpt_fc_els_reply_handler(struct mpt_softc *mpt, request_t *req,
static void
mpt_cam_ioc_reset(struct mpt_softc *mpt, int type)
{
+
/*
* The pending list is already run down by
* the generic handler. Perform the same
@@ -3974,6 +3970,7 @@ mpt_spawn_recovery_thread(struct mpt_softc *mpt)
static void
mpt_terminate_recovery_thread(struct mpt_softc *mpt)
{
+
if (mpt->recovery_thread == NULL) {
return;
}
@@ -4377,6 +4374,7 @@ mpt_add_target_commands(struct mpt_softc *mpt)
static int
mpt_enable_lun(struct mpt_softc *mpt, target_id_t tgt, lun_id_t lun)
{
+
if (tgt == CAM_TARGET_WILDCARD && lun == CAM_LUN_WILDCARD) {
mpt->twildcard = 1;
} else if (lun >= MPT_MAX_LUNS) {
@@ -4402,6 +4400,7 @@ static int
mpt_disable_lun(struct mpt_softc *mpt, target_id_t tgt, lun_id_t lun)
{
int i;
+
if (tgt == CAM_TARGET_WILDCARD && lun == CAM_LUN_WILDCARD) {
mpt->twildcard = 0;
} else if (lun >= MPT_MAX_LUNS) {
@@ -5286,6 +5285,7 @@ mpt_tgt_dump_tgt_state(struct mpt_softc *mpt, request_t *req)
static void
mpt_tgt_dump_req_state(struct mpt_softc *mpt, request_t *req)
{
+
mpt_prt(mpt, "req %p:%u index %u (%x) state %x\n", req, req->serno,
req->index, req->index, req->state);
mpt_tgt_dump_tgt_state(mpt, req);
diff --git a/sys/dev/mpt/mpt_debug.c b/sys/dev/mpt/mpt_debug.c
index e7f75fa..dd70dc9 100644
--- a/sys/dev/mpt/mpt_debug.c
+++ b/sys/dev/mpt/mpt_debug.c
@@ -285,6 +285,7 @@ mpt_scsi_state(int code)
}
return buf;
}
+
static char *
mpt_scsi_status(int code)
{
@@ -298,10 +299,11 @@ mpt_scsi_status(int code)
snprintf(buf, sizeof buf, "Unknown (0x%08x)", code);
return buf;
}
-static char *
+
+static const char *
mpt_who(int who_init)
{
- char *who;
+ const char *who;
switch (who_init) {
case MPT_DB_INIT_NOONE: who = "No One"; break;
@@ -315,10 +317,10 @@ mpt_who(int who_init)
return who;
}
-static char *
+static const char *
mpt_state(u_int32_t mb)
{
- char *text;
+ const char *text;
switch (MPT_STATE(mb)) {
case MPT_DB_STATE_RESET: text = "Reset"; break;
@@ -347,6 +349,7 @@ mpt_scsi_tm_type(int code)
void
mpt_print_db(u_int32_t mb)
{
+
printf("mpt mailbox: (0x%x) State %s WhoInit %s\n",
mb, mpt_state(mb), mpt_who(MPT_WHO(mb)));
}
@@ -357,6 +360,7 @@ mpt_print_db(u_int32_t mb)
static void
mpt_print_reply_hdr(MSG_DEFAULT_REPLY *msg)
{
+
printf("%s Reply @ %p\n", mpt_ioc_function(msg->Function), msg);
printf("\tIOC Status %s\n", mpt_ioc_status(msg->IOCStatus));
printf("\tIOCLogInfo 0x%08x\n", msg->IOCLogInfo);
@@ -368,6 +372,7 @@ mpt_print_reply_hdr(MSG_DEFAULT_REPLY *msg)
static void
mpt_print_init_reply(MSG_IOC_INIT_REPLY *msg)
{
+
mpt_print_reply_hdr((MSG_DEFAULT_REPLY *)msg);
printf("\tWhoInit %s\n", mpt_who(msg->WhoInit));
printf("\tMaxDevices 0x%02x\n", msg->MaxDevices);
@@ -377,6 +382,7 @@ mpt_print_init_reply(MSG_IOC_INIT_REPLY *msg)
static void
mpt_print_ioc_facts(MSG_IOC_FACTS_REPLY *msg)
{
+
mpt_print_reply_hdr((MSG_DEFAULT_REPLY *)msg);
printf("\tIOCNumber %d\n", msg->IOCNumber);
printf("\tMaxChainDepth %d\n", msg->MaxChainDepth);
@@ -402,6 +408,7 @@ mpt_print_ioc_facts(MSG_IOC_FACTS_REPLY *msg)
static void
mpt_print_enable_reply(MSG_PORT_ENABLE_REPLY *msg)
{
+
mpt_print_reply_hdr((MSG_DEFAULT_REPLY *)msg);
printf("\tPort: %d\n", msg->PortNumber);
}
@@ -409,6 +416,7 @@ mpt_print_enable_reply(MSG_PORT_ENABLE_REPLY *msg)
static void
mpt_print_scsi_io_reply(MSG_SCSI_IO_REPLY *msg)
{
+
mpt_print_reply_hdr((MSG_DEFAULT_REPLY *)msg);
printf("\tBus: %d\n", msg->Bus);
printf("\tTargetID %d\n", msg->TargetID);
@@ -420,11 +428,10 @@ mpt_print_scsi_io_reply(MSG_SCSI_IO_REPLY *msg)
printf("\tResponseInfo 0x%08x\n", msg->ResponseInfo);
}
-
-
static void
mpt_print_event_notice(MSG_EVENT_NOTIFY_REPLY *msg)
{
+
mpt_print_reply_hdr((MSG_DEFAULT_REPLY *)msg);
printf("\tEvent: %s\n", mpt_ioc_event(msg->Event));
printf("\tEventContext 0x%04x\n", msg->EventContext);
@@ -517,7 +524,7 @@ mpt_print_request_hdr(MSG_REQUEST_HEADER *req)
printf("\tMsgContext 0x%08x\n", req->MsgContext);
}
-void
+static void
mpt_print_scsi_io_request(MSG_SCSI_IO_REQUEST *orig_msg)
{
MSG_SCSI_IO_REQUEST local, *msg = &local;
@@ -575,6 +582,7 @@ mpt_print_scsi_io_request(MSG_SCSI_IO_REQUEST *orig_msg)
static void
mpt_print_scsi_tmf_request(MSG_SCSI_TASK_MGMT *msg)
{
+
mpt_print_request_hdr((MSG_REQUEST_HEADER *)msg);
printf("\tLun 0x%02x\n", msg->LUN[1]);
printf("\tTaskType %s\n", mpt_scsi_tm_type(msg->TaskType));
@@ -585,6 +593,7 @@ mpt_print_scsi_tmf_request(MSG_SCSI_TASK_MGMT *msg)
static void
mpt_print_scsi_target_assist_request(PTR_MSG_TARGET_ASSIST_REQUEST msg)
{
+
mpt_print_request_hdr((MSG_REQUEST_HEADER *)msg);
printf("\tStatusCode 0x%02x\n", msg->StatusCode);
printf("\tTargetAssist 0x%02x\n", msg->TargetAssistFlags);
@@ -600,6 +609,7 @@ static void
mpt_print_scsi_target_status_send_request(MSG_TARGET_STATUS_SEND_REQUEST *msg)
{
SGE_IO_UNION x;
+
mpt_print_request_hdr((MSG_REQUEST_HEADER *)msg);
printf("\tStatusCode 0x%02x\n", msg->StatusCode);
printf("\tStatusFlags 0x%02x\n", msg->StatusFlags);
@@ -637,7 +647,14 @@ mpt_print_request(void *vreq)
}
}
-int
+#if 0
+typedef struct mpt_decode_entry {
+ char *name;
+ u_int value;
+ u_int mask;
+} mpt_decode_entry_t;
+
+static int
mpt_decode_value(mpt_decode_entry_t *table, u_int num_entries,
const char *name, u_int value, u_int *cur_column,
u_int wrap_point)
@@ -689,7 +706,7 @@ mpt_decode_value(mpt_decode_entry_t *table, u_int num_entries,
return (printed);
}
-static mpt_decode_entry_t req_state_parse_table[] = {
+static const mpt_decode_entry_t req_state_parse_table[] = {
{ "REQ_FREE", 0x00, 0xff },
{ "REQ_ALLOCATED", 0x01, 0x01 },
{ "REQ_QUEUED", 0x02, 0x02 },
@@ -698,13 +715,15 @@ static mpt_decode_entry_t req_state_parse_table[] = {
{ "REQ_NEED_WAKEUP", 0x10, 0x10 }
};
-void
+static void
mpt_req_state(mpt_req_state_t state)
{
+
mpt_decode_value(req_state_parse_table,
NUM_ELEMENTS(req_state_parse_table),
"REQ_STATE", state, NULL, 80);
}
+#endif
#define LAST_SGE ( \
MPI_SGE_FLAGS_END_OF_LIST | \
@@ -805,6 +824,7 @@ mpt_dump_data(struct mpt_softc *mpt, const char *msg, void *addr, int len)
{
int offset;
uint8_t *cp = addr;
+
mpt_prt(mpt, "%s:", msg);
for (offset = 0; offset < len; offset++) {
if ((offset & 0xf) == 0) {
@@ -820,6 +840,7 @@ mpt_dump_request(struct mpt_softc *mpt, request_t *req)
{
uint32_t *pReq = req->req_vbuf;
int o;
+
#if __FreeBSD_version >= 500000
mpt_prt(mpt, "Send Request %d (%jx):",
req->index, (uintmax_t) req->req_pbuf);
@@ -850,6 +871,7 @@ mpt_lprt(struct mpt_softc *mpt, int level, const char *fmt, ...)
}
}
+#if 0
void
mpt_lprtc(struct mpt_softc *mpt, int level, const char *fmt, ...)
{
@@ -861,6 +883,7 @@ mpt_lprtc(struct mpt_softc *mpt, int level, const char *fmt, ...)
}
}
#endif
+#endif
void
mpt_prt(struct mpt_softc *mpt, const char *fmt, ...)
diff --git a/sys/dev/mpt/mpt_pci.c b/sys/dev/mpt/mpt_pci.c
index f7201b6..7e3211b 100644
--- a/sys/dev/mpt/mpt_pci.c
+++ b/sys/dev/mpt/mpt_pci.c
@@ -201,6 +201,9 @@ static int mpt_pci_shutdown(device_t);
static int mpt_dma_mem_alloc(struct mpt_softc *mpt);
static void mpt_dma_mem_free(struct mpt_softc *mpt);
static void mpt_read_config_regs(struct mpt_softc *mpt);
+#if 0
+static void mpt_set_config_regs(struct mpt_softc *mpt);
+#endif
static void mpt_pci_intr(void *);
static device_method_t mpt_methods[] = {
@@ -404,6 +407,7 @@ mpt_link_peer(struct mpt_softc *mpt)
static void
mpt_unlink_peer(struct mpt_softc *mpt)
{
+
if (mpt->mpt2) {
mpt->mpt2->mpt2 = NULL;
}
@@ -654,6 +658,7 @@ bad:
static void
mpt_free_bus_resources(struct mpt_softc *mpt)
{
+
if (mpt->ih) {
bus_teardown_intr(mpt->dev, mpt->pci_irq, mpt->ih);
mpt->ih = NULL;
@@ -827,6 +832,7 @@ mpt_dma_mem_free(struct mpt_softc *mpt)
static void
mpt_read_config_regs(struct mpt_softc *mpt)
{
+
mpt->pci_cfg.Command = pci_read_config(mpt->dev, PCIR_COMMAND, 2);
mpt->pci_cfg.LatencyTimer_LineSize =
pci_read_config(mpt->dev, PCIR_CACHELNSZ, 2);
@@ -840,8 +846,9 @@ mpt_read_config_regs(struct mpt_softc *mpt)
mpt->pci_cfg.PMCSR = pci_read_config(mpt->dev, 0x44, 4);
}
+#if 0
/* Sets modifiable config registers */
-void
+static void
mpt_set_config_regs(struct mpt_softc *mpt)
{
uint32_t val;
@@ -880,6 +887,7 @@ mpt_set_config_regs(struct mpt_softc *mpt)
pci_write_config(mpt->dev, PCIR_INTLINE, mpt->pci_cfg.IntLine, 1);
pci_write_config(mpt->dev, 0x44, mpt->pci_cfg.PMCSR, 4);
}
+#endif
static void
mpt_pci_intr(void *arg)
diff --git a/sys/dev/mpt/mpt_raid.c b/sys/dev/mpt/mpt_raid.c
index 11650ed..07eadfb 100644
--- a/sys/dev/mpt/mpt_raid.c
+++ b/sys/dev/mpt/mpt_raid.c
@@ -81,7 +81,6 @@ struct mpt_raid_action_result
#define REQ_IOCSTATUS(req) ((req)->IOCStatus & MPI_IOCSTATUS_MASK)
-
static mpt_probe_handler_t mpt_raid_probe;
static mpt_attach_handler_t mpt_raid_attach;
static mpt_enable_handler_t mpt_raid_enable;
@@ -125,9 +124,25 @@ static void mpt_adjust_queue_depth(struct mpt_softc *, struct mpt_raid_volume *,
static void mpt_raid_sysctl_attach(struct mpt_softc *);
#endif
+static const char *mpt_vol_type(struct mpt_raid_volume *vol);
+static const char *mpt_vol_state(struct mpt_raid_volume *vol);
+static const char *mpt_disk_state(struct mpt_raid_disk *disk);
+static void mpt_vol_prt(struct mpt_softc *mpt, struct mpt_raid_volume *vol,
+ const char *fmt, ...);
+static void mpt_disk_prt(struct mpt_softc *mpt, struct mpt_raid_disk *disk,
+ const char *fmt, ...);
+
+static int mpt_issue_raid_req(struct mpt_softc *mpt,
+ struct mpt_raid_volume *vol, struct mpt_raid_disk *disk, request_t *req,
+ u_int Action, uint32_t ActionDataWord, bus_addr_t addr, bus_size_t len,
+ int write, int wait);
+
+static int mpt_refresh_raid_data(struct mpt_softc *mpt);
+static void mpt_schedule_raid_refresh(struct mpt_softc *mpt);
+
static uint32_t raid_handler_id = MPT_HANDLER_ID_NONE;
-const char *
+static const char *
mpt_vol_type(struct mpt_raid_volume *vol)
{
switch (vol->config_page->VolumeType) {
@@ -142,7 +157,7 @@ mpt_vol_type(struct mpt_raid_volume *vol)
}
}
-const char *
+static const char *
mpt_vol_state(struct mpt_raid_volume *vol)
{
switch (vol->config_page->VolumeStatus.State) {
@@ -157,7 +172,7 @@ mpt_vol_state(struct mpt_raid_volume *vol)
}
}
-const char *
+static const char *
mpt_disk_state(struct mpt_raid_disk *disk)
{
switch (disk->config_page.PhysDiskStatus.State) {
@@ -182,7 +197,7 @@ mpt_disk_state(struct mpt_raid_disk *disk)
}
}
-void
+static void
mpt_vol_prt(struct mpt_softc *mpt, struct mpt_raid_volume *vol,
const char *fmt, ...)
{
@@ -196,7 +211,7 @@ mpt_vol_prt(struct mpt_softc *mpt, struct mpt_raid_volume *vol,
va_end(ap);
}
-void
+static void
mpt_disk_prt(struct mpt_softc *mpt, struct mpt_raid_disk *disk,
const char *fmt, ...)
{
@@ -254,16 +269,17 @@ mpt_raid_async(void *callback_arg, u_int32_t code,
}
}
-int
+static int
mpt_raid_probe(struct mpt_softc *mpt)
{
+
if (mpt->ioc_page2 == NULL || mpt->ioc_page2->MaxPhysDisks == 0) {
return (ENODEV);
}
return (0);
}
-int
+static int
mpt_raid_attach(struct mpt_softc *mpt)
{
struct ccb_setasync csa;
@@ -307,13 +323,14 @@ cleanup:
return (error);
}
-int
+static int
mpt_raid_enable(struct mpt_softc *mpt)
{
+
return (0);
}
-void
+static void
mpt_raid_detach(struct mpt_softc *mpt)
{
struct ccb_setasync csa;
@@ -338,6 +355,7 @@ mpt_raid_detach(struct mpt_softc *mpt)
static void
mpt_raid_ioc_reset(struct mpt_softc *mpt, int type)
{
+
/* Nothing to do yet. */
}
@@ -570,7 +588,7 @@ mpt_raid_reply_frame_handler(struct mpt_softc *mpt, request_t *req,
/*
* Utiltity routine to perform a RAID action command;
*/
-int
+static int
mpt_issue_raid_req(struct mpt_softc *mpt, struct mpt_raid_volume *vol,
struct mpt_raid_disk *disk, request_t *req, u_int Action,
uint32_t ActionDataWord, bus_addr_t addr, bus_size_t len,
@@ -719,6 +737,7 @@ mpt_raid_thread(void *arg)
static void
mpt_raid_quiesce_timeout(void *arg)
{
+
/* Complete the CCB with error */
/* COWWWW */
}
@@ -776,7 +795,7 @@ mpt_raid_quiesce_disk(struct mpt_softc *mpt, struct mpt_raid_disk *mpt_disk,
/* XXX Ignores that there may be multiple busses/IOCs involved. */
cam_status
-mpt_map_physdisk(struct mpt_softc *mpt, union ccb *ccb, u_int *tgt)
+mpt_map_physdisk(struct mpt_softc *mpt, union ccb *ccb, target_id_t *tgt)
{
struct mpt_raid_disk *mpt_disk;
@@ -793,7 +812,7 @@ mpt_map_physdisk(struct mpt_softc *mpt, union ccb *ccb, u_int *tgt)
/* XXX Ignores that there may be multiple busses/IOCs involved. */
int
-mpt_is_raid_volume(struct mpt_softc *mpt, int tgt)
+mpt_is_raid_volume(struct mpt_softc *mpt, target_id_t tgt)
{
CONFIG_PAGE_IOC_2_RAID_VOL *ioc_vol;
CONFIG_PAGE_IOC_2_RAID_VOL *ioc_last_vol;
@@ -1305,7 +1324,7 @@ mpt_refresh_raid_vol(struct mpt_softc *mpt, struct mpt_raid_volume *mpt_vol,
* be updated by our event handler. Interesting changes are displayed
* to the console.
*/
-int
+static int
mpt_refresh_raid_data(struct mpt_softc *mpt)
{
CONFIG_PAGE_IOC_2_RAID_VOL *ioc_vol;
@@ -1565,9 +1584,10 @@ mpt_raid_timer(void *arg)
#endif
}
-void
+static void
mpt_schedule_raid_refresh(struct mpt_softc *mpt)
{
+
callout_reset(&mpt->raid_timer, MPT_RAID_SYNC_REPORT_INTERVAL,
mpt_raid_timer, mpt);
}
@@ -1719,7 +1739,8 @@ mpt_raid_set_vol_mwce(struct mpt_softc *mpt, mpt_raid_mwce_t mwce)
MPT_UNLOCK(mpt);
return (0);
}
-const char *mpt_vol_mwce_strs[] =
+
+static const char *mpt_vol_mwce_strs[] =
{
"On",
"Off",
diff --git a/sys/dev/mpt/mpt_raid.h b/sys/dev/mpt/mpt_raid.h
index bc5aa7d..05d2be1 100644
--- a/sys/dev/mpt/mpt_raid.h
+++ b/sys/dev/mpt/mpt_raid.h
@@ -53,29 +53,13 @@ typedef enum {
MPT_RAID_MWCE_NC
} mpt_raid_mwce_t;
-const char *mpt_vol_type(struct mpt_raid_volume *);
-const char *mpt_vol_state(struct mpt_raid_volume *);
-const char *mpt_disk_state(struct mpt_raid_disk *);
-void
-mpt_vol_prt(struct mpt_softc *, struct mpt_raid_volume *, const char *fmt, ...);
-void
-mpt_disk_prt(struct mpt_softc *, struct mpt_raid_disk *, const char *, ...);
-
-int
-mpt_issue_raid_req(struct mpt_softc *, struct mpt_raid_volume *,
- struct mpt_raid_disk *, request_t *, u_int, uint32_t, bus_addr_t,
- bus_size_t, int, int);
-
-cam_status
-mpt_map_physdisk(struct mpt_softc *, union ccb *, target_id_t *);
-int mpt_is_raid_volume(struct mpt_softc *, int);
+cam_status mpt_map_physdisk(struct mpt_softc *, union ccb *, target_id_t *);
+int mpt_is_raid_volume(struct mpt_softc *, target_id_t);
#if 0
cam_status
mpt_raid_quiesce_disk(struct mpt_softc *, struct mpt_raid_disk *, request_t *);
#endif
-int mpt_refresh_raid_data(struct mpt_softc *);
-void mpt_schedule_raid_refresh(struct mpt_softc *);
void mpt_raid_free_mem(struct mpt_softc *);
static __inline void
diff --git a/sys/dev/mpt/mpt_user.c b/sys/dev/mpt/mpt_user.c
index e6a9d1f..78762c7 100644
--- a/sys/dev/mpt/mpt_user.c
+++ b/sys/dev/mpt/mpt_user.c
@@ -94,7 +94,7 @@ static MALLOC_DEFINE(M_MPTUSER, "mpt_user", "Buffers for mpt(4) ioctls");
static uint32_t user_handler_id = MPT_HANDLER_ID_NONE;
-int
+static int
mpt_user_probe(struct mpt_softc *mpt)
{
@@ -102,7 +102,7 @@ mpt_user_probe(struct mpt_softc *mpt)
return (0);
}
-int
+static int
mpt_user_attach(struct mpt_softc *mpt)
{
mpt_handler_t handler;
@@ -131,19 +131,20 @@ mpt_user_attach(struct mpt_softc *mpt)
return (0);
}
-int
+static int
mpt_user_enable(struct mpt_softc *mpt)
{
return (0);
}
-void
+static void
mpt_user_ready(struct mpt_softc *mpt)
{
+
}
-int
+static int
mpt_user_event(struct mpt_softc *mpt, request_t *req,
MSG_EVENT_NOTIFY_REPLY *msg)
{
@@ -152,12 +153,13 @@ mpt_user_event(struct mpt_softc *mpt, request_t *req,
return (0);
}
-void
+static void
mpt_user_reset(struct mpt_softc *mpt, int type)
{
+
}
-void
+static void
mpt_user_detach(struct mpt_softc *mpt)
{
mpt_handler_t handler;
OpenPOWER on IntegriCloud