enumeration - BAR regions unallocated after PCIe rescan on Linux -
i have fpga card attached pcie on linux system. can re-program fpga , echo 1 > /sys/bus/pci/rescan , card shows in lspci.
however bar regions aren't allocated memory:
region 0: memory @ <unassigned> (64-bit, prefetchable) [disabled] [size=32m] part 2: memory @ <unassigned> (64-bit, prefetchable) [disabled] [size=64m] i've tried various pci= flags on linux boot command line without much effect.
my suspicion bar regions big , hence linux unable find appropriately aligned range in address space map bars, since weren't nowadays @ boot.
is right theory? possible tell linux reserve space device?
i seeing in linux. there reply on xilinx forums @ http://forums.xilinx.com/t5/pci-express/incorrect-assignment-of-64bit-bar-addresses/td-p/347577 - memory spaces smallish though. seek reducing size until allocation.
most bios not allow such big memory space bar. have never seen real pcie device more 512mb mapped memory space. why want this? if think have reason that, check 1 time again whether application requires amount of memory beingness accessible @ same time or if handle paging mechanism.
your suspicion close bios allocating regions, not linux. see root port given fixed chunk of memory, if you're asking more free in chunk go unallocated.
linux enumeration fpga pci-e
No comments:
Post a Comment