PERFORCE change 117599 for review
Matt Jacob
mjacob at FreeBSD.org
Sat Apr 7 17:27:21 UTC 2007
http://perforce.freebsd.org/chv.cgi?CH=117599
Change 117599 by mjacob at mjexp_6 on 2007/04/07 17:27:04
Integrate from vendor branch.
Affected files ...
.. //depot/projects/mjexp_6/sys/amd64/amd64/io_apic.c#2 integrate
.. //depot/projects/mjexp_6/sys/amd64/amd64/local_apic.c#2 integrate
.. //depot/projects/mjexp_6/sys/amd64/amd64/mptable_pci.c#3 integrate
.. //depot/projects/mjexp_6/sys/amd64/amd64/msi.c#1 branch
.. //depot/projects/mjexp_6/sys/amd64/amd64/nexus.c#2 integrate
.. //depot/projects/mjexp_6/sys/amd64/conf/GENERIC#2 integrate
.. //depot/projects/mjexp_6/sys/amd64/include/apicvar.h#2 integrate
.. //depot/projects/mjexp_6/sys/amd64/include/intr_machdep.h#2 integrate
.. //depot/projects/mjexp_6/sys/amd64/pci/pci_bus.c#3 integrate
.. //depot/projects/mjexp_6/sys/arm/arm/identcpu.c#2 integrate
.. //depot/projects/mjexp_6/sys/arm/xscale/i80321/i80321_wdog.c#3 integrate
.. //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_wdog.c#2 integrate
.. //depot/projects/mjexp_6/sys/boot/forth/loader.conf#3 integrate
.. //depot/projects/mjexp_6/sys/boot/pc98/cdboot/cdboot.s#2 integrate
.. //depot/projects/mjexp_6/sys/cam/cam_xpt.c#4 integrate
.. //depot/projects/mjexp_6/sys/cam/cam_xpt.h#3 integrate
.. //depot/projects/mjexp_6/sys/conf/NOTES#5 integrate
.. //depot/projects/mjexp_6/sys/conf/files#6 integrate
.. //depot/projects/mjexp_6/sys/conf/files.amd64#2 integrate
.. //depot/projects/mjexp_6/sys/conf/files.arm#4 integrate
.. //depot/projects/mjexp_6/sys/conf/files.i386#2 integrate
.. //depot/projects/mjexp_6/sys/conf/files.pc98#2 integrate
.. //depot/projects/mjexp_6/sys/dev/acpica/Osd/OsdDebug.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/acpica/acpi_battery.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/acpica/acpi_dock.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/acpica/acpi_hpet.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/acpica/acpi_pcib_acpi.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/acpica/acpi_pcib_pci.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/acpica/acpi_thermal.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/arcmsr/arcmsr.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/arcmsr/arcmsr.h#2 integrate
.. //depot/projects/mjexp_6/sys/dev/ata/ata-queue.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/ata/atapi-cam.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/ath/if_ath.c#4 integrate
.. //depot/projects/mjexp_6/sys/dev/ath/if_athvar.h#3 integrate
.. //depot/projects/mjexp_6/sys/dev/bce/if_bce.c#5 integrate
.. //depot/projects/mjexp_6/sys/dev/bge/if_bge.c#4 integrate
.. //depot/projects/mjexp_6/sys/dev/bge/if_bgereg.h#3 integrate
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_ael1002.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_common.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_firmware_exports.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_mc5.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_mv88e1xxx.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_regs.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_sge_defs.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_t3_cpl.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_t3_hw.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_tcb.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_version.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_vsc8211.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/common/cxgb_xgmac.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/cxgb_adapter.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/cxgb_config.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/cxgb_ioctl.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/cxgb_lro.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/cxgb_main.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/cxgb_osdep.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/cxgb_sge.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/cxgb/t3fw-3.2.bin.gz.uu#1 branch
.. //depot/projects/mjexp_6/sys/dev/firewire/firewire.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/firewire/fwohci.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/firewire/fwohci_pci.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/firewire/sbp.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/ichwd/ichwd.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/ipw/if_ipw.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/isp.c#5 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/isp_freebsd.c#5 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/isp_freebsd.h#6 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/isp_ioctl.h#3 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/isp_library.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/isp_library.h#3 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/isp_pci.c#4 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/isp_sbus.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/isp_target.c#5 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/isp_target.h#4 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/isp_tpublic.h#4 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/ispmbox.h#3 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/ispreg.h#3 integrate
.. //depot/projects/mjexp_6/sys/dev/isp/ispvar.h#4 integrate
.. //depot/projects/mjexp_6/sys/dev/ispfw/asm_2300.h#2 integrate
.. //depot/projects/mjexp_6/sys/dev/ispfw/ispfw.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/iwi/if_iwi.c#5 integrate
.. //depot/projects/mjexp_6/sys/dev/mii/brgphy.c#4 integrate
.. //depot/projects/mjexp_6/sys/dev/mii/brgphyreg.h#2 integrate
.. //depot/projects/mjexp_6/sys/dev/mii/e1000phy.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/mii/e1000phyreg.h#2 integrate
.. //depot/projects/mjexp_6/sys/dev/mii/miidevs#3 integrate
.. //depot/projects/mjexp_6/sys/dev/mk48txx/mk48txx.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/mpt/mpt.c#4 integrate
.. //depot/projects/mjexp_6/sys/dev/mpt/mpt.h#4 integrate
.. //depot/projects/mjexp_6/sys/dev/mpt/mpt_cam.c#4 integrate
.. //depot/projects/mjexp_6/sys/dev/mpt/mpt_cam.h#3 integrate
.. //depot/projects/mjexp_6/sys/dev/mpt/mpt_debug.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/mpt/mpt_pci.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/mpt/mpt_raid.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/msk/if_msk.c#1 branch
.. //depot/projects/mjexp_6/sys/dev/msk/if_mskreg.h#1 branch
.. //depot/projects/mjexp_6/sys/dev/my/if_my.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/pci/pci.c#4 integrate
.. //depot/projects/mjexp_6/sys/dev/pci/pci_if.m#3 integrate
.. //depot/projects/mjexp_6/sys/dev/pci/pci_pci.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/pci/pci_private.h#4 integrate
.. //depot/projects/mjexp_6/sys/dev/pci/pcib_if.m#2 integrate
.. //depot/projects/mjexp_6/sys/dev/pci/pcib_private.h#4 integrate
.. //depot/projects/mjexp_6/sys/dev/pci/pcireg.h#3 integrate
.. //depot/projects/mjexp_6/sys/dev/pci/pcivar.h#4 integrate
.. //depot/projects/mjexp_6/sys/dev/ppbus/lpt.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/ppbus/ppbconf.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/ppc/ppc.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/ppc/ppcvar.h#2 integrate
.. //depot/projects/mjexp_6/sys/dev/ral/rt2560.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/ral/rt2661.c#3 integrate
.. //depot/projects/mjexp_6/sys/dev/sk/if_sk.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/sk/if_skreg.h#2 integrate
.. //depot/projects/mjexp_6/sys/dev/sound/pci/atiixp.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/sound/pci/maestro3.c#2 integrate
.. //depot/projects/mjexp_6/sys/dev/usb/if_ural.c#3 integrate
.. //depot/projects/mjexp_6/sys/gnu/fs/ext2fs/ext2_vfsops.c#3 integrate
.. //depot/projects/mjexp_6/sys/i386/conf/GENERIC#2 integrate
.. //depot/projects/mjexp_6/sys/i386/conf/NOTES#2 integrate
.. //depot/projects/mjexp_6/sys/i386/i386/elan-mmcr.c#3 integrate
.. //depot/projects/mjexp_6/sys/i386/i386/geode.c#2 integrate
.. //depot/projects/mjexp_6/sys/i386/i386/io_apic.c#2 integrate
.. //depot/projects/mjexp_6/sys/i386/i386/local_apic.c#2 integrate
.. //depot/projects/mjexp_6/sys/i386/i386/mp_machdep.c#3 integrate
.. //depot/projects/mjexp_6/sys/i386/i386/mptable_pci.c#3 integrate
.. //depot/projects/mjexp_6/sys/i386/i386/msi.c#1 branch
.. //depot/projects/mjexp_6/sys/i386/i386/nexus.c#2 integrate
.. //depot/projects/mjexp_6/sys/i386/i386/pmap.c#2 integrate
.. //depot/projects/mjexp_6/sys/i386/i386/vm_machdep.c#2 integrate
.. //depot/projects/mjexp_6/sys/i386/include/apicvar.h#2 integrate
.. //depot/projects/mjexp_6/sys/i386/include/intr_machdep.h#2 integrate
.. //depot/projects/mjexp_6/sys/i386/pci/pci_bus.c#3 integrate
.. //depot/projects/mjexp_6/sys/ia64/ia64/pmap.c#2 integrate
.. //depot/projects/mjexp_6/sys/isofs/cd9660/cd9660_node.h#2 integrate
.. //depot/projects/mjexp_6/sys/kern/kern_lock.c#2 integrate
.. //depot/projects/mjexp_6/sys/kern/kern_prot.c#2 integrate
.. //depot/projects/mjexp_6/sys/kern/uipc_socket.c#3 integrate
.. //depot/projects/mjexp_6/sys/kern/uipc_socket2.c#2 integrate
.. //depot/projects/mjexp_6/sys/kern/vfs_export.c#2 integrate
.. //depot/projects/mjexp_6/sys/kern/vfs_syscalls.c#3 integrate
.. //depot/projects/mjexp_6/sys/modules/Makefile#4 integrate
.. //depot/projects/mjexp_6/sys/modules/acpi/Makefile#2 integrate
.. //depot/projects/mjexp_6/sys/modules/acpi/acpi/Makefile#2 integrate
.. //depot/projects/mjexp_6/sys/modules/acpi/acpi_dock/Makefile#1 branch
.. //depot/projects/mjexp_6/sys/modules/cxgb/Makefile#1 branch
.. //depot/projects/mjexp_6/sys/modules/msk/Makefile#1 branch
.. //depot/projects/mjexp_6/sys/modules/my/Makefile#2 integrate
.. //depot/projects/mjexp_6/sys/net/if.c#2 integrate
.. //depot/projects/mjexp_6/sys/net/if_bridge.c#5 integrate
.. //depot/projects/mjexp_6/sys/net/if_tap.c#4 integrate
.. //depot/projects/mjexp_6/sys/net80211/_ieee80211.h#3 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211.c#3 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_crypto.c#2 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_crypto.h#2 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_freebsd.c#2 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_freebsd.h#3 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_input.c#3 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_ioctl.c#2 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_node.c#3 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_node.h#2 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_output.c#3 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_proto.c#3 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_proto.h#2 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_radiotap.h#2 integrate
.. //depot/projects/mjexp_6/sys/net80211/ieee80211_var.h#3 integrate
.. //depot/projects/mjexp_6/sys/netgraph/bluetooth/l2cap/ng_l2cap_cmds.c#2 integrate
.. //depot/projects/mjexp_6/sys/netgraph/ng_eiface.c#2 integrate
.. //depot/projects/mjexp_6/sys/netinet/if_ether.c#3 integrate
.. //depot/projects/mjexp_6/sys/netinet/in.c#2 integrate
.. //depot/projects/mjexp_6/sys/netinet/ip_dummynet.c#2 integrate
.. //depot/projects/mjexp_6/sys/netinet/ip_fastfwd.c#3 integrate
.. //depot/projects/mjexp_6/sys/netinet/ip_fw.h#2 integrate
.. //depot/projects/mjexp_6/sys/netinet/ip_fw2.c#2 integrate
.. //depot/projects/mjexp_6/sys/netinet/ip_fw_pfil.c#2 integrate
.. //depot/projects/mjexp_6/sys/netinet/ip_input.c#2 integrate
.. //depot/projects/mjexp_6/sys/netinet/ip_output.c#2 integrate
.. //depot/projects/mjexp_6/sys/netinet/raw_ip.c#3 integrate
.. //depot/projects/mjexp_6/sys/netinet/tcp_input.c#2 integrate
.. //depot/projects/mjexp_6/sys/netinet/tcp_output.c#2 integrate
.. //depot/projects/mjexp_6/sys/netinet/udp_usrreq.c#3 integrate
.. //depot/projects/mjexp_6/sys/nfsclient/nfs_vfsops.c#3 integrate
.. //depot/projects/mjexp_6/sys/nfsserver/nfs_srvsubs.c#3 integrate
.. //depot/projects/mjexp_6/sys/pci/if_ste.c#2 integrate
.. //depot/projects/mjexp_6/sys/pci/if_stereg.h#2 integrate
.. //depot/projects/mjexp_6/sys/sparc64/include/pmap.h#2 integrate
.. //depot/projects/mjexp_6/sys/sparc64/sparc64/pmap.c#2 integrate
.. //depot/projects/mjexp_6/sys/sys/param.h#6 integrate
.. //depot/projects/mjexp_6/sys/sys/socketvar.h#2 integrate
.. //depot/projects/mjexp_6/sys/sys/ucred.h#2 integrate
.. //depot/projects/mjexp_6/sys/ufs/ffs/ffs_alloc.c#3 integrate
.. //depot/projects/mjexp_6/sys/ufs/ffs/ffs_softdep.c#2 integrate
.. //depot/projects/mjexp_6/sys/ufs/ffs/ffs_vnops.c#2 integrate
.. //depot/projects/mjexp_6/sys/ufs/ufs/ufs_vnops.c#3 integrate
.. //depot/projects/mjexp_6/sys/vm/pmap.h#2 integrate
.. //depot/projects/mjexp_6/sys/vm/vm_object.c#2 integrate
Differences ...
==== //depot/projects/mjexp_6/sys/amd64/amd64/io_apic.c#2 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.15.2.7 2006/12/01 17:13:56 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/io_apic.c,v 1.15.2.8 2007/03/12 19:50:29 jhb Exp $");
#include "opt_isa.h"
@@ -36,11 +36,15 @@
#include <sys/systm.h>
#include <sys/bus.h>
#include <sys/kernel.h>
+#include <sys/lock.h>
#include <sys/malloc.h>
-#include <sys/lock.h>
+#include <sys/module.h>
#include <sys/mutex.h>
#include <sys/sysctl.h>
+#include <dev/pci/pcireg.h>
+#include <dev/pci/pcivar.h>
+
#include <vm/vm.h>
#include <vm/pmap.h>
@@ -723,3 +727,46 @@
if (pin->io_irq < NUM_IO_INTS)
intr_register_source(&pin->io_intsrc);
}
+
+/* A simple new-bus driver to consume PCI I/O APIC devices. */
+static int
+ioapic_pci_probe(device_t dev)
+{
+
+ if (pci_get_class(dev) == PCIC_BASEPERIPH &&
+ pci_get_subclass(dev) == PCIS_BASEPERIPH_PIC) {
+ switch (pci_get_progif(dev)) {
+ case PCIP_BASEPERIPH_PIC_IO_APIC:
+ device_set_desc(dev, "IO APIC");
+ break;
+ case PCIP_BASEPERIPH_PIC_IOX_APIC:
+ device_set_desc(dev, "IO(x) APIC");
+ break;
+ default:
+ return (ENXIO);
+ }
+ device_quiet(dev);
+ return (-10000);
+ }
+ return (ENXIO);
+}
+
+static int
+ioapic_pci_attach(device_t dev)
+{
+
+ return (0);
+}
+
+static device_method_t ioapic_pci_methods[] = {
+ /* Device interface */
+ DEVMETHOD(device_probe, ioapic_pci_probe),
+ DEVMETHOD(device_attach, ioapic_pci_attach),
+
+ { 0, 0 }
+};
+
+DEFINE_CLASS_0(ioapic, ioapic_pci_driver, ioapic_pci_methods, 0);
+
+static devclass_t ioapic_devclass;
+DRIVER_MODULE(ioapic, pci, ioapic_pci_driver, ioapic_devclass, 0, 0);
==== //depot/projects/mjexp_6/sys/amd64/amd64/local_apic.c#2 (text+ko) ====
@@ -32,7 +32,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.17.2.11 2006/11/29 01:19:23 sobomax Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.17.2.12 2007/03/31 15:23:19 jhb Exp $");
#include "opt_hwpmc_hooks.h"
@@ -741,6 +741,65 @@
panic("Couldn't find an APIC vector for IRQ %u", irq);
}
+/*
+ * Request 'count' free contiguous IDT vectors to be used by 'count'
+ * IRQs. 'count' must be a power of two and the vectors will be
+ * aligned on a boundary of 'align'. If the request cannot be
+ * satisfied, 0 is returned.
+ */
+u_int
+apic_alloc_vectors(u_int *irqs, u_int count, u_int align)
+{
+ u_int first, run, vector;
+
+ KASSERT(powerof2(count), ("bad count"));
+ KASSERT(powerof2(align), ("bad align"));
+ KASSERT(align >= count, ("align < count"));
+#ifdef INVARIANTS
+ for (run = 0; run < count; run++)
+ KASSERT(irqs[run] < NUM_IO_INTS, ("Invalid IRQ %u at index %u",
+ irqs[run], run));
+#endif
+
+ /*
+ * Search for 'count' free vectors. As with apic_alloc_vector(),
+ * this just uses a simple first fit algorithm.
+ */
+ run = 0;
+ first = 0;
+ mtx_lock_spin(&icu_lock);
+ for (vector = 0; vector < APIC_NUM_IOINTS; vector++) {
+
+ /* Vector is in use, end run. */
+ if (ioint_irqs[vector] != 0) {
+ run = 0;
+ first = 0;
+ continue;
+ }
+
+ /* Start a new run if run == 0 and vector is aligned. */
+ if (run == 0) {
+ if ((vector & (align - 1)) != 0)
+ continue;
+ first = vector;
+ }
+ run++;
+
+ /* Keep looping if the run isn't long enough yet. */
+ if (run < count)
+ continue;
+
+ /* Found a run, assign IRQs and return the first vector. */
+ for (vector = 0; vector < count; vector++)
+ ioint_irqs[first + vector] = irqs[vector];
+ mtx_unlock_spin(&icu_lock);
+ return (first + APIC_IO_INTS);
+ }
+ mtx_unlock_spin(&icu_lock);
+ printf("APIC: Couldn't find APIC vectors for %u IRQs\n", count);
+ return (0);
+}
+
void
apic_enable_vector(u_int vector)
{
@@ -1001,6 +1060,9 @@
intr_register_pic(&lapic_pic);
if (bootverbose)
lapic_dump("BSP");
+
+ /* Enable the MSI "pic". */
+ msi_init();
}
SYSINIT(apic_setup_io, SI_SUB_INTR, SI_ORDER_SECOND, apic_setup_io, NULL)
==== //depot/projects/mjexp_6/sys/amd64/amd64/mptable_pci.c#3 (text+ko) ====
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable_pci.c,v 1.2.8.2 2006/12/28 22:09:46 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable_pci.c,v 1.2.8.3 2007/03/31 15:23:19 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -72,6 +72,27 @@
return (bus_generic_attach(dev));
}
+/* Pass MSI alloc requests up to the nexus. */
+static int
+mptable_hostb_alloc_msi(device_t pcib, device_t dev, int count, int maxcount,
+ int *irqs)
+{
+ device_t bus;
+
+ bus = device_get_parent(pcib);
+ return (PCIB_ALLOC_MSI(device_get_parent(bus), dev, count, maxcount,
+ irqs));
+}
+
+static int
+mptable_hostb_alloc_msix(device_t pcib, device_t dev, int index, int *irq)
+{
+ device_t bus;
+
+ bus = device_get_parent(pcib);
+ return (PCIB_ALLOC_MSIX(device_get_parent(bus), dev, index, irq));
+}
+
static device_method_t mptable_hostb_methods[] = {
/* Device interface */
DEVMETHOD(device_probe, mptable_hostb_probe),
@@ -96,6 +117,11 @@
DEVMETHOD(pcib_read_config, legacy_pcib_read_config),
DEVMETHOD(pcib_write_config, legacy_pcib_write_config),
DEVMETHOD(pcib_route_interrupt, mptable_pci_route_interrupt),
+ DEVMETHOD(pcib_alloc_msi, mptable_hostb_alloc_msi),
+ DEVMETHOD(pcib_release_msi, pcib_release_msi),
+ DEVMETHOD(pcib_alloc_msix, mptable_hostb_alloc_msix),
+ DEVMETHOD(pcib_remap_msix, pcib_remap_msix),
+ DEVMETHOD(pcib_release_msix, pcib_release_msix),
{ 0, 0 }
};
@@ -148,6 +174,11 @@
DEVMETHOD(pcib_read_config, pcib_read_config),
DEVMETHOD(pcib_write_config, pcib_write_config),
DEVMETHOD(pcib_route_interrupt, mptable_pci_route_interrupt),
+ DEVMETHOD(pcib_alloc_msi, pcib_alloc_msi),
+ DEVMETHOD(pcib_release_msi, pcib_release_msi),
+ DEVMETHOD(pcib_alloc_msix, pcib_alloc_msix),
+ DEVMETHOD(pcib_remap_msix, pcib_remap_msix),
+ DEVMETHOD(pcib_release_msix, pcib_release_msix),
{0, 0}
};
@@ -157,4 +188,3 @@
DEFINE_CLASS_0(pcib, mptable_pcib_driver, mptable_pcib_pci_methods,
sizeof(struct pcib_softc));
DRIVER_MODULE(mptable_pcib, pci, mptable_pcib_driver, pcib_devclass, 0, 0);
-
==== //depot/projects/mjexp_6/sys/amd64/amd64/nexus.c#2 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.66.2.1 2006/09/22 19:04:51 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.66.2.2 2007/03/31 15:23:19 jhb Exp $");
/*
* This code implements a `root nexus' for Intel Architecture
@@ -62,6 +62,8 @@
#include <machine/resource.h>
+#include "pcib_if.h"
+
#ifdef DEV_ISA
#include <isa/isavar.h>
#include <amd64/isa/isa.h>
@@ -101,6 +103,11 @@
static int nexus_set_resource(device_t, device_t, int, int, u_long, u_long);
static int nexus_get_resource(device_t, device_t, int, int, u_long *, u_long *);
static void nexus_delete_resource(device_t, device_t, int, int);
+static int nexus_alloc_msi(device_t pcib, device_t dev, int count, int maxcount, int *irqs);
+static int nexus_release_msi(device_t pcib, device_t dev, int count, int *irqs);
+static int nexus_alloc_msix(device_t pcib, device_t dev, int index, int *irq);
+static int nexus_remap_msix(device_t pcib, device_t dev, int index, int irq);
+static int nexus_release_msix(device_t pcib, device_t dev, int irq);
static device_method_t nexus_methods[] = {
/* Device interface */
@@ -126,6 +133,13 @@
DEVMETHOD(bus_get_resource, nexus_get_resource),
DEVMETHOD(bus_delete_resource, nexus_delete_resource),
+ /* pcib interface */
+ DEVMETHOD(pcib_alloc_msi, nexus_alloc_msi),
+ DEVMETHOD(pcib_release_msi, nexus_release_msi),
+ DEVMETHOD(pcib_alloc_msix, nexus_alloc_msix),
+ DEVMETHOD(pcib_remap_msix, nexus_remap_msix),
+ DEVMETHOD(pcib_release_msix, nexus_release_msix),
+
{ 0, 0 }
};
@@ -505,6 +519,54 @@
resource_list_delete(rl, type, rid);
}
+static int
+nexus_alloc_msix(device_t pcib, device_t dev, int index, int *irq)
+{
+ int error, new;
+
+ error = msix_alloc(dev, index, irq, &new);
+ if (new)
+ rman_manage_region(&irq_rman, *irq, *irq);
+ return (error);
+}
+
+static int
+nexus_remap_msix(device_t pcib, device_t dev, int index, int irq)
+{
+
+ return (msix_remap(index, irq));
+}
+
+static int
+nexus_release_msix(device_t pcib, device_t dev, int irq)
+{
+
+ return (msix_release(irq));
+}
+
+static int
+nexus_alloc_msi(device_t pcib, device_t dev, int count, int maxcount, int *irqs)
+{
+ int error, i, newirq, newcount;
+
+ /* First alloc the messages. */
+ error = msi_alloc(dev, count, maxcount, irqs, &newirq, &newcount);
+
+ /* Always add any new IRQs to the rman, even on failure. */
+ for (i = 0; i < newcount; i++)
+ rman_manage_region(&irq_rman, irqs[newirq + i],
+ irqs[newirq + i]);
+
+ return (error);
+}
+
+static int
+nexus_release_msi(device_t pcib, device_t dev, int count, int *irqs)
+{
+
+ return (msi_release(irqs, count));
+}
+
#ifdef DEV_ISA
/*
* Placeholder which claims PnP 'devices' which describe system
==== //depot/projects/mjexp_6/sys/amd64/conf/GENERIC#2 (text+ko) ====
@@ -16,7 +16,7 @@
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
-# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.439.2.17 2006/12/14 04:06:59 obrien Exp $
+# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.439.2.18 2007/03/27 02:33:00 yongari Exp $
machine amd64
cpu HAMMER
@@ -188,6 +188,7 @@
device dc # DEC/Intel 21143 and various workalikes
device fxp # Intel EtherExpress PRO/100B (82557, 82558)
device lge # Level 1 LXT1001 gigabit Ethernet
+device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet
device nge # NatSemi DP83820 gigabit Ethernet
device nve # nVidia nForce MCP on-board Ethernet Networking
device pcn # AMD Am79C97x PCI 10/100 (precedence over 'le')
==== //depot/projects/mjexp_6/sys/amd64/include/apicvar.h#2 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/amd64/include/apicvar.h,v 1.13.2.3 2006/10/30 18:03:03 jhb Exp $
+ * $FreeBSD: src/sys/amd64/include/apicvar.h,v 1.13.2.4 2007/03/31 15:23:20 jhb Exp $
*/
#ifndef _MACHINE_APICVAR_H_
@@ -174,6 +174,7 @@
IDTVEC(apic_isr7), IDTVEC(spuriousint), IDTVEC(timerint);
u_int apic_alloc_vector(u_int irq);
+u_int apic_alloc_vectors(u_int *irqs, u_int count, u_int align);
void apic_enable_vector(u_int vector);
void apic_free_vector(u_int vector, u_int irq);
u_int apic_idt_to_irq(u_int vector);
==== //depot/projects/mjexp_6/sys/amd64/include/intr_machdep.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/amd64/include/intr_machdep.h,v 1.5.2.5 2006/10/30 18:03:03 jhb Exp $
+ * $FreeBSD: src/sys/amd64/include/intr_machdep.h,v 1.5.2.6 2007/03/31 15:23:20 jhb Exp $
*/
#ifndef __MACHINE_INTR_MACHDEP_H__
@@ -43,11 +43,18 @@
* 191 and still be safe since only interrupt sources in actual use will
* allocate IDT vectors.
*
- * For now we stick with 255 as ISA IRQs and PCI intline IRQs only allow
- * for IRQs in the range 0 - 254. When MSI support is added this number
- * will likely increase.
+ * The first 255 IRQs (0 - 254) are reserved for ISA IRQs and PCI intline IRQs.
+ * IRQ values beyond 256 are used by MSI. We leave 255 unused to avoid
+ * confusion since 255 is used in PCI to indicate an invalid IRQ.
+ */
+#define NUM_MSI_INTS 128
+#define FIRST_MSI_INT 256
+#define NUM_IO_INTS (FIRST_MSI_INT + NUM_MSI_INTS)
+
+/*
+ * Default base address for MSI messages on x86 platforms.
*/
-#define NUM_IO_INTS 255
+#define MSI_INTEL_ADDR_BASE 0xfee00000
/*
* - 1 ??? dummy counter.
@@ -140,6 +147,13 @@
void intr_resume(void);
void intr_suspend(void);
void intrcnt_add(const char *name, u_long **countp);
+int msi_alloc(device_t dev, int count, int maxcount, int *irqs, int *newirq,
+ int *newcount);
+void msi_init(void);
+int msi_release(int *irqs, int count);
+int msix_alloc(device_t dev, int index, int *irq, int *new);
+int msix_remap(int index, int irq);
+int msix_release(int irq);
#endif /* !LOCORE */
#endif /* _KERNEL */
==== //depot/projects/mjexp_6/sys/amd64/pci/pci_bus.c#3 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/pci/pci_bus.c,v 1.113.2.2 2006/12/28 22:09:46 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/pci/pci_bus.c,v 1.113.2.3 2007/03/31 15:23:20 jhb Exp $");
#include "opt_cpu.h"
@@ -81,6 +81,28 @@
return (PCI_INVALID_IRQ);
}
+/* Pass MSI alloc requests up to the nexus. */
+
+static int
+legacy_pcib_alloc_msi(device_t pcib, device_t dev, int count, int maxcount,
+ int *irqs)
+{
+ device_t bus;
+
+ bus = device_get_parent(pcib);
+ return (PCIB_ALLOC_MSI(device_get_parent(bus), dev, count, maxcount,
+ irqs));
+}
+
+static int
+legacy_pcib_alloc_msix(device_t pcib, device_t dev, int index, int *irq)
+{
+ device_t bus;
+
+ bus = device_get_parent(pcib);
+ return (PCIB_ALLOC_MSIX(device_get_parent(bus), dev, index, irq));
+}
+
static const char *
legacy_pcib_is_host_bridge(int bus, int slot, int func,
uint32_t id, uint8_t class, uint8_t subclass,
@@ -322,6 +344,11 @@
DEVMETHOD(pcib_read_config, legacy_pcib_read_config),
DEVMETHOD(pcib_write_config, legacy_pcib_write_config),
DEVMETHOD(pcib_route_interrupt, legacy_pcib_route_interrupt),
+ DEVMETHOD(pcib_alloc_msi, legacy_pcib_alloc_msi),
+ DEVMETHOD(pcib_release_msi, pcib_release_msi),
+ DEVMETHOD(pcib_alloc_msix, legacy_pcib_alloc_msix),
+ DEVMETHOD(pcib_remap_msix, pcib_remap_msix),
+ DEVMETHOD(pcib_release_msix, pcib_release_msix),
{ 0, 0 }
};
==== //depot/projects/mjexp_6/sys/arm/arm/identcpu.c#2 (text+ko) ====
@@ -42,7 +42,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/identcpu.c,v 1.4 2005/01/05 21:58:47 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/identcpu.c,v 1.4.2.1 2007/03/10 00:16:52 sam Exp $");
#include <sys/systm.h>
#include <sys/param.h>
#include <sys/malloc.h>
@@ -134,7 +134,7 @@
};
static const char * const ixp425_steppings[16] = {
- "step 0", "rev 1", "rev 2", "rev 3",
+ "step 0 (A0)", "rev 1 (ARMv5TE)", "rev 2", "rev 3",
"rev 4", "rev 5", "rev 6", "rev 7",
"rev 8", "rev 9", "rev 10", "rev 11",
"rev 12", "rev 13", "rev 14", "rev 15",
==== //depot/projects/mjexp_6/sys/arm/xscale/i80321/i80321_wdog.c#3 (text+ko) ====
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/xscale/i80321/i80321_wdog.c,v 1.2.2.1 2007/02/20 22:56:27 n_hibma Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/xscale/i80321/i80321_wdog.c,v 1.2.2.2 2007/03/30 19:17:36 n_hibma Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -118,11 +118,9 @@
sc->armed = 1;
*error = 0;
} else {
- /* XXX Can't disable this watchdog? */
+ /* Can't disable this watchdog! */
if (sc->armed)
*error = EOPNOTSUPP;
- else if (cmd > 0)
- *error = EINVAL;
}
}
==== //depot/projects/mjexp_6/sys/arm/xscale/ixp425/ixp425_wdog.c#2 (text+ko) ====
@@ -22,7 +22,7 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/ixp425_wdog.c,v 1.1.2.1 2007/02/26 23:13:09 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/xscale/ixp425/ixp425_wdog.c,v 1.1.2.2 2007/03/30 19:17:37 n_hibma Exp $");
/*
* IXP425 Watchdog Timer Support.
@@ -70,7 +70,7 @@
u_int u = cmd & WD_INTERVAL;
WR4(sc, IXP425_OST_WDOG_KEY, OST_WDOG_KEY_MAJICK);
- if (cmd && 4 <= u && u <= 35) {
+ if (4 <= u && u <= 35) {
WR4(sc, IXP425_OST_WDOG_ENAB, 0);
/* approximate 66.66MHz cycles */
WR4(sc, IXP425_OST_WDOG, 2<<(u - 4));
==== //depot/projects/mjexp_6/sys/boot/forth/loader.conf#3 (text+ko) ====
@@ -6,7 +6,7 @@
#
# All arguments must be in double quotes.
#
-# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.95.2.11 2007/01/17 02:45:35 maxim Exp $
+# $FreeBSD: src/sys/boot/forth/loader.conf,v 1.95.2.12 2007/03/27 02:29:45 yongari Exp $
##############################################################
### Basic configuration options ############################
@@ -238,6 +238,7 @@
if_lge_load="NO" # Level 1 LXT1001 NetCellerator PCI Gigabit
# Ethernet
if_lnc_load="NO" # AMD Lance/PCnet Ethernet
+if_msk_load="NO" # Marvell/SysKonnect Yukon II Gigabit Ethernet
if_my_load="NO" # Myson PCI Fast Ethernet
if_nge_load="NO" # National Semiconductor PCI Gigabit Ethernet
if_nve_load="NO" # NVIDIA nForce MCP Networking Adapter
==== //depot/projects/mjexp_6/sys/boot/pc98/cdboot/cdboot.s#2 (text+ko) ====
@@ -28,7 +28,7 @@
# SUCH DAMAGE.
#
-# $FreeBSD: src/sys/boot/pc98/cdboot/cdboot.s,v 1.1.2.1 2006/06/16 13:40:50 nyan Exp $
+# $FreeBSD: src/sys/boot/pc98/cdboot/cdboot.s,v 1.1.2.2 2007/03/21 03:41:25 nyan Exp $
#
# Basically, we first create a set of boot arguments to pass to the loaded
@@ -705,7 +705,7 @@
twiddle: push %ax # Save
push %bx # Save
mov twiddle_index,%al # Load index
- mov twiddle_chars,%bx # Address table
+ mov $twiddle_chars,%bx # Address table
inc %al # Next
and $3,%al # char
mov %al,twiddle_index # Save index for next call
==== //depot/projects/mjexp_6/sys/cam/cam_xpt.c#4 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/cam/cam_xpt.c,v 1.155.2.10 2006/12/24 03:23:43 mjacob Exp $");
+__FBSDID("$FreeBSD: src/sys/cam/cam_xpt.c,v 1.155.2.11 2007/03/08 05:30:26 mjacob Exp $");
#include <sys/param.h>
#include <sys/bus.h>
==== //depot/projects/mjexp_6/sys/cam/cam_xpt.h#3 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/cam/cam_xpt.h,v 1.5.2.1 2006/12/16 07:05:54 mjacob Exp $
+ * $FreeBSD: src/sys/cam/cam_xpt.h,v 1.5.2.2 2007/03/08 05:30:26 mjacob Exp $
*/
#ifndef _CAM_CAM_XPT_H
==== //depot/projects/mjexp_6/sys/conf/NOTES#5 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/NOTES,v 1.1325.2.26 2007/01/28 17:14:56 glebius Exp $
+# $FreeBSD: src/sys/conf/NOTES,v 1.1325.2.28 2007/03/27 02:20:20 yongari Exp $
#
# NOTES -- Lines that can be cut/pasted into kernel and hints configs.
#
@@ -1739,6 +1739,10 @@
# lge: Support for PCI gigabit ethernet adapters based on the Level 1
# LXT1001 NetCellerator chipset. This includes the D-Link DGE-500SX,
# SMC TigerCard 1000 (SMC9462SX), and some Addtron cards.
+# msk: Support for gigabit ethernet adapters based on the Marvell/SysKonnect
+# Yukon II Gigabit controllers, including 88E8021, 88E8022, 88E8061,
+# 88E8062, 88E8035, 88E8036, 88E8038, 88E8050, 88E8052, 88E8053,
+# 88E8055, 88E8056 and D-Link 560T/550SX.
# my: Myson Fast Ethernet (MTD80X, MTD89X)
# nge: Support for PCI gigabit ethernet adapters based on the National
# Semiconductor DP83820 and DP83821 chipset. This includes the
@@ -1862,6 +1866,7 @@
# PCI Gigabit & FDDI NICs.
device bge
+device cxgb # Chelsio T3 10 Gigabit Ethernet
device lge
device nge
device sk
==== //depot/projects/mjexp_6/sys/conf/files#6 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.1031.2.51 2007/02/26 23:17:51 cognet Exp $
+# $FreeBSD: src/sys/conf/files,v 1.1031.2.54 2007/03/27 02:20:20 yongari Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -364,6 +364,7 @@
dev/acpica/acpi_cmbat.c optional acpi
dev/acpica/acpi_cpu.c optional acpi
dev/acpica/acpi_ec.c optional acpi
+dev/acpica/acpi_hpet.c optional acpi
dev/acpica/acpi_isab.c optional acpi isa
dev/acpica/acpi_lid.c optional acpi
dev/acpica/acpi_package.c optional acpi
@@ -381,6 +382,7 @@
dev/acpica/acpi_throttle.c optional acpi
dev/acpica/acpi_timer.c optional acpi
dev/acpica/acpi_video.c optional acpi_video acpi
+dev/acpica/acpi_dock.c optional acpi_dock acpi
dev/adlink/adlink.c optional adlink
dev/advansys/adv_eisa.c optional adv eisa
dev/advansys/adv_pci.c optional adv pci
@@ -477,6 +479,15 @@
dev/cs/if_cs.c optional cs
dev/cs/if_cs_isa.c optional cs isa
dev/cs/if_cs_pccard.c optional cs pccard
+dev/cxgb/cxgb_main.c optional cxgb pci
+dev/cxgb/cxgb_lro.c optional cxgb pci
+dev/cxgb/cxgb_sge.c optional cxgb pci
+dev/cxgb/common/cxgb_mc5.c optional cxgb pci
+dev/cxgb/common/cxgb_vsc8211.c optional cxgb pci
+dev/cxgb/common/cxgb_ael1002.c optional cxgb pci
+dev/cxgb/common/cxgb_mv88e1xxx.c optional cxgb pci
+dev/cxgb/common/cxgb_xgmac.c optional cxgb pci
+dev/cxgb/common/cxgb_t3_hw.c optional cxgb pci
dev/cy/cy.c optional cy
dev/cy/cy_isa.c optional cy isa
dev/cy/cy_pci.c optional cy pci
@@ -747,6 +758,7 @@
dev/mpt/mpt_debug.c optional mpt
dev/mpt/mpt_pci.c optional mpt pci
dev/mpt/mpt_raid.c optional mpt
+dev/msk/if_msk.c optional msk
dev/my/if_my.c optional my
dev/ncv/ncr53c500.c optional ncv
dev/ncv/ncr53c500_pccard.c optional ncv pccard
==== //depot/projects/mjexp_6/sys/conf/files.amd64#2 (text+ko) ====
@@ -1,7 +1,7 @@
# This file tells config what files go into building a kernel,
# files marked standard are always included.
#
-# $FreeBSD: src/sys/conf/files.amd64,v 1.71.2.10 2006/09/29 21:21:52 jhb Exp $
+# $FreeBSD: src/sys/conf/files.amd64,v 1.71.2.11 2007/03/31 20:21:14 jhb Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -113,6 +113,7 @@
amd64/amd64/mpboot.S optional smp
amd64/amd64/mptable.c optional mptable
amd64/amd64/mptable_pci.c optional mptable pci
+amd64/amd64/msi.c optional pci
amd64/amd64/nexus.c standard
amd64/amd64/pmap.c standard
amd64/amd64/prof_machdep.c optional profiling-routine
==== //depot/projects/mjexp_6/sys/conf/files.arm#4 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files.arm,v 1.8.2.3 2007/02/27 00:02:40 cognet Exp $
+# $FreeBSD: src/sys/conf/files.arm,v 1.8.2.4 2007/03/10 00:19:24 sam Exp $
crypto/blowfish/bf_enc.c optional crypto | ipsec ipsec_esp
crypto/des/des_enc.c optional crypto | ipsec ipsec_esp | \
netsmb
@@ -54,6 +54,13 @@
geom/geom_bsd_enc.c standard
geom/geom_mbr.c standard
geom/geom_mbr_enc.c standard
+hal.o optional ath_hal \
+ compile-with "ATH_HAL_CPU=`echo ${CONF_CFLAGS}|sed 's/.*-mcpu=\([a-zA-Z0-9]*\).*/\1/'`; ATH_ENDIAN=`if (echo ${CC}|grep mbig-endian>/dev/null); then echo be; else echo le; fi;`; uudecode < $S/contrib/dev/ath/public/$$ATH_HAL_CPU-$$ATH_ENDIAN-elf.hal.o.uu" \
+ no-implicit-rule
+opt_ah.h optional ath_hal \
+ compile-with "ATH_HAL_CPU=`echo ${CONF_CFLAGS}|sed 's/.*-mcpu=\([a-zA-Z0-9]*\).*/\1/'`; ATH_ENDIAN=`if (echo ${CC}|grep mbig-endian>/dev/null); then echo be; else echo le; fi;`; rm -f opt_ah.h; cp $S/contrib/dev/ath/public/$$ATH_HAL_CPU-$$ATH_ENDIAN-elf.opt_ah.h opt_ah.h" \
+ no-obj no-implicit-rule before-depend \
+ clean "opt_ah.h"
libkern/arm/divsi3.S standard
libkern/arm/ffs.S standard
libkern/arm/muldi3.c standard
==== //depot/projects/mjexp_6/sys/conf/files.i386#2 (text+ko) ====
@@ -1,7 +1,7 @@
# This file tells config what files go into building a kernel,
# files marked standard are always included.
#
-# $FreeBSD: src/sys/conf/files.i386,v 1.538.2.12 2006/09/29 21:21:52 jhb Exp $
+# $FreeBSD: src/sys/conf/files.i386,v 1.538.2.13 2007/03/31 20:21:14 jhb Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -307,6 +307,7 @@
i386/i386/mpboot.s optional smp
i386/i386/mptable.c optional apic
i386/i386/mptable_pci.c optional apic pci
+i386/i386/msi.c optional apic pci
i386/i386/nexus.c standard
i386/i386/perfmon.c optional perfmon
i386/i386/perfmon.c optional perfmon profiling-routine
==== //depot/projects/mjexp_6/sys/conf/files.pc98#2 (text+ko) ====
@@ -3,7 +3,7 @@
#
# modified for PC-9801/PC-9821
#
-# $FreeBSD: src/sys/conf/files.pc98,v 1.327.2.6 2006/07/26 11:57:24 nyan Exp $
+# $FreeBSD: src/sys/conf/files.pc98,v 1.327.2.7 2007/04/04 15:51:09 nyan Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -187,6 +187,7 @@
i386/i386/mpboot.s optional smp
i386/i386/mptable.c optional apic
i386/i386/mptable_pci.c optional apic pci
+i386/i386/msi.c optional apic pci
i386/i386/nexus.c standard
i386/i386/perfmon.c optional perfmon
i386/i386/perfmon.c optional perfmon profiling-routine
==== //depot/projects/mjexp_6/sys/dev/acpica/Osd/OsdDebug.c#2 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/acpica/Osd/OsdDebug.c,v 1.9.2.2 2005/11/07 09:53:23 obrien Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/acpica/Osd/OsdDebug.c,v 1.9.2.3 2007/03/14 19:50:07 njl Exp $");
#include "opt_ddb.h"
#include <sys/param.h>
@@ -78,9 +78,11 @@
switch (Function) {
case ACPI_SIGNAL_FATAL:
fatal = (ACPI_SIGNAL_FATAL_INFO *)Info;
- printf("ACPI fatal signal, type 0x%x code 0x%x argument 0x%x",
+ printf("ACPI fatal signal, type 0x%x code 0x%x argument 0x%x",
fatal->Type, fatal->Code, fatal->Argument);
+#ifdef ACPI_DEBUG
kdb_enter("AcpiOsSignal");
+#endif
break;
case ACPI_SIGNAL_BREAKPOINT:
==== //depot/projects/mjexp_6/sys/dev/acpica/acpi_battery.c#2 (text+ko) ====
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list