We've been using the `VExpress_GEM5_V1` platform but it was failing on both `stable` and `develop` when adding an `IGbE_e1000` PCI device to the `makeArmSystem()` function in `FSConfig.py`. We've worked around it, but looking for the "right way" to add such a device.
For reference, the change is shown here: ``` diff --git a/configs/common/FSConfig.py b/configs/common/FSConfig.py index 6fd39a5aa..837d95982 100644 --- a/configs/common/FSConfig.py +++ b/configs/common/FSConfig.py @@ -226,6 +226,8 @@ def makeArmSystem(mem_mode, machine_type, num_cpus=1, mdesc=None, else: self.pci_ide = IdeController(disks=disks) pci_devices.append(self.pci_ide) + self.realview.ethernet = IGbE_e1000() + pci_devices.append(self.realview.ethernet) self.mem_ranges = [] size_remain = long(Addr(mdesc.mem())) ``` Specifically, the error that results during boot is regarding an address range collision once the device loads: ``` fatal: system.iobus has two ports responding within range [0x80000000:0x80020000]: system.realview.ethernet.pio system.iobridge.cpu_side_port ``` That `0x80000000:0x80020000` range corresponds exactly to the 128kB BAR0 of the `IGbE` device. The recent change [1] makes it clear that this is an issue because the `IGbE_e1000` device uses a `PciMemBar`, which overlaps with the Realview's DRAM address range, while the pre-existing `IdeController` device only uses `PciIoBar` BARs, which don't. It's possible to avoid the range collision by changing the Ethernet device's `PciMemBar` to a `PciIoBar` to keep it out of the DRAM range, but it's not yet clear if that workaround will cause other issues. What's the proper way to avoid this collision? [1] https://gem5-review.googlesource.com/c/public/gem5/+/35516 -jrb ________________________________ DISCLAIMER: This e-mail may contain ITAR controlled technical data as defined by 22 CFR 120.10 and may not be forwarded or disclosed to any Foreign Person, as defined at 22 CFR 120.16, without the prior written consent of Honeybee Robotics and the United States Department of State. _______________________________________________ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s