- 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)
This commit is contained in:
Marius Strobl 2011-07-29 18:35:10 +00:00
parent 76e54f993c
commit 87e255ac52
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=224493
8 changed files with 152 additions and 96 deletions

View File

@ -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 @@ mpt_get_request(struct mpt_softc *mpt, int sleep_ok)
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;

View File

@ -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_ */

View File

@ -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 @@ mpt_cam_enable(struct mpt_softc *mpt)
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 @@ mpt_execute_req(void *arg, bus_dma_segment_t *dm_segs, int nseg, int error)
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 @@ mpt_execute_req(void *arg, bus_dma_segment_t *dm_segs, int nseg, int error)
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);

View File

@ -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, ...)

View File

@ -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 @@ mpt_pci_attach(device_t dev)
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)

View File

@ -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 @@ mpt_raid_attach(struct mpt_softc *mpt)
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",

View File

@ -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

View File

@ -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;