LibXenon
Bare-metal Xbox 360 homebrew library
Loading...
Searching...
No Matches
xenon_gpio.c
Go to the documentation of this file.
2#include <pci/io.h>
3
4#define SMC_BASE 0xea001000
5
7{
8 int r[]={0x20,0x24,0x28,0x30,0x34,0x38,0x40,0x44,0x48};
9 int b = read32(SMC_BASE | r[reg]);
10 b &= ~clear;
11 b |= set;
12 write32(SMC_BASE | r[reg], b);
13}
14
16{
17 write32(SMC_BASE + 0x20, (read32(SMC_BASE + 0x20) &~ clear) | set);
18}
19
21{
22 write32(SMC_BASE + 0x34, (read32(SMC_BASE + 0x34) &~ clear) | set);
23}
24
u32 uint32_t
Definition: libfdt_env.h:11
void xenon_gpio_set_oe(uint32_t clear, uint32_t set)
Definition: xenon_gpio.c:15
#define SMC_BASE
Definition: xenon_gpio.c:4
void xenon_gpio_set(uint32_t clear, uint32_t set)
Definition: xenon_gpio.c:20
void xenon_gpio_control(uint32_t reg, uint32_t clear, uint32_t set)
Definition: xenon_gpio.c:6