Fix mapping of a single byte area, fix reset and poweroff

git-svn-id: svn://coreboot.org/openbios/openbios-devel@166 f158a5a8-5612-0410-a976-696ce0be7e32
This commit is contained in:
Blue Swirl
2007-07-20 11:23:30 +00:00
parent 1d39ac97cb
commit bca00a2c33
4 changed files with 15 additions and 11 deletions

View File

@@ -812,7 +812,13 @@ ob_auxio_init(uint64_t base, uint64_t offset)
fword("finish-device");
}
volatile int *power_reg, *reset_reg;
volatile unsigned char *power_reg, *reset_reg;
static void
sparc32_reset_all(void)
{
*reset_reg = 1;
}
static void
ob_power_init(uint64_t base, uint64_t offset, int intr)
@@ -824,6 +830,10 @@ ob_power_init(uint64_t base, uint64_t offset, int intr)
// Not in device tree
reset_reg = map_io(base + (uint64_t)SLAVIO_RESET, RESET_REGS);
bind_func("sparc32-reset-all", sparc32_reset_all);
push_str("' sparc32-reset-all to reset-all");
fword("eval");
ob_intr(intr);
fword("finish-device");