Author: blueswirl Date: 2007-05-07 22:02:01 +0200 (Mon, 07 May 2007) New Revision: 145
Modified: openbios-devel/arch/sparc32/tree.fs openbios-devel/drivers/sbus.c Log: Fix power-management location for SS-10
Modified: openbios-devel/arch/sparc32/tree.fs =================================================================== --- openbios-devel/arch/sparc32/tree.fs 2007-05-07 17:21:15 UTC (rev 144) +++ openbios-devel/arch/sparc32/tree.fs 2007-05-07 20:02:01 UTC (rev 145) @@ -117,13 +117,6 @@ h# 26 encode-int 0 encode-int encode+ " intr" property finish-device
-" /iommu/sbus" find-device -new-device - " power-management" device-name - h# 5 encode-int h# 0a000000 encode-int encode+ h# 00000010 encode-int encode+ " reg" property -finish-device - - \ obio (on-board IO) " /" find-device new-device
Modified: openbios-devel/drivers/sbus.c =================================================================== --- openbios-devel/drivers/sbus.c 2007-05-07 17:21:15 UTC (rev 144) +++ openbios-devel/drivers/sbus.c 2007-05-07 20:02:01 UTC (rev 145) @@ -20,6 +20,8 @@
#define SBUS_REGS 0x28 #define SBUS_SLOTS 16 +#define POWER_REGS 0x10 +#define POWER_OFFSET 0x0a000000
static void ob_sbus_node_init(unsigned long bus, unsigned long base) @@ -271,6 +273,30 @@ }
static void +ob_power_init(unsigned int slot, unsigned long base) +{ + push_str("/iommu/sbus"); + fword("find-device"); + fword("new-device"); + + push_str("power-management"); + fword("device-name"); + + PUSH(slot); + fword("encode-int"); + PUSH(base); + fword("encode-int"); + fword("encode+"); + PUSH(POWER_REGS); + fword("encode-int"); + fword("encode+"); + push_str("reg"); + fword("property"); + + fword("finish-device"); +} + +static void ob_macio_init(unsigned int slot, unsigned long base, unsigned long offset) { // All devices were integrated to NCR89C100, see @@ -289,7 +315,7 @@ //ob_bpp_init(base);
// Power management - //ob_power_init(base); + ob_power_init(slot, POWER_OFFSET); }
static void