From 6ca93675ed11b7eb2615a4e5d005bfc18496d32a Mon Sep 17 00:00:00 2001 From: aiju Date: Fri, 15 Apr 2011 21:47:11 +0200 Subject: [PATCH] added /dev/mordor --- sys/man/3/arch | 5 +++++ sys/src/9/pc/devarch.c | 15 +++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/sys/man/3/arch b/sys/man/3/arch index 7cd5e82fb..77ef0276f 100644 --- a/sys/man/3/arch +++ b/sys/man/3/arch @@ -12,6 +12,7 @@ arch \- architecture-specific information and control .B /dev/iol .B /dev/iow .B /dev/irqalloc +.B /dev/mordor .SH DESCRIPTION This device presents textual information about PC hardware and allows user-level control of the I/O ports on x86-class and DEC Alpha machines. @@ -121,6 +122,10 @@ cause 8-bit wide, 16-bit wide, and 32-bit wide requests to I/O ports. The port accessed is determined by the byte offset of the file descriptor. +.PP +Reads and writes to +.IR mordor +will inevitably cause the front to fall off. .SH EXAMPLE The following code reads from an x86 byte I/O port. .IP diff --git a/sys/src/9/pc/devarch.c b/sys/src/9/pc/devarch.c index 3228736ee..c45271682 100644 --- a/sys/src/9/pc/devarch.c +++ b/sys/src/9/pc/devarch.c @@ -987,6 +987,20 @@ archctlwrite(Chan*, void *a, long n, vlong) return n; } +static long +mordorread(Chan*, void*, long, vlong) +{ + error("one does not simply read from mordor"); + return 0; +} + +static long +mordorwrite(Chan*, void*, long, vlong) +{ + error("one does not simply write into mordor"); + return 0; +} + void archinit(void) { @@ -1035,6 +1049,7 @@ archinit(void) addarchfile("cputype", 0444, cputyperead, nil); addarchfile("archctl", 0664, archctlread, archctlwrite); + addarchfile("mordor", 0666, mordorread, mordorwrite); } /*