diff options
Diffstat (limited to 'sys/arch/powerpc')
-rw-r--r-- | sys/arch/powerpc/conf/files.powerpc | 2 | ||||
-rw-r--r-- | sys/arch/powerpc/mac/uni_n.c | 33 |
2 files changed, 35 insertions, 0 deletions
diff --git a/sys/arch/powerpc/conf/files.powerpc b/sys/arch/powerpc/conf/files.powerpc index 9f9a44d6f63..281893a2fbd 100644 --- a/sys/arch/powerpc/conf/files.powerpc +++ b/sys/arch/powerpc/conf/files.powerpc @@ -69,6 +69,8 @@ include "../../../dev/ofw/files.ofw" file arch/powerpc/powerpc/opendev.c ofcons | ofnet | ofdisk | ofrtc major { ofdisk = 4 } +file arch/powerpc/mac/uni_n.c ofbus + file arch/powerpc/powerpc/rd_root.c ramdisk_hooks major {rd = 17} diff --git a/sys/arch/powerpc/mac/uni_n.c b/sys/arch/powerpc/mac/uni_n.c new file mode 100644 index 00000000000..545d186c326 --- /dev/null +++ b/sys/arch/powerpc/mac/uni_n.c @@ -0,0 +1,33 @@ +/* $OpenBSD: uni_n.c,v 1.1 2000/10/16 00:18:01 drahn Exp $ */ + + +/* put BSD copyright here */ + +#include <sys/param.h> +#include <sys/device.h> +#include <machine/bus.h> + +#include <dev/ofw/openfirm.h> + +void +uni_n_config(int handle) +{ + char name[20]; + char *baseaddr; + int *ctladdr; + u_int32_t address; + if (OF_getprop(handle, "name", name, sizeof name) > 0) { + /* sanity test */ + if (!strcmp (name, "uni-n")) { + if (OF_getprop(handle, "reg", &address, + sizeof address) > 0) + { + printf("found uni-n at address %x\n", address); + baseaddr = mapiodev(address, NBPG); + ctladdr = (void*)(baseaddr + 0x20); + *ctladdr |= 0x02; + } + } + } + return; +} |