LibXenon
Bare-metal Xbox 360 homebrew library
Loading...
Searching...
No Matches
io.h
Go to the documentation of this file.
1#ifndef __PCI_IO_H
2#define __PCI_IO_H
3
4#include <stdint.h>
5
6static inline __attribute__((always_inline)) uint32_t read32(long addr)
7{
8 return __builtin_bswap32(*(volatile uint32_t*)addr);
9}
10
11static inline __attribute__((always_inline)) uint32_t read32n(long addr)
12{
13 return *(volatile uint32_t*)addr;
14}
15
16static inline __attribute__((always_inline)) void write32(long addr, uint32_t val)
17{
18 *(volatile uint32_t*)addr = __builtin_bswap32(val);
19}
20
21static inline __attribute__((always_inline)) void write32n(long addr, uint32_t val)
22{
23 *(volatile uint32_t*)addr = val;
24}
25
26#endif
static uint32_t val
Definition: io.h:17
u32 uint32_t
Definition: libfdt_env.h:11
unsigned int __mf_uintptr_t __attribute__((__mode__(__pointer__)))
Definition: mf-runtime.h:34