diff options
author | Ralf Baechle <ralf@linux-mips.org> | 1998-04-05 11:23:36 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 1998-04-05 11:23:36 +0000 |
commit | 4318fbda2a7ee51caafdc4eb1f8028a3f0605142 (patch) | |
tree | cddb50a81d7d1a628cc400519162080c6d87868e /include/asm-m68k | |
parent | 36ea5120664550fae6d31f1c6f695e4f8975cb06 (diff) |
o Merge with Linux 2.1.91.
o First round of bugfixes for the SC/MC CPUs.
o FPU context switch fixes.
o Lazy context switches.
o Faster syscalls.
o Removed dead code.
o Shitloads of other things I forgot ...
Diffstat (limited to 'include/asm-m68k')
-rw-r--r-- | include/asm-m68k/amifd.h | 14 | ||||
-rw-r--r-- | include/asm-m68k/ide.h | 2 | ||||
-rw-r--r-- | include/asm-m68k/setup.h | 2 | ||||
-rw-r--r-- | include/asm-m68k/signal.h | 13 | ||||
-rw-r--r-- | include/asm-m68k/unistd.h | 1 |
5 files changed, 22 insertions, 10 deletions
diff --git a/include/asm-m68k/amifd.h b/include/asm-m68k/amifd.h index 0c13747c3..ea21e69fd 100644 --- a/include/asm-m68k/amifd.h +++ b/include/asm-m68k/amifd.h @@ -5,21 +5,23 @@ #include <linux/fd.h> -#define FD_MAX_UNITS 4 +#define FD_MAX_UNITS 4 /* Max. Number of drives */ +#define FLOPPY_MAX_SECTORS 22 /* Max. Number of sectors per track */ + +#ifndef ASSEMBLER struct fd_data_type { char *name; /* description of data type */ int sects; /* sectors per track */ #ifdef __STDC__ - int (*read_fkt)(int, unsigned char *, unsigned long, int); - void (*write_fkt)(int, unsigned long, unsigned char *, int); + int (*read_fkt)(int); + void (*write_fkt)(int); #else int (*read_fkt)(); /* read whole track */ void (*write_fkt)(); /* write whole track */ #endif }; -#ifndef ASSEMBLER /* ** Floppy type descriptions */ @@ -43,13 +45,15 @@ struct amiga_floppy_struct { struct fd_drive_type *type; /* type of floppy for this unit */ struct fd_data_type *dtype; /* type of floppy for this unit */ int track; /* current track (-1 == unknown) */ + unsigned char *trackbuf; /* current track (kmaloc()'d */ int blocks; /* total # blocks on disk */ - int sects; /* number of sectors per track */ + int changed; /* true when not known */ int disk; /* disk in drive (-1 == unknown) */ int motor; /* true when motor is at speed */ int busy; /* true when drive is active */ + int dirty; /* true when trackbuf is not on disk */ int status; /* current error code for unit */ }; #endif diff --git a/include/asm-m68k/ide.h b/include/asm-m68k/ide.h index bf155740f..0a0222ac5 100644 --- a/include/asm-m68k/ide.h +++ b/include/asm-m68k/ide.h @@ -406,7 +406,7 @@ static __inline__ void ide_get_lock (int *ide_lock, void (*handler)(int, void *, #endif /* CONFIG_ATARI */ } -#define ide_ack_intr(hwif) (hwif)->ack_intr((hwif)) +#define ide_ack_intr(hwif) ((hwif)->ack_intr ? (hwif)->ack_intr(hwif) : 1) /* * On the Atari, we sometimes can't enable interrupts: diff --git a/include/asm-m68k/setup.h b/include/asm-m68k/setup.h index 0255ca97f..16cd23c12 100644 --- a/include/asm-m68k/setup.h +++ b/include/asm-m68k/setup.h @@ -131,7 +131,7 @@ extern u_long m68k_machtype; * * CPU_68020 == MMU_68851 * CPU_68030 == MMU_68030 - * CPU_68040 == FPU_68040 == MMU_68040 (not strictly, think of 68LC040!) + * CPU_68040 == FPU_68040 == MMU_68040 * CPU_68060 == FPU_68060 == MMU_68060 */ diff --git a/include/asm-m68k/signal.h b/include/asm-m68k/signal.h index 1f3466aff..5fa3fa67e 100644 --- a/include/asm-m68k/signal.h +++ b/include/asm-m68k/signal.h @@ -128,6 +128,13 @@ struct old_sigaction { void (*sa_restorer)(void); }; +struct sigaction { + __sighandler_t sa_handler; + unsigned long sa_flags; + void (*sa_restorer)(void); + sigset_t sa_mask; /* mask last for extensibility */ +}; + struct k_sigaction { struct sigaction sa; }; @@ -173,9 +180,9 @@ extern __inline__ int __const_sigismember(sigset_t *set, int _sig) extern __inline__ int __gen_sigismember(sigset_t *set, int _sig) { - char ret; - __asm__("bftst %1{%2,#1}\n\t sne %0" - : "=rm"(ret) : "m"(*set), "id"((_sig-1) ^ 31) : "cc"); + int ret; + __asm__("bfextu %1{%2,#1},%0" + : "=d"(ret) : "m"(*set), "id"((_sig-1) ^ 31)); return ret; } diff --git a/include/asm-m68k/unistd.h b/include/asm-m68k/unistd.h index 7c5226b95..f82743219 100644 --- a/include/asm-m68k/unistd.h +++ b/include/asm-m68k/unistd.h @@ -316,6 +316,7 @@ static inline _syscall3(int,open,const char *,file,int,flag,int,mode) static inline _syscall1(int,close,int,fd) static inline _syscall1(int,_exit,int,exitcode) static inline _syscall3(pid_t,waitpid,pid_t,pid,int *,wait_stat,int,options) +static inline _syscall1(int,delete_module,const char *,name) /* * This is the mechanism for creating a new kernel thread. |