1 // Copyright 2018 The Fuchsia Authors
2 //
3 // Use of this source code is governed by a MIT-style
4 // license that can be found in the LICENSE file or at
5 // https://opensource.org/licenses/MIT
6 
7 #include <dev/address_provider/address_provider.h>
8 #include <lib/pci/pio.h>
9 
Translate(const uint8_t bus_id,const uint8_t device_id,const uint8_t function_id,vaddr_t * virt,paddr_t * phys)10 zx_status_t PioPcieAddressProvider::Translate(const uint8_t bus_id,
11                                               const uint8_t device_id,
12                                               const uint8_t function_id,
13                                               vaddr_t* virt,
14                                               paddr_t* phys) {
15     *virt = Pci::PciBdfAddr(bus_id, device_id, function_id, 0);
16     return ZX_OK;
17 }
18 
CreateConfig(const uintptr_t addr)19 fbl::RefPtr<PciConfig> PioPcieAddressProvider::CreateConfig(const uintptr_t addr) {
20     return PciConfig::Create(addr, PciAddrSpace::PIO);
21 }
22