summaryrefslogtreecommitdiff
path: root/src/mem/xbar.hh
diff options
context:
space:
mode:
authorNikos Nikoleris <nikos.nikoleris@arm.com>2018-06-04 16:20:47 +0100
committerNikos Nikoleris <nikos.nikoleris@arm.com>2018-06-19 14:24:25 +0000
commit6cb46ba839b2bf535e294fde9179e2aff6095814 (patch)
tree16cf3f355db2d378b0213406c84de968d51f01fc /src/mem/xbar.hh
parente27448fd0e21dbf4ef77a8bbb33a4053e31cb67d (diff)
downloadgem5-6cb46ba839b2bf535e294fde9179e2aff6095814.tar.xz
mem: Use address range to find the destination port in the xbar
Previously the xbar used the start address to lookup the port map and determine the right destination of an incoming packet. This change uses the full address range to correctly determine the right master. Change-Id: I5118712c43ae65aba64e71bf030bca5c99770bdd Reviewed-on: https://gem5-review.googlesource.com/11117 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com>
Diffstat (limited to 'src/mem/xbar.hh')
-rw-r--r--src/mem/xbar.hh11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/mem/xbar.hh b/src/mem/xbar.hh
index 2b7e7ed48..abe2a1096 100644
--- a/src/mem/xbar.hh
+++ b/src/mem/xbar.hh
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2015 ARM Limited
+ * Copyright (c) 2011-2015, 2018 ARM Limited
* All rights reserved
*
* The license below extends only to copyright in the software and shall
@@ -342,13 +342,14 @@ class BaseXBar : public MemObject
*/
virtual void recvRangeChange(PortID master_port_id);
- /** Find which port connected to this crossbar (if any) should be
- * given a packet with this address.
+ /**
+ * Find which port connected to this crossbar (if any) should be
+ * given a packet with this address range.
*
- * @param addr Address to find port for.
+ * @param addr_range Address range to find port for.
* @return id of port that the packet should be sent out of.
*/
- PortID findPort(Addr addr);
+ PortID findPort(AddrRange addr_range);
/**
* Return the address ranges the crossbar is responsible for.