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 -- [email protected]
To unsubscribe send an email to [email protected]
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s