Browse Source

Plan 9 from Bell Labs 2006-12-28

David du Colombier 17 years ago
parent
commit
1f1c2e58ed

+ 5 - 6
dist/replica/_plan9.db

@@ -7639,7 +7639,7 @@ sys/man/4/tapefs - 664 sys sys 1140965924 1861
 sys/man/4/telco - 664 sys sys 1015024814 4359
 sys/man/4/u9fs - 664 sys sys 1043769139 4748
 sys/man/4/upasfs - 664 sys sys 1034348505 6212
-sys/man/4/usb - 664 sys sys 1164149417 4643
+sys/man/4/usb - 664 sys sys 1167253879 4649
 sys/man/4/usbd - 664 sys sys 1164149441 712
 sys/man/4/vacfs - 664 sys sys 1084333062 1545
 sys/man/4/webcookies - 664 sys sys 1019828742 3525
@@ -7743,7 +7743,7 @@ sys/man/8/nfsserver - 664 sys sys 1163208425 3587
 sys/man/8/pcmcia - 664 sys sys 944959679 408
 sys/man/8/pem - 664 sys sys 1060263669 1189
 sys/man/8/ping - 664 sys sys 1139667147 3489
-sys/man/8/plan9.ini - 664 sys sys 1161298588 22787
+sys/man/8/plan9.ini - 664 sys sys 1167276434 22689
 sys/man/8/pop3 - 664 sys sys 1063854676 2720
 sys/man/8/ppp - 664 sys sys 1125530075 4414
 sys/man/8/prep - 664 sys sys 1152729153 14013
@@ -14113,12 +14113,11 @@ sys/src/cmd/usb/lib/setup.c - 664 sys sys 1165044747 1936
 sys/src/cmd/usb/lib/usb.h - 664 sys sys 1165044715 7066
 sys/src/cmd/usb/lib/util.c - 664 sys sys 1091204978 523
 sys/src/cmd/usb/misc - 20000000775 sys sys 1091282306 0
-sys/src/cmd/usb/misc/mkfile - 664 sys sys 1091205037 274
+sys/src/cmd/usb/misc/mkfile - 664 sys sys 1167255850 374
 sys/src/cmd/usb/misc/usbmouse.c - 664 sys sys 1163722035 3603
-sys/src/cmd/usb/misc/usbprint - 775 sys sys 1164149479 270
+sys/src/cmd/usb/misc/usbprint - 775 sys sys 1167253831 314
+sys/src/cmd/usb/misc/usbprobe - 775 sys sys 1167253836 173
 sys/src/cmd/usb/mkfile - 664 sys sys 1091327562 354
-sys/src/cmd/usb/mouse - 20000000775 sys sys 1091204964 0
-sys/src/cmd/usb/printer - 20000000775 sys sys 1091204964 0
 sys/src/cmd/usb/usbd - 20000000775 sys sys 1091204979 0
 sys/src/cmd/usb/usbd/dat.h - 664 sys sys 1091204979 675
 sys/src/cmd/usb/usbd/fns.h - 664 sys sys 1091204979 495

+ 5 - 6
dist/replica/plan9.db

@@ -7639,7 +7639,7 @@ sys/man/4/tapefs - 664 sys sys 1140965924 1861
 sys/man/4/telco - 664 sys sys 1015024814 4359
 sys/man/4/u9fs - 664 sys sys 1043769139 4748
 sys/man/4/upasfs - 664 sys sys 1034348505 6212
-sys/man/4/usb - 664 sys sys 1164149417 4643
+sys/man/4/usb - 664 sys sys 1167253879 4649
 sys/man/4/usbd - 664 sys sys 1164149441 712
 sys/man/4/vacfs - 664 sys sys 1084333062 1545
 sys/man/4/webcookies - 664 sys sys 1019828742 3525
@@ -7743,7 +7743,7 @@ sys/man/8/nfsserver - 664 sys sys 1163208425 3587
 sys/man/8/pcmcia - 664 sys sys 944959679 408
 sys/man/8/pem - 664 sys sys 1060263669 1189
 sys/man/8/ping - 664 sys sys 1139667147 3489
-sys/man/8/plan9.ini - 664 sys sys 1161298588 22787
+sys/man/8/plan9.ini - 664 sys sys 1167276434 22689
 sys/man/8/pop3 - 664 sys sys 1063854676 2720
 sys/man/8/ppp - 664 sys sys 1125530075 4414
 sys/man/8/prep - 664 sys sys 1152729153 14013
@@ -14113,12 +14113,11 @@ sys/src/cmd/usb/lib/setup.c - 664 sys sys 1165044747 1936
 sys/src/cmd/usb/lib/usb.h - 664 sys sys 1165044715 7066
 sys/src/cmd/usb/lib/util.c - 664 sys sys 1091204978 523
 sys/src/cmd/usb/misc - 20000000775 sys sys 1091282306 0
-sys/src/cmd/usb/misc/mkfile - 664 sys sys 1091205037 274
+sys/src/cmd/usb/misc/mkfile - 664 sys sys 1167255850 374
 sys/src/cmd/usb/misc/usbmouse.c - 664 sys sys 1163722035 3603
-sys/src/cmd/usb/misc/usbprint - 775 sys sys 1164149479 270
+sys/src/cmd/usb/misc/usbprint - 775 sys sys 1167253831 314
+sys/src/cmd/usb/misc/usbprobe - 775 sys sys 1167253836 173
 sys/src/cmd/usb/mkfile - 664 sys sys 1091327562 354
-sys/src/cmd/usb/mouse - 20000000775 sys sys 1091204964 0
-sys/src/cmd/usb/printer - 20000000775 sys sys 1091204964 0
 sys/src/cmd/usb/usbd - 20000000775 sys sys 1091204979 0
 sys/src/cmd/usb/usbd/dat.h - 664 sys sys 1091204979 675
 sys/src/cmd/usb/usbd/fns.h - 664 sys sys 1091204979 495

+ 8 - 0
dist/replica/plan9.log

@@ -62341,3 +62341,11 @@
 1167080405 17 c 386/bin/tlssrv - 775 sys sys 1167079192 199331
 1167080405 18 c 386/lib/libmp.a - 664 sys sys 1167079193 79978
 1167114605 0 a sys/doc/index.html - 664 sys sys 1019916696 6906
+1167251406 0 d sys/src/cmd/usb/printer - 20000000775 sys sys 1091204964 0
+1167251406 1 d sys/src/cmd/usb/mouse - 20000000775 sys sys 1091204964 0
+1167255005 0 c sys/man/4/usb - 664 sys sys 1167253879 4649
+1167255005 1 c sys/src/cmd/usb/misc/mkfile - 664 sys sys 1167253821 396
+1167255005 2 c sys/src/cmd/usb/misc/usbprint - 775 sys sys 1167253831 314
+1167255005 3 a sys/src/cmd/usb/misc/usbprobe - 775 sys sys 1167253836 173
+1167256805 0 c sys/src/cmd/usb/misc/mkfile - 664 sys sys 1167255850 374
+1167276606 0 c sys/man/8/plan9.ini - 664 sys sys 1167276434 22689

+ 25 - 15
sys/man/4/usb

@@ -2,7 +2,7 @@
 .SH NAME
 usbmouse,
 usbaudio,
-usbprinter
+usbprint
 \- Universal Serial Bus user level device drivers
 .SH SYNOPSIS
 .B usb/usbmouse
@@ -33,7 +33,7 @@ usbprinter
 .I n
 ]
 .PP
-.B usb/usbprinter
+.B usb/usbprint
 .SH DESCRIPTION
 These programs implement support for specific USB device classes.
 They should be run after
@@ -148,20 +148,22 @@ The data format is little endian, samples ordered primarily by time and
 secondarily by channel.  Samples occupy the minimum integral number
 of bytes.  Read and write operations of arbitrary size are allowed.
 .SS Printers
-.I Usbprinter
-is a script that mounts a usb printer on
+.I Usbprint
+is a script that mounts a USB printer on
 .BR /dev/lp .
 .SH EXAMPLE
 .LP
 To use a USB mouse and audio device, put the following in your profile
-(replace x by your favorite initial volume setting):
+(replace
+.I x
+with your favorite initial volume setting):
 .IP
 .EX
 .ta 6n
 if (test -r '#U'/usb0) {
 	usb/usbd
 	usb/usbmouse -a 2
-	usb/usbaudio -v x
+	usb/usbaudio -v \fIx\fP
 	usb/usbprint
 }
 .EE
@@ -175,29 +177,37 @@ in your profile.
 .IR usb (3),
 .IR usbd (4)
 .SH BUGS
-Usbaudio only works for certain audio devices.  This is the list of devices known to work with usbaudio:
+Usbaudio only works for certain audio devices.
+This is the list of devices known to work with usbaudio:
 .IP
 .RS
 .TP
 Xitel AN1
-Output only.  Marginally enough to drive headphones.  Has mute, volume, bass, treble controls.
+Output only.  Marginally enough to drive headphones.
+Has mute, volume, bass, treble controls.
 .TP
 Philips USB speakers, model DSS 370/17
-Usbaudio acts on the volume + and - buttons.
+Usbaudio acts on the volume
+.L +
+and
+.L -
+buttons.
 .TP
 Edirol UA-3
 Playback and record.  Playback only at 44.1 KHz, record at 32, 44.1 or 48 KHz.
-Playback volume control and mute control.  The device only has analog (slider controlled)
+Playback volume control and mute control.
+The device only has analog (slider controlled)
 input volume control.
 .TP
 Edirol UA-1X
-Playback and record.  Playback only at 32, 44.1 or 48 KHz, record at 8, 16, 22.05, 32, 44.1 or 48 KHz.
-Playback volume control and mute control.
-(haven't tested recording, but I believe it'll work)
+Playback and record.
+Playback only at 32, 44.1 or 48 KHz, record at 8, 16, 22.05, 32, 44.1 or 48 KHz.
+Playback volume control and mute control
+(haven't tested recording, but I believe it'll work).
 .TP
 Xitel Pro HiFi-Link
-Playback only.  48 KHz only.  There is a volume control but it isn't connected
-to the output, so does nothing.
+Playback only.  48 KHz only.
+There is a volume control but it isn't connected to the output, so does nothing.
 .TP
 Onkyo WAVIO series MA-500U
 Includes three optical digital interfaces, two analog, and an

+ 3 - 6
sys/man/8/plan9.ini

@@ -582,21 +582,18 @@ consults only the first table,
 .B old
 only the second.
 .SS \fL*norealmode=\fP
-The kernel switches the processor to 16-bit real mode 
+The PC kernel switches the processor to 16-bit real mode 
 to run BIOS interrupts, for example to find the memory map or to enable VESA. 
 This variable disables such switches.
 .SS \fL*noe820scan=\fP
-When available, the kernel uses the BIOS E820 memory map
+When available, the PC kernel uses the BIOS E820 memory map
 to size memory.  This variable disables the scan.
 .SS \fL*maxmem=value\fP
 This defines the maximum physical address that the system will scan when sizing memory.
-By default the operating system will scan up to 3.75 gigabytes
+By default the PC operating system will scan up to 3.75 gigabytes
 (0xF0000000, the base of kernel virtual address space), but setting
 .B *maxmem
 will limit the scan.
-.\" If the system has more than 3.75 gigabytes, you must set
-.\" .B *maxmem
-.\" for the kernel to find it.
 .B *maxmem
 must be less than 3.75 gigabytes.
 This variable is not consulted if using the E820 memory map.

+ 7 - 2
sys/src/cmd/usb/misc/mkfile

@@ -1,9 +1,8 @@
 </$objtype/mkfile
 
 TARG=\
-#	readir\
 	usbmouse\
-#	usbprobe\
+#	readir\
 
 HFILES=\
 	../lib/usb.h\
@@ -15,6 +14,7 @@ UPDATE=\
 	${OFILES:%.$O=%.c}\
 	mkfile\
 	usbprint\
+	usbprobe\
 
 BIN=/$objtype/bin/usb
 </sys/src/cmd/mkmany
@@ -25,3 +25,8 @@ $LIB:
 	cd ../lib
 	mk install
 	mk clean
+
+$BIN/usbprint: usbprint
+	cp -x $newprereq $target
+$BIN/usbprobe: usbprobe
+	cp -x $newprereq $target

+ 9 - 10
sys/src/cmd/usb/misc/usbprint

@@ -1,13 +1,12 @@
 #!/bin/rc
-
-for(c in `{seq 16}){
-	for(i in `{seq 20}){
-		if (grep -s 'Enabled 0x020107' '#U'/usb$c/$i/status >[2]/dev/null){
-			echo -n 'ep 2 bulk w 64 32' >'#U'/usb$c/$i/ctl
-			aux/stub /dev/lp
-			bind '#U'/usb$c/$i/ep2data /dev/lp
-			exit ''
-		}
+# usbprint - bind usb printer endpoint to /dev/lp
+rfork e
+for (id in /dev/usb[0-9]*/[0-9]*)
+	if (grep -s 'Enabled 0x020107' $id/status >[2]/dev/null){
+		echo -n 'ep 2 bulk w 64 32' >$id/ctl
+		aux/stub /dev/lp
+		bind $id/ep2data /dev/lp
+		exit ''
 	}
-}
+echo $0: no usb printer found >[1=2]
 exit 'no printer'

+ 8 - 0
sys/src/cmd/usb/misc/usbprobe

@@ -0,0 +1,8 @@
+#!/bin/rc
+# list all usb devices
+rfork e
+for (id in /dev/usb[0-9]*/[0-9]*/status)
+	if (test -e $id) {
+		echo $id | sed 's;/status$;:	;' | tr -d '\12'
+		grep '^[A-Z]' $id
+	}