summaryrefslogtreecommitdiff
path: root/src/include/device/resource.h
diff options
context:
space:
mode:
authorKevin Paul Herbert <kph@meraki.net>2014-12-24 18:43:20 -0800
committerAlexandru Gagniuc <mr.nuke.me@gmail.com>2015-02-15 08:50:22 +0100
commitbde6d309dfafe58732ec46314a2d4c08974b62d4 (patch)
tree17ba00565487ddfbb5759c96adfbb3fffe2a4550 /src/include/device/resource.h
parent4b10dec1a66122b515b2191f823d7fd379ec655f (diff)
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 <kph@meraki.net> Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Reviewed-on: http://review.coreboot.org/7784 Tested-by: build bot (Jenkins)
Diffstat (limited to 'src/include/device/resource.h')
-rw-r--r--src/include/device/resource.h6
1 files changed, 6 insertions, 0 deletions
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 */