You can subscribe to this list here.
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(165) |
Sep
(240) |
Oct
(424) |
Nov
(526) |
Dec
(293) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2002 |
Jan
(242) |
Feb
(149) |
Mar
(143) |
Apr
(143) |
May
(76) |
Jun
(59) |
Jul
(20) |
Aug
(2) |
Sep
(49) |
Oct
(1) |
Nov
(4) |
Dec
|
| 2003 |
Jan
(1) |
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2004 |
Jan
|
Feb
|
Mar
|
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(3) |
Nov
|
Dec
|
| 2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
(72) |
Jul
(36) |
Aug
(9) |
Sep
(16) |
Oct
(23) |
Nov
(9) |
Dec
(3) |
| 2010 |
Jan
|
Feb
(1) |
Mar
(35) |
Apr
(44) |
May
(56) |
Jun
(71) |
Jul
(41) |
Aug
(41) |
Sep
(22) |
Oct
(3) |
Nov
(1) |
Dec
(1) |
| 2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2012 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
| 2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2014 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
(1) |
Nov
(1) |
Dec
|
| 2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2017 |
Jan
|
Feb
|
Mar
(1) |
Apr
(1) |
May
(1) |
Jun
|
Jul
(1) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
| 2021 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(1) |
Sep
(25) |
Oct
(105) |
Nov
(15) |
Dec
|
| 2025 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
(4) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:20:11
|
Update of /cvsroot/linux-mips/linux/arch/mips64 In directory usw-pr-cvs1:/tmp/cvs-serv13849/arch/mips64 Modified Files: defconfig Log Message: Synced to 2.4.10. Index: defconfig =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips64/defconfig,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- defconfig 2001/09/04 16:01:40 1.6 +++ defconfig 2001/10/19 21:19:38 1.7 @@ -99,6 +99,7 @@ # CONFIG_MD_RAID0 is not set # CONFIG_MD_RAID1 is not set # CONFIG_MD_RAID5 is not set +# CONFIG_MD_MULTIPATH is not set # CONFIG_BLK_DEV_LVM is not set # @@ -143,6 +144,7 @@ # # CONFIG_PHONE is not set # CONFIG_PHONE_IXJ is not set +# CONFIG_PHONE_IXJ_PCMCIA is not set # # ATA/IDE/MFM/RLL support @@ -185,6 +187,7 @@ # CONFIG_SCSI_AHA1740 is not set # CONFIG_SCSI_AIC7XXX is not set # CONFIG_SCSI_AIC7XXX_OLD is not set +# CONFIG_SCSI_DPT_I2O is not set # CONFIG_SCSI_ADVANSYS is not set # CONFIG_SCSI_IN2000 is not set # CONFIG_SCSI_AM53C974 is not set @@ -202,6 +205,7 @@ # CONFIG_SCSI_INITIO is not set # CONFIG_SCSI_INIA100 is not set # CONFIG_SCSI_NCR53C406A is not set +# CONFIG_SCSI_NCR_D700 is not set # CONFIG_SCSI_NCR53C7xx is not set # CONFIG_SCSI_NCR53C8XX is not set # CONFIG_SCSI_SYM53C8XX is not set @@ -247,7 +251,6 @@ # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y -# CONFIG_ARM_AM79C961A is not set CONFIG_SGI_IOC3_ETH=y # CONFIG_SUNLANCE is not set # CONFIG_HAPPYMEAL is not set @@ -268,9 +271,9 @@ # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set -# CONFIG_ACENIC_OMIT_TIGON_I is not set # CONFIG_DL2K is not set # CONFIG_MYRI_SBUS is not set +# CONFIG_NS83820 is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_SK98LIN is not set @@ -340,9 +343,13 @@ # # Joysticks # -# CONFIG_JOYSTICK is not set +# CONFIG_INPUT_GAMEPORT is not set # +# Input core support is needed for gameports +# + +# # Input core support is needed for joysticks # # CONFIG_QIC02_TAPE is not set @@ -473,6 +480,10 @@ # Input core support # # CONFIG_INPUT is not set +# CONFIG_INPUT_KEYBDEV is not set +# CONFIG_INPUT_MOUSEDEV is not set +# CONFIG_INPUT_JOYDEV is not set +# CONFIG_INPUT_EVDEV is not set # # Kernel hacking |
|
From: James S. <jsi...@us...> - 2001-10-19 21:20:11
|
Update of /cvsroot/linux-mips/linux/arch/mips/kernel In directory usw-pr-cvs1:/tmp/cvs-serv13849/arch/mips/kernel Modified Files: process.c signal.c Removed Files: ptrace.c Log Message: Synced to 2.4.10. Index: process.c =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/kernel/process.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- process.c 2001/10/05 17:10:56 1.3 +++ process.c 2001/10/19 21:19:38 1.4 @@ -13,6 +13,7 @@ #include <linux/mm.h> #include <linux/stddef.h> #include <linux/unistd.h> +#include <linux/personality.h> #include <linux/ptrace.h> #include <linux/slab.h> #include <linux/mman.h> Index: signal.c =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/kernel/signal.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- signal.c 2001/10/11 22:11:37 1.1 +++ signal.c 2001/10/19 21:19:38 1.2 @@ -13,6 +13,7 @@ #include <linux/smp.h> #include <linux/smp_lock.h> #include <linux/kernel.h> +#include <linux/personality.h> #include <linux/signal.h> #include <linux/errno.h> #include <linux/wait.h> --- ptrace.c DELETED --- |
|
From: James S. <jsi...@us...> - 2001-10-19 21:20:10
|
Update of /cvsroot/linux-mips/linux/arch/mips/mips-boards/generic
In directory usw-pr-cvs1:/tmp/cvs-serv13849/arch/mips/mips-boards/generic
Modified Files:
time.c
Log Message:
Synced to 2.4.10.
Index: time.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/arch/mips/mips-boards/generic/time.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- time.c 2001/10/15 22:57:28 1.4
+++ time.c 2001/10/19 21:19:38 1.5
@@ -32,8 +32,10 @@
#include <asm/mipsregs.h>
#include <asm/ptrace.h>
+#include <asm/hardirq.h>
#include <asm/div64.h>
+#include <linux/interrupt.h>
#include <linux/mc146818rtc.h>
#include <linux/timex.h>
@@ -156,12 +158,13 @@
if ((time_status & STA_UNSYNC) == 0
&& xtime.tv_sec > last_rtc_update + 660
&& xtime.tv_usec >= 500000 - (tick >> 1)
- && xtime.tv_usec <= 500000 + (tick >> 1))
+ && xtime.tv_usec <= 500000 + (tick >> 1)) {
if (set_rtc_mmss(xtime.tv_sec) == 0)
last_rtc_update = xtime.tv_sec;
else
/* do it again in 60 s */
last_rtc_update = xtime.tv_sec - 600;
+ }
read_unlock(&xtime_lock);
if ((timer_tick_count++ % HZ) == 0) {
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:20:10
|
Update of /cvsroot/linux-mips/linux/arch/mips In directory usw-pr-cvs1:/tmp/cvs-serv13849/arch/mips Modified Files: defconfig Log Message: Synced to 2.4.10. Index: defconfig =================================================================== RCS file: /cvsroot/linux-mips/linux/arch/mips/defconfig,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- defconfig 2001/10/11 22:02:46 1.10 +++ defconfig 2001/10/19 21:19:37 1.11 @@ -15,6 +15,7 @@ # CONFIG_ACER_PICA_61 is not set # CONFIG_ALGOR_P4032 is not set # CONFIG_BAGET_MIPS is not set +# CONFIG_COBALT_MICRO_SERVER is not set # CONFIG_DECSTATION is not set # CONFIG_DDB5074 is not set # CONFIG_MIPS_EV96100 is not set @@ -22,11 +23,14 @@ # CONFIG_MIPS_ATLAS is not set # CONFIG_MIPS_MALTA is not set # CONFIG_NINO is not set +# CONFIG_PS2 is not set # CONFIG_MIPS_MAGNUM_4000 is not set # CONFIG_MOMENCO_OCELOT is not set # CONFIG_DDB5476 is not set # CONFIG_DDB5477 is not set # CONFIG_NEC_OSPREY is not set +# CONFIG_NEC_EAGLE is not set +# CONFIG_NEC_KORVA is not set # CONFIG_OLIVETTI_M700 is not set CONFIG_SGI_IP22=y # CONFIG_SNI_RM200_PCI is not set @@ -65,6 +69,7 @@ # CONFIG_CPU_R4X00 is not set CONFIG_CPU_R5000=y # CONFIG_CPU_R5432 is not set +# CONFIG_CPU_R5900 is not set # CONFIG_CPU_RM7000 is not set # CONFIG_CPU_NEVADA is not set # CONFIG_CPU_R10000 is not set @@ -128,6 +133,7 @@ # CONFIG_MD_RAID0 is not set # CONFIG_MD_RAID1 is not set # CONFIG_MD_RAID5 is not set +# CONFIG_MD_MULTIPATH is not set # CONFIG_BLK_DEV_LVM is not set # @@ -184,6 +190,7 @@ # # CONFIG_PHONE is not set # CONFIG_PHONE_IXJ is not set +# CONFIG_PHONE_IXJ_PCMCIA is not set # # SCSI support @@ -221,6 +228,7 @@ # CONFIG_SCSI_AHA1740 is not set # CONFIG_SCSI_AIC7XXX is not set # CONFIG_SCSI_AIC7XXX_OLD is not set +# CONFIG_SCSI_DPT_I2O is not set # CONFIG_SCSI_ADVANSYS is not set # CONFIG_SCSI_IN2000 is not set # CONFIG_SCSI_AM53C974 is not set @@ -237,6 +245,7 @@ # CONFIG_SCSI_INITIO is not set # CONFIG_SCSI_INIA100 is not set # CONFIG_SCSI_NCR53C406A is not set +# CONFIG_SCSI_NCR_D700 is not set # CONFIG_SCSI_NCR53C7xx is not set # CONFIG_SCSI_PAS16 is not set # CONFIG_SCSI_PCI2000 is not set @@ -268,7 +277,6 @@ # Ethernet (10 or 100Mbit) # CONFIG_NET_ETHERNET=y -# CONFIG_ARM_AM79C961A is not set # CONFIG_SUNLANCE is not set # CONFIG_SUNBMAC is not set # CONFIG_SUNQE is not set @@ -287,9 +295,9 @@ # Ethernet (1000 Mbit) # # CONFIG_ACENIC is not set -# CONFIG_ACENIC_OMIT_TIGON_I is not set # CONFIG_DL2K is not set # CONFIG_MYRI_SBUS is not set +# CONFIG_NS83820 is not set # CONFIG_HAMACHI is not set # CONFIG_YELLOWFIN is not set # CONFIG_SK98LIN is not set @@ -365,7 +373,11 @@ # # Joysticks # -# CONFIG_JOYSTICK is not set +# CONFIG_INPUT_GAMEPORT is not set + +# +# Input core support is needed for gameports +# # # Input core support is needed for joysticks @@ -421,6 +433,7 @@ # CONFIG_VFAT_FS is not set # CONFIG_EFS_FS is not set # CONFIG_JFFS_FS is not set +# CONFIG_JFFS2_FS is not set # CONFIG_CRAMFS is not set # CONFIG_TMPFS is not set # CONFIG_RAMFS is not set @@ -522,6 +535,10 @@ # Input core support # # CONFIG_INPUT is not set +# CONFIG_INPUT_KEYBDEV is not set +# CONFIG_INPUT_MOUSEDEV is not set +# CONFIG_INPUT_JOYDEV is not set +# CONFIG_INPUT_EVDEV is not set # # Kernel hacking |
|
From: James S. <jsi...@us...> - 2001-10-19 21:20:10
|
Update of /cvsroot/linux-mips/linux
In directory usw-pr-cvs1:/tmp/cvs-serv13849
Modified Files:
Makefile
Log Message:
Synced to 2.4.10.
Index: Makefile
===================================================================
RCS file: /cvsroot/linux-mips/linux/Makefile,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- Makefile 2001/09/25 03:36:35 1.5
+++ Makefile 2001/10/19 21:19:37 1.6
@@ -1,6 +1,6 @@
VERSION = 2
PATCHLEVEL = 4
-SUBLEVEL = 9
+SUBLEVEL = 10
EXTRAVERSION = -mips
KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
@@ -146,6 +146,7 @@
DRIVERS-$(CONFIG_ARCNET) += drivers/net/arcnet/arcnetdrv.o
DRIVERS-$(CONFIG_ATM) += drivers/atm/atm.o
DRIVERS-$(CONFIG_IDE) += drivers/ide/idedriver.o
+DRIVERS-$(CONFIG_FC4) += drivers/fc4/fc4.a
DRIVERS-$(CONFIG_SCSI) += drivers/scsi/scsidrv.o
DRIVERS-$(CONFIG_FUSION_BOOT) += drivers/message/fusion/fusion.o
DRIVERS-$(CONFIG_IEEE1394) += drivers/ieee1394/ieee1394drv.o
@@ -197,6 +198,11 @@
drivers/zorro/devlist.h drivers/zorro/gen-devlist \
drivers/sound/bin2hex drivers/sound/hex2hex \
drivers/atm/fore200e_mkfirm drivers/atm/{pca,sba}*{.bin,.bin1,.bin2} \
+ drivers/scsi/aic7xxx/aicasm/aicasm_gram.c \
+ drivers/scsi/aic7xxx/aicasm/aicasm_scan.c \
+ drivers/scsi/aic7xxx/aicasm/y.tab.h \
+ drivers/scsi/aic7xxx/aicasm/aicasm \
+ drivers/scsi/53c700-mem.c \
net/khttpd/make_times_h \
net/khttpd/times.h \
submenu*
@@ -223,7 +229,9 @@
.menuconfig.log \
include/asm \
.hdepend scripts/mkdep scripts/split-include scripts/docproc \
- $(TOPDIR)/include/linux/modversions.h
+ $(TOPDIR)/include/linux/modversions.h \
+ kernel.spec
+
# directories removed with 'make mrproper'
MRPROPER_DIRS = \
include/config \
@@ -247,7 +255,7 @@
boot: vmlinux
@$(MAKE) CFLAGS="$(CFLAGS) $(CFLAGS_KERNEL)" -C arch/$(ARCH)/boot
-vmlinux: $(CONFIGURATION) init/main.o init/version.o linuxsubdirs
+vmlinux: include/linux/version.h $(CONFIGURATION) init/main.o init/version.o linuxsubdirs
$(LD) $(LINKFLAGS) $(HEAD) init/main.o init/version.o \
--start-group \
$(CORE_FILES) \
@@ -292,11 +300,7 @@
$(TOPDIR)/include/linux/compile.h: include/linux/compile.h
newversion:
- @if [ ! -f .version ]; then \
- echo 1 > .version; \
- else \
- expr 0`cat .version` + 1 > .version; \
- fi
+ . scripts/mkversion > .version
include/linux/compile.h: $(CONFIGURATION) include/linux/version.h newversion
@echo -n \#define UTS_VERSION \"\#`cat .version` > .ver
@@ -418,10 +422,11 @@
$(MAKE) -C Documentation/DocBook mrproper
distclean: mrproper
- find . -type f \( -name core -o -name '*.orig' -o -name '*.rej' \
+ find . \( -not -type d \) -and \
+ \( -name core -o -name '*.orig' -o -name '*.rej' \
-o -name '*~' -o -name '*.bak' -o -name '#*#' \
- -o -name '.*.orig' -o -name '.*.rej' -o -name '.SUMS' \
- -o -size 0 -o -name TAGS -o -name tags \) -print | env -i xargs rm -f
+ -o -name '.*.rej' -o -name '.SUMS' -o -size 0 \
+ -o -name TAGS -o -name tags \) -print | env -i xargs rm -f
backup: mrproper
cd .. && tar cf - linux/ | gzip -9 > backup.gz
@@ -502,3 +507,30 @@
scripts/split-include: scripts/split-include.c
$(HOSTCC) $(HOSTCFLAGS) -o scripts/split-include scripts/split-include.c
+
+#
+# RPM target
+#
+# If you do a make spec before packing the tarball you can rpm -ta it
+#
+spec:
+ . scripts/mkspec >kernel.spec
+
+#
+# Build a tar ball, generate an rpm from it and pack the result
+# There arw two bits of magic here
+# 1) The use of /. to avoid tar packing just the symlink
+# 2) Removing the .dep files as they have source paths in them that
+# will become invalid
+#
+rpm: clean spec
+ find . \( -size 0 -o -name .depend -o -name .hdepend \) -type f -print | xargs rm -f
+ set -e; \
+ cd $(TOPDIR)/.. ; \
+ ln -sf $(TOPDIR) $(KERNELPATH) ; \
+ tar -cvz --exclude CVS -f $(KERNELPATH).tar.gz $(KERNELPATH)/. ; \
+ rm $(KERNELPATH) ; \
+ cd $(TOPDIR) ; \
+ . scripts/mkversion > .version ; \
+ rpm -ta $(TOPDIR)/../$(KERNELPATH).tar.gz ; \
+ rm $(TOPDIR)/../$(KERNELPATH).tar.gz
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:44
|
Update of /cvsroot/linux-mips/linux/kernel
In directory usw-pr-cvs1:/tmp/cvs-serv13849/kernel
Modified Files:
exit.c printk.c sched.c signal.c sys.c
Log Message:
Synced to 2.4.10.
Index: exit.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/kernel/exit.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- exit.c 2001/09/25 03:36:36 1.6
+++ exit.c 2001/10/19 21:19:40 1.7
@@ -10,6 +10,7 @@
#include <linux/smp_lock.h>
#include <linux/module.h>
#include <linux/completion.h>
+#include <linux/personality.h>
#include <linux/tty.h>
#ifdef CONFIG_BSD_PROCESS_ACCT
#include <linux/acct.h>
Index: printk.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/kernel/printk.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- printk.c 2001/09/04 11:25:25 1.5
+++ printk.c 2001/10/19 21:19:40 1.6
@@ -12,6 +12,8 @@
* Modified for sysctl support, 1/8/97, Chris Horn.
* Fixed SMP synchronization, 08/08/99, Manfred Spraul
* man...@co...
+ * Rewrote bits to get rid of console_lock
+ * 01Mar01 Andrew Morton <an...@uo...>
*/
#include <linux/mm.h>
@@ -20,14 +22,14 @@
#include <linux/smp_lock.h>
#include <linux/console.h>
#include <linux/init.h>
+#include <linux/module.h>
+#include <linux/interrupt.h> /* For in_interrupt() */
#include <asm/uaccess.h>
-#define LOG_BUF_LEN (16384)
+#define LOG_BUF_LEN (16384) /* This must be a power of two */
#define LOG_BUF_MASK (LOG_BUF_LEN-1)
-static char buf[1024];
-
/* printk's without a loglevel use this.. */
#define DEFAULT_MESSAGE_LOGLEVEL 4 /* KERN_WARNING */
@@ -35,7 +37,6 @@
#define MINIMUM_CONSOLE_LOGLEVEL 1 /* Minimum loglevel we let people use */
#define DEFAULT_CONSOLE_LOGLEVEL 7 /* anything MORE serious than KERN_DEBUG */
-unsigned long log_size;
DECLARE_WAIT_QUEUE_HEAD(log_wait);
/* Keep together for sysctl support */
@@ -44,15 +45,41 @@
int minimum_console_loglevel = MINIMUM_CONSOLE_LOGLEVEL;
int default_console_loglevel = DEFAULT_CONSOLE_LOGLEVEL;
-spinlock_t console_lock = SPIN_LOCK_UNLOCKED;
+int oops_in_progress;
+/*
+ * console_sem protects the console_drivers list, and also
+ * provides serialisation for access to the entire console
+ * driver system.
+ */
+static DECLARE_MUTEX(console_sem);
struct console *console_drivers;
+
+/*
+ * logbuf_lock protects log_buf, log_start, log_end, con_start and logged_chars
+ * It is also used in interesting ways to provide interlocking in
+ * release_console_sem().
+ */
+static spinlock_t logbuf_lock = SPIN_LOCK_UNLOCKED;
+
static char log_buf[LOG_BUF_LEN];
-static unsigned long log_start;
-static unsigned long logged_chars;
+#define LOG_BUF(idx) (log_buf[(idx) & LOG_BUF_MASK])
+
+/*
+ * The indices into log_buf are not constrained to LOG_BUF_LEN - they
+ * must be masked before subscripting
+ */
+static unsigned long log_start; /* Index into log_buf: next char to be read by syslog() */
+static unsigned long con_start; /* Index into log_buf: next char to be sent to consoles */
+static unsigned long log_end; /* Index into log_buf: most-recently-written-char + 1 */
+static unsigned long logged_chars; /* Number of chars produced since last read+clear operation */
+
struct console_cmdline console_cmdline[MAX_CMDLINECONSOLES];
static int preferred_console = -1;
+/* Flag: console code may call schedule() */
+static int console_may_schedule;
+
/*
* Setup a list of consoles. Called from init/main.c
*/
@@ -120,6 +147,7 @@
* 6 -- Disable printk's to console
* 7 -- Enable printk's to console
* 8 -- Set level of messages printed to console
+ * 9 -- Return number of unread characters in the log buffer
*/
int do_syslog(int type, char * buf, int len)
{
@@ -143,22 +171,21 @@
error = verify_area(VERIFY_WRITE,buf,len);
if (error)
goto out;
- error = wait_event_interruptible(log_wait, log_size);
+ error = wait_event_interruptible(log_wait, (log_start - log_end));
if (error)
goto out;
i = 0;
- spin_lock_irq(&console_lock);
- while (log_size && i < len) {
- c = log_buf[log_start & LOG_BUF_MASK];
+ spin_lock_irq(&logbuf_lock);
+ while ((log_start != log_end) && i < len) {
+ c = LOG_BUF(log_start);
log_start++;
- log_size--;
- spin_unlock_irq(&console_lock);
+ spin_unlock_irq(&logbuf_lock);
__put_user(c,buf);
buf++;
i++;
- spin_lock_irq(&console_lock);
+ spin_lock_irq(&logbuf_lock);
}
- spin_unlock_irq(&console_lock);
+ spin_unlock_irq(&logbuf_lock);
error = i;
break;
case 4: /* Read/clear last kernel messages */
@@ -177,12 +204,12 @@
count = len;
if (count > LOG_BUF_LEN)
count = LOG_BUF_LEN;
- spin_lock_irq(&console_lock);
+ spin_lock_irq(&logbuf_lock);
if (count > logged_chars)
count = logged_chars;
if (do_clear)
logged_chars = 0;
- limit = log_start + log_size;
+ limit = log_end;
/*
* __put_user() could sleep, and while we sleep
* printk() could overwrite the messages
@@ -191,14 +218,14 @@
*/
for(i=0;i < count;i++) {
j = limit-1-i;
- if (j+LOG_BUF_LEN < log_start+log_size)
+ if (j+LOG_BUF_LEN < log_end)
break;
- c = log_buf[ j & LOG_BUF_MASK ];
- spin_unlock_irq(&console_lock);
+ c = LOG_BUF(j);
+ spin_unlock_irq(&logbuf_lock);
__put_user(c,&buf[count-1-i]);
- spin_lock_irq(&console_lock);
+ spin_lock_irq(&logbuf_lock);
}
- spin_unlock_irq(&console_lock);
+ spin_unlock_irq(&logbuf_lock);
error = i;
if(i != count) {
int offset = count-error;
@@ -211,31 +238,36 @@
break;
case 5: /* Clear ring buffer */
- spin_lock_irq(&console_lock);
+ spin_lock_irq(&logbuf_lock);
logged_chars = 0;
- spin_unlock_irq(&console_lock);
+ spin_unlock_irq(&logbuf_lock);
break;
case 6: /* Disable logging to console */
- spin_lock_irq(&console_lock);
+ spin_lock_irq(&logbuf_lock);
console_loglevel = minimum_console_loglevel;
- spin_unlock_irq(&console_lock);
+ spin_unlock_irq(&logbuf_lock);
break;
case 7: /* Enable logging to console */
- spin_lock_irq(&console_lock);
+ spin_lock_irq(&logbuf_lock);
console_loglevel = default_console_loglevel;
- spin_unlock_irq(&console_lock);
+ spin_unlock_irq(&logbuf_lock);
break;
- case 8:
+ case 8: /* Set level of messages printed to console */
error = -EINVAL;
if (len < 1 || len > 8)
goto out;
if (len < minimum_console_loglevel)
len = minimum_console_loglevel;
- spin_lock_irq(&console_lock);
+ spin_lock_irq(&logbuf_lock);
console_loglevel = len;
- spin_unlock_irq(&console_lock);
+ spin_unlock_irq(&logbuf_lock);
error = 0;
break;
+ case 9: /* Number of chars in the log buffer */
+ spin_lock_irq(&logbuf_lock);
+ error = log_end - log_start;
+ spin_unlock_irq(&logbuf_lock);
+ break;
default:
error = -EINVAL;
break;
@@ -251,98 +283,250 @@
return do_syslog(type, buf, len);
}
-asmlinkage int printk(const char *fmt, ...)
+/*
+ * Call the console drivers on a range of log_buf
+ */
+static void __call_console_drivers(unsigned long start, unsigned long end)
{
- va_list args;
- int i;
- char *msg, *p, *buf_end;
- int line_feed;
- static signed char msg_level = -1;
- long flags;
+ struct console *con;
- spin_lock_irqsave(&console_lock, flags);
- va_start(args, fmt);
- i = vsprintf(buf + 3, fmt, args); /* hopefully i < sizeof(buf)-4 */
- buf_end = buf + 3 + i;
- va_end(args);
- for (p = buf + 3; p < buf_end; p++) {
- msg = p;
- if (msg_level < 0) {
- if (
- p[0] != '<' ||
- p[1] < '0' ||
- p[1] > '7' ||
- p[2] != '>'
- ) {
- p -= 3;
- p[0] = '<';
- p[1] = default_message_loglevel + '0';
- p[2] = '>';
- } else
- msg += 3;
- msg_level = p[1] - '0';
+ for (con = console_drivers; con; con = con->next) {
+ if ((con->flags & CON_ENABLED) && con->write)
+ con->write(con, &LOG_BUF(start), end - start);
+ }
+}
+
+/*
+ * Write out chars from start to end - 1 inclusive
+ */
+static void _call_console_drivers(unsigned long start, unsigned long end, int msg_log_level)
+{
+ if (msg_log_level < console_loglevel && console_drivers && start != end) {
+ if ((start & LOG_BUF_MASK) > (end & LOG_BUF_MASK)) {
+ /* wrapped write */
+ __call_console_drivers(start & LOG_BUF_MASK, LOG_BUF_LEN);
+ __call_console_drivers(0, end & LOG_BUF_MASK);
+ } else {
+ __call_console_drivers(start, end);
}
- line_feed = 0;
- for (; p < buf_end; p++) {
- log_buf[(log_start+log_size) & LOG_BUF_MASK] = *p;
- if (log_size < LOG_BUF_LEN)
- log_size++;
- else
- log_start++;
+ }
+}
- logged_chars++;
- if (*p == '\n') {
- line_feed = 1;
+/*
+ * Call the console drivers, asking them to write out
+ * log_buf[start] to log_buf[end - 1].
+ * The console_sem must be held.
+ */
+static void call_console_drivers(unsigned long start, unsigned long end)
+{
+ unsigned long cur_index, start_print;
+ static int msg_level = -1;
+
+ if (((long)(start - end)) > 0)
+ BUG();
+
+ cur_index = start;
+ start_print = start;
+ while (cur_index != end) {
+ if ( msg_level < 0 &&
+ ((end - cur_index) > 2) &&
+ LOG_BUF(cur_index + 0) == '<' &&
+ LOG_BUF(cur_index + 1) >= '0' &&
+ LOG_BUF(cur_index + 1) <= '7' &&
+ LOG_BUF(cur_index + 2) == '>')
+ {
+ msg_level = LOG_BUF(cur_index + 1) - '0';
+ cur_index += 3;
+ start_print = cur_index;
+ }
+ while (cur_index != end) {
+ char c = LOG_BUF(cur_index);
+ cur_index++;
+
+ if (c == '\n') {
+ if (msg_level < 0) {
+ /*
+ * printk() has already given us loglevel tags in
+ * the buffer. This code is here in case the
+ * log buffer has wrapped right round and scribbled
+ * on those tags
+ */
+ msg_level = default_message_loglevel;
+ }
+ _call_console_drivers(start_print, cur_index, msg_level);
+ msg_level = -1;
+ start_print = cur_index;
break;
}
}
- if (msg_level < console_loglevel && console_drivers) {
- struct console *c = console_drivers;
- while(c) {
- if ((c->flags & CON_ENABLED) && c->write)
- c->write(c, msg, p - msg + line_feed);
- c = c->next;
+ }
+ _call_console_drivers(start_print, end, msg_level);
+}
+
+static void emit_log_char(char c)
+{
+ LOG_BUF(log_end) = c;
+ log_end++;
+ if (log_end - log_start > LOG_BUF_LEN)
+ log_start = log_end - LOG_BUF_LEN;
+ if (log_end - con_start > LOG_BUF_LEN)
+ con_start = log_end - LOG_BUF_LEN;
+ if (logged_chars < LOG_BUF_LEN)
+ logged_chars++;
+}
+
+/*
+ * This is printk. It can be called from any context. We want it to work.
+ *
+ * We try to grab the console_sem. If we succeed, it's easy - we log the output and
+ * call the console drivers. If we fail to get the semaphore we place the output
+ * into the log buffer and return. The current holder of the console_sem will
+ * notice the new output in release_console_sem() and will send it to the
+ * consoles before releasing the semaphore.
+ *
+ * One effect of this deferred printing is that code which calls printk() and
+ * then changes console_loglevel may break. This is because console_loglevel
+ * is inspected when the actual printing occurs.
+ */
+asmlinkage int printk(const char *fmt, ...)
+{
+ va_list args;
+ unsigned long flags;
+ int printed_len;
+ char *p;
+ static char printk_buf[1024];
+ static int log_level_unknown = 1;
+
+ if (oops_in_progress) {
+ /* If a crash is occurring, make sure we can't deadlock */
+ spin_lock_init(&logbuf_lock);
+ /* And make sure that we print immediately */
+ init_MUTEX(&console_sem);
+ }
+
+ /* This stops the holder of console_sem just where we want him */
+ spin_lock_irqsave(&logbuf_lock, flags);
+
+ /* Emit the output into the temporary buffer */
+ va_start(args, fmt);
+ printed_len = vsnprintf(printk_buf, sizeof(printk_buf), fmt, args);
+ va_end(args);
+
+ /*
+ * Copy the output into log_buf. If the caller didn't provide
+ * appropriate log level tags, we insert them here
+ */
+ for (p = printk_buf; *p; p++) {
+ if (log_level_unknown) {
+ if (p[0] != '<' || p[1] < '0' || p[1] > '7' || p[2] != '>') {
+ emit_log_char('<');
+ emit_log_char(default_message_loglevel + '0');
+ emit_log_char('>');
}
+ log_level_unknown = 0;
}
- if (line_feed)
- msg_level = -1;
+ emit_log_char(*p);
+ if (*p == '\n')
+ log_level_unknown = 1;
}
- spin_unlock_irqrestore(&console_lock, flags);
- wake_up_interruptible(&log_wait);
- return i;
+
+ if (!down_trylock(&console_sem)) {
+ /*
+ * We own the drivers. We can drop the spinlock and let
+ * release_console_sem() print the text
+ */
+ spin_unlock_irqrestore(&logbuf_lock, flags);
+ console_may_schedule = 0;
+ release_console_sem();
+ } else {
+ /*
+ * Someone else owns the drivers. We drop the spinlock, which
+ * allows the semaphore holder to proceed and to call the
+ * console drivers with the output which we just produced.
+ */
+ spin_unlock_irqrestore(&logbuf_lock, flags);
+ }
+ return printed_len;
}
+EXPORT_SYMBOL(printk);
-void console_print(const char *s)
+/**
+ * acquire_console_sem - lock the console system for exclusive use.
+ *
+ * Acquires a semaphore which guarantees that the caller has
+ * exclusive access to the console system and the console_drivers list.
+ *
+ * Can sleep, returns nothing.
+ */
+void acquire_console_sem(void)
{
- struct console *c;
+ if (in_interrupt())
+ BUG();
+ down(&console_sem);
+ console_may_schedule = 1;
+}
+EXPORT_SYMBOL(acquire_console_sem);
+
+/**
+ * release_console_sem - unlock the console system
+ *
+ * Releases the semaphore which the caller holds on the console system
+ * and the console driver list.
+ *
+ * While the semaphore was held, console output may have been buffered
+ * by printk(). If this is the case, release_console_sem() emits
+ * the output prior to releasing the semaphore.
+ *
+ * If there is output waiting for klogd, we wake it up.
+ *
+ * release_console_sem() may be called from any context.
+ */
+void release_console_sem(void)
+{
unsigned long flags;
- int len = strlen(s);
+ unsigned long _con_start, _log_end;
+ unsigned long must_wake_klogd = 0;
- spin_lock_irqsave(&console_lock, flags);
- c = console_drivers;
- while(c) {
- if ((c->flags & CON_ENABLED) && c->write)
- c->write(c, s, len);
- c = c->next;
+ for ( ; ; ) {
+ spin_lock_irqsave(&logbuf_lock, flags);
+ must_wake_klogd |= log_start - log_end;
+ if (con_start == log_end)
+ break; /* Nothing to print */
+ _con_start = con_start;
+ _log_end = log_end;
+ con_start = log_end; /* Flush */
+ spin_unlock_irqrestore(&logbuf_lock, flags);
+ call_console_drivers(_con_start, _log_end);
}
- spin_unlock_irqrestore(&console_lock, flags);
+ console_may_schedule = 0;
+ up(&console_sem);
+ spin_unlock_irqrestore(&logbuf_lock, flags);
+ if (must_wake_klogd && !oops_in_progress)
+ wake_up_interruptible(&log_wait);
}
-void unblank_console(void)
+/** console_conditional_schedule - yield the CPU if required
+ *
+ * If the console code is currently allowed to sleep, and
+ * if this CPU should yield the CPU to another task, do
+ * so here.
+ *
+ * Must be called within acquire_console_sem().
+ */
+void console_conditional_schedule(void)
{
- struct console *c;
- unsigned long flags;
-
- spin_lock_irqsave(&console_lock, flags);
- c = console_drivers;
- while(c) {
- if ((c->flags & CON_ENABLED) && c->unblank)
- c->unblank();
- c = c->next;
+ if (console_may_schedule && current->need_resched) {
+ set_current_state(TASK_RUNNING);
+ schedule();
}
- spin_unlock_irqrestore(&console_lock, flags);
}
+void console_print(const char *s)
+{
+ printk(KERN_EMERG "%s", s);
+}
+EXPORT_SYMBOL(console_print);
+
/*
* The console driver calls this routine during kernel initialization
* to register the console printing procedure with printk() and to
@@ -351,11 +535,7 @@
*/
void register_console(struct console * console)
{
- int i, j,len;
- int p;
- char buf[16];
- signed char msg_level = -1;
- char *q;
+ int i;
unsigned long flags;
/*
@@ -402,7 +582,7 @@
* Put this console in the list - keep the
* preferred driver at the head of the list.
*/
- spin_lock_irqsave(&console_lock, flags);
+ acquire_console_sem();
if ((console->flags & CON_CONSDEV) || console_drivers == NULL) {
console->next = console_drivers;
console_drivers = console;
@@ -410,57 +590,28 @@
console->next = console_drivers->next;
console_drivers->next = console;
}
- if ((console->flags & CON_PRINTBUFFER) == 0)
- goto done;
- /*
- * Print out buffered log messages.
- */
- p = log_start & LOG_BUF_MASK;
-
- for (i=0,j=0; i < log_size; i++) {
- buf[j++] = log_buf[p];
- p = (p+1) & LOG_BUF_MASK;
- if (buf[j-1] != '\n' && i < log_size - 1 && j < sizeof(buf)-1)
- continue;
- buf[j] = 0;
- q = buf;
- len = j;
- if (msg_level < 0) {
- if(buf[0] == '<' &&
- buf[1] >= '0' &&
- buf[1] <= '7' &&
- buf[2] == '>') {
- msg_level = buf[1] - '0';
- q = buf + 3;
- len -= 3;
- } else
- {
- msg_level = default_message_loglevel;
- }
- }
- if (msg_level < console_loglevel)
- console->write(console, q, len);
- if (buf[j-1] == '\n')
- msg_level = -1;
- j = 0;
+ if (console->flags & CON_PRINTBUFFER) {
+ /*
+ * release_cosole_sem() will print out the buffered messages for us.
+ */
+ spin_lock_irqsave(&logbuf_lock, flags);
+ con_start = log_start;
+ spin_unlock_irqrestore(&logbuf_lock, flags);
}
-done:
- spin_unlock_irqrestore(&console_lock, flags);
+ release_console_sem();
}
-
+EXPORT_SYMBOL(register_console);
int unregister_console(struct console * console)
{
struct console *a,*b;
- unsigned long flags;
int res = 1;
- spin_lock_irqsave(&console_lock, flags);
+ acquire_console_sem();
if (console_drivers == console) {
console_drivers=console->next;
res = 0;
- } else
- {
+ } else {
for (a=console_drivers->next, b=console_drivers ;
a; b=a, a=b->next) {
if (a == console) {
@@ -479,13 +630,15 @@
preferred_console = -1;
- spin_unlock_irqrestore(&console_lock, flags);
+ release_console_sem();
return res;
}
+EXPORT_SYMBOL(unregister_console);
-/*
- * Write a message to a certain tty, not just the console. This is used for
- * messages that need to be redirected to a specific tty.
+/**
+ * tty_write_message - write a message to a certain tty, not just the console.
+ *
+ * This is used for messages that need to be redirected to a specific tty.
* We don't put it into the syslog queue right now maybe in the future if
* really needed.
*/
Index: sched.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/kernel/sched.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- sched.c 2001/09/26 16:50:30 1.1
+++ sched.c 2001/10/19 21:19:40 1.2
@@ -23,9 +23,11 @@
#include <linux/mm.h>
#include <linux/init.h>
#include <linux/smp_lock.h>
+#include <linux/nmi.h>
#include <linux/interrupt.h>
#include <linux/kernel_stat.h>
#include <linux/completion.h>
+#include <linux/prefetch.h>
#include <asm/uaccess.h>
#include <asm/mmu_context.h>
@@ -107,6 +109,7 @@
#define last_schedule(cpu) aligned_data[(cpu)].schedule_data.last_schedule
struct kernel_stat kstat;
+extern struct task_struct *child_reaper;
#ifdef CONFIG_SMP
@@ -245,7 +248,7 @@
*/
oldest_idle = (cycles_t) -1;
target_tsk = NULL;
- max_prio = 1;
+ max_prio = 0;
for (i = 0; i < smp_num_cpus; i++) {
cpu = cpu_logical_map(i);
@@ -291,7 +294,7 @@
struct task_struct *tsk;
tsk = cpu_curr(this_cpu);
- if (preemption_goodness(tsk, p, this_cpu) > 1)
+ if (preemption_goodness(tsk, p, this_cpu) > 0)
tsk->need_resched = 1;
#endif
}
@@ -534,6 +537,9 @@
struct list_head *tmp;
int this_cpu, c;
+
+ spin_lock_prefetch(&runqueue_lock);
+
if (!current->active_mm) BUG();
need_resched_back:
prev = current;
@@ -719,18 +725,16 @@
static inline void __wake_up_common (wait_queue_head_t *q, unsigned int mode,
int nr_exclusive, const int sync)
{
- struct list_head *tmp, *head;
+ struct list_head *tmp;
struct task_struct *p;
CHECK_MAGIC_WQHEAD(q);
- head = &q->task_list;
- WQ_CHECK_LIST_HEAD(head);
- tmp = head->next;
- while (tmp != head) {
+ WQ_CHECK_LIST_HEAD(&q->task_list);
+
+ list_for_each(tmp,&q->task_list) {
unsigned int state;
wait_queue_t *curr = list_entry(tmp, wait_queue_t, task_list);
- tmp = tmp->next;
CHECK_MAGIC(curr->__magic);
p = curr->task;
state = p->state;
@@ -1050,7 +1054,7 @@
#if CONFIG_SMP
int i;
- // Substract non-idle processes running on other CPUs.
+ // Subtract non-idle processes running on other CPUs.
for (i = 0; i < smp_num_cpus; i++) {
int cpu = cpu_logical_map(i);
if (aligned_data[cpu].schedule_data.curr != idle_task(cpu))
@@ -1173,7 +1177,7 @@
printk(" (NOTLB)\n");
#if defined(CONFIG_X86) || defined(CONFIG_SPARC64) || defined(CONFIG_ARM) || \
- defined(CONFIG_MIPS)
+ defined(CONFIG_ALPHA) || defined(CONFIG_MIPS)
/*
* This is very useful, but only works on ARM, x86, MIPS and sparc64 right
* now
@@ -1214,9 +1218,68 @@
printk(" task PC stack pid father child younger older\n");
#endif
read_lock(&tasklist_lock);
- for_each_task(p)
+ for_each_task(p) {
+ /*
+ * reset the NMI-timeout, listing all files on a slow
+ * console might take alot of time:
+ */
+ touch_nmi_watchdog();
show_task(p);
+ }
read_unlock(&tasklist_lock);
+}
+
+/**
+ * reparent_to_init() - Reparent the calling kernel thread to the init task.
+ *
+ * If a kernel thread is launched as a result of a system call, or if
+ * it ever exits, it should generally reparent itself to init so that
+ * it is correctly cleaned up on exit.
+ *
+ * The various task state such as scheduling policy and priority may have
+ * been inherited fro a user process, so we reset them to sane values here.
+ *
+ * NOTE that reparent_to_init() gives the caller full capabilities.
+ */
+void reparent_to_init(void)
+{
+ struct task_struct *this_task = current;
+
+ write_lock_irq(&tasklist_lock);
+
+ /* Reparent to init */
+ REMOVE_LINKS(this_task);
+ this_task->p_pptr = child_reaper;
+ this_task->p_opptr = child_reaper;
+ SET_LINKS(this_task);
+
+ /* Set the exit signal to SIGCHLD so we signal init on exit */
+ if (this_task->exit_signal != 0) {
+ printk(KERN_ERR "task `%s' exit_signal %d in "
+ __FUNCTION__ "\n",
+ this_task->comm, this_task->exit_signal);
+ }
+ this_task->exit_signal = SIGCHLD;
+
+ /* We also take the runqueue_lock while altering task fields
+ * which affect scheduling decisions */
+ spin_lock(&runqueue_lock);
+
+ this_task->ptrace = 0;
+ this_task->nice = DEF_NICE;
+ this_task->policy = SCHED_OTHER;
+ /* cpus_allowed? */
+ /* rt_priority? */
+ /* signals? */
+ this_task->cap_effective = CAP_INIT_EFF_SET;
+ this_task->cap_inheritable = CAP_INIT_INH_SET;
+ this_task->cap_permitted = CAP_FULL_SET;
+ this_task->keep_capabilities = 0;
+ memcpy(this_task->rlim, init_task.rlim, sizeof(*(this_task->rlim)));
+ this_task->user = INIT_USER;
+
+ spin_unlock(&runqueue_lock);
+ write_unlock_irq(&tasklist_lock);
}
/*
Index: signal.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/kernel/signal.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- signal.c 2001/06/22 02:29:32 1.1.1.1
+++ signal.c 2001/10/19 21:19:40 1.2
@@ -243,16 +243,16 @@
#endif
sig = next_signal(current, mask);
- if (current->notifier) {
- if (sigismember(current->notifier_mask, sig)) {
- if (!(current->notifier)(current->notifier_data)) {
- current->sigpending = 0;
- return 0;
+ if (sig) {
+ if (current->notifier) {
+ if (sigismember(current->notifier_mask, sig)) {
+ if (!(current->notifier)(current->notifier_data)) {
+ current->sigpending = 0;
+ return 0;
+ }
}
}
- }
- if (sig) {
if (!collect_signal(sig, ¤t->pending, info))
sig = 0;
@@ -468,11 +468,6 @@
{
t->sigpending = 1;
- if (t->state & TASK_INTERRUPTIBLE) {
- wake_up_process(t);
- return;
- }
-
#ifdef CONFIG_SMP
/*
* If the task is running on a different CPU
@@ -489,6 +484,11 @@
smp_send_reschedule(t->processor);
spin_unlock(&runqueue_lock);
#endif /* CONFIG_SMP */
+
+ if (t->state & TASK_INTERRUPTIBLE) {
+ wake_up_process(t);
+ return;
+ }
}
static int deliver_signal(int sig, struct siginfo *info, struct task_struct *t)
@@ -545,8 +545,6 @@
ret = deliver_signal(sig, info, t);
out:
spin_unlock_irqrestore(&t->sigmask_lock, flags);
- if ((t->state & TASK_INTERRUPTIBLE) && signal_pending(t))
- wake_up_process(t);
out_nolock:
#if DEBUG_SIG
printk(" %d -> %d\n", signal_pending(t), ret);
Index: sys.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/kernel/sys.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- sys.c 2001/08/25 06:24:46 1.3
+++ sys.c 2001/10/19 21:19:40 1.4
@@ -39,6 +39,7 @@
*/
int C_A_D = 1;
+int cad_pid = 1;
/*
@@ -350,7 +351,7 @@
if (C_A_D)
schedule_task(&cad_tq);
else
- kill_proc(1, SIGINT, 1);
+ kill_proc(cad_pid, SIGINT, 1);
}
@@ -1215,7 +1216,7 @@
switch (option) {
case PR_SET_PDEATHSIG:
sig = arg2;
- if (sig > _NSIG) {
+ if (sig < 0 || sig > _NSIG) {
error = -EINVAL;
break;
}
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:44
|
Update of /cvsroot/linux-mips/linux/ipc In directory usw-pr-cvs1:/tmp/cvs-serv13849/ipc Removed Files: shm.c Log Message: Synced to 2.4.10. --- shm.c DELETED --- |
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:44
|
Update of /cvsroot/linux-mips/linux/scripts
In directory usw-pr-cvs1:/tmp/cvs-serv13849/scripts
Modified Files:
mkdep.c
Log Message:
Synced to 2.4.10.
Index: mkdep.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/scripts/mkdep.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- mkdep.c 2001/06/22 02:29:32 1.1.1.1
+++ mkdep.c 2001/10/19 21:19:40 1.2
@@ -291,7 +291,7 @@
* Thus, there is one memory access per sizeof(unsigned long) characters.
*/
-#if defined(__alpha__) || defined(__i386__) || defined(__ia64__) || defined(__MIPSEL__) \
+#if defined(__alpha__) || defined(__i386__) || defined(__ia64__) || defined(__x86_64__) || defined(__MIPSEL__) \
|| defined(__arm__)
#define LE_MACHINE
#endif
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:44
|
Update of /cvsroot/linux-mips/linux/init In directory usw-pr-cvs1:/tmp/cvs-serv13849/init Removed Files: main.c Log Message: Synced to 2.4.10. --- main.c DELETED --- |
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:43
|
Update of /cvsroot/linux-mips/linux/drivers/ide
In directory usw-pr-cvs1:/tmp/cvs-serv13849/drivers/ide
Modified Files:
Config.in ide-dma.c ide-pci.c
Removed Files:
Makefile it8172.c
Log Message:
Synced to 2.4.10.
Index: Config.in
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/ide/Config.in,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- Config.in 2001/09/25 03:36:35 1.2
+++ Config.in 2001/10/19 21:19:39 1.3
@@ -113,17 +113,17 @@
dep_bool ' RapIDE interface support' CONFIG_BLK_DEV_IDE_RAPIDE $CONFIG_ARCH_ACORN
fi
if [ "$CONFIG_AMIGA" = "y" ]; then
- dep_bool ' Amiga Gayle IDE interface support' CONFIG_BLK_DEV_GAYLE $CONFIG_AMIGA
- dep_mbool ' Amiga IDE Doubler support (EXPERIMENTAL)' CONFIG_BLK_DEV_IDEDOUBLER $CONFIG_BLK_DEV_GAYLE $CONFIG_EXPERIMENTAL
+ dep_bool ' Amiga Gayle IDE interface support' CONFIG_BLK_DEV_GAYLE $CONFIG_AMIGA
+ dep_mbool ' Amiga IDE Doubler support (EXPERIMENTAL)' CONFIG_BLK_DEV_IDEDOUBLER $CONFIG_BLK_DEV_GAYLE $CONFIG_EXPERIMENTAL
fi
if [ "$CONFIG_ZORRO" = "y" -a "$CONFIG_EXPERIMENTAL" = "y" ]; then
- dep_mbool ' Buddha/Catweasel IDE interface support (EXPERIMENTAL)' CONFIG_BLK_DEV_BUDDHA $CONFIG_ZORRO $CONFIG_EXPERIMENTAL
+ dep_mbool ' Buddha/Catweasel IDE interface support (EXPERIMENTAL)' CONFIG_BLK_DEV_BUDDHA $CONFIG_ZORRO $CONFIG_EXPERIMENTAL
fi
if [ "$CONFIG_ATARI" = "y" ]; then
- dep_bool ' Falcon IDE interface support' CONFIG_BLK_DEV_FALCON_IDE $CONFIG_ATARI
+ dep_bool ' Falcon IDE interface support' CONFIG_BLK_DEV_FALCON_IDE $CONFIG_ATARI
fi
if [ "$CONFIG_MAC" = "y" ]; then
- dep_bool ' Macintosh Quadra/Powerbook IDE interface support' CONFIG_BLK_DEV_MAC_IDE $CONFIG_MAC
+ dep_bool ' Macintosh Quadra/Powerbook IDE interface support' CONFIG_BLK_DEV_MAC_IDE $CONFIG_MAC
fi
if [ "$CONFIG_Q40" = "y" ]; then
dep_bool ' Q40/Q60 IDE interface support' CONFIG_BLK_DEV_Q40IDE $CONFIG_Q40
@@ -139,7 +139,7 @@
if [ "$CONFIG_BLK_DEV_IDEDISK" = "y" -a "$CONFIG_EXPERIMENTAL" = "y" ]; then
bool ' PROMISE DC4030 support (EXPERIMENTAL)' CONFIG_BLK_DEV_PDC4030
fi
- bool ' QDI QD6580 support' CONFIG_BLK_DEV_QD6580
+ bool ' QDI QD65xx support' CONFIG_BLK_DEV_QD65XX
bool ' UMC-8672 support' CONFIG_BLK_DEV_UMC8672
fi
fi
@@ -191,5 +191,9 @@
else
define_bool CONFIG_BLK_DEV_IDE_MODES n
fi
+
+dep_tristate 'Support for IDE Raid controllers' CONFIG_BLK_DEV_ATARAID $CONFIG_BLK_DEV_IDE $CONFIG_EXPERIMENTAL
+dep_tristate ' Support Promise software RAID (Fasttrak(tm))' CONFIG_BLK_DEV_ATARAID_PDC $CONFIG_BLK_DEV_IDE $CONFIG_EXPERIMENTAL $CONFIG_BLK_DEV_ATARAID
+dep_tristate ' Highpoint 370 software RAID' CONFIG_BLK_DEV_ATARAID_HPT $CONFIG_BLK_DEV_IDE $CONFIG_EXPERIMENTAL $CONFIG_BLK_DEV_ATARAID
endmenu
Index: ide-dma.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/ide/ide-dma.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- ide-dma.c 2001/09/25 03:36:35 1.3
+++ ide-dma.c 2001/10/19 21:19:39 1.4
@@ -130,10 +130,30 @@
{ "WDC AC23200L" , "21.10N21" },
{ "Compaq CRD-8241B" , "ALL" },
{ "CRD-8400B" , "ALL" },
+ { "CRD-8480B", "ALL" },
+ { "CRD-8480C", "ALL" },
+ { "CRD-8482B", "ALL" },
+ { "CRD-84" , "ALL" },
+ { "SanDisk SDP3B" , "ALL" },
{ "SanDisk SDP3B-64" , "ALL" },
+ { "SANYO CD-ROM CRD" , "ALL" },
+ { "HITACHI CDR-8" , "ALL" },
+ { "HITACHI CDR-8335" , "ALL" },
+ { "HITACHI CDR-8435" , "ALL" },
+ { "Toshiba CD-ROM XM-6202B" , "ALL" },
+ { "CD-532E-A" , "ALL" },
+ { "E-IDE CD-ROM CR-840", "ALL" },
+ { "CD-ROM Drive/F5A", "ALL" },
+ { "RICOH CD-R/RW MP7083A", "ALL" },
+ { "WPI CDD-820", "ALL" },
+ { "SAMSUNG CD-ROM SC-148C", "ALL" },
+ { "SAMSUNG CD-ROM SC-148F", "ALL" },
+ { "SAMSUNG CD-ROM SC", "ALL" },
+ { "SanDisk SDP3B-64" , "ALL" },
{ "SAMSUNG CD-ROM SN-124", "ALL" },
{ "PLEXTOR CD-R PX-W8432T", "ALL" },
{ "ATAPI CD-ROM DRIVE 40X MAXIMUM", "ALL" },
+ { "_NEC DV5800A", "ALL" },
{ 0 , 0 }
};
@@ -293,11 +313,12 @@
cur_len = sg_dma_len(sg);
#ifdef CONFIG_COBALT_MICRO_SERVER
- if (func == ide_dma_write)
- dma_cache_wback_inv(bus_to_virt(cur_addr), cur_len);
- else
- dma_cache_inv(bus_to_virt(cur_addr), cur_len);
+ if (func == ide_dma_write)
+ dma_cache_wback_inv(bus_to_virt(cur_addr), cur_len);
+ else
+ dma_cache_inv(bus_to_virt(cur_addr), cur_len);
#endif
+
/*
* Fill in the dma table, without crossing any 64kB boundaries.
* Most hardware requires 16-bit alignment of all blocks,
@@ -343,8 +364,8 @@
if (count) {
if (!is_trm290_chipset)
- *--table |= cpu_to_le32(0x80000000);
- return count;
+ *--table |= cpu_to_le32(0x80000000);
+ return count;
}
printk("%s: empty DMA table?\n", drive->name);
use_pio_instead:
@@ -537,10 +558,10 @@
int ide_dmaproc (ide_dma_action_t func, ide_drive_t *drive)
{
// ide_hwgroup_t *hwgroup = HWGROUP(drive);
- ide_hwif_t *hwif = HWIF(drive);
- unsigned long dma_base = hwif->dma_base;
- byte unit = (drive->select.b.unit & 0x01);
- unsigned int count, reading = 0;
+ ide_hwif_t *hwif = HWIF(drive);
+ unsigned long dma_base = hwif->dma_base;
+ byte unit = (drive->select.b.unit & 0x01);
+ unsigned int count, reading = 0;
byte dma_stat;
switch (func) {
Index: ide-pci.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/ide/ide-pci.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- ide-pci.c 2001/09/25 03:36:35 1.9
+++ ide-pci.c 2001/10/19 21:19:39 1.10
@@ -38,6 +38,7 @@
#define DEVID_PIIX4U3 ((ide_pci_devid_t){PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801BA_9})
#define DEVID_PIIX4U4 ((ide_pci_devid_t){PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801BA_8})
#define DEVID_VIA_IDE ((ide_pci_devid_t){PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C561})
+#define DEVID_MR_IDE ((ide_pci_devid_t){PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C576_1})
#define DEVID_VP_IDE ((ide_pci_devid_t){PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_1})
#define DEVID_PDC20246 ((ide_pci_devid_t){PCI_VENDOR_ID_PROMISE, PCI_DEVICE_ID_PROMISE_20246})
#define DEVID_PDC20262 ((ide_pci_devid_t){PCI_VENDOR_ID_PROMISE, PCI_DEVICE_ID_PROMISE_20262})
@@ -398,6 +399,7 @@
{DEVID_PIIX4U3, "PIIX4", PCI_PIIX, ATA66_PIIX, INIT_PIIX, NULL, {{0x41,0x80,0x80}, {0x43,0x80,0x80}}, ON_BOARD, 0 },
{DEVID_PIIX4U4, "PIIX4", PCI_PIIX, ATA66_PIIX, INIT_PIIX, NULL, {{0x41,0x80,0x80}, {0x43,0x80,0x80}}, ON_BOARD, 0 },
{DEVID_VIA_IDE, "VIA_IDE", NULL, NULL, NULL, NULL, {{0x00,0x00,0x00}, {0x00,0x00,0x00}}, ON_BOARD, 0 },
+ {DEVID_MR_IDE, "VP_IDE", PCI_VIA82CXXX, ATA66_VIA82CXXX,INIT_VIA82CXXX, DMA_VIA82CXXX, {{0x40,0x02,0x02}, {0x40,0x01,0x01}}, ON_BOARD, 0 },
{DEVID_VP_IDE, "VP_IDE", PCI_VIA82CXXX, ATA66_VIA82CXXX,INIT_VIA82CXXX, DMA_VIA82CXXX, {{0x40,0x02,0x02}, {0x40,0x01,0x01}}, ON_BOARD, 0 },
#ifdef CONFIG_PDC202XX_FORCE
{DEVID_PDC20246,"PDC20246", PCI_PDC202XX, NULL, INIT_PDC202XX, NULL, {{0x00,0x00,0x00}, {0x00,0x00,0x00}}, OFF_BOARD, 16 },
@@ -598,7 +600,7 @@
#ifdef CONFIG_IDEDMA_AUTO
if (!noautodma)
- autodma = 1;
+ autodma = 1;
#endif
pci_enable_device(dev);
@@ -738,12 +740,12 @@
hwif->noprobe = !hwif->io_ports[IDE_DATA_OFFSET];
}
#ifdef CONFIG_COBALT_MICRO_SERVER
- /* This is an unglorified hack.. bad, bad, bad */
- {
- int i;
- for (i=0; i < IDE_NR_PORTS; i++)
- hwif->io_ports[i] += 0x10000000;
- }
+ /* This is an unglorified hack.. bad, bad, bad */
+ {
+ int i;
+ for (i=0; i < IDE_NR_PORTS; i++)
+ hwif->io_ports[i] += 0x10000000;
+ }
#endif
hwif->chipset = ide_pci;
hwif->pci_dev = dev;
@@ -779,6 +781,7 @@
IDE_PCI_DEVID_EQ(d->devid, DEVID_PIIX4NX) ||
IDE_PCI_DEVID_EQ(d->devid, DEVID_HPT34X) ||
IDE_PCI_DEVID_EQ(d->devid, DEVID_VIA_IDE) ||
+ IDE_PCI_DEVID_EQ(d->devid, DEVID_MR_IDE) ||
IDE_PCI_DEVID_EQ(d->devid, DEVID_VP_IDE))
autodma = 0;
if (autodma)
@@ -788,6 +791,7 @@
IDE_PCI_DEVID_EQ(d->devid, DEVID_PDC20265) ||
IDE_PCI_DEVID_EQ(d->devid, DEVID_PDC20267) ||
IDE_PCI_DEVID_EQ(d->devid, DEVID_PDC20268) ||
+ IDE_PCI_DEVID_EQ(d->devid, DEVID_PDC20268R) ||
IDE_PCI_DEVID_EQ(d->devid, DEVID_AEC6210) ||
IDE_PCI_DEVID_EQ(d->devid, DEVID_AEC6260) ||
IDE_PCI_DEVID_EQ(d->devid, DEVID_AEC6260R) ||
--- Makefile DELETED ---
--- it8172.c DELETED ---
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:43
|
Update of /cvsroot/linux-mips/linux/drivers/char
In directory usw-pr-cvs1:/tmp/cvs-serv13849/drivers/char
Modified Files:
Config.in Makefile au1000_gpio.c au1000_ts.c dz.c ite_gpio.c
keyboard.c mem.c serial.c
Removed Files:
qtronix.c rtc.c tty_io.c vt.c
Log Message:
Synced to 2.4.10.
Index: Config.in
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/char/Config.in,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- Config.in 2001/10/12 17:49:17 1.9
+++ Config.in 2001/10/19 21:19:38 1.10
@@ -201,7 +201,7 @@
bool ' Intel 440LX/BX/GX and I815/I840/I850 support' CONFIG_AGP_INTEL
bool ' Intel I810/I815 (on-board) support' CONFIG_AGP_I810
bool ' VIA chipset support' CONFIG_AGP_VIA
- bool ' AMD Irongate support' CONFIG_AGP_AMD
+ bool ' AMD Irongate, 761, and 762 support' CONFIG_AGP_AMD
bool ' Generic SiS support' CONFIG_AGP_SIS
bool ' ALI chipset support' CONFIG_AGP_ALI
bool ' Serverworks LE/HE support' CONFIG_AGP_SWORKS
Index: Makefile
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/char/Makefile,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- Makefile 2001/10/10 21:56:15 1.10
+++ Makefile 2001/10/19 21:19:38 1.11
@@ -54,20 +54,6 @@
SERIAL =
endif
-ifeq ($(ARCH),s390)
- KEYMAP =
- KEYBD =
- CONSOLE =
- SERIAL =
-endif
-
-ifeq ($(ARCH),s390x)
- KEYMAP =
- KEYBD =
- CONSOLE =
- SERIAL =
-endif
-
ifeq ($(ARCH),m68k)
ifdef CONFIG_AMIGA
KEYBD = amikeyb.o
@@ -265,10 +251,10 @@
consolemap_deftbl.o: consolemap_deftbl.c $(TOPDIR)/include/linux/types.h
+.DELETE_ON_ERROR:
+
defkeymap.c: defkeymap.map
- loadkeys --mktable defkeymap.map > defkeymap.c
+ set -e ; loadkeys --mktable $< | sed -e 's/^static *//' > $@
-ifeq ($(CONFIG_QTRONIX_KEYBOARD),y)
qtronixmap.c: qtronixmap.map
- loadkeys --mktable qtronixmap.map > qtronixmap.c
-endif
+ set -e ; loadkeys --mktable $< | sed -e 's/^static *//' > $@
Index: au1000_gpio.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/char/au1000_gpio.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- au1000_gpio.c 2001/10/10 21:56:15 1.1
+++ au1000_gpio.c 2001/10/19 21:19:38 1.2
@@ -35,11 +35,11 @@
#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/miscdevice.h>
-#include <linux/au1000_gpio.h>
#include <linux/init.h>
#include <asm/uaccess.h>
#include <asm/io.h>
#include <asm/au1000.h>
+#include <asm/au1000_gpio.h>
#define VERSION "0.01"
@@ -195,29 +195,29 @@
case AU1000GPIO_OUT:
- if (get_user(val, (u32 *)arg))
- return -EFAULT;
+ if (get_user(val, (u32 *)arg))
+ return -EFAULT;
return au1000gpio_out(val);
case AU1000GPIO_SET:
- if (get_user(val, (u32 *)arg))
- return -EFAULT;
+ if (get_user(val, (u32 *)arg))
+ return -EFAULT;
return au1000gpio_set(val);
case AU1000GPIO_CLEAR:
- if (get_user(val, (u32 *)arg))
- return -EFAULT;
+ if (get_user(val, (u32 *)arg))
+ return -EFAULT;
return au1000gpio_clear(val);
case AU1000GPIO_TRISTATE:
- if (get_user(val, (u32 *)arg))
- return -EFAULT;
+ if (get_user(val, (u32 *)arg))
+ return -EFAULT;
return au1000gpio_tristate(val);
Index: au1000_ts.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/char/au1000_ts.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- au1000_ts.c 2001/10/10 21:56:15 1.1
+++ au1000_ts.c 2001/10/19 21:19:38 1.2
@@ -171,11 +171,11 @@
} TS_EVENT;
typedef struct {
- int xscale;
- int xtrans;
- int yscale;
- int ytrans;
- int xyswap;
+ int xscale;
+ int xtrans;
+ int yscale;
+ int ytrans;
+ int xyswap;
} TS_CAL;
/* Use 'f' as magic number */
@@ -313,7 +313,7 @@
ts->pendown = 1;
else if (ts->pendown && Rt < ts->penup_thresh_ohms)
ts->pendown = 0;
-
+
if (ts->pendown) {
// Pen is down
// Calculate calibrated X,Y
@@ -358,8 +358,8 @@
{
au1000_ts_t* ts = (au1000_ts_t*)data;
unsigned long flags;
-
- spin_lock_irqsave(&ts->lock, flags);
+
+ spin_lock_irqsave(&ts->lock, flags);
// start acquisition with X coordinate
ts->acq_state = ACQ_X;
@@ -378,7 +378,7 @@
{
au1000_ts_t *ts = (au1000_ts_t*)dev_id;
u32 stat, int_stat, data;
-
+
spin_lock(&ts->lock);
stat = inl(SSI0_STATUS);
@@ -388,7 +388,7 @@
int_stat = inl(SSI0_INT);
// clear sticky intr status bits
outl(int_stat & (SSIINT_OI|SSIINT_UI|SSIINT_DI), SSI0_INT);
-
+
if ((int_stat & (SSIINT_OI|SSIINT_UI|SSIINT_DI)) != SSIINT_DI) {
if (int_stat & SSIINT_OI)
err("overflow");
@@ -397,7 +397,7 @@
spin_unlock(&ts->lock);
return;
}
-
+
data = inl(SSI0_ADATA) & SSIADAT_DATA_MASK;
switch (ts->acq_state) {
@@ -436,8 +436,8 @@
ts->z2_raw = data;
ts->acq_state = IDLE;
// got the raw stuff, now mark BH
- queue_task(&ts->chug_tq, &tq_immediate);
- mark_bh(IMMEDIATE_BH);
+ queue_task(&ts->chug_tq, &tq_immediate);
+ mark_bh(IMMEDIATE_BH);
break;
}
@@ -451,7 +451,7 @@
au1000_fasync(int fd, struct file *filp, int mode)
{
au1000_ts_t* ts = (au1000_ts_t*)filp->private_data;
- return fasync_helper(fd, filp, mode, &ts->fasync);
+ return fasync_helper(fd, filp, mode, &ts->fasync);
}
static int
@@ -460,21 +460,21 @@
{
au1000_ts_t* ts = (au1000_ts_t*)filp->private_data;
- switch(cmd) {
- case TS_GET_RATE: /* TODO: what is this? */
- break;
- case TS_SET_RATE: /* TODO: what is this? */
- break;
- case TS_GET_CAL:
- copy_to_user((char *)arg, (char *)&ts->cal, sizeof(TS_CAL));
- break;
- case TS_SET_CAL:
- copy_from_user((char *)&ts->cal, (char *)arg, sizeof(TS_CAL));
- break;
- default:
- err("unknown cmd %04x", cmd);
- return -EINVAL;
- }
+ switch(cmd) {
+ case TS_GET_RATE: /* TODO: what is this? */
+ break;
+ case TS_SET_RATE: /* TODO: what is this? */
+ break;
+ case TS_GET_CAL:
+ copy_to_user((char *)arg, (char *)&ts->cal, sizeof(TS_CAL));
+ break;
+ case TS_SET_CAL:
+ copy_from_user((char *)&ts->cal, (char *)arg, sizeof(TS_CAL));
+ break;
+ default:
+ err("unknown cmd %04x", cmd);
+ return -EINVAL;
+ }
return 0;
}
@@ -483,10 +483,10 @@
au1000_poll(struct file * filp, poll_table * wait)
{
au1000_ts_t* ts = (au1000_ts_t*)filp->private_data;
- poll_wait(filp, &ts->wait, wait);
- if (ts->event_count)
- return POLLIN | POLLRDNORM;
- return 0;
+ poll_wait(filp, &ts->wait, wait);
+ if (ts->event_count)
+ return POLLIN | POLLRDNORM;
+ return 0;
}
static ssize_t
@@ -496,15 +496,15 @@
unsigned long flags;
TS_EVENT event;
int i;
-
+
if (ts->event_count == 0) {
if (filp->f_flags & O_NONBLOCK)
return -EAGAIN;
- interruptible_sleep_on(&ts->wait);
- if (signal_pending(current))
+ interruptible_sleep_on(&ts->wait);
+ if (signal_pending(current))
return -ERESTARTSYS;
}
-
+
for (i = count;
i >= sizeof(TS_EVENT);
i -= sizeof(TS_EVENT), buf += sizeof(TS_EVENT)) {
@@ -522,14 +522,14 @@
return count - i;
}
-
-
+
+
static int
au1000_open(struct inode * inode, struct file * filp)
{
au1000_ts_t* ts;
unsigned long flags;
-
+
filp->private_data = ts = &au1000_ts;
spin_lock_irqsave(&ts->lock, flags);
@@ -574,7 +574,7 @@
au1000_ts_t* ts = (au1000_ts_t*)filp->private_data;
unsigned long flags;
- au1000_fasync(-1, filp, 0);
+ au1000_fasync(-1, filp, 0);
del_timer_sync(&ts->acq_timer);
spin_lock_irqsave(&ts->lock, flags);
@@ -582,16 +582,16 @@
outl(0, SSI0_INT_ENABLE);
spin_unlock_irqrestore(&ts->lock, flags);
- MOD_DEC_USE_COUNT;
- return 0;
+ MOD_DEC_USE_COUNT;
+ return 0;
}
static struct file_operations ts_fops = {
read: au1000_read,
- poll: au1000_poll,
+ poll: au1000_poll,
ioctl: au1000_ioctl,
- fasync: au1000_fasync,
+ fasync: au1000_fasync,
open: au1000_open,
release: au1000_release,
};
@@ -605,35 +605,33 @@
au1000_ts_t* ts = &au1000_ts;
int ret;
- /* register our character device */
- if ((ret = register_chrdev(TS_MAJOR, TS_NAME, &ts_fops)) < 0) {
- err("can't get major number");
- return ret;
- }
+ /* register our character device */
+ if ((ret = register_chrdev(TS_MAJOR, TS_NAME, &ts_fops)) < 0) {
+ err("can't get major number");
+ return ret;
+ }
info("registered");
memset(ts, 0, sizeof(au1000_ts_t));
init_waitqueue_head(&ts->wait);
spin_lock_init(&ts->lock);
- if (!request_region(virt_to_phys((void*)SSI0_STATUS),
- 0x100, TS_NAME)) {
+ if (!request_region(virt_to_phys((void*)SSI0_STATUS), 0x100, TS_NAME)) {
err("SSI0 ports in use");
return -ENXIO;
}
-
- if ((ret = request_irq(AU1000_SSI0_INT, ssi0_interrupt,
- SA_SHIRQ | SA_INTERRUPT,
- TS_NAME, ts))) {
- err("could not get IRQ");
- return ret;
- }
-
+
+ if ((ret = request_irq(AU1000_SSI0_INT, ssi0_interrupt,
+ SA_SHIRQ | SA_INTERRUPT, TS_NAME, ts))) {
+ err("could not get IRQ");
+ return ret;
+ }
+
// initial calibration values
- ts->cal.xscale = -93;
- ts->cal.xtrans = 346;
- ts->cal.yscale = -64;
- ts->cal.ytrans = 251;
+ ts->cal.xscale = -93;
+ ts->cal.xtrans = 346;
+ ts->cal.yscale = -64;
+ ts->cal.ytrans = 251;
// init pen up/down hysteresis points
ts->pendown_thresh_ohms = DEFAULT_PENDOWN_THRESH_OHMS;
Index: dz.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/char/dz.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- dz.c 2001/09/06 16:55:35 1.5
+++ dz.c 2001/10/19 21:19:38 1.6
@@ -1614,3 +1614,5 @@
}
#endif /* CONFIG_SERIAL_CONSOLE */
+
+MODULE_LICENSE("GPL");
Index: ite_gpio.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/char/ite_gpio.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- ite_gpio.c 2001/06/22 02:29:32 1.1.1.1
+++ ite_gpio.c 2001/10/19 21:19:38 1.2
@@ -426,3 +426,5 @@
module_init(ite_gpio_init);
module_exit(ite_gpio_exit);
+
+MODULE_LICENSE("GPL");
Index: keyboard.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/char/keyboard.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- keyboard.c 2001/06/22 02:29:32 1.1.1.1
+++ keyboard.c 2001/10/19 21:19:38 1.2
@@ -205,15 +205,12 @@
char raw_mode;
pm_access(pm_kbd);
-
- do_poke_blanked_console = 1;
- tasklet_schedule(&console_tasklet);
add_keyboard_randomness(scancode | up_flag);
tty = ttytab? ttytab[fg_console]: NULL;
if (tty && (!tty->driver_data)) {
/*
- * We touch the tty structure via the the ttytab array
+ * We touch the tty structure via the ttytab array
* without knowing whether or not tty is open, which
* is inherently dangerous. We currently rely on that
* fact that console_open sets tty->driver_data when
@@ -233,7 +230,7 @@
* Convert scancode to keycode
*/
if (!kbd_translate(scancode, &keycode, raw_mode))
- return;
+ goto out;
/*
* At this point the variable `keycode' contains the keycode.
@@ -252,11 +249,11 @@
#ifdef CONFIG_MAGIC_SYSRQ /* Handle the SysRq Hack */
if (keycode == SYSRQ_KEY) {
sysrq_pressed = !up_flag;
- return;
+ goto out;
} else if (sysrq_pressed) {
if (!up_flag) {
handle_sysrq(kbd_sysrq_xlate[keycode], kbd_pt_regs, kbd, tty);
- return;
+ goto out;
}
}
#endif
@@ -298,7 +295,7 @@
if (type >= 0xf0) {
type -= 0xf0;
if (raw_mode && ! (TYPES_ALLOWED_IN_RAW_MODE & (1 << type)))
- return;
+ goto out;
if (type == KT_LETTER) {
type = KT_LATIN;
if (vc_kbd_led(kbd, VC_CAPSLOCK)) {
@@ -322,13 +319,16 @@
compute_shiftstate();
kbd->slockstate = 0; /* play it safe */
#else
- keysym = U(plain_map[keycode]);
+ keysym = U(plain_map[keycode]);
type = KTYP(keysym);
if (type == KT_SHIFT)
(*key_handler[type])(keysym & 0xff, up_flag);
#endif
}
}
+out:
+ do_poke_blanked_console = 1;
+ schedule_console_callback();
}
#ifdef CONFIG_FORWARD_KEYBOARD
@@ -927,6 +927,10 @@
EXPORT_SYMBOL(keyboard_tasklet);
DECLARE_TASKLET_DISABLED(keyboard_tasklet, kbd_bh, 0);
+typedef void (pm_kbd_func) (void);
+
+pm_callback pm_kbd_request_override = NULL;
+
int __init kbd_init(void)
{
int i;
@@ -950,7 +954,7 @@
tasklet_enable(&keyboard_tasklet);
tasklet_schedule(&keyboard_tasklet);
- pm_kbd = pm_register(PM_SYS_DEV, PM_SYS_KBC, NULL);
+ pm_kbd = pm_register(PM_SYS_DEV, PM_SYS_KBC, pm_kbd_request_override);
return 0;
}
Index: mem.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/char/mem.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- mem.c 2001/09/06 16:53:06 1.4
+++ mem.c 2001/10/19 21:19:38 1.5
@@ -41,9 +41,6 @@
#if defined(CONFIG_S390_TAPE) && defined(CONFIG_S390_TAPE_CHAR)
extern void tapechar_init(void);
#endif
-#if defined(CONFIG_ADB)
-extern void adbdev_init(void);
-#endif
static ssize_t do_write_mem(struct file * file, void *p, unsigned long realp,
const char * buf, size_t count, loff_t *ppos)
@@ -134,7 +131,7 @@
{
unsigned long prot = pgprot_val(_prot);
-#if defined(__i386__)
+#if defined(__i386__) || defined(__x86_64__)
/* On PPro and successors, PCD alone doesn't always mean
uncached because of interactions with the MTRRs. PCD | PWT
means definitely uncached. */
@@ -640,9 +637,6 @@
#endif
#if defined(CONFIG_S390_TAPE) && defined(CONFIG_S390_TAPE_CHAR)
tapechar_init();
-#endif
-#if defined(CONFIG_ADB)
- adbdev_init();
#endif
return 0;
}
Index: serial.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/char/serial.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- serial.c 2001/09/25 03:36:35 1.5
+++ serial.c 2001/10/19 21:19:38 1.6
@@ -1789,11 +1789,13 @@
if (I_IGNPAR(info->tty))
info->ignore_status_mask |= UART_LSR_OE;
}
+#if 0 /* breaks serial console during boot stage */
/*
* !!! ignore all characters if CREAD is not set
*/
if ((cflag & CREAD) == 0)
info->ignore_status_mask |= UART_LSR_DR;
+#endif
save_flags(flags); cli();
if (uart_config[info->state->type].flags & UART_STARTECH) {
serial_outp(info, UART_LCR, 0xBF);
@@ -3911,7 +3913,7 @@
case 6: /* BAR 4*/
case 7: base_idx=idx-2; /* BAR 5*/
}
-
+
/* Some Titan cards are also a little weird */
if (dev->vendor == PCI_VENDOR_ID_TITAN &&
(dev->device == PCI_DEVICE_ID_TITAN_400L ||
@@ -5744,6 +5746,7 @@
module_exit(rs_fini);
MODULE_DESCRIPTION("Standard/generic (dumb) serial driver");
MODULE_AUTHOR("Theodore Ts'o <ty...@mi...>");
+MODULE_LICENSE("GPL");
/*
@@ -5787,7 +5790,7 @@
* Print a string to the serial port trying not to disturb
* any possible real use of the port...
*
- * The console_lock must be held when we get here.
+ * The console must be locked when we get here.
*/
static void serial_console_write(struct console *co, const char *s,
unsigned count)
--- qtronix.c DELETED ---
--- rtc.c DELETED ---
--- tty_io.c DELETED ---
--- vt.c DELETED ---
|
Update of /cvsroot/linux-mips/linux/include/linux
In directory usw-pr-cvs1:/tmp/cvs-serv13849/include/linux
Modified Files:
ac97_codec.h elf.h pci_ids.h sched.h
Removed Files:
i2c-algo-ite.h i2c-id.h ite_gpio.h mc146818rtc.h
Log Message:
Synced to 2.4.10.
Index: ac97_codec.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/linux/ac97_codec.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- ac97_codec.h 2001/09/25 03:36:36 1.6
+++ ac97_codec.h 2001/10/19 21:19:40 1.7
@@ -36,7 +36,10 @@
#define AC97_PCM_MIC_ADC_RATE 0x0034 /* PCM MIC ADC Rate */
#define AC97_CENTER_LFE_MASTER 0x0036 /* Center + LFE Master Volume */
#define AC97_SURROUND_MASTER 0x0038 /* Surround (Rear) Master Volume */
-#define AC97_RESERVED_3A 0x003A /* Reserved */
+#define AC97_RESERVED_3A 0x003A /* Reserved in AC '97 < 2.2 */
+
+/* AC'97 2.2 */
+#define AC97_SPDIF_CONTROL 0x003A /* S/PDIF Control */
/* range 0x3c-0x58 - MODEM */
#define AC97_EXTENDED_MODEM_ID 0x003C
@@ -87,6 +90,40 @@
#define AC97_GP_ST 0x4000 /* Stereo Enhancement 1=on */
#define AC97_GP_POP 0x8000 /* Pcm Out Path, 0=pre 3D, 1=post 3D */
+/* extended audio status and control bit defines */
+#define AC97_EA_VRA 0x0001 /* Variable bit rate enable bit */
+#define AC97_EA_DRA 0x0002 /* Double-rate audio enable bit */
+#define AC97_EA_SPDIF 0x0004 /* S/PDIF Enable bit */
+#define AC97_EA_VRM 0x0008 /* Variable bit rate for MIC enable bit */
+#define AC97_EA_CDAC 0x0040 /* PCM Center DAC is ready (Read only) */
+#define AC97_EA_SDAC 0x0040 /* PCM Surround DACs are ready (Read only) */
+#define AC97_EA_LDAC 0x0080 /* PCM LFE DAC is ready (Read only) */
+#define AC97_EA_MDAC 0x0100 /* MIC ADC is ready (Read only) */
+#define AC97_EA_SPCV 0x0400 /* S/PDIF configuration valid (Read only) */
+#define AC97_EA_PRI 0x0800 /* Turns the PCM Center DAC off */
+#define AC97_EA_PRJ 0x1000 /* Turns the PCM Surround DACs off */
+#define AC97_EA_PRK 0x2000 /* Turns the PCM LFE DAC off */
+#define AC97_EA_PRL 0x4000 /* Turns the MIC ADC off */
+#define AC97_EA_SLOT_MASK 0xffcf /* Mask for slot assignment bits */
+#define AC97_EA_SPSA_3_4 0x0000 /* Slot assigned to 3 & 4 */
+#define AC97_EA_SPSA_7_8 0x0010 /* Slot assigned to 7 & 8 */
+#define AC97_EA_SPSA_6_9 0x0020 /* Slot assigned to 6 & 9 */
+#define AC97_EA_SPSA_10_11 0x0030 /* Slot assigned to 10 & 11 */
+
+/* S/PDIF control bit defines */
+#define AC97_SC_PRO 0x0001 /* Professional status */
+#define AC97_SC_NAUDIO 0x0002 /* Non audio stream */
+#define AC97_SC_COPY 0x0004 /* Copyright status */
+#define AC97_SC_PRE 0x0008 /* Preemphasis status */
+#define AC97_SC_CC_MASK 0x07f0 /* Category Code mask */
+#define AC97_SC_L 0x0800 /* Generation Level status */
+#define AC97_SC_SPSR_MASK 0xcfff /* S/PDIF Sample Rate bits */
+#define AC97_SC_SPSR_44K 0x0000 /* Use 44.1kHz Sample rate */
+#define AC97_SC_SPSR_48K 0x2000 /* Use 48kHz Sample rate */
+#define AC97_SC_SPSR_32K 0x3000 /* Use 32kHz Sample rate */
+#define AC97_SC_DRS 0x4000 /* Double Rate S/PDIF */
+#define AC97_SC_V 0x8000 /* Validity status */
+
/* powerdown control and status bit defines */
/* status */
@@ -233,5 +270,8 @@
extern int ac97_read_proc (char *page_out, char **start, off_t off,
int count, int *eof, void *data);
extern int ac97_probe_codec(struct ac97_codec *);
+extern unsigned int ac97_set_adc_rate(struct ac97_codec *codec, unsigned int rate);
+extern unsigned int ac97_set_dac_rate(struct ac97_codec *codec, unsigned int rate);
+
#endif /* _AC97_CODEC_H_ */
Index: elf.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/linux/elf.h,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -u -d -r1.1.1.1 -r1.2
--- elf.h 2001/06/22 02:29:32 1.1.1.1
+++ elf.h 2001/10/19 21:19:40 1.2
@@ -16,8 +16,10 @@
typedef __u16 Elf64_Half;
typedef __s16 Elf64_SHalf;
typedef __u64 Elf64_Off;
-typedef __s64 Elf64_Sword;
-typedef __u64 Elf64_Word;
+typedef __s32 Elf64_Sword;
+typedef __u32 Elf64_Word;
+typedef __u64 Elf64_Xword;
+typedef __s64 Elf64_Sxword;
/* These constants are for the segment types stored in the image headers */
#define PT_NULL 0
@@ -65,6 +67,7 @@
#define EM_SPARC32PLUS 18 /* Sun's "v8plus" */
#define EM_PPC 20 /* PowerPC */
+#define EM_PPC64 21 /* PowerPC64 */
#define EM_SH 42 /* SuperH */
@@ -180,10 +183,10 @@
} Elf32_Dyn;
typedef struct {
- Elf64_Word d_tag; /* entry tag value */
+ Elf64_Sxword d_tag; /* entry tag value */
union {
- Elf64_Word d_val;
- Elf64_Word d_ptr;
+ Elf64_Xword d_val;
+ Elf64_Addr d_ptr;
} d_un;
} Elf64_Dyn;
@@ -229,7 +232,7 @@
#define R_MIPS_GOT_PAGE 20
#define R_MIPS_GOT_OFST 21
/*
- * The following two relocation types are specified in the the MIPS ABI
+ * The following two relocation types are specified in the MIPS ABI
* conformance guide version 1.2 but not yet in the psABI.
*/
#define R_MIPS_GOTHI16 22
@@ -241,7 +244,7 @@
#define R_MIPS_HIGHER 28
#define R_MIPS_HIGHEST 29
/*
- * The following two relocation types are specified in the the MIPS ABI
+ * The following two relocation types are specified in the MIPS ABI
* conformance guide version 1.2 but not yet in the psABI.
*/
#define R_MIPS_CALLHI16 30
@@ -374,7 +377,7 @@
typedef struct elf64_rel {
Elf64_Addr r_offset; /* Location at which to apply the action */
- Elf64_Word r_info; /* index and type of relocation */
+ Elf64_Xword r_info; /* index and type of relocation */
} Elf64_Rel;
typedef struct elf32_rela{
@@ -385,8 +388,8 @@
typedef struct elf64_rela {
Elf64_Addr r_offset; /* Location at which to apply the action */
- Elf64_Word r_info; /* index and type of relocation */
- Elf64_Word r_addend; /* Constant addend used to compute value */
+ Elf64_Xword r_info; /* index and type of relocation */
+ Elf64_Sxword r_addend; /* Constant addend used to compute value */
} Elf64_Rela;
typedef struct elf32_sym{
@@ -399,12 +402,12 @@
} Elf32_Sym;
typedef struct elf64_sym {
- Elf32_Word st_name; /* Symbol name, index in string tbl (yes, Elf32) */
+ Elf64_Word st_name; /* Symbol name, index in string tbl */
unsigned char st_info; /* Type and binding attributes */
unsigned char st_other; /* No defined meaning, 0 */
Elf64_Half st_shndx; /* Associated section index */
Elf64_Addr st_value; /* Value of the symbol */
- Elf64_Word st_size; /* Associated symbol size */
+ Elf64_Xword st_size; /* Associated symbol size */
} Elf64_Sym;
@@ -429,19 +432,19 @@
typedef struct elf64_hdr {
unsigned char e_ident[16]; /* ELF "magic number" */
- Elf64_SHalf e_type;
+ Elf64_Half e_type;
Elf64_Half e_machine;
- __s32 e_version;
+ Elf64_Word e_version;
Elf64_Addr e_entry; /* Entry point virtual address */
Elf64_Off e_phoff; /* Program header table file offset */
Elf64_Off e_shoff; /* Section header table file offset */
- __s32 e_flags;
- Elf64_SHalf e_ehsize;
- Elf64_SHalf e_phentsize;
- Elf64_SHalf e_phnum;
- Elf64_SHalf e_shentsize;
- Elf64_SHalf e_shnum;
- Elf64_SHalf e_shstrndx;
+ Elf64_Word e_flags;
+ Elf64_Half e_ehsize;
+ Elf64_Half e_phentsize;
+ Elf64_Half e_phnum;
+ Elf64_Half e_shentsize;
+ Elf64_Half e_shnum;
+ Elf64_Half e_shstrndx;
} Elf64_Ehdr;
/* These constants define the permissions on sections in the program
@@ -462,14 +465,14 @@
} Elf32_Phdr;
typedef struct elf64_phdr {
- __s32 p_type;
- __s32 p_flags;
+ Elf64_Word p_type;
+ Elf64_Word p_flags;
Elf64_Off p_offset; /* Segment file offset */
Elf64_Addr p_vaddr; /* Segment virtual address */
Elf64_Addr p_paddr; /* Segment physical address */
- Elf64_Word p_filesz; /* Segment size in file */
- Elf64_Word p_memsz; /* Segment size in memory */
- Elf64_Word p_align; /* Segment alignment, file & memory */
+ Elf64_Xword p_filesz; /* Segment size in file */
+ Elf64_Xword p_memsz; /* Segment size in memory */
+ Elf64_Xword p_align; /* Segment alignment, file & memory */
} Elf64_Phdr;
/* sh_type */
@@ -526,16 +529,16 @@
} Elf32_Shdr;
typedef struct elf64_shdr {
- Elf32_Word sh_name; /* Section name, index in string tbl (yes Elf32) */
- Elf32_Word sh_type; /* Type of section (yes Elf32) */
- Elf64_Word sh_flags; /* Miscellaneous section attributes */
+ Elf64_Word sh_name; /* Section name, index in string tbl */
+ Elf64_Word sh_type; /* Type of section */
+ Elf64_Xword sh_flags; /* Miscellaneous section attributes */
Elf64_Addr sh_addr; /* Section virtual addr at execution */
Elf64_Off sh_offset; /* Section file offset */
- Elf64_Word sh_size; /* Size of section in bytes */
- Elf32_Word sh_link; /* Index of another section (yes Elf32) */
- Elf32_Word sh_info; /* Additional section information (yes Elf32) */
- Elf64_Word sh_addralign; /* Section alignment */
- Elf64_Word sh_entsize; /* Entry size if section holds table */
+ Elf64_Xword sh_size; /* Size of section in bytes */
+ Elf64_Word sh_link; /* Index of another section */
+ Elf64_Word sh_info; /* Additional section information */
+ Elf64_Xword sh_addralign; /* Section alignment */
+ Elf64_Xword sh_entsize; /* Entry size if section holds table */
} Elf64_Shdr;
#define EI_MAG0 0 /* e_ident[] indexes */
@@ -582,15 +585,10 @@
} Elf32_Nhdr;
/* Note header in a PT_NOTE section */
-/*
- * For now we use the 32 bit version of the structure until we figure
- * out whether we need anything better. Note - on the Alpha, "unsigned int"
- * is only 32 bits.
- */
typedef struct elf64_note {
- Elf32_Word n_namesz; /* Name size */
- Elf32_Word n_descsz; /* Content size */
- Elf32_Word n_type; /* Content type */
+ Elf64_Word n_namesz; /* Name size */
+ Elf64_Word n_descsz; /* Content size */
+ Elf64_Word n_type; /* Content type */
} Elf64_Nhdr;
#if ELF_CLASS == ELFCLASS32
Index: pci_ids.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/linux/pci_ids.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- pci_ids.h 2001/10/12 17:55:30 1.4
+++ pci_ids.h 2001/10/19 21:19:40 1.5
@@ -146,18 +146,34 @@
#define PCI_DEVICE_ID_COMPAQ_NETFLEX3B 0xf150
#define PCI_VENDOR_ID_NCR 0x1000
+#define PCI_VENDOR_ID_LSI_LOGIC 0x1000
#define PCI_DEVICE_ID_NCR_53C810 0x0001
#define PCI_DEVICE_ID_NCR_53C820 0x0002
#define PCI_DEVICE_ID_NCR_53C825 0x0003
#define PCI_DEVICE_ID_NCR_53C815 0x0004
+#define PCI_DEVICE_ID_LSI_53C810AP 0x0005
#define PCI_DEVICE_ID_NCR_53C860 0x0006
+#define PCI_DEVICE_ID_LSI_53C1510 0x000a
#define PCI_DEVICE_ID_NCR_53C896 0x000b
#define PCI_DEVICE_ID_NCR_53C895 0x000c
#define PCI_DEVICE_ID_NCR_53C885 0x000d
#define PCI_DEVICE_ID_NCR_53C875 0x000f
#define PCI_DEVICE_ID_NCR_53C1510 0x0010
+#define PCI_DEVICE_ID_LSI_53C895A 0x0012
+#define PCI_DEVICE_ID_LSI_53C875A 0x0013
+#define PCI_DEVICE_ID_LSI_53C1010_33 0x0020
+#define PCI_DEVICE_ID_LSI_53C1010_66 0x0021
+#define PCI_DEVICE_ID_LSI_53C1030 0x0030
+#define PCI_DEVICE_ID_LSI_53C1035 0x0040
#define PCI_DEVICE_ID_NCR_53C875J 0x008f
+#define PCI_DEVICE_ID_LSI_FC909 0x0621
+#define PCI_DEVICE_ID_LSI_FC929 0x0622
+#define PCI_DEVICE_ID_LSI_FC929_LAN 0x0623
+#define PCI_DEVICE_ID_LSI_FC919 0x0624
+#define PCI_DEVICE_ID_LSI_FC919_LAN 0x0625
#define PCI_DEVICE_ID_NCR_YELLOWFIN 0x0701
+#define PCI_DEVICE_ID_LSI_61C102 0x0901
+#define PCI_DEVICE_ID_LSI_63C815 0x1000
#define PCI_VENDOR_ID_ATI 0x1002
/* Mach64 */
@@ -387,6 +403,8 @@
#define PCI_VENDOR_ID_AI 0x1025
#define PCI_DEVICE_ID_AI_M1435 0x1435
+#define PCI_VENDOR_ID_DELL 0x1028
+
#define PCI_VENDOR_ID_MATROX 0x102B
#define PCI_DEVICE_ID_MATROX_MGA_2 0x0518
#define PCI_DEVICE_ID_MATROX_MIL 0x0519
@@ -854,6 +872,7 @@
#define PCI_DEVICE_ID_INTERG_2000 0x2000
#define PCI_DEVICE_ID_INTERG_2010 0x2010
#define PCI_DEVICE_ID_INTERG_5000 0x5000
+#define PCI_DEVICE_ID_INTERG_5050 0x5050
#define PCI_VENDOR_ID_REALTEK 0x10ec
#define PCI_DEVICE_ID_REALTEK_8029 0x8029
@@ -902,7 +921,7 @@
#define PCI_DEVICE_ID_VIA_82C693 0x0693
#define PCI_DEVICE_ID_VIA_82C693_1 0x0698
#define PCI_DEVICE_ID_VIA_82C926 0x0926
-#define PCI_DEVICE_ID_VIA_82C416 0x1571
+#define PCI_DEVICE_ID_VIA_82C576_1 0x1571
#define PCI_DEVICE_ID_VIA_82C595_97 0x1595
#define PCI_DEVICE_ID_VIA_82C586_2 0x3038
#define PCI_DEVICE_ID_VIA_82C586_3 0x3040
@@ -915,6 +934,7 @@
#define PCI_DEVICE_ID_VIA_8233_7 0x3065
#define PCI_DEVICE_ID_VIA_82C686_6 0x3068
#define PCI_DEVICE_ID_VIA_8233_0 0x3074
+#define PCI_DEVICE_ID_VIA_8233C_0 0x3109
#define PCI_DEVICE_ID_VIA_8633_0 0x3091
#define PCI_DEVICE_ID_VIA_8367_0 0x3099
#define PCI_DEVICE_ID_VIA_86C100A 0x6100
Index: sched.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/linux/sched.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- sched.h 2001/09/15 08:51:35 1.3
+++ sched.h 2001/10/19 21:19:40 1.4
@@ -7,12 +7,12 @@
#include <linux/config.h>
#include <linux/binfmts.h>
-#include <linux/personality.h>
#include <linux/threads.h>
#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/times.h>
#include <linux/timex.h>
+#include <linux/rbtree.h>
#include <asm/system.h>
#include <asm/semaphore.h>
@@ -27,6 +27,8 @@
#include <linux/securebits.h>
#include <linux/fs_struct.h>
+struct exec_domain;
+
/*
* cloning flags:
*/
@@ -199,12 +201,9 @@
/* Maximum number of active map areas.. This is a random (large) number */
#define MAX_MAP_COUNT (65536)
-/* Number of map areas at which the AVL tree is activated. This is arbitrary. */
-#define AVL_MIN_MAP_COUNT 32
-
struct mm_struct {
struct vm_area_struct * mmap; /* list of VMAs */
- struct vm_area_struct * mmap_avl; /* tree of VMAs */
+ rb_root_t mm_rb;
struct vm_area_struct * mmap_cache; /* last find_vma result */
pgd_t * pgd;
atomic_t mm_users; /* How many users with user space? */
@@ -236,13 +235,10 @@
#define INIT_MM(name) \
{ \
- mmap: &init_mmap, \
- mmap_avl: NULL, \
- mmap_cache: NULL, \
+ mm_rb: RB_ROOT, \
pgd: swapper_pg_dir, \
mm_users: ATOMIC_INIT(2), \
mm_count: ATOMIC_INIT(1), \
- map_count: 1, \
mmap_sem: __RWSEM_INITIALIZER(name.mmap_sem), \
page_table_lock: SPIN_LOCK_UNLOCKED, \
mmlist: LIST_HEAD_INIT(name.mmlist), \
@@ -319,6 +315,8 @@
struct task_struct *next_task, *prev_task;
struct mm_struct *active_mm;
+ struct list_head local_pages;
+ unsigned int allocation_order, nr_local_pages;
/* task state */
struct linux_binfmt *binfmt;
@@ -415,6 +413,7 @@
#define PF_DUMPCORE 0x00000200 /* dumped core */
#define PF_SIGNALED 0x00000400 /* killed by a signal */
#define PF_MEMALLOC 0x00000800 /* Allocating memory */
+#define PF_FREE_PAGES 0x00002000 /* per process page freeing */
#define PF_USEDFPU 0x00100000 /* task used FPU this quantum (SMP) */
@@ -426,6 +425,7 @@
#define PT_TRACESYS 0x00000002
#define PT_DTRACE 0x00000004 /* delayed trace (used on m68k, i386) */
#define PT_TRACESYSGOOD 0x00000008
+#define PT_PTRACE_CAP 0x00000010 /* ptracer can follow suid-exec */
/*
* Limit the stack by to some sane default: root can always
@@ -437,7 +437,13 @@
#define MAX_COUNTER (20*HZ/100)
#define DEF_NICE (0)
+
/*
+ * The default (Linux) execution domain.
+ */
+extern struct exec_domain default_exec_domain;
+
+/*
* INIT_TASK is used to set up the first task table, touch at
* your own risk!. Base=0, limit=0x1fffff (=2MB)
*/
@@ -751,6 +757,7 @@
extern void exit_files(struct task_struct *);
extern void exit_sighand(struct task_struct *);
+extern void reparent_to_init(void);
extern void daemonize(void);
extern int do_execve(char *, char **, char **, struct pt_regs *);
--- i2c-algo-ite.h DELETED ---
--- i2c-id.h DELETED ---
--- ite_gpio.h DELETED ---
--- mc146818rtc.h DELETED ---
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:43
|
Update of /cvsroot/linux-mips/linux/drivers/i2c In directory usw-pr-cvs1:/tmp/cvs-serv13849/drivers/i2c Removed Files: i2c-adap-ite.c i2c-algo-ite.c i2c-ite.h Log Message: Synced to 2.4.10. --- i2c-adap-ite.c DELETED --- --- i2c-algo-ite.c DELETED --- --- i2c-ite.h DELETED --- |
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:43
|
Update of /cvsroot/linux-mips/linux/fs/proc
In directory usw-pr-cvs1:/tmp/cvs-serv13849/fs/proc
Modified Files:
array.c proc_misc.c
Log Message:
Synced to 2.4.10.
Index: array.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/fs/proc/array.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- array.c 2001/09/17 16:49:28 1.4
+++ array.c 2001/10/19 21:19:40 1.5
@@ -522,11 +522,8 @@
/*
* For the /proc/<pid>/maps file, we use fixed length records, each containing
* a single line.
- */
-#define MAPS_LINE_LENGTH 4096
-#define MAPS_LINE_SHIFT 12
-/*
- * f_pos = (number of the vma in the task->mm->mmap list) * MAPS_LINE_LENGTH
+ *
+ * f_pos = (number of the vma in the task->mm->mmap list) * PAGE_SIZE
* + (index into the line)
*/
/* for systems with sizeof(void*) == 4: */
@@ -537,136 +534,142 @@
#define MAPS_LINE_FORMAT8 "%016lx-%016lx %s %016lx %s %lu"
#define MAPS_LINE_MAX8 73 /* sum of 16 1 16 1 4 1 16 1 5 1 10 1 */
-#define MAPS_LINE_MAX MAPS_LINE_MAX8
+#define MAPS_LINE_FORMAT (sizeof(void*) == 4 ? MAPS_LINE_FORMAT4 : MAPS_LINE_FORMAT8)
+#define MAPS_LINE_MAX (sizeof(void*) == 4 ? MAPS_LINE_MAX4 : MAPS_LINE_MAX8)
+
+static int proc_pid_maps_get_line (char *buf, struct vm_area_struct *map)
+{
+ /* produce the next line */
+ char *line;
+ char str[5];
+ int flags;
+ kdev_t dev;
+ unsigned long ino;
+ int len;
+
+ flags = map->vm_flags;
+
+ str[0] = flags & VM_READ ? 'r' : '-';
+ str[1] = flags & VM_WRITE ? 'w' : '-';
+ str[2] = flags & VM_EXEC ? 'x' : '-';
+ str[3] = flags & VM_MAYSHARE ? 's' : 'p';
+ str[4] = 0;
+ dev = 0;
+ ino = 0;
+ if (map->vm_file != NULL) {
+ dev = map->vm_file->f_dentry->d_inode->i_dev;
+ ino = map->vm_file->f_dentry->d_inode->i_ino;
+ line = d_path(map->vm_file->f_dentry,
+ map->vm_file->f_vfsmnt,
+ buf, PAGE_SIZE);
+ buf[PAGE_SIZE-1] = '\n';
+ line -= MAPS_LINE_MAX;
+ if(line < buf)
+ line = buf;
+ } else
+ line = buf;
+ len = sprintf(line,
+ MAPS_LINE_FORMAT,
+ map->vm_start, map->vm_end, str, map->vm_pgoff << PAGE_SHIFT,
+ kdevname(dev), ino);
+
+ if(map->vm_file) {
+ int i;
+ for(i = len; i < MAPS_LINE_MAX; i++)
+ line[i] = ' ';
+ len = buf + PAGE_SIZE - line;
+ memmove(buf, line, len);
+ } else
+ line[len++] = '\n';
+ return len;
+}
+
ssize_t proc_pid_read_maps (struct task_struct *task, struct file * file, char * buf,
size_t count, loff_t *ppos)
{
struct mm_struct *mm;
- struct vm_area_struct * map, * next;
- char * destptr = buf, * buffer;
- loff_t lineno;
- ssize_t column, i;
- int volatile_task;
+ struct vm_area_struct * map;
+ char *tmp, *kbuf;
long retval;
+ int off, lineno, loff;
+ /* reject calls with out of range parameters immediately */
+ retval = 0;
+ if (*ppos > LONG_MAX)
+ goto out;
+ if (count == 0)
+ goto out;
+ off = (long)*ppos;
/*
* We might sleep getting the page, so get it first.
*/
retval = -ENOMEM;
- buffer = (char*)__get_free_page(GFP_KERNEL);
- if (!buffer)
+ kbuf = (char*)__get_free_page(GFP_KERNEL);
+ if (!kbuf)
goto out;
- if (count == 0)
- goto getlen_out;
+ tmp = (char*)__get_free_page(GFP_KERNEL);
+ if (!tmp)
+ goto out_free1;
+
task_lock(task);
mm = task->mm;
if (mm)
atomic_inc(&mm->mm_users);
task_unlock(task);
+ retval = 0;
if (!mm)
- goto getlen_out;
-
- /* Check whether the mmaps could change if we sleep */
- volatile_task = (task != current || atomic_read(&mm->mm_users) > 2);
-
- /* decode f_pos */
- lineno = *ppos >> MAPS_LINE_SHIFT;
- column = *ppos & (MAPS_LINE_LENGTH-1);
+ goto out_free2;
- /* quickly go to line lineno */
down_read(&mm->mmap_sem);
- for (map = mm->mmap, i = 0; map && (i < lineno); map = map->vm_next, i++)
- continue;
-
- for ( ; map ; map = next ) {
- /* produce the next line */
- char *line;
- char str[5], *cp = str;
- int flags;
- kdev_t dev;
- unsigned long ino;
- int maxlen = (sizeof(void*) == 4) ?
- MAPS_LINE_MAX4 : MAPS_LINE_MAX8;
+ map = mm->mmap;
+ lineno = 0;
+ loff = 0;
+ if (count > PAGE_SIZE)
+ count = PAGE_SIZE;
+ while (map) {
int len;
-
- /*
- * Get the next vma now (but it won't be used if we sleep).
- */
- next = map->vm_next;
- flags = map->vm_flags;
-
- *cp++ = flags & VM_READ ? 'r' : '-';
- *cp++ = flags & VM_WRITE ? 'w' : '-';
- *cp++ = flags & VM_EXEC ? 'x' : '-';
- *cp++ = flags & VM_MAYSHARE ? 's' : 'p';
- *cp++ = 0;
-
- dev = 0;
- ino = 0;
- if (map->vm_file != NULL) {
- dev = map->vm_file->f_dentry->d_inode->i_dev;
- ino = map->vm_file->f_dentry->d_inode->i_ino;
- line = d_path(map->vm_file->f_dentry,
- map->vm_file->f_vfsmnt,
- buffer, PAGE_SIZE);
- buffer[PAGE_SIZE-1] = '\n';
- line -= maxlen;
- if(line < buffer)
- line = buffer;
- } else
- line = buffer;
-
- len = sprintf(line,
- sizeof(void*) == 4 ? MAPS_LINE_FORMAT4 : MAPS_LINE_FORMAT8,
- map->vm_start, map->vm_end, str, map->vm_pgoff << PAGE_SHIFT,
- kdevname(dev), ino);
-
- if(map->vm_file) {
- for(i = len; i < maxlen; i++)
- line[i] = ' ';
- len = buffer + PAGE_SIZE - line;
- } else
- line[len++] = '\n';
- if (column >= len) {
- column = 0; /* continue with next line at column 0 */
- lineno++;
- continue; /* we haven't slept */
+ if (off > PAGE_SIZE) {
+ off -= PAGE_SIZE;
+ goto next;
}
-
- i = len-column;
- if (i > count)
- i = count;
- copy_to_user(destptr, line+column, i); /* may have slept */
- destptr += i;
- count -= i;
- column += i;
- if (column >= len) {
- column = 0; /* next time: next line at column 0 */
- lineno++;
+ len = proc_pid_maps_get_line(tmp, map);
+ len -= off;
+ if (len > 0) {
+ if (retval+len > count) {
+ /* only partial line transfer possible */
+ len = count - retval;
+ /* save the offset where the next read
+ * must start */
+ loff = len+off;
+ }
+ memcpy(kbuf+retval, tmp+off, len);
+ retval += len;
}
-
- /* done? */
- if (count == 0)
- break;
-
- /* By writing to user space, we might have slept.
- * Stop the loop, to avoid a race condition.
- */
- if (volatile_task)
+ off = 0;
+next:
+ if (!loff)
+ lineno++;
+ if (retval >= count)
break;
+ if (loff) BUG();
+ map = map->vm_next;
}
up_read(&mm->mmap_sem);
-
- /* encode f_pos */
- *ppos = (lineno << MAPS_LINE_SHIFT) + column;
mmput(mm);
-getlen_out:
- retval = destptr - buf;
- free_page((unsigned long)buffer);
+ if (retval > count) BUG();
+ if (copy_to_user(buf, kbuf, retval))
+ retval = -EFAULT;
+ else
+ *ppos = (lineno << PAGE_SHIFT) + loff;
+
+out_free2:
+ free_page((unsigned long)tmp);
+out_free1:
+ free_page((unsigned long)kbuf);
out:
return retval;
}
Index: proc_misc.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/fs/proc/proc_misc.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- proc_misc.c 2001/08/25 02:19:28 1.2
+++ proc_misc.c 2001/10/19 21:19:40 1.3
@@ -145,12 +145,12 @@
* display in kilobytes.
*/
#define K(x) ((x) << (PAGE_SHIFT - 10))
-#define B(x) ((x) << PAGE_SHIFT)
+#define B(x) ((unsigned long long)(x) << PAGE_SHIFT)
si_meminfo(&i);
si_swapinfo(&i);
len = sprintf(page, " total: used: free: shared: buffers: cached:\n"
- "Mem: %8lu %8lu %8lu %8lu %8lu %8u\n"
- "Swap: %8lu %8lu %8lu\n",
+ "Mem: %8Lu %8Lu %8Lu %8Lu %8Lu %8Lu\n"
+ "Swap: %8Lu %8Lu %8Lu\n",
B(i.totalram), B(i.totalram-i.freeram), B(i.freeram),
B(i.sharedram), B(i.bufferram),
B(atomic_read(&page_cache_size)), B(i.totalswap),
@@ -168,9 +168,7 @@
"Cached: %8lu kB\n"
"SwapCached: %8lu kB\n"
"Active: %8u kB\n"
- "Inact_dirty: %8u kB\n"
- "Inact_clean: %8u kB\n"
- "Inact_target: %8lu kB\n"
+ "Inactive: %8u kB\n"
"HighTotal: %8lu kB\n"
"HighFree: %8lu kB\n"
"LowTotal: %8lu kB\n"
@@ -184,9 +182,7 @@
K(atomic_read(&page_cache_size) - swapper_space.nrpages),
K(swapper_space.nrpages),
K(nr_active_pages),
- K(nr_inactive_dirty_pages),
- K(nr_inactive_clean_pages()),
- K(inactive_target),
+ K(nr_inactive_pages),
K(i.totalhigh),
K(i.freehigh),
K(i.totalram-i.totalhigh),
@@ -573,7 +569,7 @@
entry->size = (1+prof_len) * sizeof(unsigned int);
}
}
-#ifdef __powerpc__
+#ifdef CONFIG_PPC32
{
extern struct file_operations ppc_htab_operations;
entry = create_proc_entry("ppc_htab", S_IRUGO|S_IWUSR, NULL);
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:43
|
Update of /cvsroot/linux-mips/linux/include/asm-mips64
In directory usw-pr-cvs1:/tmp/cvs-serv13849/include/asm-mips64
Modified Files:
pgtable.h processor.h spinlock.h
Removed Files:
ioctls.h
Log Message:
Synced to 2.4.10.
Index: pgtable.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/asm-mips64/pgtable.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- pgtable.h 2001/09/06 16:54:14 1.4
+++ pgtable.h 2001/10/19 21:19:40 1.5
@@ -816,4 +816,9 @@
#endif /* !defined (_LANGUAGE_ASSEMBLY) */
+/*
+ * No page table caches to initialise
+ */
+#define pgtable_cache_init() do { } while (0)
+
#endif /* _ASM_PGTABLE_H */
Index: processor.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/asm-mips64/processor.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- processor.h 2001/10/09 21:54:37 1.3
+++ processor.h 2001/10/19 21:19:40 1.4
@@ -207,9 +207,6 @@
#endif /* !defined (_LANGUAGE_ASSEMBLY) */
-#define INIT_MMAP { &init_mm, KSEG0, KSEG1, NULL, PAGE_SHARED, \
- VM_READ | VM_WRITE | VM_EXEC, 1, NULL, NULL }
-
#define INIT_THREAD { \
/* \
* saved main processor registers \
Index: spinlock.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/asm-mips64/spinlock.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- spinlock.h 2001/10/17 17:17:54 1.1
+++ spinlock.h 2001/10/19 21:19:40 1.2
@@ -95,6 +95,8 @@
#define RW_LOCK_UNLOCKED (rwlock_t) { 0 }
+#define rwlock_init(x) do { *(x) = RW_LOCK_UNLOCKED; } while(0)
+
static inline void read_lock(rwlock_t *rw)
{
unsigned int tmp;
--- ioctls.h DELETED ---
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:43
|
Update of /cvsroot/linux-mips/linux/include/asm-mips
In directory usw-pr-cvs1:/tmp/cvs-serv13849/include/asm-mips
Modified Files:
keyboard.h pgalloc.h processor.h softirq.h spinlock.h
Removed Files:
pgtable.h semaphore.h
Log Message:
Synced to 2.4.10.
Index: keyboard.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/asm-mips/keyboard.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- keyboard.h 2001/10/18 18:06:42 1.6
+++ keyboard.h 2001/10/19 21:19:40 1.7
@@ -26,7 +26,6 @@
char raw_mode);
extern char pckbd_unexpected_up(unsigned char keycode);
extern void pckbd_leds(unsigned char leds);
-extern int pckbd_rate(struct kbd_repeat *rep);
extern void pckbd_init_hw(void);
extern void pckbd_pm_resume(void);
extern unsigned char pckbd_sysrq_xlate[128];
@@ -37,7 +36,6 @@
#define kbd_translate pckbd_translate
#define kbd_unexpected_up pckbd_unexpected_up
#define kbd_leds pckbd_leds
-#define kbd_rate pckbd_rate
#define kbd_init_hw pckbd_init_hw
#define kbd_sysrq_xlate pckbd_sysrq_xlate
@@ -84,7 +82,6 @@
char raw_mode);
extern char kbd_unexpected_up(unsigned char keycode);
extern void kbd_leds(unsigned char leds);
-extern int kbd_rate(struct kbd_repeat *rep);
extern void kbd_init_hw(void);
extern unsigned char *kbd_sysrq_xlate;
Index: pgalloc.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/asm-mips/pgalloc.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- pgalloc.h 2001/10/11 23:14:57 1.3
+++ pgalloc.h 2001/10/19 21:19:40 1.4
@@ -180,7 +180,7 @@
free_page((unsigned long)pte);
}
-#define pte_free(pte) pte_free_slow(pte)
+#define pte_free(pte) pte_free_fast(pte)
#define pgd_free(pgd) free_pgd_fast(pgd)
#define pgd_alloc(mm) get_pgd_fast()
Index: processor.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/asm-mips/processor.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- processor.h 2001/10/09 21:54:21 1.4
+++ processor.h 2001/10/19 21:19:40 1.5
@@ -12,7 +12,7 @@
#define _ASM_PROCESSOR_H
#include <linux/config.h>
-
+#include <linux/cache.h>
#include <asm/isadep.h>
/*
@@ -34,7 +34,7 @@
unsigned long *pte_quick;
unsigned long pgtable_cache_sz;
unsigned long asid_cache;
-};
+} __attribute__((__aligned__(SMP_CACHE_BYTES)));
/*
* System setup and hardware flags..
@@ -167,9 +167,6 @@
};
#endif /* !defined (_LANGUAGE_ASSEMBLY) */
-
-#define INIT_MMAP { &init_mm, KSEG0, KSEG1, NULL, PAGE_SHARED, \
- VM_READ | VM_WRITE | VM_EXEC, 1, NULL, NULL }
#define INIT_THREAD { \
/* \
Index: softirq.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/asm-mips/softirq.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- softirq.h 2001/08/22 18:18:14 1.2
+++ softirq.h 2001/10/19 21:19:40 1.3
@@ -40,6 +40,4 @@
#define in_softirq() (local_bh_count(smp_processor_id()) != 0)
-#define __cpu_raise_softirq(cpu, nr) set_bit(nr, &softirq_pending(cpu))
-
#endif /* _ASM_SOFTIRQ_H */
Index: spinlock.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/include/asm-mips/spinlock.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- spinlock.h 2001/10/17 17:17:54 1.3
+++ spinlock.h 2001/10/19 21:19:40 1.4
@@ -78,6 +78,8 @@
#define RW_LOCK_UNLOCKED (rwlock_t) { 0 }
+#define rwlock_init(x) do { *(x) = RW_LOCK_UNLOCKED; } while(0)
+
static inline void read_lock(rwlock_t *rw)
{
unsigned int tmp;
--- pgtable.h DELETED ---
--- semaphore.h DELETED ---
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:43
|
Update of /cvsroot/linux-mips/linux/drivers/net
In directory usw-pr-cvs1:/tmp/cvs-serv13849/drivers/net
Modified Files:
Config.in ioc3-eth.c
Removed Files:
declance.c gt96100eth.c gt96100eth.h ne.c
Log Message:
Synced to 2.4.10.
Index: Config.in
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/net/Config.in,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- Config.in 2001/10/02 18:35:48 1.11
+++ Config.in 2001/10/19 21:19:39 1.12
@@ -25,12 +25,13 @@
mainmenu_option next_comment
comment 'Ethernet (10 or 100Mbit)'
-
bool 'Ethernet (10 or 100Mbit)' CONFIG_NET_ETHERNET
if [ "$CONFIG_NET_ETHERNET" = "y" ]; then
- dep_bool ' ARM EBSA110 AM79C961A support' CONFIG_ARM_AM79C961A $CONFIG_ARCH_EBSA110
- if [ "$CONFIG_ARCH_ACORN" = "y" ]; then
- source drivers/acorn/net/Config.in
+ if [ "$CONFIG_ARM" = "y" ]; then
+ dep_bool ' ARM EBSA110 AM79C961A support' CONFIG_ARM_AM79C961A $CONFIG_ARCH_EBSA110
+ if [ "$CONFIG_ARCH_ACORN" = "y" ]; then
+ source drivers/acorn/net/Config.in
+ fi
fi
if [ "$CONFIG_PPC" = "y" ]; then
tristate ' MACE (Power Mac ethernet) support' CONFIG_MACE
@@ -39,7 +40,6 @@
fi
tristate ' BMAC (G3 ethernet) support' CONFIG_BMAC
tristate ' GMAC (G4/iBook ethernet) support' CONFIG_GMAC
- tristate ' Symbios 53c885 (Synergy ethernet) support' CONFIG_NCR885E
tristate ' National DP83902AV (Oak ethernet) support' CONFIG_OAKNET
fi
if [ "$CONFIG_ZORRO" = "y" ]; then
@@ -48,6 +48,9 @@
tristate ' A2065 support' CONFIG_A2065
tristate ' Hydra support' CONFIG_HYDRA
fi
+ if [ "$CONFIG_PARISC" = "y" ]; then
+ dep_tristate ' Lasi ethernet' CONFIG_LASI_82596 $CONFIG_GSC_LASI
+ fi
if [ "$CONFIG_MIPS_JAZZ" = "y" ]; then
tristate ' MIPS JAZZ onboard SONIC Ethernet support' CONFIG_MIPS_JAZZ_SONIC
fi
@@ -108,7 +111,7 @@
dep_tristate ' NI6510 support' CONFIG_NI65 $CONFIG_ISA
fi
if [ "$CONFIG_ISA" = "y" -o "$CONFIG_MCA" = "y" ]; then
- dep_tristate ' AT1700/1720 support (EXPERIMENTAL)' CONFIG_AT1700 $CONFIG_EXPERIMENTAL
+ dep_tristate ' AT1700/1720 support (EXPERIMENTAL)' CONFIG_AT1700 $CONFIG_EXPERIMENTAL
fi
if [ "$CONFIG_ISA" = "y" -o "$CONFIG_EISA" = "y" -o "$CONFIG_MCA" = "y" ]; then
tristate ' DEPCA, DE10x, DE200, DE201, DE202, DE422 support' CONFIG_DEPCA
@@ -127,6 +130,7 @@
fi
tristate ' HP PCLAN+ (27247B and 27252A) support' CONFIG_HPLAN_PLUS
tristate ' HP PCLAN (27245 and other 27xxx series) support' CONFIG_HPLAN
+ tristate ' LP486E on board Ethernet' CONFIG_LP486E
tristate ' ICL EtherTeam 16i/32 support' CONFIG_ETH16I
tristate ' NE2000/NE1000 support' CONFIG_NE2000
if [ "$CONFIG_OBSOLETE" = "y" ]; then
@@ -141,10 +145,10 @@
tristate ' NE/2 (ne2000 MCA version) support' CONFIG_NE2_MCA
tristate ' IBM LAN Adapter/A support' CONFIG_IBMLANA
fi
- if [ "$CONFIG_ISA" = "y" -o "$CONFIG_PCI" = "y" ]; then
- bool ' EISA, VLB, PCI and on board controllers' CONFIG_NET_PCI
+ if [ "$CONFIG_ISA" = "y" -o "$CONFIG_EISA" = "y" -o "$CONFIG_PCI" = "y" ]; then
+ bool ' EISA, VLB, PCI and on board controllers' CONFIG_NET_PCI
else
- define_bool CONFIG_NET_PCI n
+ define_bool CONFIG_NET_PCI n
fi
if [ "$CONFIG_NET_PCI" = "y" ]; then
dep_tristate ' AMD PCnet32 PCI support' CONFIG_PCNET32 $CONFIG_PCI
@@ -156,8 +160,10 @@
dep_tristate ' Apricot Xen-II on board Ethernet' CONFIG_APRICOT $CONFIG_ISA
dep_tristate ' CS89x0 support' CONFIG_CS89x0 $CONFIG_ISA
dep_tristate ' DECchip Tulip (dc21x4x) PCI support' CONFIG_TULIP $CONFIG_PCI
- dep_mbool ' New bus configuration (EXPERIMENTAL)' CONFIG_TULIP_MWI $CONFIG_EXPERIMENTAL $CONFIG_TULIP
- dep_mbool ' Use PCI shared mem for NIC registers' CONFIG_TULIP_MMIO $CONFIG_TULIP
+ if [ "$CONFIG_TULIP" = "y" -o "$CONFIG_TULIP" = "m" ]; then
+ dep_bool ' New bus configuration (EXPERIMENTAL)' CONFIG_TULIP_MWI $CONFIG_EXPERIMENTAL
+ bool ' Use PCI shared mem for NIC registers' CONFIG_TULIP_MMIO
+ fi
if [ "$CONFIG_PCI" = "y" -o "$CONFIG_EISA" = "y" ]; then
tristate ' Generic DECchip & DIGITAL EtherWORKS PCI/EISA' CONFIG_DE4X5
tristate ' Digi Intl. RightSwitch SE-X support' CONFIG_DGRS
@@ -224,15 +230,22 @@
comment 'Ethernet (1000 Mbit)'
dep_tristate 'Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit support' CONFIG_ACENIC $CONFIG_PCI
-dep_mbool ' Omit support for old Tigon I based AceNICs' CONFIG_ACENIC_OMIT_TIGON_I $CONFIG_ACENIC
+if [ "$CONFIG_ACENIC" != "n" ]; then
+ bool ' Omit support for old Tigon I based AceNICs' CONFIG_ACENIC_OMIT_TIGON_I
+fi
dep_tristate 'D-Link DL2000-based Gigabit Ethernet support' CONFIG_DL2K $CONFIG_PCI
dep_tristate 'MyriCOM Gigabit Ethernet support' CONFIG_MYRI_SBUS $CONFIG_SBUS
+dep_tristate 'National Semiconduct DP83820 support' CONFIG_NS83820 $CONFIG_PCI
dep_tristate 'Packet Engines Hamachi GNIC-II support' CONFIG_HAMACHI $CONFIG_PCI
dep_tristate 'Packet Engines Yellowfin Gigabit-NIC support (EXPERIMENTAL)' CONFIG_YELLOWFIN $CONFIG_PCI $CONFIG_EXPERIMENTAL
dep_tristate 'SysKonnect SK-98xx support' CONFIG_SK98LIN $CONFIG_PCI
endmenu
+if [ "$CONFIG_PPC_ISERIES" = "y" ]; then
+ dep_tristate 'iSeries Virtual Ethernet driver support' CONFIG_VETH $CONFIG_PPC_ISERIES
+fi
+
bool 'FDDI driver support' CONFIG_FDDI
if [ "$CONFIG_FDDI" = "y" ]; then
if [ "$CONFIG_PCI" = "y" -o "$CONFIG_EISA" = "y" ]; then
@@ -263,7 +276,9 @@
dep_tristate ' PPP support for sync tty ports' CONFIG_PPP_SYNC_TTY $CONFIG_PPP
dep_tristate ' PPP Deflate compression' CONFIG_PPP_DEFLATE $CONFIG_PPP
dep_tristate ' PPP BSD-Compress compression' CONFIG_PPP_BSDCOMP $CONFIG_PPP
- dep_tristate ' PPP over Ethernet (EXPERIMENTAL)' CONFIG_PPPOE $CONFIG_PPP $CONFIG_EXPERIMENTAL
+ if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then
+ dep_tristate ' PPP over Ethernet (EXPERIMENTAL)' CONFIG_PPPOE $CONFIG_PPP
+ fi
fi
tristate 'SLIP (serial line) support' CONFIG_SLIP
Index: ioc3-eth.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/net/ioc3-eth.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- ioc3-eth.c 2001/08/25 06:24:45 1.4
+++ ioc3-eth.c 2001/10/19 21:19:39 1.5
@@ -1820,3 +1820,5 @@
module_init(ioc3_init_module);
module_exit(ioc3_cleanup_module);
+
+MODULE_LICENSE("GPL");
--- declance.c DELETED ---
--- gt96100eth.c DELETED ---
--- gt96100eth.h DELETED ---
--- ne.c DELETED ---
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:42
|
Update of /cvsroot/linux-mips/linux/drivers/video
In directory usw-pr-cvs1:/tmp/cvs-serv13849/drivers/video
Modified Files:
Config.in Makefile epson1356fb.c fbgen2.c fbmem.c maxinefb.c
pmag-ba-fb.c pmagb-b-fb.c
Removed Files:
newport_con.c tx3912fb.c tx3912fb.h
Log Message:
Synced to 2.4.10.
Index: Config.in
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/video/Config.in,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- Config.in 2001/08/25 06:24:45 1.6
+++ Config.in 2001/10/19 21:19:39 1.7
@@ -73,6 +73,9 @@
bool ' S3 Trio display support' CONFIG_FB_S3TRIO
tristate ' VGA 16-color graphics console' CONFIG_FB_VGA16
fi
+ if [ "$CONFIG_PARISC" = "y" ]; then
+ bool ' Generic STI frame buffer device support' CONFIG_FB_STI
+ fi
if [ "$CONFIG_MAC" = "y" ]; then
define_bool CONFIG_FB_MAC y
bool ' Apple "valkyrie" display support' CONFIG_FB_VALKYRIE
@@ -101,14 +104,16 @@
bool ' CGsix (GX,TurboGX) support' CONFIG_FB_CGSIX
fi
fi
+ if [ "$CONFIG_SH_DREAMCAST" = "y" ]; then
+ tristate ' NEC PowerVR 2 display support' CONFIG_FB_PVR2
+ dep_bool ' Debug pvr2fb' CONFIG_FB_PVR2_DEBUG $CONFIG_FB_PVR2
+ fi
bool ' Epson 1355 framebuffer support' CONFIG_FB_E1355
if [ "$CONFIG_FB_E1355" = "y" ]; then
hex ' Register Base Address' CONFIG_E1355_REG_BASE a8000000
hex ' Framebuffer Base Address' CONFIG_E1355_FB_BASE a8200000
fi
- tristate ' NEC PowerVR 2 display support' CONFIG_FB_PVR2
- dep_bool ' Debug pvr2fb' CONFIG_FB_PVR2_DEBUG $CONFIG_FB_PVR2
- bool ' MediaQ Framebuffer support' CONFIG_FB_MQ200
+ bool ' MediaQ Framebuffer support' CONFIG_FB_MQ200
if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then
if [ "$CONFIG_PCI" != "n" ]; then
tristate ' Matrox acceleration (EXPERIMENTAL)' CONFIG_FB_MATROX
@@ -129,16 +134,25 @@
if [ "$CONFIG_FB_ATY" != "n" ]; then
bool ' Mach64 GX support (EXPERIMENTAL)' CONFIG_FB_ATY_GX
bool ' Mach64 CT/VT/GT/LT (incl. 3D RAGE) support' CONFIG_FB_ATY_CT
+ if [ "$CONFIG_FB_ATY_CT" = "y" ]; then
+ bool ' Sony Vaio C1VE 1024x480 LCD support' CONFIG_FB_ATY_CT_VAIO_LCD
+ fi
fi
- tristate ' ATI Rage 128 display support (EXPERIMENTAL)' CONFIG_FB_ATY128
+ tristate ' ATI Radeon display support (EXPERIMENTAL)' CONFIG_FB_RADEON
+ tristate ' ATI Rage128 display support (EXPERIMENTAL)' CONFIG_FB_ATY128
+ tristate ' SIS acceleration (EXPERIMENTAL)' CONFIG_FB_SIS
+ if [ "$CONFIG_FB_SIS" != "n" ]; then
+ bool ' SIS 630/540/730 support' CONFIG_FB_SIS_300
+ bool ' SIS 315H/315 support' CONFIG_FB_SIS_315
+ fi
tristate ' 3Dfx Banshee/Voodoo3 display support (EXPERIMENTAL)' CONFIG_FB_3DFX
- tristate ' SIS 630/540 display support (EXPERIMENTAL)' CONFIG_FB_SIS
- fi
- tristate ' Epson SED1356 framebuffer support' CONFIG_FB_E1356
- if [ "$CONFIG_MIPS_PB1000" != "n" -a "$CONFIG_FB_E1356" != "n" ]; then
- bool ' Use CRT on Pb1000 (J65)' CONFIG_PB1000_CRT
- bool ' Use Compsite NTSC on Pb1000 (J63)' CONFIG_PB1000_NTSC
- bool ' Use TFT Panel on Pb1000 (J64)' CONFIG_PB1000_TFT
+ tristate ' 3Dfx Voodoo Graphics (sst1) support (EXPERIMENTAL)' CONFIG_FB_VOODOO1
+ tristate ' Epson SED1356 framebuffer support' CONFIG_FB_E1356
+ if [ "$CONFIG_MIPS_PB1000" != "n" -a "$CONFIG_FB_E1356" != "n" ]; then
+ bool ' Use CRT on Pb1000 (J65)' CONFIG_PB1000_CRT
+ bool ' Use Compsite NTSC on Pb1000 (J63)' CONFIG_PB1000_NTSC
+ bool ' Use TFT Panel on Pb1000 (J64)' CONFIG_PB1000_TFT
+ fi
fi
fi
if [ "$ARCH" = "sparc" -o "$ARCH" = "sparc64" ]; then
@@ -257,12 +271,12 @@
"$CONFIG_FB_IGA" = "y" -o "$CONFIG_FB_MATROX" = "y" -o \
"$CONFIG_FB_CT65550" = "y" -o "$CONFIG_FB_PM2" = "y" -o \
"$CONFIG_FB_P9100" = "y" -o "$CONFIG_FB_ATY128" = "y" -o \
- "$CONFIG_FB_RIVA" = "y" -o \
+ "$CONFIG_FB_RIVA" = "y" -o "$CONFIG_FB_RADEON" = "y" -o \
"$CONFIG_FB_SGIVW" = "y" -o "$CONFIG_FB_CYBER2000" = "y" -o \
"$CONFIG_FB_SA1100" = "y" -o "$CONFIG_FB_3DFX" = "y" -o \
"$CONFIG_FB_PMAG_BA" = "y" -o "$CONFIG_FB_PMAGB_B" = "y" -o \
- "$CONFIG_FB_MAXINE" = "y" -o "$CONFIG_FB_MQ200" = "y" -o \
- "$CONFIG_FB_TX3912" = "y" -o "$CONFIG_FB_SIS" = "y" ]; then
+ "$CONFIG_FB_MAXINE" = "y" -o "$CONFIG_FB_TX3912" = "y" -o \
+ "$CONFIG_FB_SIS" = "y" -o "$CONFIG_FB_MQ200" = "y" ]; then
define_tristate CONFIG_FBCON_CFB8 y
else
if [ "$CONFIG_FB_ACORN" = "m" -o "$CONFIG_FB_ATARI" = "m" -o \
@@ -279,17 +293,17 @@
"$CONFIG_FB_P9100" = "m" -o "$CONFIG_FB_ATY128" = "m" -o \
"$CONFIG_FB_RIVA" = "m" -o "$CONFIG_FB_3DFX" = "m" -o \
"$CONFIG_FB_SGIVW" = "m" -o "$CONFIG_FB_CYBER2000" = "m" -o \
- "$CONFIG_FB_PMAG_BA" = "m" -o "CONFIG_FB_PMAGB_B" = "m" -o \
- "$CONFIG_FB_MAXINE" = "m" -o "$CONFIG_FB_MQ200" = "y" -o \
- "$CONFIG_FB_TX3912" = "m" -o \
- "$CONFIG_FB_SA1100" = "m" -o "$CONFIG_FB_SIS" = "m" ]; then
+ "$CONFIG_FB_PMAG_BA" = "m" -o "$CONFIG_FB_PMAGB_B" = "m" -o \
+ "$CONFIG_FB_MAXINE" = "m" -o "$CONFIG_FB_RADEON" = "m" -o \
+ "$CONFIG_FB_SA1100" = "m" -o "$CONFIG_FB_SIS" = "m" -o \
+ "$CONFIG_FB_TX3912" = "m" "$CONFIG_FB_MQ200" = "m" ]; then
define_tristate CONFIG_FBCON_CFB8 m
fi
fi
if [ "$CONFIG_FB_ATARI" = "y" -o "$CONFIG_FB_ATY" = "y" -o \
"$CONFIG_FB_MAC" = "y" -o "$CONFIG_FB_VESA" = "y" -o \
"$CONFIG_FB_VIRTUAL" = "y" -o "$CONFIG_FB_TBOX" = "y" -o \
- "$CONFIG_FB_Q40" = "y" -o "$CONFIG_FB_MQ200" = "y" -o \
+ "$CONFIG_FB_Q40" = "y" -o "$CONFIG_FB_RADEON" = "y" -o \
"$CONFIG_FB_CONTROL" = "y" -o "$CONFIG_FB_CLGEN" = "y" -o \
"$CONFIG_FB_VIRGE" = "y" -o "$CONFIG_FB_CYBER" = "y" -o \
"$CONFIG_FB_VALKYRIE" = "y" -o "$CONFIG_FB_PLATINUM" = "y" -o \
@@ -298,7 +312,8 @@
"$CONFIG_FB_RIVA" = "y" -o "$CONFIG_FB_ATY128" = "y" -o \
"$CONFIG_FB_CYBER2000" = "y" -o "$CONFIG_FB_3DFX" = "y" -o \
"$CONFIG_FB_SIS" = "y" -o "$CONFIG_FB_SA1100" = "y" -o \
- "$CONFIG_FB_PVR2" = "y" ]; then
+ "$CONFIG_FB_PVR2" = "y" -o "$CONFIG_FB_VOODOO1" = "y" -o \
+ "$CONFIG_FB_MQ200" = "y" ]; then
define_tristate CONFIG_FBCON_CFB16 y
else
if [ "$CONFIG_FB_ATARI" = "m" -o "$CONFIG_FB_ATY" = "m" -o \
@@ -312,23 +327,26 @@
"$CONFIG_FB_PM2" = "m" -o "$CONFIG_FB_SGIVW" = "m" -o \
"$CONFIG_FB_RIVA" = "m" -o "$CONFIG_FB_ATY128" = "m" -o \
"$CONFIG_FB_CYBER2000" = "m" -o "$CONFIG_FB_SIS" = "m" -o \
- "$CONFIG_FB_SA1100" = "m" -o "$CONFIG_FB_PVR2" = "m" -o \
- "$CONFIG_FB_MQ200" = "y" ]; then
+ "$CONFIG_FB_SA1100" = "m" -o "$CONFIG_FB_RADEON" = "m" -o \
+ "$CONFIG_FB_PVR2" = "m" -o "$CONFIG_FB_VOODOO1" = "m" -o \
+ "$CONFIG_FB_MQ200" = "m" ]; then
define_tristate CONFIG_FBCON_CFB16 m
fi
fi
if [ "$CONFIG_FB_ATY" = "y" -o "$CONFIG_FB_VIRTUAL" = "y" -o \
"$CONFIG_FB_CLGEN" = "y" -o "$CONFIG_FB_VESA" = "y" -o \
"$CONFIG_FB_MATROX" = "y" -o "$CONFIG_FB_PM2" = "y" -o \
- "$CONFIG_FB_ATY128" = "y" -o \
- "$CONFIG_FB_CYBER2000" = "y" -o "$CONFIG_FB_PVR2" = "y" ]; then
+ "$CONFIG_FB_ATY128" = "y" -o "$CONFIG_FB_RADEON" = "y" -o \
+ "$CONFIG_FB_CYBER2000" = "y" -o "$CONFIG_FB_PVR2" = "y" -o \
+ "$CONFIG_FB_VOODOO1" = "y" ]; then
define_tristate CONFIG_FBCON_CFB24 y
else
if [ "$CONFIG_FB_ATY" = "m" -o "$CONFIG_FB_VIRTUAL" = "m" -o \
"$CONFIG_FB_CLGEN" = "m" -o "$CONFIG_FB_VESA" = "m" -o \
"$CONFIG_FB_MATROX" = "m" -o "$CONFIG_FB_PM2" = "m" -o \
- "$CONFIG_FB_ATY128" = "m" -o \
- "$CONFIG_FB_CYBER2000" = "m" -o "$CONFIG_FB_PVR2" = "m" ]; then
+ "$CONFIG_FB_ATY128" = "m" -o "$CONFIG_FB_RADEON" = "m" -o \
+ "$CONFIG_FB_CYBER2000" = "m" -o "$CONFIG_FB_PVR2" = "m" -o \
+ "$CONFIG_FB_VOODOO1" = "m" ]; then
define_tristate CONFIG_FBCON_CFB24 m
fi
fi
@@ -339,8 +357,9 @@
"$CONFIG_FB_MATROX" = "y" -o "$CONFIG_FB_PM2" = "y" -o \
"$CONFIG_FB_RIVA" = "y" -o "$CONFIG_FB_ATY128" = "y" -o \
"$CONFIG_FB_FM2" = "y" -o "$CONFIG_FB_SGIVW" = "y" -o \
+ "$CONFIG_FB_RADEON" = "y" -o "$CONFIG_FB_PVR2" = "y" -o \
"$CONFIG_FB_3DFX" = "y" -o "$CONFIG_FB_SIS" = "y" -o \
- "$CONFIG_FB_PVR2" = "y" ]; then
+ "$CONFIG_FB_VOODOO1" = "y" ]; then
define_tristate CONFIG_FBCON_CFB32 y
else
if [ "$CONFIG_FB_ATARI" = "m" -o "$CONFIG_FB_ATY" = "m" -o \
@@ -349,9 +368,9 @@
"$CONFIG_FB_TGA" = "m" -o "$CONFIG_FB_PLATINUM" = "m" -o \
"$CONFIG_FB_MATROX" = "m" -o "$CONFIG_FB_PM2" = "m" -o \
"$CONFIG_FB_RIVA" = "m" -o "$CONFIG_FB_ATY128" = "m" -o \
- "$CONFIG_FB_3DFX" = "m" -o \
+ "$CONFIG_FB_3DFX" = "m" -o "$CONFIG_FB_RADEON" = "m" -o \
"$CONFIG_FB_SGIVW" = "m" -o "$CONFIG_FB_SIS" = "m" -o \
- "$CONFIG_FB_PVR2" = "m" ]; then
+ "$CONFIG_FB_PVR2" = "m" -o "$CONFIG_FB_VOODOO1" = "m" ]; then
define_tristate CONFIG_FBCON_CFB32 m
fi
fi
@@ -397,6 +416,9 @@
if [ "$CONFIG_FB_HGA" = "m" ]; then
define_tristate CONFIG_FBCON_HGA m
fi
+ fi
+ if [ "$CONFIG_FB_STI" = "y" ]; then
+ define_tristate CONFIG_FBCON_STI y
fi
fi
bool ' Support only 8 pixels wide fonts' CONFIG_FBCON_FONTWIDTH8_ONLY
Index: Makefile
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/video/Makefile,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- Makefile 2001/08/25 06:24:45 1.5
+++ Makefile 2001/10/19 21:19:39 1.6
@@ -22,6 +22,7 @@
obj-$(CONFIG_DUMMY_CONSOLE) += dummycon.o
obj-$(CONFIG_SGI_NEWPORT_CONSOLE) += newport_con.o
obj-$(CONFIG_PROM_CONSOLE) += promcon.o promcon_tbl.o
+obj-$(CONFIG_STI_CONSOLE) += sticon.o sticon-bmode.o sticore.o
obj-$(CONFIG_VGA_CONSOLE) += vgacon.o
obj-$(CONFIG_MDA_CONSOLE) += mdacon.o
@@ -47,6 +48,7 @@
obj-$(CONFIG_FB_Q40) += q40fb.o
obj-$(CONFIG_FB_ATARI) += atafb.o
obj-$(CONFIG_FB_ATY128) += aty128fb.o
+obj-$(CONFIG_FB_RADEON) += radeonfb.o
obj-$(CONFIG_FB_IGA) += igafb.o
obj-$(CONFIG_FB_CONTROL) += controlfb.o
obj-$(CONFIG_FB_PLATINUM) += platinumfb.o
@@ -77,6 +79,7 @@
obj-$(CONFIG_FB_CGFOURTEEN) += cgfourteenfb.o sbusfb.o
obj-$(CONFIG_FB_P9100) += p9100fb.o sbusfb.o
obj-$(CONFIG_FB_LEO) += leofb.o sbusfb.o
+obj-$(CONFIG_FB_STI) += stifb.o sticore.o fbgen.o
obj-$(CONFIG_FB_PMAG_BA) += pmag-ba-fb.o
obj-$(CONFIG_FB_PMAGB_B) += pmagb-b-fb.o
obj-$(CONFIG_FB_MAXINE) += maxinefb.o
@@ -112,6 +115,7 @@
obj-$(CONFIG_FB_E1355) += epson1355fb.o fbgen.o
obj-$(CONFIG_FB_E1356) += epson1356fb.o
obj-$(CONFIG_FB_PVR2) += pvr2fb.o
+obj-$(CONFIG_FB_VOODOO1) += sstfb.o
# Generic Low Level Drivers
@@ -131,6 +135,7 @@
obj-$(CONFIG_FBCON_MFB) += fbcon-mfb.o
obj-$(CONFIG_FBCON_VGA) += fbcon-vga.o
obj-$(CONFIG_FBCON_HGA) += fbcon-hga.o
+obj-$(CONFIG_FBCON_STI) += fbcon-sti.o
include $(TOPDIR)/Rules.make
Index: epson1356fb.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/video/epson1356fb.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- epson1356fb.c 2001/10/10 19:21:06 1.6
+++ epson1356fb.c 2001/10/19 21:19:39 1.7
@@ -40,7 +40,7 @@
#include <linux/string.h>
#include <linux/mm.h>
#include <linux/tty.h>
-#include <linux/slab.h>
+#include <linux/malloc.h>
#include <linux/vmalloc.h>
#include <linux/delay.h>
#include <linux/interrupt.h>
Index: fbgen2.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/video/fbgen2.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- fbgen2.c 2001/06/29 21:31:00 1.1
+++ fbgen2.c 2001/10/19 21:19:39 1.2
@@ -15,7 +15,7 @@
#include <linux/string.h>
#include <linux/tty.h>
#include <linux/fb.h>
-#include <linux/slab.h>
+#include <linux/malloc.h>
#include <asm/uaccess.h>
#include <asm/io.h>
Index: fbmem.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/video/fbmem.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- fbmem.c 2001/09/25 03:36:35 1.7
+++ fbmem.c 2001/10/19 21:19:39 1.8
@@ -20,7 +20,7 @@
#include <linux/smp_lock.h>
#include <linux/kernel.h>
#include <linux/major.h>
-#include <linux/slab.h>
+#include <linux/malloc.h>
#include <linux/mman.h>
#include <linux/tty.h>
#include <linux/console.h>
@@ -281,6 +281,9 @@
#ifdef CONFIG_FB_TX3912
{ "tx3912", tx3912fb_init, NULL },
#endif
+#ifdef CONFIG_FB_TX3912
+ { "tx3912", tx3912fb_init, NULL },
+#endif
#ifdef CONFIG_FB_E1355
{ "e1355fb", e1355fb_init, e1355fb_setup },
#endif
@@ -322,6 +325,18 @@
#endif
+#ifdef CONFIG_FB_PMAG_BA
+ { "pmagbafb", pmagbafb_init, pmagbafb_setup },
+#endif
+#ifdef CONFIG_FB_PMAGB_B
+ { "pmagbbfb", pmagbbfb_init, pmagbbfb_setup },
+#endif
+
+#ifdef CONFIG_FB_MAXINE
+ { "maxinefb", maxinefb_init, maxinefb_setup },
+#endif
+
+
#ifdef CONFIG_FB_VIRTUAL
/*
* Vfb must be last to avoid that it becomes your primary display if
@@ -624,7 +639,7 @@
pgprot_val(vma->vm_page_prot) |= _PAGE_NO_CACHE|_PAGE_GUARDED;
#elif defined(__alpha__)
/* Caching is off in the I/O space quadrant by design. */
-#elif defined(__i386__)
+#elif defined(__i386__) || defined(__x86_64__)
if (boot_cpu_data.x86 > 3)
pgprot_val(vma->vm_page_prot) |= _PAGE_PCD;
#elif defined(__arm__) || defined(__mips__)
Index: maxinefb.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/video/maxinefb.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- maxinefb.c 2001/09/28 16:27:59 1.2
+++ maxinefb.c 2001/10/19 21:19:39 1.3
@@ -382,6 +382,7 @@
}
#ifdef MODULE
+MODULE_LICENSE("GPL");
module_init(maxinefb_init);
#endif
module_exit(maxinefb_exit);
Index: pmag-ba-fb.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/video/pmag-ba-fb.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- pmag-ba-fb.c 2001/09/28 16:27:59 1.4
+++ pmag-ba-fb.c 2001/10/19 21:19:39 1.5
@@ -27,7 +27,7 @@
#include <linux/timer.h>
#include <linux/mm.h>
#include <linux/tty.h>
-#include <linux/malloc.h>
+#include <linux/slab.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/fb.h>
@@ -424,3 +424,5 @@
return -ENODEV;
}
}
+
+MODULE_LICENSE("GPL");
Index: pmagb-b-fb.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/video/pmagb-b-fb.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- pmagb-b-fb.c 2001/09/28 16:27:59 1.4
+++ pmagb-b-fb.c 2001/10/19 21:19:39 1.5
@@ -30,7 +30,7 @@
#include <linux/timer.h>
#include <linux/mm.h>
#include <linux/tty.h>
-#include <linux/malloc.h>
+#include <linux/slab.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/fb.h>
@@ -427,3 +427,5 @@
return -ENODEV;
}
}
+
+MODULE_LICENSE("GPL");
--- newport_con.c DELETED ---
--- tx3912fb.c DELETED ---
--- tx3912fb.h DELETED ---
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:42
|
Update of /cvsroot/linux-mips/linux/fs/partitions In directory usw-pr-cvs1:/tmp/cvs-serv13849/fs/partitions Removed Files: check.c Log Message: Synced to 2.4.10. --- check.c DELETED --- |
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:42
|
Update of /cvsroot/linux-mips/linux/drivers/sound
In directory usw-pr-cvs1:/tmp/cvs-serv13849/drivers/sound
Modified Files:
Config.in Makefile au1000.c
Removed Files:
ite8172.c
Log Message:
Synced to 2.4.10.
Index: Config.in
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/sound/Config.in,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- Config.in 2001/09/25 03:36:35 1.7
+++ Config.in 2001/10/19 21:19:39 1.8
@@ -206,3 +206,13 @@
fi
dep_tristate ' TV card (bt848) mixer support' CONFIG_SOUND_TVMIXER $CONFIG_SOUND $CONFIG_I2C
+
+# A cross directory dependence. The sound modules will need gameport.o compiled in,
+# but it resides in the drivers/char/joystick directory. This define_tristate takes
+# care of that. --Vojtech
+
+if [ "$CONFIG_INPUT_GAMEPORT" != "n" ]; then
+ if [ "$CONFIG_SOUND_ESSSOLO1" = "y" -o "$CONFIG_SOUND_ES1370" = "y" -o "$CONFIG_SOUND_ES1371" = "y" -o "$CONFIG_SOUND_SONICVIBES" = "y" ]; then
+ define_tristate CONFIG_INPUT_GAMEPORT y
+ fi
+fi
Index: Makefile
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/sound/Makefile,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- Makefile 2001/09/25 03:36:35 1.7
+++ Makefile 2001/10/19 21:19:39 1.8
@@ -70,10 +70,11 @@
obj-$(CONFIG_SOUND_MAESTRO) += maestro.o
obj-$(CONFIG_SOUND_MAESTRO3) += maestro3.o ac97_codec.o
obj-$(CONFIG_SOUND_TRIDENT) += trident.o ac97_codec.o
-obj-$(CONFIG_SOUND_RME96XX) += rme96xx.o
+obj-$(CONFIG_SOUND_EMU10K1) += ac97_codec.o
+obj-$(CONFIG_SOUND_RME96XX) += rme96xx.o
obj-$(CONFIG_SOUND_BT878) += btaudio.o
-
obj-$(CONFIG_SOUND_EMU10K1) += ac97_codec.o
+
ifeq ($(CONFIG_MIDI_EMU10K1),y)
obj-$(CONFIG_SOUND_EMU10K1) += sound.o
endif
Index: au1000.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/sound/au1000.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- au1000.c 2001/09/25 03:36:35 1.3
+++ au1000.c 2001/10/19 21:19:39 1.4
@@ -92,62 +92,62 @@
#define AC97_EXT_DACS (AC97_EXTID_SDAC | AC97_EXTID_CDAC | AC97_EXTID_LDAC)
/* Boot options */
-static int vra = 0; // 0 = no VRA, 1 = use VRA if codec supports it
+static int vra = 0; // 0 = no VRA, 1 = use VRA if codec supports it
/* --------------------------------------------------------------------- */
struct au1000_state {
- /* soundcore stuff */
[...3238 lines suppressed...]
- return 0;
+ if (!options || !*options)
+ return 0;
for (this_opt = strtok(options, ","); this_opt;
this_opt = strtok(NULL, ",")) {
- if (!strncmp(this_opt, "vra", 3)) {
- vra = 1;
+ if (!strncmp(this_opt, "vra", 3)) {
+ vra = 1;
+ }
}
- }
-
- return 1;
+
+ return 1;
}
__setup("au1000_audio=", au1000_setup);
--- ite8172.c DELETED ---
|
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:42
|
Update of /cvsroot/linux-mips/linux/drivers/pci In directory usw-pr-cvs1:/tmp/cvs-serv13849/drivers/pci Modified Files: Makefile Log Message: Synced to 2.4.10. Index: Makefile =================================================================== RCS file: /cvsroot/linux-mips/linux/drivers/pci/Makefile,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- Makefile 2001/10/07 05:40:22 1.5 +++ Makefile 2001/10/19 21:19:39 1.6 @@ -25,6 +25,7 @@ # obj-$(CONFIG_ALPHA) += setup-bus.o setup-irq.o obj-$(CONFIG_ARM) += setup-bus.o setup-irq.o +obj-$(CONFIG_PARISC) += setup-bus.o obj-$(CONFIG_SUPERH) += setup-bus.o setup-irq.o obj-$(CONFIG_ALL_PPC) += setup-bus.o obj-$(CONFIG_SGI_IP27) += setup-irq.o |
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:42
|
Update of /cvsroot/linux-mips/linux/drivers/media/video In directory usw-pr-cvs1:/tmp/cvs-serv13849/drivers/media/video Removed Files: vino.h Log Message: Synced to 2.4.10. --- vino.h DELETED --- |
|
From: James S. <jsi...@us...> - 2001-10-19 21:19:42
|
Update of /cvsroot/linux-mips/linux/drivers/scsi
In directory usw-pr-cvs1:/tmp/cvs-serv13849/drivers/scsi
Modified Files:
sym53c8xx_defs.h
Removed Files:
Config.in Makefile dec_esp.c sgiwd93.c
Log Message:
Synced to 2.4.10.
Index: sym53c8xx_defs.h
===================================================================
RCS file: /cvsroot/linux-mips/linux/drivers/scsi/sym53c8xx_defs.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- sym53c8xx_defs.h 2001/08/25 02:19:28 1.2
+++ sym53c8xx_defs.h 2001/10/19 21:19:39 1.3
@@ -468,7 +468,7 @@
* We want to be paranoid for ppc and ia64. :)
*/
-#if defined __i386__
+#if defined(__i386__) || defined(__x86_64__)
#define MEMORY_BARRIER() do { ; } while(0)
#elif defined __powerpc__
#define MEMORY_BARRIER() __asm__ volatile("eieio; sync" : : : "memory")
--- Config.in DELETED ---
--- Makefile DELETED ---
--- dec_esp.c DELETED ---
--- sgiwd93.c DELETED ---
|
|
From: James S. <jsi...@us...> - 2001-10-18 18:08:20
|
Update of /cvsroot/linux-mips/linux/arch/mips/kernel
In directory usw-pr-cvs1:/tmp/cvs-serv704
Modified Files:
setup.c
Log Message:
Glue initrd. This method has it's problems so we might have to change this once more but until then.
Index: setup.c
===================================================================
RCS file: /cvsroot/linux-mips/linux/arch/mips/kernel/setup.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- setup.c 2001/10/17 06:33:14 1.20
+++ setup.c 2001/10/18 18:08:17 1.21
@@ -554,6 +554,8 @@
unsigned long bootmap_size;
unsigned long start_pfn, max_pfn, first_usable_pfn;
+ unsigned long tmp;
+ unsigned long* initrd_header;
int i;
@@ -695,11 +697,23 @@
#define PFN_DOWN(x) ((x) >> PAGE_SHIFT)
#define PFN_PHYS(x) ((x) << PAGE_SHIFT)
+#ifdef CONFIG_BLK_DEV_INITRD
+ tmp = (((unsigned long)&_end + PAGE_SIZE-1) & PAGE_MASK) - 8;
+ if (tmp < (unsigned long)&_end)
+ tmp += PAGE_SIZE;
+ initrd_header = (unsigned long *)tmp;
+ if (initrd_header[0] == 0x494E5244) {
+ initrd_start = (unsigned long)&initrd_header[2];
+ initrd_end = initrd_start + initrd_header[1];
+ }
+ start_pfn = PFN_UP(__pa((&_end)+(initrd_end - initrd_start) + PAGE_SIZE));
+#else
/*
* Partially used pages are not usable - thus
* we are rounding upwards.
*/
start_pfn = PFN_UP(__pa(&_end));
+#endif /* CONFIG_BLK_DEV_INITRD */
/* Find the highest page frame number we have available. */
max_pfn = 0;
|
|
From: James S. <jsi...@us...> - 2001-10-18 18:06:44
|
Update of /cvsroot/linux-mips/linux/include/asm-mips In directory usw-pr-cvs1:/tmp/cvs-serv352 Modified Files: keyboard.h Log Message: Fix Magic SysRq. Index: keyboard.h =================================================================== RCS file: /cvsroot/linux-mips/linux/include/asm-mips/keyboard.h,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- keyboard.h 2001/09/25 03:47:07 1.5 +++ keyboard.h 2001/10/18 18:06:42 1.6 @@ -88,6 +88,9 @@ extern void kbd_init_hw(void); extern unsigned char *kbd_sysrq_xlate; +extern unsigned char kbd_sysrq_key; +#define SYSRQ_KEY kbd_sysrq_key + #endif #endif /* __KERNEL */ |