From bde6d309dfafe58732ec46314a2d4c08974b62d4 Mon Sep 17 00:00:00 2001 From: Kevin Paul Herbert Date: Wed, 24 Dec 2014 18:43:20 -0800 Subject: x86: Change MMIO addr in readN(addr)/writeN(addr, val) to pointer On x86, change the type of the address parameter in read8()/read16/read32()/write8()/write16()/write32() to be a pointer, instead of unsigned long. Change-Id: Ic26dd8a72d82828b69be3c04944710681b7bd330 Signed-off-by: Kevin Paul Herbert Signed-off-by: Alexandru Gagniuc Reviewed-on: http://review.coreboot.org/7784 Tested-by: build bot (Jenkins) --- src/include/device/pci_ehci.h | 2 +- src/include/device/resource.h | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'src/include') diff --git a/src/include/device/pci_ehci.h b/src/include/device/pci_ehci.h index 4d3f74671d..bd6b9698fb 100644 --- a/src/include/device/pci_ehci.h +++ b/src/include/device/pci_ehci.h @@ -28,7 +28,7 @@ #define PCI_EHCI_CLASSCODE 0x0c0320 /* USB2.0 with EHCI controller */ pci_devfn_t pci_ehci_dbg_dev(unsigned hcd_idx); -unsigned long pci_ehci_base_regs(pci_devfn_t dev); +u8 *pci_ehci_base_regs(pci_devfn_t dev); void pci_ehci_dbg_set_port(pci_devfn_t dev, unsigned int port); void pci_ehci_dbg_enable(pci_devfn_t dev, unsigned long base); diff --git a/src/include/device/resource.h b/src/include/device/resource.h index 2d64c805af..c01540ae3a 100644 --- a/src/include/device/resource.h +++ b/src/include/device/resource.h @@ -74,4 +74,10 @@ extern void search_global_resources( #define RESOURCE_TYPE_MAX 20 extern const char *resource_type(struct resource *resource); +static inline void *res2mmio(struct resource *res, unsigned long offset, + unsigned long mask) +{ + return (void *)(uintptr_t)((res->base + offset) & ~mask); +} + #endif /* DEVICE_RESOURCE_H */ -- cgit v1.2.3