summary refs log tree commit diff
path: root/vm_control
diff options
context:
space:
mode:
authorTomasz Jeznach <tjeznach@chromium.org>2020-04-29 12:58:11 -0700
committerCommit Bot <commit-bot@chromium.org>2020-05-01 05:49:39 +0000
commitda0e0f939b731d89d067fb9382bbdc05e47f4067 (patch)
tree1233cb599fb9aa82c004f77a42692a0fd8728b62 /vm_control
parenta4dd4af5de2d260b307eff873f5c5eb194f4ba57 (diff)
downloadcrosvm-da0e0f939b731d89d067fb9382bbdc05e47f4067.tar
crosvm-da0e0f939b731d89d067fb9382bbdc05e47f4067.tar.gz
crosvm-da0e0f939b731d89d067fb9382bbdc05e47f4067.tar.bz2
crosvm-da0e0f939b731d89d067fb9382bbdc05e47f4067.tar.lz
crosvm-da0e0f939b731d89d067fb9382bbdc05e47f4067.tar.xz
crosvm-da0e0f939b731d89d067fb9382bbdc05e47f4067.tar.zst
crosvm-da0e0f939b731d89d067fb9382bbdc05e47f4067.zip
devices: pci: refactor PCI devices to use PciAddress.
Simple refactor of PCI device addressing to use
PciAddress type providing bus:device.function number.

BUG=None
TEST=build_test & tast run crostini.Sanity

Change-Id: I7755ad6b31aa8c882475cd8212630e1cc86ef49e
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2172766
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Tomasz Jeznach <tjeznach@chromium.org>
Diffstat (limited to 'vm_control')
-rw-r--r--vm_control/src/lib.rs18
1 files changed, 15 insertions, 3 deletions
diff --git a/vm_control/src/lib.rs b/vm_control/src/lib.rs
index 9e78be2..a8535f8 100644
--- a/vm_control/src/lib.rs
+++ b/vm_control/src/lib.rs
@@ -550,11 +550,23 @@ fn register_memory(
     };
 
     let addr = match allocation {
-        Some((Alloc::PciBar { bus, dev, bar }, offset)) => {
+        Some((
+            Alloc::PciBar {
+                bus,
+                dev,
+                func,
+                bar,
+            },
+            offset,
+        )) => {
             match allocator
                 .mmio_allocator(MmioType::High)
-                .get(&Alloc::PciBar { bus, dev, bar })
-            {
+                .get(&Alloc::PciBar {
+                    bus,
+                    dev,
+                    func,
+                    bar,
+                }) {
                 Some((start_addr, length, _)) => {
                     let address = *start_addr + offset;
                     let range = *start_addr..*start_addr + *length;