diff --git a/sys/arch/macppc/conf/GENERIC b/sys/arch/macppc/conf/GENERIC index cae13000d16e..565228e21623 100644 --- a/sys/arch/macppc/conf/GENERIC +++ b/sys/arch/macppc/conf/GENERIC @@ -1,4 +1,4 @@ -# $NetBSD: GENERIC,v 1.21 1998/12/28 00:50:44 tsubai Exp $ +# $NetBSD: GENERIC,v 1.22 1998/12/29 04:40:19 tsubai Exp $ # # POWERMAC config file # @@ -87,6 +87,7 @@ options NMBCLUSTERS=1024 # Warning, these may compile large string tables into the kernel! options PCIVERBOSE # verbose PCI device autoconfig messages options SCSIVERBOSE # human readable SCSI error messages +options USBVERBOSE # verbose USB device autoconfig messages # wscons options #options WSEMUL_SUN # sun terminal emulation @@ -158,6 +159,33 @@ cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown +# PCI USB controllers +ohci* at pci? # Open Host Controller + +# USB bus support +usb* at ohci? + +# USB Hubs +uhub* at usb? +uhub* at uhub? port ? configuration ? interface ? + +# USB Mice +ums* at uhub? port ? configuration ? interface ? +wsmouse* at ums? + +# USB Keyboards +ukbd* at uhub? port ? configuration ? interface ? +wskbd* at ukbd? console ? + +# USB Generic HID devices +uhid* at uhub? port ? configuration ? interface ? + +# USB Printer +ulpt* at uhub? port ? configuration ? interface ? + +# USB Generic driver +ugen* at uhub? port ? configuration ? interface ? + pseudo-device vnd 4 # disk-like interface to files pseudo-device ccd 4 # concatenated/striped disk devices #pseudo-device raid 4 # RAIDframe disk driver diff --git a/sys/arch/macppc/conf/files.macppc b/sys/arch/macppc/conf/files.macppc index 48e58c89450b..663d6e8f4592 100644 --- a/sys/arch/macppc/conf/files.macppc +++ b/sys/arch/macppc/conf/files.macppc @@ -1,4 +1,4 @@ -# $NetBSD: files.macppc,v 1.17 1998/12/10 20:10:03 tsubai Exp $ +# $NetBSD: files.macppc,v 1.18 1998/12/29 04:40:19 tsubai Exp $ # # macppc-specific configuration info @@ -93,6 +93,10 @@ attach mc at obio file arch/macppc/dev/if_mc.c mc file arch/macppc/dev/am79c950.c mc +device bm: ifnet, ether, arp +attach bm at obio +file arch/macppc/dev/if_bm.c bm + device zsc {channel = -1} attach zsc at obio file arch/macppc/dev/zs.c zsc needs-flag @@ -114,7 +118,7 @@ file arch/macppc/dev/aed.c aed needs-flag device akbd: wskbddev attach akbd at adb -file arch/macppc/dev/akbd.c akbd +file arch/macppc/dev/akbd.c akbd needs-flag device ams: wsmousedev attach ams at adb @@ -145,3 +149,6 @@ file arch/macppc/dev/ite.c ite needs-flag device macofcons: tty attach macofcons at pci file arch/macppc/dev/ofcons.c macofcons needs-flag + +include "dev/usb/files.usb" +defopt PCKBD_LAYOUT diff --git a/sys/arch/macppc/macppc/conf.c b/sys/arch/macppc/macppc/conf.c index 573cd35b302c..ec2973cb80ce 100644 --- a/sys/arch/macppc/macppc/conf.c +++ b/sys/arch/macppc/macppc/conf.c @@ -1,4 +1,4 @@ -/* $NetBSD: conf.c,v 1.12 1998/12/10 20:10:03 tsubai Exp $ */ +/* $NetBSD: conf.c,v 1.13 1998/12/29 04:43:24 tsubai Exp $ */ /* * Copyright (C) 1995, 1996 Wolfgang Solfrank. @@ -74,6 +74,12 @@ struct bdevsw bdevsw[] = { }; int nblkdev = sizeof bdevsw / sizeof bdevsw[0]; +/* open, close, write, ioctl */ +#define cdev_lpt_init(c,n) { \ + dev_init(c,n,open), dev_init(c,n,close), (dev_type_read((*))) enodev, \ + dev_init(c,n,write), dev_init(c,n,ioctl), (dev_type_stop((*))) enodev, \ + 0, seltrue, (dev_type_mmap((*))) enodev } + cdev_decl(cn); cdev_decl(ctty); #define mmread mmrw @@ -125,6 +131,15 @@ cdev_decl(wskbd); #include "wsmouse.h" cdev_decl(wsmouse); +#include "usb.h" +cdev_decl(usb); +#include "uhid.h" +cdev_decl(uhid); +#include "ugen.h" +cdev_decl(ugen); +#include "ulpt.h" +cdev_decl(ulpt); + struct cdevsw cdevsw[] = { cdev_cn_init(1,cn), /* 0: virtual console */ cdev_ctty_init(1,ctty), /* 1: control tty */ @@ -165,6 +180,10 @@ struct cdevsw cdevsw[] = { cdev_mouse_init(NWSKBD,wskbd), /* 36: wskbd */ cdev_mouse_init(NWSMOUSE,wsmouse), /* 37: wsmouse */ cdev_disk_init(NRAID,raid), /* 38: RAIDframe disk driver */ + cdev_usb_init(NUSB,usb), /* 39: USB controller */ + cdev_usbdev_init(NUHID,uhid), /* 40: USB generic HID */ + cdev_lpt_init(NULPT,ulpt), /* 41: USB printer */ + cdev_ugen_init(NUGEN,ugen), /* 42: USB generic driver */ }; int nchrdev = sizeof cdevsw / sizeof cdevsw[0]; @@ -238,6 +257,10 @@ static int chrtoblktbl[] = { /* 36 */ NODEV, /* 37 */ NODEV, /* 38 */ 12, + /* 39 */ NODEV, + /* 40 */ NODEV, + /* 41 */ NODEV, + /* 42 */ NODEV, }; /*