@ -788,7 +788,7 @@ static void es1370_transfer_audio (ES1370State *s, struct chan *d, int loop_sel,
int cnt = d - > frame_cnt > > 16 ;
int size = d - > frame_cnt & 0xffff ;
int left = ( ( size - cnt + 1 ) < < 2 ) + d - > leftover ;
int transfered = 0 ;
int transferr ed = 0 ;
int temp = audio_MIN ( max , audio_MIN ( left , csc_bytes ) ) ;
int index = d - & s - > chan [ 0 ] ;
@ -807,7 +807,7 @@ static void es1370_transfer_audio (ES1370State *s, struct chan *d, int loop_sel,
temp - = acquired ;
addr + = acquired ;
transfered + = acquired ;
transferr ed + = acquired ;
}
}
else {
@ -823,11 +823,11 @@ static void es1370_transfer_audio (ES1370State *s, struct chan *d, int loop_sel,
break ;
temp - = copied ;
addr + = copied ;
transfered + = copied ;
transferr ed + = copied ;
}
}
if ( csc_bytes = = transfered ) {
if ( csc_bytes = = transferr ed ) {
* irq = 1 ;
d - > scount = sc | ( sc < < 16 ) ;
ldebug ( " sc = %d, rate = %f \n " ,
@ -836,10 +836,10 @@ static void es1370_transfer_audio (ES1370State *s, struct chan *d, int loop_sel,
}
else {
* irq = 0 ;
d - > scount = sc | ( ( ( csc_bytes - transfered - 1 ) > > d - > shift ) < < 16 ) ;
d - > scount = sc | ( ( ( csc_bytes - transferr ed - 1 ) > > d - > shift ) < < 16 ) ;
}
cnt + = ( transfered + d - > leftover ) > > 2 ;
cnt + = ( transferr ed + d - > leftover ) > > 2 ;
if ( s - > sctl & loop_sel ) {
/* Bah, how stupid is that having a 0 represent true value?
@ -853,7 +853,7 @@ static void es1370_transfer_audio (ES1370State *s, struct chan *d, int loop_sel,
d - > frame_cnt | = cnt < < 16 ;
}
d - > leftover = ( transfered + d - > leftover ) & 3 ;
d - > leftover = ( transferr ed + d - > leftover ) & 3 ;
}
static void es1370_run_channel ( ES1370State * s , size_t chan , int free_or_avail )