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: James S. <jsi...@us...> - 2002-01-08 18:45:06
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/char
In directory usw-pr-cvs1:/tmp/cvs-serv23118
Modified Files:
keyboard.c
Log Message:
Oops. Miscalculated the i variable in compute_shiftstate. Now it works right.
Index: keyboard.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/keyboard.c,v
retrieving revision 1.64
retrieving revision 1.65
diff -u -d -r1.64 -r1.65
--- keyboard.c 2002/01/08 18:27:24 1.64
+++ keyboard.c 2002/01/08 18:45:03 1.65
@@ -281,7 +281,7 @@
shift_state = 0;
memset(shift_down, 0, sizeof(shift_down));
- for(i = 0; i < SIZE(key_down); i += BITS_PER_LONG) {
+ for(i = 0; i < SIZE(key_down); i++) {
if (!key_down[i])
continue;
|
|
From: James S. <jsi...@us...> - 2002-01-08 18:27:27
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/char
In directory usw-pr-cvs1:/tmp/cvs-serv17584
Modified Files:
keyboard.c
Log Message:
Fixed non sticky ALT key problem.
Index: keyboard.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/keyboard.c,v
retrieving revision 1.63
retrieving revision 1.64
diff -u -d -r1.63 -r1.64
--- keyboard.c 2001/12/27 18:59:52 1.63
+++ keyboard.c 2002/01/08 18:27:24 1.64
@@ -276,22 +276,24 @@
*/
void compute_shiftstate(void)
{
- int i, j, sym, val;
+ int i, j, k, sym, val;
shift_state = 0;
memset(shift_down, 0, sizeof(shift_down));
for(i = 0; i < SIZE(key_down); i += BITS_PER_LONG) {
- if (!key_down[i / BITS_PER_LONG])
+ if (!key_down[i])
continue;
- for(j = 0; j < BITS_PER_LONG; j++) {
+ k = i*BITS_PER_LONG;
- if (!test_bit(i + j, key_down))
+ for(j = 0; j < BITS_PER_LONG; j++, k++) {
+
+ if (!test_bit(k, key_down))
continue;
- sym = U(key_maps[0][i + j]);
+ sym = U(key_maps[0][k]);
if (KTYP(sym) != KT_SHIFT && KTYP(sym) != KT_SLOCK)
continue;
|
|
From: Paul M. <le...@us...> - 2002-01-08 08:34:18
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/video/tdfx
In directory usw-pr-cvs1:/tmp/cvs-serv23210
Modified Files:
3dfxfb.c
Log Message:
Add some MODULE_PARM()'s for noaccel and nohwcursor.
Index: 3dfxfb.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/video/tdfx/3dfxfb.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -d -r1.15 -r1.16
--- 3dfxfb.c 2001/12/26 17:28:12 1.15
+++ 3dfxfb.c 2002/01/08 08:34:15 1.16
@@ -1239,7 +1239,11 @@
MODULE_AUTHOR("Hannu Mallat <hm...@cc...>");
MODULE_DESCRIPTION("3Dfx framebuffer device driver");
MODULE_LICENSE("GPL");
-
+MODULE_PARM(noaccel, "i");
+MODULE_PARM_DESC(noaccel, "Disable hardware acceleration (1 = disabled), enabled by default.");
+MODULE_PARM(nohwcursor, "i");
+MODULE_PARM_DESC(nohwcursor, "Disable hardware cursor (1 = disabled), enabled by default.");
+
#ifdef MODULE
module_init(tdfxfb_init);
#endif
|
|
From: Paul M. <le...@us...> - 2002-01-08 08:20:52
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/video
In directory usw-pr-cvs1:/tmp/cvs-serv19880
Modified Files:
Config.in
Log Message:
For some reason these things got changed around.. figuring out if we want to
descend the directory or not should be a bool, not a tristate..
Index: Config.in
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/video/Config.in,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -d -r1.56 -r1.57
--- Config.in 2001/12/26 17:28:11 1.56
+++ Config.in 2002/01/08 08:20:48 1.57
@@ -163,10 +163,10 @@
fi
tristate ' ATI Radeon display support (EXPERIMENTAL)' CONFIG_FB_RADEON
tristate ' ATI Rage 128 display support (EXPERIMENTAL)' CONFIG_FB_ATY128
- tristate ' 3Dfx acceleration support' CONFIG_FB_TDFX
+ bool ' 3Dfx acceleration support' CONFIG_FB_TDFX
if [ "$CONFIG_FB_TDFX" != "n" ]; then
- bool ' 3Dfx Banshee/Voodoo3 display support (EXPERIMENTAL)' CONFIG_FB_3DFX
- bool ' 3Dfx Voodoo Graphics (sst1) support (EXPERIMENTAL)' CONFIG_FB_VOODOO1
+ tristate ' 3Dfx Banshee/Voodoo3 display support (EXPERIMENTAL)' CONFIG_FB_3DFX
+ tristate ' 3Dfx Voodoo Graphics (sst1) support (EXPERIMENTAL)' CONFIG_FB_VOODOO1
fi
dep_tristate ' SIS acceleration (EXPERIMENTAL)' CONFIG_FB_SIS $CONFIG_EXPERIMENTAL
if [ "$CONFIG_FB_SIS" != "n" ]; then
|
|
From: Paul M. <le...@us...> - 2002-01-08 08:01:31
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/char
In directory usw-pr-cvs1:/tmp/cvs-serv16926
Modified Files:
conmakehash.c
Log Message:
The dfont_num line was being ommited due to the fact the line wasn't being
continued.. fixed now.
Index: conmakehash.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/conmakehash.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- conmakehash.c 2000/10/03 20:04:59 1.3
+++ conmakehash.c 2002/01/08 08:01:27 1.4
@@ -221,7 +221,7 @@
\n\
#include <linux/types.h>\n\
\n\
-u16 dfont_num = %d;
+u16 dfont_num = %d;\n\
\n\
u8 dfont_unicount[%d] = \n\
{\n\t", argv[1], fontlen, fontlen);
|
|
From: Vojtech P. <vo...@us...> - 2002-01-03 15:33:43
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/sound
In directory usw-pr-cvs1:/tmp/cvs-serv27229/linux/drivers/sound
Added Files:
es1370.c es1371.c trident.c trident.h
Log Message:
Gameport updates ...
--- NEW FILE: es1370.c ---
/*****************************************************************************/
/*
* es1370.c -- Ensoniq ES1370/Asahi Kasei AK4531 audio driver.
*
* Copyright (C) 1998-2001 Thomas Sailer (t.s...@al...)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
[...2734 lines suppressed...]
static int __init es1370_setup(char *str)
{
static unsigned __initdata nr_dev = 0;
if (nr_dev >= NR_DEVICE)
return 0;
(void)
((get_option(&str,&lineout [nr_dev]) == 2)
&& get_option(&str,&micbias [nr_dev])
);
nr_dev++;
return 1;
}
__setup("es1370=", es1370_setup);
#endif /* MODULE */
--- NEW FILE: es1371.c ---
/*****************************************************************************/
/*
* es1371.c -- Creative Ensoniq ES1371.
*
* Copyright (C) 1998-2001 Thomas Sailer (t.s...@al...)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
[...3032 lines suppressed...]
static int __init es1371_setup(char *str)
{
static unsigned __initdata nr_dev = 0;
if (nr_dev >= NR_DEVICE)
return 0;
(void)
((get_option(&str, &spdif[nr_dev]) == 2)
&& (get_option(&str, &nomic[nr_dev]) == 2)
&& (get_option(&str, &lifier)));
nr_dev++;
return 1;
}
__setup("es1371=", es1371_setup);
#endif /* MODULE */
--- NEW FILE: trident.c ---
/*
* OSS driver for Linux 2.4.x for
*
* Trident 4D-Wave
* SiS 7018
* ALi 5451
* Tvia/IGST CyberPro 5050
*
* Driver: Alan Cox <al...@re...>
*
* Built from:
* Low level code: <au...@tr...> from ALSA
* Framework: Thomas Sailer <sa...@if...>
* Extended by: Zach Brown <za...@re...>
*
* Hacked up by:
* Aaron Holtzman <aho...@es...>
* Ollie Lho <ol...@si...> SiS 7018 Audio Core Support
* Ching-Ling Lee <cli...@al...> ALi 5451 Audio Core Support
[...4246 lines suppressed...]
if (!pci_present()) /* No PCI bus in this machine! */
return -ENODEV;
printk(KERN_INFO "Trident 4DWave/SiS 7018/ALi 5451,Tvia CyberPro 5050 PCI Audio, version "
DRIVER_VERSION ", " __TIME__ " " __DATE__ "\n");
if (!pci_register_driver(&trident_pci_driver)) {
pci_unregister_driver(&trident_pci_driver);
return -ENODEV;
}
return 0;
}
static void __exit trident_cleanup_module (void)
{
pci_unregister_driver(&trident_pci_driver);
}
module_init(trident_init_module);
module_exit(trident_cleanup_module);
--- NEW FILE: trident.h ---
#ifndef __TRID4DWAVE_H
#define __TRID4DWAVE_H
/*
* au...@tr...
* Fri Feb 19 15:55:28 MST 1999
* Definitions for Trident 4DWave DX/NX chips
*
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/
/* PCI vendor and device ID */
#ifndef PCI_VENDOR_ID_TRIDENT
#define PCI_VENDOR_ID_TRIDENT 0x1023
#endif
#ifndef PCI_VENDOR_ID_SI
#define PCI_VENDOR_ID_SI 0x1039
#endif
#ifndef PCI_VENDOR_ID_ALI
#define PCI_VENDOR_ID_ALI 0x10b9
#endif
#ifndef PCI_DEVICE_ID_TRIDENT_4DWAVE_DX
#define PCI_DEVICE_ID_TRIDENT_4DWAVE_DX 0x2000
#endif
#ifndef PCI_DEVICE_ID_TRIDENT_4DWAVE_NX
#define PCI_DEVICE_ID_TRIDENT_4DWAVE_NX 0x2001
#endif
#ifndef PCI_DEVICE_ID_SI_7018
#define PCI_DEVICE_ID_SI_7018 0x7018
#endif
#ifndef PCI_DEVICE_ID_ALI_5451
#define PCI_DEVICE_ID_ALI_5451 0x5451
#endif
#ifndef PCI_DEVICE_ID_ALI_1533
#define PCI_DEVICE_ID_ALI_1533 0x1533
#endif
#ifndef FALSE
#define FALSE 0
#define TRUE 1
#endif
#define CHANNEL_REGS 5
#define CHANNEL_START 0xe0 // The first bytes of the contiguous register space.
#define BANK_A 0
#define BANK_B 1
#define NR_BANKS 2
#define TRIDENT_FMT_STEREO 0x01
#define TRIDENT_FMT_16BIT 0x02
#define TRIDENT_FMT_MASK 0x03
#define DAC_RUNNING 0x01
#define ADC_RUNNING 0x02
/* Register Addresses */
/* operational registers common to DX, NX, 7018 */
enum trident_op_registers {
T4D_GAME_CR = 0x30, T4D_GAME_LEG = 0x31,
T4D_GAME_AXD = 0x34,
T4D_REC_CH = 0x70,
T4D_START_A = 0x80, T4D_STOP_A = 0x84,
T4D_DLY_A = 0x88, T4D_SIGN_CSO_A = 0x8c,
T4D_CSPF_A = 0x90, T4D_CEBC_A = 0x94,
T4D_AINT_A = 0x98, T4D_EINT_A = 0x9c,
T4D_LFO_GC_CIR = 0xa0, T4D_AINTEN_A = 0xa4,
T4D_MUSICVOL_WAVEVOL = 0xa8, T4D_SBDELTA_DELTA_R = 0xac,
T4D_MISCINT = 0xb0, T4D_START_B = 0xb4,
T4D_STOP_B = 0xb8, T4D_CSPF_B = 0xbc,
T4D_SBBL_SBCL = 0xc0, T4D_SBCTRL_SBE2R_SBDD = 0xc4,
T4D_STIMER = 0xc8, T4D_LFO_B_I2S_DELTA = 0xcc,
T4D_AINT_B = 0xd8, T4D_AINTEN_B = 0xdc,
ALI_MPUR2 = 0x22, ALI_GPIO = 0x7c,
ALI_EBUF1 = 0xf4,
ALI_EBUF2 = 0xf8
};
enum ali_op_registers {
ALI_SCTRL = 0x48,
ALI_GLOBAL_CONTROL = 0xd4,
ALI_STIMER = 0xc8,
ALI_SPDIF_CS = 0x70,
ALI_SPDIF_CTRL = 0x74
};
enum ali_registers_number {
ALI_GLOBAL_REGS = 56,
ALI_CHANNEL_REGS = 8,
ALI_MIXER_REGS = 20
};
enum ali_sctrl_control_bit {
ALI_SPDIF_OUT_ENABLE = 0x20
};
enum ali_global_control_bit {
ALI_SPDIF_OUT_SEL_PCM = 0x00000400,
ALI_SPDIF_IN_SUPPORT = 0x00000800,
ALI_SPDIF_OUT_CH_ENABLE = 0x00008000,
ALI_SPDIF_IN_CH_ENABLE = 0x00080000,
ALI_PCM_IN_DISABLE = 0x7fffffff,
ALI_PCM_IN_ENABLE = 0x80000000,
ALI_SPDIF_IN_CH_DISABLE = 0xfff7ffff,
ALI_SPDIF_OUT_CH_DISABLE = 0xffff7fff,
ALI_SPDIF_OUT_SEL_SPDIF = 0xfffffbff
};
enum ali_spdif_control_bit {
ALI_SPDIF_IN_FUNC_ENABLE = 0x02,
ALI_SPDIF_IN_CH_STATUS = 0x40,
ALI_SPDIF_OUT_CH_STATUS = 0xbf
};
enum ali_control_all {
ALI_DISABLE_ALL_IRQ = 0,
ALI_CHANNELS = 32,
ALI_STOP_ALL_CHANNELS = 0xffffffff,
ALI_MULTI_CHANNELS_START_STOP = 0x07800000
};
enum ali_EMOD_control_bit {
ALI_EMOD_DEC = 0x00000000,
ALI_EMOD_INC = 0x10000000,
ALI_EMOD_Delay = 0x20000000,
ALI_EMOD_Still = 0x30000000
};
enum ali_pcm_in_channel_num {
ALI_NORMAL_CHANNEL = 0,
ALI_SPDIF_OUT_CHANNEL = 15,
ALI_SPDIF_IN_CHANNEL = 19,
ALI_LEF_CHANNEL = 23,
ALI_CENTER_CHANNEL = 24,
ALI_SURR_RIGHT_CHANNEL = 25,
ALI_SURR_LEFT_CHANNEL = 26,
ALI_PCM_IN_CHANNEL = 31
};
enum ali_pcm_out_channel_num {
ALI_PCM_OUT_CHANNEL_FIRST = 0,
ALI_PCM_OUT_CHANNEL_LAST = 31
};
enum ali_ac97_power_control_bit {
ALI_EAPD_POWER_DOWN = 0x8000
};
enum ali_update_ptr_flags {
ALI_ADDRESS_INT_UPDATE = 0x01
};
enum ali_revision {
ALI_5451_V02 = 0x02
};
enum ali_spdif_out_control {
ALI_PCM_TO_SPDIF_OUT = 0,
ALI_SPDIF_OUT_TO_SPDIF_OUT = 1,
ALI_SPDIF_OUT_PCM = 0,
ALI_SPDIF_OUT_NON_PCM = 2
};
/* S/PDIF Operational Registers for 4D-NX */
enum nx_spdif_registers {
NX_SPCTRL_SPCSO = 0x24, NX_SPLBA = 0x28,
NX_SPESO = 0x2c, NX_SPCSTATUS = 0x64
};
/* OP registers to access each hardware channel */
enum channel_registers {
CH_DX_CSO_ALPHA_FMS = 0xe0, CH_DX_ESO_DELTA = 0xe8,
CH_DX_FMC_RVOL_CVOL = 0xec,
CH_NX_DELTA_CSO = 0xe0, CH_NX_DELTA_ESO = 0xe8,
CH_NX_ALPHA_FMS_FMC_RVOL_CVOL = 0xec,
CH_LBA = 0xe4,
CH_GVSEL_PAN_VOL_CTRL_EC = 0xf0
};
/* registers to read/write/control AC97 codec */
enum dx_ac97_registers {
DX_ACR0_AC97_W = 0x40, DX_ACR1_AC97_R = 0x44,
DX_ACR2_AC97_COM_STAT = 0x48
};
enum nx_ac97_registers {
NX_ACR0_AC97_COM_STAT = 0x40, NX_ACR1_AC97_W = 0x44,
NX_ACR2_AC97_R_PRIMARY = 0x48, NX_ACR3_AC97_R_SECONDARY = 0x4c
};
enum si_ac97_registers {
SI_AC97_WRITE = 0x40, SI_AC97_READ = 0x44,
SI_SERIAL_INTF_CTRL = 0x48, SI_AC97_GPIO = 0x4c
};
enum ali_ac97_registers {
ALI_AC97_WRITE = 0x40, ALI_AC97_READ = 0x44
};
/* Bit mask for operational registers */
#define AC97_REG_ADDR 0x000000ff
enum ali_ac97_bits {
ALI_AC97_BUSY_WRITE = 0x8000, ALI_AC97_BUSY_READ = 0x8000,
ALI_AC97_WRITE_ACTION = 0x8000, ALI_AC97_READ_ACTION = 0x8000,
ALI_AC97_AUDIO_BUSY = 0x4000, ALI_AC97_SECONDARY = 0x0080,
ALI_AC97_READ_MIXER_REGISTER = 0xfeff,
ALI_AC97_WRITE_MIXER_REGISTER = 0x0100
};
enum sis7018_ac97_bits {
SI_AC97_BUSY_WRITE = 0x8000, SI_AC97_BUSY_READ = 0x8000,
SI_AC97_AUDIO_BUSY = 0x4000, SI_AC97_MODEM_BUSY = 0x2000,
SI_AC97_SECONDARY = 0x0080
};
enum trident_dx_ac97_bits {
DX_AC97_BUSY_WRITE = 0x8000, DX_AC97_BUSY_READ = 0x8000,
DX_AC97_READY = 0x0010, DX_AC97_RECORD = 0x0008,
DX_AC97_PLAYBACK = 0x0002
};
enum trident_nx_ac97_bits {
/* ACR1-3 */
NX_AC97_BUSY_WRITE = 0x0800, NX_AC97_BUSY_READ = 0x0800,
NX_AC97_BUSY_DATA = 0x0400, NX_AC97_WRITE_SECONDARY = 0x0100,
/* ACR0 */
NX_AC97_SECONDARY_READY = 0x0040, NX_AC97_SECONDARY_RECORD = 0x0020,
NX_AC97_SURROUND_OUTPUT = 0x0010,
NX_AC97_PRIMARY_READY = 0x0008, NX_AC97_PRIMARY_RECORD = 0x0004,
NX_AC97_PCM_OUTPUT = 0x0002,
NX_AC97_WARM_RESET = 0x0001
};
enum serial_intf_ctrl_bits {
WARM_REST = 0x00000001, COLD_RESET = 0x00000002,
I2S_CLOCK = 0x00000004, PCM_SEC_AC97= 0x00000008,
AC97_DBL_RATE = 0x00000010, SPDIF_EN = 0x00000020,
I2S_OUTPUT_EN = 0x00000040, I2S_INPUT_EN = 0x00000080,
PCMIN = 0x00000100, LINE1IN = 0x00000200,
MICIN = 0x00000400, LINE2IN = 0x00000800,
HEAD_SET_IN = 0x00001000, GPIOIN = 0x00002000,
/* 7018 spec says id = 01 but the demo board routed to 10
SECONDARY_ID= 0x00004000, */
SECONDARY_ID= 0x00004000,
PCMOUT = 0x00010000, SURROUT = 0x00020000,
CENTEROUT = 0x00040000, LFEOUT = 0x00080000,
LINE1OUT = 0x00100000, LINE2OUT = 0x00200000,
GPIOOUT = 0x00400000,
SI_AC97_PRIMARY_READY = 0x01000000,
SI_AC97_SECONDARY_READY = 0x02000000,
};
enum global_control_bits {
CHANNLE_IDX = 0x0000003f, PB_RESET = 0x00000100,
PAUSE_ENG = 0x00000200,
OVERRUN_IE = 0x00000400, UNDERRUN_IE = 0x00000800,
ENDLP_IE = 0x00001000, MIDLP_IE = 0x00002000,
ETOG_IE = 0x00004000,
EDROP_IE = 0x00008000, BANK_B_EN = 0x00010000
};
enum channel_control_bits {
CHANNEL_LOOP = 0x00001000, CHANNEL_SIGNED = 0x00002000,
CHANNEL_STEREO = 0x00004000, CHANNEL_16BITS = 0x00008000,
};
enum channel_attribute {
/* playback/record select */
CHANNEL_PB = 0x0000, CHANNEL_SPC_PB = 0x4000,
CHANNEL_REC = 0x8000, CHANNEL_REC_PB = 0xc000,
/* playback destination/record source select */
MODEM_LINE1 = 0x0000, MODEM_LINE2 = 0x0400,
PCM_LR = 0x0800, HSET = 0x0c00,
I2S_LR = 0x1000, CENTER_LFE = 0x1400,
SURR_LR = 0x1800, SPDIF_LR = 0x1c00,
MIC = 0x1400,
/* mist stuff */
MONO_LEFT = 0x0000, MONO_RIGHT = 0x0100,
MONO_MIX = 0x0200, SRC_ENABLE = 0x0080,
};
enum miscint_bits {
PB_UNDERRUN_IRO = 0x00000001, REC_OVERRUN_IRQ = 0x00000002,
SB_IRQ = 0x00000004, MPU401_IRQ = 0x00000008,
OPL3_IRQ = 0x00000010, ADDRESS_IRQ = 0x00000020,
ENVELOPE_IRQ = 0x00000040, ST_IRQ = 0x00000080,
PB_UNDERRUN = 0x00000100, REC_OVERRUN = 0x00000200,
MIXER_UNDERFLOW = 0x00000400, MIXER_OVERFLOW = 0x00000800,
ST_TARGET_REACHED = 0x00008000, PB_24K_MODE = 0x00010000,
ST_IRQ_EN = 0x00800000, ACGPIO_IRQ = 0x01000000
};
#define TRID_REG( trident, x ) ( (trident) -> iobase + (x) )
#define CYBER_PORT_AUDIO 0x3CE
#define CYBER_IDX_AUDIO_ENABLE 0x7B
#define CYBER_BMSK_AUDIO_INT_ENABLE 0x09
#define CYBER_BMSK_AUENZ 0x01
#define CYBER_BMSK_AUENZ_ENABLE 0x00
#define CYBER_IDX_IRQ_ENABLE 0x12
#define VALIDATE_MAGIC(FOO,MAG) \
({ \
if (!(FOO) || (FOO)->magic != MAG) { \
printk(invalid_magic,__FUNCTION__); \
return -ENXIO; \
} \
})
#define VALIDATE_STATE(a) VALIDATE_MAGIC(a,TRIDENT_STATE_MAGIC)
#define VALIDATE_CARD(a) VALIDATE_MAGIC(a,TRIDENT_CARD_MAGIC)
extern __inline__ unsigned ld2(unsigned int x)
{
unsigned r = 0;
if (x >= 0x10000) {
x >>= 16;
r += 16;
}
if (x >= 0x100) {
x >>= 8;
r += 8;
}
if (x >= 0x10) {
x >>= 4;
r += 4;
}
if (x >= 4) {
x >>= 2;
r += 2;
}
if (x >= 2)
r++;
return r;
}
#endif /* __TRID4DWAVE_H */
|
|
From: Vojtech P. <vo...@us...> - 2002-01-03 15:33:43
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input
In directory usw-pr-cvs1:/tmp/cvs-serv27229/linux/drivers/input
Modified Files:
Config.in Makefile
Added Files:
vortex.c
Removed Files:
pcigame.c
Log Message:
Gameport updates ...
--- NEW FILE: vortex.c ---
/*
* $Id: vortex.c,v 1.1 2002/01/03 15:33:39 vojtech Exp $
*
* Copyright (c) 2000-2001 Vojtech Pavlik
*
* Based on the work of:
* Raymond Ingles
*/
/*
* Trident 4DWave and Aureal Vortex gameport driver for Linux
*/
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* Should you need to contact me, the author, you can do so either by
* e-mail - mail your message to <vo...@uc...>, or by paper mail:
* Vojtech Pavlik, Simunkova 1594, Prague 8, 182 00 Czech Republic
*/
#include <asm/io.h>
#include <linux/delay.h>
#include <linux/errno.h>
#include <linux/ioport.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/pci.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <linux/gameport.h>
MODULE_AUTHOR("Vojtech Pavlik <vo...@uc...>");
MODULE_DESCRIPTION("Aureal Vortex and Vortex2 gameport driver");
MODULE_LICENSE("GPL");
#define VORTEX_DATA_WAIT 20 /* 20 ms */
struct vortex {
struct gameport gameport;
struct pci_dev *dev;
unsigned char *base;
unsigned char *io;
char phys[32];
};
static unsigned char vortex_read(struct gameport *gameport)
{
struct vortex *vortex = gameport->driver;
return readb(vortex->io + VORTEX_LEG);
}
static void vortex_trigger(struct gameport *gameport)
{
struct vortex *vortex = gameport->driver;
writeb(0xff, vortex->io + VORTEX_LEG);
}
static int vortex_cooked_read(struct gameport *gameport, int *axes, int *buttons)
{
struct vortex *vortex = gameport->driver;
int i;
*buttons = (~readb(vortex->base + VORTEX_LEG) >> 4) & 0xf;
for (i = 0; i < 4; i++) {
axes[i] = readw(vortex->io + VORTEX_AXD + i * sizeof(u32));
if (axes[i] == 0x1fff) axes[i] = -1;
}
return 0;
}
static int vortex_open(struct gameport *gameport, int mode)
{
struct vortex *vortex = gameport->driver;
switch (mode) {
case GAMEPORT_MODE_COOKED:
writeb(0x40, vortex->io + VORTEX_GCR);
wait_ms(PCIGAME_DATA_WAIT);
return 0;
case GAMEPORT_MODE_RAW:
writeb(0x00, vortex->io + VORTEX_GCR);
return 0;
default:
return -1;
}
return 0;
}
static int __devinit vortex_probe(struct pci_dev *dev, const struct pci_device_id *id)
{
struct vortex *vortex;
int i;
if (!(vortex = kmalloc(sizeof(struct vortex), GFP_KERNEL)))
return -1;
memset(vortex, 0, sizeof(struct vortex));
vortex->dev = dev;
sprintf(vortex->phys, "pci%s/gameport0", dev->slot_name);
dev->driver_data = vortex;
vortex->gameport.driver = vortex;
vortex->gameport.fuzz = 64;
vortex->gameport.read = vortex_read;
vortex->gameport.trigger = vortex_trigger;
vortex->gameport.cooked_read = vortex_cooked_read;
vortex->gameport.open = vortex_open;
vortex->gameport.name = dev->name;
vortex->gameport.phys = vortex->phys;
vortex->gameport.idbus = BUS_PCI;
vortex->gameport.idvendor = dev->vendor;
vortex->gameport.idproduct = dev->device;
for (i = 0; i < 6; i++)
if (~pci_resource_flags(dev, i) & IORESOURCE_IO)
break;
pci_enable_device(dev);
vortex->base = ioremap(pci_resource_start(vortex->dev, i),
pci_resource_len(vortex->dev, i));
vortex->io = vortex->base + id->driver_data;
gameport_register_port(&vortex->gameport);
printk(KERN_INFO "gameport: %s at pci%s speed %d kHz\n",
dev->name, dev->slot_name, vortex->gameport.speed);
return 0;
}
static void __devexit vortex_remove(struct pci_dev *dev)
{
struct vortex *vortex = dev->driver_data;
gameport_unregister_port(&vortex->gameport);
iounmap(vortex->base);
kfree(vortex);
}
static struct pci_device_id vortex_id_table[] __devinitdata =
{{ 0x12eb, 0x0001, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0x1100c },
{ 0x12eb, 0x0002, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0x2880c },
{ 0 }};
static struct pci_driver vortex_driver = {
name: "vortex",
id_table: vortex_id_table,
probe: vortex_probe,
remove: vortex_remove,
};
int __init vortex_init(void)
{
return pci_module_init(&vortex_driver);
}
void __exit vortex_exit(void)
{
pci_unregister_driver(&vortex_driver);
}
module_init(vortex_init);
module_exit(vortex_exit);
Index: Config.in
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/Config.in,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -d -r1.59 -r1.60
--- Config.in 2001/12/13 16:30:17 1.59
+++ Config.in 2002/01/03 15:33:39 1.60
@@ -56,7 +56,7 @@
if [ "$CONFIG_INPUT_GAMECARDS" != "n" ]; then
tristate ' Classic gameports (ISA and PnP)' CONFIG_INPUT_NS558
tristate ' PDPI Lightning 4 gamecard' CONFIG_INPUT_LIGHTNING
- tristate ' Aureal Vortex and Trident 4DWave gameports' CONFIG_INPUT_PCIGAME
+ tristate ' Aureal Vortex and Vortex2 gameport' CONFIG_INPUT_VORTEX
tristate ' Crystal SoundFusion gameports' CONFIG_INPUT_CS461X
tristate ' ForteMedia 801 gameports' CONFIG_INPUT_FM801
tristate ' SoundBlaster Live gameports' CONFIG_INPUT_EMU10K1
Index: Makefile
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/Makefile,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -d -r1.45 -r1.46
--- Makefile 2001/12/13 16:30:17 1.45
+++ Makefile 2002/01/03 15:33:39 1.46
@@ -69,7 +69,7 @@
obj-$(CONFIG_INPUT_NS558) += ns558.o gameport.o
obj-$(CONFIG_INPUT_LIGHTNING) += lightning.o gameport.o
-obj-$(CONFIG_INPUT_PCIGAME) += pcigame.o gameport.o
+obj-$(CONFIG_INPUT_VORTEX) += vortex.o gameport.o
obj-$(CONFIG_INPUT_CS461X) += cs461x.o gameport.o
obj-$(CONFIG_INPUT_FM801) += fm801-gp.o gameport.o
obj-$(CONFIG_INPUT_EMU10K1) += emu10k1-gp.o gameport.o
--- pcigame.c DELETED ---
|
|
From: Vojtech P. <vo...@us...> - 2002-01-03 14:57:09
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/sound In directory usw-pr-cvs1:/tmp/cvs-serv18584/sound Log Message: Directory /cvsroot/linuxconsole/ruby/linux/drivers/sound added to the repository |
|
From: Vojtech P. <vo...@us...> - 2002-01-03 14:54:03
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input
In directory usw-pr-cvs1:/tmp/cvs-serv17691
Modified Files:
emu10k1-gp.c
Log Message:
Added Audigy support.
Index: emu10k1-gp.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/emu10k1-gp.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- emu10k1-gp.c 2001/09/25 10:12:07 1.6
+++ emu10k1-gp.c 2002/01/03 14:54:00 1.7
@@ -5,7 +5,7 @@
*/
/*
- * EMU10k1 - SB Live! - gameport driver for Linux
+ * EMU10k1 - SB Live / Audigy - gameport driver for Linux
*/
/*
@@ -51,7 +51,8 @@
};
static struct pci_device_id emu_tbl[] __devinitdata = {
- { 0x1102, 0x7002, PCI_ANY_ID, PCI_ANY_ID }, /* SB Live! gameport */
+ { 0x1102, 0x7002, PCI_ANY_ID, PCI_ANY_ID }, /* SB Live gameport */
+ { 0x1102, 0x7003, PCI_ANY_ID, PCI_ANY_ID }, /* Audigy gameport */
{ 0, }
};
|
|
From: Vojtech P. <vo...@us...> - 2002-01-03 08:55:09
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input
In directory usw-pr-cvs1:/tmp/cvs-serv394/drivers/input
Modified Files:
a3d.c lightning.c pcigame.c
Log Message:
Fix a stupid bug in the gameport code. Caused crashes with pcigame.c.
Index: a3d.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/a3d.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- a3d.c 2001/09/25 10:12:07 1.19
+++ a3d.c 2002/01/03 08:55:04 1.20
@@ -194,7 +194,7 @@
int a3d_adc_cooked_read(struct gameport *gameport, int *axes, int *buttons)
{
- struct a3d *a3d = gameport->private;
+ struct a3d *a3d = gameport->driver;
int i;
for (i = 0; i < 4; i++)
axes[i] = (a3d->axes[i] < 254) ? a3d->axes[i] : -1;
@@ -209,7 +209,7 @@
int a3d_adc_open(struct gameport *gameport, int mode)
{
- struct a3d *a3d = gameport->private;
+ struct a3d *a3d = gameport->driver;
if (mode != GAMEPORT_MODE_COOKED)
return -1;
if (!a3d->used++)
@@ -223,7 +223,7 @@
static void a3d_adc_close(struct gameport *gameport)
{
- struct a3d *a3d = gameport->private;
+ struct a3d *a3d = gameport->driver;
if (!--a3d->used)
del_timer(&a3d->timer);
}
@@ -329,7 +329,7 @@
a3d->dev.relbit[0] |= BIT(REL_X) | BIT(REL_Y);
a3d->dev.keybit[LONG(BTN_MOUSE)] |= BIT(BTN_RIGHT) | BIT(BTN_LEFT) | BIT(BTN_MIDDLE);
- a3d->adc.private = a3d;
+ a3d->adc.driver = a3d;
a3d->adc.open = a3d_adc_open;
a3d->adc.close = a3d_adc_close;
a3d->adc.cooked_read = a3d_adc_cooked_read;
Index: lightning.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/lightning.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- lightning.c 2001/09/25 10:12:07 1.18
+++ lightning.c 2002/01/03 08:55:04 1.19
@@ -79,7 +79,7 @@
static int l4_cooked_read(struct gameport *gameport, int *axes, int *buttons)
{
- struct l4 *l4 = gameport->private;
+ struct l4 *l4 = gameport->driver;
unsigned char status;
int i, result = -1;
@@ -112,7 +112,7 @@
static int l4_open(struct gameport *gameport, int mode)
{
- struct l4 *l4 = gameport->private;
+ struct l4 *l4 = gameport->driver;
if (l4->port != 0 && mode != GAMEPORT_MODE_COOKED)
return -1;
outb(L4_SELECT_ANALOG, L4_PORT);
@@ -190,7 +190,7 @@
{
int i, t;
int cal[4];
- struct l4 *l4 = gameport->private;
+ struct l4 *l4 = gameport->driver;
if (l4_getcal(l4->port, cal))
return -1;
@@ -252,7 +252,7 @@
sprintf(l4->phys, "isa%04x/gameport%d", L4_PORT, 4 * i + j);
gameport = &l4->gameport;
- gameport->private = l4;
+ gameport->driver = l4;
gameport->open = l4_open;
gameport->cooked_read = l4_cooked_read;
gameport->calibrate = l4_calibrate;
Index: pcigame.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/pcigame.c,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -d -r1.16 -r1.17
--- pcigame.c 2001/09/25 10:12:07 1.16
+++ pcigame.c 2002/01/03 08:55:04 1.17
@@ -79,19 +79,19 @@
static unsigned char pcigame_read(struct gameport *gameport)
{
- struct pcigame *pcigame = gameport->private;
+ struct pcigame *pcigame = gameport->driver;
return readb(pcigame->base + pcigame->data->legacy);
}
static void pcigame_trigger(struct gameport *gameport)
{
- struct pcigame *pcigame = gameport->private;
+ struct pcigame *pcigame = gameport->driver;
writeb(0xff, pcigame->base + pcigame->data->legacy);
}
static int pcigame_cooked_read(struct gameport *gameport, int *axes, int *buttons)
{
- struct pcigame *pcigame = gameport->private;
+ struct pcigame *pcigame = gameport->driver;
int i;
*buttons = (~readb(pcigame->base + pcigame->data->legacy) >> 4) & 0xf;
@@ -106,7 +106,7 @@
static int pcigame_open(struct gameport *gameport, int mode)
{
- struct pcigame *pcigame = gameport->private;
+ struct pcigame *pcigame = gameport->driver;
switch (mode) {
case GAMEPORT_MODE_COOKED:
@@ -139,7 +139,7 @@
dev->driver_data = pcigame;
- pcigame->gameport.private = pcigame;
+ pcigame->gameport.driver = pcigame;
pcigame->gameport.fuzz = 64;
pcigame->gameport.read = pcigame_read;
|
|
From: Vojtech P. <vo...@us...> - 2002-01-03 08:55:09
|
Update of /cvsroot/linuxconsole/ruby/linux/include/linux
In directory usw-pr-cvs1:/tmp/cvs-serv394/include/linux
Modified Files:
gameport.h
Log Message:
Fix a stupid bug in the gameport code. Caused crashes with pcigame.c.
Index: gameport.h
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/include/linux/gameport.h,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- gameport.h 2001/10/17 17:00:14 1.19
+++ gameport.h 2002/01/03 08:55:05 1.20
@@ -34,7 +34,8 @@
struct gameport {
- void *private;
+ void *private; /* Private pointer for joystick drivers */
+ void *driver; /* Private pointer for gameport drivers */
char *name;
char *phys;
|
|
From: Vojtech P. <vo...@us...> - 2002-01-02 11:59:59
|
Update of /cvsroot/linuxconsole/ruby/linux/include/linux
In directory usw-pr-cvs1:/tmp/cvs-serv11780/include/linux
Modified Files:
input.h
Log Message:
Bunch of new ioctls implemented.
Index: input.h
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/include/linux/input.h,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -d -r1.56 -r1.57
--- input.h 2001/12/19 05:15:21 1.56
+++ input.h 2002/01/02 11:59:56 1.57
@@ -62,9 +62,14 @@
#define EVIOCSREP _IOW('E', 0x03, int[2]) /* get repeat settings */
#define EVIOCGKEYCODE _IOR('E', 0x04, int[2]) /* get keycode */
#define EVIOCSKEYCODE _IOW('E', 0x04, int[2]) /* set keycode */
-#define EVIOCGKEY _IOR('E', 0x05, int[2]) /* get key value */
+
#define EVIOCGNAME(len) _IOC(_IOC_READ, 'E', 0x06, len) /* get device name */
-#define EVIOCGBUS _IOR('E', 0x07, short[4]) /* get bus address */
+#define EVIOCGPHYS(len) _IOC(_IOC_READ, 'E', 0x07, len) /* get physical location */
+#define EVIOCGUNIQ(len) _IOC(_IOC_READ, 'E', 0x08, len) /* get unique identifier */
+
+#define EVIOCGKEY(len) _IOC(_IOC_READ, 'E', 0x18, len) /* get global keystate */
+#define EVIOCGLED(len) _IOC(_IOC_READ, 'E', 0x19, len) /* get all LEDs */
+#define EVIOCGSND(len) _IOC(_IOC_READ, 'E', 0x1a, len) /* get all sounds status */
#define EVIOCGBIT(ev,len) _IOC(_IOC_READ, 'E', 0x20 + ev, len) /* get event bits */
#define EVIOCGABS(abs) _IOR('E', 0x40 + abs, int[5]) /* get abs value/limits */
|
|
From: Vojtech P. <vo...@us...> - 2002-01-02 11:59:59
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input
In directory usw-pr-cvs1:/tmp/cvs-serv11780/drivers/input
Modified Files:
evdev.c
Log Message:
Bunch of new ioctls implemented.
Index: evdev.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/evdev.c,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -d -r1.41 -r1.42
--- evdev.c 2001/12/26 21:08:33 1.41
+++ evdev.c 2002/01/02 11:59:56 1.42
@@ -230,7 +230,7 @@
struct evdev_list *list = file->private_data;
struct evdev *evdev = list->evdev;
struct input_dev *dev = evdev->handle.dev;
- int retval;
+ int retval, t, u;
switch (cmd) {
@@ -243,7 +243,41 @@
if ((retval = put_user(dev->idproduct, ((short *) arg) + 2))) return retval;
if ((retval = put_user(dev->idversion, ((short *) arg) + 3))) return retval;
return 0;
+
+ case EVIOCGREP:
+ if ((retval = put_user(dev->rep[0], ((int *) arg) + 0))) return retval;
+ if ((retval = put_user(dev->rep[1], ((int *) arg) + 1))) return retval;
+ return 0;
+ case EVIOCSREP:
+ if ((retval = get_user(dev->rep[0], ((int *) arg) + 0))) return retval;
+ if ((retval = get_user(dev->rep[1], ((int *) arg) + 1))) return retval;
+ return 0;
+
+ case EVIOCGKEYCODE:
+ if ((retval = get_user(t, ((int *) arg) + 0))) return retval;
+ if (t < 0 || t > dev->keycodemax) return -EINVAL;
+ switch (dev->keycodesize) {
+ case 1: u = *(u8*)(dev->keycode + t); break;
+ case 2: u = *(u16*)(dev->keycode + t * 2); break;
+ case 4: u = *(u32*)(dev->keycode + t * 4); break;
+ default: return -EINVAL;
+ }
+ if ((retval = put_user(u, ((int *) arg) + 1))) return retval;
+ return 0;
+
+ case EVIOCSKEYCODE:
+ if ((retval = get_user(t, ((int *) arg) + 0))) return retval;
+ if (t < 0 || t > dev->keycodemax) return -EINVAL;
+ if ((retval = get_user(u, ((int *) arg) + 1))) return retval;
+ switch (dev->keycodesize) {
+ case 1: *(u8*)(dev->keycode + t) = u; break;
+ case 2: *(u16*)(dev->keycode + t * 2) = u; break;
+ case 4: *(u32*)(dev->keycode + t * 4) = u; break;
+ default: return -EINVAL;
+ }
+ return 0;
+
case EVIOCSFF:
if (dev->upload_effect) {
struct ff_effect effect;
@@ -291,20 +325,53 @@
default: return -EINVAL;
}
len = NBITS(len) * sizeof(long);
- if (len > _IOC_SIZE(cmd)) {
- printk(KERN_WARNING "evdev.c: Truncating bitfield length from %d to %d\n",
- len, _IOC_SIZE(cmd));
- len = _IOC_SIZE(cmd);
- }
+ if (len > _IOC_SIZE(cmd)) len = _IOC_SIZE(cmd);
return copy_to_user((char *) arg, bits, len) ? -EFAULT : len;
}
+ if (_IOC_NR(cmd) == _IOC_NR(EVIOCGKEY(0))) {
+ int len;
+ len = NBITS(KEY_MAX) * sizeof(long);
+ if (len > _IOC_SIZE(cmd)) len = _IOC_SIZE(cmd);
+ return copy_to_user((char *) arg, dev->key, len) ? -EFAULT : len;
+ }
+
+ if (_IOC_NR(cmd) == _IOC_NR(EVIOCGLED(0))) {
+ int len;
+ len = NBITS(LED_MAX) * sizeof(long);
+ if (len > _IOC_SIZE(cmd)) len = _IOC_SIZE(cmd);
+ return copy_to_user((char *) arg, dev->led, len) ? -EFAULT : len;
+ }
+
+ if (_IOC_NR(cmd) == _IOC_NR(EVIOCGSND(0))) {
+ int len;
+ len = NBITS(SND_MAX) * sizeof(long);
+ if (len > _IOC_SIZE(cmd)) len = _IOC_SIZE(cmd);
+ return copy_to_user((char *) arg, dev->snd, len) ? -EFAULT : len;
+ }
+
if (_IOC_NR(cmd) == _IOC_NR(EVIOCGNAME(0))) {
int len;
- if (!dev->name) return 0;
+ if (!dev->name) return -ENOENT;
len = strlen(dev->name) + 1;
if (len > _IOC_SIZE(cmd)) len = _IOC_SIZE(cmd);
return copy_to_user((char *) arg, dev->name, len) ? -EFAULT : len;
+ }
+
+ if (_IOC_NR(cmd) == _IOC_NR(EVIOCGPHYS(0))) {
+ int len;
+ if (!dev->phys) return -ENOENT;
+ len = strlen(dev->phys) + 1;
+ if (len > _IOC_SIZE(cmd)) len = _IOC_SIZE(cmd);
+ return copy_to_user((char *) arg, dev->phys, len) ? -EFAULT : len;
+ }
+
+ if (_IOC_NR(cmd) == _IOC_NR(EVIOCGUNIQ(0))) {
+ int len;
+ if (!dev->uniq) return -ENOENT;
+ len = strlen(dev->uniq) + 1;
+ if (len > _IOC_SIZE(cmd)) len = _IOC_SIZE(cmd);
+ return copy_to_user((char *) arg, dev->uniq, len) ? -EFAULT : len;
}
if ((_IOC_NR(cmd) & ~ABS_MAX) == _IOC_NR(EVIOCGABS(0))) {
|
|
From: James S. <jsi...@us...> - 2001-12-27 18:59:55
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/char
In directory usw-pr-cvs1:/tmp/cvs-serv6812
Modified Files:
keyboard.c
Log Message:
Fixed the issue with having more keybaords than displays. Admin_vt takes priority over over VT's for getting a keyboard now.
Index: keyboard.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/keyboard.c,v
retrieving revision 1.62
retrieving revision 1.63
diff -u -d -r1.62 -r1.63
--- keyboard.c 2001/12/23 00:04:18 1.62
+++ keyboard.c 2001/12/27 18:59:52 1.63
@@ -1048,6 +1048,7 @@
}
static char kbd_name[] = "kbd";
+static int first_time;
/*
* When a keyboard (or other input device) is found, the kbd_connect
@@ -1073,6 +1074,11 @@
return NULL;
memset(handle, 0, sizeof(struct input_handle));
+
+ if (!first_time) {
+ first_time = 1;
+ vt = admin_vt;
+ }
while (vt) {
if (!vt->keyboard) {
|
|
From: Vojtech P. <vo...@us...> - 2001-12-27 10:37:44
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input
In directory usw-pr-cvs1:/tmp/cvs-serv31725
Modified Files:
hid-core.c hid.h joydev.c usbkbd.c usbmouse.c
Log Message:
Make the HID drivers work on 2.5.1 again.
Index: hid-core.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/hid-core.c,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -d -r1.34 -r1.35
--- hid-core.c 2001/12/10 17:01:44 1.34
+++ hid-core.c 2001/12/27 10:37:41 1.35
@@ -979,7 +979,7 @@
hid->dr.length = cpu_to_le16(hid->urbctrl.transfer_buffer_length);
hid->dr.requesttype = USB_TYPE_CLASS | USB_RECIP_INTERFACE | dir;
- hid->dr.request = dir ? USB_REQ_GET_REPORT : USB_REQ_SET_REPORT;
+ hid->dr.request = dir ? HID_REQ_GET_REPORT : HID_REQ_SET_REPORT;
hid->dr.index = cpu_to_le16(hid->ifnum);
hid->dr.value = ((report->type + 1) << 8) | report->id;
@@ -1030,6 +1030,14 @@
hid_submit_ctrl(hid);
}
+static int hid_get_class_descriptor(struct usb_device *dev, int ifnum,
+ unsigned char type, void *buf, int size)
+{
+ return usb_control_msg(dev, usb_rcvctrlpipe(dev, 0),
+ USB_REQ_GET_DESCRIPTOR, USB_RECIP_INTERFACE | USB_DIR_IN,
+ (type << 8), ifnum, buf, size, HZ * USB_CTRL_GET_TIMEOUT);
+}
+
int hid_open(struct hid_device *hid)
{
if (hid->open++)
@@ -1127,14 +1135,14 @@
if ((hid_blacklist[n].idVendor == dev->descriptor.idVendor) &&
(hid_blacklist[n].idProduct == dev->descriptor.idProduct)) return NULL;
- if (usb_get_extra_descriptor(interface, USB_DT_HID, &hdesc) && ((!interface->bNumEndpoints) ||
- usb_get_extra_descriptor(&interface->endpoint[0], USB_DT_HID, &hdesc))) {
+ if (usb_get_extra_descriptor(interface, HID_DT_HID, &hdesc) && ((!interface->bNumEndpoints) ||
+ usb_get_extra_descriptor(&interface->endpoint[0], HID_DT_HID, &hdesc))) {
dbg("class descriptor not present\n");
return NULL;
}
for (n = 0; n < hdesc->bNumDescriptors; n++)
- if (hdesc->desc[n].bDescriptorType == USB_DT_REPORT)
+ if (hdesc->desc[n].bDescriptorType == HID_DT_REPORT)
rsize = le16_to_cpu(hdesc->desc[n].wDescriptorLength);
if (!rsize || rsize > HID_MAX_DESCRIPTOR_SIZE) {
@@ -1145,7 +1153,7 @@
{
__u8 rdesc[rsize];
- if ((n = usb_get_class_descriptor(dev, interface->bInterfaceNumber, USB_DT_REPORT, 0, rdesc, rsize)) < 0) {
+ if ((n = hid_get_class_descriptor(dev, interface->bInterfaceNumber, HID_DT_REPORT, rdesc, rsize)) < 0) {
dbg("reading report descriptor failed");
return NULL;
}
Index: hid.h
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/hid.h,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- hid.h 2001/11/07 08:12:49 1.23
+++ hid.h 2001/12/27 10:37:41 1.24
@@ -39,6 +39,25 @@
#define USB_INTERFACE_CLASS_HID 3
/*
+ * HID class requests
+ */
+
+#define HID_REQ_GET_REPORT 0x01
+#define HID_REQ_GET_IDLE 0x02
+#define HID_REQ_GET_PROTOCOL 0x03
+#define HID_REQ_SET_REPORT 0x09
+#define HID_REQ_SET_IDLE 0x0A
+#define HID_REQ_SET_PROTOCOL 0x0B
+
+/*
+ * HID class descriptor types
+ */
+
+#define HID_DT_HID (USB_TYPE_CLASS | 0x01)
+#define HID_DT_REPORT (USB_TYPE_CLASS | 0x02)
+#define HID_DT_PHYSICAL (USB_TYPE_CLASS | 0x03)
+
+/*
* We parse each description item into this structure. Short items data
* values are expanded to 32-bit signed int, long items contain a pointer
* into the data area.
Index: joydev.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joydev.c,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -d -r1.37 -r1.38
--- joydev.c 2001/12/26 21:08:33 1.37
+++ joydev.c 2001/12/27 10:37:41 1.38
@@ -468,7 +468,7 @@
joydev->corr[i].prec = dev->absfuzz[j];
joydev->corr[i].coef[0] = (dev->absmax[j] + dev->absmin[j]) / 2 - dev->absflat[j];
joydev->corr[i].coef[1] = (dev->absmax[j] + dev->absmin[j]) / 2 + dev->absflat[j];
- if (!(t = ((dev->absmax[j] - dev->absmin[j]) / 2 - 2 * dev->absflat[j]))
+ if (!(t = ((dev->absmax[j] - dev->absmin[j]) / 2 - 2 * dev->absflat[j])))
continue;
joydev->corr[i].coef[2] = (1 << 29) / t;
joydev->corr[i].coef[3] = (1 << 29) / t;
Index: usbkbd.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/usbkbd.c,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- usbkbd.c 2001/09/25 10:12:07 1.26
+++ usbkbd.c 2001/12/27 10:37:41 1.27
@@ -194,9 +194,6 @@
pipe = usb_rcvintpipe(dev, endpoint->bEndpointAddress);
maxp = usb_maxpacket(dev, pipe, usb_pipeout(pipe));
- usb_set_protocol(dev, interface->bInterfaceNumber, 0);
- usb_set_idle(dev, interface->bInterfaceNumber, 0, 0);
-
if (!(kbd = kmalloc(sizeof(struct usb_kbd), GFP_KERNEL))) return NULL;
memset(kbd, 0, sizeof(struct usb_kbd));
@@ -218,7 +215,7 @@
usb_kbd_irq, kbd, endpoint->bInterval);
kbd->dr.requesttype = USB_TYPE_CLASS | USB_RECIP_INTERFACE;
- kbd->dr.request = USB_REQ_SET_REPORT;
+ kbd->dr.request = 0x09;
kbd->dr.value = 0x200;
kbd->dr.index = interface->bInterfaceNumber;
kbd->dr.length = 1;
Index: usbmouse.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/usbmouse.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -d -r1.14 -r1.15
--- usbmouse.c 2001/09/25 10:12:07 1.14
+++ usbmouse.c 2001/12/27 10:37:41 1.15
@@ -120,8 +120,6 @@
pipe = usb_rcvintpipe(dev, endpoint->bEndpointAddress);
maxp = usb_maxpacket(dev, pipe, usb_pipeout(pipe));
- usb_set_idle(dev, interface->bInterfaceNumber, 0, 0);
-
if (!(mouse = kmalloc(sizeof(struct usb_mouse), GFP_KERNEL))) return NULL;
memset(mouse, 0, sizeof(struct usb_mouse));
|
|
From: Vojtech P. <vo...@us...> - 2001-12-27 10:07:22
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input In directory usw-pr-cvs1:/tmp/cvs-serv25113 Modified Files: atkbd.c Log Message: Better fix for off-the-bounds set values. Index: atkbd.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/atkbd.c,v retrieving revision 1.28 retrieving revision 1.29 diff -u -d -r1.28 -r1.29 --- atkbd.c 2001/12/25 10:52:07 1.28 +++ atkbd.c 2001/12/27 10:07:16 1.29 @@ -337,7 +337,7 @@ * itself. */ - return (param == atkbd_set) ? atkbd_set : 2; + return (param == 3) ? 3 : 2; } /* |
|
From: James S. <jsi...@us...> - 2001-12-26 23:38:56
|
Update of /cvsroot/linuxconsole/ruby In directory usw-pr-cvs1:/tmp/cvs-serv14773 Removed Files: AGAINST-2.5.0 Log Message: --- AGAINST-2.5.0 DELETED --- |
|
From: James S. <jsi...@us...> - 2001-12-26 23:36:44
|
Update of /cvsroot/linuxconsole/ruby In directory usw-pr-cvs1:/tmp/cvs-serv14308 Added Files: AGAINST-2.5.1 Log Message: --- NEW FILE: AGAINST-2.5.1 --- |
|
From: James S. <jsi...@us...> - 2001-12-26 21:09:35
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/block In directory usw-pr-cvs1:/tmp/cvs-serv21603 Removed Files: genhd.c Log Message: Bye bye. This chnage went into 2.5.0 :-) --- genhd.c DELETED --- |
|
From: James S. <jsi...@us...> - 2001-12-26 21:08:36
|
Update of /cvsroot/linuxconsole/ruby/linux/include/linux
In directory usw-pr-cvs1:/tmp/cvs-serv21051/include/linux
Modified Files:
kernel.h
Log Message:
Synced to 2.5.1. The USB stuff has changed thus breaking the HID stuff.
Index: kernel.h
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/include/linux/kernel.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- kernel.h 2001/10/15 01:13:17 1.8
+++ kernel.h 2001/12/26 21:08:33 1.9
@@ -11,6 +11,7 @@
#include <linux/linkage.h>
#include <linux/stddef.h>
#include <linux/types.h>
+#include <linux/compiler.h>
/* Optimization barrier */
/* The "volatile" is due to gcc bugs */
@@ -51,7 +52,7 @@
extern struct notifier_block *panic_notifier_list;
NORET_TYPE void panic(const char * fmt, ...)
__attribute__ ((NORET_AND format (printf, 1, 2)));
-NORET_TYPE void do_exit(long error_code)
+asmlinkage NORET_TYPE void do_exit(long error_code)
ATTRIB_NORET;
NORET_TYPE void complete_and_exit(struct completion *, long)
ATTRIB_NORET;
@@ -60,9 +61,11 @@
extern long simple_strtol(const char *,char **,unsigned int);
extern unsigned long long simple_strtoull(const char *,char **,unsigned int);
extern long long simple_strtoll(const char *,char **,unsigned int);
-extern int sprintf(char * buf, const char * fmt, ...);
+extern int sprintf(char * buf, const char * fmt, ...)
+ __attribute__ ((format (printf, 2, 3)));
extern int vsprintf(char *buf, const char *, va_list);
-extern int snprintf(char * buf, size_t size, const char *fmt, ...);
+extern int snprintf(char * buf, size_t size, const char * fmt, ...)
+ __attribute__ ((format (printf, 3, 4)));
extern int vsnprintf(char *buf, size_t size, const char *fmt, va_list args);
extern int sscanf(const char *, const char *, ...)
@@ -96,15 +99,15 @@
extern void bust_spinlocks(int yes);
extern int oops_in_progress; /* If set, an oops, panic(), BUG() or die() is in progress */
-extern int tainted;
-extern const char *print_tainted(void);
-
static inline void do_BUG(const char *file, int line)
{
- bust_spinlocks(1);
- printk("kernel BUG at %s:%d!\n", file, line);
+ bust_spinlocks(1);
+ printk("kernel BUG at %s:%d!\n", file, line);
}
+extern int tainted;
+extern const char *print_tainted(void);
+
#if DEBUG
#define pr_debug(fmt,arg...) \
printk(KERN_DEBUG fmt,##arg)
@@ -180,4 +183,5 @@
char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding: libc5 uses this.. */
};
+#define BUG_ON(condition) do { if (unlikely((condition)!=0)) BUG(); } while(0)
#endif
|
|
From: James S. <jsi...@us...> - 2001-12-26 21:08:36
|
Update of /cvsroot/linuxconsole/ruby/linux/include/asm-alpha
In directory usw-pr-cvs1:/tmp/cvs-serv21051/include/asm-alpha
Modified Files:
page.h
Log Message:
Synced to 2.5.1. The USB stuff has changed thus breaking the HID stuff.
Index: page.h
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/include/asm-alpha/page.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- page.h 2001/10/15 01:13:17 1.2
+++ page.h 2001/12/26 21:08:33 1.3
@@ -64,6 +64,7 @@
do_BUG(__FILE__, __LINE__); \
__asm__ __volatile__("call_pal %0 # bugchk" : : "i" (PAL_bugchk)); \
} while (0)
+
#define PAGE_BUG(page) BUG()
/* Pure 2^n version of get_order */
|
|
From: James S. <jsi...@us...> - 2001-12-26 21:08:36
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input
In directory usw-pr-cvs1:/tmp/cvs-serv21051/drivers/input
Modified Files:
evdev.c hiddev.c input.c joydev.c mousedev.c ns558.c tsdev.c
Log Message:
Synced to 2.5.1. The USB stuff has changed thus breaking the HID stuff.
Index: evdev.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/evdev.c,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -d -r1.40 -r1.41
--- evdev.c 2001/10/17 10:38:13 1.40
+++ evdev.c 2001/12/26 21:08:33 1.41
@@ -99,7 +99,6 @@
struct evdev_list *list = file->private_data;
struct evdev_list **listptr;
- lock_kernel();
listptr = &list->evdev->list;
evdev_fasync(-1, file, 0);
@@ -118,8 +117,7 @@
}
kfree(list);
- unlock_kernel();
-
+
return 0;
}
Index: hiddev.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/hiddev.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- hiddev.c 2001/10/17 17:00:13 1.7
+++ hiddev.c 2001/12/26 21:08:33 1.8
@@ -193,7 +193,6 @@
struct hiddev_list *list = file->private_data;
struct hiddev_list **listptr;
- lock_kernel();
listptr = &list->hiddev->list;
hiddev_fasync(-1, file, 0);
@@ -209,7 +208,6 @@
}
kfree(list);
- unlock_kernel();
return 0;
}
Index: input.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/input.c,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -d -r1.47 -r1.48
--- input.c 2001/10/06 14:46:03 1.47
+++ input.c 2001/12/26 21:08:33 1.48
@@ -637,9 +637,7 @@
old_fops = file->f_op;
file->f_op = new_fops;
- lock_kernel();
err = new_fops->open(inode, file);
- unlock_kernel();
if (err) {
fops_put(file->f_op);
Index: joydev.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/joydev.c,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -d -r1.36 -r1.37
--- joydev.c 2001/12/18 07:53:07 1.36
+++ joydev.c 2001/12/26 21:08:33 1.37
@@ -166,7 +166,6 @@
struct joydev_list *list = file->private_data;
struct joydev_list **listptr;
- lock_kernel();
listptr = &list->joydev->list;
joydev_fasync(-1, file, 0);
@@ -185,7 +184,6 @@
}
kfree(list);
- unlock_kernel();
return 0;
}
Index: mousedev.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/mousedev.c,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -d -r1.37 -r1.38
--- mousedev.c 2001/10/17 10:38:13 1.37
+++ mousedev.c 2001/12/26 21:08:33 1.38
@@ -181,7 +181,6 @@
struct mousedev_list *list = file->private_data;
struct mousedev_list **listptr;
- lock_kernel();
listptr = &list->mousedev->list;
mousedev_fasync(-1, file, 0);
@@ -219,7 +218,6 @@
}
kfree(list);
- unlock_kernel();
return 0;
}
Index: ns558.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/ns558.c,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -d -r1.40 -r1.41
--- ns558.c 2001/11/13 22:48:01 1.40
+++ ns558.c 2001/12/26 21:08:33 1.41
@@ -163,11 +163,7 @@
return port;
}
-#if defined(CONFIG_ISAPNP) || (defined(CONFIG_ISAPNP_MODULE) && defined(MODULE))
-#define NSS558_ISAPNP
-#endif
-
-#ifdef NSS558_ISAPNP
+#ifdef __ISAPNP__
#define NS558_DEVICE(a,b,c,d)\
card_vendor: ISAPNP_ANY_ID, card_device: ISAPNP_ANY_ID,\
@@ -266,7 +262,7 @@
int __init ns558_init(void)
{
int i = 0;
-#ifdef NSS558_ISAPNP
+#ifdef __ISAPNP__
struct isapnp_device_id *devid;
struct pci_dev *dev = NULL;
#endif
@@ -282,7 +278,7 @@
* Probe for PnP ports.
*/
-#ifdef NSS558_ISAPNP
+#ifdef __ISAPNP__
for (devid = pnp_devids; devid->vendor; devid++) {
while ((dev = isapnp_find_dev(NULL, devid->vendor, devid->function, dev))) {
ns558 = ns558_pnp_probe(dev, ns558);
@@ -301,7 +297,7 @@
gameport_unregister_port(&port->gameport);
switch (port->type) {
-#ifdef NSS558_ISAPNP
+#ifdef __ISAPNP__
case NS558_PNP:
if (port->dev->deactivate)
port->dev->deactivate(port->dev);
Index: tsdev.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/tsdev.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- tsdev.c 2001/10/17 17:00:14 1.9
+++ tsdev.c 2001/12/26 21:08:33 1.10
@@ -120,7 +120,6 @@
struct tsdev_list *list = file->private_data;
struct tsdev_list **listptr;
- lock_kernel();
listptr = &list->tsdev->list;
tsdev_fasync(-1, file, 0);
@@ -138,7 +137,6 @@
}
}
kfree(list);
- unlock_kernel();
return 0;
}
|
|
From: James S. <jsi...@us...> - 2001-12-26 21:08:36
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/ppc/amiga
In directory usw-pr-cvs1:/tmp/cvs-serv21051/arch/ppc/amiga
Modified Files:
config.c
Log Message:
Synced to 2.5.1. The USB stuff has changed thus breaking the HID stuff.
Index: config.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/amiga/config.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- config.c 2001/10/29 00:10:58 1.2
+++ config.c 2001/12/26 21:08:33 1.3
@@ -28,6 +28,7 @@
#ifdef CONFIG_ZORRO
#include <linux/zorro.h>
#endif
+#include <linux/seq_file.h>
#include <asm/bootinfo.h>
#include <asm/setup.h>
@@ -88,7 +89,7 @@
extern void amiga_disable_irq (unsigned int);
static void amiga_get_model(char *model);
static int amiga_get_hardware_list(char *buffer);
-extern int amiga_get_irq_list (char *);
+extern int show_amiga_interrupts (struct seq_file *, void *);
/* amiga specific timer functions */
static unsigned long amiga_gettimeoffset (void);
static void a3000_gettod (int *, int *, int *, int *, int *, int *);
@@ -402,7 +403,7 @@
#endif
mach_get_model = amiga_get_model;
mach_get_hardware_list = amiga_get_hardware_list;
- mach_get_irq_list = amiga_get_irq_list;
+ mach_get_irq_list = show_amiga_interrupts;
mach_gettimeoffset = amiga_gettimeoffset;
if (AMIGAHW_PRESENT(A3000_CLK)){
mach_gettod = a3000_gettod;
|
|
From: James S. <jsi...@us...> - 2001-12-26 21:08:36
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/ppc/kernel
In directory usw-pr-cvs1:/tmp/cvs-serv21051/arch/ppc/kernel
Modified Files:
apus_setup.c
Log Message:
Synced to 2.5.1. The USB stuff has changed thus breaking the HID stuff.
Index: apus_setup.c
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/kernel/apus_setup.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- apus_setup.c 2001/12/26 17:28:11 1.5
+++ apus_setup.c 2001/12/26 21:08:33 1.6
@@ -90,7 +90,7 @@
void (*(*mach_default_handler)[]) (int, void *, struct pt_regs *) = NULL;
void (*mach_get_model) (char *model) = NULL;
int (*mach_get_hardware_list) (char *buffer) = NULL;
-int (*mach_get_irq_list) (char *) = NULL;
+int (*mach_get_irq_list) (struct seq_file *, void *) = NULL;
void (*mach_process_int) (int, struct pt_regs *) = NULL;
/* machine dependent timer functions */
unsigned long (*mach_gettimeoffset) (void);
@@ -101,7 +101,6 @@
long mach_max_dma_address = 0x00ffffff; /* default set to the lower 16MB */
#if defined(CONFIG_AMIGA_FLOPPY)
void (*mach_floppy_setup) (char *, int *) __initdata = NULL;
-void (*mach_floppy_eject) (void) = NULL;
#endif
#ifdef CONFIG_HEARTBEAT
void (*mach_heartbeat) (int) = NULL;
@@ -353,12 +352,6 @@
if (mach_floppy_setup)
mach_floppy_setup (str, ints);
}
-
-void floppy_eject(void)
-{
- if (mach_floppy_eject)
- mach_floppy_eject();
-}
#endif
/*********************************************************** MEMORY */
@@ -620,12 +613,12 @@
return irq;
}
-int apus_get_irq_list(char *buf)
+int show_apus_interrupts(struct seq_file *p, void *v)
{
#ifdef CONFIG_APUS
- extern int amiga_get_irq_list(char *buf);
+ extern int show_amiga_interrupts(struct seq_file *p, void *v)
- return amiga_get_irq_list (buf);
+ return show_amiga_interrupts(p, v);
#else
return 0;
#endif
|
|
From: James S. <jsi...@us...> - 2001-12-26 21:08:36
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/usb
In directory usw-pr-cvs1:/tmp/cvs-serv21051/drivers/usb
Modified Files:
Config.in
Log Message:
Synced to 2.5.1. The USB stuff has changed thus breaking the HID stuff.
Index: Config.in
===================================================================
RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/usb/Config.in,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- Config.in 2001/11/13 19:38:22 1.18
+++ Config.in 2001/12/26 21:08:33 1.19
@@ -9,7 +9,7 @@
bool ' USB verbose debug messages' CONFIG_USB_DEBUG
comment 'Miscellaneous USB options'
- bool ' Preliminary USB device filesystem' CONFIG_USB_DEVICEFS
+ bool ' USB device filesystem' CONFIG_USB_DEVICEFS
if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then
bool ' Enforce USB bandwidth allocation (EXPERIMENTAL)' CONFIG_USB_BANDWIDTH
else
|