diff options
Diffstat (limited to 'usr/src/uts/sun4u/opl/io/scfd/scftimer.c')
-rw-r--r-- | usr/src/uts/sun4u/opl/io/scfd/scftimer.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/usr/src/uts/sun4u/opl/io/scfd/scftimer.c b/usr/src/uts/sun4u/opl/io/scfd/scftimer.c index 104b31439e..3a20c808d4 100644 --- a/usr/src/uts/sun4u/opl/io/scfd/scftimer.c +++ b/usr/src/uts/sun4u/opl/io/scfd/scftimer.c @@ -60,6 +60,8 @@ int scf_dscp_end_wait_time = SCF_TIMER_VALUE_DSCP_END; int scf_dscp_txbusy_time = SCF_TIMER_VALUE_DSCP_BUSY; /* DSCP interface callback timer */ int scf_dscp_callback_time = SCF_TIMER_VALUE_DSCP_CALLBACK; + /* DSCP INIT_REQ retry timer */ +int scf_dscp_init_time = SCF_TIMER_VALUE_DSCP_INIT; /* * Function list @@ -86,6 +88,7 @@ extern void scf_dscp_end_tout(void); extern void scf_dscp_busy_tout(void); extern void scf_dscp_callback_tout(void); extern void scf_report_send_wait_tout(void); +extern void scf_dscp_init_tout(void); /* * scf_timer_init() @@ -145,6 +148,10 @@ scf_timer_init(void) scf_timer[SCF_TIMERCD_RCI_BUSY].tbl[0].code = SCF_TIMERCD_RCI_BUSY; scf_timer[SCF_TIMERCD_RCI_BUSY].tbl[1].code = SCF_TIMERCD_RCI_BUSY; + scf_timer[SCF_TIMERCD_DSCP_INIT].value = scf_dscp_init_time; + scf_timer[SCF_TIMERCD_DSCP_INIT].tbl[0].code = SCF_TIMERCD_DSCP_INIT; + scf_timer[SCF_TIMERCD_DSCP_INIT].tbl[1].code = SCF_TIMERCD_DSCP_INIT; + SCFDBGMSG(SCF_DBGFLAG_TIMER, SCF_FUNC_NAME ": end"); } @@ -437,6 +444,11 @@ scf_tout(void *arg) scf_report_send_wait_tout(); break; + case SCF_TIMERCD_DSCP_INIT: + /* DSCP INIT_REQ retry timeout */ + scf_dscp_init_tout(); + break; + default: /* NOP */ break; |