You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(135) |
Nov
(123) |
Dec
(83) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(244) |
Feb
(72) |
Mar
(221) |
Apr
(91) |
May
(104) |
Jun
(93) |
Jul
(78) |
Aug
(1) |
Sep
(1) |
Oct
(29) |
Nov
(98) |
Dec
(20) |
2003 |
Jan
|
Feb
(21) |
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
(18) |
Sep
(18) |
Oct
(23) |
Nov
(12) |
Dec
(6) |
2004 |
Jan
(2) |
Feb
(32) |
Mar
|
Apr
(12) |
May
(11) |
Jun
(11) |
Jul
|
Aug
(9) |
Sep
|
Oct
(15) |
Nov
|
Dec
|
2005 |
Jan
|
Feb
(2) |
Mar
(11) |
Apr
(6) |
May
(1) |
Jun
(9) |
Jul
(7) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2006 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2007 |
Jan
|
Feb
(2) |
Mar
|
Apr
(25) |
May
(2) |
Jun
|
Jul
(5) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2009 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(13) |
Oct
|
Nov
(2) |
Dec
(2) |
2011 |
Jan
|
Feb
|
Mar
(10) |
Apr
(10) |
May
(1) |
Jun
(6) |
Jul
|
Aug
(2) |
Sep
(5) |
Oct
|
Nov
|
Dec
|
From: johann d. <jd...@us...> - 2002-01-30 00:08:46
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce In directory usw-pr-cvs1:/tmp/cvs-serv26165/iforce Modified Files: Makefile Added Files: Config.in Log Message: Changed the config for the iforce driver. Much less twisted, now. --- NEW FILE: Config.in --- # # I-Force driver configuration # dep_tristate 'I-Force devices' CONFIG_JOYSTICK_IFORCE $CONFIG_INPUT $CONFIG_INPUT_JOYSTICK if [ "$CONFIG_JOYSTICK_IFORCE" != "n" ]; then dep_bool ' I-Force USB joysticks and wheels' CONFIG_JOYSTICK_IFORCE_USB $CONFIG_USB dep_bool ' I-Force Serial joysticks and wheels' CONFIG_JOYSTICK_IFORCE_232 $CONFIG_SERIO fi Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce/Makefile,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- Makefile 2002/01/29 23:16:02 1.2 +++ Makefile 2002/01/30 00:08:41 1.3 @@ -4,39 +4,17 @@ O_TARGET := iforce-drv.o -# I-Force may need both USB and RS-232 - -CONFIG_JOYSTICK_IFORCE := n - -# Enable iforce if at least one of iforce-rs232 or iforce-usb is enabled -ifeq ($(CONFIG_JOYSTICK_IFORCE_232),y) - CONFIG_JOYSTICK_IFORCE := y -endif - -ifeq ($(CONFIG_JOYSTICK_IFORCE_USB),y) - CONFIG_JOYSTICK_IFORCE := y -endif - -# Compile as module if at least one of the choices is m -ifeq ($(CONFIG_JOYSTICK_IFORCE_232),m) - CONFIG_JOYSTICK_IFORCE := m -endif - -ifeq ($(CONFIG_JOYSTICK_IFORCE_USB),m) - CONFIG_JOYSTICK_IFORCE := m -endif - obj-$(CONFIG_JOYSTICK_IFORCE) += iforce.o include $(TOPDIR)/Rules.make IFORCEOBJS = iforce-ff.o iforce-main.o iforce-packets.o -ifneq ($(CONFIG_JOYSTICK_IFORCE_232),n) +ifeq ($(CONFIG_JOYSTICK_IFORCE_232),y) IFORCEOBJS += iforce-serio.o endif -ifneq ($(CONFIG_JOYSTICK_IFORCE_USB),n) +ifeq ($(CONFIG_JOYSTICK_IFORCE_USB),y) IFORCEOBJS += iforce-usb.o endif |
From: johann d. <jd...@us...> - 2002-01-30 00:08:46
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick In directory usw-pr-cvs1:/tmp/cvs-serv26165 Modified Files: Config.in Makefile Log Message: Changed the config for the iforce driver. Much less twisted, now. Index: Config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/Config.in,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- Config.in 2002/01/23 06:55:18 1.2 +++ Config.in 2002/01/30 00:08:41 1.3 @@ -14,9 +14,7 @@ dep_tristate ' InterAct digital joysticks and gamepads' CONFIG_JOYSTICK_INTERACT $CONFIG_INPUT $CONFIG_INPUT_JOYSTICK $CONFIG_GAMEPORT dep_tristate ' Microsoft SideWinder digital joysticks and gamepads' CONFIG_JOYSTICK_SIDEWINDER $CONFIG_INPUT $CONFIG_INPUT_JOYSTICK $CONFIG_GAMEPORT dep_tristate ' ThrustMaster DirectConnect joysticks and gamepads' CONFIG_JOYSTICK_TMDC $CONFIG_INPUT $CONFIG_INPUT_JOYSTICK $CONFIG_GAMEPORT - -dep_tristate ' I-Force USB joysticks and wheels' CONFIG_JOYSTICK_IFORCE_USB $CONFIG_INPUT $CONFIG_INPUT_JOYSTICK $CONFIG_USB -dep_tristate ' I-Force Serial joysticks and wheels' CONFIG_JOYSTICK_IFORCE_232 $CONFIG_INPUT $CONFIG_INPUT_JOYSTICK $CONFIG_SERIO +source drivers/input/joystick/iforce/Config.in dep_tristate ' Logitech WingMan Warrior joystick' CONFIG_JOYSTICK_WARRIOR $CONFIG_INPUT $CONFIG_INPUT_JOYSTICK $CONFIG_SERIO dep_tristate ' LogiCad3d Magellan/SpaceMouse 6dof controllers' CONFIG_JOYSTICK_MAGELLAN $CONFIG_INPUT $CONFIG_INPUT_JOYSTICK $CONFIG_SERIO dep_tristate ' SpaceTec SpaceOrb/Avenger 6dof controllers' CONFIG_JOYSTICK_SPACEORB $CONFIG_INPUT $CONFIG_INPUT_JOYSTICK $CONFIG_SERIO Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/Makefile,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- Makefile 2002/01/29 23:14:44 1.3 +++ Makefile 2002/01/30 00:08:41 1.4 @@ -6,6 +6,8 @@ O_TARGET := joydrv.o +mod-subdirs := iforce + # Each configuration option enables a list of files. obj-$(CONFIG_JOYSTICK_A3D) += a3d.o @@ -31,6 +33,9 @@ obj-$(CONFIG_JOYSTICK_TWIDJOY) += twidjoy.o obj-$(CONFIG_JOYSTICK_WARRIOR) += warrior.o +ifeq ($(CONFIG_JOYSTICK_IFORCE),y) + obj-y += iforce/iforcedrv.o +endif subdir-$(CONFIG_JOYSTICK_IFORCE) += iforce # The global Rules.make. |
From: johann d. <jd...@us...> - 2002-01-30 00:07:40
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce In directory usw-pr-cvs1:/tmp/cvs-serv25923 Modified Files: iforce-usb.c Log Message: Temporarily disabled kfree in iforce_usb_disconnect. Index: iforce-usb.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce/iforce-usb.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- iforce-usb.c 2002/01/28 22:45:00 1.6 +++ iforce-usb.c 2002/01/30 00:07:37 1.7 @@ -140,7 +140,9 @@ struct iforce *iforce = ptr; usb_unlink_urb(&iforce->irq); input_unregister_device(&iforce->dev); +#if 0 kfree(iforce); +#endif } static struct usb_device_id iforce_usb_ids [] = { |
From: johann d. <jd...@us...> - 2002-01-29 23:17:05
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce In directory usw-pr-cvs1:/tmp/cvs-serv13898 Modified Files: iforce-main.c Log Message: Fixes to get the code to actually compile. Index: iforce-main.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce/iforce-main.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- iforce-main.c 2002/01/28 22:45:00 1.7 +++ iforce-main.c 2002/01/29 23:17:02 1.8 @@ -381,7 +381,7 @@ iforce->type = iforce_device + i; - iforce->name = iforce->type->name; + strncpy(iforce->name, iforce->type->name, 64); /* * Set input device bitfields and ranges. @@ -445,9 +445,9 @@ input_register_device(&iforce->dev); - printk(KERN_INFO "input: %s [%d effects, %ld bytes memory] on %s\n", + printk(KERN_INFO "input: %s [%d effects, %ld bytes memory]\n", iforce->dev.name, iforce->dev.ff_effects_max, - iforce->device_memory.end, path); + iforce->device_memory.end); return 0; } |
From: johann d. <jd...@us...> - 2002-01-29 23:16:05
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce In directory usw-pr-cvs1:/tmp/cvs-serv13619 Modified Files: Makefile Log Message: iforce code compiled into kernel if at least the usb or serial version is "y" and none is "m". Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce/Makefile,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- Makefile 2002/01/23 05:21:35 1.1 +++ Makefile 2002/01/29 23:16:02 1.2 @@ -8,12 +8,16 @@ CONFIG_JOYSTICK_IFORCE := n +# Enable iforce if at least one of iforce-rs232 or iforce-usb is enabled ifeq ($(CONFIG_JOYSTICK_IFORCE_232),y) - ifeq ($(CONFIG_JOYSTICK_IFORCE_USB),y) - CONFIG_JOYSTICK_IFORCE := y - endif + CONFIG_JOYSTICK_IFORCE := y endif +ifeq ($(CONFIG_JOYSTICK_IFORCE_USB),y) + CONFIG_JOYSTICK_IFORCE := y +endif + +# Compile as module if at least one of the choices is m ifeq ($(CONFIG_JOYSTICK_IFORCE_232),m) CONFIG_JOYSTICK_IFORCE := m endif |
From: johann d. <jd...@us...> - 2002-01-29 23:14:47
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick In directory usw-pr-cvs1:/tmp/cvs-serv13133 Modified Files: Makefile Log Message: Removed iforce stuff. It's in the Makefile in the iforce subdir. Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/Makefile,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- Makefile 2002/01/23 06:50:28 1.2 +++ Makefile 2002/01/29 23:14:44 1.3 @@ -31,29 +31,7 @@ obj-$(CONFIG_JOYSTICK_TWIDJOY) += twidjoy.o obj-$(CONFIG_JOYSTICK_WARRIOR) += warrior.o -# I-Force may need both USB and RS-232 - -CONFIG_JOYSTICK_IFORCE := n - -ifeq ($(CONFIG_JOYSTICK_IFORCE_232),y) - ifeq ($(CONFIG_JOYSTICK_IFORCE_USB),y) - CONFIG_JOYSTICK_IFORCE := y - endif -endif - -ifeq ($(CONFIG_JOYSTICK_IFORCE_232),m) - CONFIG_JOYSTICK_IFORCE := m -endif - -ifeq ($(CONFIG_JOYSTICK_IFORCE_USB),m) - CONFIG_JOYSTICK_IFORCE := m -endif - subdir-$(CONFIG_JOYSTICK_IFORCE) += iforce - -ifeq ($(CONFIG_JOYSTICK_IFORCE),y) - obj-y += iforce/iforce-drv.o -endif # The global Rules.make. |
From: johann d. <jd...@us...> - 2002-01-28 22:45:03
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce In directory usw-pr-cvs1:/tmp/cvs-serv16989 Modified Files: iforce-ff.c iforce-main.c iforce-packets.c iforce-serio.c iforce-usb.c iforce.h Log Message: Removed references to usb_make_path. Synced with dj patch. Index: iforce-ff.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce/iforce-ff.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 Index: iforce-main.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce/iforce-main.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- iforce-main.c 2002/01/22 20:33:38 1.6 +++ iforce-main.c 2002/01/28 22:45:00 1.7 @@ -28,7 +28,6 @@ */ #include "iforce.h" -#include "usbpath.h" MODULE_AUTHOR("Vojtech Pavlik <vo...@uc...>, Johann Deneux <de...@if...>"); MODULE_DESCRIPTION("USB/RS232 I-Force joysticks and wheels driver"); @@ -256,7 +255,7 @@ /* Free ressources assigned to effect */ if (iforce_erase_effect(dev, i)) { - printk(KERN_WARNING "iforce_flush: (%s) erase effect %d failed\n", dev->phys, i); + printk(KERN_WARNING "iforce_flush: erase effect %d failed\n", i); } } @@ -287,7 +286,6 @@ int iforce_init_device(struct iforce *iforce) { unsigned char c[] = "CEOV"; - char path[64]; int i; init_waitqueue_head(&iforce->wait); @@ -297,28 +295,13 @@ iforce->dev.ff_effects_max = 10; - switch (iforce->bus) { -#ifdef IFORCE_232 - case IFORCE_232: - strcpy(path, iforce->serio->phys); - break; -#endif -#ifdef IFORCE_USB - case IFORCE_USB: - usb_make_path(iforce->usbdev, path, 64); - break; -#endif - } - - sprintf(iforce->phys, "%s/input0", path); - /* * Input device fields. */ iforce->dev.idbus = BUS_USB; iforce->dev.private = iforce; - iforce->dev.name = iforce->phys; + iforce->dev.name = "Unknown I-Force device"; iforce->dev.open = iforce_open; iforce->dev.close = iforce_close; iforce->dev.flush = iforce_flush; @@ -398,8 +381,7 @@ iforce->type = iforce_device + i; - sprintf(iforce->name, iforce->type->name, - iforce->dev.idproduct, iforce->dev.idvendor); + iforce->name = iforce->type->name; /* * Set input device bitfields and ranges. Index: iforce-packets.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce/iforce-packets.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- iforce-packets.c 2002/01/22 20:33:53 1.6 +++ iforce-packets.c 2002/01/28 22:45:00 1.7 @@ -235,7 +235,7 @@ #ifdef IFORCE_USB case IFORCE_USB: - iforce->dr.bRequest = packet[0]; + iforce->cr.bRequest = packet[0]; iforce->ctrl.dev = iforce->usbdev; set_current_state(TASK_INTERRUPTIBLE); Index: iforce-serio.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce/iforce-serio.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 Index: iforce-usb.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce/iforce-usb.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- iforce-usb.c 2002/01/22 20:34:21 1.5 +++ iforce-usb.c 2002/01/28 22:45:00 1.6 @@ -114,9 +114,9 @@ iforce->bus = IFORCE_USB; iforce->usbdev = dev; - iforce->dr.bRequestType = USB_TYPE_VENDOR | USB_DIR_IN | USB_RECIP_INTERFACE; - iforce->dr.wIndex = 0; - iforce->dr.wLength = 16; + iforce->cr.bRequestType = USB_TYPE_VENDOR | USB_DIR_IN | USB_RECIP_INTERFACE; + iforce->cr.wIndex = 0; + iforce->cr.wLength = 16; FILL_INT_URB(&iforce->irq, dev, usb_rcvintpipe(dev, epirq->bEndpointAddress), iforce->data, 16, iforce_usb_irq, iforce, epirq->bInterval); @@ -125,7 +125,7 @@ iforce + 1, 32, iforce_usb_out, iforce); FILL_CONTROL_URB(&iforce->ctrl, dev, usb_rcvctrlpipe(dev, 0), - (void*) &iforce->dr, iforce->edata, 16, iforce_usb_ctrl, iforce); + (void*) &iforce->cr, iforce->edata, 16, iforce_usb_ctrl, iforce); if (iforce_init_device(iforce)) { kfree(iforce); Index: iforce.h =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick/iforce/iforce.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- iforce.h 2002/01/22 20:34:33 1.5 +++ iforce.h 2002/01/28 22:45:00 1.6 @@ -47,10 +47,10 @@ #define IFORCE_MAX_LENGTH 16 -#if defined(CONFIG_INPUT_IFORCE_232) || defined(CONFIG_INPUT_IFORCE_232_MODULE) +#if defined(CONFIG_JOYSTICK_IFORCE_232) || defined(CONFIG_JOYSTICK_IFORCE_232_MODULE) #define IFORCE_232 1 #endif -#if defined(CONFIG_INPUT_IFORCE_USB) || defined(CONFIG_INPUT_IFORCE_USB_MODULE) +#if defined(CONFIG_JOYSTICK_IFORCE_USB) || defined(CONFIG_JOYSTICK_IFORCE_USB_MODULE) #define IFORCE_USB 2 #endif @@ -123,7 +123,6 @@ struct input_dev dev; /* Input device interface */ struct iforce_device *type; char name[64]; - char phys[64]; int open; int bus; @@ -140,7 +139,7 @@ #ifdef IFORCE_USB struct usb_device *usbdev; /* USB transfer */ struct urb irq, out, ctrl; - struct usb_ctrlrequest dr; + struct usb_ctrlrequest cr; #endif spinlock_t xmit_lock; /* Buffer used for asynchronous sending of bytes to the device */ |
From: Vojtech P. <vo...@us...> - 2002-01-28 16:24:25
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/usb In directory usw-pr-cvs1:/tmp/cvs-serv20736 Modified Files: hid-core.c Log Message: Make sure the report descriptor is always in DMA-able memory. Index: hid-core.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/usb/hid-core.c,v retrieving revision 1.42 retrieving revision 1.43 diff -u -d -r1.42 -r1.43 --- hid-core.c 2002/01/27 00:22:46 1.42 +++ hid-core.c 2002/01/28 16:24:20 1.43 @@ -1256,6 +1256,7 @@ struct hid_descriptor *hdesc; struct hid_device *hid; unsigned rsize = 0; + u8 *rdesc; char *buf; int n; @@ -1278,26 +1279,31 @@ return NULL; } - { - __u8 rdesc[rsize]; + if (!(rdesc = kmalloc(rsize, GFP_KERNEL))) { + dbg("couldn't allocate rdesc memory"); + return NULL; + } - if ((n = hid_get_class_descriptor(dev, interface->bInterfaceNumber, HID_DT_REPORT, rdesc, rsize)) < 0) { - dbg("reading report descriptor failed"); - return NULL; - } + if ((n = hid_get_class_descriptor(dev, interface->bInterfaceNumber, HID_DT_REPORT, rdesc, rsize)) < 0) { + dbg("reading report descriptor failed"); + kfree(rdesc); + return NULL; + } #ifdef DEBUG_DATA - printk(KERN_DEBUG __FILE__ ": report descriptor (size %u, read %d) = ", rsize, n); - for (n = 0; n < rsize; n++) - printk(" %02x", (unsigned) rdesc[n]); - printk("\n"); + printk(KERN_DEBUG __FILE__ ": report descriptor (size %u, read %d) = ", rsize, n); + for (n = 0; n < rsize; n++) + printk(" %02x", (unsigned) rdesc[n]); + printk("\n"); #endif - if (!(hid = hid_parse_report(rdesc, rsize))) { - dbg("parsing report descriptor failed"); - return NULL; - } + if (!(hid = hid_parse_report(rdesc, rsize))) { + dbg("parsing report descriptor failed"); + kfree(rdesc); + return NULL; } + + kfree(rdesc); for (n = 0; n < interface->bNumEndpoints; n++) { |
From: Franz S. <fs...@us...> - 2002-01-27 22:22:59
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/macintosh In directory usw-pr-cvs1:/tmp/cvs-serv26410/linux/drivers/macintosh Modified Files: Makefile adbhid.c Log Message: Sync PPC stuff with linux-dj. Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/macintosh/Makefile,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- Makefile 2001/10/06 16:11:13 1.7 +++ Makefile 2002/01/27 22:22:56 1.8 @@ -15,7 +15,7 @@ # Objects that export symbols. -export-objs := adb.o rtc.o via-pmu.o +export-objs := adb.o rtc.o mac_hid.o via-pmu.o # Object file lists. @@ -29,10 +29,14 @@ obj-$(CONFIG_PMAC_PBOOK) += mediabay.o obj-$(CONFIG_MAC_SERIAL) += macserial.o obj-$(CONFIG_NVRAM) += nvram.o +obj-$(CONFIG_MAC_EMUMOUSEBTN) += mac_hid.o +obj-$(CONFIG_INPUT_ADBHID) += adbhid.o obj-$(CONFIG_PPC_RTC) += rtc.o +obj-$(CONFIG_ANSLCD) += ans-lcd.o obj-$(CONFIG_ADB_PMU) += via-pmu.o obj-$(CONFIG_ADB_CUDA) += via-cuda.o +obj-$(CONFIG_PMAC_APM_EMU) += apm_emu.o obj-$(CONFIG_ADB) += adb.o obj-$(CONFIG_ADB_MACII) += via-macii.o Index: adbhid.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/macintosh/adbhid.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- adbhid.c 2002/01/24 19:51:26 1.1 +++ adbhid.c 2002/01/27 22:22:56 1.2 @@ -276,26 +276,39 @@ break; case 0x1f: /* Powerbook button device */ { + int down = (data[1] == (data[1] & 0xf)); #ifdef CONFIG_PMAC_BACKLIGHT int backlight = get_backlight_level(); - +#endif /* * XXX: Where is the contrast control for the passive? * -- Cort */ - switch (data[1]) { + switch (data[1] & 0x0f) { case 0x8: /* mute */ + input_report_key(&adbhid[id]->input, KEY_MUTE, + down); break; - case 0x7: /* contrast decrease */ + case 0x7: /* volume decrease */ + input_report_key(&adbhid[id]->input, KEY_VOLUMEDOWN, + down); break; - case 0x6: /* contrast increase */ + case 0x6: /* volume increase */ + input_report_key(&adbhid[id]->input, KEY_VOLUMEUP, + down); break; + case 0xb: /* eject */ + input_report_key(&adbhid[id]->input, KEY_EJECTCD, + down); + break; + +#ifdef CONFIG_PMAC_BACKLIGHT case 0xa: /* brightness decrease */ - if (backlight < 0) + if (!down || backlight < 0) break; if (backlight > BACKLIGHT_OFF) set_backlight_level(backlight-1); @@ -304,15 +317,15 @@ break; case 0x9: /* brightness increase */ - if (backlight < 0) + if (!down || backlight < 0) break; if (backlight < BACKLIGHT_MAX) set_backlight_level(backlight+1); else set_backlight_level(BACKLIGHT_MAX); break; - } #endif /* CONFIG_PMAC_BACKLIGHT */ + } } break; } @@ -505,6 +518,11 @@ break; case 0x1f: /* Powerbook button device */ sprintf(adbhid[id]->name, "ADB Powerbook buttons"); + adbhid[id]->input.evbit[0] = BIT(EV_KEY) | BIT(EV_REP); + set_bit(KEY_MUTE, adbhid[id]->input.keybit); + set_bit(KEY_VOLUMEUP, adbhid[id]->input.keybit); + set_bit(KEY_VOLUMEDOWN, adbhid[id]->input.keybit); + set_bit(KEY_EJECTCD, adbhid[id]->input.keybit); break; } if (adbhid[id]->name[0]) @@ -543,16 +561,38 @@ } +static u16 +adbhid_input_reregister(int id, int default_id, int org_handler_id, + int cur_handler_id, int mk) +{ + if (adbhid[id]) { + if (adbhid[id]->input.idproduct != + ((id << 12)|(default_id << 8)|org_handler_id)) { + adbhid_input_unregister(id); + adbhid_input_register(id, default_id, org_handler_id, + cur_handler_id, mk); + } + } else + adbhid_input_register(id, default_id, org_handler_id, + cur_handler_id, mk); + return 1<<id; +} + +static void +adbhid_input_devcleanup(u16 exist) +{ + int i; + for(i=1; i<16; i++) + if (adbhid[i] && !(exist&(1<<i))) + adbhid_input_unregister(i); +} + static void adbhid_probe(void) { struct adb_request req; int i, default_id, org_handler_id, cur_handler_id; - - for (i = 1; i < 16; i++) { - if (adbhid[i]) - adbhid_input_unregister(i); - } + u16 reg = 0; adb_register(ADB_MOUSE, 0, &mouse_ids, adbhid_mouse_input); adb_register(ADB_KEYBOARD, 0, &keyboard_ids, adbhid_keyboard_input); @@ -581,14 +621,16 @@ printk("ADB keyboard at %d, handler 1\n", id); adb_get_infos(id, &default_id, &cur_handler_id); - adbhid_input_register(id, default_id, org_handler_id, cur_handler_id, 0); + reg |= adbhid_input_reregister(id, default_id, org_handler_id, + cur_handler_id, 0); } for (i = 0; i < buttons_ids.nids; i++) { int id = buttons_ids.id[i]; adb_get_infos(id, &default_id, &org_handler_id); - adbhid_input_register(id, default_id, org_handler_id, org_handler_id, 0); + reg |= adbhid_input_reregister(id, default_id, org_handler_id, + org_handler_id, 0); } /* Try to switch all mice to handler 4, or 2 for three-button @@ -677,9 +719,10 @@ printk("\n"); adb_get_infos(id, &default_id, &cur_handler_id); - adbhid_input_register(id, default_id, org_handler_id, - cur_handler_id, mouse_kind); - } + reg |= adbhid_input_reregister(id, default_id, org_handler_id, + cur_handler_id, mouse_kind); + } + adbhid_input_devcleanup(reg); } static void @@ -691,12 +734,13 @@ printk(" (trackpad)"); adb_request(&req, NULL, ADBREQ_SYNC | ADBREQ_REPLY, 1, - ADB_READREG(id,1)); + ADB_READREG(id,1)); if (req.reply_len < 8) printk("bad length for reg. 1\n"); else { memcpy(r1_buffer, &req.reply[1], 8); + adb_request(&req, NULL, ADBREQ_SYNC, 9, ADB_WRITEREG(id,1), r1_buffer[0], @@ -705,7 +749,7 @@ r1_buffer[3], r1_buffer[4], r1_buffer[5], - 0x0d, /*r1_buffer[6],*/ + 0x0d, r1_buffer[7]); adb_request(&req, NULL, ADBREQ_SYNC, 9, @@ -718,7 +762,7 @@ 0x8a, 0x1b, 0x50); - + adb_request(&req, NULL, ADBREQ_SYNC, 9, ADB_WRITEREG(id,1), r1_buffer[0], @@ -729,6 +773,9 @@ r1_buffer[5], 0x03, /*r1_buffer[6],*/ r1_buffer[7]); + + /* Without this flush, the trackpad may be locked up */ + adb_request(&req, NULL, ADBREQ_SYNC, 1, ADB_FLUSH(id)); } } |
From: Franz S. <fs...@us...> - 2002-01-27 22:22:59
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/ppc/kernel In directory usw-pr-cvs1:/tmp/cvs-serv26410/linux/arch/ppc/kernel Modified Files: chrp_setup.c pmac_setup.c prep_setup.c Log Message: Sync PPC stuff with linux-dj. Index: chrp_setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/kernel/chrp_setup.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- chrp_setup.c 2001/12/26 17:28:11 1.4 +++ chrp_setup.c 2002/01/27 22:22:56 1.5 @@ -1,5 +1,5 @@ /* - * BK Id: SCCS/s.chrp_setup.c 1.38 11/13/01 21:26:07 paulus + * BK Id: SCCS/s.chrp_setup.c 1.40 12/19/01 09:45:54 trini */ /* * linux/arch/ppc/kernel/setup.c @@ -69,9 +69,12 @@ void rtas_display_progress(char *, unsigned short); void rtas_indicator_progress(char *, unsigned short); void btext_progress(char *, unsigned short); + extern unsigned long pmac_find_end_of_memory(void); +extern int of_show_percpuinfo(struct seq_file *, int); extern kdev_t boot_dev; + extern PTE *Hash, *Hash_end; extern unsigned long Hash_size, Hash_mask; extern int probingmem; @@ -350,7 +353,7 @@ openpic_init(1, NUM_8259_INTERRUPTS, chrp_int_ack_special, nmi_irq); for ( i = 0 ; i < NUM_8259_INTERRUPTS ; i++ ) irq_desc[i].handler = &i8259_pic; - i8259_init(); + i8259_init(NULL); } void __init Index: pmac_setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/kernel/pmac_setup.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- pmac_setup.c 2001/12/26 17:28:11 1.6 +++ pmac_setup.c 2002/01/27 22:22:56 1.7 @@ -1,5 +1,5 @@ /* - * BK Id: SCCS/s.pmac_setup.c 1.43 11/13/01 21:26:07 paulus + * BK Id: SCCS/s.pmac_setup.c 1.45 12/01/01 20:09:06 benh */ /* * linux/arch/ppc/kernel/setup.c @@ -59,13 +59,13 @@ #include <asm/pci-bridge.h> #include <asm/ohare.h> #include <asm/mediabay.h> -#include <asm/feature.h> #include <asm/machdep.h> #include <asm/dma.h> #include <asm/bootx.h> #include <asm/cputable.h> #include <asm/btext.h> +#include <asm/pmac_feature.h> #include <asm/time.h> #include "local_irq.h" #include "pmac_pic.h" @@ -80,6 +80,11 @@ extern void pmac_calibrate_decr(void); extern void pmac_pcibios_fixup(void); extern void pmac_find_bridges(void); +extern int pmac_ide_check_base(ide_ioreg_t base); +extern ide_ioreg_t pmac_ide_get_base(int index); +extern void pmac_ide_init_hwif_ports(hw_regs_t *hw, + ide_ioreg_t data_port, ide_ioreg_t ctrl_port, int *irq); + extern void pmac_nvram_update(void); extern int pmac_pci_enable_device_hook(struct pci_dev *dev, int initial); @@ -406,7 +411,8 @@ #endif #ifdef CONFIG_PMAC_PBOOK media_bay_init(); -#endif +#endif + pmac_feature_late_init(); } #ifdef CONFIG_SCSI @@ -574,14 +580,11 @@ static int __pmac pmac_ide_check_region(ide_ioreg_t from, unsigned int extent) { - /* - * We only do the check_region if `from' looks like a genuine - * I/O port number. If it actually refers to a memory-mapped - * register, it should be OK. - */ - if (from < ~_IO_BASE) - return check_region(from, extent); - return 0; +#ifdef CONFIG_BLK_DEV_IDE_PMAC + if (pmac_ide_check_base(from) >= 0) + return 0; +#endif + return check_region(from, extent); } static void __pmac @@ -589,24 +592,31 @@ unsigned int extent, const char *name) { - if (from < ~_IO_BASE) - request_region(from, extent, name); +#ifdef CONFIG_BLK_DEV_IDE_PMAC + if (pmac_ide_check_base(from) >= 0) + return; +#endif + request_region(from, extent, name); } static void __pmac pmac_ide_release_region(ide_ioreg_t from, unsigned int extent) { - if (from < ~_IO_BASE) - release_region(from, extent); +#ifdef CONFIG_BLK_DEV_IDE_PMAC + if (pmac_ide_check_base(from) >= 0) + return; +#endif + release_region(from, extent); } +#ifndef CONFIG_BLK_DEV_IDE_PMAC /* * This is only used if we have a PCI IDE controller, not * for the IDE controller in the ohare/paddington/heathrow/keylargo. */ static void __pmac -pmac_ide_init_hwif_ports(hw_regs_t *hw, ide_ioreg_t data_port, +pmac_ide_pci_init_hwif_ports(hw_regs_t *hw, ide_ioreg_t data_port, ide_ioreg_t ctrl_port, int *irq) { ide_ioreg_t reg = data_port; @@ -618,7 +628,8 @@ } hw->io_ports[IDE_CONTROL_OFFSET] = ctrl_port; } -#endif +#endif /* CONFIG_BLK_DEV_IDE_PMAC */ +#endif /* defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) */ /* * Read in a property describing some pieces of memory. @@ -738,12 +749,19 @@ ppc_md.find_end_of_memory = pmac_find_end_of_memory; -#if defined(CONFIG_BLK_DEV_IDE) && defined(CONFIG_BLK_DEV_IDE_PMAC) + ppc_md.feature_call = pmac_do_feature_call; + +#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) ppc_ide_md.ide_check_region = pmac_ide_check_region; ppc_ide_md.ide_request_region = pmac_ide_request_region; ppc_ide_md.ide_release_region = pmac_ide_release_region; +#ifdef CONFIG_BLK_DEV_IDE_PMAC ppc_ide_md.ide_init_hwif = pmac_ide_init_hwif_ports; -#endif /* CONFIG_BLK_DEV_IDE && CONFIG_BLK_DEV_IDE_PMAC */ + ppc_ide_md.default_io_base = pmac_ide_get_base; +#else /* CONFIG_BLK_DEV_IDE_PMAC */ + ppc_ide_md.ide_init_hwif = pmac_ide_pci_init_hwif_ports; +#endif /* CONFIG_BLK_DEV_IDE_PMAC */ +#endif /* defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) */ #ifdef CONFIG_BOOTX_TEXT ppc_md.progress = pmac_progress; Index: prep_setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/kernel/prep_setup.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- prep_setup.c 2002/01/20 03:54:45 1.9 +++ prep_setup.c 2002/01/27 22:22:56 1.10 @@ -1,5 +1,5 @@ /* - * BK Id: SCCS/s.prep_setup.c 1.44 11/13/01 21:26:07 paulus + * BK Id: SCCS/s.prep_setup.c 1.47 12/19/01 09:45:54 trini */ /* * linux/arch/ppc/kernel/setup.c @@ -170,7 +170,7 @@ no_l2: #ifdef CONFIG_PREP_RESIDUAL - if (res->ResidualLength == 0) { + if (res->ResidualLength != 0) { /* print info about SIMMs */ seq_printf(m, "simms\t\t: "); for (i = 0; (res->ActualNumMemories) && (i < MAX_MEMS); i++) { @@ -617,7 +617,7 @@ static int __prep prep_get_irq(struct pt_regs *regs) { - return i8259_irq(smp_processor_id()); + return i8259_irq(); } static void __init @@ -629,7 +629,7 @@ openpic_init(1, NUM_8259_INTERRUPTS, 0, -1); for ( i = 0 ; i < NUM_8259_INTERRUPTS ; i++ ) irq_desc[i].handler = &i8259_pic; - i8259_init(); + i8259_init(0xbffffff0); /* PCI interrupt ack address for MPC105 and 106 */ } #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) |
From: Franz S. <fs...@us...> - 2002-01-27 22:22:59
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/ppc In directory usw-pr-cvs1:/tmp/cvs-serv26410/linux/arch/ppc Modified Files: config.in Added Files: Config.help Log Message: Sync PPC stuff with linux-dj. --- NEW FILE: Config.help --- CONFIG_SMP This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. Note that if you say Y here and choose architecture "586" or "Pentium" under "Processor family", the kernel will not work on 486 architectures. Similarly, multiprocessor kernels for the "PPro" architecture may not work on all Pentium based boards. People using multiprocessor machines who say Y here should also say Y to "Enhanced Real Time Clock Support", below. The "Advanced Power Management" code will be disabled if you say Y here. See also the <file:Documentation/smp.tex>, <file:Documentation/smp.txt>, <file:Documentation/i386/IO-APIC.txt>, <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at <http://www.linuxdoc.org/docs.html#howto>. If you don't know what to do here, say N. CONFIG_PPC The PowerPC is a very capable 32-bit RISC processor from Motorola, the successor to their 68000 and 88000 series. It powers recent Macintoshes and also a widely-used series of single-board computers from Motorola. The Linux PowerPC port has a home page at <http://penguinppc.org/>. CONFIG_MATH_EMULATION Linux can emulate a math coprocessor (used for floating point operations) if you don't have one. 486DX and Pentium processors have a math coprocessor built in, 486SX and 386 do not, unless you added a 487DX or 387, respectively. (The messages during boot time can give you some hints here ["man dmesg"].) Everyone needs either a coprocessor or this emulation. If you don't have a math coprocessor, you need to say Y here; if you say Y here even though you have a coprocessor, the coprocessor will be used nevertheless. (This behavior can be changed with the kernel command line option "no387", which comes handy if your coprocessor is broken. Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) This means that it is a good idea to say Y here if you intend to use this kernel on different machines. More information about the internals of the Linux math coprocessor emulation can be found in <file:arch/i386/math-emu/README>. If you are not sure, say Y; apart from resulting in a 66 KB bigger kernel, it won't hurt. CONFIG_MAC_FLOPPY If you have a SWIM-3 (Super Woz Integrated Machine 3; from Apple) floppy controller, say Y here. Most commonly found in PowerMacs. CONFIG_IDE If you say Y here, your kernel will be able to manage low cost mass storage units such as ATA/(E)IDE and ATAPI units. The most common cases are IDE hard drives and ATAPI CD-ROM drives. If your system is pure SCSI and doesn't use these interfaces, you can say N here. Integrated Disk Electronics (IDE aka ATA-1) is a connecting standard for mass storage units such as hard disks. It was designed by Western Digital and Compaq Computer in 1984. It was then named ST506. Quite a number of disks use the IDE interface. AT Attachment (ATA) is the superset of the IDE specifications. ST506 was also called ATA-1. Fast-IDE is ATA-2 (also named Fast ATA), Enhanced IDE (EIDE) is ATA-3. It provides support for larger disks (up to 8.4GB by means of the LBA standard), more disks (4 instead of 2) and for other mass storage units such as tapes and cdrom. UDMA/33 (aka UltraDMA/33) is ATA-4 and provides faster (and more CPU friendly) transfer modes than previous PIO (Programmed processor Input/Output) from previous ATA/IDE standards by means of fast DMA controllers. ATA Packet Interface (ATAPI) is a protocol used by EIDE tape and CD-ROM drives, similar in many respects to the SCSI protocol. SMART IDE (Self Monitoring, Analysis and Reporting Technology) was designed in order to prevent data corruption and disk crash by detecting pre hardware failure conditions (heat, access time, and the like...). Disks built since June 1995 may follow this standard. The kernel itself don't manage this; however there are quite a number of user programs such as smart that can query the status of SMART parameters disk. If you want to compile this driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read <file:Documentation/modules.txt>. The module will be called ide.o. For further information, please read <file:Documentation/ide.txt>. If unsure, say Y. CONFIG_HEARTBEAT Use the power-on LED on your machine as a load meter. The exact behavior is platform-dependent, but normally the flash frequency is a hyperbolic function of the 5-minute load average. CONFIG_ISA Find out whether you have ISA slots on your motherboard. ISA is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are PCI, EISA, MicroChannel (MCA) or VESA. ISA is an older system, now being displaced by PCI; newer boards don't support it. If you have ISA, say Y, otherwise N. CONFIG_PCI Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or VESA. If you have PCI, say Y, otherwise N. The PCI-HOWTO, available from <http://www.linuxdoc.org/docs.html#howto>, contains valuable information about which PCI hardware does work under Linux and which doesn't. CONFIG_PCI_QSPAN Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or VESA. If you have PCI, say Y, otherwise N. The PCI-HOWTO, available from <http://www.linuxdoc.org/docs.html#howto>, contains valuable information about which PCI hardware does work under Linux and which doesn't. CONFIG_MCA MicroChannel Architecture is found in some IBM PS/2 machines and laptops. It is a bus system similar to PCI or ISA. See <file:Documentation/mca.txt> (and especially the web page given there) before attempting to build an MCA bus kernel. CONFIG_EISA The Extended Industry Standard Architecture (EISA) bus was developed as an open alternative to the IBM MicroChannel bus. The EISA bus provided some of the features of the IBM MicroChannel bus while maintaining backward compatibility with cards made for the older ISA bus. The EISA bus saw limited use between 1988 and 1995 when it was made obsolete by the PCI bus. Say Y here if you are building a kernel for an EISA-based machine. Otherwise, say N. CONFIG_HOTPLUG Say Y here if you want to plug devices into your computer while the system is running, and be able to use them quickly. In many cases, the devices can likewise be unplugged at any time too. One well known example of this is PCMCIA- or PC-cards, credit-card size devices such as network cards, modems or hard drives which are plugged into slots found on all modern laptop computers. Another example, used on modern desktops as well as laptops, is USB. Enable HOTPLUG and KMOD, and build a modular kernel. Get agent software (at <http://linux-hotplug.sourceforge.net/>) and install it. Then your kernel will automatically call out to a user mode "policy agent" (/sbin/hotplug) to load modules and set up software needed to use devices as you hotplug them. CONFIG_PCMCIA Say Y here if you want to attach PCMCIA- or PC-cards to your Linux computer. These are credit-card size devices such as network cards, modems or hard drives often used with laptops computers. There are actually two varieties of these cards: the older 16 bit PCMCIA cards and the newer 32 bit CardBus cards. If you want to use CardBus cards, you need to say Y here and also to "CardBus support" below. To use your PC-cards, you will need supporting software from David Hinds' pcmcia-cs package (see the file <file:Documentation/Changes> for location). Please also read the PCMCIA-HOWTO, available from <http://www.linuxdoc.org/docs.html#howto>. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). When compiled this way, there will be modules called pcmcia_core.o and ds.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_KCORE_ELF If you enabled support for /proc file system then the file /proc/kcore will contain the kernel core image. This can be used in gdb: $ cd /usr/src/linux ; gdb vmlinux /proc/kcore You have two choices here: ELF and A.OUT. Selecting ELF will make /proc/kcore appear in ELF core format as defined by the Executable and Linking Format specification. Selecting A.OUT will choose the old "a.out" format which may be necessary for some old versions of binutils or on some architectures. This is especially useful if you have compiled the kernel with the "-g" option to preserve debugging information. It is mainly used for examining kernel data structures on the live kernel so if you don't understand what this means or are not a kernel hacker, just leave it at its default value ELF. CONFIG_BINFMT_ELF ELF (Executable and Linkable Format) is a format for libraries and executables used across different architectures and operating systems. Saying Y here will enable your kernel to run ELF binaries and enlarge it by about 13 KB. ELF support under Linux has now all but replaced the traditional Linux a.out formats (QMAGIC and ZMAGIC) because it is portable (this does *not* mean that you will be able to run executables from different architectures or operating systems however) and makes building run-time libraries very easy. Many new executables are distributed solely in ELF format. You definitely want to say Y here. Information about ELF is contained in the ELF HOWTO available from <http://www.linuxdoc.org/docs.html#howto>. If you find that after upgrading from Linux kernel 1.2 and saying Y here, you still can't run any ELF binaries (they just crash), then you'll have to install the newest ELF runtime libraries, including ld.so (check the file <file:Documentation/Changes> for location and latest version). If you want to compile this as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read <file:Documentation/modules.txt>. The module will be called binfmt_elf.o. Saying M or N here is dangerous because some crucial programs on your system might be in ELF format. CONFIG_BINFMT_MISC If you say Y here, it will be possible to plug wrapper-driven binary formats into the kernel. You will like this especially when you use programs that need an interpreter to run like Java, Python or Emacs-Lisp. It's also useful if you often run DOS executables under the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from <http://www.linuxdoc.org/docs.html#howto>). Once you have registered such a binary class with the kernel, you can start one of those programs simply by typing in its name at a shell prompt; Linux will automatically feed it to the correct interpreter. You can do other nice things, too. Read the file <file:Documentation/binfmt_misc.txt> to learn how to use this feature, and <file:Documentation/java.txt> for information about how to include Java support. You must say Y to "/proc file system support" (CONFIG_PROC_FS) to use this part of the kernel. You may say M here for module support and later load the module when you have use for it; the module is called binfmt_misc.o. If you don't know what to answer at this point, say Y. CONFIG_VGA_CONSOLE Saying Y here will allow you to use Linux in text mode through a display that complies with the generic VGA standard. Virtually everyone wants that. The program SVGATextMode can be used to utilize SVGA video cards to their full potential in text mode. Download it from <ftp://ibiblio.org/pub/Linux/utils/console/>. Say Y. CONFIG_IRQ_ALL_CPUS This option gives the kernel permission to distribute IRQs across multiple CPUs. Saying N here will route all IRQs to the first CPU. Generally SMP PowerMacs can answer Y. SMP IBM CHRP boxes or Power3 boxes should say N for now. CONFIG_FB The frame buffer device provides an abstraction for the graphics hardware. It represents the frame buffer of some video hardware and allows application software to access the graphics hardware through a well-defined interface, so the software doesn't need to know anything about the low-level (hardware register) stuff. Frame buffer devices work identically across the different architectures supported by Linux and make the implementation of application programs easier and more portable; at this point, an X server exists which uses the frame buffer device exclusively. On several non-X86 architectures, the frame buffer device is the only way to use the graphics hardware. The device is accessed through special device nodes, usually located in the /dev directory, i.e. /dev/fb*. You need an utility program called fbset to make full use of frame buffer devices. Please read <file:Documentation/fb/framebuffer.txt> and the Framebuffer-HOWTO at <http://www.tahallah.demon.co.uk/programming/prog.html> for more information. Say Y here and to the driver for your graphics board below if you are compiling a kernel for a non-x86 architecture. If you are compiling for the x86 architecture, you can say Y if you want to play with it, but it is not essential. Please note that running graphical applications that directly touch the hardware (e.g. an accelerated X server) and that are not frame buffer device-aware may cause unexpected results. If unsure, say N. CONFIG_SCSI If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or any other SCSI device under Linux, say Y and make sure that you know the name of your SCSI host adapter (the card inside your computer that "speaks" the SCSI protocol, also called SCSI controller), because you will be asked for it. You also need to say Y here if you want support for the parallel port version of the 100 MB IOMEGA ZIP drive. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called scsi_mod.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt> and <file:Documentation/scsi.txt>. However, do not compile this as a module if your root file system (the one containing the directory /) is located on a SCSI device. CONFIG_NETDEVICES You can say N here if you don't intend to connect your Linux box to any other computer at all or if all your connections will be over a telephone line with a modem either via UUCP (UUCP is a protocol to forward mail and news between unix hosts over telephone lines; read the UUCP-HOWTO, available from <http://www.linuxdoc.org/docs.html#howto>) or dialing up a shell account or a BBS, even using term (term is a program which gives you almost full Internet connectivity if you have a regular dial up shell account on some Internet connected Unix computer. Read <http://www.bart.nl/~patrickr/term-howto/Term-HOWTO.html>). You'll have to say Y if your computer contains a network card that you want to use under Linux (make sure you know its name because you will be asked for it and read the Ethernet-HOWTO (especially if you plan to use more than one network card under Linux)) or if you want to use SLIP (Serial Line Internet Protocol is the protocol used to send Internet traffic over telephone lines or null modem cables) or CSLIP (compressed SLIP) or PPP (Point to Point Protocol, a better and newer replacement for SLIP) or PLIP (Parallel Line Internet Protocol is mainly used to create a mini network by connecting the parallel ports of two local machines) or AX.25/KISS (protocol for sending Internet traffic over amateur radio links). Make sure to read the NET-3-HOWTO. Eventually, you will have to read Olaf Kirch's excellent and free book "Network Administrator's Guide", to be found in <http://www.linuxdoc.org/docs.html#guide>. If unsure, say Y. CONFIG_CD_NO_IDESCSI If you have a CD-ROM drive that is neither SCSI nor IDE/ATAPI, say Y here, otherwise N. Read the CD-ROM-HOWTO, available from <http://www.linuxdoc.org/docs.html#howto>. Note that the answer to this question doesn't directly affect the kernel: saying N will just cause the configurator to skip all the questions about these CD-ROM drives. If you are unsure what you have, say Y and find out whether you have one of the following drives. For each of these drivers, a file Documentation/cdrom/{driver_name} exists. Especially in cases where you do not know exactly which kind of drive you have you should read there. Most of these drivers use a file drivers/cdrom/{driver_name}.h where you can define your interface parameters and switch some internal goodies. All these CD-ROM drivers are also usable as a module ( = code which can be inserted in and removed from the running kernel whenever you want). If you want to compile them as module, say M instead of Y and read <file:Documentation/modules.txt>. If you want to use any of these CD-ROM drivers, you also have to answer Y or M to "ISO 9660 CD-ROM file system support" below (this answer will get "defaulted" for you if you enable any of the Linux CD-ROM drivers). CONFIG_PREP_RESIDUAL Some PReP systems have residual data passed to the kernel by the firmware. This allows detection of memory size, devices present and other useful pieces of information. Sometimes this information is not present or incorrect. Unless you expect to boot on a PReP system, there is not need to select Y. CONFIG_ADB Apple Desktop Bus (ADB) support is for support of devices which are connected to an ADB port. ADB devices tend to have 4 pins. If you have an Apple Macintosh prior to the iMac, or a "Blue and White G3", you probably want to say Y here. Otherwise say N. CONFIG_ADB_CUDA This provides support for CUDA based Power Macintosh systems. This includes most OldWorld PowerMacs, the first generation iMacs, the Blue&White G3 and the Yikes G4 (PCI Graphics). All later models should use CONFIG_ADB_PMU instead. If unsure say Y. CONFIG_ADB_PMU On the PowerBook 3400 and 2400, the PMU is a 6805 microprocessor core whose primary function is to control battery charging and system power. The PMU also controls the ADB (Apple Desktop Bus) which connects to the keyboard and mouse, as well as the non-volatile RAM and the RTC (real time clock) chip. Say Y to enable support for this device; you should do so if your machine is one of these PowerBooks. CONFIG_ADB_MACIO Say Y here to include direct support for the ADB controller in the Hydra chip used on PowerPC Macintoshes of the CHRP type. (The Hydra also includes a MESH II SCSI controller, DBDMA controller, VIA chip, OpenPIC controller and two RS422/Geoports.) CONFIG_INPUT_ADBHID Say Y here if you want to have ADB (Apple Desktop Bus) HID devices such as keyboards, mice, joysticks, trackpads or graphic tablets handled by the input layer. If you say Y here, make sure to say Y to the corresponding drivers "Keyboard support" (CONFIG_INPUT_KEYBDEV), "Mouse Support" (CONFIG_INPUT_MOUSEDEV) and "Event interface support" (CONFIG_INPUT_EVDEV) as well. If unsure, say Y. CONFIG_SERIAL_CONSOLE If you say Y here, it will be possible to use a serial port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). This could be useful if some terminal or printer is connected to that serial port. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyS1". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) If you don't have a VGA card installed and you say Y here, the kernel will automatically use the first serial line, /dev/ttyS0, as system console. If unsure, say N. CONFIG_MAC_SERIAL If you have Macintosh style serial ports (8 pin mini-DIN), say Y here. If you also have regular serial ports and enable the driver for them, you can't currently use the serial console feature. CONFIG_SOUND If you have a sound card in your computer, i.e. if it can say more than an occasional beep, say Y. Be sure to have all the information about your sound card and its configuration down (I/O port, interrupt and DMA channel), because you will be asked for it. You want to read the Sound-HOWTO, available from <http://www.linuxdoc.org/docs.html#howto>. General information about the modular sound system is contained in the files <file:Documentation/sound/Introduction>. The file <file:Documentation/sound/README.OSS> contains some slightly outdated but still useful information as well. If you have a PnP sound card and you want to configure it at boot time using the ISA PnP tools (read <http://www.roestock.demon.co.uk/isapnptools/>), then you need to compile the sound card support as a module ( = code which can be inserted in and removed from the running kernel whenever you want) and load that module after the PnP configuration is finished. To do this, say M here and read <file:Documentation/modules.txt> as well as <file:Documentation/sound/README.modules>; the module will be called soundcore.o. I'm told that even without a sound card, you can make your computer say more than an occasional beep, by programming the PC speaker. Kernel patches and supporting utilities to do that are in the pcsp package, available at <ftp://ftp.infradead.org/pub/pcsp/>. CONFIG_MAGIC_SYSRQ If you say Y here, you will have some control over the system even if the system crashes for example during kernel debugging (e.g., you will be able to flush the buffer cache to disk, reboot the system immediately or dump some status information). This is accomplished by pressing various keys while holding SysRq (Alt+PrintScreen). It also works on a serial console (on PC hardware at least), if you send a BREAK and then within 5 seconds a command keypress. The keys are documented in <file:Documentation/sysrq.txt>. Don't say Y unless you really know what this hack does. CONFIG_ISDN ISDN ("Integrated Services Digital Networks", called RNIS in France) is a special type of fully digital telephone service; it's mostly used to connect to your Internet service provider (with SLIP or PPP). The main advantage is that the speed is higher than ordinary modem/telephone connections, and that you can have voice conversations while downloading stuff. It only works if your computer is equipped with an ISDN card and both you and your service provider purchased an ISDN line from the phone company. For details, read <http://alumni.caltech.edu/~dank/isdn/> on the WWW. This driver allows you to use an ISDN-card for networking connections and as dialin/out device. The isdn-tty's have a built in AT-compatible modem emulator. Network devices support autodial, channel-bundling, callback and caller-authentication without having a daemon running. A reduced T.70 protocol is supported with tty's suitable for German BTX. On D-Channel, the protocols EDSS1 (Euro-ISDN) and 1TR6 (German style) are supported. See <file:Documentation/isdn/README> for more information. If you want to compile the ISDN code as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read <file:Documentation/modules.txt>. The module will be called isdn.o. If unsure, say N. CONFIG_PROC_HARDWARE Say Y here to support the /proc/hardware file, which gives you access to information about the machine you're running on, including the model, CPU, MMU, clock speed, BogoMIPS rating, and memory size. CONFIG_AMIGA This option enables support for the Amiga series of computers. If you plan to use this kernel on an Amiga, say Y here and browse the material available in <file:Documentation/m68k>; otherwise say N. CONFIG_A2232 This option supports the 2232 7-port serial card shipped with the Amiga 2000 and other Zorro-bus machines, dating from 1989. At a max of 19,200 bps, the ports are served by a 6551 ACIA UART chip each, plus a 8520 CIA, and a master 6502 CPU and buffer as well. The ports were connected with 8 pin DIN connectors on the card bracket, for which 8 pin to DB25 adapters were supplied. The card also had jumpers internally to toggle various pinning configurations. This driver can be built as a module; but then "generic_serial.o" will also be built as a module. This has to be loaded before "ser_a2232.o". If you want to do this, answer M here and read "<file:Documentation/modules.txt>". CONFIG_ZORRO This enables support for the Zorro bus in the Amiga. If you have expansion cards in your Amiga that conform to the Amiga AutoConfig(tm) specification, say Y, otherwise N. Note that even expansion cards that do not fit in the Zorro slots but fit in e.g. the CPU slot may fall in this category, so you have to say Y to let Linux use these. CONFIG_AMIGA_PCMCIA Include support in the kernel for pcmcia on Amiga 1200 and Amiga 600. If you intend to use pcmcia cards say Y; otherwise say N. CONFIG_WHIPPET_SERIAL HiSoft has a web page at <http://www.hisoft.co.uk/>, but there is no listing for the Whippet in their Amiga section. CONFIG_APNE If you have a PCMCIA NE2000 compatible adapter, say Y. Otherwise, say N. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module is called apne.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_BOOTX_TEXT Say Y here to see progress messages from the boot firmware in text mode. Requires either BootX or Open Firmware. CONFIG_AMIGA_BUILTIN_SERIAL If you want to use your Amiga's built-in serial port in Linux, answer Y. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_GVPIOEXT If you want to use a GVP IO-Extender serial card in Linux, say Y. Otherwise, say N. CONFIG_GVPIOEXT_LP Say Y to enable driving a printer from the parallel port on your GVP IO-Extender card, N otherwise. CONFIG_GVPIOEXT_PLIP Say Y to enable doing IP over the parallel port on your GVP IO-Extender card, N otherwise. CONFIG_MULTIFACE_III_TTY If you want to use a Multiface III card's serial port in Linux, answer Y. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_8260 The MPC8260 CPM (Communications Processor Module) is a typical embedded CPU made by Motorola. Selecting this option means that you wish to build a kernel for a machine with specifically an 8260 for a CPU. If in doubt, say N. CONFIG_PPC601_SYNC_FIX Some versions of the PPC601 (the first PowerPC chip) have bugs which mean that extra synchronization instructions are required near certain instructions, typically those that make major changes to the CPU state. These extra instructions reduce performance slightly. If you say N here, these extra instructions will not be included, resulting in a kernel which will run faster but may not run at all on some systems with the PPC601 chip. If in doubt, say Y here. CONFIG_ALL_PPC Linux currently supports several different kinds of PowerPC-based machines: Apple Power Macintoshes and clones (such as the Motorola Starmax series), PReP (PowerPC Reference Platform) machines (such as the Motorola PowerStacks, Motorola cPCI/VME embedded systems, and some IBM RS/6000 systems), CHRP (Common Hardware Reference Platform), and several embedded PowerPC systems containing 4xx, 6xx, 7xx, 8xx, 74xx, and 82xx processors. Currently, the default option is to build a kernel which works on the first three. Select PowerMac/PReP/MTX/CHRP if configuring for any of the above. Select Gemini if configuring for a Synergy Microsystems' Gemini series Single Board Computer. More information is available at: <http://www.synergymicro.com/PressRel/97_10_15.html>. Select APUS if configuring for a PowerUP Amiga. More information is available at: <http://linux-apus.sourceforge.net/>. CONFIG_ALTIVEC This option enables kernel support for the Altivec extensions to the PowerPC processor. The kernel currently supports saving and restoring altivec registers, and turning on the 'altivec enable' bit so user processes can execute altivec instructions. This option is only usefully if you have a processor that supports altivec (G4, otherwise known as 74xx series), but does not have any affect on a non-altivec cpu (it does, however add code to the kernel). If in doubt, say Y here. CONFIG_TAU G3 and G4 processors have an on-chip temperature sensor called the 'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die temperature within 2-4 degrees Celsius. This option shows the current on-die temperature in /proc/cpuinfo if the cpu supports it. Unfortunately, on some chip revisions, this sensor is very inaccurate and in some cases, does not work at all, so don't assume the cpu temp is actually what /proc/cpuinfo says it is. CONFIG_TAU_INT The TAU supports an interrupt driven mode which causes an interrupt whenever the temperature goes out of range. This is the fastest way to get notified the temp has exceeded a range. With this option off, a timer is used to re-check the temperature periodically. However, on some cpus it appears that the TAU interrupt hardware is buggy and can cause a situation which would lead unexplained hard lockups. Unless you are extending the TAU driver, or enjoy kernel/hardware debugging, leave this option off. CONFIG_TAU_AVERAGE The TAU hardware can compare the temperature to an upper and lower bound. The default behavior is to show both the upper and lower bound in /proc/cpuinfo. If the range is large, the temperature is either changing a lot, or the TAU hardware is broken (likely on some G4's). If the range is small (around 4 degrees), the temperature is relatively stable. CONFIG_PMAC_PBOOK This provides support for putting a PowerBook to sleep; it also enables media bay support. Power management works on the PB2400/3400/3500, Wallstreet, Lombard, and Bronze PowerBook G3. You must get the power management daemon, pmud, to make it work and you must have the /dev/pmu device (see the pmud README). Get pmud from <ftp://ftp.samba.org/pub/ppclinux/pmud/>. If you have a PowerBook, you should say Y. You may also want to compile the dma sound driver as a module and have it autoloaded. The act of removing the module shuts down the sound hardware for more power savings. CONFIG_PMAC_BACKLIGHT Say Y here to build in code to manage the LCD backlight on a Macintosh PowerBook. With this code, the backlight will be turned on and off appropriately on power-management and lid-open/lid-closed events; also, the PowerBook button device will be enabled so you can change the screen brightness. CONFIG_EST8260 EST8260: The EST8260 is a single-board computer manufactured by Wind River Systems, Inc. (formerly Embedded Support Tools Corp.) and based on the MPC8260. Wind River Systems has a website at <http://www.windriver.com/>, but the EST8260 cannot be found on it and has probably been discontinued or rebadged. TQM8260: MPC8260 based module, little larger than credit card, up to 128 MB global + 64 MB local RAM, 32 MB Flash, 32 kB EEPROM, 256 kB L@ Cache, 10baseT + 100baseT Ethernet, 2 x serial ports, ... Manufacturer: TQ Components, www.tq-group.de Date of Release: June 2001 End of Life: not yet :-) URL: <http://www.denx.de/PDF/TQM82xx_SPEC_Rev005.pdf> PM826: Modular system with MPC8260 CPU Manufacturer: MicroSys GmbH, <http://www.microsys.de/> Date of Release: mid 2001 End of life: - URL: <http://www.microsys.de/html/pm826.html> CU824: VMEBus Board with PCI extension with MPC8240 CPU Manufacturer: MicroSys GmbH, http://www.microsys.de/ Date of Release: early 2001 (?) End of life: - URL: <http://www.microsys.de/html/cu824.html> CONFIG_MAC_EMUMOUSEBTN This provides generic support for emulating the 2nd and 3rd mouse button with keypresses. If you say Y here, the emulation is still disabled by default. The emulation is controlled by these sysctl entries: /proc/sys/dev/mac_hid/mouse_button_emulation /proc/sys/dev/mac_hid/mouse_button2_keycode /proc/sys/dev/mac_hid/mouse_button3_keycode CONFIG_PPC_RTC If you say Y here and create a character special file /dev/rtc with major number 10 and minor number 135 using mknod ("man mknod"), you will get access to the real time clock (or hardware clock) built into your computer. If unsure, say Y here. CONFIG_PROC_DEVICETREE This option adds a device-tree directory under /proc which contains an image of the device tree that the kernel copies from Open Firmware. If unsure, say Y here. CONFIG_PPC_RTAS When you use this option, you will be able to use RTAS from userspace. RTAS stands for RunTime Abstraction Services and should provide a portable way to access and set system information. This is commonly used on RS/6000 (pSeries) computers. You can access RTAS via the special proc file system entry rtas. Don't confuse this rtas entry with the one in /proc/device-tree/rtas which is readonly. If you don't know if you can use RTAS look into /proc/device-tree/rtas. If there are some entries, it is very likely that you will be able to use RTAS. You can do cool things with rtas. To print out information about various sensors in the system, just do a $ cat /proc/rtas/sensors or if you power off your machine at night but want it running when you enter your office at 7:45 am, do a # date -d 'tomorrow 7:30' +%s > /proc/rtas/poweron and shutdown. If unsure, say Y. CONFIG_CMDLINE On some architectures (EBSA110 and CATS), there is currently no way for the boot loader to pass arguments to the kernel. For these architectures, you should supply some command-line options at build time by entering them here. As a minimum, you should specify the memory size and the root device (e.g., mem=64M root=/dev/nfs). CONFIG_KGDB Include in-kernel hooks for kgdb, the Linux kernel source level debugger. This project has a web page at <http://kgdb.sourceforge.net/>. CONFIG_XMON Include in-kernel hooks for the xmon kernel monitor/debugger supported by the PPC port. Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/config.in,v retrieving revision 1.23 retrieving revision 1.24 diff -u -d -r1.23 -r1.24 --- config.in 2002/01/20 03:54:45 1.23 +++ config.in 2002/01/27 22:22:56 1.24 @@ -1,4 +1,4 @@ -# BK Id: SCCS/s.config.in 1.45 11/08/01 07:57:40 paulus +# BK Id: SCCS/s.config.in 1.47 12/01/01 20:09:06 benh # # For a description of the syntax of this configuration file, # see Documentation/kbuild/config-language.txt. @@ -9,20 +9,8 @@ define_bool CONFIG_HAVE_DEC_LOCK y mainmenu_name "Linux/PowerPC Kernel Configuration" - -mainmenu_option next_comment -comment 'Code maturity level options' -bool 'Prompt for development and/or incomplete code/drivers' CONFIG_EXPERIMENTAL -endmenu -mainmenu_option next_comment -comment 'Loadable module support' -bool 'Enable loadable module support' CONFIG_MODULES -if [ "$CONFIG_MODULES" = "y" ]; then - bool ' Set version information on all module symbols' CONFIG_MODVERSIONS - bool ' Kernel module loader' CONFIG_KMOD -fi -endmenu +source init/Config.in mainmenu_option next_comment comment 'Platform support' @@ -152,11 +140,6 @@ fi fi -bool 'Networking support' CONFIG_NET -bool 'Sysctl support' CONFIG_SYSCTL -bool 'System V IPC' CONFIG_SYSVIPC -bool 'BSD Process Accounting' CONFIG_BSD_PROCESS_ACCT - # only elf supported, a.out is not -- Cort if [ "$CONFIG_PROC_FS" = "y" ]; then define_bool CONFIG_KCORE_ELF y @@ -205,8 +188,6 @@ define_bool CONFIG_FB_CONSOLE y define_bool CONFIG_AMIGA y define_bool CONFIG_ZORRO y - define_bool CONFIG_INPUT y - define_bool CONFIG_INPUT_AMIMOUSE y define_bool CONFIG_ABSTRACT_CONSOLE y define_bool CONFIG_FB y define_bool CONFIG_APUS_FAST_EXCEPT y @@ -306,6 +287,16 @@ endmenu mainmenu_option next_comment +comment 'Console drivers' +if [ "$CONFIG_4xx" != "y" -a "$CONFIG_8xx" != "y" ]; then + bool 'Support for VGA Console' CONFIG_VGA_CONSOLE +fi + source drivers/video/Config.in +endmenu + +source drivers/input/Config.in + +mainmenu_option next_comment comment 'Macintosh device drivers' if [ "$CONFIG_ALL_PPC" = "y" ]; then @@ -314,6 +305,10 @@ bool 'Support for PMU based PowerMacs' CONFIG_ADB_PMU if [ "$CONFIG_ADB_PMU" = "y" ]; then bool ' Power management support for PowerBooks' CONFIG_PMAC_PBOOK + if [ "$CONFIG_PMAC_PBOOK" = "y" ]; then + define_bool CONFIG_PM y + tristate ' APM emulation' CONFIG_PMAC_APM_EMU + fi # made a separate option since backlight may end up beeing used # on non-powerbook machines (but only on PMU based ones AFAIK) bool ' Backlight control for LCD screens' CONFIG_PMAC_BACKLIGHT @@ -326,14 +321,21 @@ bool 'Apple Desktop Bus (ADB) support' CONFIG_ADB if [ "$CONFIG_ADB" = "y" ]; then bool ' Include MacIO (CHRP) ADB driver' CONFIG_ADB_MACIO + dep_bool ' Support for ADB input devices (keyboard, mice, ...)' CONFIG_INPUT_ADBHID $CONFIG_INPUT + if [ "$CONFIG_INPUT_ADBHID" = "y" ]; then + bool ' Support for mouse button 2+3 emulation' CONFIG_MAC_EMUMOUSEBTN + fi + fi + if [ "$CONFIG_ADB_CUDA" != "n" ]; then + bool 'Support for ANS LCD display' CONFIG_ANSLCD fi fi endmenu -source drivers/usb/Config.in -source drivers/input/Config.in source drivers/char/Config.in +source drivers/media/Config.in + source fs/Config.in mainmenu_option next_comment @@ -354,8 +356,7 @@ source arch/ppc/8260_io/Config.in fi -source drivers/video/Config.in -source drivers/media/Config.in +source drivers/usb/Config.in if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then source net/bluetooth/Config.in |
From: Franz S. <fs...@us...> - 2002-01-27 22:22:59
|
Update of /cvsroot/linuxconsole/ruby/utils In directory usw-pr-cvs1:/tmp/cvs-serv26410/utils Modified Files: remove-obsolete-files Log Message: Sync PPC stuff with linux-dj. Index: remove-obsolete-files =================================================================== RCS file: /cvsroot/linuxconsole/ruby/utils/remove-obsolete-files,v retrieving revision 1.27 retrieving revision 1.28 diff -u -d -r1.27 -r1.28 --- remove-obsolete-files 2001/11/24 03:06:46 1.27 +++ remove-obsolete-files 2002/01/27 22:22:56 1.28 @@ -61,9 +61,7 @@ rm -fv drivers/char/pc_keyb.c rm -fv drivers/char/q40_keyb.c rm -fv drivers/char/qpmouse.c -rm -fv drivers/macintosh/adbhid.c rm -fv drivers/macintosh/mac_keyb.c -rm -fv drivers/macintosh/mac_hid.c rm -fv drivers/sbus/char/pcikbd.c rm -fv drivers/sbus/char/pcikbd.h rm -fv drivers/sbus/char/sunkbd.c |
From: Vojtech P. <vo...@us...> - 2002-01-27 01:48:57
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/keyboard In directory usw-pr-cvs1:/tmp/cvs-serv29747 Modified Files: atkbd.c Log Message: Fix Shift-PgUp/PgDn unknown key message. Index: atkbd.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/keyboard/atkbd.c,v retrieving revision 1.30 retrieving revision 1.31 diff -u -d -r1.30 -r1.31 --- atkbd.c 2002/01/22 20:37:14 1.30 +++ atkbd.c 2002/01/27 01:48:54 1.31 @@ -66,7 +66,7 @@ 0,150, 0,154,152,163,151,126,112,166, 0,140, 0,147, 0,127, 159,167,139,160,163, 0, 0,116,158, 0,150,165, 0, 0, 0,142, 157, 0,114,166,168, 0, 0, 0,155, 0, 98,113, 0,148, 0,138, - 0, 0, 0, 0, 0, 0,153,140, 0, 0, 96, 0, 0, 0,143, 0, + 0, 0, 0, 0, 0, 0,153,140, 0,255, 96, 0, 0, 0,143, 0, 133, 0,116, 0,143, 0,174,133, 0,107, 0,105,102, 0, 0,112, 110,111,108,112,106,103, 0,119, 0,118,109, 0, 99,104,119 }; |
From: Vojtech P. <vo...@us...> - 2002-01-27 00:22:48
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/usb In directory usw-pr-cvs1:/tmp/cvs-serv13867 Modified Files: hid-core.c Log Message: Only use output pipe for output reports. Feature reports still need to be passed over the control pipe. Index: hid-core.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/usb/hid-core.c,v retrieving revision 1.41 retrieving revision 1.42 diff -u -d -r1.41 -r1.42 --- hid-core.c 2002/01/26 19:20:37 1.41 +++ hid-core.c 2002/01/27 00:22:46 1.42 @@ -1093,7 +1093,7 @@ int head; unsigned long flags; - if (dir == USB_DIR_OUT && hid->urbout) { + if (hid->urbout && dir == USB_DIR_OUT && report->type == HID_OUTPUT_REPORT) { spin_lock_irqsave(&hid->outlock, flags); |
From: Vojtech P. <vo...@us...> - 2002-01-26 19:20:40
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/usb In directory usw-pr-cvs1:/tmp/cvs-serv15263/drivers/usb Modified Files: hid-core.c Added Files: Config.help Log Message: psmouse: add a workaround for mice which don't send 0xfa to the ID command hid-core: don't filter out-of-range values - they may be 'null' values Config.help: add new style helpfiles --- NEW FILE: Config.help --- CONFIG_USB Universal Serial Bus (USB) is a specification for a serial bus subsystem which offers higher speeds and more features than the traditional PC serial port. The bus supplies power to peripherals and allows for hot swapping. Up to 127 USB peripherals can be connected to a single USB port in a tree structure. The USB port is the root of the tree, the peripherals are the leaves and the inner nodes are special USB devices called hubs. Many newer PC's have USB ports and newer peripherals such as scanners, keyboards, mice, modems, and printers support the USB protocol and can be connected to the PC via those ports. Say Y here if your computer has a USB port and you want to use USB devices. You then need to say Y to at least one of "UHCI support" or "OHCI support" below (the type of interface that the USB hardware in your computer provides to the operating system) and then choose from among the drivers for USB peripherals. You may want to check out the information provided in <file:Documentation/usb/> and especially the links given in <file:Documentation/usb/usb-help.txt>. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called usbcore.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_DEBUG Say Y here if you want the USB core & hub drivers to produce a bunch of debug messages to the system log. Select this if you are having a problem with USB support and want to see more of what is going on. CONFIG_USB_LONG_TIMEOUT This option makes the standard time out a bit longer. Basically, some devices are just slow to respond, so this makes usb more patient. There should be no harm in selecting this, but it is needed for some MGE Ellipse UPSes. If you have an MGE Ellipse UPS, or you see timeouts in HID transactions, say Y; otherwise say N. CONFIG_USB_UHCI The Universal Host Controller Interface is a standard by Intel for accessing the USB hardware in the PC (which is also called the USB host controller). If your USB host controller conforms to this standard, you may want to say Y, but see below. All recent boards with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, i810, i820) conform to this standard. Also all VIA PCI chipsets (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro 133). Currently there exist two drivers for UHCI host controllers: this one and the so-called JE driver, which you can get from "UHCI alternate (JE) support", below. You need only one. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called usb-uhci.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_UHCI_ALT The Universal Host Controller Interface is a standard by Intel for accessing the USB hardware in the PC (which is also called the USB host controller). If your USB host controller conforms to this standard, you may want to say Y, but see below. All recent boards with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, i810, i820) conform to this standard. Also all VIA PCI chipsets (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro 133). If unsure, say Y. Currently there exist two drivers for UHCI host controllers: this so-called JE driver, and the one you get from "UHCI support", above. You need only one. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called uhci.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_OHCI The Open Host Controller Interface is a standard by Compaq/Microsoft/National for accessing the USB PC hardware (also called USB host controller). If your USB host controller conforms to this standard, say Y. The USB host controllers on most non-Intel architectures and on several x86 compatibles with non-Intel chipsets -- like SiS (aktual 610, 610 and so on) or ALi (ALi IV, ALi V, Aladdin Pro..) -- conform to this standard. You may want to read <file:Documentation/usb/ohci.txt>. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called usb-ohci.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_HID Say Y here if you want full HID support to connect keyboards, mice, joysticks, graphic tablets, or any other HID based devices to your computer via USB. You can't use this driver and the HIDBP (Boot Protocol) keyboard and mouse drivers at the same time. More information is available: <file:Documentation/input/input.txt>. If unsure, say Y. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called hid.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_HIDDEV Say Y here if you want to support HID devices (from the USB specification standpoint) that aren't strictly user interface devices, like monitor controls and Uninterruptable Power Supplies. This module supports these devices separately using a separate event interface on /dev/usb/hiddevX (char 180:96 to 180:111). This driver requires CONFIG_USB_HID. If unsure, say N. CONFIG_USB_KBD Say Y here if you don't want to use the generic HID driver for your USB keyboard and prefer to use the keyboard in its limited Boot Protocol mode instead. This driver is much smaller than the HID one. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called usbkbd.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. If unsure, say N. CONFIG_USB_MOUSE Say Y here if you don't want to use the generic HID driver for your USB mouse and prefer to use the mouse in its limited Boot Protocol mode instead. This driver is much smaller than the HID one. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called usbmouse.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. If unsure, say N. CONFIG_USB_WACOM Say Y here if you want to use the USB version of the Wacom Intuos or Graphire tablet. Make sure to say Y to "Mouse support" (CONFIG_INPUT_MOUSEDEV) and/or "Event interface support" (CONFIG_INPUT_EVDEV) as well. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called wacom.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_POWERMATE Say Y here if you want to use the Griffin Technology, Inc. USB PowerMate device. This device is a stainless steel dial which can measure clockwise and anticlockwise rotation. The dial also acts as a pushbutton. The base contains an LED which can be instructed to pulse or to switch to a particular intensity. You can download userspace tools from http://sowerbutts.com/powermate/ This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called powermate.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_SCANNER Say Y here if you want to connect a USB scanner to your computer's USB port. Please read <file:Documentation/usb/scanner.txt> and <file:Documentation/usb/scanner-hp-sane.txt> for more information. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called scanner.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_AUDIO Say Y here if you want to connect USB audio equipment such as speakers to your computer's USB port. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called audio.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_ACM This driver supports USB modems and ISDN adapters which support the Communication Device Class Abstract Control Model interface. Please read <file:Documentation/usb/acm.txt> for details. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called acm.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_PRINTER Say Y here if you want to connect a USB printer to your computer's USB port. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called printer.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_IBMCAM Say Y here if you want to connect a IBM "C-It" camera, also known as "Xirlink PC Camera" to your computer's USB port. For more information, read <file:Documentation/usb/ibmcam.txt>. This driver uses the Video For Linux API. You must enable (Y or M in config) Video For Linux (under Character Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at <http://roadrunner.swansea.uk.linux.org/v4l.shtml>. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called ibmcam.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. This camera has several configuration options which can be specified when you load the module. Read <file:Documentation/usb/ibmcam.txt> to learn more. CONFIG_USB_OV511 Say Y here if you want to connect this type of camera to your computer's USB port. See <file:Documentation/usb/ov511.txt> for more information and for a list of supported cameras. This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Character Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at <http://roadrunner.swansea.uk.linux.org/v4l.shtml>. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called ov511.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_CDCETHER This driver supports devices conforming to the Communication Device Class Ethernet Control Model. This is used in some cable modems. For more details on the specification, get the Communication Device Class specification from <http://www.usb.org/>. This driver should work with the following devices: * Ericsson PipeRider (all variants) * Motorola (DM100 and SB4100) * Broadcom Cable Modem (reference design) * Toshiba PCX1100U and possibly other cable modems The device creates a network device (ethX, where X depends on what other networking devices you have in use), as for a normal PCI or ISA based ethernet network card. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called CDCEther.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_PWC Say Y or M here if you want to use one of these Philips USB webcams: PCA645, PCA646, PCVC675, PCVC680, PCVC690, PCVC730, PCVC740, or the Askey VC010. The PCA635, PCVC665 and PCVC720 are not supported by this driver and never will be. This driver has an optional plugin, which is distributed as a binary module only. It contains code that allow you to use higher resolutions and framerates but may not be distributed as source. But even without this plugin you can these cams for most applications. See <file:Documentation/usb/philips.txt> for more information and installation instructions. The built-in microphone is enabled by selecting USB Audio support. This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Character Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at <http://roadrunner.swansea.uk.linux.org/v4l.shtml>. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called pwc.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_SE401 Say Y here if you want to connect this type of camera to your computer's USB port. See <file:Documentation/usb/se401.txt> for more information and for a list of supported cameras. This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Multimedia Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at <http://roadrunner.swansea.uk.linux.org/v4l.shtml>. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called se401.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_STV680 Say Y here if you want to connect this type of camera to your computer's USB port. This includes the Pencam line of cameras. See <file:Documentation/usb/stv680.txt> for more information and for a list of supported cameras. This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Multimedia Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at <http://roadrunner.swansea.uk.linux.org/v4l.shtml>. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called stv680.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_VICAM Say Y here if you have 3com homeconnect camera (vicam). This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" (under Multimedia Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at <http://roadrunner.swansea.uk.linux.org/v4l.shtml>. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called vicam.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_PEGASUS Say Y here if you know you have Pegasus or Pegasus II based adapter. If in doubt then look at linux/drivers/usb/pegasus.h for the complete list of supported devices. If your particular adapter is not in the list and you are _sure_ it is Pegasus or Pegasus II based then send me (pma...@ln...) vendor and device IDs. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called pegasus.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_KAWETH Say Y here if you want to use one of the following 10Mbps only USB Ethernet adapters based on the KLSI KL5KUSB101B chipset: 3Com 3C19250 ADS USB-10BT ATEN USB Ethernet ASANTE USB To Ethernet Adapter AOX Endpoints USB Ethernet Correga K.K. D-Link DSB-650C and DU-E10 Entrega / Portgear E45 I-O DATA USB-ET/T Jaton USB Ethernet Device Adapter Kingston Technology USB Ethernet Adapter Linksys USB10T Mobility USB-Ethernet Adapter NetGear EA-101 Peracom Enet and Enet2 Portsmith Express Ethernet Adapter Shark Pocket Adapter SMC 2202USB Sony Vaio port extender This driver is likely to work with most 10Mbps only USB Ethernet adapters, including some "no brand" devices. It does NOT work on SmartBridges smartNIC or on Belkin F5U111 devices - you should use the CATC NetMate driver for those. If you are not sure which one you need, select both, and the correct one should be selected for you. This driver makes the adapter appear as a normal Ethernet interface, typically on eth0, if it is the only ethernet device, or perhaps on eth1, if you have a PCI or ISA ethernet card installed. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called kaweth.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_CATC Say Y if you want to use one of the following 10Mbps USB Ethernet device based on the EL1210A chip. Supported devices are: Belkin F5U111 CATC NetMate CATC NetMate II smartBridges smartNIC This driver makes the adapter appear as a normal Ethernet interface, typically on eth0, if it is the only ethernet device, or perhaps on eth1, if you have a PCI or ISA ethernet card installed. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called catc.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_DC2XX Say Y here if you want to connect this type of still camera to your computer's USB port. See <file:Documentation/usb/dc2xx.txt> for more information; some non-Kodak cameras may also work with this driver, given application support (such as <http://www.gphoto.org/>). This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called dc2xx.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_MDC800 Say Y here if you want to connect this type of still camera to your computer's USB port. This driver can be used with gphoto 0.4.3 and higher (look at <http://www.gphoto.org/>). To use it create a device node with "mknod /dev/mustek c 180 32" and configure it in your software. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called mdc800.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_STORAGE Say Y here if you want to connect USB mass storage devices to your computer's USB port. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called usb-storage.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_STORAGE_DEBUG Say Y here in order to have the USB Mass Storage code generate verbose debugging messages. CONFIG_USB_STORAGE_ISD200 Say Y here if you want to use USB Mass Store devices based on the In-Systems Design ISD-200 USB/ATA bridge. Some of the products that use this chip are: - Archos Jukebox 6000 - ISD SmartCable for Storage - Taiwan Skymaster CD530U/DEL-0241 IDE bridge - Sony CRX10U CD-R/RW drive - CyQ've CQ8060A CDRW drive - Planex eXtreme Drive RX-25HU USB-IDE cable (not model RX-25U) CONFIG_USB_USS720 This driver is for USB parallel port adapters that use the Lucent Technologies USS-720 chip. These cables are plugged into your USB port and provide USB compatibility to peripherals designed with parallel port interfaces. The chip has two modes: automatic mode and manual mode. In automatic mode, it looks to the computer like a standard USB printer. Only printers may be connected to the USS-720 in this mode. The generic USB printer driver ("USB Printer support", above) may be used in that mode, and you can say N here if you want to use the chip only in this mode. Manual mode is not limited to printers, any parallel port device should work. This driver utilizes manual mode. Note however that some operations are three orders of magnitude slower than on a PCI/ISA Parallel Port, so timing critical applications might not work. Say Y here if you own an USS-720 USB->Parport cable and intend to connect anything other than a printer to it. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called uss720.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_DEVICEFS If you say Y here (and to "/proc file system support" in the "File systems section, above), you will get a file /proc/bus/usb/devices which lists the devices currently connected to your USB bus or busses, a file /proc/bus/usb/drivers which lists the USB kernel client drivers currently loaded, and for every connected device a file named "/proc/bus/usb/xxx/yyy", where xxx is the bus number and yyy the device number; the latter files can be used by user space programs to talk directly to the device. These files are "virtual", meaning they are generated on the fly and not stored on the hard drive. You may need to mount the usbdevfs file system to see the files, use mount -t usbdevfs none /proc/bus/usb For the format of the various /proc/bus/usb/ files, please read <file:Documentation/usb/proc_usb_info.txt>. Please note that this code is completely unrelated to devfs, the "/dev file system support". Most users want to say Y here. CONFIG_USB_BANDWIDTH If you say Y here, the USB subsystem enforces USB bandwidth allocation and will prevent some device opens from succeeding if they would cause USB bandwidth usage to go above 90% of the bus bandwidth. If you say N here, these conditions will cause warning messages about USB bandwidth usage to be logged and some devices or drivers may not work correctly. CONFIG_USB_DABUSB A Digital Audio Broadcasting (DAB) Receiver for USB and Linux brought to you by the DAB-Team (<http://dab.in.tum.de/>). This driver can be taken as an example for URB-based bulk, control, and isochronous transactions. URB's are explained in <file:Documentation/usb/URB.txt>. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called dabusb.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_USBNET This driver supports network links over USB with USB "Network" or "data transfer" cables, often used to network laptops to PCs. Such cables have chips from suppliers such as Belkin/eTEK, GeneSys (GeneLink), NetChip and Prolific. Intelligent USB devices could also use this approach to provide Internet access, using standard USB cabling. You can find these chips also on some motherboards with USB PC2PC support. These links will have names like "usb0", "usb1", etc. They act like two-node Ethernets, so you can use 802.1d Ethernet Bridging (CONFIG_BRIDGE) to simplify your network routing. This code is also available as a kernel module (code which can be inserted in and removed from the running kernel whenever you want). The module will be called usbnet.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_STORAGE_FREECOM Support for the Freecom USB to IDE/ATAPI adaptor. Freecom has a web page at <http://www.freecom.de/>. CONFIG_USB_STORAGE_DPCM Say Y here to support the Microtech ZiO! CompactFlash/SmartMedia reader, details at <http://www.microtechint.com/zio/index.html>. This driver treats the flash card as a removable storage device. CONFIG_USB_STORAGE_SDDR09 Say Y here to include additional code to support the Sandisk SDDR-09 SmartMedia reader in the USB Mass Storage driver. CONFIG_USB_RIO500 Say Y here if you want to connect a USB Rio500 mp3 player to your computer's USB port. Please read <file:Documentation/usb/rio.txt> for more information. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called rio500.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_AUERSWALD Say Y here if you want to connect an Auerswald USB ISDN Device to your computer's USB port. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called auerswald.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_DSBR Say Y here if you want to connect this type of radio to your computer's USB port. Note that the audio is not digital, and you must connect the line out connector to a sound card or a set of speakers. This driver uses the Video For Linux API. You must enable (Y or M in config) Video For Linux (under Character Devices) to use this driver. Information on this API and pointers to "v4l" programs may be found on the WWW at <http://roadrunner.swansea.uk.linux.org/v4l.shtml>. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called dsbr100.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_USB_MICROTEK Say Y here if you want support for the Microtek X6USB and possibly the Phantom 336CX, Phantom C6 and ScanMaker V6U(S)L. Support for anything but the X6 is experimental. Please report failures and successes. The scanner will appear as a scsi generic device to the rest of the system. Scsi support is required for this driver to compile and work. SANE 1.0.4 or newer is needed to make use of your scanner. This driver can be compiled as a module. CONFIG_USB_HPUSBSCSI Say Y here if you want support for the HP 53xx series of scanners and the Minolta Scan Dual. This driver is experimental. The scanner will be accessible as a SCSI device. CONFIG_USB_BLUETOOTH Say Y here if you want to connect a USB Bluetooth device to your computer's USB port. You will need the Bluetooth stack (available at <http://developer.axis.com/software/index.shtml>) to fully use the device. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called bluetooth.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. Index: hid-core.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/usb/hid-core.c,v retrieving revision 1.40 retrieving revision 1.41 diff -u -d -r1.40 -r1.41 --- hid-core.c 2002/01/24 21:59:47 1.40 +++ hid-core.c 2002/01/26 19:20:37 1.41 @@ -918,11 +918,6 @@ return -1; } } - if ( (value > field->logical_maximum) - || (value < field->logical_minimum)) { - dbg("value %d is invalid", value); - return -1; - } field->value[offset] = value; return 0; } |
From: Vojtech P. <vo...@us...> - 2002-01-26 19:20:40
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input In directory usw-pr-cvs1:/tmp/cvs-serv15263/drivers/input Added Files: Config.help Log Message: psmouse: add a workaround for mice which don't send 0xfa to the ID command hid-core: don't filter out-of-range values - they may be 'null' values Config.help: add new style helpfiles --- NEW FILE: Config.help --- CONFIG_INPUT Say Y here if you have any input device (mouse, keyboard, tablet, joystick, steering wheel ...) connected to your system and want it to be available to applications. This includes standard PS/2 keyboard and mouse. Say N here if you have a headless (no monitor, no keyboard) system. More information is available: <file:Documentation/input/input.txt> If unsure, say Y. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called input.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_INPUT_KEYBDEV Say Y here if you want your keyboard to be able to serve as a system keyboard. This is needed in most cases. The only exceptions are headless and embedded systems. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called keybdev.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_INPUT_MOUSEDEV Say Y here if you want your mouse to be accessible as char devices 13:32+ - /dev/input/mouseX and 13:63 - /dev/input/mice as an emulated IntelliMouse Explorer PS/2 mouse. That way, all user space programs (includung SVGAlib, GPM and X) will be able to use your mouse. If unsure, say Y. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called mousedev.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_INPUT_MOUSEDEV_SCREEN_X If you're using a digitizer, or a graphic tablet, and want to use it as a mouse then the mousedev driver needs to know the X window screen resolution you are using to correctly scale the data. If you're not using a digitizer, this value is ignored. CONFIG_INPUT_MOUSEDEV_SCREEN_Y If you're using a digitizer, or a graphic tablet, and want to use it as a mouse then the mousedev driver needs to know the X window screen resolution you are using to correctly scale the data. If you're not using a digitizer, this value is ignored. CONFIG_INPUT_JOYDEV Say Y here if you want your joystick or gamepad to be accessible as char device 13:0+ - /dev/input/jsX device. If unsure, say Y. More information is available: <file:Documentation/input/joystick.txt> This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called joydev.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_INPUT_TSDEV Say Y here if you have an application that only can understand the Compaq touchscreen protocol for absolute pointer data. This is useful namely for embedded configurations. If unsure, say N. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called tsdev.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_INPUT_EVDEV Say Y here if you want your input device events be accessible under char device 13:64+ - /dev/input/eventX in a generic way. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called evdev.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_INPUT_EVBUG Say Y here if you have a problem with the input subsystem and want all events (keypresses, mouse movements), to be output to the system log. While this is useful for debugging, it's also a security threat - your keypresses include your passwords, of course. If unsure, say N. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called joydev.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. |
From: Vojtech P. <vo...@us...> - 2002-01-26 19:20:40
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/serio In directory usw-pr-cvs1:/tmp/cvs-serv15263/drivers/input/serio Added Files: Config.help Log Message: psmouse: add a workaround for mice which don't send 0xfa to the ID command hid-core: don't filter out-of-range values - they may be 'null' values Config.help: add new style helpfiles --- NEW FILE: Config.help --- CONFIG_SERIO Say Yes here if you have any input device that uses serial I/O to communicate with the system. This includes the * standard AT keyboard and PS/2 mouse * as well as serial mice, Sun keyboards, some joysticks and 6dof devices and more. If unsure, say Y. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called serio.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_SERIO_I8042 i8042 is the chip over which the standard AT keyboard and PS/2 mouse are connected to the computer. If you use these devices, you'll need to say Y here. If unsure, say Y. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called i8042.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_SERIO_SERPORT Say Y here if you plan to use an input device (mouse, joystick, tablet, 6dof) that communicates over the RS232 serial (COM) port. More information is available: <file:Documentation/input/input.txt> If unsure, say Y. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called serport.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_SERIO_CT82C710 Say Y here if you have a Texas Instruments TravelMate notebook equipped with the ct82c710 chip and want to use a mouse connected to the "QuickPort". If unsure, say N. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called ct82c710.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_SERIO_PARKBD Say Y here if you built a simple parallel port adapter to attach an additional AT keyboard, XT keyboard or PS/2 mouse. More information is available: <file:Documentation/input/input.txt> If unsure, say N. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called parkbd.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_SERIO_ACORN Say Y here if you have the Acorn RiscPC and want to use an AT keyboard connected to its keyboard controller. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called rpckbd.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. |
From: Vojtech P. <vo...@us...> - 2002-01-26 19:20:39
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/mouse In directory usw-pr-cvs1:/tmp/cvs-serv15263/drivers/input/mouse Modified Files: psmouse.c Added Files: Config.help Log Message: psmouse: add a workaround for mice which don't send 0xfa to the ID command hid-core: don't filter out-of-range values - they may be 'null' values Config.help: add new style helpfiles --- NEW FILE: Config.help --- CONFIG_INPUT_MOUSE Say Y here, and a list of supported mice will be displayed. This option doesn't affect the kernel. If unsure, say Y. CONFIG_MOUSE_PS2 Say Y here if you have a PS/2 mouse connected to your system. This includes the standard 2 or 3-button PS/2 mouse, as well as PS/2 mice with wheels and extra buttons, Microsoft, Logitech or Genius compatible. If unsure, say Y. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called psmouse.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_MOUSE_SERIAL Say Y here if you have a serial (RS-232, COM port) mouse connected to your system. This includes Sun, MouseSystems, Microsoft, Logitech and all other compatible serial mice. If unsure, say N. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called sermouse.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_MOUSE_GUNZE Say Y here if you have the Gunze AHL-51 touchscreen connected to your system. If unsure, say N. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called gunze.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_MOUSE_INPORT Say Y here if you have an InPort, Microsoft or ATI XL busmouse. They are rather rare these days. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called inport.o. If you want to compile it as a module, say M here and read <file.:Documentation/modules.txt>. CONFIG_MOUSE_ATIXL Say Y here if your mouse is of the ATI XL variety. CONFIG_MOUSE_LOGIBM Say Y here if you have a Logitech busmouse. They are rather rare these days. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called logibm.o. If you want to compile it as a module, say M here and read <file.:Documentation/modules.txt>. CONFIG_MOUSE_PC110PAD Say Y if you have the IBM PC-110 micro-notebook and want its touchscreen supported. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called pc110pad.o. If you want to compile it as a module, say M here and read <file.:Documentation/modules.txt>. CONFIG_MOUSE_MAPLE Say Y if you have a DreamCast console and a mouse attached to its Maple bus. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called maplemouse.o. If you want to compile it as a module, say M here and read <file.:Documentation/modules.txt>. CONFIG_MOUSE_AMIGA Say Y here if you have an Amiga and want its native mouse supported by the kernel. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called amimouse.o. If you want to compile it as a module, say M here and read <file.:Documentation/modules.txt>. CONFIG_MOUSE_ACORN Say Y here if you have the Acorn RiscPC computer and want its native mouse supported. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called rpcmouse.o. If you want to compile it as a module, say M here and read <file.:Documentation/modules.txt>. Index: psmouse.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/mouse/psmouse.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- psmouse.c 2002/01/22 20:48:38 1.15 +++ psmouse.c 2002/01/26 19:20:36 1.16 @@ -185,6 +185,11 @@ case PSMOUSE_RET_NAK: psmouse->ack = -1; break; + default: + psmouse->ack = 1; /* Workaround for mice which don't ACK the Get ID command */ + if (psmouse->cmdcnt) + psmouse->cmdbuf[--psmouse->cmdcnt] = data; + break; } psmouse->acking = 0; return; |
From: Vojtech P. <vo...@us...> - 2002-01-26 19:20:39
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/keyboard In directory usw-pr-cvs1:/tmp/cvs-serv15263/drivers/input/keyboard Added Files: Config.help Log Message: psmouse: add a workaround for mice which don't send 0xfa to the ID command hid-core: don't filter out-of-range values - they may be 'null' values Config.help: add new style helpfiles --- NEW FILE: Config.help --- CONFIG_INPUT_KEYBOARD Say Y here, and a list of supported keyboards will be displayed. This option doesn't affect the kernel. If unsure, say Y. CONFIG_KEYBOARD_ATKBD Say Y here if you want to use the standard AT keyboard. Usually you'll need this, unless you have a different type keyboard (USB, ADB or other). If unsure, say Y. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called atkbd.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_KEYBOARD_SUNKBD Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, connected either to the Sun keyboard connector or to an serial (RS-232) port via a simple adapter. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called sunkbd.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_KEYBOARD_PS2SERKBD Say Y here if you want to use a PS/2 to Serial converter with a keyboard attached to it. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called ps2serkbd.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_KEYBOARD_XTKBD Say Y here if you want to use the old IBM PC/XT keyboard (or compatible) on your system. This is only possible with a parallel port keyboard adapter, you cannot connect it to the keyboard port on a PC that runs Linux. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called xtkbd.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_KEYBOARD_MAPLE Say Y here if you have a DreamCast console running Linux and have a keyboard attached to its Maple bus. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called maple_keyb.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. |
From: Vojtech P. <vo...@us...> - 2002-01-26 19:20:39
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/joystick In directory usw-pr-cvs1:/tmp/cvs-serv15263/drivers/input/joystick Added Files: Config.help Log Message: psmouse: add a workaround for mice which don't send 0xfa to the ID command hid-core: don't filter out-of-range values - they may be 'null' values Config.help: add new style helpfiles --- NEW FILE: Config.help --- CONFIG_JOYSTICK If you have a joystick, 6dof controller, gamepad, steering wheel, weapon control system or something like that you can say Y here and the list of supported devices will be displayed. This option doesn't affect the kernel. Please read the file <file:Documentation/input/joystick.txt> which contains more information. CONFIG_JOYSTICK_ANALOG Say Y here if you have a joystick that connects to the PC gameport. In addition to the usual PC analog joystick, this driver supports many extensions, including joysticks with throttle control, with rudders, additional hats and buttons compatible with CH Flightstick Pro, ThrustMaster FCS, 6 and 8 button gamepads, or Saitek Cyborg joysticks. Please read the file <file:Documentation/input/joystick.txt> which contains more information. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called analog.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_A3D Say Y here if you have an FPGaming or MadCatz controller using the A3D protocol over the PC gameport. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called a3d.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_ADI Say Y here if you have a Logitech controller using the ADI protocol over the PC gameport. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called adi.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_COBRA Say Y here if you have a Creative Labs Blaster Cobra gamepad. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called cobra.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_GF2K Say Y here if you have a Genius Flight2000 or MaxFighter digitally communicating joystick or gamepad. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called gf2k.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_GRIP Say Y here if you have a Gravis controller using the GrIP protocol over the PC gameport. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called grip.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_GUILLEMOT Say Y here if you have a Guillemot joystick using a digital protocol over the PC gameport. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called guillemot.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_INTERACT Say Y here if you have an InterAct gameport or joystick communicating digitally over the gameport. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called interact.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_SIDEWINDER Say Y here if you have a Microsoft controller using the Digital Overdrive protocol over PC gameport. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called sidewinder.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_TMDC Say Y here if you have a ThrustMaster controller using the DirectConnect (BSP) protocol over the PC gameport. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called tmdc.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_IFORCE_USB Say Y here if you have an I-Force joystick or steering wheel connected to your USB port. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called iforce.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_IFORCE_232 Say Y here if you have an I-Force joystick or steering wheel connected to your serial (COM) port. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called iforce.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_WARRIOR Say Y here if you have a Logitech WingMan Warrior joystick connected to your computer's serial port. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called warrior.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_MAGELLAN Say Y here if you have a Magellan or Space Mouse 6DOF controller connected to your computer's serial port. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called magellan.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_SPACEORB Say Y here if you have a SpaceOrb 360 or SpaceBall Avenger 6DOF controller connected to your computer's serial port. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called spaceorb.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_SPACEBALL Say Y here if you have a SpaceTec SpaceBall 2003/3003/4000 FLX controller connected to your computer's serial port. For the SpaceBall 4000 USB model, use the USB HID driver. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called spaceball.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_STINGER Say Y here if you have a Gravis Stinger connected to one of your serial ports. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called stinger.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_TWIDDLER Say Y here if you have a Handykey Twiddler connected to your computer's serial port and want to use it as a joystick. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called twidjoy.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_DB9 Say Y here if you have a Sega Master System gamepad, Sega Genesis gamepad, Sega Saturn gamepad, or a Multisystem -- Atari, Amiga, Commodore, Amstrad CPC joystick connected to your parallel port. For more information on how to use the driver please read <file:Documentation/input/joystick-parport.txt>. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called db9.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_GAMECON Say Y here if you have a Nintendo Entertainment System gamepad, Super Nintendo Entertainment System gamepad, Nintendo 64 gamepad, Sony PlayStation gamepad or a Multisystem -- Atari, Amiga, Commodore, Amstrad CPC joystick connected to your parallel port. For more information on how to use the driver please read <file:Documentation/input/joystick-parport.txt>. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called gamecon.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_TURBOGRAFX Say Y here if you have the TurboGraFX interface by Steffen Schwenke, and want to use it with Multisystem -- Atari, Amiga, Commodore, Amstrad CPC joystick. For more information on how to use the driver please read <file:Documentation/input/joystick-parport.txt>. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called turbografx.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_JOYSTICK_AMIJOY Say Y here if you have an Amiga with a digital joystick connected to it. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called joy-amiga.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. |
From: Vojtech P. <vo...@us...> - 2002-01-26 19:20:39
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input/gameport In directory usw-pr-cvs1:/tmp/cvs-serv15263/drivers/input/gameport Added Files: Config.help Log Message: psmouse: add a workaround for mice which don't send 0xfa to the ID command hid-core: don't filter out-of-range values - they may be 'null' values Config.help: add new style helpfiles --- NEW FILE: Config.help --- CONFIG_GAMEPORT Gameport support is for the standard 15-pin PC gameport. If you have a joystick, gamepad, gameport card, a soundcard with a gameport or anything else that uses the gameport, say Y or M here and also to at least one of the hardware specific drivers. For Ensoniq AudioPCI (ES1370), AudioPCI 97 (ES1371), ESS Solo1, S3 SonicVibes, Trident 4DWave, SiS7018, and ALi 5451 gameport support is provided by the sound drivers, so you won't need any from the below listed modules. You still need to say Y here. If unsure, say Y. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called gameport.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_GAMEPORT_NS558 Say Y here if you have an ISA or PnP gameport. If unsure, say Y. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called ns558.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_GAMEPORT_L4 Say Y here if you have a PDPI Lightning 4 gamecard. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called lightning.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_GAMEPORT_EMU10K1 Say Y here if you have a SoundBlaster Live! or SoundBlaster Audigy card and want to use its gameport. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called emu10k1-gp.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_GAMEPORT_VORTEX Say Y here if you have an Vortex 1 or 2 card and want to use its gameport. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called vortex.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_GAMEPORT_VORTEX Say Y here if you have a ForteMedia FM801 card and want to use its gameport. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called fm801-gp.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. CONFIG_GAMEPORT_CS461X Say Y here if you have a Cirrus CS461x aka "Crystal SoundFusion" PCI audio accelerator and want to use its gameport. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called cs461x.o. If you want to compile it as a module, say M here and read <file:Documentation/modules.txt>. |
From: Vojtech P. <vo...@us...> - 2002-01-24 21:59:51
|
Update of /cvsroot/linuxconsole/ruby/linux/include/linux In directory usw-pr-cvs1:/tmp/cvs-serv7220/linux/include/linux Modified Files: input.h Log Message: Add a couple usb key mappings. Index: input.h =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/include/linux/input.h,v retrieving revision 1.58 retrieving revision 1.59 diff -u -d -r1.58 -r1.59 --- input.h 2002/01/21 22:37:50 1.58 +++ input.h 2002/01/24 21:59:47 1.59 @@ -322,6 +322,8 @@ #define KEY_FINANCE 219 #define KEY_SPORT 220 #define KEY_SHOP 221 +#define KEY_ALTERASE 222 +#define KEY_CANCEL 223 #define KEY_UNKNOWN 240 @@ -442,6 +444,7 @@ */ #define MSC_SERIAL 0x00 +#define MSC_PULSELED 0x01 #define MSC_MAX 0x07 /* |
From: Vojtech P. <vo...@us...> - 2002-01-24 21:59:51
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/usb In directory usw-pr-cvs1:/tmp/cvs-serv7220/linux/drivers/usb Modified Files: hid-core.c Log Message: Add a couple usb key mappings. Index: hid-core.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/usb/hid-core.c,v retrieving revision 1.39 retrieving revision 1.40 diff -u -d -r1.39 -r1.40 |
From: Vojtech P. <vo...@us...> - 2002-01-24 21:26:25
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/usb In directory usw-pr-cvs1:/tmp/cvs-serv29487/drivers/usb Modified Files: hid-core.c Log Message: Fix the updated driver - now it has (hopefully working) support for interrupt out pipe. Index: hid-core.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/usb/hid-core.c,v retrieving revision 1.38 retrieving revision 1.39 diff -u -d -r1.38 -r1.39 --- hid-core.c 2002/01/24 19:51:26 1.38 +++ hid-core.c 2002/01/24 21:26:21 1.39 @@ -1195,6 +1195,7 @@ struct hid_report_enum *report_enum; struct hid_report *report; struct list_head *list; + int len; report_enum = hid->report_enum + HID_INPUT_REPORT; list = report_enum->report_list.next; @@ -1221,6 +1222,9 @@ list = report_enum->report_list.next; while (list != &report_enum->report_list) { report = (struct hid_report *) list; + len = ((report->size - 1) >> 3) + 1 + report_enum->numbered; + if (len > hid->urbin->transfer_buffer_length) + hid->urbin->transfer_buffer_length = len < HID_BUFFER_SIZE ? len : HID_BUFFER_SIZE; usb_control_msg(hid->dev, usb_sndctrlpipe(hid->dev, 0), 0x0a, USB_TYPE_CLASS | USB_RECIP_INTERFACE, report->id, hid->ifnum, NULL, 0, HZ * USB_CTRL_SET_TIMEOUT); @@ -1320,7 +1324,7 @@ continue; if (!(hid->urbout = usb_alloc_urb(0))) goto fail; - pipe = usb_sndbulkpipe(dev, endpoint->bEndpointAddress); /* FIXME should we use sndint here? */ + pipe = usb_sndbulkpipe(dev, endpoint->bEndpointAddress); FILL_BULK_URB(hid->urbout, dev, pipe, hid->outbuf, 0, hid_irq_out, hid); } } |
From: Vojtech P. <vo...@us...> - 2002-01-24 19:58:01
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/usb In directory usw-pr-cvs1:/tmp/cvs-serv4987/linux/drivers/usb Added Files: powermate.c Log Message: Added PowerMate knob driver. --- NEW FILE: powermate.c --- /* * A driver for the Griffin Technology, Inc. "PowerMate" USB controller dial. * * v1.0, (c)2002 William R Sowerbutts <wi...@so...> * * This device is a stainless steel knob which connects over USB. It can measure * clockwise and anticlockwise rotation. The dial also acts as a pushbutton with * a spring for automatic release. The base contains a pair of LEDs which illuminate * the translucent base. It rotates without limit and reports its relative rotation * back to the host when polled by the USB controller. * * Testing with the knob I have has shown that it measures approximately 94 "clicks" * for one full rotation. Testing with my High Speed Rotation Actuator (ok, it was * a variable speed cordless electric drill) has shown that the device can measure * speeds of up to 7 clicks either clockwise or anticlockwise between pollings from * the host. If it counts more than 7 clicks before it is polled, it will wrap back * to zero and start counting again. This was at quite high speed, however, almost * certainly faster than the human hand could turn it. * * The device's microcontroller can be programmed to set the LED to either a constant * intensity, or to a rhythmic pulsing. Several patterns and speeds are available. * * Griffin were very happy to provide documentation and free hardware for development. * */ #include <linux/kernel.h> #include <linux/slab.h> #include <linux/input.h> #include <linux/module.h> #include <linux/init.h> #include <linux/usb.h> #define POWERMATE_VENDOR 0x077d /* Griffin Technology, Inc. */ #define POWERMATE_PRODUCT_NEW 0x0410 /* Griffin PowerMate */ #define POWERMATE_PRODUCT_OLD 0x04AA /* Griffin soundKnob */ /* these are the command codes we send to the device */ #define SET_STATIC_BRIGHTNESS 0x01 #define SET_PULSE_ASLEEP 0x02 #define SET_PULSE_AWAKE 0x03 #define SET_PULSE_MODE 0x04 /* these refer to bits in the powermate_device's requires_update field. */ #define UPDATE_STATIC_BRIGHTNESS (1<<0) #define UPDATE_PULSE_ASLEEP (1<<1) #define UPDATE_PULSE_AWAKE (1<<2) #define UPDATE_PULSE_MODE (1<<3) #define POWERMATE_PAYLOAD_SIZE 3 struct powermate_device { signed char data[POWERMATE_PAYLOAD_SIZE]; struct urb irq, config; struct usb_ctrlrequest configcr; struct usb_device *udev; struct input_dev input; struct semaphore lock; int static_brightness; int pulse_speed; int pulse_table; int pulse_asleep; int pulse_awake; int requires_update; // physical settings which are out of sync char phys[64]; }; static char pm_name_powermate[] = "Griffin PowerMate"; static char pm_name_soundknob[] = "Griffin SoundKnob"; static void powermate_config_complete(struct urb *urb); /* forward declararation of callback */ /* Callback for data arriving from the PowerMate over the USB interrupt pipe */ static void powermate_irq(struct urb *urb) { struct powermate_device *pm = urb->context; if(urb->status) return; /* handle updates to device state */ input_report_key(&pm->input, BTN_0, pm->data[0] & 0x01); input_report_rel(&pm->input, REL_DIAL, pm->data[1]); } /* Decide if we need to issue a control message and do so. Must be called with pm->lock down */ static void powermate_sync_state(struct powermate_device *pm) { if(pm->requires_update == 0) return; /* no updates are required */ if(pm->config.status == -EINPROGRESS) return; /* an update is already in progress; it'll issue this update when it completes */ if(pm->requires_update & UPDATE_STATIC_BRIGHTNESS){ pm->configcr.wValue = cpu_to_le16( SET_STATIC_BRIGHTNESS ); pm->configcr.wIndex = cpu_to_le16( pm->static_brightness ); pm->requires_update &= ~UPDATE_STATIC_BRIGHTNESS; }else if(pm->requires_update & UPDATE_PULSE_ASLEEP){ pm->configcr.wValue = cpu_to_le16( SET_PULSE_ASLEEP ); pm->configcr.wIndex = cpu_to_le16( pm->pulse_asleep ? 1 : 0 ); pm->requires_update &= ~UPDATE_PULSE_ASLEEP; }else if(pm->requires_update & UPDATE_PULSE_AWAKE){ pm->configcr.wValue = cpu_to_le16( SET_PULSE_AWAKE ); pm->configcr.wIndex = cpu_to_le16( pm->pulse_awake ? 1 : 0 ); pm->requires_update &= ~UPDATE_PULSE_AWAKE; }else if(pm->requires_update & UPDATE_PULSE_MODE){ int op, arg; /* the powermate takes an operation and an argument for its pulse algorithm. the operation can be: 0: divide the speed 1: pulse at normal speed 2: multiply the speed the argument only has an effect for operations 0 and 2, and ranges between 1 (least effect) to 255 (maximum effect). thus, several states are equivalent and are coalesced into one state. we map this onto a range from 0 to 510, with: 0 -- 254 -- use divide (0 = slowest) 255 -- use normal speed 256 -- 510 -- use multiple (510 = fastest). Only values of 'arg' quite close to 255 are particularly useful/spectacular. */ if(pm->pulse_speed < 255){ op = 0; // divide arg = 255 - pm->pulse_speed; }else if(pm->pulse_speed > 255){ op = 2; // multiply arg = pm->pulse_speed - 255; }else{ op = 1; // normal speed arg = 0; // can be any value } pm->configcr.wValue = cpu_to_le16( (pm->pulse_table << 8) | SET_PULSE_MODE ); pm->configcr.wIndex = cpu_to_le16( (arg << 8) | op ); pm->requires_update &= ~UPDATE_PULSE_MODE; }else{ printk(KERN_ERR "powermate: unknown update required"); pm->requires_update = 0; /* fudge the bug */ return; } /* printk("powermate: %04x %04x\n", pm->configcr.wValue, pm->configcr.wIndex); */ pm->config.dev = pm->udev; /* is this necessary? */ pm->configcr.bRequestType = 0x41; /* vendor request */ pm->configcr.bRequest = 0x01; pm->configcr.wLength = 0; FILL_CONTROL_URB(&pm->config, pm->udev, usb_sndctrlpipe(pm->udev, 0), (void*)&pm->configcr, 0, 0, powermate_config_complete, pm); if(usb_submit_urb(&pm->config)) printk(KERN_ERR "powermate: usb_submit_urb(config) failed"); } /* Called when our asynchronous control message completes. We may need to issue another immediately */ static void powermate_config_complete(struct urb *urb) { struct powermate_device *pm = urb->context; if(urb->status) printk(KERN_ERR "powermate: config urb returned %d\n", urb->status); down(&pm->lock); powermate_sync_state(pm); up(&pm->lock); } /* Set the LED up as described and begin the sync with the hardware if required */ static void powermate_pulse_led(struct powermate_device *pm, int static_brightness, int pulse_speed, int pulse_table, int pulse_asleep, int pulse_awake) { if(pulse_speed < 0) pulse_speed = 0; if(pulse_table < 0) pulse_table = 0; if(pulse_speed > 510) pulse_speed = 510; if(pulse_table > 2) pulse_table = 2; pulse_asleep = !!pulse_asleep; pulse_awake = !!pulse_awake; down(&pm->lock); /* mark state updates which are required */ if(static_brightness != pm->static_brightness){ pm->static_brightness = static_brightness; pm->requires_update |= UPDATE_STATIC_BRIGHTNESS; } if(pulse_asleep != pm->pulse_asleep){ pm->pulse_asleep = pulse_asleep; pm->requires_update |= UPDATE_PULSE_ASLEEP; } if(pulse_awake != pm->pulse_awake){ pm->pulse_awake = pulse_awake; pm->requires_update |= UPDATE_PULSE_AWAKE; } if(pulse_speed != pm->pulse_speed || pulse_table != pm->pulse_table){ pm->pulse_speed = pulse_speed; pm->pulse_table = pulse_table; pm->requires_update |= UPDATE_PULSE_MODE; } powermate_sync_state(pm); up(&pm->lock); } /* Callback from the Input layer when an event arrives from userspace to configure the LED */ static int powermate_input_event(struct input_dev *dev, unsigned int type, unsigned int code, int _value) { unsigned int command = (unsigned int)_value; struct powermate_device *pm = dev->private; if(type == EV_MSC && code == MSC_PULSELED){ /* bits 0- 7: 8 bits: LED brightness bits 8-16: 9 bits: pulsing speed modifier (0 ... 510); 0-254 = slower, 255 = standard, 256-510 = faster. bits 17-18: 2 bits: pulse table (0, 1, 2 valid) bit 19: 1 bit : pulse whilst asleep? bit 20: 1 bit : pulse constantly? */ int static_brightness = command & 0xFF; // bits 0-7 int pulse_speed = (command >> 8) & 0x1FF; // bits 8-16 int pulse_table = (command >> 17) & 0x3; // bits 17-18 int pulse_asleep = (command >> 19) & 0x1; // bit 19 int pulse_awake = (command >> 20) & 0x1; // bit 20 powermate_pulse_led(pm, static_brightness, pulse_speed, pulse_table, pulse_asleep, pulse_awake); } return 0; } /* Called whenever a USB device matching one in our supported devices table is connected */ static void *powermate_probe(struct usb_device *udev, unsigned int ifnum, const struct usb_device_id *id) { struct usb_interface_descriptor *interface; struct usb_endpoint_descriptor *endpoint; struct powermate_device *pm; int pipe, maxp; char path[64]; interface = udev->config[0].interface[ifnum].altsetting + 0; endpoint = interface->endpoint + 0; if (!(endpoint->bEndpointAddress & 0x80)) return NULL; if ((endpoint->bmAttributes & 3) != 3) return NULL; usb_control_msg(udev, usb_sndctrlpipe(udev, 0), 0x0a, USB_TYPE_CLASS | USB_RECIP_INTERFACE, 0, interface->bInterfaceNumber, NULL, 0, HZ * USB_CTRL_SET_TIMEOUT); if (!(pm = kmalloc(sizeof(struct powermate_device), GFP_KERNEL))) return NULL; memset(pm, 0, sizeof(struct powermate_device)); pm->udev = udev; init_MUTEX(&pm->lock); /* get a handle to the interrupt data pipe */ pipe = usb_rcvintpipe(udev, endpoint->bEndpointAddress); maxp = usb_maxpacket(udev, pipe, usb_pipeout(pipe)); if(maxp != POWERMATE_PAYLOAD_SIZE) printk("powermate: Expected payload of %d bytes, found %d bytes!\n", POWERMATE_PAYLOAD_SIZE, maxp); FILL_INT_URB(&pm->irq, udev, pipe, pm->data, POWERMATE_PAYLOAD_SIZE, powermate_irq, pm, endpoint->bInterval); /* register our interrupt URB with the USB system */ if(usb_submit_urb(&pm->irq)) { kfree(pm); return NULL; /* failure */ } switch (udev->descriptor.idProduct) { case POWERMATE_PRODUCT_NEW: pm->input.name = pm_name_powermate; break; case POWERMATE_PRODUCT_OLD: pm->input.name = pm_name_soundknob; break; default: pm->input.name = pm_name_soundknob; printk(KERN_WARNING "powermate: unknown product id %04x\n", udev->descriptor.idProduct); } pm->input.private = pm; pm->input.evbit[0] = BIT(EV_KEY) | BIT(EV_REL) | BIT(EV_MSC); pm->input.keybit[LONG(BTN_0)] = BIT(BTN_0); pm->input.relbit[LONG(REL_DIAL)] = BIT(REL_DIAL); pm->input.mscbit[LONG(MSC_PULSELED)] = BIT(MSC_PULSELED); pm->input.idbus = BUS_USB; pm->input.idvendor = udev->descriptor.idVendor; pm->input.idproduct = udev->descriptor.idProduct; pm->input.idversion = udev->descriptor.bcdDevice; pm->input.event = powermate_input_event; input_register_device(&pm->input); usb_make_path(udev, path, 64); snprintf(pm->phys, 64, "%s/input0", path); printk(KERN_INFO "input: %s on %s\n", pm->input.name, pm->input.phys); /* force an update of everything */ pm->requires_update = UPDATE_PULSE_ASLEEP | UPDATE_PULSE_AWAKE | UPDATE_PULSE_MODE | UPDATE_STATIC_BRIGHTNESS; powermate_pulse_led(pm, 0x80, 255, 0, 1, 0); // set default pulse parameters return pm; } /* Called when a USB device we've accepted ownership of is removed */ static void powermate_disconnect(struct usb_device *dev, void *ptr) { struct powermate_device *pm = ptr; down(&pm->lock); pm->requires_update = 0; usb_unlink_urb(&pm->irq); input_unregister_device(&pm->input); kfree(pm); } static struct usb_device_id powermate_devices [] = { { USB_DEVICE(POWERMATE_VENDOR, POWERMATE_PRODUCT_NEW) }, { USB_DEVICE(POWERMATE_VENDOR, POWERMATE_PRODUCT_OLD) }, { } /* Terminating entry */ }; MODULE_DEVICE_TABLE (usb, powermate_devices); static struct usb_driver powermate_driver = { name: "powermate", probe: powermate_probe, disconnect: powermate_disconnect, id_table: powermate_devices, }; int powermate_init(void) { if (usb_register(&powermate_driver) < 0) return -1; return 0; } void powermate_cleanup(void) { usb_deregister(&powermate_driver); } module_init(powermate_init); module_exit(powermate_cleanup); MODULE_AUTHOR( "William R Sowerbutts" ); MODULE_DESCRIPTION( "Griffin Technology, Inc PowerMate driver" ); MODULE_LICENSE("GPL"); |