PERFORCE change 107237 for review
Matt Jacob
mjacob at FreeBSD.org
Tue Oct 3 21:22:05 PDT 2006
http://perforce.freebsd.org/chv.cgi?CH=107237
Change 107237 by mjacob at newisp on 2006/10/04 04:21:19
IFC
Affected files ...
.. //depot/projects/newisp/amd64/amd64/local_apic.c#5 integrate
.. //depot/projects/newisp/amd64/amd64/machdep.c#3 integrate
.. //depot/projects/newisp/amd64/include/clock.h#2 integrate
.. //depot/projects/newisp/amd64/isa/clock.c#2 integrate
.. //depot/projects/newisp/amd64/linux32/linux32_machdep.c#3 integrate
.. //depot/projects/newisp/arm/include/clock.h#2 integrate
.. //depot/projects/newisp/boot/common/merge_help.awk#2 integrate
.. //depot/projects/newisp/boot/common/panic.c#2 integrate
.. //depot/projects/newisp/boot/ficl/Makefile#2 integrate
.. //depot/projects/newisp/boot/forth/loader.conf#2 integrate
.. //depot/projects/newisp/boot/i386/Makefile.inc#2 integrate
.. //depot/projects/newisp/boot/i386/btx/btx/btx.S#2 integrate
.. //depot/projects/newisp/boot/i386/libi386/biospci.c#2 integrate
.. //depot/projects/newisp/boot/i386/libi386/biossmap.c#2 integrate
.. //depot/projects/newisp/boot/i386/libi386/bootinfo64.c#2 integrate
.. //depot/projects/newisp/boot/i386/libi386/elf64_freebsd.c#2 integrate
.. //depot/projects/newisp/boot/i386/libi386/libi386.h#2 integrate
.. //depot/projects/newisp/boot/i386/loader/help.i386#2 integrate
.. //depot/projects/newisp/cam/cam_periph.c#2 integrate
.. //depot/projects/newisp/compat/freebsd32/freebsd32_misc.c#3 integrate
.. //depot/projects/newisp/compat/freebsd32/freebsd32_proto.h#7 integrate
.. //depot/projects/newisp/compat/freebsd32/freebsd32_syscall.h#7 integrate
.. //depot/projects/newisp/compat/freebsd32/freebsd32_syscalls.c#7 integrate
.. //depot/projects/newisp/compat/freebsd32/freebsd32_sysent.c#7 integrate
.. //depot/projects/newisp/compat/freebsd32/syscalls.master#7 integrate
.. //depot/projects/newisp/conf/NOTES#6 integrate
.. //depot/projects/newisp/conf/files#5 integrate
.. //depot/projects/newisp/dev/aic/aic_pccard.c#2 integrate
.. //depot/projects/newisp/dev/atkbdc/atkbd.c#2 integrate
.. //depot/projects/newisp/dev/bge/if_bge.c#7 integrate
.. //depot/projects/newisp/dev/bge/if_bgereg.h#4 integrate
.. //depot/projects/newisp/dev/digi/digi.c#2 integrate
.. //depot/projects/newisp/dev/em/if_em.c#9 integrate
.. //depot/projects/newisp/dev/kbdmux/kbdmux.c#4 integrate
.. //depot/projects/newisp/dev/mfi/mfi.c#6 integrate
.. //depot/projects/newisp/dev/mfi/mfi_debug.c#2 integrate
.. //depot/projects/newisp/dev/sound/driver.c#2 integrate
.. //depot/projects/newisp/dev/sound/midi/sequencer.c#2 integrate
.. //depot/projects/newisp/dev/sound/pci/ak452x.c#2 delete
.. //depot/projects/newisp/dev/sound/pci/ak452x.h#2 delete
.. //depot/projects/newisp/dev/sound/pci/atiixp.c#2 integrate
.. //depot/projects/newisp/dev/sound/pci/atiixp.h#2 integrate
.. //depot/projects/newisp/dev/sound/pci/envy24.c#2 integrate
.. //depot/projects/newisp/dev/sound/pci/envy24ht.c#1 branch
.. //depot/projects/newisp/dev/sound/pci/envy24ht.h#1 branch
.. //depot/projects/newisp/dev/sound/pci/hda/hda_reg.h#1 branch
.. //depot/projects/newisp/dev/sound/pci/hda/hdac.c#1 branch
.. //depot/projects/newisp/dev/sound/pci/hda/hdac.h#1 branch
.. //depot/projects/newisp/dev/sound/pci/hda/hdac_private.h#1 branch
.. //depot/projects/newisp/dev/sound/pci/hda/hdac_reg.h#1 branch
.. //depot/projects/newisp/dev/sound/pci/spicds.c#1 branch
.. //depot/projects/newisp/dev/sound/pci/spicds.h#1 branch
.. //depot/projects/newisp/dev/sound/pcm/ac97.c#2 integrate
.. //depot/projects/newisp/dev/sound/pcm/ac97_patch.c#2 integrate
.. //depot/projects/newisp/dev/sound/pcm/ac97_patch.h#2 integrate
.. //depot/projects/newisp/dev/sound/pcm/channel.c#3 integrate
.. //depot/projects/newisp/dev/sound/pcm/dsp.c#3 integrate
.. //depot/projects/newisp/dev/sound/pcm/mixer.c#3 integrate
.. //depot/projects/newisp/dev/sound/pcm/mixer.h#3 integrate
.. //depot/projects/newisp/dev/sound/pcm/sound.h#3 integrate
.. //depot/projects/newisp/dev/sound/usb/uaudio_pcm.c#2 integrate
.. //depot/projects/newisp/dev/syscons/scvidctl.c#2 integrate
.. //depot/projects/newisp/dev/syscons/syscons.c#3 integrate
.. //depot/projects/newisp/dev/twa/tw_osl_includes.h#2 integrate
.. //depot/projects/newisp/dev/twa/tw_osl_inline.h#2 integrate
.. //depot/projects/newisp/dev/twa/tw_osl_share.h#2 integrate
.. //depot/projects/newisp/dev/uart/uart_kbd_sun.c#3 integrate
.. //depot/projects/newisp/dev/ubsec/ubsec.c#2 integrate
.. //depot/projects/newisp/dev/usb/ehci.c#3 integrate
.. //depot/projects/newisp/dev/usb/ohci.c#3 integrate
.. //depot/projects/newisp/dev/usb/ukbd.c#3 integrate
.. //depot/projects/newisp/dev/usb/usb_subr.c#4 integrate
.. //depot/projects/newisp/dev/usb/usbdi.c#3 integrate
.. //depot/projects/newisp/dev/vkbd/vkbd.c#2 integrate
.. //depot/projects/newisp/fs/msdosfs/msdosfs_conv.c#2 integrate
.. //depot/projects/newisp/fs/nwfs/nwfs_subr.c#2 integrate
.. //depot/projects/newisp/fs/procfs/procfs_ioctl.c#2 integrate
.. //depot/projects/newisp/geom/eli/g_eli.c#2 integrate
.. //depot/projects/newisp/geom/eli/g_eli_ctl.c#3 integrate
.. //depot/projects/newisp/geom/label/g_label_msdosfs.c#2 integrate
.. //depot/projects/newisp/geom/label/g_label_msdosfs.h#2 integrate
.. //depot/projects/newisp/geom/nop/g_nop.h#3 integrate
.. //depot/projects/newisp/geom/raid3/g_raid3.c#4 integrate
.. //depot/projects/newisp/i386/bios/apm.c#2 integrate
.. //depot/projects/newisp/i386/i386/local_apic.c#5 integrate
.. //depot/projects/newisp/i386/i386/machdep.c#3 integrate
.. //depot/projects/newisp/i386/ibcs2/ibcs2_xenix.c#2 integrate
.. //depot/projects/newisp/i386/include/clock.h#2 integrate
.. //depot/projects/newisp/i386/isa/clock.c#2 integrate
.. //depot/projects/newisp/i386/isa/pmtimer.c#2 integrate
.. //depot/projects/newisp/ia64/ia64/clock.c#2 integrate
.. //depot/projects/newisp/ia64/include/clock.h#2 integrate
.. //depot/projects/newisp/kern/init_sysent.c#6 integrate
.. //depot/projects/newisp/kern/kern_lock.c#2 integrate
.. //depot/projects/newisp/kern/kern_proc.c#4 integrate
.. //depot/projects/newisp/kern/kern_time.c#2 integrate
.. //depot/projects/newisp/kern/subr_clock.c#2 integrate
.. //depot/projects/newisp/kern/subr_rtc.c#1 branch
.. //depot/projects/newisp/kern/sys_generic.c#2 integrate
.. //depot/projects/newisp/kern/syscalls.c#6 integrate
.. //depot/projects/newisp/kern/syscalls.master#6 integrate
.. //depot/projects/newisp/kern/systrace_args.c#6 integrate
.. //depot/projects/newisp/kern/tty.c#5 integrate
.. //depot/projects/newisp/kern/tty_pts.c#2 integrate
.. //depot/projects/newisp/kern/tty_pty.c#3 integrate
.. //depot/projects/newisp/kern/tty_tty.c#3 integrate
.. //depot/projects/newisp/kern/vfs_bio.c#2 integrate
.. //depot/projects/newisp/kern/vfs_mount.c#4 integrate
.. //depot/projects/newisp/kern/vfs_subr.c#4 integrate
.. //depot/projects/newisp/modules/digi/digi/Makefile#2 integrate
.. //depot/projects/newisp/modules/if_tap/Makefile#2 integrate
.. //depot/projects/newisp/modules/kbdmux/Makefile#2 integrate
.. //depot/projects/newisp/modules/libalias/Makefile#3 integrate
.. //depot/projects/newisp/modules/libalias/modules/Makefile#2 integrate
.. //depot/projects/newisp/modules/procfs/Makefile#2 integrate
.. //depot/projects/newisp/modules/sound/driver/Makefile#2 integrate
.. //depot/projects/newisp/modules/sound/driver/ak452x/Makefile#2 delete
.. //depot/projects/newisp/modules/sound/driver/envy24/Makefile#2 integrate
.. //depot/projects/newisp/modules/sound/driver/envy24ht/Makefile#1 branch
.. //depot/projects/newisp/modules/sound/driver/hda/Makefile#1 branch
.. //depot/projects/newisp/modules/sound/driver/spicds/Makefile#1 branch
.. //depot/projects/newisp/modules/ukbd/Makefile#2 integrate
.. //depot/projects/newisp/modules/vkbd/Makefile#2 integrate
.. //depot/projects/newisp/net/bridgestp.c#2 integrate
.. //depot/projects/newisp/net/if_tap.c#2 integrate
.. //depot/projects/newisp/net/if_tap.h#2 integrate
.. //depot/projects/newisp/netgraph/atm/ccatm/ng_ccatm.c#2 integrate
.. //depot/projects/newisp/netinet/in.c#2 integrate
.. //depot/projects/newisp/netinet/in_var.h#3 integrate
.. //depot/projects/newisp/netinet/ip_mroute.c#2 integrate
.. //depot/projects/newisp/netinet/ip_mroute.h#2 integrate
.. //depot/projects/newisp/netinet/ip_output.c#5 integrate
.. //depot/projects/newisp/netinet/tcp_output.c#4 integrate
.. //depot/projects/newisp/netinet/tcp_subr.c#6 integrate
.. //depot/projects/newisp/netinet6/in6_ifattach.c#2 integrate
.. //depot/projects/newisp/netinet6/ip6_mroute.h#2 integrate
.. //depot/projects/newisp/netinet6/nd6.c#3 integrate
.. //depot/projects/newisp/nfsclient/nfs_vfsops.c#4 integrate
.. //depot/projects/newisp/pc98/cbus/clock.c#2 integrate
.. //depot/projects/newisp/pc98/cbus/pckbd.c#2 integrate
.. //depot/projects/newisp/pc98/pc98/machdep.c#2 integrate
.. //depot/projects/newisp/pci/agp_i810.c#2 integrate
.. //depot/projects/newisp/powerpc/include/clock.h#2 integrate
.. //depot/projects/newisp/powerpc/powerpc/clock.c#2 integrate
.. //depot/projects/newisp/security/audit/audit.c#5 integrate
.. //depot/projects/newisp/security/audit/audit_bsm.c#6 integrate
.. //depot/projects/newisp/security/audit/audit_syscalls.c#4 integrate
.. //depot/projects/newisp/security/mac/mac_framework.h#1 branch
.. //depot/projects/newisp/sparc64/include/clock.h#2 integrate
.. //depot/projects/newisp/sys/buf.h#2 integrate
.. //depot/projects/newisp/sys/clock.h#2 integrate
.. //depot/projects/newisp/sys/consio.h#2 integrate
.. //depot/projects/newisp/sys/digiio.h#2 integrate
.. //depot/projects/newisp/sys/ioccom.h#2 integrate
.. //depot/projects/newisp/sys/kbio.h#2 integrate
.. //depot/projects/newisp/sys/kernel.h#2 integrate
.. //depot/projects/newisp/sys/lockmgr.h#2 integrate
.. //depot/projects/newisp/sys/mount.h#4 integrate
.. //depot/projects/newisp/sys/param.h#6 integrate
.. //depot/projects/newisp/sys/pioctl.h#2 integrate
.. //depot/projects/newisp/sys/proc.h#2 integrate
.. //depot/projects/newisp/sys/syscall.h#6 integrate
.. //depot/projects/newisp/sys/syscall.mk#6 integrate
.. //depot/projects/newisp/sys/sysproto.h#6 integrate
.. //depot/projects/newisp/sys/systm.h#3 integrate
.. //depot/projects/newisp/sys/time.h#2 integrate
.. //depot/projects/newisp/sys/ttycom.h#2 integrate
.. //depot/projects/newisp/ufs/ufs/ufs_vnops.c#2 integrate
.. //depot/projects/newisp/vm/vm_page.c#3 integrate
Differences ...
==== //depot/projects/newisp/amd64/amd64/local_apic.c#5 (text+ko) ====
@@ -32,7 +32,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.29 2006/09/11 20:12:42 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.31 2006/09/27 22:09:35 sobomax Exp $");
#include "opt_hwpmc_hooks.h"
@@ -613,13 +613,17 @@
/* Send EOI first thing. */
lapic_eoi();
-#ifdef SMP
+#if defined(SMP) && !defined(SCHED_ULE)
/*
* Don't do any accounting for the disabled HTT cores, since it
* will provide misleading numbers for the userland.
*
* No locking is necessary here, since even if we loose the race
* when hlt_cpus_mask changes it is not a big deal, really.
+ *
+ * Don't do that for ULE, since ULE doesn't consider hlt_cpus_mask
+ * and unlike other schedulers it actually schedules threads to
+ * those CPUs.
*/
if ((hlt_cpus_mask & (1 << PCPU_GET(cpuid))) != 0)
return;
==== //depot/projects/newisp/amd64/amd64/machdep.c#3 (text+ko) ====
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.652 2006/09/07 15:03:02 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.654 2006/10/02 15:42:01 phk Exp $");
#include "opt_atalk.h"
#include "opt_atpic.h"
@@ -61,6 +61,7 @@
#include <sys/buf.h>
#include <sys/bus.h>
#include <sys/callout.h>
+#include <sys/clock.h>
#include <sys/cons.h>
#include <sys/cpu.h>
#include <sys/eventhandler.h>
@@ -630,26 +631,6 @@
load_cr0(cr0);
}
-static int
-sysctl_machdep_adjkerntz(SYSCTL_HANDLER_ARGS)
-{
- int error;
- error = sysctl_handle_int(oidp, oidp->oid_arg1, oidp->oid_arg2,
- req);
- if (!error && req->newptr)
- resettodr();
- return (error);
-}
-
-SYSCTL_PROC(_machdep, OID_AUTO, adjkerntz, CTLTYPE_INT|CTLFLAG_RW,
- &adjkerntz, 0, sysctl_machdep_adjkerntz, "I", "");
-
-SYSCTL_INT(_machdep, OID_AUTO, disable_rtc_set,
- CTLFLAG_RW, &disable_rtc_set, 0, "");
-
-SYSCTL_INT(_machdep, OID_AUTO, wall_cmos_clock,
- CTLFLAG_RW, &wall_cmos_clock, 0, "");
-
/*
* Initialize amd64 and configure to run kernel
*/
==== //depot/projects/newisp/amd64/include/clock.h#2 (text+ko) ====
@@ -3,7 +3,7 @@
* Garrett Wollman, September 1994.
* This file is in the public domain.
*
- * $FreeBSD: src/sys/amd64/include/clock.h,v 1.52 2006/05/19 18:53:50 sobomax Exp $
+ * $FreeBSD: src/sys/amd64/include/clock.h,v 1.53 2006/10/02 12:59:55 phk Exp $
*/
#ifndef _MACHINE_CLOCK_H_
@@ -14,9 +14,7 @@
* i386 to clock driver interface.
* XXX large parts of the driver and its interface are misplaced.
*/
-extern int adjkerntz;
extern int clkintr_pending;
-extern int disable_rtc_set;
extern int pscnt;
extern int psdiv;
extern int statclock_disable;
@@ -24,7 +22,6 @@
extern int timer0_max_count;
extern uint64_t tsc_freq;
extern int tsc_is_broken;
-extern int wall_cmos_clock;
extern struct mtx clock_lock;
/*
==== //depot/projects/newisp/amd64/isa/clock.c#2 (text+ko) ====
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/isa/clock.c,v 1.224 2005/12/22 22:16:05 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/isa/clock.c,v 1.227 2006/10/02 18:23:36 phk Exp $");
/*
* Routines to handle clock hardware.
@@ -52,6 +52,7 @@
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/bus.h>
+#include <sys/clock.h>
#include <sys/lock.h>
#include <sys/kdb.h>
#include <sys/mutex.h>
@@ -92,9 +93,7 @@
#define TIMER_DIV(x) ((timer_freq + (x) / 2) / (x))
-int adjkerntz; /* local offset from GMT in seconds */
int clkintr_pending;
-int disable_rtc_set; /* disable resettodr() if != 0 */
int pscnt = 1;
int psdiv = 1;
int statclock_disable;
@@ -104,7 +103,6 @@
u_int timer_freq = TIMER_FREQ;
int timer0_max_count;
int timer0_real_max_count;
-int wall_cmos_clock; /* wall CMOS clock assumed if != 0 */
struct mtx clock_lock;
#define RTC_LOCK mtx_lock_spin(&clock_lock)
#define RTC_UNLOCK mtx_unlock_spin(&clock_lock)
@@ -664,7 +662,7 @@
/* sec now contains the number of seconds, since Jan 1 1970,
in the local time zone */
- sec += tz_minuteswest * 60 + (wall_cmos_clock ? adjkerntz : 0);
+ sec += utc_offset();
y = time_second - sec;
if (y <= -2 || y >= 2) {
@@ -702,7 +700,7 @@
/* Calculate local time to put in RTC */
- tm -= tz_minuteswest * 60 + (wall_cmos_clock ? adjkerntz : 0);
+ tm -= utc_offset();
writertc(RTC_SEC, bin2bcd(tm%60)); tm /= 60; /* Write back Seconds */
writertc(RTC_MIN, bin2bcd(tm%60)); tm /= 60; /* Write back Minutes */
==== //depot/projects/newisp/amd64/linux32/linux32_machdep.c#3 (text+ko) ====
@@ -29,11 +29,12 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.17 2006/08/28 13:09:24 netchild Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.18 2006/10/02 12:59:55 phk Exp $");
#include <sys/param.h>
#include <sys/kernel.h>
#include <sys/systm.h>
+#include <sys/clock.h>
#include <sys/imgact.h>
#include <sys/limits.h>
#include <sys/lock.h>
==== //depot/projects/newisp/arm/include/clock.h#2 (text+ko) ====
@@ -23,13 +23,10 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/arm/include/clock.h,v 1.2 2005/07/27 21:19:28 imp Exp $
+ * $FreeBSD: src/sys/arm/include/clock.h,v 1.3 2006/10/02 12:59:55 phk Exp $
*/
#ifndef _MACHINE_CLOCK_H_
#define _MACHINE_CLOCK_H_
-#define wall_cmos_clock 0
-#define adjkerntz 0
-
#endif /* !_MACHINE_CLOCK_H_ */
==== //depot/projects/newisp/boot/common/merge_help.awk#2 (text+ko) ====
@@ -1,6 +1,6 @@
#!/usr/bin/awk -f
#
-# $FreeBSD: src/sys/boot/common/merge_help.awk,v 1.5 2001/11/07 17:53:25 fenner Exp $
+# $FreeBSD: src/sys/boot/common/merge_help.awk,v 1.6 2006/09/28 19:06:20 jhb Exp $
#
# Merge two boot loader help files for FreeBSD 3.0
# Joe Abley <jabley at patho.gen.nz>
@@ -25,9 +25,12 @@
match($0, " T[[:graph:]]+");
T = substr($0, RSTART + 2, RLENGTH - 2);
match($0, " S[[:graph:]]+");
+ SSTART = RSTART
S = (RLENGTH == -1) ? "" : substr($0, RSTART + 2, RLENGTH - 2);
match($0, " D[[:graph:]][[:print:]]*$");
D = substr($0, RSTART + 2);
+ if (SSTART > RSTART)
+ S = "";
# find a suitable place to store this one...
ind++;
==== //depot/projects/newisp/boot/common/panic.c#2 (text+ko) ====
@@ -34,11 +34,13 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/common/panic.c,v 1.7 2003/08/25 23:30:41 obrien Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/common/panic.c,v 1.8 2006/09/29 20:57:38 ru Exp $");
#include <stand.h>
#include <machine/stdarg.h>
+extern void exit(int) __dead2;
+
void
panic(const char *fmt,...)
{
==== //depot/projects/newisp/boot/ficl/Makefile#2 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.43 2006/05/12 04:07:42 jhb Exp $
+# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.44 2006/09/28 10:02:03 ru Exp $
#
.PATH: ${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/}
BASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \
@@ -42,7 +42,7 @@
#SOFTWORDS+= oo.fr classes.fr
.if ${MACHINE_ARCH} == "amd64"
-CFLAGS+= -m32 -I.
+CFLAGS+= -m32 -march=i386 -I.
.endif
CFLAGS+= -I${.CURDIR} -I${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/} \
==== //depot/projects/newisp/boot/forth/loader.conf#2 (text+ko) ====
@@ -6,7 +6,7 @@
#
# All arguments must be in double quotes.
#
-# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.111 2006/08/18 19:03:28 brueffer Exp $
+# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.113 2006/10/01 14:58:30 ariff Exp $
##############################################################
### Basic configuration options ############################
@@ -309,7 +309,6 @@
sound_load="NO" # Digital sound subsystem
snd_ad1816_load="NO" # ad1816
-snd_ak452x_load="NO" # ak452x
snd_als4000_load="NO" # als4000
snd_atiixp_load="NO" # atiixp
snd_cmi_load="NO" # cmi
@@ -319,9 +318,11 @@
snd_emu10k1_load="NO" # Creative Sound Blaster Live
snd_emu10kx_load="NO" # Creative SoundBlaster Live! and Audigy
snd_envy24_load="NO" # VIA Envy24
+snd_envy24ht_load="NO" # VIA Envy24HT
snd_es137x_load="NO" # es137x
snd_ess_load="NO" # ess
snd_fm801_load="NO" # fm801
+snd_hda_load="NO" # Intel High Definition Audio (Controller)
snd_ich_load="NO" # Intel ICH
snd_maestro_load="NO" # Maestro
snd_maestro3_load="NO" # Maestro3
@@ -331,6 +332,7 @@
snd_sb8_load="NO" # Sound Blaster Pro
snd_sbc_load="NO" # Sbc
snd_solo_load="NO" # Solo
+snd_spicds_load="NO" # SPI codecs
snd_t4dwave_load="NO" # t4dwave
snd_via8233_load="NO" # via8233
snd_via82c686_load="NO" # via82c686
==== //depot/projects/newisp/boot/i386/Makefile.inc#2 (text+ko) ====
@@ -1,6 +1,6 @@
# Common defines for all of /sys/boot/i386/
#
-# $FreeBSD: src/sys/boot/i386/Makefile.inc,v 1.11 2005/07/15 12:22:14 ache Exp $
+# $FreeBSD: src/sys/boot/i386/Makefile.inc,v 1.12 2006/09/28 10:02:04 ru Exp $
BINDIR?= /boot
@@ -10,7 +10,7 @@
LDFLAGS+= -nostdlib
.if ${MACHINE_ARCH} == "amd64"
-CFLAGS+= -m32
+CFLAGS+= -m32 -march=i386
LDFLAGS+= -m elf_i386_fbsd
AFLAGS+= --32
.endif
==== //depot/projects/newisp/boot/i386/btx/btx/btx.S#2 (text+ko) ====
@@ -12,7 +12,7 @@
* warranties of merchantability and fitness for a particular
* purpose.
*
- * $FreeBSD: src/sys/boot/i386/btx/btx/btx.S,v 1.38 2004/11/24 14:54:33 jhb Exp $
+ * $FreeBSD: src/sys/boot/i386/btx/btx/btx.S,v 1.42 2006/09/28 19:42:10 jhb Exp $
*/
/*
@@ -208,7 +208,7 @@
#ifdef PAGING
or $0x80000001,%eax # mode and enable paging
#else
- or $0x01,%eax # mode
+ inc %ax # mode
#endif
mov %eax,%cr0 #
ljmp $SEL_SCODE,$init.8 # To 32-bit code
@@ -493,9 +493,7 @@
je v86wrmsr # Yes
cmpb $0x32,(%esi) # Is it a RDMSR?
je v86rdmsr # Yes
- cmpb $0x20,(%esi) # Is this a
- jne v86mon.4 # MOV EAX,CR0
- cmpb $0xc0,0x1(%esi) # instruction?
+ cmpb $0x20,(%esi) # Is this a MOV reg,CRx?
je v86mov # Yes
v86mon.4: cmpb $0xfa,%al # CLI?
je v86cli # Yes
@@ -527,10 +525,24 @@
leal 0x8(%esp,1),%esp # Discard int no, error
iret # To V86 mode
/*
- * Emulate MOV EAX,CR0.
+ * Emulate MOV reg,CRx.
*/
-v86mov: movl %cr0,%eax # CR0 to
- movl %eax,0x1c(%ebp) # saved EAX
+v86mov: movb 0x1(%esi),%bl # Fetch Mod R/M byte
+ testb $0x10,%bl # Read CR2 or CR3?
+ jnz v86mov.1 # Yes
+ movl %cr0,%eax # Read CR0
+ testb $0x20,%bl # Read CR4 instead?
+ jz v86mov.2 # No
+ movl %cr4,%eax # Read CR4
+ jmp v86mov.2
+v86mov.1: movl %cr2,%eax # Read CR2
+ testb $0x08,%bl # Read CR3 instead?
+ jz v86mov.2 # No
+ movl %cr3,%eax # Read CR3
+v86mov.2: andl $0x7,%ebx # Compute offset in
+ shl $2,%ebx # frame of destination
+ neg %ebx # register
+ movl %eax,0x1c(%ebp,%ebx,1) # Store CR to reg
incl %esi # Adjust IP
/*
* Return from emulating a 0x0f prefixed instruction
@@ -606,41 +618,27 @@
* reads count of words from saved %cx
* returns success by setting %ah to 0
*/
-int15_87: pushl %eax # Save
- pushl %ebx # some information
- pushl %esi # onto the stack.
- pushl %edi
- xorl %eax,%eax # clean EAX
- xorl %ebx,%ebx # clean EBX
- movl 0x4(%ebp),%esi # Get user's ESI
- movl 0x3C(%ebp),%ebx # store ES
- movw %si,%ax # store SI
- shll $0x4,%ebx # Make it a seg.
- addl %eax,%ebx # ebx=(es<<4)+si
- movb 0x14(%ebx),%al # Grab the
- movb 0x17(%ebx),%ah # necessary
- shll $0x10,%eax # information
- movw 0x12(%ebx),%ax # from
- movl %eax,%esi # the
- movb 0x1c(%ebx),%al # GDT in order to
- movb 0x1f(%ebx),%ah # have %esi offset
- shll $0x10,%eax # of source and %edi
- movw 0x1a(%ebx),%ax # of destination.
- movl %eax,%edi
+int15_87: pushl %esi # Save
+ pushl %edi # registers
+ movzwl 0x4(%ebp),%eax # Load user's SI
+ movl 0x3C(%ebp),%edi # Load ES
+ leal (%eax,%edi,4),%edi # EDI = (ES << 4) + SI
+ movl 0x11(%edi),%eax # Read base of
+ movb 0x17(%edi),%al # GDT entry
+ ror $8,%eax # for source
+ xchgl %eax,%esi # into %esi
+ movl 0x19(%edi),%eax # Read base of
+ movb 0x1f(%edi),%al # GDT entry for
+ ror $8,%eax # destination
+ xchgl %eax,%edi # into %edi
pushl %ds # Make:
popl %es # es = ds
- pushl %ecx # stash ECX
- xorl %ecx,%ecx # highw of ECX is clear
- movw 0x18(%ebp),%cx # Get user's ECX
- shll $0x1,%ecx # Convert from num words to num
- # bytes
+ movzwl 0x18(%ebp),%ecx # Get user's CX
+ shll $0x1,%ecx # Convert count from words
rep # repeat...
movsb # perform copy.
- popl %ecx # Restore
- popl %edi
- popl %esi # previous
- popl %ebx # register
- popl %eax # values.
+ popl %edi # Restore
+ popl %esi # registers
movb $0x0,0x1d(%ebp) # set ah = 0 to indicate
# success
andb $0xfe,%dl # clear CF
@@ -659,23 +657,16 @@
cmpb $0x19,%al # is it int 19?
je reboot # yes, reboot the machine
cmpb $0x15,%al # is it int 15?
- jne v86intn.3 # no, skip parse
- pushl %eax # stash EAX
- movl 0x1c(%ebp),%eax # user's saved EAX
- cmpb $0x87,%ah # is it the memcpy subfunction?
- jne v86intn.1 # no, keep checking
- popl %eax # get the stack straight
- jmp int15_87 # it's our cue
-v86intn.1: cmpw $0x4f53,%ax # is it the delete key callout?
- jne v86intn.2 # no, handle the int normally
- movb BDA_KEYFLAGS,%al # get the shift key state
- andb $0xc,%al # mask off just Ctrl and Alt
- cmpb $0xc,%al # are both Ctrl and Alt down?
- jne v86intn.2 # no, handle the int normally
- popl %eax # restore EAX
- jmp reboot # reboot the machine
-v86intn.2: popl %eax # restore EAX
-v86intn.3: subl %edi,%esi # From
+ jne v86intn.1 # no, skip parse
+ cmpb $0x87,0x1d(%ebp) # is it the memcpy subfunction?
+ je int15_87 # yes
+ cmpw $0x4f53,0x1c(%ebp) # is it the delete key callout?
+ jne v86intn.1 # no, handle the int normally
+ movb BDA_KEYFLAGS,%ch # get the shift key state
+ andb $0xc,%ch # mask off just Ctrl and Alt
+ cmpb $0xc,%ch # are both Ctrl and Alt down?
+ je reboot # yes, reboot the machine
+v86intn.1: subl %edi,%esi # From
shrl $0x4,%edi # linear
movw %dx,-0x2(%ebx) # Save flags
movw %di,-0x4(%ebx) # Save CS
@@ -907,8 +898,7 @@
dump.3: lodsl # Set offset
xchgl %eax,%edx # Save
lodsl # Get segment
- shll $0x4,%eax # * 0x10
- addl %edx,%eax # + offset
+ leal (%edx,%eax,4),%eax # * 0x10 + offset
xchgl %eax,%esi # Set pointer
dump.4: movb $2,%dl # Num lines
dump.4a: movb $0x10,%cl # Bytes to dump
==== //depot/projects/newisp/boot/i386/libi386/biospci.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biospci.c,v 1.5 2004/10/22 14:56:23 simokawa Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biospci.c,v 1.6 2006/09/29 20:27:41 ru Exp $");
/*
* PnP enumerator using the PCI BIOS.
@@ -36,6 +36,7 @@
#include <bootstrap.h>
#include <isapnp.h>
#include <btxv86.h>
+#include "libi386.h"
/*
* Stupid PCI BIOS interface doesn't let you simply enumerate everything
==== //depot/projects/newisp/boot/i386/libi386/biossmap.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biossmap.c,v 1.4 2005/12/19 09:00:11 sobomax Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biossmap.c,v 1.6 2006/09/29 20:07:16 jhb Exp $");
/*
* Obtain memory configuration information from the BIOS
@@ -95,6 +95,7 @@
break;
} while (v86.ebx != 0 && smaplen < n);
}
+
void
bios_addsmapdata(struct preloaded_file *kfp)
{
@@ -105,3 +106,18 @@
len = smaplen * sizeof(*smapbase);
file_addmetadata(kfp, MODINFOMD_SMAP, len, smapbase);
}
+
+COMMAND_SET(smap, "smap", "show BIOS SMAP", command_smap);
+
+static int
+command_smap(int argc, char *argv[])
+{
+ int i;
+
+ if (smapbase == 0 || smaplen == 0)
+ return (CMD_ERROR);
+ for (i = 0; i < smaplen; i++)
+ printf("SMAP type=%02x base=%016llx len=%016llx\n",
+ smapbase[i].type, smapbase[i].base, smapbase[i].length);
+ return (CMD_OK);
+}
==== //depot/projects/newisp/boot/i386/libi386/bootinfo64.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bootinfo64.c,v 1.36 2003/08/25 23:28:31 obrien Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bootinfo64.c,v 1.37 2006/09/29 20:27:41 ru Exp $");
#include <stand.h>
#include <sys/param.h>
@@ -143,9 +143,7 @@
u_int64_t envp;
vm_offset_t size;
char *rootdevname;
- int i, howto;
- char *kernelname;
- const char *kernelpath;
+ int howto;
howto = bi_getboothowto(args);
==== //depot/projects/newisp/boot/i386/libi386/elf64_freebsd.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/elf64_freebsd.c,v 1.15 2004/08/29 00:48:41 iedowse Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/elf64_freebsd.c,v 1.16 2006/09/29 20:27:41 ru Exp $");
#define __ELF_WORD_SIZE 64
#include <sys/param.h>
@@ -61,7 +61,7 @@
u_int32_t entry_hi;
u_int32_t entry_lo;
-extern amd64_tramp();
+extern void amd64_tramp();
/*
* There is an a.out kernel and one or more a.out modules loaded.
==== //depot/projects/newisp/boot/i386/libi386/libi386.h#2 (text+ko) ====
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/boot/i386/libi386/libi386.h,v 1.25 2006/04/11 20:11:30 jhb Exp $
+ * $FreeBSD: src/sys/boot/i386/libi386/libi386.h,v 1.26 2006/09/29 20:27:41 ru Exp $
*/
@@ -96,8 +96,8 @@
/* when heap is at the top of extended memory */
/* for other cases - just the same as memtop */
-int biospci_find_devclass(uint32_t class, int index);
-int biospci_write_config(uint32_t locator, int offset, int width, int val);
+int biospci_find_devclass(uint32_t class, int index, uint32_t *locator);
+int biospci_write_config(uint32_t locator, int offset, int width, uint32_t val);
int biospci_read_config(uint32_t locator, int offset, int width, uint32_t *val);
void biosacpi_detect(void);
==== //depot/projects/newisp/boot/i386/loader/help.i386#2 (text+ko) ====
@@ -54,3 +54,10 @@
forced by setting this variable.
################################################################################
+# Tsmap DDisplay BIOS SMAP table
+
+ smap
+
+ Displays the BIOS SMAP (system memory map) table.
+
+################################################################################
==== //depot/projects/newisp/cam/cam_periph.c#2 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/cam_periph.c,v 1.62 2006/05/24 15:22:21 mjacob Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/cam_periph.c,v 1.63 2006/10/01 20:23:50 mjacob Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -86,6 +86,14 @@
MALLOC_DEFINE(M_CAMPERIPH, "CAM periph", "CAM peripheral buffers");
+static int periph_selto_delay = 1000;
+TUNABLE_INT("kern.cam.periph_selto_delay", &periph_selto_delay);
+static int periph_noresrc_delay = 500;
+TUNABLE_INT("kern.cam.periph_noresrc_delay", &periph_noresrc_delay);
+static int periph_busy_delay = 500;
+TUNABLE_INT("kern.cam.periph_busy_delay", &periph_busy_delay);
+
+
void
periphdriver_register(void *data)
{
@@ -1544,7 +1552,7 @@
int error, printed = 0;
int openings;
u_int32_t relsim_flags;
- u_int32_t timeout;
+ u_int32_t timeout = 0;
action_string = NULL;
status = ccb->ccb_h.status;
@@ -1636,11 +1644,11 @@
}
/*
- * Wait a second to give the device
+ * Wait a bit to give the device
* time to recover before we try again.
*/
relsim_flags = RELSIM_RELEASE_AFTER_TIMEOUT;
- timeout = 1000;
+ timeout = periph_selto_delay;
break;
}
}
@@ -1699,8 +1707,16 @@
}
break;
case CAM_RESRC_UNAVAIL:
+ /* Wait a bit for the resource shortage to abate. */
+ timeout = periph_noresrc_delay;
+ /* FALLTHROUGH */
case CAM_BUSY:
- /* timeout??? */
+ if (timeout == 0) {
+ /* Wait a bit for the busy condition to abate. */
+ timeout = periph_busy_delay;
+ }
+ relsim_flags = RELSIM_RELEASE_AFTER_TIMEOUT;
+ /* FALLTHROUGH */
default:
/* decrement the number of retries */
if (ccb->ccb_h.retry_count > 0) {
==== //depot/projects/newisp/compat/freebsd32/freebsd32_misc.c#3 (text+ko) ====
@@ -25,13 +25,14 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.59 2006/09/22 15:04:28 davidxu Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.60 2006/10/02 12:59:55 phk Exp $");
#include "opt_compat.h"
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/bus.h>
+#include <sys/clock.h>
#include <sys/exec.h>
#include <sys/fcntl.h>
#include <sys/filedesc.h>
==== //depot/projects/newisp/compat/freebsd32/freebsd32_proto.h#7 (text+ko) ====
@@ -2,8 +2,8 @@
* System call prototypes.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.66 2006/09/23 00:27:53 davidxu Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.79 2006/09/23 00:27:11 davidxu Exp
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.67 2006/10/03 20:48:11 rwatson Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.80 2006/10/03 20:48:03 rwatson Exp
*/
#ifndef _FREEBSD32_SYSPROTO_H_
==== //depot/projects/newisp/compat/freebsd32/freebsd32_syscall.h#7 (text+ko) ====
@@ -2,8 +2,8 @@
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.64 2006/09/23 00:27:53 davidxu Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.79 2006/09/23 00:27:11 davidxu Exp
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.65 2006/10/03 20:48:11 rwatson Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.80 2006/10/03 20:48:03 rwatson Exp
*/
#define FREEBSD32_SYS_syscall 0
==== //depot/projects/newisp/compat/freebsd32/freebsd32_syscalls.c#7 (text+ko) ====
@@ -2,8 +2,8 @@
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.55 2006/09/23 00:27:53 davidxu Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.79 2006/09/23 00:27:11 davidxu Exp
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.56 2006/10/03 20:48:11 rwatson Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.80 2006/10/03 20:48:03 rwatson Exp
*/
const char *freebsd32_syscallnames[] = {
==== //depot/projects/newisp/compat/freebsd32/freebsd32_sysent.c#7 (text+ko) ====
@@ -2,8 +2,8 @@
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.65 2006/09/23 00:27:53 davidxu Exp $
- * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.79 2006/09/23 00:27:11 davidxu Exp
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.66 2006/10/03 20:48:11 rwatson Exp $
+ * created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.80 2006/10/03 20:48:03 rwatson Exp
*/
#include "opt_compat.h"
==== //depot/projects/newisp/compat/freebsd32/syscalls.master#7 (text+ko) ====
@@ -1,4 +1,4 @@
- $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.79 2006/09/23 00:27:11 davidxu Exp $
+ $FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.80 2006/10/03 20:48:03 rwatson Exp $
; from: @(#)syscalls.master 8.2 (Berkeley) 1/13/94
; from: src/sys/kern/syscalls.master 1.107
;
@@ -141,7 +141,7 @@
61 AUE_CHROOT NOPROTO { int chroot(char *path); }
62 AUE_FSTAT OBSOL ofstat
63 AUE_NULL OBSOL ogetkerninfo
-64 AUE_GETPAGESIZE OBSOL ogetpagesize
+64 AUE_NULL OBSOL ogetpagesize
; XXX implement (not OBSOL at all)
65 AUE_MSYNC NOPROTO { int msync(void *addr, size_t len, \
int flags); }
==== //depot/projects/newisp/conf/NOTES#6 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/NOTES,v 1.1383 2006/09/26 12:36:33 ru Exp $
+# $FreeBSD: src/sys/conf/NOTES,v 1.1385 2006/10/01 14:56:10 ariff Exp $
#
# NOTES -- Lines that can be cut/pasted into kernel and hints configs.
#
@@ -1923,7 +1923,6 @@
# since this is unsupported at the moment...).
#
# snd_ad1816: Analog Devices AD1816 ISA PnP/non-PnP.
-# snd_ak452x: Asahi Kasei AK452x codec, needed by snd_envy24.
# snd_als4000: Avance Logic ALS4000 PCI.
# snd_atiixp: ATI IXP 200/300/400 PCI.
# snd_au88x0 Aureal Vortex 1/2/Advantage PCI. This driver
@@ -1937,12 +1936,15 @@
# snd_ds1: Yamaha DS-1 PCI.
# snd_emu10k1: Creative EMU10K1 PCI and EMU10K2 (Audigy) PCI.
# snd_emu10kx: Creative SoundBlaster Live! and Audigy
-# snd_envy24: VIA Envy24 and compatible, needs snd_ak452x.
+# snd_envy24: VIA Envy24 and compatible, needs snd_spicds.
+# snd_envy24ht: VIA Envy24HT and compatible, needs snd_spicds.
# snd_es137x: Ensoniq AudioPCI ES137x PCI.
# snd_ess: Ensoniq ESS ISA PnP/non-PnP, to be used in
# conjunction with snd_sbc.
# snd_fm801: Forte Media FM801 PCI.
# snd_gusc: Gravis UltraSound ISA PnP/non-PnP.
+# snd_hda: Intel High Definition Audio (Controller) and
+# compatible.
# snd_ich: Intel ICH PCI and some more audio controllers
# embedded in a chipset, for example nVidia
# nForce controllers.
@@ -1956,6 +1958,7 @@
# conjunction with snd_sbc.
# snd_sbc: Creative SoundBlaster ISA PnP/non-PnP.
# Supports ESS and Avance ISA chips as well.
+# snd_spicds: SPI codec driver, needed by Envy24/Envy24HT drivers.
# snd_solo: ESS Solo-1x PCI.
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list