Commit e2033b5c authored by Linus Torvalds's avatar Linus Torvalds

Import 2.1.70

parent 0d43e5f3
......@@ -33,6 +33,16 @@ S: Klaproosstraat 72 c 10
S: B-2610 Wilrijk-Antwerpen
S: Belgium
N: Erik Andersen
E: andersee@debian.org
W: http://www.inconnect.com/~andersen
P: 1024/FC4CFFED 78 3C 6A 19 FA 5D 92 5A FB AC 7B A5 A5 E1 FF 8E
D: Maintainer of ide-cd and Uniform CD-ROM driver,
D: ATAPI CD-Changer support, Major 2.1.x CD-ROM update.
S: 4538 South Carnegie Tech St.
S: West Valley City, UT 84120
S: USA
N: H. Peter Anvin
E: hpa@zytor.com
W: http://www.zytor.com/~hpa/
......@@ -1753,10 +1763,11 @@ S: Fin-00150 Helsinki
S: Finland
N: Roger E. Wolff
E: wolff@dutecai.et.tudelft.nl
E: R.E.Wolff@BitWizard.nl
D: Written kmalloc/kfree
S: Oosterstraat 23
S: 2611 TT Delft
D: Written Specialix IO8+ driver
S: van Bronckhorststraat 12
S: 2612 XV Delft
S: The Netherlands
N: David Woodhouse
......
......@@ -3951,7 +3951,7 @@ CONFIG_DEFXX
This is support for the DIGITAL series of EISA (DEFEA) and PCI
(DEFPA) controllers which can connect you to a local FDDI network.
Support non-SCSI/IDE/ATAPI drives
Support CDROM drives that are not SCSI or IDE/ATAPI
CONFIG_CD_NO_IDESCSI
If you have a CDROM drive that is neither SCSI nor IDE/ATAPI, say Y
here, otherwise N. Read the CDROM-HOWTO, available via ftp (user:
......@@ -3963,7 +3963,7 @@ CONFIG_CD_NO_IDESCSI
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 include/linux/<driver_name>.h where
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 CDROM drivers are also usable as a module (= code which can
......@@ -4004,7 +4004,7 @@ CONFIG_MCD
(PhotoCDs). There is a new driver (next question) which can do
this. If you want that one, say N here.
If the driver doesn't work out of the box, you might want to have a
look at linux/include/linux/mcd.h. If you say Y here, you should
look at linux/drivers/cdrom/mcd.h. If you say Y here, you should
also say Y to "ISO9660 cdrom filesystem support" below, because
that's the filesystem used on CDROMs. Please also read the file
Documentation/cdrom/mcd. This driver is also available as a module (
......@@ -4048,7 +4048,7 @@ CONFIG_SBPCD
are not sure, but can consume some time during the boot process if
none of the supported drives gets found.
Once your drive got found, you should enter the reported parameters
into linux/include/linux/sbpcd.h and set "DISTRIBUTION 0" there.
into linux/drivers/cdrom/sbpcd.h and set "DISTRIBUTION 0" there.
This driver can support up to four CDROM interface cards, and each
card can support up to four CDROM drives; if you say Y here, you
will be asked how many controllers you have. If compiled as a
......@@ -4067,7 +4067,7 @@ CONFIG_SBPCD2
Say Y here only if you have two CDROM controller boards of this type
(usually only if you have more than four drives). You should enter
the parameters for the second, third and fourth interface card into
linux/include/linux/sbpcd.h before compiling the new kernel. Read
linux/drivers/cdrom/sbpcd.h before compiling the new kernel. Read
the file Documentation/cdrom/sbpcd.
Aztech/Orchid/Okano/Wearnes/TXC/CyDROM CDROM support
......@@ -4099,9 +4099,9 @@ Goldstar R420 CDROM support
CONFIG_GSCD
If this is your CDROM drive, say Y here. As described in
linux/Documentation/cdrom/gscd, you might have to change a setting
in the file include/linux/gscd.h before compiling the kernel. Please
read the file Documentation/cdrom/gscd. If you say Y here, you
should also say Y to "ISO9660 cdrom filesystem support" below,
in the file linux/drivers/cdrom/gscd.h before compiling the kernel.
Please read the file Documentation/cdrom/gscd. If you say Y here,
you should also say Y to "ISO9660 cdrom filesystem support" below,
because that's the filesystem used on CDROMs. 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
......@@ -4827,6 +4827,18 @@ CONFIG_SMB_FS
Documentation/modules.txt. The module will be called smbfs.o. Most
people say N, however.
Coda filesystem support
CONFIG_CODA_FS
CODA is an advanced network filesystem. It has support for disconnected
operation for laptops, read/write server replication, persistent client
caches and write back caching.
By choosing this option you are compiling kernel support for Coda clients
into the Linux kernel. You will need user level code as well, both for
the client and server. Server's are currently user level, i.e. need
no kernel support. For further information see
http://www.coda.cs.cmu.edu or contact Peter Braam <braam@cs.cmu.edu>.
SMB Win95 bug work-around
CONFIG_SMB_WIN95
If you want to connect to a share exported by Windows 95, you should
......@@ -4973,6 +4985,23 @@ CONFIG_RISCOM8
say M here and compile this driver as kernel loadable module; the
module will be called riscom8.o.
Specialix IO8+ card support
CONFIG_SPECIALIX
This is a driver for the Specialix IO8+ multiport card, that give
you many serial ports. You would need something like this to
connect more than two modems to your linux box, for instance in
order to become a BBS. If you have a card like that, say Y here and
read the file Documentation/specialix.txt. Also it's possible to say
M here and compile this driver as kernel loadable module.
Specialix DTR/RTS pin is RTS
CONFIG_SPECIALIX_RTSCTS
The Specialix card can only support either RTS or DTR. When this
option is off, the driver will use the pin as "DTR" when the tty is
in software handshake mode. When this option is on or hardware
handshake is on, it will always be RTS. Read the file
Documentation/specialix.txt for more information.
Cyclades async mux support
CONFIG_CYCLADES
This is a driver for a card that gives you many serial ports. You
......
LATEXFILE = cdrom-standard
all:
make clean
latex $(LATEXFILE)
latex $(LATEXFILE)
@if [ -x `which gv` ]; then \
`dvips -q -t letter -o $(LATEXFILE).ps $(LATEXFILE).dvi` ;\
`gv -antialias -media letter -nocenter $(LATEXFILE).ps` ;\
else \
`xdvi $(LATEXFILE).dvi &` ;\
fi
make sortofclean
clean:
rm -f $(LATEXFILE).ps $(LATEXFILE).dvi $(LATEXFILE).aux $(LATEXFILE).log
sortofclean:
rm -f $(LATEXFILE).aux $(LATEXFILE).log
......@@ -55,8 +55,8 @@ old kernel, in order to reboot if something goes wrong!
2. INSTALLATION
The driver consists of a header file 'aztcd.h', which normally should reside
in /usr/include/linux and the source code 'aztcd.c', which normally resides in
/usr/src/linux/drivers/cdrom. It uses /dev/aztcd (/dev/aztcd0 in some distri-
in /usr/src/linux/drivers/cdrom and the source code 'aztcd.c', which normally
resides in the same place. It uses /dev/aztcd (/dev/aztcd0 in some distri-
butions), which must be a valid block device with major number 29 and reside
in directory /dev. To mount a CD-ROM, your kernel needs to have the ISO9660-
filesystem support included.
......@@ -157,7 +157,7 @@ your boot kernel is not the same than the source kernel version, from which
you create the modules. So rebuild your kernel, if necessary.
Now edit the base address of your AZTECH interface card in
/usr/src/linux/include/linux/aztcd.h to the appropriate value.
/usr/src/linux/drivers/cdrom/aztcd.h to the appropriate value.
aztcd may be configured to use autoprobing the base address by setting
AZT_BASE_ADDR to '-1'. In that case aztcd probes the addresses listed
under AZT_BASE_AUTO. But please remember, that autoprobing always may
......@@ -191,7 +191,7 @@ should try to boot DOS first and let their DOS drivers initialize the
soundcard and CDROM, then warm boot (or use loadlin) their PC to start
Linux.
Support for the CDROM-interface of SoundWave32-soundcards is directly
implemented in the AZTECH driver. Please edit /usr/src/linux/include/aztdc.h,
implemented in the AZTECH driver. Please edit linux/drivers/cdrom/aztdc.h,
uncomment line '#define AZT_SW32' and set the appropriate value for
AZT_BASE_ADDR and AZT_SW32_BASE_ADDR. This support was tested with an Orchid
CDS-3110 connected to a SoundWave32.
......@@ -563,7 +563,7 @@ History: V0.1 W.Zimmermann: First release. Nov. 8, 1994
#include <fcntl.h>
#include <unistd.h>
#include <linux/cdrom.h>
#include <linux/aztcd.h>
#include <linux/../../drivers/cdrom/aztcd.h>
void help(void)
{ printf("Available Commands: STOP s EJECT/CLOSE e QUIT q\n");
......
This diff is collapsed.
......@@ -116,7 +116,7 @@ If module parameters and LILO config options don't work
-------------------------------------------------------
If autoprobing does not work, you can hard-wire the default values
of the base port address (CM206_BASE) and interrupt request line
(CM206_IRQ) into the file ./include/linux/cm206.h. Change
(CM206_IRQ) into the file /usr/src/linux/drivers/cdrom/cm206.h. Change
the defines of CM206_IRQ and CM206_BASE.
......
......@@ -23,7 +23,7 @@ drive interface is compatible, too.
Installation
------------
Change to '/usr/src/linux/include/linux' and edit the file 'gscd.h'. Insert
Change to '/usr/src/linux/drivers/cdrom' and edit the file 'gscd.h'. Insert
the i/o address of your interface card.
The default base address is 0x340. This will work for most applications.
......
......@@ -379,12 +379,14 @@ f. Data corruption.
* interface by Erik Andersen <andersee@et.byu.edu>.
*/
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <unistd.h>
#include <stdio.h>
#include <linux/ucdrom.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <linux/cdrom.h>
int
......@@ -395,7 +397,7 @@ main (int argc, char **argv)
int fd; /* file descriptor for CD-ROM device */
int status; /* return status for system calls */
int verbose = 0;
int x_slot = -1;
int slot=-1, x_slot;
int total_slots_available;
program = argv[0];
......@@ -419,10 +421,10 @@ main (int argc, char **argv)
device = argv[0];
if (argc == 2)
x_slot = atoi (argv[1]) - 1;
slot = atoi (argv[1]) - 1;
/* open device */
fd = open (device, 0);
fd = open(device, O_RDONLY | O_NONBLOCK);
if (fd < 0) {
fprintf (stderr, "%s: open failed for `%s': %s\n",
program, device, strerror (errno));
......@@ -437,8 +439,8 @@ main (int argc, char **argv)
exit (1);
}
if (x_slot >= 0) {
if (x_slot >= total_slots_available) {
if (slot >= 0) {
if (slot >= total_slots_available) {
fprintf (stderr, "Bad slot number. "
"Should be 1 -- %d.\n",
total_slots_available);
......@@ -446,19 +448,33 @@ main (int argc, char **argv)
}
/* load */
status = ioctl (fd, CDROM_SELECT_DISC, x_slot);
slot=ioctl (fd, CDROM_SELECT_DISC, slot);
if (slot<0) {
fflush(stdout);
perror ("CDROM_SELECT_DISC ");
exit(1);
}
}
if (x_slot < 0 || verbose) {
if (slot < 0 || verbose) {
status = ioctl (fd, CDROM_SELECT_DISC, CDSL_CURRENT);
status=ioctl (fd, CDROM_SELECT_DISC, CDSL_CURRENT);
if (status<0) {
fflush(stdout);
perror (" CDROM_SELECT_DISC");
exit(1);
}
slot=status;
printf ("Current slot: %d\n", status+1);
printf ("Current slot: %d\n", slot+1);
printf ("Total slots available: %d\n",
total_slots_available);
printf ("Drive status: ");
switch (ioctl (fd, CDROM_DRIVE_STATUS, CDSL_CURRENT)) {
status = ioctl (fd, CDROM_DRIVE_STATUS, CDSL_CURRENT);
if (status<0) {
perror(" CDROM_DRIVE_STATUS");
} else switch(status) {
case CDS_DISC_OK:
printf ("Ready.\n");
break;
......@@ -475,23 +491,58 @@ main (int argc, char **argv)
for (x_slot=0; x_slot<total_slots_available; x_slot++) {
printf ("Slot %2d: ", x_slot+1);
switch (ioctl (fd, CDROM_DRIVE_STATUS, x_slot)) {
status = ioctl (fd, CDROM_DRIVE_STATUS, x_slot);
if (status<0) {
perror(" CDROM_DRIVE_STATUS");
} else switch(status) {
case CDS_DISC_OK:
printf ("Disc present.");
break;
case CDS_NO_DISC:
printf ("Empty slot.");
break;
case CDS_TRAY_OPEN:
printf ("CD-ROM tray open.\n");
break;
case CDS_DRIVE_NOT_READY:
printf ("CD-ROM drive not ready.\n");
break;
case CDS_NO_INFO:
printf ("No Information.");
printf ("No Information available.");
break;
default:
printf ("This Should not happen!\n");
break;
}
switch (ioctl (fd, CDROM_MEDIA_CHANGED, x_slot)) {
if (slot == x_slot) {
status = ioctl (fd, CDROM_DISC_STATUS);
if (status<0) {
perror(" CDROM_DISC_STATUS");
}
switch (status) {
case CDS_AUDIO:
printf ("\tAudio disc.\t");
break;
case CDS_DATA_1:
case CDS_DATA_2:
printf ("\tData disc type %d.\t", status-CDS_DATA_1+1);
break;
case CDS_XA_2_1:
case CDS_XA_2_2:
printf ("\tXA data disc type %d.\t", status-CDS_XA_2_1+1);
break;
default:
printf ("\tUnknown disc type 0x%x!\t", status);
break;
}
}
status = ioctl (fd, CDROM_MEDIA_CHANGED, x_slot);
if (status<0) {
perror(" CDROM_MEDIA_CHANGED");
}
switch (status) {
case 1:
printf ("\t\tChanged.\n");
printf ("Changed.\n");
break;
default:
printf ("\n");
......
......@@ -82,7 +82,7 @@ The default values are
dma=0
drive_type=Sanyo
reflecting my own configuration. The defaults can be changed in
the file ~/include/linux/ips16.h.
the file linux/drivers/cdrom/ips16.h.
The cdrom interface can be configured at run time by loading the
initialisation driver as a module. In that case, the interface
......
......@@ -88,7 +88,7 @@ Mozart card - I simply had to add
to configure the CDROM interface for type "Panasonic" (LaserMate) and address
0x340.
The interface type has to get configured in /usr/include/linux/sbpcd.h,
The interface type has to get configured in linux/drivers/cdrom/sbpcd.h,
because the register layout is different between the "SoundBlaster" and the
"LaserMate" type.
......@@ -176,7 +176,7 @@ This release consists of
- this README file
- the driver file linux/drivers/cdrom/sbpcd.c
- the stub files linux/drivers/cdrom/sbpcd[234].c
- the header file linux/include/linux/sbpcd.h.
- the header file linux/drivers/cdrom/sbpcd.h.
To install:
......@@ -189,7 +189,7 @@ To install:
correct if you can mount a data CD. There is no choice for you with the
type; only one is the right, the others are deadly wrong.
a. Go into /usr/src/linux/include/linux/sbpcd.h and configure it for your
a. Go into /usr/src/linux/drivers/cdrom/sbpcd.h and configure it for your
hardware (near the beginning):
a1. Set it up for the appropriate type of interface board.
"Original" CreativeLabs sound cards need "SBPRO 1".
......@@ -568,10 +568,10 @@ Appendix -- the "cdtester" utility:
#include <linux/cdrom.h>
#ifdef AZT_PRIVATE_IOCTLS
#include <linux/aztcd.h>
#include <linux/../../drivers/cdrom/aztcd.h>
#endif AZT_PRIVATE_IOCTLS
#ifdef SBP_PRIVATE_IOCTLS
#include <linux/sbpcd.h>
#include <linux/../../drivers/cdrom/sbpcd.h>
#include <linux/fs.h>
#endif SBP_PRIVATE_IOCTLS
......
......@@ -39,7 +39,7 @@ through the use of command line options: type at the "boot:" prompt:
file /etc/lilo.conf). You could also use 'append="sjcd=<configuration_info>"'
in the appropriate section of /etc/lilo.conf
If you're building a kernel yourself you can set your default base
i/o address with SJCD_BASE_ADDR in include/linux/sjcd.h.
i/o address with SJCD_BASE_ADDR in /usr/src/linux/drivers/cdrom/sjcd.h.
The sjcd driver supports being loaded as a module. The following
command will set the base i/o address on the fly (assuming you
......
......@@ -36,7 +36,7 @@ REQUIREMENTS
recognized
- you must enter your interface address into
/usr/src/linux/include/linux/sonycd535.h and build the
/usr/src/linux/drivers/cdrom/sonycd535.h and build the
appropriate kernel or use the "kernel command line" parameter
sonycd535=0x320
with the correct interface address.
......
......@@ -74,8 +74,7 @@ Code Seq# Include File Comments
'P' all linux/soundcard.h
'Q' all linux/soundcard.h
'R' all linux/random.h
'S' 00-1F linux/cdrom.h
'S' 20-7F linux/ucdrom.h
'S' 00-7F linux/cdrom.h
'S' 80-81 scsi/scsi_ioctl.h
'S' 82-FF scsi/scsi.h
'T' all linux/soundcard.h conflict!
......
This diff is collapsed.
......@@ -414,6 +414,13 @@ L: linux-kernel@vger.rutgers.edu
W: http://www.nyx.net/~arobinso
S: Maintainted
SPECIALIX IO8+ MULTIPORT SERIAL CARD DRIVER
P: Roger Wolff
M: R.E.Wolff@BitWizard.nl
M: io8-linux@specialix.co.uk
L: linux-kernel@vger.rutgers.edu ?
S: Supported
MOUSE AND MISC DEVICES [GENERAL]
P: Alessandro Rubini
M: rubini@ipvvis.unipv.it
......@@ -466,6 +473,12 @@ M: emoenke@gwdg.de
L: linux-kernel@vger.rutgers.edu
S: Maintained
UNIFORM CDROM DRIVER
P: Erik Andersen
M: andersee@debian.org
L: linux-kernel@vger.rutgers.edu
S: Maintained
PARALLEL PORT SHARING SUPPORT
P: Phil Blundell
M: Philip.Blundell@pobox.com
......
VERSION = 2
PATCHLEVEL = 1
SUBLEVEL = 69
SUBLEVEL = 70
ARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/)
......@@ -133,7 +133,7 @@ ifeq ($(CONFIG_SCSI),y)
DRIVERS := $(DRIVERS) drivers/scsi/scsi.a
endif
ifneq ($(CONFIG_CD_NO_IDESCSI)$(CONFIG_BLK_DEV_IDECD)$(CONFIG_BLK_DEV_SR),)
ifeq ($(CONFIG_CDROM),y)
DRIVERS := $(DRIVERS) drivers/cdrom/cdrom.a
endif
......
......@@ -152,6 +152,17 @@ if [ "$CONFIG_CD_NO_IDESCSI" != "n" ]; then
fi
endmenu
# Conditionally compile in the Uniform CD-ROM driver
if [ "$CONFIG_BLK_DEV_IDECD" = "y" -o "$CONFIG_BLK_DEV_SR" = "y" -o "$CONFIG_SBPCD" = "y" -o "$CONFIG_MCD" = "y" -o "$CONFIG_CM206" = "y" -o "$CONFIG_CDU31A" = "y" ]; then
define_bool CONFIG_CDROM y
else
if [ "$CONFIG_BLK_DEV_IDECD" = "m" -o "$CONFIG_BLK_DEV_SR" = "m" -o "$CONFIG_SBPCD" = "m" -o "$CONFIG_MCD" = "m" -o "$CONFIG_CM206" = "m" -o "$CONFIG_CDU31A" = "m" ]; then
define_bool CONFIG_CDROM m
else
define_bool CONFIG_CDROM n
fi
fi
source fs/Config.in
source fs/nls/Config.in
......
......@@ -33,11 +33,11 @@
#define TASK_COUNTER 8
#define TASK_PRIORITY 16
#define TASK_FLAGS 24
#define TASK_SIGPENDING 32
/*
* task flags (must match include/linux/sched.h):
*/
#define PF_SIGPENDING 0x00000008
#define PF_PTRACED 0x00000010
/*
......@@ -543,9 +543,8 @@ ret_from_reschedule:
lda $4,init_task_union
bne $2,reschedule
xor $4,$8,$4
ldq $5,TASK_FLAGS($8)
ldl $5,TASK_SIGPENDING($8)
beq $4,restore_all
and $5,PF_SIGPENDING,$5
bne $5,signal_return
restore_all:
RESTORE_ALL
......
......@@ -102,6 +102,17 @@ if [ "$CONFIG_CD_NO_IDESCSI" != "n" ]; then
fi
endmenu
# Conditionally compile in the Uniform CD-ROM driver
if [ "$CONFIG_BLK_DEV_IDECD" = "y" -o "$CONFIG_BLK_DEV_SR" = "y" -o "$CONFIG_SBPCD" = "y" -o "$CONFIG_MCD" = "y" -o "$CONFIG_CM206" = "y" -o "$CONFIG_CDU31A" = "y" ]; then
define_bool CONFIG_CDROM y
else
if [ "$CONFIG_BLK_DEV_IDECD" = "m" -o "$CONFIG_BLK_DEV_SR" = "m" -o "$CONFIG_SBPCD" = "m" -o "$CONFIG_MCD" = "m" -o "$CONFIG_CM206" = "m" -o "$CONFIG_CDU31A" = "m" ]; then
define_bool CONFIG_CDROM m
else
define_bool CONFIG_CDROM n
fi
fi
source fs/Config.in
source fs/nls/Config.in
......
......@@ -200,6 +200,7 @@ CONFIG_EEXPRESS_PRO100=y
# CD-ROM drivers (not for SCSI or IDE/ATAPI drives)
#
# CONFIG_CD_NO_IDESCSI is not set
CONFIG_CDROM=y
#
# Filesystems
......@@ -219,6 +220,7 @@ CONFIG_NFS_FS=y
CONFIG_NFSD=y
CONFIG_SUNRPC=y
CONFIG_LOCKD=y
# CONFIG_CODA_FS is not set
# CONFIG_SMB_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_SYSV_FS is not set
......
......@@ -74,6 +74,7 @@ state = 0
counter = 4
priority = 8
flags = 12
sigpending = 16
dbgreg6 = 44
dbgreg7 = 48
exec_domain = 52
......@@ -169,7 +170,7 @@ ret_from_sys_call:
ret_with_reschedule:
cmpl $0,SYMBOL_NAME(need_resched)
jne reschedule
testb $0x8,flags(%ebx) # PF_SIGPENDING
cmpl $0,sigpending(%ebx)
jne signal_return
RESTORE_ALL
ALIGN
......
......@@ -207,6 +207,17 @@ endmenu
fi
# Conditionally compile in the Uniform CD-ROM driver
if [ "$CONFIG_BLK_DEV_IDECD" = "y" -o "$CONFIG_BLK_DEV_SR" = "y" ]; then
define_bool CONFIG_CDROM y
else
if [ "$CONFIG_BLK_DEV_IDECD" = "m" -o "$CONFIG_BLK_DEV_SR" = "m" ]; then
define_bool CONFIG_CDROM m
else
define_bool CONFIG_CDROM n
fi
fi
source fs/Config.in
source fs/nls/Config.in
......
......@@ -179,6 +179,17 @@ if [ "$CONFIG_SGI" != "y" ]; then
endmenu
fi
# Conditionally compile in the Uniform CD-ROM driver
if [ "$CONFIG_BLK_DEV_SR" = "y" ]; then
define_bool CONFIG_CDROM y
else
if [ "$CONFIG_BLK_DEV_SR" = "m" ]; then
define_bool CONFIG_CDROM m
else
define_bool CONFIG_CDROM n
fi
fi
source fs/Config.in
source fs/nls/Config.in
......
......@@ -106,6 +106,17 @@ if [ "$CONFIG_CD_NO_IDESCSI" != "n" ]; then
fi
endmenu
# Conditionally compile in the Uniform CD-ROM driver
if [ "$CONFIG_BLK_DEV_SR" = "y" -o "$CONFIG_SBPCD" = "y" -o "$CONFIG_MCD" = "y" -o "$CONFIG_CM206" = "y" -o "$CONFIG_CDU31A" = "y" ]; then
define_bool CONFIG_CDROM y
else
if [ "$CONFIG_BLK_DEV_SR" = "m" -o "$CONFIG_SBPCD" = "m" -o "$CONFIG_MCD" = "m" -o "$CONFIG_CM206" = "m" -o "$CONFIG_CDU31A" = "m" ]; then
define_bool CONFIG_CDROM m
else
define_bool CONFIG_CDROM n
fi
fi
source fs/Config.in
source fs/nls/Config.in
......
......@@ -144,6 +144,17 @@ if [ "$CONFIG_NET" = "y" ]; then
endmenu
fi
# Conditionally compile in the Uniform CD-ROM driver
if [ "$CONFIG_BLK_DEV_SR" = "y" ]; then
define_bool CONFIG_CDROM y
else
if [ "$CONFIG_BLK_DEV_SR" = "m" ]; then
define_bool CONFIG_CDROM m
else
define_bool CONFIG_CDROM n
fi
fi
source fs/Config.in
source fs/nls/Config.in
......
......@@ -181,6 +181,17 @@ if [ "$CONFIG_NET" = "y" ]; then
endmenu
fi
# Conditionally compile in the Uniform CD-ROM driver
if [ "$CONFIG_BLK_DEV_IDECD" = "y" -o "$CONFIG_BLK_DEV_SR" = "y" ]; then
define_bool CONFIG_CDROM y
else
if [ "$CONFIG_BLK_DEV_IDECD" = "m" -o "$CONFIG_BLK_DEV_SR" = "m" ]; then
define_bool CONFIG_CDROM m
else
define_bool CONFIG_CDROM n
fi
fi
source fs/Config.in
source fs/nls/Config.in
......
......@@ -382,7 +382,9 @@ static int ddv_daemon(void *unused)
save_flags(flags); cli();
while (!rem_queue) {
current->signal = 0;
spin_lock_irq(&current->sigmask_lock);
flush_signals(current);
spin_unlock_irq(&current->sigmask_lock);
interruptible_sleep_on(&ddv_daemon_wait);
}
......
This diff is collapsed.
......@@ -115,8 +115,11 @@ struct ide_cd_config_flags {
__u8 toctracks_as_bcd : 1; /* TOC track numbers are in BCD. */
__u8 subchan_as_bcd : 1; /* Subchannel info is in BCD. */
__u8 is_changer : 1; /* Drive is a changer. */
__u8 cd_r : 1; /* Drive can write to CD-R media . */
__u8 cd_rw : 1; /* Drive can write to CD-R/W media . */
__u8 supp_disc_present: 1; /* Changer can report exact contents
of slots. */
__u8 max_speed : 4; /* Max speed of the drive */
__u8 seeking : 1; /* Seeking in progress */
__u8 reserved : 6;
};
......@@ -130,6 +133,7 @@ struct ide_cd_state_flags {
__u8 toc_valid : 1; /* Saved TOC information is current. */
__u8 door_locked : 1; /* We think that the drive door is locked. */
__u8 sanyo_slot : 2; /* Sanyo 3 CD changer support */
__u8 curent_speed : 4; /* Current speed of the drive */
__u8 reserved : 3;
};
#define CDROM_STATE_FLAGS(drive) ((struct ide_cd_state_flags *)&((drive)->bios_head))
......@@ -239,16 +243,16 @@ struct atapi_capabilities_page {
/* Drive supports read from CD-R discs (orange book, part II) */
unsigned cd_r_read : 1; /* reserved in 1.2 */
/* Drive supports read from CD-E discs (orange book, part III) */
unsigned cd_e_read : 1; /* reserved in 1.2 */
/* Drive supports read from CD-R/W (CD-E) discs (orange book, part III) */
unsigned cd_rw_read : 1; /* reserved in 1.2 */
/* Drive supports reading CD-R discs with addressing method 2 */
unsigned method2 : 1; /* reserved in 1.2 */
unsigned reserved2 : 5;
/* Drive supports write to CD-R discs (orange book, part II) */
unsigned cd_r_write : 1; /* reserved in 1.2 */
/* Drive supports write to CD-E discs (orange book, part III) */
unsigned cd_e_write : 1; /* reserved in 1.2 */
/* Drive supports write to CD-R/W (CD-E) discs (orange book, part III) */
unsigned cd_rw_write : 1; /* reserved in 1.2 */
unsigned reserved3 : 6;
/* Drive supports audio play operations. */
......
......@@ -654,7 +654,6 @@ void ll_rw_swap_file(int rw, kdev_t dev, unsigned int *b, int nb, char *buf)
}
}
}
#ifdef CONFIG_BLK_DEV_EZ
extern void ez_init( void );
#endif
......@@ -694,9 +693,12 @@ __initfunc(int blk_dev_init(void))
#ifdef CONFIG_BLK_DEV_LOOP
loop_init();
#endif
#ifdef CONFIG_CDI_INIT
cdi_init(); /* this MUST precede ide_init */
#endif CONFIG_CDI_INIT
#ifdef CONFIG_CDROM /* this must precede all CD-ROM drivers */
cdrom_init();
#endif CONFIG_CDROM
#ifdef CONFIG_ISP16_CDI
isp16_init();
#endif CONFIG_ISP16_CDI
#ifdef CONFIG_BLK_DEV_IDE
ide_init(); /* this MUST precede hd_init */
#endif
......
......@@ -987,9 +987,11 @@ int md_thread(void * arg)
cli();
if (!test_bit(THREAD_WAKEUP, &thread->flags)) {
do {
current->signal = 0;
interruptible_sleep_on(&thread->wqueue);
} while (current->signal);
spin_lock_irq(&current->sigmask_lock);
flush_signals(current);
spin_unlock_irq(&current->sigmask_lock);
interruptible_sleep_on(&thread->wqueue);
} while (signal_pending(current));
}
}
}
......
......@@ -19,9 +19,6 @@ tristate 'Mitsumi [XA/MultiSession] CDROM support' CONFIG_MCDX
tristate 'Optics Storage DOLPHIN 8000AT CDROM support' CONFIG_OPTCD
tristate 'Philips/LMS CM206 CDROM support' CONFIG_CM206
tristate 'Sanyo CDR-H94A CDROM support' CONFIG_SJCD
bool 'Soft configurable cdrom interface card support' CONFIG_CDI_INIT
if [ "$CONFIG_CDI_INIT" = "y" ]; then
tristate 'ISP16/MAD16/Mozart soft configurable cdrom interface support' CONFIG_ISP16_CDI
fi
tristate 'ISP16/MAD16/Mozart soft configurable cdrom interface support' CONFIG_ISP16_CDI
tristate 'Sony CDU31A/CDU33A CDROM support' CONFIG_CDU31A
tristate 'Sony CDU535 CDROM support' CONFIG_CDU535
......@@ -90,11 +90,9 @@ endif #CONFIG_GSCD
ifeq ($(CONFIG_CM206),y)
L_OBJS += cm206.o
USE_GENERIC_CD=1
else
ifeq ($(CONFIG_CM206),m)
M_OBJS += cm206.o
USE_MODULAR_GENERIC_CD=1
endif
endif #CONFIG_CM206
......@@ -122,42 +120,20 @@ else
endif
endif #CONFIG_BPCD
ifeq ($(CONFIG_CDI_INIT),y)
L_OBJS += cdi.o
endif #CONFIG_CDI_INIT
ifeq ($(CONFIG_ISP16_CDI),y)
L_OBJS += isp16.o
else
# ifeq ($(CONFIG_CDI_INIT),m)
# M_OBJS += cdi.o
# endif
ifeq ($(CONFIG_ISP16_CDI),m)
M_OBJS += isp16.o
endif
endif #CONFIG_ISP16_CDI
ifeq ($(CONFIG_BLK_DEV_SR),y)
USE_GENERIC_CD=1
else
ifeq ($(CONFIG_BLK_DEV_SR),m)
USE_MODULAR_GENERIC_CD=1
endif
endif #SCSI CDROM DRIVER
ifeq ($(CONFIG_BLK_DEV_IDECD),y)
USE_GENERIC_CD=1
else
ifeq ($(CONFIG_BLK_DEV_IDECD),m)
USE_MODULAR_GENERIC_CD=1
endif
endif #CONFIG_BLK_DEV_IDECD
ifdef USE_GENERIC_CD
ifeq ($(CONFIG_CDROM),y)
LX_OBJS += cdrom.o
else
ifdef USE_MODULAR_GENERIC_CD
ifeq ($(CONFIG_CDROM),m)
MX_OBJS += cdrom.o
endif
endif #The Makefile configuration for the generic cdrom interface
endif #CONFIG_CDROM for the Uniform CD-ROM driver
include $(TOPDIR)/Rules.make
......@@ -163,7 +163,7 @@
#define MAJOR_NR AZTECH_CDROM_MAJOR
#include <linux/blk.h>
#include <linux/aztcd.h>
#include "aztcd.h"
#include <linux/module.h>
#include <linux/errno.h>
......@@ -2266,7 +2266,7 @@ static void azt_hsg2msf(long hsg, struct msf *msf)
static long azt_msf2hsg(struct msf *mp)
{ return azt_bcd2bin(mp -> frame) + azt_bcd2bin(mp -> sec) * 75
+ azt_bcd2bin(mp -> min) * 4500 - CD_BLOCK_OFFSET;
+ azt_bcd2bin(mp -> min) * 4500 - CD_MSF_OFFSET;
}
static void azt_bin2bcd(unsigned char *p)
......
/* $Id: aztcd.h,v 2.60 1997/11/29 09:51:22 root Exp root $
/* $Id: aztcd.h,v 2.50 1996/05/17 16:15:43 root Exp root $
*
* Definitions for a AztechCD268 CD-ROM interface
* Copyright (C) 1994-98 Werner Zimmermann
* Copyright (C) 1994, 1995 Werner Zimmermann
*
* based on Mitsumi CDROM driver by Martin Harriss
*
......@@ -20,16 +20,11 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* History: W.Zimmermann adaption to Aztech CD268-01A Version 1.3
* October 1994 Email: Werner.Zimmermann@fht-esslingen.de
* October 1994 Email: zimmerma@rz.fht-esslingen.de
*/
/* *** change this to set the I/O port address of your CD-ROM drive,
set to '-1', if you want autoprobing */
#define AZT_BASE_ADDR -1
/* list of autoprobing addresses (not more than 15), last value must be 0x000
Note: Autoprobing is only enabled, if AZT_BASE_ADDR is set to '-1' ! */
#define AZT_BASE_AUTO { 0x320, 0x300, 0x310, 0x330, 0x000 }
/* *** change this to set the I/O port address of your CD-ROM drive*/
#define AZT_BASE_ADDR 0x320
/* Uncomment this, if your CDROM is connected to a Soundwave32-soundcard
and configure AZT_BASE_ADDR and AZT_SW32_BASE_ADDR */
......@@ -60,9 +55,6 @@
uncritical to leave this setting untouched */
#define AZT_MULTISESSION 1
/*Uncomment this, if you are using a linux kernel version prior to 2.1.0 */
/*#define AZT_KERNEL_PRIOR_2_1 */
/*---------------------------------------------------------------------------*/
/*-----nothing to be configured for normal applications below this line------*/
......
/* -- cdi.c
*
* Initialisation of software configurable cdrom interface
* cards goes here.
*
* Copyright (c) 1996 Eric van der Maarel <H.T.M.v.d.Maarel@marin.nl>
*
* Version 0.1
*
* History:
* 0.1 First release. Only support for ISP16/MAD16/Mozart.
*
* 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.
*
*/
#include <linux/config.h>
#include <linux/blk.h> /* where the proto type of cdi_init() is */
#include <linux/init.h>
#ifdef CONFIG_ISP16_CDI
#include <linux/isp16.h>
#endif CONFIG_ISP16_CDI
/*
* Cdrom interface configuration.
*/
__initfunc(int
cdi_init(void))
{
int ret_val = -1;
#ifdef CONFIG_ISP16_CDI
ret_val &= isp16_init();
#endif CONFIG_ISP16_CDI
return(ret_val);
}
This diff is collapsed.
This diff is collapsed.
......@@ -96,10 +96,10 @@
#define SONY_REQ_SUBCODE_ADDRESS_CMD 0x21 /* Returns s_sony_subcode */
#define SONY_REQ_UPC_EAN_CMD 0x22
#define SONY_REQ_ISRC_CMD 0x23
#define SONY_REQ_TOC_DATA_SPEC_CMD 0x24
#define SONY_REQ_TOC_DATA_SPEC_CMD 0x24 /* Returns s_sony_session_toc */
/* Commands to request information from the drive */
#define SONY_READ_TOC_CMD 0x30
#define SONY_READ_TOC_CMD 0x30 /* let the drive firmware grab the TOC */
#define SONY_SEEK_CMD 0x31
#define SONY_READ_CMD 0x32
#define SONY_READ_BLKERR_STAT_CMD 0x34
......@@ -281,6 +281,28 @@ struct s_sony_session_toc
unsigned char track_start_msf[3];
} tracks[MAX_TRACKS];
unsigned int start_track_lba;
unsigned int lead_out_start_lba;
unsigned int mint;
unsigned int maxt;
};
struct s_all_sessions_toc
{
unsigned char sessions;
unsigned int track_entries;
unsigned char first_track_num;
unsigned char last_track_num;
unsigned char disk_type;
unsigned char lead_out_start_msf[3];
struct
{
unsigned char address :4;
unsigned char control :4;
unsigned char track;
unsigned char track_start_msf[3];
} tracks[MAX_TRACKS];
unsigned int start_track_lba;
unsigned int lead_out_start_lba;
};
......
......@@ -70,9 +70,9 @@
open only for ioctl operation, e.g., for operation of
tray etc.
4 apr 1996: 0.97 First implementation of layer between VFS and cdrom
driver, a generic interface. Much of the functionality
driver, a Uniform interface. Much of the functionality
of cm206_open() and cm206_ioctl() is transferred to a
new file cdrom.c and its header ucdrom.h.
new file cdrom.c and its header cdrom.h.
Upgrade to Linux kernel 1.3.78.
......@@ -140,8 +140,6 @@
#include <linux/malloc.h>
#include <linux/init.h>
#include <linux/ucdrom.h>
#include <asm/io.h>
#define MAJOR_NR CM206_CDROM_MAJOR
......@@ -152,7 +150,7 @@
#undef AUTO_PROBE_MODULE
#define USE_INSW
#include <linux/cm206.h>
#include "cm206.h"
/* This variable defines whether or not to probe for adapter base port
address and interrupt request. It can be overridden by the boot
......@@ -990,7 +988,7 @@ int cm206_media_changed(struct cdrom_device_info * cdi, int disc_nr)
else return -EIO;
}
/* The new generic cdrom support. Routines should be concise, most of
/* The new Uniform cdrom support. Routines should be concise, most of
the logic should be in cdrom.c */
/* returns number of times device is in use */
......@@ -1021,24 +1019,6 @@ int cm206_drive_status(struct cdrom_device_info * cdi, int slot_nr)
return CDS_DISC_OK;
}
/* gives current state of disc in drive */
int cm206_disc_status(struct cdrom_device_info * cdi)
{
uch xa;
get_drive_status();
if ((cd->dsb & dsb_not_useful) | !(cd->dsb & dsb_disc_present))
return CDS_NO_DISC;
get_disc_status();
if (DISC_STATUS & cds_all_audio) return CDS_AUDIO;
xa = DISC_STATUS >> 4;
switch (xa) {
case 0: return CDS_DATA_1; /* can we detect CDS_DATA_2? */
case 1: return CDS_XA_2_1; /* untested */
case 2: return CDS_XA_2_2;
}
return 0;
}
/* locks or unlocks door lock==1: lock; return 0 upon success */
int cm206_lock_door(struct cdrom_device_info * cdi, int lock)
{
......@@ -1049,7 +1029,7 @@ int cm206_lock_door(struct cdrom_device_info * cdi, int lock)
}
/* Although a session start should be in LBA format, we return it in
MSF format because it is slightly easier, and the new generic ioctl
MSF format because it is slightly easier, and the new Uniform ioctl
will take care of the necessary conversion. */
int cm206_get_last_session(struct cdrom_device_info * cdi,
struct cdrom_multisession * mssp)
......@@ -1123,7 +1103,6 @@ static struct cdrom_device_ops cm206_dops = {
cm206_open, /* open */
cm206_release, /* release */
cm206_drive_status, /* drive status */
cm206_disc_status, /* disc status */
cm206_media_changed, /* media changed */
cm206_tray_move, /* tray move */
cm206_lock_door, /* lock door */
......@@ -1150,7 +1129,8 @@ static struct cdrom_device_info cm206_info = {
1, /* number of discs */
0, /* options, not owned */
0, /* mc_flags, not owned */
0 /* use count, not owned */
0, /* use count, not owned */
"cm206" /* name of the device type */
};
/* This routine gets called during initialization if thing go wrong,
......@@ -1281,7 +1261,7 @@ __initfunc(int cm206_init(void))
cleanup(3);
return -EIO;
}
if (register_cdrom(&cm206_info, "cm206") != 0) {
if (register_cdrom(&cm206_info) != 0) {
printk("Cannot register for cdrom %d!\n", MAJOR_NR);
cleanup(3);
return -EIO;
......
......@@ -133,12 +133,6 @@
#define CM206CTL_GET_STAT _IO( 0x20, 0 )
#define CM206CTL_GET_LAST_STAT _IO( 0x20, 1 )
/* for kernel 1.2.n */
#if !defined(CDROM_GET_UPC)
#define CDROM_GET_UPC _IO( 'S', 0x11 )
#define CDROMRESET _IO( 'S', 0x12 )
#endif
#ifdef STATISTICS
/* This is an ugly way to guarantee that the names of the statistics
......
......@@ -64,7 +64,7 @@
#define MAJOR_NR GOLDSTAR_CDROM_MAJOR
#include <linux/blk.h>
#define gscd_port gscd /* for compatible parameter passing with "insmod" */
#include <linux/gscd.h>
#include "gscd.h"
static int gscdPresent = 0;
......@@ -1072,7 +1072,7 @@ int result;
static void gscd_hsg2msf (long hsg, struct msf *msf)
{
hsg += CD_BLOCK_OFFSET;
hsg += CD_MSF_OFFSET;
msf -> min = hsg / (CD_FRAMES*CD_SECS);
hsg %= CD_FRAMES*CD_SECS;
msf -> sec = hsg / CD_FRAMES;
......@@ -1100,7 +1100,7 @@ static long gscd_msf2hsg (struct msf *mp)
return gscd_bcd2bin(mp -> frame)
+ gscd_bcd2bin(mp -> sec) * CD_FRAMES
+ gscd_bcd2bin(mp -> min) * CD_FRAMES * CD_SECS
- CD_BLOCK_OFFSET;
- CD_MSF_OFFSET;
}
static int gscd_bcd2bin (unsigned char bcd)
......
......@@ -47,9 +47,9 @@
#include <linux/kernel.h>
#include <linux/string.h>
#include <linux/ioport.h>
#include <linux/isp16.h>
#include <linux/init.h>
#include <asm/io.h>
#include "isp16.h"
static short isp16_detect(void);
static short isp16_c928__detect(void);
......
This diff is collapsed.
......@@ -29,17 +29,29 @@
/* *** make the following line uncommented, if you're sure,
* *** all configuration is done */
/* #define I_WAS_HERE */
/* Increase this if you get lots of timeouts */
#define MCD_STATUS_DELAY 200
#define MCD_STATUS_DELAY 1000
/* number of times to retry a command before giving up */
#define MCD_RETRY_ATTEMPTS 5
#define MCD_RETRY_ATTEMPTS 10
/* port access macro */
#define MCDPORT(x) (mcd_port + (x))
/* How many sectors to read at 1x when an error at 2x speed occurs. */
/* You can change this to anything from 2 to 32767, but 30 seems to */
/* work best for me. I have found that when the drive has problems */
/* reading one sector, it will have troubles reading the next few. */
#define SINGLE_HOLD_SECTORS 30
#define MCMD_2X_READ 0xC1 /* Double Speed Read DON'T TOUCH! */
/* status bits */
#define MST_CMD_CHECK 0x01 /* command error */
......
This diff is collapsed.
......@@ -72,7 +72,7 @@
#include <linux/blk.h>
#include <linux/cdrom.h>
#include <linux/optcd.h>
#include "optcd.h"
#include <asm/uaccess.h>
......@@ -1838,7 +1838,7 @@ static int opt_ioctl(struct inode *ip, struct file *fp,
case CDROMMULTISESSION: retval = cdrommultisession(arg); break;
#endif
case CDROM_GET_UPC: retval = -EINVAL; break; /* not implemented */
case CDROM_GET_MCN: retval = -EINVAL; break; /* not implemented */
case CDROMVOLREAD: retval = -EINVAL; break; /* not implemented */
case CDROMREADRAW:
......
This diff is collapsed.
......@@ -73,7 +73,7 @@
#define MAJOR_NR SANYO_CDROM_MAJOR
#include <linux/blk.h>
#include <linux/sjcd.h>
#include "sjcd.h"
static int sjcd_present = 0;
......
......@@ -132,7 +132,7 @@
#define MAJOR_NR CDU535_CDROM_MAJOR
# include <linux/blk.h>
#define sony535_cd_base_io sonycd535 /* for compatible parameter passing with "insmod" */
#include <linux/sonycd535.h>
#include "sonycd535.h"
/*
* this is the base address of the interface card for the Sony CDU-535
......
......@@ -31,6 +31,10 @@ if [ "$CONFIG_SERIAL_NONSTANDARD" = "y" ]; then
tristate ' Stallion EC8/64, ONboard, Brumby support' CONFIG_ISTALLION
fi
tristate 'SDL RISCom/8 card support' CONFIG_RISCOM8
tristate 'Specialix IO8+ card support' CONFIG_SPECIALIX
if [ "$CONFIG_SPECIALIX" = "y" -o "$CONFIG_SPECIALIX" = "m" ]; then
bool 'Specialix DTR/RTS pin is RTS' CONFIG_SPECIALIX_RTSCTS
fi
tristate 'Hayes ESP serial port support' CONFIG_ESPSERIAL
if [ "$CONFIG_ESPSERIAL" = "y" -o "$CONFIG_ESPSERIAL" = "m" ]; then
int ' DMA channel' CONFIG_ESPSERIAL_DMA_CHANNEL 1
......
......@@ -123,6 +123,14 @@ else
endif
endif
ifeq ($(CONFIG_SPECIALIX),y)
L_OBJS += specialix.o
else
ifeq ($(CONFIG_SPECIALIX),m)
M_OBJS += specialix.o
endif
endif
ifeq ($(CONFIG_ATIXL_BUSMOUSE),y)
M = y
L_OBJS += atixlmouse.o
......
......@@ -54,6 +54,7 @@
static unsigned int remap=0;
static unsigned int vidmem=0;
static unsigned int tuner=0; /* Default tuner */
MODULE_PARM(tuner,"i");
static int find_vga(void);
static void bt848_set_risc_jmps(struct bttv *btv);
......@@ -603,7 +604,7 @@ static long bttv_read(struct video_device *v, char *buf, unsigned long count, in
}
interruptible_sleep_on(&btv->vbiq);
sti();
if(current->signal & ~current->blocked)
if(signal_pending(current))
{
if(todo==count)
return -EINTR;
......
This diff is collapsed.
......@@ -2339,7 +2339,7 @@ block_til_ready(struct tty_struct *tty, struct file * filp,
break;
}
restore_flags(flags);
if (current->signal & ~current->blocked) {
if (signal_pending(current)) {
retval = -ERESTARTSYS;
break;
}
......@@ -2397,7 +2397,7 @@ block_til_ready(struct tty_struct *tty, struct file * filp,
|| (cy_readl(&ch_ctrl[channel].rs_status) & C_RS_DCD))) {
break;
}
if (current->signal & ~current->blocked) {
if (signal_pending(current)) {
retval = -ERESTARTSYS;
break;
}
......
......@@ -17,7 +17,7 @@ choice 'Debugging output' \
"Normal CONFIG_FT_NORMAL_DEBUG \
Excessive CONFIG_FT_FULL_DEBUG \
Reduced CONFIG_FT_NO_TRACE \
None CONIFG_FT_NO_TRACE_AT_ALL" Normal
None CONFIG_FT_NO_TRACE_AT_ALL" Normal
comment 'Hardware configuration'
choice 'Floppy tape controllers' \
"Standard CONFIG_FT_STD_FDC \
......
......@@ -445,7 +445,7 @@ int fdc_interrupt_wait(unsigned int time)
fdc_reset();
resetting = 0;
}
TRACE_EXIT (current->signal & ~current->blocked) ? -EINTR : -ETIME;
TRACE_EXIT (signal_pending(current)) ? -EINTR : -ETIME;
}
/* Start/stop drive motor. Enable DMA mode.
......
......@@ -94,7 +94,7 @@ KERN_INFO "Compiled for Linux version %s"
#ifdef MODULE
while (ftape_set_nr_buffers(CONFIG_FT_NR_BUFFERS) < 0) {
ftape_sleep(FT_SECOND/20);
if (current->signal & ~current->blocked) {
if (signal_pending(current)) {
(void)ftape_set_nr_buffers(0);
TRACE(ft_t_bug,
"Killed by signal while allocating buffers.");
......
......@@ -103,7 +103,7 @@ void ftape_sleep(unsigned int time)
}
/* Mmm. Isn't current->blocked == 0xffffffff ?
*/
if (current->signal & ~current->blocked) {
if (signal_pending(current)) {
TRACE(ft_t_err,
"awoken by non-blocked signal :-(");
break; /* exit on signal */
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment