Actions
Bug #7634
openddi_dma_mem_alloc fails with attributes.low > 0
Status:
New
Priority:
Normal
Assignee:
-
Category:
kernel
Start date:
2016-11-30
Due date:
% Done:
0%
Estimated time:
Difficulty:
Medium
Tags:
needs-triage
Gerrit CR:
Description
Some i915 hardware cannot handle DMA below 0xff000, so the driver would normally use DMA attributes like this:
(Note the dma_attr_lo field)
static ddi_dma_attr_t ppgt_dma_attr = { DMA_ATTR_V0, 0xff000U, /* dma_attr_addr_lo */ 0xffffffffU, /* dma_attr_addr_hi */ 0xffffffffU, /* dma_attr_count_max */ 4096, /* dma_attr_align */ 0x1fffU, /* dma_attr_burstsizes */ 1, /* dma_attr_minxfer */ 0xffffffffU, /* dma_attr_maxxfer */ 0xffffffffU, /* dma_attr_seg */ 1, /* dma_attr_sgllen, variable */ 4, /* dma_attr_granular */ DDI_DMA_FLAGERR, /* dma_attr_flags */ };
Unfortunately, ddi_dma_mem_alloc fails when dma_attr_addr_lo > 0.
Better DRM support on i915 needs that fixed.
When this is fixed, we'll undo the (temporary) fix shown in:
#7626 PPGTT setup problem
Actions