summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2011-05-09 10:59:22 -0700
committerRichard Henderson <rth@twiddle.net>2011-05-09 10:59:22 -0700
commit6248b55bfa57db9576a33be128da89f271a51da4 (patch)
tree0d233aab4d849cc96641723749b39ff8c440ec56
parent1a4a2299f36eb26c482319bc66f4cee7cb144af1 (diff)
downloadqemu-palcode-6248b55bfa57db9576a33be128da89f271a51da4.zip
qemu-palcode-6248b55bfa57db9576a33be128da89f271a51da4.tar.gz
qemu-palcode-6248b55bfa57db9576a33be128da89f271a51da4.tar.bz2
Add in/out functions for 16 and 32-bit quantities.
-rw-r--r--protos.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/protos.h b/protos.h
index 3e8d179..425cc9d 100644
--- a/protos.h
+++ b/protos.h
@@ -162,11 +162,31 @@ static inline uint8_t inb(unsigned long port)
return *(volatile uint8_t *)(pci_io_base + port);
}
+static inline uint16_t inw(unsigned long port)
+{
+ return *(volatile uint16_t *)(pci_io_base + port);
+}
+
+static inline uint32_t inl(unsigned long port)
+{
+ return *(volatile uint32_t *)(pci_io_base + port);
+}
+
static inline void outb(uint8_t val, unsigned long port)
{
*(volatile uint8_t *)(pci_io_base + port) = val;
}
+static inline void outw(uint16_t val, unsigned long port)
+{
+ *(volatile uint16_t *)(pci_io_base + port) = val;
+}
+
+static inline void outl(uint32_t val, unsigned long port)
+{
+ *(volatile uint32_t *)(pci_io_base + port) = val;
+}
+
/*
* CRB functions
*/