From owner-p4-projects@FreeBSD.ORG Mon Jan 23 20:55:24 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0EB6A16A422; Mon, 23 Jan 2006 20:55:24 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BFB6F16A41F for ; Mon, 23 Jan 2006 20:55:23 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5D91643D55 for ; Mon, 23 Jan 2006 20:55:23 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0NKtNCO093452 for ; Mon, 23 Jan 2006 20:55:23 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0NKtMf2093449 for perforce@freebsd.org; Mon, 23 Jan 2006 20:55:22 GMT (envelope-from peter@freebsd.org) Date: Mon, 23 Jan 2006 20:55:22 GMT Message-Id: <200601232055.k0NKtMf2093449@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 90237 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 23 Jan 2006 20:55:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=90237 Change 90237 by peter@peter_daintree on 2006/01/23 20:55:11 Integ -b i386_hammer (minus mem.c) Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/apic_vector.S#37 integrate .. //depot/projects/hammer/sys/amd64/amd64/busdma_machdep.c#39 integrate .. //depot/projects/hammer/sys/amd64/amd64/cpu_switch.S#36 integrate .. //depot/projects/hammer/sys/amd64/amd64/db_trace.c#36 integrate .. //depot/projects/hammer/sys/amd64/amd64/elf_machdep.c#35 integrate .. //depot/projects/hammer/sys/amd64/amd64/exception.S#45 integrate .. //depot/projects/hammer/sys/amd64/amd64/fpu.c#30 integrate .. //depot/projects/hammer/sys/amd64/amd64/genassym.c#42 integrate .. //depot/projects/hammer/sys/amd64/amd64/identcpu.c#49 integrate .. //depot/projects/hammer/sys/amd64/amd64/intr_machdep.c#44 integrate .. //depot/projects/hammer/sys/amd64/amd64/local_apic.c#64 integrate .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#149 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#114 integrate .. //depot/projects/hammer/sys/amd64/amd64/mptable_pci.c#12 integrate .. //depot/projects/hammer/sys/amd64/amd64/sys_machdep.c#26 integrate .. //depot/projects/hammer/sys/amd64/amd64/trap.c#85 integrate .. //depot/projects/hammer/sys/amd64/conf/GENERIC#87 integrate .. //depot/projects/hammer/sys/amd64/conf/NOTES#92 integrate .. //depot/projects/hammer/sys/amd64/include/_types.h#17 integrate .. //depot/projects/hammer/sys/amd64/include/apicvar.h#40 integrate .. //depot/projects/hammer/sys/amd64/include/asmacros.h#13 integrate .. //depot/projects/hammer/sys/amd64/include/bus.h#15 integrate .. //depot/projects/hammer/sys/amd64/include/clock.h#20 integrate .. //depot/projects/hammer/sys/amd64/include/cpu.h#19 integrate .. //depot/projects/hammer/sys/amd64/include/frame.h#17 integrate .. //depot/projects/hammer/sys/amd64/include/intr_machdep.h#21 integrate .. //depot/projects/hammer/sys/amd64/include/param.h#34 integrate .. //depot/projects/hammer/sys/amd64/include/pcb.h#25 integrate .. //depot/projects/hammer/sys/amd64/include/pcpu.h#24 integrate .. //depot/projects/hammer/sys/amd64/include/pmap.h#58 integrate .. //depot/projects/hammer/sys/amd64/include/smp.h#31 integrate .. //depot/projects/hammer/sys/amd64/isa/atpic.c#54 integrate .. //depot/projects/hammer/sys/amd64/isa/atpic_vector.S#23 integrate .. //depot/projects/hammer/sys/amd64/isa/clock.c#56 integrate .. //depot/projects/hammer/sys/amd64/isa/icu.h#24 integrate .. //depot/projects/hammer/sys/amd64/pci/pci_bus.c#33 integrate .. //depot/projects/hammer/sys/amd64/pci/pci_cfgreg.c#25 integrate Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/apic_vector.S#37 (text+ko) ==== @@ -188,11 +188,7 @@ jmp doreti /* - * Executed by a CPU when it receives an Xcpustop IPI from another CPU, - * - * - Signals its receipt. - * - Waits for permission to restart. - * - Signals its restart. + * Executed by a CPU when it receives an IPI_STOP from another CPU. */ .text SUPERALIGN_TEXT ==== //depot/projects/hammer/sys/amd64/amd64/busdma_machdep.c#39 (text+ko) ==== @@ -28,6 +28,9 @@ __FBSDID("$FreeBSD: src/sys/amd64/amd64/busdma_machdep.c,v 1.73 2006/01/14 17:22:46 scottl Exp $"); #include +#include +#include +#include #include #include #include ==== //depot/projects/hammer/sys/amd64/amd64/cpu_switch.S#36 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/db_trace.c#36 (text+ko) ==== @@ -192,6 +192,7 @@ #define TRAP 1 #define INTERRUPT 2 #define SYSCALL 3 +#define TRAP_INTERRUPT 5 static void db_nextframe(struct amd64_frame **, db_addr_t *, struct thread *); static int db_numargs(struct amd64_frame *); @@ -326,6 +327,12 @@ frame_type = INTERRUPT; else if (strcmp(name, "Xfast_syscall") == 0) frame_type = SYSCALL; + /* XXX: These are interrupts with trap frames. */ + else if (strcmp(name, "Xtimerint") == 0 || + strcmp(name, "Xcpustop") == 0 || + strcmp(name, "Xrendezvous") == 0 || + strcmp(name, "Xipi_intr_bitmap_handler") == 0) + frame_type = TRAP_INTERRUPT; } /* @@ -357,6 +364,7 @@ db_printf("--- syscall"); decode_syscall(tf->tf_rax, td); break; + case TRAP_INTERRUPT: case INTERRUPT: db_printf("--- interrupt"); break; ==== //depot/projects/hammer/sys/amd64/amd64/elf_machdep.c#35 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/exception.S#45 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/fpu.c#30 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/genassym.c#42 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/identcpu.c#49 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/intr_machdep.c#44 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/local_apic.c#64 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/machdep.c#149 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#114 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/mptable_pci.c#12 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/sys_machdep.c#26 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/amd64/trap.c#85 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/conf/GENERIC#87 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/conf/NOTES#92 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# (XXX from i386:NOTES,v 1.1214) +# (XXX from i386:NOTES,v 1.1217) # $FreeBSD: src/sys/amd64/conf/NOTES,v 1.51 2005/12/03 01:23:49 anholt Exp $ # @@ -220,6 +220,7 @@ # # ath: Atheros a/b/g WiFi adapters (requires ath_hal and wlan) +# cs: IBM Etherjet and other Crystal Semi CS89x0-based adapters # ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503 # HP PC Lan+, various PC Card devices (refer to etc/defaults/pccard.conf) # (requires miibus) @@ -227,6 +228,9 @@ # Am79C960) # nve: nVidia nForce MCP on-board Ethernet Networking +device cs +hint.cs.0.at="isa" +hint.cs.0.port="0x300" device ed options ED_3C503 options ED_HPP ==== //depot/projects/hammer/sys/amd64/include/_types.h#17 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/apicvar.h#40 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/asmacros.h#13 (text+ko) ==== @@ -130,7 +130,7 @@ #ifdef LOCORE /* - * Convenience macros for declaring interrupt entry points. + * Convenience macro for declaring interrupt entry points. */ #define IDTVEC(name) ALIGN_TEXT; .globl __CONCAT(X,name); \ .type __CONCAT(X,name),@function; __CONCAT(X,name): ==== //depot/projects/hammer/sys/amd64/include/bus.h#15 (text+ko) ==== @@ -1004,6 +1004,17 @@ #endif } +#ifdef BUS_SPACE_NO_LEGACY +#undef inb +#undef outb +#define inb(a) compiler_error +#define inw(a) compiler_error +#define inl(a) compiler_error +#define outb(a, b) compiler_error +#define outw(a, b) compiler_error +#define outl(a, b) compiler_error +#endif + #include /* ==== //depot/projects/hammer/sys/amd64/include/clock.h#20 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/cpu.h#19 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/frame.h#17 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/intr_machdep.h#21 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/param.h#34 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/pcb.h#25 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/pcpu.h#24 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/include/pmap.h#58 (text+ko) ==== @@ -176,7 +176,7 @@ * the corresponding pde that in turn maps it. */ pt_entry_t *vtopte(vm_offset_t); -#define vtophys(va) pmap_kextract((vm_offset_t)(va)) +#define vtophys(va) pmap_kextract(((vm_offset_t) (va))) static __inline pt_entry_t pte_load(pt_entry_t *ptep) ==== //depot/projects/hammer/sys/amd64/include/smp.h#31 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/isa/atpic.c#54 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/isa/atpic_vector.S#23 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/isa/clock.c#56 (text+ko) ==== @@ -286,16 +286,6 @@ return; } #ifdef DELAYDEBUG - sched_pin(); - start = rdtsc(); - end = start + (tsc_freq * n) / 1000000; - do { - now = rdtsc(); - } while (now < end || (now > start && end < start)); - sched_unpin(); - return; - } -#ifdef DELAYDEBUG if (state == 0) { state = 1; for (n1 = 1; n1 <= 10000000; n1 *= 10) ==== //depot/projects/hammer/sys/amd64/isa/icu.h#24 (text+ko) ==== ==== //depot/projects/hammer/sys/amd64/pci/pci_bus.c#33 (text+ko) ==== @@ -326,10 +326,10 @@ { 0, 0 } }; -static devclass_t pcib_devclass; +static devclass_t hostb_devclass; DEFINE_CLASS_0(pcib, legacy_pcib_driver, legacy_pcib_methods, 1); -DRIVER_MODULE(pcib, legacy, legacy_pcib_driver, pcib_devclass, 0, 0); +DRIVER_MODULE(pcib, legacy, legacy_pcib_driver, hostb_devclass, 0, 0); /* ==== //depot/projects/hammer/sys/amd64/pci/pci_cfgreg.c#25 (text+ko) ====