Changeset 4004

Show
Ignore:
Timestamp:
08/18/07 21:02:51 (1 year ago)
Author:
hverkuil
Message:

- Give up frame after three retries.
- When the last capture/decode ends, make sure to delete the dma_timer.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • ivtv/branches/0.10/driver/ivtv-irq.c

    r4003 r4004  
    501501                        write_reg(read_reg(IVTV_REG_DMASTATUS) & 3, IVTV_REG_DMASTATUS); 
    502502                        if (itv->dma_retries == 3) { 
     503                                /* Too many retries, give up on this frame */ 
    503504                                itv->dma_retries = 0; 
     505                                s->sg_processed = s->sg_processing_size; 
    504506                        } 
    505507                        else { 
     
    561563                write_reg(read_reg(IVTV_REG_DMASTATUS) & 3, IVTV_REG_DMASTATUS); 
    562564                if (itv->dma_retries == 3) { 
     565                        /* Too many retries, give up on this frame */ 
    563566                        itv->dma_retries = 0; 
     567                        s->sg_processed = s->sg_processing_size; 
    564568                } 
    565569                else { 
  • ivtv/branches/0.10/driver/ivtv-streams.c

    r3979 r4004  
    822822        /* Set the following Interrupt mask bits for capture */ 
    823823        ivtv_set_irq_mask(itv, IVTV_IRQ_MASK_CAPTURE); 
     824        del_timer(&itv->dma_timer); 
    824825 
    825826        /* event notification (off) */ 
     
    884885 
    885886        ivtv_set_irq_mask(itv, IVTV_IRQ_MASK_DECODE); 
     887        del_timer(&itv->dma_timer); 
    886888 
    887889        clear_bit(IVTV_F_S_NEEDS_DATA, &s->s_flags);