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