On 3/25/25 19:36, Christian König wrote: > Am 25.03.25 um 00:07 schrieb Bert Karwatzki: >> Here's the dmesg from linux-next-6.14-rc7-next20250321 (CONFIG_PCI_P2PDMA >> not set) >> The memory ranges of (afe00000000-affffffffff) or >> (3ffe00000000-3fffffffffff) are >> mentioned in neither of them. > > Ugh, next time either in two mails or as attachment please. I had to separate > the logs manually again. > > The BIOS programs multiple root PCIe resources: > [ 0.310962] [ T1] pci_bus 0000:00: root bus resource [mem > 0x000a0000-0x000dffff window] > [ 0.310963] [ T1] pci_bus 0000:00: root bus resource [mem > 0xf0000000-0xfcffffff window] > [ 0.310965] [ T1] pci_bus 0000:00: root bus resource [mem > 0x1010000000-0xffffffffff window] > > But by default all BARs end up in the 0xf0000000-0xfcffffff window and are so > accessible to the iGPU. > > So I don't see a reason why dma_addressing_limited() should return true. >
Because of if (min_not_zero(dma_get_mask(dev), dev->bus_dma_limit) < dma_get_required_mask(dev)) IIRC, dma_get_required_mask is set to 46 bits (based on previous logs) for the iGPU "[ 3.965669] [ T328] dma_addressing_limited: mask = 0xfffffffffff bus_dma_limit = 0x0 required_mask = 0x3fffffffffff [ 3.965671] [ T328] dma_addressing_limited: returning true [ 3.965672] [ T328] amdgpu 0000:08:00.0: amdgpu: amdgpu_ttm_init: calling ttm_device_init() with use_dma32 = 1" I am not sure why that is the case at the moment Balbir