Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/audio/sb16/dsp.c

    r4a90582 rf7b36bc  
    173173{
    174174        assert(dsp);
    175        
    176         if ((size > MAX_BUFFER_SIZE) || (size == 0) || ((size % 2) == 1))
     175        if (size > MAX_BUFFER_SIZE || size == 0 || (size % 2) == 1)
    177176                size = MAX_BUFFER_SIZE;
    178        
    179         uintptr_t pa = 0;
    180         void *buffer = NULL;
    181        
    182         int ret = dmamem_map_anonymous(size, DMAMEM_16MiB | 0x0000ffff,
    183             AS_AREA_WRITE | AS_AREA_READ, 0, &pa, &buffer);
     177        void *buffer = NULL, *pa = NULL;
     178        int ret = dmamem_map_anonymous(size, AS_AREA_WRITE | AS_AREA_READ,
     179            0, &pa, &buffer);
    184180        if (ret != EOK) {
    185181                ddf_log_error("Failed to allocate DMA buffer.");
    186182                return ENOMEM;
    187183        }
    188        
    189         ddf_log_verbose("Setup DMA buffer at %p (%zu) %zu.", buffer, pa, size);
    190         assert(pa < (1 << 24));
    191        
     184
     185        ddf_log_verbose("Setup dma buffer at %p(%p) %zu.", buffer, pa, size);
     186        assert((uintptr_t)pa < (1 << 25));
     187
    192188        /* Setup 16 bit channel */
    193         ret = setup_dma(dsp, pa, size);
     189        ret = setup_dma(dsp, (uintptr_t)pa, size);
    194190        if (ret == EOK) {
    195191                dsp->buffer.data = buffer;
     
    200196                dmamem_unmap_anonymous(buffer);
    201197        }
    202        
    203198        return ret;
    204199}
Note: See TracChangeset for help on using the changeset viewer.