Fixup spelling of "coalesce" and derivatives.
Approved by: RE
This commit is contained in:
parent
1785f08951
commit
aaad5f7349
@ -37,7 +37,7 @@
|
||||
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGES.
|
||||
*
|
||||
* $Id: //depot/aic7xxx/aic7xxx/aic79xx.c#190 $
|
||||
* $Id: //depot/aic7xxx/aic7xxx/aic79xx.c#191 $
|
||||
*
|
||||
* $FreeBSD$
|
||||
*/
|
||||
@ -4806,12 +4806,12 @@ ahd_alloc(void *platform_arg, char *name)
|
||||
| AHD_EXTENDED_TRANS_A|AHD_STPWLEVEL_A;
|
||||
ahd_timer_init(&ahd->reset_timer);
|
||||
ahd_timer_init(&ahd->stat_timer);
|
||||
ahd->int_coalessing_timer = AHD_INT_COALESSING_TIMER_DEFAULT;
|
||||
ahd->int_coalessing_maxcmds = AHD_INT_COALESSING_MAXCMDS_DEFAULT;
|
||||
ahd->int_coalessing_mincmds = AHD_INT_COALESSING_MINCMDS_DEFAULT;
|
||||
ahd->int_coalessing_threshold = AHD_INT_COALESSING_THRESHOLD_DEFAULT;
|
||||
ahd->int_coalessing_stop_threshold =
|
||||
AHD_INT_COALESSING_STOP_THRESHOLD_DEFAULT;
|
||||
ahd->int_coalescing_timer = AHD_INT_COALESCING_TIMER_DEFAULT;
|
||||
ahd->int_coalescing_maxcmds = AHD_INT_COALESCING_MAXCMDS_DEFAULT;
|
||||
ahd->int_coalescing_mincmds = AHD_INT_COALESCING_MINCMDS_DEFAULT;
|
||||
ahd->int_coalescing_threshold = AHD_INT_COALESCING_THRESHOLD_DEFAULT;
|
||||
ahd->int_coalescing_stop_threshold =
|
||||
AHD_INT_COALESCING_STOP_THRESHOLD_DEFAULT;
|
||||
|
||||
if (ahd_platform_alloc(ahd, platform_arg) != 0) {
|
||||
ahd_free(ahd);
|
||||
@ -6341,14 +6341,14 @@ ahd_chip_init(struct ahd_softc *ahd)
|
||||
ahd_outb(ahd, NEXT_QUEUED_SCB_ADDR + 3, (busaddr >> 24) & 0xFF);
|
||||
|
||||
/*
|
||||
* Default to coalessing disabled.
|
||||
* Default to coalescing disabled.
|
||||
*/
|
||||
ahd_outw(ahd, INT_COALESSING_CMDCOUNT, 0);
|
||||
ahd_outw(ahd, INT_COALESCING_CMDCOUNT, 0);
|
||||
ahd_outw(ahd, CMDS_PENDING, 0);
|
||||
ahd_update_coalessing_values(ahd, ahd->int_coalessing_timer,
|
||||
ahd->int_coalessing_maxcmds,
|
||||
ahd->int_coalessing_mincmds);
|
||||
ahd_enable_coalessing(ahd, FALSE);
|
||||
ahd_update_coalescing_values(ahd, ahd->int_coalescing_timer,
|
||||
ahd->int_coalescing_maxcmds,
|
||||
ahd->int_coalescing_mincmds);
|
||||
ahd_enable_coalescing(ahd, FALSE);
|
||||
|
||||
ahd_loadseq(ahd);
|
||||
ahd_set_modes(ahd, AHD_MODE_SCSI, AHD_MODE_SCSI);
|
||||
@ -6601,30 +6601,30 @@ ahd_intr_enable(struct ahd_softc *ahd, int enable)
|
||||
}
|
||||
|
||||
void
|
||||
ahd_update_coalessing_values(struct ahd_softc *ahd, u_int timer, u_int maxcmds,
|
||||
ahd_update_coalescing_values(struct ahd_softc *ahd, u_int timer, u_int maxcmds,
|
||||
u_int mincmds)
|
||||
{
|
||||
if (timer > AHD_TIMER_MAX_US)
|
||||
timer = AHD_TIMER_MAX_US;
|
||||
ahd->int_coalessing_timer = timer;
|
||||
ahd->int_coalescing_timer = timer;
|
||||
|
||||
if (maxcmds > AHD_INT_COALESSING_MAXCMDS_MAX)
|
||||
maxcmds = AHD_INT_COALESSING_MAXCMDS_MAX;
|
||||
if (mincmds > AHD_INT_COALESSING_MINCMDS_MAX)
|
||||
mincmds = AHD_INT_COALESSING_MINCMDS_MAX;
|
||||
ahd->int_coalessing_maxcmds = maxcmds;
|
||||
ahd_outw(ahd, INT_COALESSING_TIMER, timer / AHD_TIMER_US_PER_TICK);
|
||||
ahd_outb(ahd, INT_COALESSING_MAXCMDS, -maxcmds);
|
||||
ahd_outb(ahd, INT_COALESSING_MINCMDS, -mincmds);
|
||||
if (maxcmds > AHD_INT_COALESCING_MAXCMDS_MAX)
|
||||
maxcmds = AHD_INT_COALESCING_MAXCMDS_MAX;
|
||||
if (mincmds > AHD_INT_COALESCING_MINCMDS_MAX)
|
||||
mincmds = AHD_INT_COALESCING_MINCMDS_MAX;
|
||||
ahd->int_coalescing_maxcmds = maxcmds;
|
||||
ahd_outw(ahd, INT_COALESCING_TIMER, timer / AHD_TIMER_US_PER_TICK);
|
||||
ahd_outb(ahd, INT_COALESCING_MAXCMDS, -maxcmds);
|
||||
ahd_outb(ahd, INT_COALESCING_MINCMDS, -mincmds);
|
||||
}
|
||||
|
||||
void
|
||||
ahd_enable_coalessing(struct ahd_softc *ahd, int enable)
|
||||
ahd_enable_coalescing(struct ahd_softc *ahd, int enable)
|
||||
{
|
||||
|
||||
ahd->hs_mailbox &= ~ENINT_COALESS;
|
||||
ahd->hs_mailbox &= ~ENINT_COALESCE;
|
||||
if (enable)
|
||||
ahd->hs_mailbox |= ENINT_COALESS;
|
||||
ahd->hs_mailbox |= ENINT_COALESCE;
|
||||
ahd_outb(ahd, HS_MAILBOX, ahd->hs_mailbox);
|
||||
ahd_flush_device_writes(ahd);
|
||||
ahd_run_qoutfifo(ahd);
|
||||
@ -7718,20 +7718,20 @@ ahd_stat_timer(void *arg)
|
||||
}
|
||||
ahd_lock(ahd, &s);
|
||||
|
||||
enint_coal = ahd->hs_mailbox & ENINT_COALESS;
|
||||
if (ahd->cmdcmplt_total > ahd->int_coalessing_threshold)
|
||||
enint_coal |= ENINT_COALESS;
|
||||
else if (ahd->cmdcmplt_total < ahd->int_coalessing_stop_threshold)
|
||||
enint_coal &= ~ENINT_COALESS;
|
||||
enint_coal = ahd->hs_mailbox & ENINT_COALESCE;
|
||||
if (ahd->cmdcmplt_total > ahd->int_coalescing_threshold)
|
||||
enint_coal |= ENINT_COALESCE;
|
||||
else if (ahd->cmdcmplt_total < ahd->int_coalescing_stop_threshold)
|
||||
enint_coal &= ~ENINT_COALESCE;
|
||||
|
||||
if (enint_coal != (ahd->hs_mailbox & ENINT_COALESS)) {
|
||||
ahd_enable_coalessing(ahd, enint_coal);
|
||||
if (enint_coal != (ahd->hs_mailbox & ENINT_COALESCE)) {
|
||||
ahd_enable_coalescing(ahd, enint_coal);
|
||||
#ifdef AHD_DEBUG
|
||||
if ((ahd_debug & AHD_SHOW_INT_COALESSING) != 0)
|
||||
printf("%s: Interrupt coalessing "
|
||||
if ((ahd_debug & AHD_SHOW_INT_COALESCING) != 0)
|
||||
printf("%s: Interrupt coalescing "
|
||||
"now %sabled. Cmds %d\n",
|
||||
ahd_name(ahd),
|
||||
(enint_coal & ENINT_COALESS) ? "en" : "dis",
|
||||
(enint_coal & ENINT_COALESCE) ? "en" : "dis",
|
||||
ahd->cmdcmplt_total);
|
||||
#endif
|
||||
}
|
||||
|
@ -37,7 +37,7 @@
|
||||
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGES.
|
||||
*
|
||||
* $Id: //depot/aic7xxx/aic7xxx/aic79xx.h#89 $
|
||||
* $Id: //depot/aic7xxx/aic7xxx/aic79xx.h#90 $
|
||||
*
|
||||
* $FreeBSD$
|
||||
*/
|
||||
@ -1225,20 +1225,20 @@ struct ahd_softc {
|
||||
int seltime;
|
||||
|
||||
/*
|
||||
* Interrupt coalessing settings.
|
||||
* Interrupt coalescing settings.
|
||||
*/
|
||||
#define AHD_INT_COALESSING_TIMER_DEFAULT 250 /*us*/
|
||||
#define AHD_INT_COALESSING_MAXCMDS_DEFAULT 10
|
||||
#define AHD_INT_COALESSING_MAXCMDS_MAX 127
|
||||
#define AHD_INT_COALESSING_MINCMDS_DEFAULT 5
|
||||
#define AHD_INT_COALESSING_MINCMDS_MAX 127
|
||||
#define AHD_INT_COALESSING_THRESHOLD_DEFAULT 2000
|
||||
#define AHD_INT_COALESSING_STOP_THRESHOLD_DEFAULT 1000
|
||||
u_int int_coalessing_timer;
|
||||
u_int int_coalessing_maxcmds;
|
||||
u_int int_coalessing_mincmds;
|
||||
u_int int_coalessing_threshold;
|
||||
u_int int_coalessing_stop_threshold;
|
||||
#define AHD_INT_COALESCING_TIMER_DEFAULT 250 /*us*/
|
||||
#define AHD_INT_COALESCING_MAXCMDS_DEFAULT 10
|
||||
#define AHD_INT_COALESCING_MAXCMDS_MAX 127
|
||||
#define AHD_INT_COALESCING_MINCMDS_DEFAULT 5
|
||||
#define AHD_INT_COALESCING_MINCMDS_MAX 127
|
||||
#define AHD_INT_COALESCING_THRESHOLD_DEFAULT 2000
|
||||
#define AHD_INT_COALESCING_STOP_THRESHOLD_DEFAULT 1000
|
||||
u_int int_coalescing_timer;
|
||||
u_int int_coalescing_maxcmds;
|
||||
u_int int_coalescing_mincmds;
|
||||
u_int int_coalescing_threshold;
|
||||
u_int int_coalescing_stop_threshold;
|
||||
|
||||
uint16_t user_discenable;/* Disconnection allowed */
|
||||
uint16_t user_tagenable;/* Tagged Queuing allowed */
|
||||
@ -1362,11 +1362,11 @@ int ahd_parse_vpddata(struct ahd_softc *ahd,
|
||||
int ahd_parse_cfgdata(struct ahd_softc *ahd,
|
||||
struct seeprom_config *sc);
|
||||
void ahd_intr_enable(struct ahd_softc *ahd, int enable);
|
||||
void ahd_update_coalessing_values(struct ahd_softc *ahd,
|
||||
void ahd_update_coalescing_values(struct ahd_softc *ahd,
|
||||
u_int timer,
|
||||
u_int maxcmds,
|
||||
u_int mincmds);
|
||||
void ahd_enable_coalessing(struct ahd_softc *ahd,
|
||||
void ahd_enable_coalescing(struct ahd_softc *ahd,
|
||||
int enable);
|
||||
void ahd_pause_and_flushwork(struct ahd_softc *ahd);
|
||||
int ahd_suspend(struct ahd_softc *ahd);
|
||||
@ -1514,7 +1514,7 @@ extern uint32_t ahd_debug;
|
||||
#define AHD_SHOW_QUEUE 0x02000
|
||||
#define AHD_SHOW_TQIN 0x04000
|
||||
#define AHD_SHOW_SG 0x08000
|
||||
#define AHD_SHOW_INT_COALESSING 0x10000
|
||||
#define AHD_SHOW_INT_COALESCING 0x10000
|
||||
#define AHD_DEBUG_SEQUENCER 0x20000
|
||||
#endif
|
||||
void ahd_print_scb(struct scb *scb);
|
||||
|
@ -39,7 +39,7 @@
|
||||
*
|
||||
* $FreeBSD$
|
||||
*/
|
||||
VERSION = "$Id: //depot/aic7xxx/aic7xxx/aic79xx.reg#67 $"
|
||||
VERSION = "$Id: //depot/aic7xxx/aic7xxx/aic79xx.reg#68 $"
|
||||
|
||||
/*
|
||||
* This file is processed by the aic7xxx_asm utility for use in assembling
|
||||
@ -286,7 +286,7 @@ register HS_MAILBOX {
|
||||
address 0x00B
|
||||
access_mode RW
|
||||
mask HOST_TQINPOS 0x80 /* Boundary at either 0 or 128 */
|
||||
mask ENINT_COALESS 0x40 /* Perform interrupt coalessing */
|
||||
mask ENINT_COALESCE 0x40 /* Perform interrupt coalescing */
|
||||
}
|
||||
|
||||
/*
|
||||
@ -3704,28 +3704,28 @@ scratch_ram {
|
||||
}
|
||||
|
||||
/*
|
||||
* The maximum amount of time to wait, when interrupt coalessing
|
||||
* The maximum amount of time to wait, when interrupt coalescing
|
||||
* is enabled, before issueing a CMDCMPLT interrupt for a completed
|
||||
* command.
|
||||
*/
|
||||
INT_COALESSING_TIMER {
|
||||
INT_COALESCING_TIMER {
|
||||
size 2
|
||||
}
|
||||
|
||||
/*
|
||||
* The maximum number of commands to coaless into a single interrupt.
|
||||
* The maximum number of commands to coalesce into a single interrupt.
|
||||
* Actually the 2's complement of that value to simplify sequencer
|
||||
* code.
|
||||
*/
|
||||
INT_COALESSING_MAXCMDS {
|
||||
INT_COALESCING_MAXCMDS {
|
||||
size 1
|
||||
}
|
||||
|
||||
/*
|
||||
* The minimum number of commands still outstanding required
|
||||
* to continue coalessing (2's complement of value).
|
||||
* to continue coalescing (2's complement of value).
|
||||
*/
|
||||
INT_COALESSING_MINCMDS {
|
||||
INT_COALESCING_MINCMDS {
|
||||
size 1
|
||||
}
|
||||
|
||||
@ -3737,9 +3737,9 @@ scratch_ram {
|
||||
}
|
||||
|
||||
/*
|
||||
* The count of commands that have been coalessed.
|
||||
* The count of commands that have been coalesced.
|
||||
*/
|
||||
INT_COALESSING_CMDCOUNT {
|
||||
INT_COALESCING_CMDCOUNT {
|
||||
size 1
|
||||
}
|
||||
|
||||
|
@ -40,7 +40,7 @@
|
||||
* $FreeBSD$
|
||||
*/
|
||||
|
||||
VERSION = "$Id: //depot/aic7xxx/aic7xxx/aic79xx.seq#91 $"
|
||||
VERSION = "$Id: //depot/aic7xxx/aic7xxx/aic79xx.seq#92 $"
|
||||
PATCH_ARG_LIST = "struct ahd_softc *ahd"
|
||||
PREFIX = "ahd_"
|
||||
|
||||
@ -212,44 +212,44 @@ fill_qoutfifo_dmadone:
|
||||
qoutfifo_updated:
|
||||
/*
|
||||
* If there are more commands waiting to be dma'ed
|
||||
* to the host, always coaless. Otherwise honor the
|
||||
* to the host, always coalesce. Otherwise honor the
|
||||
* host's wishes.
|
||||
*/
|
||||
cmp COMPLETE_DMA_SCB_HEAD[1], SCB_LIST_NULL jne coaless_by_count;
|
||||
cmp COMPLETE_SCB_HEAD[1], SCB_LIST_NULL jne coaless_by_count;
|
||||
test LOCAL_HS_MAILBOX, ENINT_COALESS jz issue_cmdcmplt;
|
||||
cmp COMPLETE_DMA_SCB_HEAD[1], SCB_LIST_NULL jne coalesce_by_count;
|
||||
cmp COMPLETE_SCB_HEAD[1], SCB_LIST_NULL jne coalesce_by_count;
|
||||
test LOCAL_HS_MAILBOX, ENINT_COALESCE jz issue_cmdcmplt;
|
||||
|
||||
/*
|
||||
* If we have relatively few commands outstanding, don't
|
||||
* bother waiting for another command to complete.
|
||||
*/
|
||||
test CMDS_PENDING[1], 0xFF jnz coaless_by_count;
|
||||
test CMDS_PENDING[1], 0xFF jnz coalesce_by_count;
|
||||
/* Add -1 so that jnc means <= not just < */
|
||||
add A, -1, INT_COALESSING_MINCMDS;
|
||||
add A, -1, INT_COALESCING_MINCMDS;
|
||||
add NONE, A, CMDS_PENDING;
|
||||
jnc issue_cmdcmplt;
|
||||
|
||||
/*
|
||||
* If coalessing, only coaless up to the limit
|
||||
* If coalescing, only coalesce up to the limit
|
||||
* provided by the host driver.
|
||||
*/
|
||||
coaless_by_count:
|
||||
mov A, INT_COALESSING_MAXCMDS;
|
||||
add NONE, A, INT_COALESSING_CMDCOUNT;
|
||||
coalesce_by_count:
|
||||
mov A, INT_COALESCING_MAXCMDS;
|
||||
add NONE, A, INT_COALESCING_CMDCOUNT;
|
||||
jc issue_cmdcmplt;
|
||||
/*
|
||||
* If the timer is not currently active,
|
||||
* fire it up.
|
||||
*/
|
||||
test INTCTL, SWTMINTMASK jz return;
|
||||
bmov SWTIMER, INT_COALESSING_TIMER, 2;
|
||||
bmov SWTIMER, INT_COALESCING_TIMER, 2;
|
||||
mvi CLRSEQINTSTAT, CLRSEQ_SWTMRTO;
|
||||
or INTCTL, SWTMINTEN|SWTIMER_START;
|
||||
and INTCTL, ~SWTMINTMASK ret;
|
||||
|
||||
issue_cmdcmplt:
|
||||
mvi INTSTAT, CMDCMPLT;
|
||||
clr INT_COALESSING_CMDCOUNT;
|
||||
clr INT_COALESCING_CMDCOUNT;
|
||||
or INTCTL, SWTMINTMASK ret;
|
||||
|
||||
BEGIN_CRITICAL;
|
||||
@ -324,7 +324,7 @@ fill_qoutfifo_loop:
|
||||
mov CCSCBRAM, SCBPTR;
|
||||
or CCSCBRAM, A, SCBPTR[1];
|
||||
mov NONE, SDSCB_QOFF;
|
||||
inc INT_COALESSING_CMDCOUNT;
|
||||
inc INT_COALESCING_CMDCOUNT;
|
||||
add CMDS_PENDING, -1;
|
||||
adc CMDS_PENDING[1], -1;
|
||||
cmp SCB_NEXT_COMPLETE[1], SCB_LIST_NULL je fill_qoutfifo_done;
|
||||
|
Loading…
Reference in New Issue
Block a user