[lkml]   [2011]   [Jun]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    Patch in this message
    Subject[PATCH] tentative fix for radeon on systems >4GB without hardware iommu
     On my x86_64 system with >4GB of ram and swiotlb instead of
    a hardware iommu (because I have a VIA chipset), the call
    to pci_set_dma_mask (see below) with 40bits returns an error.

    But it seems that the radeon driver is designed to have
    need_dma32 = true exactly if pci_set_dma_mask is called
    with 32 bits and false if it is called with 40 bits.

    I have read somewhere that the default are 32 bits. So if the
    call fails I suppose that need_dma32 should be set to true.

    And indeed the patch fixes the problem I have had before
    and which I had described here:,106131,115940

    linux-2.6.39-gentoo/drivers/gpu/drm/radeon/radeon_device.c.old 2011-06-03
    19:11:33.208891994 +0200
    linux-2.6.39-gentoo/drivers/gpu/drm/radeon/radeon_device.c 2011-06-03
    19:21:10.240337986 +0200
    @@ -752,6 +752,7 @@ int radeon_device_init(struct radeon_dev
    dma_bits = rdev->need_dma32 ? 32 : 40;
    r = pci_set_dma_mask(rdev->pdev, DMA_BIT_MASK(dma_bits));
    if (r) {
    + rdev->need_dma32 = true;
    printk(KERN_WARNING "radeon: No suitable DMA available.\n");

     \ /
      Last update: 2011-06-03 19:33    [W:0.021 / U:37.160 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site