CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Tue Nov 5 18:41:57 UTC 2013 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLPEVB Log Message: Add xhci To generate a diff of this commit: cvs rdiff -u -r1.1.2.7 -r1.1.2.8 src/sys/arch/evbmips/conf/XLPEVB Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLPEVB diff -u src/sys/arch/evbmips/conf/XLPEVB:1.1.2.7 src/sys/arch/evbmips/conf/XLPEVB:1.1.2.8 --- src/sys/arch/evbmips/conf/XLPEVB:1.1.2.7 Fri Feb 10 08:54:18 2012 +++ src/sys/arch/evbmips/conf/XLPEVB Tue Nov 5 18:41:57 2013 @@ -1,8 +1,8 @@ -# $NetBSD: XLPEVB,v 1.1.2.7 2012/02/10 08:54:18 matt Exp $ +# $NetBSD: XLPEVB,v 1.1.2.8 2013/11/05 18:41:57 matt Exp $ include arch/evbmips/conf/std.rmixlp -#ident XLSATX-$Revision: 1.1.2.7 $ +#ident XLSATX-$Revision: 1.1.2.8 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -153,6 +153,7 @@ ukphy* at mii? phy ? # unknown PHY com* at pci? dev ? function ? ehci* at pci? dev ? function ? ohci* at pci? dev ? function ? +xhci* at pci? dev ? function ? xlsdio* at pci? dev ? function ? sdhc* at xlsdio? slot 0 sdmmc* at sdhc? @@ -195,6 +196,7 @@ wd* at atabus? drive ? flags 0x # USB usb* at ohci? usb* at ehci? +usb* at xhci? uhub* at usb? uhub* at uhub? port ? umass* at uhub? port ? configuration ? interface ?
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Wed Feb 15 17:00:54 UTC 2012 Added Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX32.MP Log Message: Add a N32 MP config. To generate a diff of this commit: cvs rdiff -u -r0 -r1.1.2.1 src/sys/arch/evbmips/conf/XLSATX32.MP Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/sys/arch/evbmips/conf/XLSATX32.MP diff -u /dev/null src/sys/arch/evbmips/conf/XLSATX32.MP:1.1.2.1 --- /dev/null Wed Feb 15 17:00:54 2012 +++ src/sys/arch/evbmips/conf/XLSATX32.MP Wed Feb 15 17:00:54 2012 @@ -0,0 +1,8 @@ +# XLSATX64.MP,v 1.1.2.1 2010/01/24 05:27:47 cliff Exp +# +include arch/evbmips/conf/XLSATX32 + +options MULTIPROCESSOR +options LOCKDEBUG + +pseudo-device lockstat
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Fri Feb 10 08:54:19 UTC 2012 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLPEVB Log Message: Bump SYMTAB_SPACE. To generate a diff of this commit: cvs rdiff -u -r1.1.2.6 -r1.1.2.7 src/sys/arch/evbmips/conf/XLPEVB Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLPEVB diff -u src/sys/arch/evbmips/conf/XLPEVB:1.1.2.6 src/sys/arch/evbmips/conf/XLPEVB:1.1.2.7 --- src/sys/arch/evbmips/conf/XLPEVB:1.1.2.6 Thu Jan 19 17:42:26 2012 +++ src/sys/arch/evbmips/conf/XLPEVB Fri Feb 10 08:54:18 2012 @@ -1,8 +1,8 @@ -# $NetBSD: XLPEVB,v 1.1.2.6 2012/01/19 17:42:26 matt Exp $ +# $NetBSD: XLPEVB,v 1.1.2.7 2012/02/10 08:54:18 matt Exp $ include arch/evbmips/conf/std.rmixlp -#ident XLSATX-$Revision: 1.1.2.6 $ +#ident XLSATX-$Revision: 1.1.2.7 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -41,7 +41,7 @@ options USERCONF # userconf(4) support options DDB # kernel dynamic debugger options DDB_HISTORY_SIZE=100 # enable history editing in DDB makeoptions DEBUG=-g # compile full symbol table -options SYMTAB_SPACE=50 # size for embedded symbol table +options SYMTAB_SPACE=51 # size for embedded symbol table #options DDB_COMMANDONENTER=trace;show registers options DB_MAX_LINE=-1
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Fri Feb 10 06:00:15 UTC 2012 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: MALTA MALTA32 MALTA64 Log Message: O32 MALTA uses FPU, N32/N64 MALTA does not. To generate a diff of this commit: cvs rdiff -u -r1.48.8.4 -r1.48.8.5 src/sys/arch/evbmips/conf/MALTA cvs rdiff -u -r1.1.2.3 -r1.1.2.4 src/sys/arch/evbmips/conf/MALTA32 cvs rdiff -u -r1.1.2.4 -r1.1.2.5 src/sys/arch/evbmips/conf/MALTA64 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/MALTA diff -u src/sys/arch/evbmips/conf/MALTA:1.48.8.4 src/sys/arch/evbmips/conf/MALTA:1.48.8.5 --- src/sys/arch/evbmips/conf/MALTA:1.48.8.4 Fri May 20 16:38:25 2011 +++ src/sys/arch/evbmips/conf/MALTA Fri Feb 10 06:00:15 2012 @@ -10,7 +10,7 @@ maxusers 32 options MIPS32 options MIPS64 -options NOFPU # No FPU +#options NOFPU # No FPU #options FPEMUL # emulate FPU insn # Options for necessary to use MD Index: src/sys/arch/evbmips/conf/MALTA32 diff -u src/sys/arch/evbmips/conf/MALTA32:1.1.2.3 src/sys/arch/evbmips/conf/MALTA32:1.1.2.4 --- src/sys/arch/evbmips/conf/MALTA32:1.1.2.3 Thu Feb 9 03:12:09 2012 +++ src/sys/arch/evbmips/conf/MALTA32 Fri Feb 10 06:00:15 2012 @@ -5,5 +5,6 @@ include arch/evbmips/conf/MALTA makeoptions LP64=no no options MIPS32 +options NOFPU no ath* Index: src/sys/arch/evbmips/conf/MALTA64 diff -u src/sys/arch/evbmips/conf/MALTA64:1.1.2.4 src/sys/arch/evbmips/conf/MALTA64:1.1.2.5 --- src/sys/arch/evbmips/conf/MALTA64:1.1.2.4 Fri Jan 29 00:16:58 2010 +++ src/sys/arch/evbmips/conf/MALTA64 Fri Feb 10 06:00:15 2012 @@ -1,10 +1,11 @@ -# $NetBSD: MALTA64,v 1.1.2.4 2010/01/29 00:16:58 matt Exp $ +# MALTA64,v 1.1.2.4 2010/01/29 00:16:58 matt Exp # include arch/evbmips/conf/MALTA makeoptions LP64=yes no options MIPS32 +options NOFPU options EXEC_ELF64 options COMPAT_NETBSD32 no options SYMTAB_SPACE
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/include
Module Name:src Committed By: matt Date: Thu Feb 9 03:11:39 UTC 2012 Modified Files: src/sys/arch/evbmips/include [matt-nb5-mips64]: vmparam.h Log Message: VM_FREELIST_MAX is not used by anything. Should be VM_NFREELIST Add macros to test a PA to see if it belonds to a VM_FREELIST_* To generate a diff of this commit: cvs rdiff -u -r1.1.142.5 -r1.1.142.6 src/sys/arch/evbmips/include/vmparam.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/include/vmparam.h diff -u src/sys/arch/evbmips/include/vmparam.h:1.1.142.5 src/sys/arch/evbmips/include/vmparam.h:1.1.142.6 --- src/sys/arch/evbmips/include/vmparam.h:1.1.142.5 Tue Nov 29 07:48:32 2011 +++ src/sys/arch/evbmips/include/vmparam.h Thu Feb 9 03:11:39 2012 @@ -1,19 +1,21 @@ -/* $NetBSD: vmparam.h,v 1.1.142.5 2011/11/29 07:48:32 matt Exp $ */ +/* vmparam.h,v 1.1.142.5 2011/11/29 07:48:32 matt Exp */ #ifndef _EVBMIPS_VMPARAM_H_ #define _EVBMIPS_VMPARAM_H_ #include mips/vmparam.h -#define VM_PHYSSEG_MAX 32 +#define VM_PHYSSEG_MAX 32 -#undef VM_FREELIST_MAX -#define VM_FREELIST_MAX 3 +#undef VM_NFREELIST +#define VM_NFREELIST 3 #if defined(_MIPS_PADDR_T_64BIT) || defined(_LP64) -#define VM_FREELIST_FIRST4G 2 +#define VM_FREELIST_FIRST4G 2 +#define VM_FREELIST_FIRST4G_P(pa) (((pa) 32) == 0) #endif #if !defined(_LP64) -#define VM_FREELIST_FIRST512M 1 +#define VM_FREELIST_FIRST512M 1 +#define VM_FREELIST_FIRST512M_P(pa) (((pa) 29) == 0) #endif #define VM_FREELIST_NORMALOK_P(lcv) \
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Thu Feb 9 03:12:09 UTC 2012 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: MALTA32 Log Message: Get rid of dead lines. To generate a diff of this commit: cvs rdiff -u -r1.1.2.2 -r1.1.2.3 src/sys/arch/evbmips/conf/MALTA32 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/MALTA32 diff -u src/sys/arch/evbmips/conf/MALTA32:1.1.2.2 src/sys/arch/evbmips/conf/MALTA32:1.1.2.3 --- src/sys/arch/evbmips/conf/MALTA32:1.1.2.2 Wed Aug 26 04:47:29 2009 +++ src/sys/arch/evbmips/conf/MALTA32 Thu Feb 9 03:12:09 2012 @@ -1,11 +1,9 @@ -# $NetBSD: MALTA32,v 1.1.2.2 2009/08/26 04:47:29 matt Exp $ +# MALTA32,v 1.1.2.2 2009/08/26 04:47:29 matt Exp # include arch/evbmips/conf/MALTA makeoptions LP64=no no options MIPS32 -#options EXEC_ELF64 no ath* -
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: matt Date: Thu Jan 19 08:20:32 UTC 2012 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: Use extern for machdep_debug. To generate a diff of this commit: cvs rdiff -u -r1.1.2.44 -r1.1.2.45 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.44 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.45 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.44 Wed Jan 4 16:17:52 2012 +++ src/sys/arch/evbmips/rmixl/machdep.c Thu Jan 19 08:20:32 2012 @@ -100,7 +100,7 @@ __KERNEL_RCSID(0, machdep.c,v 1.1.2.34 //#define MACHDEP_DEBUG 1 #ifdef MACHDEP_DEBUG -int machdep_debug=MACHDEP_DEBUG; +extern int machdep_debug; # define DPRINTF(x,...) do { if (machdep_debug) printf(x, ## __VA_ARGS__); } while(0) #else # define DPRINTF(x,...)
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: matt Date: Thu Jan 19 08:31:55 UTC 2012 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: Restore RCSID To generate a diff of this commit: cvs rdiff -u -r1.1.2.45 -r1.1.2.46 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.45 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.46 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.45 Thu Jan 19 08:20:32 2012 +++ src/sys/arch/evbmips/rmixl/machdep.c Thu Jan 19 08:31:55 2012 @@ -1,4 +1,4 @@ -/* machdep.c,v 1.1.2.34 2011/04/29 08:26:18 matt Exp */ +/* $NetBSD: machdep.c,v 1.1.2.46 2012/01/19 08:31:55 matt Exp $ */ /*- * Copyright (c) 2012 The NetBSD Foundation, Inc.
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Thu Jan 19 17:42:26 UTC 2012 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLPEVB Log Message: Add more XLP devices. To generate a diff of this commit: cvs rdiff -u -r1.1.2.5 -r1.1.2.6 src/sys/arch/evbmips/conf/XLPEVB Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLPEVB diff -u src/sys/arch/evbmips/conf/XLPEVB:1.1.2.5 src/sys/arch/evbmips/conf/XLPEVB:1.1.2.6 --- src/sys/arch/evbmips/conf/XLPEVB:1.1.2.5 Wed Jan 4 16:17:52 2012 +++ src/sys/arch/evbmips/conf/XLPEVB Thu Jan 19 17:42:26 2012 @@ -1,8 +1,8 @@ -# $NetBSD: XLPEVB,v 1.1.2.5 2012/01/04 16:17:52 matt Exp $ +# $NetBSD: XLPEVB,v 1.1.2.6 2012/01/19 17:42:26 matt Exp $ include arch/evbmips/conf/std.rmixlp -#ident XLSATX-$Revision: 1.1.2.5 $ +#ident XLSATX-$Revision: 1.1.2.6 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -158,7 +158,11 @@ sdhc* at xlsdio? slot 0 sdmmc* at sdhc? ld* at sdmmc? xlnae* at pci? dev ? function ? -nae5 at xlnae? port 16 +nae0 at xlnae? complex 0 lane 0 kind 1 phy 4 +nae1 at xlnae? complex 0 lane 1 kind 1 phy 7 +nae2 at xlnae? complex 0 lane 2 kind 1 phy 6 +nae3 at xlnae? complex 0 lane 3 kind 1 phy 5 +nae5 at xlnae? complex 4 lane 2 kind 1 phy 16 xli2c0 at pci0 dev 6 function 2 xli2c1 at pci0 dev 6 function 3 iic0 at xli2c0 @@ -173,6 +177,13 @@ flash* at nor? xlnand* at pci? dev ? function ? nand* at xlnand? flash* at nand? +xlcde* at pci? dev ? function ? +xlfmn* at pci? dev ? function ? +xlpke* at pci? dev ? function ? +xlpoe* at pci? dev ? function ? +xlrxe* at pci? dev ? function ? +xlsae* at pci? dev ? function ? +xlsrio* at pci? dev ? function ? xlspi* at pci? dev ? function ? xlgpio* at pci? dev ? function ? gpio0 at xlgpio?
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: matt Date: Fri Dec 30 06:45:25 UTC 2011 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: Initially mark all GPIO pins as available. To generate a diff of this commit: cvs rdiff -u -r1.1.2.42 -r1.1.2.43 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.42 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.43 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.42 Wed Dec 28 05:36:50 2011 +++ src/sys/arch/evbmips/rmixl/machdep.c Fri Dec 30 06:45:25 2011 @@ -237,6 +237,7 @@ struct rmixl_config rmixl_configuration ._dmamem_ops = _BUS_DMAMEM_OPS_INITIALIZER, ._dmatag_ops = _BUS_DMATAG_OPS_INITIALIZER, }, + .rc_gpio_available = ~(uint64_t)0, /* all pins by default */ #ifdef __HAVE_PCI_CONF_HOOK .rc_pci_chipset = { .pc_conf_hook = rmixl_pci_conf_hook,
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Fri Dec 30 06:46:23 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX Log Message: Use the new xl* device names. To generate a diff of this commit: cvs rdiff -u -r1.1.2.15 -r1.1.2.16 src/sys/arch/evbmips/conf/XLSATX Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX diff -u src/sys/arch/evbmips/conf/XLSATX:1.1.2.15 src/sys/arch/evbmips/conf/XLSATX:1.1.2.16 --- src/sys/arch/evbmips/conf/XLSATX:1.1.2.15 Tue Dec 27 20:00:08 2011 +++ src/sys/arch/evbmips/conf/XLSATX Fri Dec 30 06:46:23 2011 @@ -1,8 +1,8 @@ -# $NetBSD: XLSATX,v 1.1.2.15 2011/12/27 20:00:08 matt Exp $ +# $NetBSD: XLSATX,v 1.1.2.16 2011/12/30 06:46:23 matt Exp $ include arch/evbmips/conf/std.rmixl -#ident XLSATX-$Revision: 1.1.2.15 $ +#ident XLSATX-$Revision: 1.1.2.16 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -151,10 +151,10 @@ xlnand* at xliobus? addr 0x0180 #xlnand* at xliobus? cs 2 nand* at xlnand? flash* at nand? -rmixl_pcix0 at obio0 -pci* at rmixl_pcix0 -rmixl_pcie0 at obio0 -pci* at rmixl_pcie0 +xlpcix0 at obio0 +pci* at xlpcix0 +xlpcie0 at obio0 +pci* at xlpcie0 ppb* at pci? pci* at ppb? wm* at pci? dev ? function ? # Intel i82546EB Gig-E @@ -164,10 +164,10 @@ mskc* at pci? dev ? function ? msk* at mskc? makphy* at mii? phy ? # Marvell 88E1000 PHYs ukphy* at mii? phy ? # unknown PHY -rmixl_usbi0 at obio0 addr 0x25000 intr 31 -ohci0 at rmixl_usbi0 addr 0x24400 size 0x400 intr 0 -ohci1 at rmixl_usbi0 addr 0x24800 size 0x400 intr 1 -ehci0 at rmixl_usbi0 addr 0x24000 size 0x400 intr 2 +xlusbi0 at obio0 addr 0x25000 intr 31 +ohci0 at xlusbi0 addr 0x24400 size 0x400 intr 0 +ohci1 at xlusbi0 addr 0x24800 size 0x400 intr 1 +ehci0 at xlusbi0 addr 0x24000 size 0x400 intr 2 siisata* at pci? dev ? function ? atabus* at ata? wd* at atabus? drive ? flags 0x
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Fri Dec 30 06:47:09 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLPEVB Log Message: Use new xl* device names. Add GPIO. To generate a diff of this commit: cvs rdiff -u -r1.1.2.3 -r1.1.2.4 src/sys/arch/evbmips/conf/XLPEVB Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLPEVB diff -u src/sys/arch/evbmips/conf/XLPEVB:1.1.2.3 src/sys/arch/evbmips/conf/XLPEVB:1.1.2.4 --- src/sys/arch/evbmips/conf/XLPEVB:1.1.2.3 Wed Dec 28 05:37:26 2011 +++ src/sys/arch/evbmips/conf/XLPEVB Fri Dec 30 06:47:09 2011 @@ -1,8 +1,8 @@ -# $NetBSD: XLPEVB,v 1.1.2.3 2011/12/28 05:37:26 matt Exp $ +# $NetBSD: XLPEVB,v 1.1.2.4 2011/12/30 06:47:09 matt Exp $ include arch/evbmips/conf/std.rmixlp -#ident XLSATX-$Revision: 1.1.2.3 $ +#ident XLSATX-$Revision: 1.1.2.4 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -141,8 +141,8 @@ mainbus0 at root cpunode* at mainbus? node ? cpucore* at cpunode? core ? cpu* at cpucore? thread ? -rmixlp_pcie0 at mainbus?# XLP -pci0 at rmixlp_pcie0 +xlpcie0 at mainbus?# XLP +pci0 at xlpcie0 com0 at pci0 dev 6 function 0 # XLP options COM_REGMAP ppb* at pci? @@ -153,7 +153,7 @@ ukphy* at mii? phy ? # unknown PHY com* at pci? dev ? function ? ehci* at pci? dev ? function 6 # won't match ohci* at pci? dev ? function 7 # won't match -#ehci* at pci? dev ? function 6 +#ehci* at pci? dev ? function ? #ohci* at pci? dev ? function ? xlsdio* at pci? dev ? function ? sdhc* at xlsdio? slot 0 @@ -175,6 +175,8 @@ xlnand* at pci? dev ? function ? nand* at xlnand? flash* at nand? xlspi* at pci? dev ? function ? +xlgpio* at pci? dev ? function ? +gpio* at xlgpio? ahcisata* at pci? dev ? function ? siisata* at pci? dev ? function ? atabus* at ata?
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Tue Dec 27 16:21:25 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: INSTALL_XLSATX64 Log Message: Don't build unneeded kernel. Try to mdsetimage To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/INSTALL_XLSATX64 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/INSTALL_XLSATX64 diff -u src/sys/arch/evbmips/conf/INSTALL_XLSATX64:1.1.2.1 src/sys/arch/evbmips/conf/INSTALL_XLSATX64:1.1.2.2 --- src/sys/arch/evbmips/conf/INSTALL_XLSATX64:1.1.2.1 Mon Dec 14 07:24:33 2009 +++ src/sys/arch/evbmips/conf/INSTALL_XLSATX64 Tue Dec 27 16:21:25 2011 @@ -1,8 +1,14 @@ -# $NetBSD: INSTALL_XLSATX64,v 1.1.2.1 2009/12/14 07:24:33 cliff Exp $ +# $NetBSD: INSTALL_XLSATX64,v 1.1.2.2 2011/12/27 16:21:25 matt Exp $ include arch/evbmips/conf/XLSATX64 -#ident INSTALL_XLSATX64-$Revision: 1.1.2.1 $ +no config netbsd-wm0 +no config netbsd-sd0a +no config netbsd-msk0 + +makeoptions NEED_MDSETIMAGE=yes + +#ident INSTALL_XLSATX64-$Revision: 1.1.2.2 $ # Enable the hooks used for initializing the root memory-disk. # The ramdisk size must be kept in sync manually with the size of
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Tue Dec 27 17:07:15 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: INSTALL_XLPEVB32 INSTALL_XLPEVB64 Log Message: Fix some tpyos. To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/INSTALL_XLPEVB32 \ src/sys/arch/evbmips/conf/INSTALL_XLPEVB64 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/INSTALL_XLPEVB32 diff -u src/sys/arch/evbmips/conf/INSTALL_XLPEVB32:1.1.2.1 src/sys/arch/evbmips/conf/INSTALL_XLPEVB32:1.1.2.2 --- src/sys/arch/evbmips/conf/INSTALL_XLPEVB32:1.1.2.1 Sat Dec 24 01:42:48 2011 +++ src/sys/arch/evbmips/conf/INSTALL_XLPEVB32 Tue Dec 27 17:07:14 2011 @@ -1,4 +1,4 @@ -# $NetBSD: INSTALL_XLPEVB32,v 1.1.2.1 2011/12/24 01:42:48 matt Exp $ +# $NetBSD: INSTALL_XLPEVB32,v 1.1.2.2 2011/12/27 17:07:14 matt Exp $ include arch/evbmips/conf/XLPEVB32 @@ -7,7 +7,7 @@ no config netbsd-sd0a makeoptions NEED_MDSETIMAGE=yes -#ident INSTALL_XLSATX32-$Revision: 1.1.2.1 $ +#ident INSTALL_XLPEVB32-$Revision: 1.1.2.2 $ # Enable the hooks used for initializing the root memory-disk. # The ramdisk size must be kept in sync manually with the size of Index: src/sys/arch/evbmips/conf/INSTALL_XLPEVB64 diff -u src/sys/arch/evbmips/conf/INSTALL_XLPEVB64:1.1.2.1 src/sys/arch/evbmips/conf/INSTALL_XLPEVB64:1.1.2.2 --- src/sys/arch/evbmips/conf/INSTALL_XLPEVB64:1.1.2.1 Tue Dec 27 16:20:51 2011 +++ src/sys/arch/evbmips/conf/INSTALL_XLPEVB64 Tue Dec 27 17:07:15 2011 @@ -1,13 +1,13 @@ -# $NetBSD: INSTALL_XLPEVB64,v 1.1.2.1 2011/12/27 16:20:51 matt Exp $ +# $NetBSD: INSTALL_XLPEVB64,v 1.1.2.2 2011/12/27 17:07:15 matt Exp $ -include arch/evbmips/conf/XLSEVB64 +include arch/evbmips/conf/XLPEVB64 no config netbsd-wm0 no config netbsd-sd0a makeoptions NEED_MDSETIMAGE=yes -#ident INSTALL_XLSATX64-$Revision: 1.1.2.1 $ +#ident INSTALL_XLPEVB64-$Revision: 1.1.2.2 $ # Enable the hooks used for initializing the root memory-disk. # The ramdisk size must be kept in sync manually with the size of
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: matt Date: Tue Dec 27 19:59:24 UTC 2011 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: When filling out the physical extent, make sure to probe NOR base/limit pairs. To generate a diff of this commit: cvs rdiff -u -r1.1.2.39 -r1.1.2.40 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.39 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.40 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.39 Sat Dec 24 01:44:44 2011 +++ src/sys/arch/evbmips/rmixl/machdep.c Tue Dec 27 19:59:24 2011 @@ -1069,6 +1069,31 @@ rmixlp_physaddr_srio_mem_init(struct ext rmixl_physaddr_add(ext, sriomem, rcp-rc_srio_mem, xbase, xsize); } +static void +rmixlp_physaddr_nor_init(struct extent *ext) +{ + struct rmixl_config * const rcp = rmixl_configuration; + for (size_t i = 0; i RMIXLP_NOR_NCS; i++) { + uint64_t xbase = RMIXLP_NOR_CS_ADDRESS_TO_PA( + rmixlp_read_4(RMIXLP_NOR_PCITAG, + RMIXLP_NOR_CS_BASEADDRESSn(i))); + uint64_t xlimit = RMIXLP_NOR_CS_ADDRESS_TO_PA( + rmixlp_read_4(RMIXLP_NOR_PCITAG, + RMIXLP_NOR_CS_BASELIMITn(i))); + + if (xlimit xbase || xbase == 0) + continue; /* not enabled */ + + uint64_t xsize = RMIXLP_NOR_CS_SIZE(xbase, xlimit); + + DPRINTF(%s: %s %zu: %#PRIx64:%PRIu64 MB\n, __func__, + nor, i, xbase, xsize 20); + + rmixl_physaddr_add(ext, nor, rcp-rc_pci_link_io[i], + xbase, xsize); + } +} + static uint64_t rmixlp_physaddr_dram_init(struct extent *ext) { @@ -1180,6 +1205,7 @@ rmixl_physaddr_init(void) rmixlp_physaddr_pcie_mem_init(ext); rmixlp_physaddr_pcie_io_init(ext); rmixlp_physaddr_srio_mem_init(ext); + rmixlp_physaddr_nor_init(ext); #else memsize = 0; #endif /* MIPS64_XLP */
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Tue Dec 27 20:00:08 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLPEVB XLSATX Log Message: Add NOR/NAND/SPI devices (NAND only for XLSATX). To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/XLPEVB cvs rdiff -u -r1.1.2.14 -r1.1.2.15 src/sys/arch/evbmips/conf/XLSATX Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLPEVB diff -u src/sys/arch/evbmips/conf/XLPEVB:1.1.2.1 src/sys/arch/evbmips/conf/XLPEVB:1.1.2.2 --- src/sys/arch/evbmips/conf/XLPEVB:1.1.2.1 Sat Dec 24 01:42:48 2011 +++ src/sys/arch/evbmips/conf/XLPEVB Tue Dec 27 20:00:08 2011 @@ -1,8 +1,8 @@ -# $NetBSD: XLPEVB,v 1.1.2.1 2011/12/24 01:42:48 matt Exp $ +# $NetBSD: XLPEVB,v 1.1.2.2 2011/12/27 20:00:08 matt Exp $ include arch/evbmips/conf/std.rmixlp -#ident XLSATX-$Revision: 1.1.2.1 $ +#ident XLSATX-$Revision: 1.1.2.2 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -167,6 +167,14 @@ iic* at xli2c? spdmem* at iic? addr 0x51 spdmem* at iic? addr 0x52 seeprom* at iic1 addr 0x57 size 2048 +xlnor* at pci? dev ? function ? +cfi* at xlnor? cs ? +nor* at cfi? +flash* at nor? +xlnand* at pci? dev ? function ? +nand* at xlnand? +flash* at nand? +xlspi* at pci? dev ? function ? ahcisata* at pci? dev ? function ? siisata* at pci? dev ? function ? atabus* at ata? Index: src/sys/arch/evbmips/conf/XLSATX diff -u src/sys/arch/evbmips/conf/XLSATX:1.1.2.14 src/sys/arch/evbmips/conf/XLSATX:1.1.2.15 --- src/sys/arch/evbmips/conf/XLSATX:1.1.2.14 Fri Apr 29 09:23:16 2011 +++ src/sys/arch/evbmips/conf/XLSATX Tue Dec 27 20:00:08 2011 @@ -1,8 +1,8 @@ -# $NetBSD: XLSATX,v 1.1.2.14 2011/04/29 09:23:16 matt Exp $ +# $NetBSD: XLSATX,v 1.1.2.15 2011/12/27 20:00:08 matt Exp $ include arch/evbmips/conf/std.rmixl -#ident XLSATX-$Revision: 1.1.2.14 $ +#ident XLSATX-$Revision: 1.1.2.15 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -146,6 +146,11 @@ obio0 at cpunode? com0 at obio0 addr 0x14000 intr 9 com1 at obio0 addr 0x15000 intr 10 options COM_REGMAP +xliobus0 at obio0 addr 0x19000 +xlnand* at xliobus? addr 0x0180 +#xlnand* at xliobus? cs 2 +nand* at xlnand? +flash* at nand? rmixl_pcix0 at obio0 pci* at rmixl_pcix0 rmixl_pcie0 at obio0
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: matt Date: Tue Dec 27 22:13:05 UTC 2011 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: Fix cp error. To generate a diff of this commit: cvs rdiff -u -r1.1.2.40 -r1.1.2.41 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.40 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.41 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.40 Tue Dec 27 19:59:24 2011 +++ src/sys/arch/evbmips/rmixl/machdep.c Tue Dec 27 22:13:05 2011 @@ -1089,7 +1089,7 @@ rmixlp_physaddr_nor_init(struct extent * DPRINTF(%s: %s %zu: %#PRIx64:%PRIu64 MB\n, __func__, nor, i, xbase, xsize 20); - rmixl_physaddr_add(ext, nor, rcp-rc_pci_link_io[i], + rmixl_physaddr_add(ext, nor, rcp-rc_norflash[i], xbase, xsize); } }
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: matt Date: Wed Dec 28 05:36:51 UTC 2011 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: Add commented out AB_DEBUG. To generate a diff of this commit: cvs rdiff -u -r1.1.2.41 -r1.1.2.42 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.41 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.42 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.41 Tue Dec 27 22:13:05 2011 +++ src/sys/arch/evbmips/rmixl/machdep.c Wed Dec 28 05:36:50 2011 @@ -615,6 +615,7 @@ mach_init(int argc, int32_t *argv, void */ boothowto = RB_AUTOBOOT; // boothowto |= AB_VERBOSE; + // boothowto |= AB_DEBUG; if (!uboot_p) { for (int i = 1; i argc; i++) { for (char *cp = (char *)(intptr_t)argv[i]; *cp; cp++) {
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Wed Dec 28 05:37:26 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLPEVB Log Message: Only connect to nor on cs 0 for now. To generate a diff of this commit: cvs rdiff -u -r1.1.2.2 -r1.1.2.3 src/sys/arch/evbmips/conf/XLPEVB Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLPEVB diff -u src/sys/arch/evbmips/conf/XLPEVB:1.1.2.2 src/sys/arch/evbmips/conf/XLPEVB:1.1.2.3 --- src/sys/arch/evbmips/conf/XLPEVB:1.1.2.2 Tue Dec 27 20:00:08 2011 +++ src/sys/arch/evbmips/conf/XLPEVB Wed Dec 28 05:37:26 2011 @@ -1,8 +1,8 @@ -# $NetBSD: XLPEVB,v 1.1.2.2 2011/12/27 20:00:08 matt Exp $ +# $NetBSD: XLPEVB,v 1.1.2.3 2011/12/28 05:37:26 matt Exp $ include arch/evbmips/conf/std.rmixlp -#ident XLSATX-$Revision: 1.1.2.2 $ +#ident XLSATX-$Revision: 1.1.2.3 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -168,7 +168,7 @@ spdmem* at iic? addr 0x51 spdmem* at iic? addr 0x52 seeprom* at iic1 addr 0x57 size 2048 xlnor* at pci? dev ? function ? -cfi* at xlnor? cs ? +cfi* at xlnor? cs 0 nor* at cfi? flash* at nor? xlnand* at pci? dev ? function ?
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Wed Dec 28 05:38:05 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLPEVB32 Log Message: Add commented out options for CFI_DEBUG_QRY, CFI_DEBUG_JEDEC To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/XLPEVB32 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLPEVB32 diff -u src/sys/arch/evbmips/conf/XLPEVB32:1.1.2.1 src/sys/arch/evbmips/conf/XLPEVB32:1.1.2.2 --- src/sys/arch/evbmips/conf/XLPEVB32:1.1.2.1 Sat Dec 24 01:42:48 2011 +++ src/sys/arch/evbmips/conf/XLPEVB32 Wed Dec 28 05:38:05 2011 @@ -1,7 +1,7 @@ -# $NetBSD: XLPEVB32,v 1.1.2.1 2011/12/24 01:42:48 matt Exp $ +# $NetBSD: XLPEVB32,v 1.1.2.2 2011/12/28 05:38:05 matt Exp $ # -#ident XLSATX32-$Revision: 1.1.2.1 $ +#ident XLSATX32-$Revision: 1.1.2.2 $ include arch/evbmips/conf/XLPEVB @@ -11,6 +11,7 @@ options PCI_NETBSD_CONFIGURE #options PCI_CONFIG_DUMP options PCI_VERBOSE #options SDMMC_DEBUG +#options CFI_DEBUG_QRY, CFI_DEBUG_JEDEC makeoptions LP64=no makeoptions NEED_BINARY=yes
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Fri Dec 23 23:32:51 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: files.rmixl Log Message: Include sdmmc files. To generate a diff of this commit: cvs rdiff -u -r1.1.2.5 -r1.1.2.6 src/sys/arch/evbmips/conf/files.rmixl Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/files.rmixl diff -u src/sys/arch/evbmips/conf/files.rmixl:1.1.2.5 src/sys/arch/evbmips/conf/files.rmixl:1.1.2.6 --- src/sys/arch/evbmips/conf/files.rmixl:1.1.2.5 Fri Feb 5 07:39:52 2010 +++ src/sys/arch/evbmips/conf/files.rmixl Fri Dec 23 23:32:51 2011 @@ -1,4 +1,4 @@ -# $NetBSD: files.rmixl,v 1.1.2.5 2010/02/05 07:39:52 matt Exp $ +# $NetBSD: files.rmixl,v 1.1.2.6 2011/12/23 23:32:51 matt Exp $ file arch/evbmips/rmixl/autoconf.c file arch/evbmips/rmixl/machdep.c @@ -30,6 +30,9 @@ include dev/pckbport/files.pckbport # Machine-independent USB device support include dev/usb/files.usb +# Machine-independent SD/MMC support +include dev/sdmmc/files.sdmmc + # Memory Disk file dev/md_root.cmemory_disk_hooks
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Sat Dec 24 01:39:47 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX32 Log Message: Remove option that moved to std.rmixl To generate a diff of this commit: cvs rdiff -u -r1.1.2.4 -r1.1.2.5 src/sys/arch/evbmips/conf/XLSATX32 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX32 diff -u src/sys/arch/evbmips/conf/XLSATX32:1.1.2.4 src/sys/arch/evbmips/conf/XLSATX32:1.1.2.5 --- src/sys/arch/evbmips/conf/XLSATX32:1.1.2.4 Fri Dec 2 00:02:01 2011 +++ src/sys/arch/evbmips/conf/XLSATX32 Sat Dec 24 01:39:47 2011 @@ -1,12 +1,11 @@ -# $NetBSD: XLSATX32,v 1.1.2.4 2011/12/02 00:02:01 matt Exp $ +# $NetBSD: XLSATX32,v 1.1.2.5 2011/12/24 01:39:47 matt Exp $ # -#ident XLSATX32-$Revision: 1.1.2.4 $ +#ident XLSATX32-$Revision: 1.1.2.5 $ include arch/evbmips/conf/XLSATX #options MEMLIMIT=0x2000 # 512MB -options ENABLE_MIPS_8KB_PAGE options ENABLE_MIPS_KSEGX makeoptions LP64=no
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Sat Dec 24 01:40:27 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: INSTALL_XLSATX32 Log Message: Don't make uneeded kernels. Try to mdsetimage if possible. To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/INSTALL_XLSATX32 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/INSTALL_XLSATX32 diff -u src/sys/arch/evbmips/conf/INSTALL_XLSATX32:1.1.2.1 src/sys/arch/evbmips/conf/INSTALL_XLSATX32:1.1.2.2 --- src/sys/arch/evbmips/conf/INSTALL_XLSATX32:1.1.2.1 Mon Dec 14 07:24:33 2009 +++ src/sys/arch/evbmips/conf/INSTALL_XLSATX32 Sat Dec 24 01:40:27 2011 @@ -1,8 +1,14 @@ -# $NetBSD: INSTALL_XLSATX32,v 1.1.2.1 2009/12/14 07:24:33 cliff Exp $ +# $NetBSD: INSTALL_XLSATX32,v 1.1.2.2 2011/12/24 01:40:27 matt Exp $ include arch/evbmips/conf/XLSATX32 -#ident INSTALL_XLSATX32-$Revision: 1.1.2.1 $ +no config netbsd-wm0 +no config netbsd-sd0a +no config netbsd-msk0 + +makeoptions NEED_MDSETIMAGE=yes + +#ident INSTALL_XLSATX32-$Revision: 1.1.2.2 $ # Enable the hooks used for initializing the root memory-disk. # The ramdisk size must be kept in sync manually with the size of
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Sat Dec 24 01:42:04 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: std.rmixl Added Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: std.rmixlp Log Message: Update options for rmixl and a new std.rmixlp To generate a diff of this commit: cvs rdiff -u -r1.1.2.5 -r1.1.2.6 src/sys/arch/evbmips/conf/std.rmixl cvs rdiff -u -r0 -r1.1.2.1 src/sys/arch/evbmips/conf/std.rmixlp Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/std.rmixl diff -u src/sys/arch/evbmips/conf/std.rmixl:1.1.2.5 src/sys/arch/evbmips/conf/std.rmixl:1.1.2.6 --- src/sys/arch/evbmips/conf/std.rmixl:1.1.2.5 Thu May 26 19:24:31 2011 +++ src/sys/arch/evbmips/conf/std.rmixl Sat Dec 24 01:42:04 2011 @@ -1,4 +1,4 @@ -# std.rmixl,v 1.1.2.4 2010/03/29 23:31:16 cliff Exp +# $NetBSD: std.rmixl,v 1.1.2.6 2011/12/24 01:42:04 matt Exp $ machine evbmips mips include conf/std # MI standard options @@ -7,16 +7,19 @@ options MIPS3_ENABLE_CLOCK_INTR # Platform support #options MIPS64 -options MIPS64_XLR -options MIPS64_XLS -options MIPS64_RMIXL +options MIPS64_XLR +options MIPS64_XLS +options MIPS64_RMIXL +options __PCI_DEV_FUNCORDER +options __HAVE_PCI_CONF_HOOK + +options MIPS_PAGE_SHIFT=13 # 8KB pages options EXEC_ELF32 # exec ELF32 binaries options EXEC_SCRIPT # exec #! scripts makeoptions CPUFLAGS+=-mips64 -##makeoptions CFLAGS+=-mips64 makeoptions DEFTEXTADDR=0x8010 makeoptions BOARDTYPE=rmixl Added files: Index: src/sys/arch/evbmips/conf/std.rmixlp diff -u /dev/null src/sys/arch/evbmips/conf/std.rmixlp:1.1.2.1 --- /dev/null Sat Dec 24 01:42:04 2011 +++ src/sys/arch/evbmips/conf/std.rmixlp Sat Dec 24 01:42:04 2011 @@ -0,0 +1,11 @@ +# $NetBSD: std.rmixlp,v 1.1.2.1 2011/12/24 01:42:04 matt Exp $ + +include arch/evbmips/conf/std.rmixl + +options MIPS64R2_RMIXL +options MIPS64_XLP +no options MIPS64_RMIXL +no options MIPS64_XLR +no options MIPS64_XLS +makeoptions CPUFLAGS+=-mips64r2 -mno-dsp +makeoptions AFLAGS+=-mips64r2
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Sat Dec 24 01:42:48 UTC 2011 Added Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: INSTALL_XLPEVB32 XLPEVB XLPEVB32 Log Message: Add config files for the XLPEVB for the XLP8xx board. (should work on any XLP eval board). To generate a diff of this commit: cvs rdiff -u -r0 -r1.1.2.1 src/sys/arch/evbmips/conf/INSTALL_XLPEVB32 \ src/sys/arch/evbmips/conf/XLPEVB src/sys/arch/evbmips/conf/XLPEVB32 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/sys/arch/evbmips/conf/INSTALL_XLPEVB32 diff -u /dev/null src/sys/arch/evbmips/conf/INSTALL_XLPEVB32:1.1.2.1 --- /dev/null Sat Dec 24 01:42:48 2011 +++ src/sys/arch/evbmips/conf/INSTALL_XLPEVB32 Sat Dec 24 01:42:48 2011 @@ -0,0 +1,19 @@ +# $NetBSD: INSTALL_XLPEVB32,v 1.1.2.1 2011/12/24 01:42:48 matt Exp $ + +include arch/evbmips/conf/XLPEVB32 + +no config netbsd-wm0 +no config netbsd-sd0a + +makeoptions NEED_MDSETIMAGE=yes + +#ident INSTALL_XLSATX32-$Revision: 1.1.2.1 $ + +# Enable the hooks used for initializing the root memory-disk. +# The ramdisk size must be kept in sync manually with the size of +# the `ramdisk' image (which is built in distrib/evbmips/ramdisk/ramdisk). +pseudo-device md# memory disk device +options MEMORY_DISK_HOOKS +options MEMORY_DISK_IS_ROOT # force root on memory disk +options MEMORY_DISK_SERVER=0 # no userspace memory disk +options MEMORY_DISK_ROOT_SIZE=12288 # size of memory disk, in blocks Index: src/sys/arch/evbmips/conf/XLPEVB diff -u /dev/null src/sys/arch/evbmips/conf/XLPEVB:1.1.2.1 --- /dev/null Sat Dec 24 01:42:48 2011 +++ src/sys/arch/evbmips/conf/XLPEVB Sat Dec 24 01:42:48 2011 @@ -0,0 +1,221 @@ +# $NetBSD: XLPEVB,v 1.1.2.1 2011/12/24 01:42:48 matt Exp $ + +include arch/evbmips/conf/std.rmixlp + +#ident XLSATX-$Revision: 1.1.2.1 $ + +#options INCLUDE_CONFIG_FILE # embed config file in kernel binary + +maxusers 32 + +# +# MEMSIZE can be used to limit memory amount used +# +#options MEMSIZE=0x1000 # 256MB + +# +# MEMLIMIT can be used to limit memory address used +# +defparam opt_memsize.h MEMLIMIT +#options MEMLIMIT=0x1000 # 256MB + +options NOFPU # No FPU +#options FPEMUL # emulate FPU insn + +# Standard system options +options KTRACE # system call tracing support +options SYSVMSG # System V message queues +options SYSVSEM # System V semaphores +options SYSVSHM # System V shared memory +#options SHMMAXPGS=1024 # 1024 pages is the default +#options LKM # loadable kernel modules +options NTP # network time protocol + +# Debugging options +options DIAGNOSTIC # extra kernel sanity checking +options DEBUG # extra kernel debugging support +#options KMEMSTATS # kernel memory statistics (vmstat -m) +options MSGBUFSIZE=65536 # kernel dmesg buffer +options USERCONF # userconf(4) support +#options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel +options DDB # kernel dynamic debugger +options DDB_HISTORY_SIZE=100 # enable history editing in DDB +makeoptions DEBUG=-g # compile full symbol table +options SYMTAB_SPACE=50 # size for embedded symbol table +#options DDB_COMMANDONENTER=trace;show registers +options DB_MAX_LINE=-1 + +# Compatibility options +#options COMPAT_43 # compatibility with 4.3BSD binaries +#options COMPAT_09 # NetBSD 0.9 binary compatibility +#options COMPAT_10 # NetBSD 1.0 binary compatibility +#options COMPAT_11 # NetBSD 1.1 binary compatibility +#options COMPAT_12 # NetBSD 1.2 binary compatibility +#options COMPAT_13 # NetBSD 1.3 binary compatibility +#options COMPAT_14 # NetBSD 1.4 binary compatibility +#options COMPAT_15 # NetBSD 1.5 binary compatibility +options COMPAT_16 # NetBSD 1.6 binary compatibility +options COMPAT_20 # NetBSD 2.0 binary compatibility +options COMPAT_30 # NetBSD 3.0 compatibility. +options COMPAT_40 # NetBSD 4.0 compatibility. +#options EXEC_ECOFF # exec ECOFF binaries +#options COMPAT_ULTRIX # binary compatibility with Ultrix +options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. + +# File systems +file-system FFS # Berkeley Fast Filesystem +file-system MFS # memory-based filesystem +#file-system EXT2FS # second extended file system (linux) +file-system NFS # Sun NFS-compatible filesystem client +file-system KERNFS # kernel data-structure filesystem +#file-system NULLFS # NULL layered filesystem +#file-system OVERLAY # overlay file system +#file-system FDESC # user file descriptor filesystem +#file-system UMAPFS # uid/gid remapping filesystem +#file-system LFS # Log-based filesystem (still experimental) +#file-system PUFFS # Userspace file systems (e.g. ntfs-3g sshfs) +file-system PROCFS # /proc +file-system CD9660 # ISO 9660 + Rock Ridge file system +file-system TMPFS # Efficient memory file system +#file-system UNION # union file system +file-system MSDOSFS # MS-DOS FAT filesystem(s). +#file-system CODA
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: matt Date: Thu Dec 15 04:52:59 UTC 2011 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: Add earlycons support. To generate a diff of this commit: cvs rdiff -u -r1.1.2.37 -r1.1.2.38 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.37 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.38 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.37 Sat Dec 3 01:56:55 2011 +++ src/sys/arch/evbmips/rmixl/machdep.c Thu Dec 15 04:52:59 2011 @@ -238,6 +238,42 @@ static void rmixl_wakeup_info_print(vola #endif /* MULTIPROCESSOR */ static void rmixl_fixup_curcpu(void); +#if NCOM 0 +static volatile uint32_t *rmixl_com0addr; +static int +rmixl_cngetc(dev_t dv) +{ + volatile uint32_t * const com0addr = rmixl_com0addr; + +if ((be32toh(com0addr[com_lsr]) LSR_RXRDY) == 0) + return -1; + + return be32toh(com0addr[com_data]) 0xff; +} + +static void +rmixl_cnputc(dev_t dv, int c) +{ + volatile uint32_t * const com0addr = rmixl_com0addr; + int timo = 15; + + while ((be32toh(com0addr[com_lsr]) LSR_TXRDY) == 0 --timo 0) + ; + + com0addr[com_data] = htobe32(c); + __asm __volatile(sync); + + while ((be32toh(com0addr[com_lsr]) LSR_TSRE) == 0 --timo 0) + ; +} + +struct consdev rmixl_earlycons = { + .cn_putc = rmixl_cnputc, + .cn_getc = rmixl_cngetc, + .cn_pollc = nullcnpollc, +}; +#endif + /* * Do all the stuff that locore normally does before calling main(). */ @@ -265,6 +301,11 @@ mach_init(int argc, int32_t *argv, void kernend = (void *)mips_round_page(end); memset(edata, 0, (char *)kernend - edata); +#if NCOM 0 + rmixl_com0addr = (void *)(vaddr_t)(RMIXL_IO_DEV_VBASE + comcnaddr); + cn_tab = rmixl_earlycons; /* after clearing BSS, not before */ +#endif + /* * Set up the exception vectors and CPU-specific function * vectors early on. We need the wbflush() vector set up
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Fri Dec 2 00:02:02 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX32 Log Message: Enable 8KB page support. To generate a diff of this commit: cvs rdiff -u -r1.1.2.3 -r1.1.2.4 src/sys/arch/evbmips/conf/XLSATX32 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX32 diff -u src/sys/arch/evbmips/conf/XLSATX32:1.1.2.3 src/sys/arch/evbmips/conf/XLSATX32:1.1.2.4 --- src/sys/arch/evbmips/conf/XLSATX32:1.1.2.3 Tue Nov 29 07:48:32 2011 +++ src/sys/arch/evbmips/conf/XLSATX32 Fri Dec 2 00:02:01 2011 @@ -1,13 +1,12 @@ -# $NetBSD: XLSATX32,v 1.1.2.3 2011/11/29 07:48:32 matt Exp $ +# $NetBSD: XLSATX32,v 1.1.2.4 2011/12/02 00:02:01 matt Exp $ # -#ident XLSATX32-$Revision: 1.1.2.3 $ +#ident XLSATX32-$Revision: 1.1.2.4 $ include arch/evbmips/conf/XLSATX #options MEMLIMIT=0x2000 # 512MB +options ENABLE_MIPS_8KB_PAGE options ENABLE_MIPS_KSEGX -#no options NFS_BOOT_DHCP -#options NFS_BOOT_BOOTP makeoptions LP64=no
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Wed Jun 1 06:31:07 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: Makefile.evbmips.inc Log Message: NetBSD/ makes the uboot id string too long. To generate a diff of this commit: cvs rdiff -u -r1.2.96.4 -r1.2.96.5 \ src/sys/arch/evbmips/conf/Makefile.evbmips.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/Makefile.evbmips.inc diff -u src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2.96.4 src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2.96.5 --- src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2.96.4 Tue May 24 06:29:24 2011 +++ src/sys/arch/evbmips/conf/Makefile.evbmips.inc Wed Jun 1 06:31:07 2011 @@ -27,7 +27,7 @@ _OSRELEASE!= ${HOST_SH} $S/conf/osrelease.sh MKUBOOTIMAGEARGS= -A mips -T kernel -C none MKUBOOTIMAGEARGS+= -a ${TEXTADDR:C/$//} -e $(TEXTADDR) -MKUBOOTIMAGEARGS+= -n NetBSD/$(MACHINE) ${_OSRELEASE} ($(KERNEL_BUILD:T)) +MKUBOOTIMAGEARGS+= -n $(MACHINE) ${_OSRELEASE} ($(KERNEL_BUILD:T)) SYSTEM_LD_TAIL_EXTRA+=; \ echo ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS} $@.bin $@.ub; \
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Thu May 26 19:22:47 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: INSTALL_MALTA INSTALL_MALTA32 INSTALL_MALTA64 Log Message: Add makeoptions NEED_MDSETIMAGE=yes To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/INSTALL_MALTA \ src/sys/arch/evbmips/conf/INSTALL_MALTA32 \ src/sys/arch/evbmips/conf/INSTALL_MALTA64 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/INSTALL_MALTA diff -u src/sys/arch/evbmips/conf/INSTALL_MALTA:1.1.2.1 src/sys/arch/evbmips/conf/INSTALL_MALTA:1.1.2.2 --- src/sys/arch/evbmips/conf/INSTALL_MALTA:1.1.2.1 Mon Aug 24 04:03:30 2009 +++ src/sys/arch/evbmips/conf/INSTALL_MALTA Thu May 26 19:22:46 2011 @@ -1,8 +1,8 @@ -# $NetBSD: INSTALL_MALTA,v 1.1.2.1 2009/08/24 04:03:30 matt Exp $ +# $NetBSD: INSTALL_MALTA,v 1.1.2.2 2011/05/26 19:22:46 matt Exp $ include arch/evbmips/conf/MALTA -#ident INSTALL_MALTA-$Revision: 1.1.2.1 $ +#ident INSTALL_MALTA-$Revision: 1.1.2.2 $ # Enable the hooks used for initializing the root memory-disk. # The ramdisk size must be kept in sync manually with the size of @@ -12,3 +12,5 @@ options MEMORY_DISK_IS_ROOT # force root on memory disk options MEMORY_DISK_SERVER=0 # no userspace memory disk options MEMORY_DISK_ROOT_SIZE=12288 # size of memory disk, in blocks + +makeoptions NEED_MDSETIMAGE=yes Index: src/sys/arch/evbmips/conf/INSTALL_MALTA32 diff -u src/sys/arch/evbmips/conf/INSTALL_MALTA32:1.1.2.1 src/sys/arch/evbmips/conf/INSTALL_MALTA32:1.1.2.2 --- src/sys/arch/evbmips/conf/INSTALL_MALTA32:1.1.2.1 Mon Aug 24 04:03:30 2009 +++ src/sys/arch/evbmips/conf/INSTALL_MALTA32 Thu May 26 19:22:47 2011 @@ -1,8 +1,8 @@ -# $NetBSD: INSTALL_MALTA32,v 1.1.2.1 2009/08/24 04:03:30 matt Exp $ +# $NetBSD: INSTALL_MALTA32,v 1.1.2.2 2011/05/26 19:22:47 matt Exp $ include arch/evbmips/conf/MALTA32 -#ident INSTALL_MALTA32-$Revision: 1.1.2.1 $ +#ident INSTALL_MALTA32-$Revision: 1.1.2.2 $ # Enable the hooks used for initializing the root memory-disk. # The ramdisk size must be kept in sync manually with the size of @@ -12,3 +12,5 @@ options MEMORY_DISK_IS_ROOT # force root on memory disk options MEMORY_DISK_SERVER=0 # no userspace memory disk options MEMORY_DISK_ROOT_SIZE=12288 # size of memory disk, in blocks + +makeoptions NEED_MDSETIMAGE=yes Index: src/sys/arch/evbmips/conf/INSTALL_MALTA64 diff -u src/sys/arch/evbmips/conf/INSTALL_MALTA64:1.1.2.1 src/sys/arch/evbmips/conf/INSTALL_MALTA64:1.1.2.2 --- src/sys/arch/evbmips/conf/INSTALL_MALTA64:1.1.2.1 Mon Aug 24 04:03:30 2009 +++ src/sys/arch/evbmips/conf/INSTALL_MALTA64 Thu May 26 19:22:47 2011 @@ -1,8 +1,8 @@ -# $NetBSD: INSTALL_MALTA64,v 1.1.2.1 2009/08/24 04:03:30 matt Exp $ +# $NetBSD: INSTALL_MALTA64,v 1.1.2.2 2011/05/26 19:22:47 matt Exp $ include arch/evbmips/conf/MALTA64 -#ident INSTALL_MALTA64-$Revision: 1.1.2.1 $ +#ident INSTALL_MALTA64-$Revision: 1.1.2.2 $ # Enable the hooks used for initializing the root memory-disk. # The ramdisk size must be kept in sync manually with the size of @@ -12,3 +12,5 @@ options MEMORY_DISK_IS_ROOT # force root on memory disk options MEMORY_DISK_SERVER=0 # no userspace memory disk options MEMORY_DISK_ROOT_SIZE=12288 # size of memory disk, in blocks + +makeoptions NEED_MDSETIMAGE=yes
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips
Module Name:src Committed By: matt Date: Thu May 26 19:24:31 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: std.rmixl src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: Use new MIPS64*_RMIXL options If MP, store address of pmap_tlb0_info.ti_lock-mtx_lock to OSSCRATCH 2 To generate a diff of this commit: cvs rdiff -u -r1.1.2.4 -r1.1.2.5 src/sys/arch/evbmips/conf/std.rmixl cvs rdiff -u -r1.1.2.34 -r1.1.2.35 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/std.rmixl diff -u src/sys/arch/evbmips/conf/std.rmixl:1.1.2.4 src/sys/arch/evbmips/conf/std.rmixl:1.1.2.5 --- src/sys/arch/evbmips/conf/std.rmixl:1.1.2.4 Mon Mar 29 23:31:16 2010 +++ src/sys/arch/evbmips/conf/std.rmixl Thu May 26 19:24:31 2011 @@ -1,18 +1,19 @@ -# $NetBSD: std.rmixl,v 1.1.2.4 2010/03/29 23:31:16 cliff Exp $ +# std.rmixl,v 1.1.2.4 2010/03/29 23:31:16 cliff Exp machine evbmips mips include conf/std # MI standard options -options MIPS3_ENABLE_CLOCK_INTR +options MIPS3_ENABLE_CLOCK_INTR # Platform support -options MIPS64 +#options MIPS64 options MIPS64_XLR options MIPS64_XLS +options MIPS64_RMIXL -options EXEC_ELF32 # exec ELF32 binaries -options EXEC_SCRIPT # exec #! scripts +options EXEC_ELF32 # exec ELF32 binaries +options EXEC_SCRIPT # exec #! scripts makeoptions CPUFLAGS+=-mips64 ##makeoptions CFLAGS+=-mips64 Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.34 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.35 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.34 Fri Apr 29 08:26:18 2011 +++ src/sys/arch/evbmips/rmixl/machdep.c Thu May 26 19:24:31 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.34 2011/04/29 08:26:18 matt Exp $ */ +/* machdep.c,v 1.1.2.34 2011/04/29 08:26:18 matt Exp */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -74,9 +74,10 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.34 2011/04/29 08:26:18 matt Exp $); +__KERNEL_RCSID(0, machdep.c,v 1.1.2.34 2011/04/29 08:26:18 matt Exp); #define __INTR_PRIVATE +#define __MUTEX_PRIVATE #include opt_multiprocessor.h #include opt_ddb.h @@ -423,6 +424,9 @@ __asm __volatile(dmtc0 %0,$%1 :: r(cpu_info_store), n(MIPS_COP_0_OSSCRATCH)); #ifdef MULTIPROCESSOR + __asm __volatile(dmtc0 %0,$%1,2 + :: r(pmap_tlb0_info.ti_lock-mtx_lock), + n(MIPS_COP_0_OSSCRATCH)); mips_fixup_exceptions(rmixl_fixup_cop0_oscratch); #endif rmixl_fixup_curcpu();
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Tue May 24 06:29:24 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: Makefile.evbmips.inc Log Message: It's NEED_, not NEEDS_ To generate a diff of this commit: cvs rdiff -u -r1.2.96.3 -r1.2.96.4 \ src/sys/arch/evbmips/conf/Makefile.evbmips.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/Makefile.evbmips.inc diff -u src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2.96.3 src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2.96.4 --- src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2.96.3 Tue May 24 06:22:39 2011 +++ src/sys/arch/evbmips/conf/Makefile.evbmips.inc Tue May 24 06:29:24 2011 @@ -2,7 +2,8 @@ RAMDISKDIR!= cd ${NETBSDSRCDIR}/distrib/${THISMIPS:T}/instkernel/ramdisk ${PRINTOBJDIR} -.if defined(NEEDS_MDSETIMAGE) exists(${RAMDISKDIR}/ramdisk.fs) +.if defined(NEED_MDSETIMAGE) ${NEED_MDSETIMAGE} != no \ + exists(${RAMDISKDIR}/ramdisk.fs) SYSTEM_LD_TAIL_EXTRA+=; \ echo ${TOOL_MDSETIMAGE} -s $@ ${RAMDISKDIR}/ramdisk.fs; \ ${TOOL_MDSETIMAGE} -s $@ ${RAMDISKDIR}/ramdisk.fs
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Tue May 24 04:38:50 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: Makefile.evbmips.inc Log Message: Add a NEED_UBOOTIMAGE block (inside NEED_BINARY) To generate a diff of this commit: cvs rdiff -u -r1.2.96.1 -r1.2.96.2 \ src/sys/arch/evbmips/conf/Makefile.evbmips.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/Makefile.evbmips.inc diff -u src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2.96.1 src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2.96.2 --- src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2.96.1 Fri May 20 16:49:23 2011 +++ src/sys/arch/evbmips/conf/Makefile.evbmips.inc Tue May 24 04:38:49 2011 @@ -13,4 +13,18 @@ ${OBJCOPY} -S -O binary $@ $@.bin EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.bin@} + +.if defined(NEED_UBOOTIMAGE) ${NEED_UBOOTIMAGE} != no +_OSRELEASE!= ${HOST_SH} $S/conf/osrelease.sh +MKUBOOTIMAGEARGS= -A mips -T kernel -C none +MKUBOOTIMAGEARGS+= -a ${TEXTADDR:C/$//} -e $(TEXTADDR) +MKUBOOTIMAGEARGS+= -n NetBSD/$(MACHINE) ${_OSRELEASE} ($(KERNEL_BUILD:T)) + +SYSTEM_LD_TAIL_EXTRA+=; \ + echo ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS} $@.bin $@.ub; \ + ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS} $@.bin $@.ub; \ + +EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.ub@} .endif +.endif +
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Fri May 20 16:38:25 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: ALCHEMY MALTA RB153 Log Message: bump SYMTAB_SPACE To generate a diff of this commit: cvs rdiff -u -r1.20.8.2 -r1.20.8.3 src/sys/arch/evbmips/conf/ALCHEMY cvs rdiff -u -r1.48.8.3 -r1.48.8.4 src/sys/arch/evbmips/conf/MALTA cvs rdiff -u -r1.2.58.1 -r1.2.58.2 src/sys/arch/evbmips/conf/RB153 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/ALCHEMY diff -u src/sys/arch/evbmips/conf/ALCHEMY:1.20.8.2 src/sys/arch/evbmips/conf/ALCHEMY:1.20.8.3 --- src/sys/arch/evbmips/conf/ALCHEMY:1.20.8.2 Fri Jan 29 00:16:57 2010 +++ src/sys/arch/evbmips/conf/ALCHEMY Fri May 20 16:38:25 2011 @@ -1,11 +1,11 @@ -# $NetBSD: ALCHEMY,v 1.20.8.2 2010/01/29 00:16:57 matt Exp $ +# ALCHEMY,v 1.20.8.2 2010/01/29 00:16:57 matt Exp # # Kernel config for the Alchemy Semiconductor (AMD) PB1000, PB1500, # DBAu1000 and DBAu1500 evaluation boards. include arch/evbmips/conf/std.alchemy -#ident ALCHEMY-$Revision: 1.20.8.2 $ +#ident ALCHEMY-1.20.8.2 maxusers 32 @@ -48,7 +48,7 @@ options DDB # kernel dynamic debugger options DDB_HISTORY_SIZE=100 # enable history editing in DDB makeoptions DEBUG=-g # compile full symbol table -options SYMTAB_SPACE=425000 # size for embedded symbol table +options SYMTAB_SPACE=475000 # size for embedded symbol table # Compatibility options #options COMPAT_43 # compatibility with 4.3BSD binaries Index: src/sys/arch/evbmips/conf/MALTA diff -u src/sys/arch/evbmips/conf/MALTA:1.48.8.3 src/sys/arch/evbmips/conf/MALTA:1.48.8.4 --- src/sys/arch/evbmips/conf/MALTA:1.48.8.3 Fri Jan 29 00:16:57 2010 +++ src/sys/arch/evbmips/conf/MALTA Fri May 20 16:38:25 2011 @@ -1,10 +1,10 @@ -# $NetBSD: MALTA,v 1.48.8.3 2010/01/29 00:16:57 matt Exp $ +# MALTA,v 1.48.8.3 2010/01/29 00:16:57 matt Exp include arch/evbmips/conf/std.malta #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident MALTA-$Revision: 1.48.8.3 $ +#ident MALTA-1.48.8.3 maxusers 32 @@ -39,7 +39,7 @@ options DDB # kernel dynamic debugger options DDB_HISTORY_SIZE=100 # enable history editing in DDB makeoptions DEBUG=-g # compile full symbol table -options SYMTAB_SPACE=40 # size for embedded symbol table +options SYMTAB_SPACE=41 # size for embedded symbol table # Compatibility options #options COMPAT_43 # compatibility with 4.3BSD binaries Index: src/sys/arch/evbmips/conf/RB153 diff -u src/sys/arch/evbmips/conf/RB153:1.2.58.1 src/sys/arch/evbmips/conf/RB153:1.2.58.2 --- src/sys/arch/evbmips/conf/RB153:1.2.58.1 Fri Jan 29 00:16:58 2010 +++ src/sys/arch/evbmips/conf/RB153 Fri May 20 16:38:25 2011 @@ -1,11 +1,11 @@ -# $NetBSD: RB153,v 1.2.58.1 2010/01/29 00:16:58 matt Exp $ -# $Id: RB153,v 1.2.58.1 2010/01/29 00:16:58 matt Exp $ +# RB153,v 1.2.58.1 2010/01/29 00:16:58 matt Exp +# RB153,v 1.2.58.1 2010/01/29 00:16:58 matt Exp # # Example kernel config for the RouterBOARD 153. include arch/evbmips/conf/std.adm5120 -#ident GENERIC-$Revision: 1.2.58.1 $ +#ident GENERIC-1.2.58.1 maxusers 32 @@ -35,7 +35,7 @@ options DDB_HISTORY_SIZE=100 # enable history editing in DDB makeoptions DEBUG=-g # compile full symbol table makeoptions CPUFLAGS=-march=4kc -options SYMTAB_SPACE=38 # size for embedded symbol table +options SYMTAB_SPACE=41 # size for embedded symbol table #options MEMORY_DISK_HOOKS #options MEMORY_DISK_IS_ROOT # Force root on ram-disk
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/adm5120
Module Name:src Committed By: matt Date: Fri May 20 16:38:52 UTC 2011 Modified Files: src/sys/arch/evbmips/adm5120 [matt-nb5-mips64]: machdep.c Log Message: Update to new definitions of savectx and mips_vector_init To generate a diff of this commit: cvs rdiff -u -r1.6.10.5 -r1.6.10.6 src/sys/arch/evbmips/adm5120/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/adm5120/machdep.c diff -u src/sys/arch/evbmips/adm5120/machdep.c:1.6.10.5 src/sys/arch/evbmips/adm5120/machdep.c:1.6.10.6 --- src/sys/arch/evbmips/adm5120/machdep.c:1.6.10.5 Sun Mar 21 17:38:33 2010 +++ src/sys/arch/evbmips/adm5120/machdep.c Fri May 20 16:38:51 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.6.10.5 2010/03/21 17:38:33 cliff Exp $ */ +/* machdep.c,v 1.6.10.5 2010/03/21 17:38:33 cliff Exp */ /*- * Copyright (c) 2007 Ruslan Ermilov and Vsevolod Lobko. @@ -107,7 +107,7 @@ */ #include sys/cdefs.h /* RCS ID Copyright macro defns */ -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.6.10.5 2010/03/21 17:38:33 cliff Exp $); +__KERNEL_RCSID(0, machdep.c,v 1.6.10.5 2010/03/21 17:38:33 cliff Exp); #include opt_ddb.h #include opt_kgdb.h @@ -327,7 +327,7 @@ * functions called during startup. * Also clears the I+D caches. */ - mips_vector_init(NULL); + mips_vector_init(NULL, false); /* * Set the VM page size. @@ -506,7 +506,7 @@ static int waittime = -1; /* Take a snapshot before clobbering any registers. */ - savectx(curlwp-l_addr); + savectx(lwp_getpcb(curlwp)); /* If always halt was specified as a boot flag, obey. */ if (boothowto RB_HALT)
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Fri May 20 16:49:23 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: Makefile.evbmips.inc Log Message: Add NEED_SREC and NEED_BINARY blocks so these don't need to be copied repeated. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.2.96.1 src/sys/arch/evbmips/conf/Makefile.evbmips.inc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/Makefile.evbmips.inc diff -u src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2 src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2.96.1 --- src/sys/arch/evbmips/conf/Makefile.evbmips.inc:1.2 Thu Nov 24 12:54:29 2005 +++ src/sys/arch/evbmips/conf/Makefile.evbmips.inc Fri May 20 16:49:23 2011 @@ -1,6 +1,16 @@ -# $NetBSD: Makefile.evbmips.inc,v 1.2 2005/11/24 12:54:29 dbj Exp $ +# Makefile.evbmips.inc,v 1.2 2005/11/24 12:54:29 dbj Exp -SYSTEM_LD_TAIL_EXTRA=; \ +.if defined(NEED_SREC) ${NEED_SREC} != no +SYSTEM_LD_TAIL_EXTRA+=; \ echo ${STRIP} -O srec -o $@.srec $@; \ ${STRIP} -O srec -o $@.srec $@ EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.srec@} +.endif + +.if defined(NEED_BINARY) ${NEED_BINARY} != no +SYSTEM_LD_TAIL_EXTRA+=; \ + echo ${OBJCOPY} -S -O binary $@ $@.bin; \ + ${OBJCOPY} -S -O binary $@ $@.bin + +EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.bin@} +.endif
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips
Module Name:src Committed By: matt Date: Fri May 13 17:30:43 UTC 2011 Modified Files: src/sys/arch/evbmips/alchemy [matt-nb5-mips64]: machdep.c src/sys/arch/evbmips/atheros [matt-nb5-mips64]: machdep.c Log Message: Update for new mips_vector_init and savectx definitions. To generate a diff of this commit: cvs rdiff -u -r1.37.10.5 -r1.37.10.6 src/sys/arch/evbmips/alchemy/machdep.c cvs rdiff -u -r1.13.10.6 -r1.13.10.7 src/sys/arch/evbmips/atheros/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/alchemy/machdep.c diff -u src/sys/arch/evbmips/alchemy/machdep.c:1.37.10.5 src/sys/arch/evbmips/alchemy/machdep.c:1.37.10.6 --- src/sys/arch/evbmips/alchemy/machdep.c:1.37.10.5 Sun Mar 21 17:38:33 2010 +++ src/sys/arch/evbmips/alchemy/machdep.c Fri May 13 17:30:43 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.37.10.5 2010/03/21 17:38:33 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.37.10.6 2011/05/13 17:30:43 matt Exp $ */ /*- * Copyright (c) 2006 Itronix Inc. @@ -107,7 +107,7 @@ */ #include sys/cdefs.h /* RCS ID Copyright macro defns */ -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.37.10.5 2010/03/21 17:38:33 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.37.10.6 2011/05/13 17:30:43 matt Exp $); #include opt_ddb.h #include opt_kgdb.h @@ -212,7 +212,7 @@ * functions called during startup. * Also clears the I+D caches. */ - mips_vector_init(NULL); + mips_vector_init(NULL, false); /* * Set the VM page size. @@ -426,7 +426,7 @@ const struct alchemy_board *board; /* Take a snapshot before clobbering any registers. */ - savectx(curlwp-l_addr); + savectx(lwp_getpcb(curlwp)); board = board_info(); KASSERT(board != NULL); Index: src/sys/arch/evbmips/atheros/machdep.c diff -u src/sys/arch/evbmips/atheros/machdep.c:1.13.10.6 src/sys/arch/evbmips/atheros/machdep.c:1.13.10.7 --- src/sys/arch/evbmips/atheros/machdep.c:1.13.10.6 Sun Mar 21 17:38:34 2010 +++ src/sys/arch/evbmips/atheros/machdep.c Fri May 13 17:30:43 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.13.10.6 2010/03/21 17:38:34 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.13.10.7 2011/05/13 17:30:43 matt Exp $ */ /* * Copyright (c) 2006 Urbana-Champaign Independent Media Center. @@ -147,7 +147,7 @@ */ #include sys/cdefs.h /* RCS ID Copyright macro defns */ -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.13.10.6 2010/03/21 17:38:34 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.13.10.7 2011/05/13 17:30:43 matt Exp $); #include opt_ddb.h #include opt_kgdb.h @@ -240,7 +240,7 @@ * functions called during startup. * Also clears the I+D caches. */ - mips_vector_init(NULL); + mips_vector_init(NULL, false); /* * Calibrate timers. @@ -393,7 +393,7 @@ static int waittime = -1; /* Take a snapshot before clobbering any registers. */ - savectx(curlwp-l_addr); + savectx(lwp_getpcb(curlwp)); /* If always halt was specified as a boot flag, obey. */ if (boothowto RB_HALT)
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Fri Apr 29 09:27:13 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX32 Log Message: sync with current To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/XLSATX32 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX32 diff -u src/sys/arch/evbmips/conf/XLSATX32:1.1.2.1 src/sys/arch/evbmips/conf/XLSATX32:1.1.2.2 --- src/sys/arch/evbmips/conf/XLSATX32:1.1.2.1 Mon Dec 14 07:24:33 2009 +++ src/sys/arch/evbmips/conf/XLSATX32 Fri Apr 29 09:27:12 2011 @@ -1,8 +1,10 @@ -# $NetBSD: XLSATX32,v 1.1.2.1 2009/12/14 07:24:33 cliff Exp $ +# $NetBSD: XLSATX32,v 1.1.2.2 2011/04/29 09:27:12 matt Exp $ # +#ident XLSATX32-$Revision: 1.1.2.2 $ + include arch/evbmips/conf/XLSATX -#ident XLSATX32-$Revision: 1.1.2.1 $ +options MEMLIMIT=0x2000 # 512MB makeoptions LP64=no
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Tue Feb 8 19:04:44 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX Log Message: - improve formatting: a space char followed by tab char follows options To generate a diff of this commit: cvs rdiff -u -r1.1.2.12 -r1.1.2.13 src/sys/arch/evbmips/conf/XLSATX Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX diff -u src/sys/arch/evbmips/conf/XLSATX:1.1.2.12 src/sys/arch/evbmips/conf/XLSATX:1.1.2.13 --- src/sys/arch/evbmips/conf/XLSATX:1.1.2.12 Sat Feb 5 06:02:09 2011 +++ src/sys/arch/evbmips/conf/XLSATX Tue Feb 8 19:04:43 2011 @@ -1,8 +1,8 @@ -# $NetBSD: XLSATX,v 1.1.2.12 2011/02/05 06:02:09 cliff Exp $ +# $NetBSD: XLSATX,v 1.1.2.13 2011/02/08 19:04:43 cliff Exp $ include arch/evbmips/conf/std.rmixl -#ident XLSATX-$Revision: 1.1.2.12 $ +#ident XLSATX-$Revision: 1.1.2.13 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -11,13 +11,13 @@ # # MEMSIZE can be used to limit memory amount used # -##options MEMSIZE=0x1000 # 256MB +#options MEMSIZE=0x1000 # 256MB # # MEMLIMIT can be used to limit memory address used # defparam opt_memsize.h MEMLIMIT -##options MEMLIMIT=0x1000 # 256MB +#options MEMLIMIT=0x1000 # 256MB options NOFPU # No FPU #options FPEMUL # emulate FPU insn @@ -39,12 +39,12 @@ options USERCONF # userconf(4) support #options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel options DDB # kernel dynamic debugger -options MIPS_DDB_WATCH # enable T_WATCH (see IEU_DEFAUTURE[DBE]) +options MIPS_DDB_WATCH # enable T_WATCH (see IEU_DEFAUTURE[DBE]) options DDB_HISTORY_SIZE=100 # enable history editing in DDB makeoptions DEBUG=-g # compile full symbol table options SYMTAB_SPACE=50 # size for embedded symbol table -#options DDB_COMMANDONENTER=trace;show registers -options DB_MAX_LINE=-1 +#options DDB_COMMANDONENTER=trace;show registers +options DB_MAX_LINE=-1 # Compatibility options #options COMPAT_43 # compatibility with 4.3BSD binaries @@ -146,7 +146,7 @@ obio0 at cpunode? com0 at obio0 addr 0x14000 intr 9 com1 at obio0 addr 0x15000 intr 10 -options COM_REGMAP +options COM_REGMAP rmixl_pcix0 at obio0 pci* at rmixl_pcix0 rmixl_pcie0 at obio0
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Sat Feb 5 06:02:09 UTC 2011 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX Log Message: - add options MIPS_DDB_WATCH, to enable COP0 watchpoint support in ddb - add config netbsd-sd0a for disk-rooted kernel To generate a diff of this commit: cvs rdiff -u -r1.1.2.11 -r1.1.2.12 src/sys/arch/evbmips/conf/XLSATX Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX diff -u src/sys/arch/evbmips/conf/XLSATX:1.1.2.11 src/sys/arch/evbmips/conf/XLSATX:1.1.2.12 --- src/sys/arch/evbmips/conf/XLSATX:1.1.2.11 Mon Aug 16 18:44:45 2010 +++ src/sys/arch/evbmips/conf/XLSATX Sat Feb 5 06:02:09 2011 @@ -1,8 +1,8 @@ -# $NetBSD: XLSATX,v 1.1.2.11 2010/08/16 18:44:45 matt Exp $ +# $NetBSD: XLSATX,v 1.1.2.12 2011/02/05 06:02:09 cliff Exp $ include arch/evbmips/conf/std.rmixl -#ident XLSATX-$Revision: 1.1.2.11 $ +#ident XLSATX-$Revision: 1.1.2.12 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -39,6 +39,7 @@ options USERCONF # userconf(4) support #options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel options DDB # kernel dynamic debugger +options MIPS_DDB_WATCH # enable T_WATCH (see IEU_DEFAUTURE[DBE]) options DDB_HISTORY_SIZE=100 # enable history editing in DDB makeoptions DEBUG=-g # compile full symbol table options SYMTAB_SPACE=50 # size for embedded symbol table @@ -135,6 +136,7 @@ config netbsd root on ? type ? config netbsd-wm0 root on wm0 type nfs config netbsd-msk0 root on msk0 type nfs +config netbsd-sd0a root on sd0a type ffs mainbus0 at root
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Sat Feb 5 06:02:52 UTC 2011 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - include opt_multiprocessor.h for MULTIPROCESSOR dependency - in rmixl_pcr_init_core(), ifdef MIPS_DDB_WATCH, clear IEU_DEFEATURE so we can get T_WATCH execeptions if/when we set COP0 watchpoint To generate a diff of this commit: cvs rdiff -u -r1.1.2.32 -r1.1.2.33 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.32 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.33 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.32 Fri Jan 7 00:17:42 2011 +++ src/sys/arch/evbmips/rmixl/machdep.c Sat Feb 5 06:02:51 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.32 2011/01/07 00:17:42 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.33 2011/02/05 06:02:51 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,10 +112,11 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.32 2011/01/07 00:17:42 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.33 2011/02/05 06:02:51 cliff Exp $); #define __INTR_PRIVATE +#include opt_multiprocessor.h #include opt_ddb.h #include opt_com.h #include opt_execfmt.h @@ -488,6 +489,17 @@ r = rmixl_mfcr(RMIXL_PCR_L1D_CONFIG0); r = ~__BIT(14); /* disable Unaligned Access */ rmixl_mtcr(RMIXL_PCR_L1D_CONFIG0, r); + +#if defined(DDB) defined(MIPS_DDB_WATCH) + /* + * clear IEU_DEFEATURE[DBE] + * this enables COP0 watchpoint to trigger T_WATCH exception + * instead of signaling JTAG. + */ + r = rmixl_mfcr(RMIXL_PCR_IEU_DEFEATURE); + r = ~__BIT(7); + rmixl_mtcr(RMIXL_PCR_IEU_DEFEATURE, r); +#endif } #ifdef MULTIPROCESSOR
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Fri Jan 7 00:17:42 UTC 2011 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - add rmixl_pcr_init_core() to initialize per-core processor control regs To generate a diff of this commit: cvs rdiff -u -r1.1.2.31 -r1.1.2.32 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.31 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.32 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.31 Fri Dec 17 04:49:24 2010 +++ src/sys/arch/evbmips/rmixl/machdep.c Fri Jan 7 00:17:42 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.31 2010/12/17 04:49:24 matt Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.32 2011/01/07 00:17:42 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.31 2010/12/17 04:49:24 matt Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.32 2011/01/07 00:17:42 cliff Exp $); #define __INTR_PRIVATE @@ -284,25 +284,9 @@ struct rmixl_config *rcp = rmixl_configuration; void *kernend; uint64_t memsize; - uint32_t r; extern char edata[], end[]; -#ifdef MULTIPROCESSOR - r = rmixl_mfcr(0x400); - r |= __BIT(0); /* enable global TLB mode */ - rmixl_mtcr(0x400, r); /* enable MMU clock gating */ - /* preserve MMU Thread Mode */ - /* TLB is not paritioned (global) */ -#else - rmixl_mtcr(0, 1); /* disable all threads except #0 */ - rmixl_mtcr(0x400, 0); /* enable MMU clock gating */ - /* set single MMU Thread Mode */ - /* TLB is partitioned (1 partition) */ -#endif - - r = rmixl_mfcr(0x300); - r = ~__BIT(14); /* disabled Unaligned Access */ - rmixl_mtcr(0x300, r); + rmixl_pcr_init_core(); /* * Clear the BSS segment. @@ -481,6 +465,31 @@ #endif } +/* + * set up Processor Control Regs for this core + */ +void +rmixl_pcr_init_core() +{ + uint32_t r; + +#ifdef MULTIPROCESSOR + rmixl_mtcr(RMIXL_PCR_MMU_SETUP, __BITS(2,0)); + /* enable MMU clock gating */ + /* 4 threads active -- why needed if Global? */ + /* enable global TLB mode */ +#else + rmixl_mtcr(RMIXL_PCR_THREADEN, 1); /* disable all threads except #0 */ + rmixl_mtcr(RMIXL_PCR_MMU_SETUP, 0); /* enable MMU clock gating */ + /* set single MMU Thread Mode */ + /* TLB is partitioned (1 partition) */ +#endif + + r = rmixl_mfcr(RMIXL_PCR_L1D_CONFIG0); + r = ~__BIT(14); /* disable Unaligned Access */ + rmixl_mtcr(RMIXL_PCR_L1D_CONFIG0, r); +} + #ifdef MULTIPROCESSOR static bool rmixl_fixup_cop0_oscratch(int32_t load_addr, uint32_t new_insns[2])
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Wed Dec 29 08:19:20 UTC 2010 Added Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: MALTA32.MP Log Message: Add a N32 MP config for MALTA. To generate a diff of this commit: cvs rdiff -u -r0 -r1.1.2.1 src/sys/arch/evbmips/conf/MALTA32.MP Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/sys/arch/evbmips/conf/MALTA32.MP diff -u /dev/null src/sys/arch/evbmips/conf/MALTA32.MP:1.1.2.1 --- /dev/null Wed Dec 29 08:19:20 2010 +++ src/sys/arch/evbmips/conf/MALTA32.MP Wed Dec 29 08:19:19 2010 @@ -0,0 +1,8 @@ +# $NetBSD: MALTA32.MP,v 1.1.2.1 2010/12/29 08:19:19 matt Exp $ +# +include arch/evbmips/conf/MALTA32 + +options MULTIPROCESSOR +options LOCKDEBUG + +pseudo-device lockstat
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: matt Date: Fri Dec 17 04:49:25 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: When doing MP, make sure the TLB is global mode (shared among all threads). To generate a diff of this commit: cvs rdiff -u -r1.1.2.30 -r1.1.2.31 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.30 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.31 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.30 Tue Aug 17 00:52:33 2010 +++ src/sys/arch/evbmips/rmixl/machdep.c Fri Dec 17 04:49:24 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.30 2010/08/17 00:52:33 matt Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.31 2010/12/17 04:49:24 matt Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.30 2010/08/17 00:52:33 matt Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.31 2010/12/17 04:49:24 matt Exp $); #define __INTR_PRIVATE @@ -287,7 +287,13 @@ uint32_t r; extern char edata[], end[]; -#ifndef MULTIPROCESSOR +#ifdef MULTIPROCESSOR + r = rmixl_mfcr(0x400); + r |= __BIT(0); /* enable global TLB mode */ + rmixl_mtcr(0x400, r); /* enable MMU clock gating */ + /* preserve MMU Thread Mode */ + /* TLB is not paritioned (global) */ +#else rmixl_mtcr(0, 1); /* disable all threads except #0 */ rmixl_mtcr(0x400, 0); /* enable MMU clock gating */ /* set single MMU Thread Mode */
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Mon Aug 16 18:44:45 UTC 2010 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX Log Message: Increase MSGBUFSIZE and add kttcp. To generate a diff of this commit: cvs rdiff -u -r1.1.2.10 -r1.1.2.11 src/sys/arch/evbmips/conf/XLSATX Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX diff -u src/sys/arch/evbmips/conf/XLSATX:1.1.2.10 src/sys/arch/evbmips/conf/XLSATX:1.1.2.11 --- src/sys/arch/evbmips/conf/XLSATX:1.1.2.10 Tue May 18 19:51:43 2010 +++ src/sys/arch/evbmips/conf/XLSATX Mon Aug 16 18:44:45 2010 @@ -1,8 +1,8 @@ -# $NetBSD: XLSATX,v 1.1.2.10 2010/05/18 19:51:43 cliff Exp $ +# $NetBSD: XLSATX,v 1.1.2.11 2010/08/16 18:44:45 matt Exp $ include arch/evbmips/conf/std.rmixl -#ident XLSATX-$Revision: 1.1.2.10 $ +#ident XLSATX-$Revision: 1.1.2.11 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -35,6 +35,7 @@ options DIAGNOSTIC # extra kernel sanity checking options DEBUG # extra kernel debugging support #options KMEMSTATS # kernel memory statistics (vmstat -m) +options MSGBUFSIZE=65536 # kernel dmesg buffer options USERCONF # userconf(4) support #options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel options DDB # kernel dynamic debugger @@ -201,6 +202,7 @@ #pseudo-device stf# 6to4 IPv6 over IPv4 encapsulation #pseudo-device vlan# IEEE 802.1q encapsulation #pseudo-device bridge# simple inter-network bridging +pseudo-device kttcp# kernel ttcp # Miscellaneous pseudo-devices pseudo-device pty# pseudo-terminals
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: matt Date: Tue Aug 17 00:52:33 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: Add new psb_version. To generate a diff of this commit: cvs rdiff -u -r1.1.2.29 -r1.1.2.30 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.29 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.30 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.29 Thu May 6 19:49:10 2010 +++ src/sys/arch/evbmips/rmixl/machdep.c Tue Aug 17 00:52:33 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.29 2010/05/06 19:49:10 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.30 2010/08/17 00:52:33 matt Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.29 2010/05/06 19:49:10 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.30 2010/08/17 00:52:33 matt Exp $); #define __INTR_PRIVATE @@ -212,6 +212,7 @@ { 0x4958d4fb0056ULL, PSB_TYPE_RMI }, { 0x4aacdb6a0056ULL, PSB_TYPE_RMI }, { 0x4b67d0320056ULL, PSB_TYPE_RMI }, + { 0x4c17058b0056ULL, PSB_TYPE_RMI }, { 0x49a5a8fa0056ULL, PSB_TYPE_DELL }, { 0x4b8ead310056ULL, PSB_TYPE_DELL }, };
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Thu Jun 10 00:43:06 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: autoconf.c Log Message: - in findroot(), add sd to search for root we are kind of lying about 'booted_device' here, until we figure out how to get booted dev info from the firmware. To generate a diff of this commit: cvs rdiff -u -r1.1.2.2 -r1.1.2.3 src/sys/arch/evbmips/rmixl/autoconf.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/autoconf.c diff -u src/sys/arch/evbmips/rmixl/autoconf.c:1.1.2.2 src/sys/arch/evbmips/rmixl/autoconf.c:1.1.2.3 --- src/sys/arch/evbmips/rmixl/autoconf.c:1.1.2.2 Thu Jan 14 00:40:35 2010 +++ src/sys/arch/evbmips/rmixl/autoconf.c Thu Jun 10 00:43:06 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: autoconf.c,v 1.1.2.2 2010/01/14 00:40:35 matt Exp $ */ +/* $NetBSD: autoconf.c,v 1.1.2.3 2010/06/10 00:43:06 cliff Exp $ */ /* * Copyright 2002 Wasabi Systems, Inc. @@ -36,7 +36,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: autoconf.c,v 1.1.2.2 2010/01/14 00:40:35 matt Exp $); +__KERNEL_RCSID(0, $NetBSD: autoconf.c,v 1.1.2.3 2010/06/10 00:43:06 cliff Exp $); #include sys/param.h #include sys/systm.h @@ -92,7 +92,7 @@ for (dv = TAILQ_FIRST(alldevs); dv != NULL; dv = TAILQ_NEXT(dv, dv_list)) if (device_class(dv) == DV_DISK - device_is_a(dv, wd)) + (device_is_a(dv, wd) || device_is_a(dv, sd))) booted_device = dv; /*
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Tue May 11 21:08:01 UTC 2010 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX Log Message: Add siisata/wd for LannerInc MR-460 To generate a diff of this commit: cvs rdiff -u -r1.1.2.8 -r1.1.2.9 src/sys/arch/evbmips/conf/XLSATX Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX diff -u src/sys/arch/evbmips/conf/XLSATX:1.1.2.8 src/sys/arch/evbmips/conf/XLSATX:1.1.2.9 --- src/sys/arch/evbmips/conf/XLSATX:1.1.2.8 Mon Apr 12 22:01:14 2010 +++ src/sys/arch/evbmips/conf/XLSATX Tue May 11 21:08:01 2010 @@ -1,8 +1,8 @@ -# $NetBSD: XLSATX,v 1.1.2.8 2010/04/12 22:01:14 cliff Exp $ +# $NetBSD: XLSATX,v 1.1.2.9 2010/05/11 21:08:01 matt Exp $ include arch/evbmips/conf/std.rmixl -#ident XLSATX-$Revision: 1.1.2.8 $ +#ident XLSATX-$Revision: 1.1.2.9 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -160,6 +160,9 @@ ohci0 at rmixl_usbi0 addr 0x24400 size 0x400 intr 0 ohci1 at rmixl_usbi0 addr 0x24800 size 0x400 intr 1 ehci0 at rmixl_usbi0 addr 0x24000 size 0x400 intr 2 +siisata* at pci? dev ? function ? +atabus* at ata? +wd* at atabus? drive ? flags 0x # USB usb* at ohci?
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Thu May 6 19:49:10 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: add psb version 0x4b67d0320056 to the list of known versions To generate a diff of this commit: cvs rdiff -u -r1.1.2.28 -r1.1.2.29 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.28 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.29 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.28 Mon Apr 12 22:02:52 2010 +++ src/sys/arch/evbmips/rmixl/machdep.c Thu May 6 19:49:10 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.28 2010/04/12 22:02:52 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.29 2010/05/06 19:49:10 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.28 2010/04/12 22:02:52 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.29 2010/05/06 19:49:10 cliff Exp $); #define __INTR_PRIVATE @@ -211,6 +211,7 @@ static rmiclfw_psb_id_t rmiclfw_psb_id[] = { { 0x4958d4fb0056ULL, PSB_TYPE_RMI }, { 0x4aacdb6a0056ULL, PSB_TYPE_RMI }, + { 0x4b67d0320056ULL, PSB_TYPE_RMI }, { 0x49a5a8fa0056ULL, PSB_TYPE_DELL }, { 0x4b8ead310056ULL, PSB_TYPE_DELL }, };
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Wed Apr 21 00:54:14 UTC 2010 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: std.adm5120 std.alchemy std.atheros std.malta std.meraki Log Message: sync to netbsd-5 To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.1.62.1 src/sys/arch/evbmips/conf/std.adm5120 cvs rdiff -u -r1.3 -r1.3.88.1 src/sys/arch/evbmips/conf/std.alchemy cvs rdiff -u -r1.3 -r1.3.72.1 src/sys/arch/evbmips/conf/std.atheros cvs rdiff -u -r1.5.94.1 -r1.5.94.2 src/sys/arch/evbmips/conf/std.malta cvs rdiff -u -r1.1 -r1.1.78.1 src/sys/arch/evbmips/conf/std.meraki Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/std.adm5120 diff -u src/sys/arch/evbmips/conf/std.adm5120:1.1 src/sys/arch/evbmips/conf/std.adm5120:1.1.62.1 --- src/sys/arch/evbmips/conf/std.adm5120:1.1 Tue Mar 20 08:52:01 2007 +++ src/sys/arch/evbmips/conf/std.adm5120 Wed Apr 21 00:54:13 2010 @@ -1,4 +1,4 @@ -# $NetBSD: std.adm5120,v 1.1 2007/03/20 08:52:01 dyoung Exp $ +# $NetBSD: std.adm5120,v 1.1.62.1 2010/04/21 00:54:13 matt Exp $ machine evbmips mips include conf/std # MI standard options @@ -16,3 +16,6 @@ include arch/evbmips/conf/files.adm5120 include arch/mips/conf/files.adm5120 + +# Atheros HAL options +include external/isc/atheros_hal/conf/std.ath_hal Index: src/sys/arch/evbmips/conf/std.alchemy diff -u src/sys/arch/evbmips/conf/std.alchemy:1.3 src/sys/arch/evbmips/conf/std.alchemy:1.3.88.1 --- src/sys/arch/evbmips/conf/std.alchemy:1.3 Tue Mar 28 03:43:57 2006 +++ src/sys/arch/evbmips/conf/std.alchemy Wed Apr 21 00:54:13 2010 @@ -1,4 +1,4 @@ -# $NetBSD: std.alchemy,v 1.3 2006/03/28 03:43:57 gdamore Exp $ +# $NetBSD: std.alchemy,v 1.3.88.1 2010/04/21 00:54:13 matt Exp $ machine evbmips mips include conf/std # MI standard options @@ -15,3 +15,6 @@ include arch/evbmips/conf/files.alchemy include arch/mips/conf/files.alchemy + +# Atheros HAL options +include external/isc/atheros_hal/conf/std.ath_hal Index: src/sys/arch/evbmips/conf/std.atheros diff -u src/sys/arch/evbmips/conf/std.atheros:1.3 src/sys/arch/evbmips/conf/std.atheros:1.3.72.1 --- src/sys/arch/evbmips/conf/std.atheros:1.3 Tue Sep 26 06:37:32 2006 +++ src/sys/arch/evbmips/conf/std.atheros Wed Apr 21 00:54:13 2010 @@ -1,4 +1,4 @@ -# $NetBSD: std.atheros,v 1.3 2006/09/26 06:37:32 gdamore Exp $ +# $NetBSD: std.atheros,v 1.3.72.1 2010/04/21 00:54:13 matt Exp $ machine evbmips mips include conf/std # MI standard options @@ -13,3 +13,6 @@ include arch/evbmips/conf/files.atheros include arch/mips/conf/files.atheros + +# Atheros HAL options +include external/isc/atheros_hal/conf/std.ath_hal Index: src/sys/arch/evbmips/conf/std.malta diff -u src/sys/arch/evbmips/conf/std.malta:1.5.94.1 src/sys/arch/evbmips/conf/std.malta:1.5.94.2 --- src/sys/arch/evbmips/conf/std.malta:1.5.94.1 Sun Aug 23 03:43:33 2009 +++ src/sys/arch/evbmips/conf/std.malta Wed Apr 21 00:54:13 2010 @@ -1,4 +1,4 @@ -# $NetBSD: std.malta,v 1.5.94.1 2009/08/23 03:43:33 matt Exp $ +# $NetBSD: std.malta,v 1.5.94.2 2010/04/21 00:54:13 matt Exp $ machine evbmips mips include conf/std # MI standard options @@ -16,3 +16,6 @@ makeoptions BOARDTYPE=malta include arch/evbmips/conf/files.malta + +# Atheros HAL options +include external/isc/atheros_hal/conf/std.ath_hal Index: src/sys/arch/evbmips/conf/std.meraki diff -u src/sys/arch/evbmips/conf/std.meraki:1.1 src/sys/arch/evbmips/conf/std.meraki:1.1.78.1 --- src/sys/arch/evbmips/conf/std.meraki:1.1 Tue Sep 26 06:37:32 2006 +++ src/sys/arch/evbmips/conf/std.meraki Wed Apr 21 00:54:14 2010 @@ -1,4 +1,4 @@ -# $NetBSD: std.meraki,v 1.1 2006/09/26 06:37:32 gdamore Exp $ +# $NetBSD: std.meraki,v 1.1.78.1 2010/04/21 00:54:14 matt Exp $ machine evbmips mips include conf/std # MI standard options @@ -13,3 +13,6 @@ include arch/evbmips/conf/files.atheros include arch/mips/conf/files.atheros + +# Atheros HAL options +include external/isc/atheros_hal/conf/std.ath_hal
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Mon Apr 12 22:01:14 UTC 2010 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX Log Message: - wildcard pci at pcie0 To generate a diff of this commit: cvs rdiff -u -r1.1.2.7 -r1.1.2.8 src/sys/arch/evbmips/conf/XLSATX Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX diff -u src/sys/arch/evbmips/conf/XLSATX:1.1.2.7 src/sys/arch/evbmips/conf/XLSATX:1.1.2.8 --- src/sys/arch/evbmips/conf/XLSATX:1.1.2.7 Wed Apr 7 19:31:37 2010 +++ src/sys/arch/evbmips/conf/XLSATX Mon Apr 12 22:01:14 2010 @@ -1,8 +1,8 @@ -# $NetBSD: XLSATX,v 1.1.2.7 2010/04/07 19:31:37 cliff Exp $ +# $NetBSD: XLSATX,v 1.1.2.8 2010/04/12 22:01:14 cliff Exp $ include arch/evbmips/conf/std.rmixl -#ident XLSATX-$Revision: 1.1.2.7 $ +#ident XLSATX-$Revision: 1.1.2.8 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -146,7 +146,7 @@ rmixl_pcix0 at obio0 pci* at rmixl_pcix0 rmixl_pcie0 at obio0 -pci0 at rmixl_pcie0 +pci* at rmixl_pcie0 ppb* at pci? pci* at ppb? wm* at pci? dev ? function ? # Intel i82546EB Gig-E
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Mon Apr 12 22:02:52 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - include rmixl_pcix.h and rmixl_pcie.h to get the config flags - include rmixl_pcixvar.h to get proto for rmixl_physaddr_init_pcix() - calls to rmixl_physaddr_init_pcix() and rmixl_physaddr_init_pcie() depend on the config flags - eliminate vm_clusters[], just use mem_clusters[] for everything - add mem_cluster_maxaddr to track highest RAM addr, used to check PCI-X Host BARs; calculate his value just before calling mips_page_physload() i.e. once mem_clusters[] is stable. To generate a diff of this commit: cvs rdiff -u -r1.1.2.27 -r1.1.2.28 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.27 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.28 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.27 Mon Mar 29 23:40:58 2010 +++ src/sys/arch/evbmips/rmixl/machdep.c Mon Apr 12 22:02:52 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.27 2010/03/29 23:40:58 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.28 2010/04/12 22:02:52 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.27 2010/03/29 23:40:58 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.28 2010/04/12 22:02:52 cliff Exp $); #define __INTR_PRIVATE @@ -120,6 +120,8 @@ #include opt_com.h #include opt_execfmt.h #include opt_memsize.h +#include rmixl_pcix.h +#include rmixl_pcie.h #include sys/param.h #include sys/systm.h @@ -167,6 +169,7 @@ #include mips/rmi/rmixl_firmware.h #include mips/rmi/rmixl_comvar.h #include mips/rmi/rmixl_pcievar.h +#include mips/rmi/rmixl_pcixvar.h #ifdef MACHDEP_DEBUG int machdep_debug=MACHDEP_DEBUG; @@ -241,6 +244,7 @@ phys_ram_seg_t mem_clusters[VM_PHYSSEG_MAX]; +u_quad_t mem_cluster_maxaddr; u_int mem_cluster_cnt; @@ -278,9 +282,7 @@ struct rmixl_config *rcp = rmixl_configuration; void *kernend; uint64_t memsize; - u_int vm_cluster_cnt; uint32_t r; - phys_ram_seg_t vm_clusters[VM_PHYSSEG_MAX]; extern char edata[], end[]; #ifndef MULTIPROCESSOR @@ -397,41 +399,45 @@ /* * Reserve pages from the VM system. - * to maintain mem_clusters[] as a map of raw ram, - * copy into temporary table vm_clusters[] - * work on that and use it to feed vm_physload() */ - KASSERT(sizeof(mem_clusters) == sizeof(vm_clusters)); - memcpy(vm_clusters, mem_clusters, sizeof(vm_clusters)); - vm_cluster_cnt = mem_cluster_cnt; /* reserve 0..start..kernend pages */ - vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt, + mem_cluster_cnt = ram_seg_resv(mem_clusters, mem_cluster_cnt, 0, round_page(MIPS_KSEG0_TO_PHYS(kernend))); /* reserve reset exception vector page */ /* should never be in our clusters anyway... */ - vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt, + mem_cluster_cnt = ram_seg_resv(mem_clusters, mem_cluster_cnt, 0x1FC0, 0x1FC0+NBPG); #ifdef MULTIPROCEESOR /* reserve the cpu_wakeup_info area */ - vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt, + mem_cluster_cnt = ram_seg_resv(mem_clusters, mem_cluster_cnt, (u_quad_t)trunc_page(rcp-rc_cpu_wakeup_info), (u_quad_t)round_page(rcp-rc_cpu_wakeup_end)); #endif #ifdef MEMLIMIT /* reserve everything = MEMLIMIT */ - vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt, + mem_cluster_cnt = ram_seg_resv(mem_clusters, mem_cluster_cnt, (u_quad_t)MEMLIMIT, (u_quad_t)~0); #endif + /* get maximum RAM address from the VM clusters */ + mem_cluster_maxaddr = 0; + for (u_int i=0; i mem_cluster_cnt; i++) { + u_quad_t tmp = round_page( + mem_clusters[i].start + mem_clusters[i].size); + if (tmp mem_cluster_maxaddr) + mem_cluster_maxaddr = tmp; + } + DPRINTF((mem_cluster_maxaddr %#PRIx64\n, mem_cluster_maxaddr)); + /* - * Load vm_clusters[] into the VM system. + * Load mem_clusters[] into the VM system. */ mips_page_physload(MIPS_KSEG0_START, (vaddr_t) kernend, - vm_clusters, vm_cluster_cnt, NULL, 0); + mem_clusters, mem_cluster_cnt, NULL, 0); /* * Initialize error message buffer (at end of core). @@ -614,10 +620,14 @@ */ switch(cpu_rmixl_chip_type(mips_options.mips_cpu)) { case CIDFL_RMI_TYPE_XLR: - /* XXX TBD */ +#if NRMIXL_PCIX + rmixl_physaddr_init_pcix(ext); +#endif break; case CIDFL_RMI_TYPE_XLS: +#if NRMIXL_PCIE rmixl_physaddr_init_pcie(ext); +#endif break; case CIDFL_RMI_TYPE_XLP: /* XXX TBD */
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Mon Mar 29 23:31:16 UTC 2010 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: std.rmixl Log Message: - turn on options MIPS64_XLR To generate a diff of this commit: cvs rdiff -u -r1.1.2.3 -r1.1.2.4 src/sys/arch/evbmips/conf/std.rmixl Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/std.rmixl diff -u src/sys/arch/evbmips/conf/std.rmixl:1.1.2.3 src/sys/arch/evbmips/conf/std.rmixl:1.1.2.4 --- src/sys/arch/evbmips/conf/std.rmixl:1.1.2.3 Fri Dec 11 23:44:25 2009 +++ src/sys/arch/evbmips/conf/std.rmixl Mon Mar 29 23:31:16 2010 @@ -1,4 +1,4 @@ -# $NetBSD: std.rmixl,v 1.1.2.3 2009/12/11 23:44:25 cliff Exp $ +# $NetBSD: std.rmixl,v 1.1.2.4 2010/03/29 23:31:16 cliff Exp $ machine evbmips mips include conf/std # MI standard options @@ -7,6 +7,7 @@ # Platform support options MIPS64 +options MIPS64_XLR options MIPS64_XLS
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Mon Mar 29 23:32:02 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - add new recognized psb (firmware) ID 0x4b8ead310056 - pcie physical regions discovery is moved to rmixl_pcie.c and is conditional on RMI chip type (XLR has no PCIE) To generate a diff of this commit: cvs rdiff -u -r1.1.2.25 -r1.1.2.26 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.25 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.26 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.25 Sun Mar 21 21:22:28 2010 +++ src/sys/arch/evbmips/rmixl/machdep.c Mon Mar 29 23:32:02 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.25 2010/03/21 21:22:28 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.26 2010/03/29 23:32:02 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.25 2010/03/21 21:22:28 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.26 2010/03/29 23:32:02 cliff Exp $); #define __INTR_PRIVATE @@ -166,7 +166,9 @@ #include mips/rmi/rmixl_intr.h #include mips/rmi/rmixl_firmware.h #include mips/rmi/rmixl_comvar.h +#include mips/rmi/rmixl_pcievar.h +#define MACHDEP_DEBUG 1 /* XXX TMP FIXME */ #ifdef MACHDEP_DEBUG int machdep_debug=MACHDEP_DEBUG; # define DPRINTF(x) do { if (machdep_debug) printf x ; } while(0) @@ -206,8 +208,9 @@ } rmiclfw_psb_id_t; static rmiclfw_psb_id_t rmiclfw_psb_id[] = { { 0x4958d4fb0056ULL, PSB_TYPE_RMI }, - { 0x49a5a8fa0056ULL, PSB_TYPE_DELL }, { 0x4aacdb6a0056ULL, PSB_TYPE_RMI }, + { 0x49a5a8fa0056ULL, PSB_TYPE_DELL }, + { 0x4b8ead310056ULL, PSB_TYPE_DELL }, }; #define RMICLFW_PSB_VERSIONS_LEN \ (sizeof(rmiclfw_psb_id)/sizeof(rmiclfw_psb_id[0])) @@ -608,53 +611,18 @@ } /* - * grab regions per PCIe CFG, ECFG, IO, MEM BARs + * get chip-dependent physaddr regions */ - r = RMIXL_IOREG_READ(RMIXL_SBC_PCIE_CFG_BAR); - if ((r RMIXL_PCIE_CFG_BAR_ENB) != 0) { - base = (u_long)(RMIXL_PCIE_CFG_BAR_TO_BA((uint64_t)r) - / (1024 * 1024)); - size = (u_long)RMIXL_PCIE_CFG_SIZE / (1024 * 1024); - DPRINTF((%s: %d: %s: 0x%08x -- 0x%010lx:%ld MB\n, __func__, - __LINE__, CFG, r, base * 1024 * 1024, size)); - if (extent_alloc_region(ext, base, size, EX_NOWAIT) != 0) - panic(%s: extent_alloc_region(%p, %#lx, %#lx, %#x) -failed, __func__, ext, base, size, EX_NOWAIT); - } - r = RMIXL_IOREG_READ(RMIXL_SBC_PCIE_ECFG_BAR); - if ((r RMIXL_PCIE_ECFG_BAR_ENB) != 0) { - base = (u_long)(RMIXL_PCIE_ECFG_BAR_TO_BA((uint64_t)r) - / (1024 * 1024)); - size = (u_long)RMIXL_PCIE_ECFG_SIZE / (1024 * 1024); - DPRINTF((%s: %d: %s: 0x%08x -- 0x%010lx:%ld MB\n, __func__, - __LINE__, ECFG, r, base * 1024 * 1024, size)); - if (extent_alloc_region(ext, base, size, EX_NOWAIT) != 0) - panic(%s: extent_alloc_region(%p, %#lx, %#lx, %#x) -failed, __func__, ext, base, size, EX_NOWAIT); - } - r = RMIXL_IOREG_READ(RMIXL_SBC_PCIE_MEM_BAR); - if ((r RMIXL_PCIE_MEM_BAR_ENB) != 0) { - base = (u_long)(RMIXL_PCIE_MEM_BAR_TO_BA((uint64_t)r) - / (1024 * 1024)); - size = (u_long)(RMIXL_PCIE_MEM_BAR_TO_SIZE((uint64_t)r) - / (1024 * 1024)); - DPRINTF((%s: %d: %s: 0x%08x -- 0x%010lx:%ld MB\n, __func__, - __LINE__, MEM, r, base * 1024 * 1024, size)); - if (extent_alloc_region(ext, base, size, EX_NOWAIT) != 0) - panic(%s: extent_alloc_region(%p, %#lx, %#lx, %#x) -failed, __func__, ext, base, size, EX_NOWAIT); - } - r = RMIXL_IOREG_READ(RMIXL_SBC_PCIE_IO_BAR); - if ((r RMIXL_PCIE_IO_BAR_ENB) != 0) { - base = (u_long)(RMIXL_PCIE_IO_BAR_TO_BA((uint64_t)r) - / (1024 * 1024)); - size = (u_long)(RMIXL_PCIE_IO_BAR_TO_SIZE((uint64_t)r) - / (1024 * 1024)); - DPRINTF((%s: %d: %s: 0x%08x -- 0x%010lx:%ld MB\n, __func__, - __LINE__, IO, r, base * 1024 * 1024, size)); - if (extent_alloc_region(ext, base, size, EX_NOWAIT) != 0) - panic(%s: extent_alloc_region(%p, %#lx, %#lx, %#x) -failed, __func__, ext, base, size, EX_NOWAIT); + switch(cpu_rmixl_chip_type(mips_options.mips_cpu)) { + case CIDFL_RMI_TYPE_XLR: + /* XXX TBD */ + break; + case CIDFL_RMI_TYPE_XLS: + rmixl_physaddr_init_pcie(ext); + break; + case CIDFL_RMI_TYPE_XLP: + /* XXX TBD */ + panic(%s: RMI XLP not yet supported, __func__); } /*
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Mon Mar 29 23:40:58 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: turn off MACHDEP_DEBUG To generate a diff of this commit: cvs rdiff -u -r1.1.2.26 -r1.1.2.27 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.26 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.27 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.26 Mon Mar 29 23:32:02 2010 +++ src/sys/arch/evbmips/rmixl/machdep.c Mon Mar 29 23:40:58 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.26 2010/03/29 23:32:02 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.27 2010/03/29 23:40:58 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.26 2010/03/29 23:32:02 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.27 2010/03/29 23:40:58 cliff Exp $); #define __INTR_PRIVATE @@ -168,7 +168,6 @@ #include mips/rmi/rmixl_comvar.h #include mips/rmi/rmixl_pcievar.h -#define MACHDEP_DEBUG 1 /* XXX TMP FIXME */ #ifdef MACHDEP_DEBUG int machdep_debug=MACHDEP_DEBUG; # define DPRINTF(x) do { if (machdep_debug) printf x ; } while(0)
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Sun Mar 21 21:22:29 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - specify rmixl_splsw to mips_vector_init note that __INTR_PRIVATE must be defined to do that - print MEMLIMIT if it is defined, after printing memsize - improve some comments To generate a diff of this commit: cvs rdiff -u -r1.1.2.24 -r1.1.2.25 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.24 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.25 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.24 Tue Mar 9 02:04:46 2010 +++ src/sys/arch/evbmips/rmixl/machdep.c Sun Mar 21 21:22:28 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.24 2010/03/09 02:04:46 matt Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.25 2010/03/21 21:22:28 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,9 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.24 2010/03/09 02:04:46 matt Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.25 2010/03/21 21:22:28 cliff Exp $); + +#define __INTR_PRIVATE #include opt_ddb.h #include opt_com.h @@ -157,10 +159,13 @@ #include dev/ic/comreg.h #include dev/ic/comvar.h -#include mips/rmi/rmixl_comvar.h +#include mips/include/intr.h + +#include mips/rmi/rmixlreg.h #include mips/rmi/rmixlvar.h +#include mips/rmi/rmixl_intr.h #include mips/rmi/rmixl_firmware.h -#include mips/rmi/rmixlreg.h +#include mips/rmi/rmixl_comvar.h #ifdef MACHDEP_DEBUG int machdep_debug=MACHDEP_DEBUG; @@ -252,8 +257,8 @@ void rmixl_get_wakeup_info(struct rmixl_config *); #ifdef MACHDEP_DEBUG static void rmixl_wakeup_info_print(volatile rmixlfw_cpu_wakeup_info_t *); -#endif -#endif +#endif /* MACHDEP_DEBUG */ +#endif /* MULTIPROCESSOR */ /* @@ -299,8 +304,10 @@ * before comcnattach() is called (or at least before the * first printf() after that is called). * Also clears the I+D caches. + * + * specify chip-specific EIRR/EIMR based spl functions */ - mips_vector_init(); + mips_vector_init(rmixl_splsw); /* mips_vector_init initialized mips_options */ strcpy(cpu_model, mips_options.mips_cpu-cpu_name); @@ -322,6 +329,9 @@ printf(\nNetBSD/rmixl\n); printf(memsize = %#PRIx64\n, memsize); +#ifdef MEMLIMIT + printf(memlimit = %#PRIx64\n, (uint64_t)MEMLIMIT); +#endif #if defined(MULTIPROCESSOR) defined(MACHDEP_DEBUG) rmixl_wakeup_info_print(rcp-rc_cpu_wakeup_info); @@ -410,7 +420,7 @@ #endif #ifdef MEMLIMIT - /* reserve everything MEMLIMIT */ + /* reserve everything = MEMLIMIT */ vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt, (u_quad_t)MEMLIMIT, (u_quad_t)~0); #endif @@ -446,7 +456,8 @@ #endif #ifdef MULTIPROCESSOR /* - * Fix up the exception vector to use COP0 OSSCRATCH0 + * store (cpu#0) curcpu in COP0 OSSCRATCH0 + * used in exception vector */ __asm __volatile(dmtc0 %0,$%1 :: r(cpu_info_store), n(MIPS_COP_0_OSSCRATCH)); @@ -862,7 +873,7 @@ #ifdef MULTIPROCESSOR /* - * firmware passes wakeup info structure in CP0 OS Scratch reg #7 + * RMI firmware passes wakeup info structure in CP0 OS Scratch reg #7 * they do not explicitly give us the size of the wakeup area. * we know that firmware loader sets wip-gp thusly: * gp = stack_start[vcpu] = round_page(wakeup_end) + (vcpu * (PAGE_SIZE * 2))
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/evbmips
Module Name:src Committed By: matt Date: Thu Mar 11 08:19:41 UTC 2010 Modified Files: src/sys/arch/evbmips/evbmips [matt-nb5-mips64]: cpu.c Log Message: Use cpu_attach_common() To generate a diff of this commit: cvs rdiff -u -r1.2.4.2 -r1.2.4.3 src/sys/arch/evbmips/evbmips/cpu.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/evbmips/cpu.c diff -u src/sys/arch/evbmips/evbmips/cpu.c:1.2.4.2 src/sys/arch/evbmips/evbmips/cpu.c:1.2.4.3 --- src/sys/arch/evbmips/evbmips/cpu.c:1.2.4.2 Wed Jan 13 01:53:18 2010 +++ src/sys/arch/evbmips/evbmips/cpu.c Thu Mar 11 08:19:41 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: cpu.c,v 1.2.4.2 2010/01/13 01:53:18 matt Exp $ */ +/* $NetBSD: cpu.c,v 1.2.4.3 2010/03/11 08:19:41 matt Exp $ */ /* * Copyright 2002 Wasabi Systems, Inc. @@ -36,7 +36,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: cpu.c,v 1.2.4.2 2010/01/13 01:53:18 matt Exp $); +__KERNEL_RCSID(0, $NetBSD: cpu.c,v 1.2.4.3 2010/03/11 08:19:41 matt Exp $); #include sys/param.h #include sys/device.h @@ -61,8 +61,7 @@ { struct cpu_info * const ci = curcpu(); - ci-ci_dev = self; - self-dv_private = ci; + cpu_attach_common(self, ci); aprint_normal(: %lu.%02luMHz (hz cycles = %lu, delay divisor = %lu)\n, ci-ci_cpu_freq / 100,
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/evbmips
Module Name:src Committed By: matt Date: Thu Mar 11 08:20:18 UTC 2010 Modified Files: src/sys/arch/evbmips/evbmips [matt-nb5-mips64]: interrupt.c Log Message: don't pass MIPS_INT_MASK_5 to evbmips_iointr To generate a diff of this commit: cvs rdiff -u -r1.11.18.3 -r1.11.18.4 src/sys/arch/evbmips/evbmips/interrupt.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/evbmips/interrupt.c diff -u src/sys/arch/evbmips/evbmips/interrupt.c:1.11.18.3 src/sys/arch/evbmips/evbmips/interrupt.c:1.11.18.4 --- src/sys/arch/evbmips/evbmips/interrupt.c:1.11.18.3 Mon Feb 15 07:37:36 2010 +++ src/sys/arch/evbmips/evbmips/interrupt.c Thu Mar 11 08:20:18 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: interrupt.c,v 1.11.18.3 2010/02/15 07:37:36 matt Exp $ */ +/* $NetBSD: interrupt.c,v 1.11.18.4 2010/03/11 08:20:18 matt Exp $ */ /*- * Copyright (c) 2001 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: interrupt.c,v 1.11.18.3 2010/02/15 07:37:36 matt Exp $); +__KERNEL_RCSID(0, $NetBSD: interrupt.c,v 1.11.18.4 2010/03/11 08:20:18 matt Exp $); #include sys/param.h #include sys/device.h @@ -73,11 +73,10 @@ cf.sr = status; cf.intr = (ci-ci_idepth 1); mips3_clockintr(cf); + pending ^= MIPS_INT_MASK_5; } - if (pending (MIPS_INT_MASK_0|MIPS_INT_MASK_1|MIPS_INT_MASK_2| -MIPS_INT_MASK_3|MIPS_INT_MASK_4)) { - KASSERT(ipl == IPL_VM); + if (pending != 0) { /* Process I/O and error interrupts. */ evbmips_iointr(ipl, pc, pending); }
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Fri Jan 29 00:36:04 UTC 2010 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX Log Message: - add option MEMLIMIT, can be used to limit max memory address used To generate a diff of this commit: cvs rdiff -u -r1.1.2.5 -r1.1.2.6 src/sys/arch/evbmips/conf/XLSATX Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX diff -u src/sys/arch/evbmips/conf/XLSATX:1.1.2.5 src/sys/arch/evbmips/conf/XLSATX:1.1.2.6 --- src/sys/arch/evbmips/conf/XLSATX:1.1.2.5 Fri Jan 29 00:16:58 2010 +++ src/sys/arch/evbmips/conf/XLSATX Fri Jan 29 00:36:04 2010 @@ -1,18 +1,24 @@ -# $NetBSD: XLSATX,v 1.1.2.5 2010/01/29 00:16:58 matt Exp $ +# $NetBSD: XLSATX,v 1.1.2.6 2010/01/29 00:36:04 cliff Exp $ include arch/evbmips/conf/std.rmixl -#ident XLSATX-$Revision: 1.1.2.5 $ +#ident XLSATX-$Revision: 1.1.2.6 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary maxusers 32 # -# MEMSIZE can be used to limit memory size obtained from firmware or DRAM BARs +# MEMSIZE can be used to limit memory amount used # ##options MEMSIZE=0x1000 # 256MB +# +# MEMLIMIT can be used to limit memory address used +# +defparam opt_memsize.h MEMLIMIT +##options MEMLIMIT=0x1000 # 256MB + options NOFPU # No FPU #options FPEMUL # emulate FPU insn
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Sun Jan 24 05:27:47 UTC 2010 Added Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX64.MP Log Message: add MP config wrapper for XLSATX64 To generate a diff of this commit: cvs rdiff -u -r0 -r1.1.2.1 src/sys/arch/evbmips/conf/XLSATX64.MP Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/sys/arch/evbmips/conf/XLSATX64.MP diff -u /dev/null src/sys/arch/evbmips/conf/XLSATX64.MP:1.1.2.1 --- /dev/null Sun Jan 24 05:27:48 2010 +++ src/sys/arch/evbmips/conf/XLSATX64.MP Sun Jan 24 05:27:47 2010 @@ -0,0 +1,8 @@ +# $NetBSD: XLSATX64.MP,v 1.1.2.1 2010/01/24 05:27:47 cliff Exp $ +# +include arch/evbmips/conf/XLSATX64 + +options MULTIPROCESSOR +options LOCKDEBUG + +pseudo-device lockstat
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Sun Jan 24 05:34:20 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - move firmware info stuff into struct rmixl_config To generate a diff of this commit: cvs rdiff -u -r1.1.2.16 -r1.1.2.17 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.16 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.17 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.16 Fri Jan 22 07:58:51 2010 +++ src/sys/arch/evbmips/rmixl/machdep.c Sun Jan 24 05:34:20 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.16 2010/01/22 07:58:51 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.17 2010/01/24 05:34:20 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.16 2010/01/22 07:58:51 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.17 2010/01/24 05:34:20 cliff Exp $); #include opt_ddb.h #include opt_com.h @@ -204,15 +204,6 @@ (sizeof(rmiclfw_psb_versions)/sizeof(rmiclfw_psb_versions[0])) /* - * kernel copies of firmware info - */ -static rmixlfw_info_t rmixlfw_info; -static rmixlfw_mmap_t rmixlfw_phys_mmap; -static rmixlfw_mmap_t rmixlfw_avail_mmap; -#define RMIXLFW_INFOP_LEGAL 0x8c00 - - -/* * storage for fixed extent used to allocate physical address regions * because extent(9) start and end values are u_long, they are only * 32 bits on a 32 bit kernel, which is insuffucuent since XLS physical @@ -333,6 +324,13 @@ printf(cpu_wakeup_info %p, cpu_wakeup_end %p\n, rcp-rc_cpu_wakeup_info, rcp-rc_cpu_wakeup_end); + printf(userapp_cpu_map: %#PRIx64\n, rcp-rc_psb_info.userapp_cpu_map); + printf(wakeup: %#PRIx64\n, rcp-rc_psb_info.wakeup); +{ + register_t sp; + asm volatile (move %0, $sp\n : =r(sp)); + printf(sp: %#PRIx64\n, sp); +} #endif rmixl_physaddr_init(); @@ -344,7 +342,7 @@ * Double the Hz if this CPU runs at twice the * external/cp0-count frequency */ - curcpu()-ci_cpu_freq = rmixlfw_info.cpu_frequency; + curcpu()-ci_cpu_freq = rcp-rc_psb_info.cpu_frequency; curcpu()-ci_cctr_freq = curcpu()-ci_cpu_freq; curcpu()-ci_cycles_per_hz = (curcpu()-ci_cpu_freq + hz / 2) / hz; curcpu()-ci_divisor_delay = @@ -625,10 +623,10 @@ #endif infop |= MIPS_KSEG0_START; - rmixlfw_info = *(rmixlfw_info_t *)(intptr_t)infop; + rcp-rc_psb_info = *(rmixlfw_info_t *)(intptr_t)infop; for (int i=0; i RMICLFW_PSB_VERSIONS_LEN; i++) { - if (rmiclfw_psb_versions[i] == rmixlfw_info.psb_version) + if (rmiclfw_psb_versions[i] == rcp-rc_psb_info.psb_version) goto found; } @@ -637,7 +635,7 @@ #ifdef DIAGNOSTIC rmixl_puts(\r\nWARNING: untested psb_version: ); - rmixl_puthex64(rmixlfw_info.psb_version); + rmixl_puthex64(rcp-rc_psb_info.psb_version); rmixl_puts(\r\n); #endif @@ -654,7 +652,7 @@ #endif found: - rcp-rc_io_pbase = MIPS_KSEG1_TO_PHYS(rmixlfw_info.io_base); + rcp-rc_io_pbase = MIPS_KSEG1_TO_PHYS(rcp-rc_psb_info.io_base); rmixl_putchar_init(rcp-rc_io_pbase); #ifdef MACHDEP_DEBUG rmixl_puts(\r\ninfop: ); @@ -662,13 +660,13 @@ #endif #ifdef DIAGNOSTIC rmixl_puts(\r\nrecognized psb_version: ); - rmixl_puthex64(rmixlfw_info.psb_version); + rmixl_puthex64(rcp-rc_psb_info.psb_version); rmixl_puts(\r\n); #endif return mem_clusters_init( - (rmixlfw_mmap_t *)(intptr_t)rmixlfw_info.psb_physaddr_map, - (rmixlfw_mmap_t *)(intptr_t)rmixlfw_info.avail_mem_map); + (rmixlfw_mmap_t *)(intptr_t)rcp-rc_psb_info.psb_physaddr_map, + (rmixlfw_mmap_t *)(intptr_t)rcp-rc_psb_info.avail_mem_map); } void @@ -718,8 +716,7 @@ rmixl_puts(\r\n); #endif if (psb_physaddr_map != NULL) { - rmixlfw_phys_mmap = *psb_physaddr_map; - map = rmixlfw_phys_mmap; + map = psb_physaddr_map; mapname = psb_physaddr_map; rmixlfw_mmap_print(map); } @@ -735,8 +732,7 @@ rmixl_puts(\r\n); #endif if (avail_mem_map != NULL) { - rmixlfw_avail_mmap = *avail_mem_map; - map = rmixlfw_avail_mmap; + map = avail_mem_map; mapname = avail_mem_map; rmixlfw_mmap_print(map); }
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Wed Jan 20 20:20:59 UTC 2010 Added Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: MALTA64.MP Log Message: Test kernel for MIPS kernel preemption work. To generate a diff of this commit: cvs rdiff -u -r0 -r1.1.2.1 src/sys/arch/evbmips/conf/MALTA64.MP Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/sys/arch/evbmips/conf/MALTA64.MP diff -u /dev/null src/sys/arch/evbmips/conf/MALTA64.MP:1.1.2.1 --- /dev/null Wed Jan 20 20:20:59 2010 +++ src/sys/arch/evbmips/conf/MALTA64.MP Wed Jan 20 20:20:59 2010 @@ -0,0 +1,8 @@ +# $NetBSD: MALTA64.MP,v 1.1.2.1 2010/01/20 20:20:59 matt Exp $ +# +include arch/evbmips/conf/MALTA64 + +options MULTIPROCESSOR +options LOCKDEBUG + +pseudo-device lockstat
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Sat Jan 16 23:49:10 UTC 2010 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX Log Message: - cpunode attaches to mainbus - cpucore and obio now attache to cpunode To generate a diff of this commit: cvs rdiff -u -r1.1.2.3 -r1.1.2.4 src/sys/arch/evbmips/conf/XLSATX Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX diff -u src/sys/arch/evbmips/conf/XLSATX:1.1.2.3 src/sys/arch/evbmips/conf/XLSATX:1.1.2.4 --- src/sys/arch/evbmips/conf/XLSATX:1.1.2.3 Wed Jan 13 09:40:56 2010 +++ src/sys/arch/evbmips/conf/XLSATX Sat Jan 16 23:49:10 2010 @@ -1,8 +1,8 @@ -# $NetBSD: XLSATX,v 1.1.2.3 2010/01/13 09:40:56 cliff Exp $ +# $NetBSD: XLSATX,v 1.1.2.4 2010/01/16 23:49:10 cliff Exp $ include arch/evbmips/conf/std.rmixl -#ident XLSATX-$Revision: 1.1.2.3 $ +#ident XLSATX-$Revision: 1.1.2.4 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -130,9 +130,10 @@ mainbus0 at root -cpucore* at mainbus? core ? +cpunode* at mainbus? node ? +cpucore* at cpunode? core ? cpu* at cpucore? thread ? -obio0 at mainbus? +obio0 at cpunode? com0 at obio0 addr 0x14000 mult 4 intr 9 options COM_REGMAP rmixl_pcie0 at obio0
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Sat Jan 16 23:49:32 UTC 2010 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: files.rmixl Log Message: - remove mainbus locator 'core', add mainbus locator 'node' - cpucore and cpu config info moved to arch/mips/conf/files.rmixl To generate a diff of this commit: cvs rdiff -u -r1.1.2.3 -r1.1.2.4 src/sys/arch/evbmips/conf/files.rmixl Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/files.rmixl diff -u src/sys/arch/evbmips/conf/files.rmixl:1.1.2.3 src/sys/arch/evbmips/conf/files.rmixl:1.1.2.4 --- src/sys/arch/evbmips/conf/files.rmixl:1.1.2.3 Wed Jan 13 09:41:32 2010 +++ src/sys/arch/evbmips/conf/files.rmixl Sat Jan 16 23:49:32 2010 @@ -1,4 +1,4 @@ -# $NetBSD: files.rmixl,v 1.1.2.3 2010/01/13 09:41:32 cliff Exp $ +# $NetBSD: files.rmixl,v 1.1.2.4 2010/01/16 23:49:32 cliff Exp $ file arch/evbmips/rmixl/autoconf.c file arch/evbmips/rmixl/machdep.c @@ -12,18 +12,10 @@ file arch/mips/mips/softintr.c # The autoconfiguration root. -device mainbus { [core = -1] } +device mainbus { [node = -1] } attach mainbus at root file arch/mips/rmi/rmixl_mainbus.c mainbus -device cpucore { [ thread = -1] } -attach cpucore at mainbus -file arch/evbmips/rmixl/cpucore.c cpucore - -device cpu -attach cpu at cpucore -file arch/evbmips/rmixl/cpu.c cpu - # Machine-independent I2O drivers. include dev/i2o/files.i2o
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Sun Jan 17 00:02:00 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - get cpu wakeup info from firmware - reserve the cpu_wakeup_info shared memory area from uvm - initialize cpu_model from mycpu-cpu_name - dont disable all non-0 threads if MULTIPROCESSOR To generate a diff of this commit: cvs rdiff -u -r1.1.2.13 -r1.1.2.14 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.13 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.14 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.13 Fri Jan 8 08:01:22 2010 +++ src/sys/arch/evbmips/rmixl/machdep.c Sun Jan 17 00:02:00 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.13 2010/01/08 08:01:22 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.14 2010/01/17 00:02:00 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.13 2010/01/08 08:01:22 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.14 2010/01/17 00:02:00 cliff Exp $); #include opt_ddb.h #include opt_com.h @@ -251,6 +251,13 @@ static u_int ram_seg_resv(phys_ram_seg_t *, u_int, u_quad_t, u_quad_t); void rmixlfw_mmap_print(rmixlfw_mmap_t *); +#ifdef MULTIPROCESSOR +void rmixl_get_wakeup_info(struct rmixl_config *); +#ifdef MACHDEP_DEBUG +static void rmixl_wakeup_info_print(volatile rmixlfw_cpu_wakeup_info_t *); +#endif +#endif + /* * safepri is a safe priority for sleep to set for a spin-wait during @@ -272,7 +279,9 @@ phys_ram_seg_t vm_clusters[VM_PHYSSEG_MAX]; extern char edata[], end[]; +#ifndef MULTIPROCESSOR rmixl_mtcr(0, 1); /* disable all threads except #0 */ +#endif r = rmixl_mfcr(0x300); r = ~__BIT(14); /* disabled Unaligned Access */ @@ -297,6 +306,10 @@ */ mips_vector_init(); + /* mips_vector_init initialized mycpu */ + strcpy(cpu_model, mycpu-cpu_name); + + /* get system info from firmware */ memsize = rmixlfw_init(infop); /* set the VM page size */ @@ -314,6 +327,14 @@ printf(\nNetBSD/rmixl\n); printf(memsize = %#lx\n, memsize); +#if defined(MULTIPROCESSOR) defined(MACHDEP_DEBUG) + rmixl_wakeup_info_print(rcp-rc_cpu_wakeup_info); + rmixl_wakeup_info_print(rcp-rc_cpu_wakeup_info + 1); + printf(cpu_wakeup_info %p, cpu_wakeup_end %p\n, + rcp-rc_cpu_wakeup_info, + rcp-rc_cpu_wakeup_end); +#endif + rmixl_physaddr_init(); /* @@ -376,6 +397,19 @@ vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt, 0x1FC0, 0x1FC0+NBPG); +#ifdef MULTIPROCEESOR + /* reserve the cpu_wakeup_info area */ + vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt, + (u_quad_t)trunc_page(rcp-rc_cpu_wakeup_info), + (u_quad_t)round_page(rcp-rc_cpu_wakeup_end)); +#endif + +#if 0 + /* reserve everything 4GB */ + vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt, + 0x1, (u_quad_t)~0); +#endif + /* * Load vm_clusters[] into the VM system. */ @@ -585,7 +619,9 @@ { struct rmixl_config *rcp = rmixl_configuration; - strcpy(cpu_model, RMI XLS616ATX VIIA); /* XXX */ +#ifdef MULTIPROCESSOR + rmixl_get_wakeup_info(rcp); +#endif infop |= MIPS_KSEG0_START; rmixlfw_info = *(rmixlfw_info_t *)(intptr_t)infop; @@ -777,6 +813,107 @@ return sum; } +#ifdef MULTIPROCESSOR +/* + * firmware passes wakeup info structure in CP0 OS Scratch reg #7 + * they do not explicitly give us the size of the wakeup area. + * we know that firmware loader sets wip-gp thusly: + * gp = stack_start[vcpu] = round_page(wakeup_end) + (vcpu * (PAGE_SIZE * 2)) + * so + * round_page(wakeup_end) == gp - (vcpu * (PAGE_SIZE * 2)) + * Only the master cpu runs this function, so + * vcpu = wip-master_cpu + */ +void +rmixl_get_wakeup_info(struct rmixl_config *rcp) +{ + volatile rmixlfw_cpu_wakeup_info_t *wip; + int32_t scratch_7; + intptr_t end; + + __asm__ volatile( + .set push\n + .set noreorder \n + .set mips64\n + dmfc0 %0, $22, 7 \n + .set pop\n + : =r(scratch_7)); + + wip = (volatile rmixlfw_cpu_wakeup_info_t *) + (intptr_t)scratch_7; + end = wip-entry.gp - (wip-master_cpu (PAGE_SIZE * 2));; + + if (wip-valid == 1) { + rcp-rc_cpu_wakeup_end = (const void *)end; + rcp-rc_cpu_wakeup_info = wip; + } +}; + +#ifdef MACHDEP_DEBUG +static void +rmixl_wakeup_info_print(volatile rmixlfw_cpu_wakeup_info_t *wip) +{ + int i; + + printf(%s: wip %p\n, __func__, wip); + + printf(cpu_status %#x\n, wip-cpu_status); + printf(valid: %d\n, wip-valid); + printf(entry: addr %#x, args %#x, sp %#PRIx64, gp %#PRIx64\n, + wip-entry.addr, + wip-entry.args, + wip-entry.sp, + wip-entry.gp); + printf(master_cpu %d\n, wip-master_cpu); + printf(master_cpu_mask %#x\n, wip-master_cpu_mask); + printf(buddy_cpu_mask %#x\n,
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Wed Jan 13 09:40:35 UTC 2010 Added Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: cpucore.c cpucorevar.h Log Message: - add driver to represent processor core(s) in device tree To generate a diff of this commit: cvs rdiff -u -r0 -r1.1.2.1 src/sys/arch/evbmips/rmixl/cpucore.c \ src/sys/arch/evbmips/rmixl/cpucorevar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/sys/arch/evbmips/rmixl/cpucore.c diff -u /dev/null src/sys/arch/evbmips/rmixl/cpucore.c:1.1.2.1 --- /dev/null Wed Jan 13 09:40:35 2010 +++ src/sys/arch/evbmips/rmixl/cpucore.c Wed Jan 13 09:40:35 2010 @@ -0,0 +1,118 @@ +/* $NetBSD: cpucore.c,v 1.1.2.1 2010/01/13 09:40:35 cliff Exp $ */ + +/* + * Copyright 2002 Wasabi Systems, Inc. + * All rights reserved. + * + * Written by Simon Burge for Wasabi Systems, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + *notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + *notice, this list of conditions and the following disclaimer in the + *documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + *must display the following acknowledgement: + * This product includes software developed for the NetBSD Project by + * Wasabi Systems, Inc. + * 4. The name of Wasabi Systems, Inc. may not be used to endorse + *or promote products derived from this software without specific prior + *written permission. + * + * THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL WASABI SYSTEMS, INC + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include locators.h + +#include sys/cdefs.h +__KERNEL_RCSID(0, $NetBSD: cpucore.c,v 1.1.2.1 2010/01/13 09:40:35 cliff Exp $); + +#include sys/param.h +#include sys/device.h +#include sys/systm.h +#include sys/cpu.h +#include evbmips/rmixl/autoconf.h +#include evbmips/rmixl/cpucorevar.h + +typedef struct cpucore_softc { + device_t sc_dev; + bool sc_attached; +} cpucore_softc_t; + +static int cpucore_match(struct device *, struct cfdata *, void *); +static void cpucore_attach(struct device *, struct device *, void *); +static int cpucore_print(void *, const char *); + +CFATTACH_DECL(cpucore, sizeof(struct device), +cpucore_match, cpucore_attach, NULL, NULL); + +static int +cpucore_match(struct device *parent, struct cfdata *cf, void *aux) +{ + struct mainbus_attach_args *aa = aux; + int core = cf-cf_loc[MAINBUSCF_CORE]; + + if (strncmp(aa-ma_name, cf-cf_name, strlen(cf-cf_name)) == 0) +#ifndef MULTIPROCESSOR + if (aa-ma_core == 0) +#endif + if ((core == MAINBUSCF_CORE_DEFAULT) + || (core == aa-ma_core)) + return 1; + + return 0; +} + +static void +cpucore_attach(struct device *parent, struct device *self, void *aux) +{ + struct cpucore_attach_args aa; + u_int nthreads; + + aprint_normal(: %lu.%02luMHz (hz cycles = %lu, delay divisor = %lu)\n, + curcpu()-ci_cpu_freq / 100, + (curcpu()-ci_cpu_freq % 100) / 1, + curcpu()-ci_cycles_per_hz, curcpu()-ci_divisor_delay); + + aprint_normal(%s: , device_xname(self)); + cpu_identify(self); + + nthreads = MIPS_CIDFL_RMI_NTHREADS(mycpu-cpu_cidflags); + aprint_normal(%s: %d %s on core\n, device_xname(self), nthreads, + nthreads == 1 ? thread : threads); + + /* + * Attach CPU (RMI thread) devices + */ + for (int i=0; i nthreads; i++) { + aa.ca_name = cpu; + aa.ca_thread = i; + config_found(self, aa, cpucore_print); + } +} + +static int +cpucore_print(void *aux, const char *pnp) +{ + struct cpucore_attach_args *aa = aux; + + if (pnp != NULL) + aprint_normal(%s: , pnp); + aprint_normal( thread %d, aa-ca_thread); + + return (UNCONF); +} + Index: src/sys/arch/evbmips/rmixl/cpucorevar.h diff -u /dev/null src/sys/arch/evbmips/rmixl/cpucorevar.h:1.1.2.1 --- /dev/null Wed Jan 13 09:40:35 2010 +++ src/sys/arch/evbmips/rmixl/cpucorevar.h Wed Jan 13 09:40:35 2010 @@ -0,0 +1,11 @@ +/* $NetBSD: cpucorevar.h,v 1.1.2.1 2010/01/13
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Wed Jan 13 09:40:56 UTC 2010 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX Log Message: - attach cpucore at mainbus - attach cpu at cpucore To generate a diff of this commit: cvs rdiff -u -r1.1.2.2 -r1.1.2.3 src/sys/arch/evbmips/conf/XLSATX Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX diff -u src/sys/arch/evbmips/conf/XLSATX:1.1.2.2 src/sys/arch/evbmips/conf/XLSATX:1.1.2.3 --- src/sys/arch/evbmips/conf/XLSATX:1.1.2.2 Tue Jan 12 08:18:23 2010 +++ src/sys/arch/evbmips/conf/XLSATX Wed Jan 13 09:40:56 2010 @@ -1,8 +1,8 @@ -# $NetBSD: XLSATX,v 1.1.2.2 2010/01/12 08:18:23 cliff Exp $ +# $NetBSD: XLSATX,v 1.1.2.3 2010/01/13 09:40:56 cliff Exp $ include arch/evbmips/conf/std.rmixl -#ident XLSATX-$Revision: 1.1.2.2 $ +#ident XLSATX-$Revision: 1.1.2.3 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -130,7 +130,8 @@ mainbus0 at root -cpu0 at mainbus? +cpucore* at mainbus? core ? +cpu* at cpucore? thread ? obio0 at mainbus? com0 at obio0 addr 0x14000 mult 4 intr 9 options COM_REGMAP
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Wed Jan 13 09:41:32 UTC 2010 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: files.rmixl Log Message: - mainbus gets 'core' locator, loses (unused) 'addr' locator - attach cpucore at mainbus - attach cpu at cpucore To generate a diff of this commit: cvs rdiff -u -r1.1.2.2 -r1.1.2.3 src/sys/arch/evbmips/conf/files.rmixl Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/files.rmixl diff -u src/sys/arch/evbmips/conf/files.rmixl:1.1.2.2 src/sys/arch/evbmips/conf/files.rmixl:1.1.2.3 --- src/sys/arch/evbmips/conf/files.rmixl:1.1.2.2 Mon Nov 9 09:43:22 2009 +++ src/sys/arch/evbmips/conf/files.rmixl Wed Jan 13 09:41:32 2010 @@ -1,4 +1,4 @@ -# $NetBSD: files.rmixl,v 1.1.2.2 2009/11/09 09:43:22 cliff Exp $ +# $NetBSD: files.rmixl,v 1.1.2.3 2010/01/13 09:41:32 cliff Exp $ file arch/evbmips/rmixl/autoconf.c file arch/evbmips/rmixl/machdep.c @@ -12,12 +12,16 @@ file arch/mips/mips/softintr.c # The autoconfiguration root. -device mainbus { [addr = -1] } +device mainbus { [core = -1] } attach mainbus at root file arch/mips/rmi/rmixl_mainbus.c mainbus +device cpucore { [ thread = -1] } +attach cpucore at mainbus +file arch/evbmips/rmixl/cpucore.c cpucore + device cpu -attach cpu at mainbus +attach cpu at cpucore file arch/evbmips/rmixl/cpu.c cpu # Machine-independent I2O drivers.
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Wed Jan 13 09:41:53 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: cpu.c Log Message: - attach at cpucore - match multiple cpus (RMI threads) - print of cpu freq and call to cpu_identify() moved to parent To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/rmixl/cpu.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/cpu.c diff -u src/sys/arch/evbmips/rmixl/cpu.c:1.1.2.1 src/sys/arch/evbmips/rmixl/cpu.c:1.1.2.2 --- src/sys/arch/evbmips/rmixl/cpu.c:1.1.2.1 Sun Sep 13 03:27:38 2009 +++ src/sys/arch/evbmips/rmixl/cpu.c Wed Jan 13 09:41:53 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: cpu.c,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $ */ +/* $NetBSD: cpu.c,v 1.1.2.2 2010/01/13 09:41:53 cliff Exp $ */ /* * Copyright 2002 Wasabi Systems, Inc. @@ -35,13 +35,16 @@ * POSSIBILITY OF SUCH DAMAGE. */ +#include locators.h + #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: cpu.c,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: cpu.c,v 1.1.2.2 2010/01/13 09:41:53 cliff Exp $); #include sys/param.h #include sys/device.h #include sys/systm.h #include sys/cpu.h +#include evbmips/rmixl/cpucorevar.h static int cpu_match(struct device *, struct cfdata *, void *); static void cpu_attach(struct device *, struct device *, void *); @@ -50,21 +53,25 @@ cpu_match, cpu_attach, NULL, NULL); static int -cpu_match(struct device *parent, struct cfdata *match, void *aux) +cpu_match(struct device *parent, struct cfdata *cf, void *aux) { + struct cpucore_attach_args *aa = aux; + int thread = cf-cf_loc[CPUCORECF_THREAD]; + + if (strncmp(aa-ca_name, cf-cf_name, strlen(cf-cf_name)) == 0) { +#ifndef MULTIPROCESSOR + if (aa-ca_thread == 0) +#endif + if ((thread == CPUCORECF_THREAD_DEFAULT) + || (thread == aa-ca_thread)) + return 1; + } - return 1; + return 0; } static void cpu_attach(struct device *parent, struct device *self, void *aux) { - - printf(: %lu.%02luMHz (hz cycles = %lu, delay divisor = %lu)\n, - curcpu()-ci_cpu_freq / 100, - (curcpu()-ci_cpu_freq % 100) / 1, - curcpu()-ci_cycles_per_hz, curcpu()-ci_divisor_delay); - - printf(%s: , self-dv_xname); - cpu_identify(); + printf(\n); }
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Tue Jan 12 08:18:23 UTC 2010 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLSATX Log Message: comment out options MEMSIZE; just use the mem we get from firmware map. To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/XLSATX Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLSATX diff -u src/sys/arch/evbmips/conf/XLSATX:1.1.2.1 src/sys/arch/evbmips/conf/XLSATX:1.1.2.2 --- src/sys/arch/evbmips/conf/XLSATX:1.1.2.1 Mon Dec 14 07:24:33 2009 +++ src/sys/arch/evbmips/conf/XLSATX Tue Jan 12 08:18:23 2010 @@ -1,8 +1,8 @@ -# $NetBSD: XLSATX,v 1.1.2.1 2009/12/14 07:24:33 cliff Exp $ +# $NetBSD: XLSATX,v 1.1.2.2 2010/01/12 08:18:23 cliff Exp $ include arch/evbmips/conf/std.rmixl -#ident XLSATX-$Revision: 1.1.2.1 $ +#ident XLSATX-$Revision: 1.1.2.2 $ #options INCLUDE_CONFIG_FILE # embed config file in kernel binary @@ -11,7 +11,7 @@ # # MEMSIZE can be used to limit memory size obtained from firmware or DRAM BARs # -options MEMSIZE=0x1000 # 256MB +##options MEMSIZE=0x1000 # 256MB options NOFPU # No FPU options SOFTFLOAT # emulate FPU insn
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Fri Jan 8 08:01:23 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - if the firmware version is unknown, we use MEMSIZE instead of maps prpovided by firmware; if MEMSIZE if nt configure, print error message are halt; if would defer until consinit then we could panic. - fix seg count when MEMSIZE is used to constrain memory obtained from firmware maps - cast physmem to to uint64_t before applying ctob() when passing bytes count to format_bytes() To generate a diff of this commit: cvs rdiff -u -r1.1.2.12 -r1.1.2.13 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.12 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.13 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.12 Sun Jan 3 08:37:14 2010 +++ src/sys/arch/evbmips/rmixl/machdep.c Fri Jan 8 08:01:22 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.12 2010/01/03 08:37:14 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.13 2010/01/08 08:01:22 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.12 2010/01/03 08:37:14 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.13 2010/01/08 08:01:22 cliff Exp $); #include opt_ddb.h #include opt_com.h @@ -604,11 +604,17 @@ rmixl_puts(\r\n); #endif +#ifdef MEMSIZE /* XXX trust and use MEMSIZE */ mem_clusters[0].start = 0; mem_clusters[0].size = MEMSIZE; mem_cluster_cnt = 1; return MEMSIZE; +#else + rmixl_puts(\r\nERROR: configure MEMSIZE\r\n); + cpu_reboot(RB_HALT, NULL); + /* NOTREACHED */ +#endif found: rcp-rc_io_pbase = MIPS_KSEG1_TO_PHYS(rmixlfw_info.io_base); @@ -662,7 +668,6 @@ { rmixlfw_mmap_t *map = NULL; const char *mapname; - uint64_t tmp; uint64_t sz; uint64_t sum; u_int cnt; @@ -756,10 +761,13 @@ if (sum == memsize) break; if (sum memsize) { + uint64_t tmp; + tmp = sum - memsize; sz -= tmp; sum -= tmp; mem_clusters[cnt].size = sz; + cnt++; break; } #endif @@ -792,7 +800,7 @@ * Good {morning,afternoon,evening,night}. */ printf(%s%s, copyright, version); - format_bytes(pbuf, sizeof(pbuf), ctob(physmem)); + format_bytes(pbuf, sizeof(pbuf), ctob((uint64_t)physmem)); printf(total memory = %s\n, pbuf); /*
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/include
Module Name:src Committed By: matt Date: Wed Jan 6 04:24:38 UTC 2010 Modified Files: src/sys/arch/evbmips/include [matt-nb5-mips64]: vmparam.h Log Message: Fix typo: VMFREE* - VM_FREE* To generate a diff of this commit: cvs rdiff -u -r1.1.142.3 -r1.1.142.4 src/sys/arch/evbmips/include/vmparam.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/include/vmparam.h diff -u src/sys/arch/evbmips/include/vmparam.h:1.1.142.3 src/sys/arch/evbmips/include/vmparam.h:1.1.142.4 --- src/sys/arch/evbmips/include/vmparam.h:1.1.142.3 Thu Dec 31 00:54:09 2009 +++ src/sys/arch/evbmips/include/vmparam.h Wed Jan 6 04:24:38 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: vmparam.h,v 1.1.142.3 2009/12/31 00:54:09 matt Exp $ */ +/* $NetBSD: vmparam.h,v 1.1.142.4 2010/01/06 04:24:38 matt Exp $ */ #ifndef _EVBMIPS_VMPARAM_H_ #define _EVBMIPS_VMPARAM_H_ @@ -7,13 +7,13 @@ #define VM_PHYSSEG_MAX 32 -#undef VMFREELIST_MAX -#define VMFREELIST_MAX 3 +#undef VM_FREELIST_MAX +#define VM_FREELIST_MAX 3 #if defined(_MIPS_PADDR_T_64BIT) || defined(_LP64) -#define VMFREELIST_FIRST4G 2 +#define VM_FREELIST_FIRST4G 2 #endif #if !defined(_LP64) -#define VMFREELIST_FIRST512M 1 +#define VM_FREELIST_FIRST512M 1 #endif #endif /* !_EVBMIPS_VMPARAM_H_ */
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Sun Jan 3 08:37:15 UTC 2010 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - rmixl_reset() now uses RESET bit in RMIXL_GPIO_RESET register to reboot To generate a diff of this commit: cvs rdiff -u -r1.1.2.11 -r1.1.2.12 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.11 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.12 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.11 Thu Dec 31 00:54:09 2009 +++ src/sys/arch/evbmips/rmixl/machdep.c Sun Jan 3 08:37:14 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.11 2009/12/31 00:54:09 matt Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.12 2010/01/03 08:37:14 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.11 2009/12/31 00:54:09 matt Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.12 2010/01/03 08:37:14 cliff Exp $); #include opt_ddb.h #include opt_com.h @@ -246,7 +246,7 @@ void mach_init(int, int32_t *, void *, int64_t); static u_long rmixlfw_init(int64_t); static u_long mem_clusters_init(rmixlfw_mmap_t *, rmixlfw_mmap_t *); -static void __attribute__((__noreturn__)) rmixl_exit(int); +static void __attribute__((__noreturn__)) rmixl_reset(void); static void rmixl_physaddr_init(void); static u_int ram_seg_resv(phys_ram_seg_t *, u_int, u_quad_t, u_quad_t); void rmixlfw_mmap_print(rmixlfw_mmap_t *); @@ -374,7 +374,7 @@ /* reserve reset exception vector page */ /* should never be in our clusters anyway... */ vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt, - MIPS_RESET_EXC_VEC, MIPS_RESET_EXC_VEC+NBPG); + 0x1FC0, 0x1FC0+NBPG); /* * Load vm_clusters[] into the VM system. @@ -870,23 +870,21 @@ printf(rebooting...\n\n); - rmixl_exit(0); + rmixl_reset(); } /* * goodbye world */ -#define GPIO_CPU_RST 0xa0 /* XXX TMP */ void __attribute__((__noreturn__)) -rmixl_exit(int howto) +rmixl_reset(void) { - /* use firmware callbak to reboot */ - void (*reset)(void) = (void *)(intptr_t)rmixlfw_info.warm_reset; - if (reset != 0) { - (*reset)(); - printf(warm reset callback failed, spinning...\n); - } else { - printf(warm reset callback absent, spinning...\n); - } + uint32_t r; + + r = RMIXL_IOREG_READ(RMIXL_IO_DEV_GPIO + RMIXL_GPIO_RESET); + r |= RMIXL_GPIO_RESET_RESET; + RMIXL_IOREG_WRITE(RMIXL_IO_DEV_GPIO + RMIXL_GPIO_RESET, r); + + printf(soft reset failed, spinning...\n); for (;;); }
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Mon Dec 14 07:23:31 UTC 2009 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - delete MACHDEP_DEBUG define - adjust name of (big endian) obio bus space init function To generate a diff of this commit: cvs rdiff -u -r1.1.2.9 -r1.1.2.10 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.9 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.10 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.9 Fri Dec 11 23:57:38 2009 +++ src/sys/arch/evbmips/rmixl/machdep.c Mon Dec 14 07:23:31 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.9 2009/12/11 23:57:38 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.10 2009/12/14 07:23:31 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.9 2009/12/11 23:57:38 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.10 2009/12/14 07:23:31 cliff Exp $); #include opt_ddb.h #include opt_com.h @@ -162,7 +162,6 @@ #include mips/rmi/rmixl_firmware.h #include mips/rmi/rmixlreg.h -#define MACHDEP_DEBUG 1 #ifdef MACHDEP_DEBUG int machdep_debug=MACHDEP_DEBUG; # define DPRINTF(x) do { if (machdep_debug) printf x ; } while(0) @@ -171,7 +170,7 @@ #endif #ifndef CONSFREQ -# define CONSFREQ -1 /* inherit from firmware */ +# define CONSFREQ 6600 #endif #ifndef CONSPEED # define CONSPEED 38400 @@ -307,7 +306,7 @@ physmem = btoc(memsize); - rmixl_obio_bus_mem_init(rcp-rc_obio_memt, rcp); /* need for console */ + rmixl_obio_eb_bus_mem_init(rcp-rc_obio_eb_memt, rcp); #if NCOM 0 rmixl_com_cnattach(comcnaddr, comcnspeed, comcnfreq,
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Mon Dec 14 07:24:33 UTC 2009 Added Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: INSTALL_XLSATX32 INSTALL_XLSATX64 XLSATX XLSATX32 XLSATX64 Log Message: - add standard kernel configs for XLSATX systems To generate a diff of this commit: cvs rdiff -u -r0 -r1.1.2.1 src/sys/arch/evbmips/conf/INSTALL_XLSATX32 \ src/sys/arch/evbmips/conf/INSTALL_XLSATX64 \ src/sys/arch/evbmips/conf/XLSATX src/sys/arch/evbmips/conf/XLSATX32 \ src/sys/arch/evbmips/conf/XLSATX64 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/sys/arch/evbmips/conf/INSTALL_XLSATX32 diff -u /dev/null src/sys/arch/evbmips/conf/INSTALL_XLSATX32:1.1.2.1 --- /dev/null Mon Dec 14 07:24:33 2009 +++ src/sys/arch/evbmips/conf/INSTALL_XLSATX32 Mon Dec 14 07:24:33 2009 @@ -0,0 +1,14 @@ +# $NetBSD: INSTALL_XLSATX32,v 1.1.2.1 2009/12/14 07:24:33 cliff Exp $ + +include arch/evbmips/conf/XLSATX32 + +#ident INSTALL_XLSATX32-$Revision: 1.1.2.1 $ + +# Enable the hooks used for initializing the root memory-disk. +# The ramdisk size must be kept in sync manually with the size of +# the `ramdisk' image (which is built in distrib/evbmips/ramdisk/ramdisk). +pseudo-device md# memory disk device +options MEMORY_DISK_HOOKS +options MEMORY_DISK_IS_ROOT # force root on memory disk +options MEMORY_DISK_SERVER=0 # no userspace memory disk +options MEMORY_DISK_ROOT_SIZE=12288 # size of memory disk, in blocks Index: src/sys/arch/evbmips/conf/INSTALL_XLSATX64 diff -u /dev/null src/sys/arch/evbmips/conf/INSTALL_XLSATX64:1.1.2.1 --- /dev/null Mon Dec 14 07:24:33 2009 +++ src/sys/arch/evbmips/conf/INSTALL_XLSATX64 Mon Dec 14 07:24:33 2009 @@ -0,0 +1,14 @@ +# $NetBSD: INSTALL_XLSATX64,v 1.1.2.1 2009/12/14 07:24:33 cliff Exp $ + +include arch/evbmips/conf/XLSATX64 + +#ident INSTALL_XLSATX64-$Revision: 1.1.2.1 $ + +# Enable the hooks used for initializing the root memory-disk. +# The ramdisk size must be kept in sync manually with the size of +# the `ramdisk' image (which is built in distrib/evbmips/ramdisk/ramdisk). +pseudo-device md# memory disk device +options MEMORY_DISK_HOOKS +options MEMORY_DISK_IS_ROOT # force root on memory disk +options MEMORY_DISK_SERVER=0 # no userspace memory disk +options MEMORY_DISK_ROOT_SIZE=12288 # size of memory disk, in blocks Index: src/sys/arch/evbmips/conf/XLSATX diff -u /dev/null src/sys/arch/evbmips/conf/XLSATX:1.1.2.1 --- /dev/null Mon Dec 14 07:24:33 2009 +++ src/sys/arch/evbmips/conf/XLSATX Mon Dec 14 07:24:33 2009 @@ -0,0 +1,198 @@ +# $NetBSD: XLSATX,v 1.1.2.1 2009/12/14 07:24:33 cliff Exp $ + +include arch/evbmips/conf/std.rmixl + +#ident XLSATX-$Revision: 1.1.2.1 $ + +#options INCLUDE_CONFIG_FILE # embed config file in kernel binary + +maxusers 32 + +# +# MEMSIZE can be used to limit memory size obtained from firmware or DRAM BARs +# +options MEMSIZE=0x1000 # 256MB + +options NOFPU # No FPU +options SOFTFLOAT # emulate FPU insn + +# Standard system options +options KTRACE # system call tracing support +options SYSVMSG # System V message queues +options SYSVSEM # System V semaphores +options SYSVSHM # System V shared memory +#options SHMMAXPGS=1024 # 1024 pages is the default +#options LKM # loadable kernel modules +options NTP # network time protocol + +# Debugging options +options DIAGNOSTIC # extra kernel sanity checking +options DEBUG # extra kernel debugging support +#options KMEMSTATS # kernel memory statistics (vmstat -m) +options USERCONF # userconf(4) support +#options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel +options DDB # kernel dynamic debugger +options DDB_HISTORY_SIZE=100 # enable history editing in DDB +makeoptions DEBUG=-g # compile full symbol table +options SYMTAB_SPACE=0x6 # size for embedded symbol table +#options DDB_COMMANDONENTER=trace;show registers +options DB_MAX_LINE=-1 + +# Compatibility options +#options COMPAT_43 # compatibility with 4.3BSD binaries +#options COMPAT_09 # NetBSD 0.9 binary compatibility +#options COMPAT_10 # NetBSD 1.0 binary compatibility +#options COMPAT_11 # NetBSD 1.1 binary compatibility +#options COMPAT_12 # NetBSD 1.2 binary compatibility +#options COMPAT_13 # NetBSD 1.3 binary compatibility +#options COMPAT_14 # NetBSD 1.4 binary compatibility +#options COMPAT_15 # NetBSD 1.5 binary compatibility +options COMPAT_16 # NetBSD 1.6 binary compatibility +options COMPAT_20 # NetBSD 2.0 binary compatibility +options COMPAT_30 # NetBSD 3.0 compatibility. +options COMPAT_40 # NetBSD 4.0 compatibility. +#options EXEC_ECOFF # exec ECOFF binaries +#options COMPAT_ULTRIX # binary compatibility with Ultrix +options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. + +# File systems +file-system FFS # Berkeley Fast Filesystem +file-system MFS # memory-based filesystem +#file-system EXT2FS
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Mon Dec 14 07:25:34 UTC 2009 Removed Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLS6ATX_7A XLS6ATX_7A64 Log Message: - deleted; replaced by *XLSATX* To generate a diff of this commit: cvs rdiff -u -r1.1.2.4 -r0 src/sys/arch/evbmips/conf/XLS6ATX_7A cvs rdiff -u -r1.1.2.3 -r0 src/sys/arch/evbmips/conf/XLS6ATX_7A64 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Fri Dec 11 23:57:38 UTC 2009 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - add another known/recognized psb_version ID# - useing comcnfreq instead of -1 in rmixl_com_cnattach now - MIPS_RESET_EXC_VEC is physical addr, no need for translation to phys when reserving from phys memory (should never be in the list anyway). - in rmixlfw_init(), when untested psb_version, initialize mem_clusters[] (to use MEMSIZE) To generate a diff of this commit: cvs rdiff -u -r1.1.2.8 -r1.1.2.9 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.8 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.9 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.8 Mon Nov 16 23:57:26 2009 +++ src/sys/arch/evbmips/rmixl/machdep.c Fri Dec 11 23:57:38 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.8 2009/11/16 23:57:26 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.9 2009/12/11 23:57:38 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.8 2009/11/16 23:57:26 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.9 2009/12/11 23:57:38 cliff Exp $); #include opt_ddb.h #include opt_com.h @@ -199,6 +199,7 @@ static uint64_t rmiclfw_psb_versions[] = { 0x4958d4fb0056ULL, 0x49a5a8fa0056ULL, + 0x4aacdb6a0056ULL, }; #define RMICLFW_PSB_VERSIONS_LEN \ (sizeof(rmiclfw_psb_versions)/sizeof(rmiclfw_psb_versions[0])) @@ -282,7 +283,7 @@ rmixl_mtcr(0x400, 0); /* enable MMU clock gating */ /* set single MMU Thread Mode */ - /* TLB is partitioned (but 1 partition) */ + /* TLB is partitioned (1 partition) */ /* * Clear the BSS segment. @@ -309,7 +310,7 @@ rmixl_obio_bus_mem_init(rcp-rc_obio_memt, rcp); /* need for console */ #if NCOM 0 - rmixl_com_cnattach(comcnaddr, comcnspeed, -1, + rmixl_com_cnattach(comcnaddr, comcnspeed, comcnfreq, COM_TYPE_NORMAL, comcnmode); #endif @@ -374,9 +375,9 @@ 0, round_page(MIPS_KSEG0_TO_PHYS(kernend))); /* reserve reset exception vector page */ + /* should never be in our clusters anyway... */ vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt, - MIPS_KSEG1_TO_PHYS(MIPS_RESET_EXC_VEC), - MIPS_KSEG1_TO_PHYS(MIPS_RESET_EXC_VEC+NBPG)); + MIPS_RESET_EXC_VEC, MIPS_RESET_EXC_VEC+NBPG); /* * Load vm_clusters[] into the VM system. @@ -388,6 +389,7 @@ last = round_page(vm_clusters[i].start + vm_clusters[i].size); DPRINTF((%s: %d: %#PRIx64, %#PRIx64\n, __func__, i, first, last)); + uvm_page_physload(atop(first), atop(last), atop(first), atop(last), VM_FREELIST_DEFAULT); } @@ -428,7 +430,6 @@ #endif } - /* * ram_seg_resv - cut reserved regions out of segs, fragmenting as needed * @@ -625,6 +626,11 @@ rmixl_puthex64(rmixlfw_info.psb_version); rmixl_puts(\r\n); #endif + + /* XXX trust and use MEMSIZE */ + mem_clusters[0].start = 0; + mem_clusters[0].size = MEMSIZE; + mem_cluster_cnt = 1; return MEMSIZE; found:
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Mon Nov 16 23:57:26 UTC 2009 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: set up some Processor Control registers at start of mach_init(): - disable all threads except #0 - disable Unaligned Access - set single MMU Thread Mode, single TLB partition To generate a diff of this commit: cvs rdiff -u -r1.1.2.7 -r1.1.2.8 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.7 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.8 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.7 Sun Nov 15 22:59:36 2009 +++ src/sys/arch/evbmips/rmixl/machdep.c Mon Nov 16 23:57:26 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.7 2009/11/15 22:59:36 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.8 2009/11/16 23:57:26 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.7 2009/11/15 22:59:36 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.8 2009/11/16 23:57:26 cliff Exp $); #include opt_ddb.h #include opt_com.h @@ -270,9 +270,20 @@ void *kernend, *v; u_long memsize; u_int vm_cluster_cnt; + uint32_t r; phys_ram_seg_t vm_clusters[VM_PHYSSEG_MAX]; extern char edata[], end[]; + rmixl_mtcr(0, 1); /* disable all threads except #0 */ + + r = rmixl_mfcr(0x300); + r = ~__BIT(14); /* disabled Unaligned Access */ + rmixl_mtcr(0x300, r); + + rmixl_mtcr(0x400, 0); /* enable MMU clock gating */ + /* set single MMU Thread Mode */ + /* TLB is partitioned (but 1 partition) */ + /* * Clear the BSS segment. */
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Sun Nov 15 22:58:39 UTC 2009 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: std.rmixl Log Message: - delete un-needed options MIPS32 To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/std.rmixl Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/std.rmixl diff -u src/sys/arch/evbmips/conf/std.rmixl:1.1.2.1 src/sys/arch/evbmips/conf/std.rmixl:1.1.2.2 --- src/sys/arch/evbmips/conf/std.rmixl:1.1.2.1 Sun Sep 13 03:27:38 2009 +++ src/sys/arch/evbmips/conf/std.rmixl Sun Nov 15 22:58:39 2009 @@ -1,4 +1,4 @@ -# $NetBSD: std.rmixl,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $ +# $NetBSD: std.rmixl,v 1.1.2.2 2009/11/15 22:58:39 cliff Exp $ machine evbmips mips include conf/std # MI standard options @@ -6,7 +6,6 @@ options MIPS3_ENABLE_CLOCK_INTR # Platform support -options MIPS32 options MIPS64 options MIPS64_XLS options ENABLE_MIPS_16KB_PAGE
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Sun Nov 15 22:59:36 UTC 2009 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - make infop work for N32 or N64; firmware gives us a non-sign-extended 32 bit pointer in a 64 bit variable - in rmixlfw_init(), when PSB version not found, fix rc_io_pbase initialization, and add the missing return MEMSIZE. - use PRIx64 format to make some printfs work for N32 or N64 - use (intptr_t) as needed to make int to pointer casts work for N32 and N64 - init rc_obio_memt replaces init of rc_eb_memt, rc_el_memt To generate a diff of this commit: cvs rdiff -u -r1.1.2.6 -r1.1.2.7 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.6 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.7 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.6 Mon Nov 9 09:55:11 2009 +++ src/sys/arch/evbmips/rmixl/machdep.c Sun Nov 15 22:59:36 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.6 2009/11/09 09:55:11 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.7 2009/11/15 22:59:36 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.6 2009/11/09 09:55:11 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.7 2009/11/15 22:59:36 cliff Exp $); #include opt_ddb.h #include opt_com.h @@ -162,6 +162,7 @@ #include mips/rmi/rmixl_firmware.h #include mips/rmi/rmixlreg.h +#define MACHDEP_DEBUG 1 #ifdef MACHDEP_DEBUG int machdep_debug=MACHDEP_DEBUG; # define DPRINTF(x) do { if (machdep_debug) printf x ; } while(0) @@ -196,8 +197,8 @@ * please add them */ static uint64_t rmiclfw_psb_versions[] = { - 0x4958d4fb0056, - 0x49a5a8fa0056, + 0x4958d4fb0056ULL, + 0x49a5a8fa0056ULL, }; #define RMICLFW_PSB_VERSIONS_LEN \ (sizeof(rmiclfw_psb_versions)/sizeof(rmiclfw_psb_versions[0])) @@ -242,8 +243,8 @@ void configure(void); -void mach_init(int, int32_t *, void *, void *); -static u_long rmixlfw_init(void *); +void mach_init(int, int32_t *, void *, int64_t); +static u_long rmixlfw_init(int64_t); static u_long mem_clusters_init(rmixlfw_mmap_t *, rmixlfw_mmap_t *); static void __attribute__((__noreturn__)) rmixl_exit(int); static void rmixl_physaddr_init(void); @@ -263,7 +264,7 @@ * Do all the stuff that locore normally does before calling main(). */ void -mach_init(int argc, int32_t *argv, void *envp, void *infop) +mach_init(int argc, int32_t *argv, void *envp, int64_t infop) { struct rmixl_config *rcp = rmixl_configuration; void *kernend, *v; @@ -294,8 +295,7 @@ physmem = btoc(memsize); - rmixl_eb_bus_mem_init(rcp-rc_eb_memt, rcp); /* need for console */ - rmixl_el_bus_mem_init(rcp-rc_el_memt, rcp); /* XXX defer ? */ + rmixl_obio_bus_mem_init(rcp-rc_obio_memt, rcp); /* need for console */ #if NCOM 0 rmixl_com_cnattach(comcnaddr, comcnspeed, -1, @@ -328,7 +328,7 @@ */ boothowto = RB_AUTOBOOT; for (int i = 1; i argc; i++) { - for (char *cp = (char *)(uint64_t)argv[i]; *cp; cp++) { + for (char *cp = (char *)(intptr_t)argv[i]; *cp; cp++) { int howto; /* Ignore superfluous '-', if there is one */ if (*cp == '-') @@ -375,7 +375,8 @@ first = trunc_page(vm_clusters[i].start); last = round_page(vm_clusters[i].start + vm_clusters[i].size); - DPRINTF((%s: %d: %#lx, %#lx\n, __func__, i, first, last)); + DPRINTF((%s: %d: %#PRIx64, %#PRIx64\n, + __func__, i, first, last)); uvm_page_physload(atop(first), atop(last), atop(first), atop(last), VM_FREELIST_DEFAULT); } @@ -591,24 +592,21 @@ } static u_long -rmixlfw_init(void *infop) +rmixlfw_init(int64_t infop) { struct rmixl_config *rcp = rmixl_configuration; - uint64_t tmp; strcpy(cpu_model, RMI XLS616ATX VIIA); /* XXX */ - tmp = (int64_t)infop; - tmp |= 0xULL 32; - infop = (void *)tmp; - rmixlfw_info = *(rmixlfw_info_t *)infop; + infop |= MIPS_KSEG0_START; + rmixlfw_info = *(rmixlfw_info_t *)(intptr_t)infop; for (int i=0; i RMICLFW_PSB_VERSIONS_LEN; i++) { if (rmiclfw_psb_versions[i] == rmixlfw_info.psb_version) goto found; } - rcp-rc_io_pbase = MIPS_KSEG1_TO_PHYS(RMIXL_IO_DEV_PBASE); + rcp-rc_io_pbase = RMIXL_IO_DEV_PBASE; rmixl_putchar_init(rcp-rc_io_pbase); #ifdef DIAGNOSTIC @@ -616,13 +614,14 @@ rmixl_puthex64(rmixlfw_info.psb_version); rmixl_puts(\r\n); #endif + return MEMSIZE; found: rcp-rc_io_pbase = MIPS_KSEG1_TO_PHYS(rmixlfw_info.io_base); rmixl_putchar_init(rcp-rc_io_pbase); #ifdef MACHDEP_DEBUG rmixl_puts(\r\ninfop: ); - rmixl_puthex64((uint64_t)infop); + rmixl_puthex64((uint64_t)(intptr_t)infop); #endif #ifdef DIAGNOSTIC rmixl_puts(\r\nrecognized psb_version: ); @@ -631,8 +630,8 @@ #endif return mem_clusters_init( - (rmixlfw_mmap_t
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Fri Nov 13 05:19:22 UTC 2009 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLS6ATX_7A Log Message: - (re-) configure ksyms - SYMTAB_SPACE can now shrink by almost 10x now that local symbols are properly stripped (!) To generate a diff of this commit: cvs rdiff -u -r1.1.2.3 -r1.1.2.4 src/sys/arch/evbmips/conf/XLS6ATX_7A Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLS6ATX_7A diff -u src/sys/arch/evbmips/conf/XLS6ATX_7A:1.1.2.3 src/sys/arch/evbmips/conf/XLS6ATX_7A:1.1.2.4 --- src/sys/arch/evbmips/conf/XLS6ATX_7A:1.1.2.3 Mon Nov 9 09:42:33 2009 +++ src/sys/arch/evbmips/conf/XLS6ATX_7A Fri Nov 13 05:19:22 2009 @@ -1,11 +1,11 @@ # -# $NetBSD: XLS6ATX_7A,v 1.1.2.3 2009/11/09 09:42:33 cliff Exp $ +# $NetBSD: XLS6ATX_7A,v 1.1.2.4 2009/11/13 05:19:22 cliff Exp $ include arch/evbmips/conf/std.rmixl #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident XLS6ATX_7A-$Revision: 1.1.2.3 $ +#ident XLS6ATX_7A-$Revision: 1.1.2.4 $ maxusers 32 @@ -43,7 +43,7 @@ options DDB # kernel dynamic debugger options DDB_HISTORY_SIZE=100 # enable history editing in DDB makeoptions DEBUG=-g # compile full symbol table -##options SYMTAB_SPACE=0x50 # size for embedded symbol table +options SYMTAB_SPACE=0x6 # size for embedded symbol table #options DDB_COMMANDONENTER=trace;show registers options DB_MAX_LINE=-1 @@ -188,7 +188,7 @@ #pseudo-device sequencer 1 # MIDI sequencer pseudo-device rnd# /dev/random kernel generator pseudo-device clockctl # user control of clock subsystem -##pseudo-device ksyms# /dev/ksyms +pseudo-device ksyms# /dev/ksyms # A pseudo device needed for Coda # also needs CODA (above) #pseudo-device vcoda 4 # coda minicache - venus comm.
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Mon Nov 9 09:42:33 UTC 2009 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLS6ATX_7A Log Message: - deconfigure DDB_COMMANDONENTER - add config's for msk0 and wm0 kernels - configure PCI - configure msk0 and wm0 PHYs - deconfigure ksyms for now to keep kernel image size small To generate a diff of this commit: cvs rdiff -u -r1.1.2.2 -r1.1.2.3 src/sys/arch/evbmips/conf/XLS6ATX_7A Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLS6ATX_7A diff -u src/sys/arch/evbmips/conf/XLS6ATX_7A:1.1.2.2 src/sys/arch/evbmips/conf/XLS6ATX_7A:1.1.2.3 --- src/sys/arch/evbmips/conf/XLS6ATX_7A:1.1.2.2 Fri Sep 25 22:22:27 2009 +++ src/sys/arch/evbmips/conf/XLS6ATX_7A Mon Nov 9 09:42:33 2009 @@ -1,19 +1,18 @@ # -# $NetBSD: XLS6ATX_7A,v 1.1.2.2 2009/09/25 22:22:27 cliff Exp $ +# $NetBSD: XLS6ATX_7A,v 1.1.2.3 2009/11/09 09:42:33 cliff Exp $ include arch/evbmips/conf/std.rmixl #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident XLS6ATX_7A-$Revision: 1.1.2.2 $ +#ident XLS6ATX_7A-$Revision: 1.1.2.3 $ maxusers 32 # -# XXX obtain memsize from firmware TBD +# MEMSIZE can be used to limit memory size obtained from firmware or DRAM BARs # options MEMSIZE=0x1000 # 256MB -## options MEMSIZE=0x1 # 4GB options NOFPU # No FPU options SOFTFLOAT # emulate FPU insn @@ -23,7 +22,8 @@ # options MEMORY_DISK_IS_ROOT # force root on memory disk # options MEMORY_DISK_SERVER=0 # no userspace memory disk support # options MEMORY_DISK_ROOT_SIZE=6144 # size of memory disk, in blocks -#options MEMORY_DISK_ROOT_SIZE=16384 # size of memory disk, in blocks +# options MEMORY_DISK_ROOT_SIZE=8224 # size of memory disk, in blocks +# options MEMORY_DISK_ROOT_SIZE=16384 # size of memory disk, in blocks # Standard system options options KTRACE # system call tracing support @@ -43,8 +43,8 @@ options DDB # kernel dynamic debugger options DDB_HISTORY_SIZE=100 # enable history editing in DDB makeoptions DEBUG=-g # compile full symbol table -options SYMTAB_SPACE=0x50 # size for embedded symbol table -options DDB_COMMANDONENTER=trace;show registers +##options SYMTAB_SPACE=0x50 # size for embedded symbol table +#options DDB_COMMANDONENTER=trace;show registers options DB_MAX_LINE=-1 # Compatibility options @@ -133,7 +133,10 @@ options NFS_BOOT_DHCP -config netbsd root on ? type ? +config netbsd root on ? type ? +config netbsd-wm0 root on wm0 type nfs +config netbsd-msk0 root on msk0 type nfs +##config netbsd-md0 root on md0 type ffs mainbus0 at root @@ -141,6 +144,17 @@ obio0 at mainbus? com0 at obio0 addr 0x14000 mult 4 intr 9 options COM_REGMAP +rmixl_pcie0 at obio0 +pci0 at rmixl_pcie0 +ppb* at pci? +pci* at ppb? +wm* at pci? dev ? function ? # Intel i82546EB Gig-E +skc* at pci? dev ? function ? +sk* at skc? +mskc* at pci? dev ? function ? +msk* at mskc? +makphy* at mii? phy ? # Marvell 88E1000 PHYs +ukphy* at mii? phy ? # unknown PHY # Pseudo-devices @@ -174,7 +188,7 @@ #pseudo-device sequencer 1 # MIDI sequencer pseudo-device rnd# /dev/random kernel generator pseudo-device clockctl # user control of clock subsystem -pseudo-device ksyms# /dev/ksyms +##pseudo-device ksyms# /dev/ksyms # A pseudo device needed for Coda # also needs CODA (above) #pseudo-device vcoda 4 # coda minicache - venus comm.
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Mon Nov 9 09:42:59 UTC 2009 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLS6ATX_7A64 Log Message: - add options COMPAT_NETBSD32 to enable 32 bit binary exec support To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/XLS6ATX_7A64 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLS6ATX_7A64 diff -u src/sys/arch/evbmips/conf/XLS6ATX_7A64:1.1.2.1 src/sys/arch/evbmips/conf/XLS6ATX_7A64:1.1.2.2 --- src/sys/arch/evbmips/conf/XLS6ATX_7A64:1.1.2.1 Sun Sep 13 03:27:38 2009 +++ src/sys/arch/evbmips/conf/XLS6ATX_7A64 Mon Nov 9 09:42:59 2009 @@ -1,4 +1,4 @@ -# $NetBSD: XLS6ATX_7A64,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $ +# $NetBSD: XLS6ATX_7A64,v 1.1.2.2 2009/11/09 09:42:59 cliff Exp $ # include arch/evbmips/conf/XLS6ATX_7A @@ -8,3 +8,5 @@ no options MIPS32 options EXEC_ELF64 +options COMPAT_NETBSD32 +
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Mon Nov 9 09:43:22 UTC 2009 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: files.rmixl Log Message: - remove pci_machdep.c, pciide_machdep.c entries, those never existed here To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/files.rmixl Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/files.rmixl diff -u src/sys/arch/evbmips/conf/files.rmixl:1.1.2.1 src/sys/arch/evbmips/conf/files.rmixl:1.1.2.2 --- src/sys/arch/evbmips/conf/files.rmixl:1.1.2.1 Sun Sep 13 03:27:38 2009 +++ src/sys/arch/evbmips/conf/files.rmixl Mon Nov 9 09:43:22 2009 @@ -1,4 +1,4 @@ -# $NetBSD: files.rmixl,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $ +# $NetBSD: files.rmixl,v 1.1.2.2 2009/11/09 09:43:22 cliff Exp $ file arch/evbmips/rmixl/autoconf.c file arch/evbmips/rmixl/machdep.c @@ -50,8 +50,6 @@ # ## TBD -file arch/evbmips/rmixl/pci/pci_machdep.c pci -file arch/evbmips/rmixl/pci/pciide_machdep.c pciide_common device pchb attach pchb at pci
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Mon Nov 9 09:55:11 UTC 2009 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - rmixl_physaddr_init() instantiates a fixed extent used to allocate physical address regions; allocate regions known to be occupied by DRAM or I/O BARs - physmap_print() prints the physmap as provided by boot firmware - add ram_seg_resv() to reserve regions in a phys_ram_seg_to by splitting segments where needed. - in mem_clusters_init(), if possible use avail_mem_map, else use psb_physmem_map, otherwise use MEMSIZE. avail_mem_map and psb_physmem_map can be limited w/ MEMSIZE To generate a diff of this commit: cvs rdiff -u -r1.1.2.5 -r1.1.2.6 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.5 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.6 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.5 Tue Sep 22 07:47:30 2009 +++ src/sys/arch/evbmips/rmixl/machdep.c Mon Nov 9 09:55:11 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.5 2009/09/22 07:47:30 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.6 2009/11/09 09:55:11 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.5 2009/09/22 07:47:30 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.6 2009/11/09 09:55:11 cliff Exp $); #include opt_ddb.h #include opt_com.h @@ -132,6 +132,8 @@ #include sys/ksyms.h #include sys/bus.h #include sys/device.h +#include sys/extent.h +#include sys/malloc.h #include uvm/uvm_extern.h @@ -160,6 +162,13 @@ #include mips/rmi/rmixl_firmware.h #include mips/rmi/rmixlreg.h +#ifdef MACHDEP_DEBUG +int machdep_debug=MACHDEP_DEBUG; +# define DPRINTF(x) do { if (machdep_debug) printf x ; } while(0) +#else +# define DPRINTF(x) +#endif + #ifndef CONSFREQ # define CONSFREQ -1 /* inherit from firmware */ #endif @@ -202,6 +211,17 @@ #define RMIXLFW_INFOP_LEGAL 0x8c00 +/* + * storage for fixed extent used to allocate physical address regions + * because extent(9) start and end values are u_long, they are only + * 32 bits on a 32 bit kernel, which is insuffucuent since XLS physical + * address is 40 bits wide. So the physaddr map stores regions + * in units of megabytes. + */ +static u_long rmixl_physaddr_storage[ + EXTENT_FIXED_STORAGE_SIZE(32)/sizeof(u_long) +]; + /* For sysctl_hw. */ extern char cpu_model[]; @@ -218,13 +238,17 @@ phys_ram_seg_t mem_clusters[VM_PHYSSEG_MAX]; -int mem_cluster_cnt; +u_int mem_cluster_cnt; + void configure(void); void mach_init(int, int32_t *, void *, void *); static u_long rmixlfw_init(void *); static u_long mem_clusters_init(rmixlfw_mmap_t *, rmixlfw_mmap_t *); static void __attribute__((__noreturn__)) rmixl_exit(int); +static void rmixl_physaddr_init(void); +static u_int ram_seg_resv(phys_ram_seg_t *, u_int, u_quad_t, u_quad_t); +void rmixlfw_mmap_print(rmixlfw_mmap_t *); /* @@ -243,8 +267,9 @@ { struct rmixl_config *rcp = rmixl_configuration; void *kernend, *v; -size_t first, last; u_long memsize; + u_int vm_cluster_cnt; + phys_ram_seg_t vm_clusters[VM_PHYSSEG_MAX]; extern char edata[], end[]; /* @@ -280,6 +305,8 @@ printf(\nNetBSD/rmixl\n); printf(memsize = %#lx\n, memsize); + rmixl_physaddr_init(); + /* * Obtain the cpu frequency * Compute the number of ticks for hz. @@ -309,26 +336,48 @@ howto = 0; BOOT_FLAG(*cp, howto); - if (! howto) -printf(bootflag '%c' not recognised\n, *cp); - else + if (howto != 0) boothowto |= howto; +#ifdef DIAGNOSTIC + else +printf(bootflag '%c' not recognised\n, *cp); +#endif } } +#ifdef DIAGNOSTIC printf(boothowto %#x\n, boothowto); +#endif /* - * Load the rest of the available pages into the VM system. - */ - first = round_page(MIPS_KSEG0_TO_PHYS(kernend)); - last = mem_clusters[0].start + mem_clusters[0].size; - uvm_page_physload(atop(first), atop(last), atop(first), atop(last), - VM_FREELIST_DEFAULT); - for (int i = 1; i mem_cluster_cnt; i++) { - first = round_page(mem_clusters[i].start); - last = mem_clusters[i].start + mem_clusters[i].size; - uvm_page_physload(atop(first), atop(last), atop(first), atop(last), - VM_FREELIST_DEFAULT); + * Reserve pages from the VM system. + * to maintain mem_clusters[] as a map of raw ram, + * copy into temporary table vm_clusters[] + * work on that and use it to feed vm_physload() + */ + KASSERT(sizeof(mem_clusters) == sizeof(vm_clusters)); + memcpy(vm_clusters, mem_clusters, sizeof(vm_clusters)); + vm_cluster_cnt = mem_cluster_cnt; + + /* reserve 0..start..kernend pages */ + vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt, + 0,
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/include
Module Name:src Committed By: cliff Date: Fri Sep 25 22:21:42 UTC 2009 Modified Files: src/sys/arch/evbmips/include [matt-nb5-mips64]: intr.h Log Message: struct evbmips_intrhand gets field 'ih_ipl' to associate this interrupt with an IPL To generate a diff of this commit: cvs rdiff -u -r1.16 -r1.16.18.1 src/sys/arch/evbmips/include/intr.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/include/intr.h diff -u src/sys/arch/evbmips/include/intr.h:1.16 src/sys/arch/evbmips/include/intr.h:1.16.18.1 --- src/sys/arch/evbmips/include/intr.h:1.16 Mon Apr 28 20:23:17 2008 +++ src/sys/arch/evbmips/include/intr.h Fri Sep 25 22:21:42 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: intr.h,v 1.16 2008/04/28 20:23:17 martin Exp $ */ +/* $NetBSD: intr.h,v 1.16.18.1 2009/09/25 22:21:42 cliff Exp $ */ /*- * Copyright (c) 2000, 2001 The NetBSD Foundation, Inc. @@ -96,6 +96,7 @@ int (*ih_func)(void *); void *ih_arg; int ih_irq; + int ih_ipl; }; #include mips/softintr.h
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: cliff Date: Fri Sep 25 22:22:27 UTC 2009 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: XLS6ATX_7A Log Message: specify interrupt# for com0 To generate a diff of this commit: cvs rdiff -u -r1.1.2.1 -r1.1.2.2 src/sys/arch/evbmips/conf/XLS6ATX_7A Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/XLS6ATX_7A diff -u src/sys/arch/evbmips/conf/XLS6ATX_7A:1.1.2.1 src/sys/arch/evbmips/conf/XLS6ATX_7A:1.1.2.2 --- src/sys/arch/evbmips/conf/XLS6ATX_7A:1.1.2.1 Sun Sep 13 03:27:38 2009 +++ src/sys/arch/evbmips/conf/XLS6ATX_7A Fri Sep 25 22:22:27 2009 @@ -1,11 +1,11 @@ # -# $NetBSD: XLS6ATX_7A,v 1.1.2.1 2009/09/13 03:27:38 cliff Exp $ +# $NetBSD: XLS6ATX_7A,v 1.1.2.2 2009/09/25 22:22:27 cliff Exp $ include arch/evbmips/conf/std.rmixl #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident XLS6ATX_7A-$Revision: 1.1.2.1 $ +#ident XLS6ATX_7A-$Revision: 1.1.2.2 $ maxusers 32 @@ -139,7 +139,7 @@ mainbus0 at root cpu0 at mainbus? obio0 at mainbus? -com0 at obio0 addr 0x14000 mult 4 +com0 at obio0 addr 0x14000 mult 4 intr 9 options COM_REGMAP # Pseudo-devices
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Tue Sep 22 07:15:37 UTC 2009 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: - if COMFREQ is undefined, define as -1 (inherit BRG settings from FW) - add a new recognized FW version entry to rmiclfw_psb_versions - break out initialization of mem_clusters into own function - imprpove early boot diagnostics - avoid faulting on possible NULL avail_mem_map pointer from FW - avoid using possible NULL reset FW callback pointer To generate a diff of this commit: cvs rdiff -u -r1.1.2.3 -r1.1.2.4 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.3 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.4 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.3 Tue Sep 15 02:46:43 2009 +++ src/sys/arch/evbmips/rmixl/machdep.c Tue Sep 22 07:15:37 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.3 2009/09/15 02:46:43 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.4 2009/09/22 07:15:37 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.3 2009/09/15 02:46:43 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.4 2009/09/22 07:15:37 cliff Exp $); #include opt_ddb.h #include opt_com.h @@ -160,6 +160,9 @@ #include mips/rmi/rmixl_firmware.h #include mips/rmi/rmixlreg.h +#ifndef CONSFREQ +# define CONSFREQ -1 /* inherit from firmware */ +#endif #ifndef CONSPEED # define CONSPEED 38400 #endif @@ -170,9 +173,9 @@ # define CONSADDR RMIXL_IO_DEV_UART_1 #endif -int comcnfreq = -1; -uint comcnspeed = CONSPEED; -uint comcnmode = CONMODE; +int comcnfreq = CONSFREQ; +int comcnspeed = CONSPEED; +tcflag_t comcnmode = CONMODE; bus_addr_t comcnaddr = (bus_addr_t)CONSADDR; struct rmixl_config rmixl_configuration; @@ -180,11 +183,12 @@ /* * array of tested firmware versions - * if you fiund new ones and they work + * if you find new ones and they work * please add them */ static uint64_t rmiclfw_psb_versions[] = { 0x4958d4fb0056, + 0x49a5a8fa0056, }; #define RMICLFW_PSB_VERSIONS_LEN \ (sizeof(rmiclfw_psb_versions)/sizeof(rmiclfw_psb_versions[0])) @@ -195,6 +199,7 @@ static rmixlfw_info_t rmixlfw_info; static rmixlfw_mmap_t rmixlfw_phys_mmap; static rmixlfw_mmap_t rmixlfw_avail_mmap; +#define RMIXLFW_INFOP_LEGAL 0x8c00 /* For sysctl_hw. */ @@ -218,6 +223,7 @@ void configure(void); void mach_init(int, int32_t *, void *, void *); static u_long rmixlfw_init(void *); +static u_long mem_clusters_init(rmixlfw_mmap_t *, rmixlfw_mmap_t *); static void __attribute__((__noreturn__)) rmixl_exit(int); @@ -235,7 +241,7 @@ void mach_init(int argc, int32_t *argv, void *envp, void *infop) { - struct rmixl_config *rcp; + struct rmixl_config *rcp = rmixl_configuration; void *kernend, *v; size_t first, last; u_long memsize; @@ -263,13 +269,11 @@ physmem = btoc(memsize); - rcp = rmixl_configuration; - rcp-rc_io_pbase = MIPS_KSEG1_TO_PHYS(rmixlfw_info.io_base); rmixl_eb_bus_mem_init(rcp-rc_eb_memt, rcp); /* need for console */ rmixl_el_bus_mem_init(rcp-rc_el_memt, rcp); /* XXX defer ? */ #if NCOM 0 - rmixl_com_cnattach(comcnaddr, comcnspeed, comcnfreq, + rmixl_com_cnattach(comcnaddr, comcnspeed, -1, COM_TYPE_NORMAL, comcnmode); #endif @@ -367,12 +371,8 @@ static u_long rmixlfw_init(void *infop) { + struct rmixl_config *rcp = rmixl_configuration; uint64_t tmp; - uint64_t sz; - uint64_t sum; -#ifdef MEMSIZE - u_long memsize = MEMSIZE; -#endif strcpy(cpu_model, RMI XLS616ATX VIIA); /* XXX */ @@ -386,15 +386,68 @@ goto found; } - rmixl_putchar_init(MIPS_KSEG1_TO_PHYS(rmixlfw_info.io_base)); + rcp-rc_io_pbase = MIPS_KSEG1_TO_PHYS(RMIXL_IO_DEV_PBASE); + rmixl_putchar_init(rcp-rc_io_pbase); + rmixl_puts(\r\nWARNING: untested psb_version: ); rmixl_puthex64(rmixlfw_info.psb_version); rmixl_puts(\r\n); + found: + rcp-rc_io_pbase = MIPS_KSEG1_TO_PHYS(rmixlfw_info.io_base); + rmixl_putchar_init(rcp-rc_io_pbase); + rmixl_puts(\r\ninfop: ); + rmixl_puthex64((uint64_t)infop); + rmixl_puts(\r\nrecognized psb_version: ); + rmixl_puthex64(rmixlfw_info.psb_version); + rmixl_puts(\r\n); - rmixlfw_phys_mmap = *(rmixlfw_mmap_t *)rmixlfw_info.psb_physaddr_map; - rmixlfw_avail_mmap = *(rmixlfw_mmap_t *)rmixlfw_info.avail_mem_map; + return mem_clusters_init( + (rmixlfw_mmap_t *)rmixlfw_info.psb_physaddr_map, + (rmixlfw_mmap_t *)rmixlfw_info.avail_mem_map); +} + +static u_long +mem_clusters_init( + rmixlfw_mmap_t *psb_physaddr_map, + rmixlfw_mmap_t *avail_mem_map) +{ + uint64_t tmp; + uint64_t sz; + uint64_t sum; +#ifdef MEMSIZE + u_long memsize = MEMSIZE; +#endif + + rmixl_puts(psb_physaddr_map: ); +
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/rmixl
Module Name:src Committed By: cliff Date: Tue Sep 22 07:47:30 UTC 2009 Modified Files: src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c Log Message: fix typo To generate a diff of this commit: cvs rdiff -u -r1.1.2.4 -r1.1.2.5 src/sys/arch/evbmips/rmixl/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/rmixl/machdep.c diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.4 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.5 --- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.4 Tue Sep 22 07:15:37 2009 +++ src/sys/arch/evbmips/rmixl/machdep.c Tue Sep 22 07:47:30 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.1.2.4 2009/09/22 07:15:37 cliff Exp $ */ +/* $NetBSD: machdep.c,v 1.1.2.5 2009/09/22 07:47:30 cliff Exp $ */ /* * Copyright 2001, 2002 Wasabi Systems, Inc. @@ -112,7 +112,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.4 2009/09/22 07:15:37 cliff Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.1.2.5 2009/09/22 07:47:30 cliff Exp $); #include opt_ddb.h #include opt_com.h @@ -423,7 +423,7 @@ rmixl_puthex64((uint64_t)psb_physaddr_map); rmixl_puts(\r\n); - if (psb_physaddr_map != NULL) + if (psb_physaddr_map == NULL) rmixl_puts(WARNING: no psb_physaddr_map\r\n); else rmixlfw_phys_mmap = *psb_physaddr_map;
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Sat Sep 12 16:49:05 UTC 2009 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: MALTA Log Message: bump SYMTAB_SPACE To generate a diff of this commit: cvs rdiff -u -r1.48 -r1.48.8.1 src/sys/arch/evbmips/conf/MALTA Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/MALTA diff -u src/sys/arch/evbmips/conf/MALTA:1.48 src/sys/arch/evbmips/conf/MALTA:1.48.8.1 --- src/sys/arch/evbmips/conf/MALTA:1.48 Thu Jul 31 07:41:00 2008 +++ src/sys/arch/evbmips/conf/MALTA Sat Sep 12 16:49:05 2009 @@ -1,10 +1,10 @@ -# $NetBSD: MALTA,v 1.48 2008/07/31 07:41:00 simonb Exp $ +# $NetBSD: MALTA,v 1.48.8.1 2009/09/12 16:49:05 matt Exp $ include arch/evbmips/conf/std.malta #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident MALTA-$Revision: 1.48 $ +#ident MALTA-$Revision: 1.48.8.1 $ maxusers 32 @@ -32,13 +32,14 @@ # Debugging options options DIAGNOSTIC # extra kernel sanity checking options DEBUG # extra kernel debugging support +#options SYSCALL_DEBUG # symbolic syscall names #options KMEMSTATS # kernel memory statistics (vmstat -m) options USERCONF # userconf(4) support #options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel options DDB # kernel dynamic debugger options DDB_HISTORY_SIZE=100 # enable history editing in DDB makeoptions DEBUG=-g # compile full symbol table -options SYMTAB_SPACE=175000 # size for embedded symbol table +options SYMTAB_SPACE=375000 # size for embedded symbol table # Compatibility options #options COMPAT_43 # compatibility with 4.3BSD binaries
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Sat Sep 12 16:49:57 UTC 2009 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: MALTA64 Log Message: Add COMPAT_NETBSD32 and increase SYMTAB_SPACE To generate a diff of this commit: cvs rdiff -u -r1.1.2.2 -r1.1.2.3 src/sys/arch/evbmips/conf/MALTA64 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/MALTA64 diff -u src/sys/arch/evbmips/conf/MALTA64:1.1.2.2 src/sys/arch/evbmips/conf/MALTA64:1.1.2.3 --- src/sys/arch/evbmips/conf/MALTA64:1.1.2.2 Wed Aug 26 04:47:29 2009 +++ src/sys/arch/evbmips/conf/MALTA64 Sat Sep 12 16:49:57 2009 @@ -1,4 +1,4 @@ -# $NetBSD: MALTA64,v 1.1.2.2 2009/08/26 04:47:29 matt Exp $ +# $NetBSD: MALTA64,v 1.1.2.3 2009/09/12 16:49:57 matt Exp $ # include arch/evbmips/conf/MALTA @@ -6,5 +6,8 @@ no options MIPS32 options EXEC_ELF64 +options COMPAT_NETBSD32 +no options SYMTAB_SPACE +options SYMTAB_SPACE=395000 # size for embedded symbol table no ath*
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/include
Module Name:src Committed By: matt Date: Sat Sep 12 16:50:49 UTC 2009 Added Files: src/sys/arch/evbmips/include [matt-nb5-mips64]: netbsd32_machdep.h Log Message: Add include stub for mips/netbsd32_machdep.h To generate a diff of this commit: cvs rdiff -u -r0 -r1.1.2.1 src/sys/arch/evbmips/include/netbsd32_machdep.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/sys/arch/evbmips/include/netbsd32_machdep.h diff -u /dev/null src/sys/arch/evbmips/include/netbsd32_machdep.h:1.1.2.1 --- /dev/null Sat Sep 12 16:50:49 2009 +++ src/sys/arch/evbmips/include/netbsd32_machdep.h Sat Sep 12 16:50:48 2009 @@ -0,0 +1,3 @@ +/* $NetBSD: netbsd32_machdep.h,v 1.1.2.1 2009/09/12 16:50:48 matt Exp $ */ + +#include mips/netbsd32_machdep.h
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Sat Sep 12 18:22:27 UTC 2009 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: MALTA Log Message: Add TMPFS To generate a diff of this commit: cvs rdiff -u -r1.48.8.1 -r1.48.8.2 src/sys/arch/evbmips/conf/MALTA Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/MALTA diff -u src/sys/arch/evbmips/conf/MALTA:1.48.8.1 src/sys/arch/evbmips/conf/MALTA:1.48.8.2 --- src/sys/arch/evbmips/conf/MALTA:1.48.8.1 Sat Sep 12 16:49:05 2009 +++ src/sys/arch/evbmips/conf/MALTA Sat Sep 12 18:22:27 2009 @@ -1,10 +1,10 @@ -# $NetBSD: MALTA,v 1.48.8.1 2009/09/12 16:49:05 matt Exp $ +# $NetBSD: MALTA,v 1.48.8.2 2009/09/12 18:22:27 matt Exp $ include arch/evbmips/conf/std.malta #options INCLUDE_CONFIG_FILE # embed config file in kernel binary -#ident MALTA-$Revision: 1.48.8.1 $ +#ident MALTA-$Revision: 1.48.8.2 $ maxusers 32 @@ -72,6 +72,7 @@ #file-system PORTAL # portal filesystem (still experimental) #file-system PROCFS # /proc #file-system CD9660 # ISO 9660 + Rock Ridge file system +file-system TMPFS # Efficient memory file system #file-system UNION # union file system #file-system MSDOSFS # MS-DOS FAT filesystem(s). #file-system CODA # Coda File System; also needs vcoda (below)
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Sat Sep 12 18:22:52 UTC 2009 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: ALCHEMY Log Message: Bump up SYMTAB_SPACE to 375000 To generate a diff of this commit: cvs rdiff -u -r1.20 -r1.20.8.1 src/sys/arch/evbmips/conf/ALCHEMY Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/ALCHEMY diff -u src/sys/arch/evbmips/conf/ALCHEMY:1.20 src/sys/arch/evbmips/conf/ALCHEMY:1.20.8.1 --- src/sys/arch/evbmips/conf/ALCHEMY:1.20 Thu Jul 31 07:41:00 2008 +++ src/sys/arch/evbmips/conf/ALCHEMY Sat Sep 12 18:22:52 2009 @@ -1,11 +1,11 @@ -# $NetBSD: ALCHEMY,v 1.20 2008/07/31 07:41:00 simonb Exp $ +# $NetBSD: ALCHEMY,v 1.20.8.1 2009/09/12 18:22:52 matt Exp $ # # Kernel config for the Alchemy Semiconductor (AMD) PB1000, PB1500, # DBAu1000 and DBAu1500 evaluation boards. include arch/evbmips/conf/std.alchemy -#ident ALCHEMY-$Revision: 1.20 $ +#ident ALCHEMY-$Revision: 1.20.8.1 $ maxusers 32 @@ -48,7 +48,7 @@ options DDB # kernel dynamic debugger options DDB_HISTORY_SIZE=100 # enable history editing in DDB makeoptions DEBUG=-g # compile full symbol table -options SYMTAB_SPACE=34 # size for embedded symbol table +options SYMTAB_SPACE=375000 # size for embedded symbol table # Compatibility options #options COMPAT_43 # compatibility with 4.3BSD binaries
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/include
Module Name:src Committed By: cliff Date: Sun Sep 13 03:33:08 UTC 2009 Modified Files: src/sys/arch/evbmips/include [matt-nb5-mips64]: vmparam.h Log Message: bump VM_PHYSSEG_MAX to 32 (was 1) for sake of systems with multiple noncontiguous regions of physical memory To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.1.142.1 src/sys/arch/evbmips/include/vmparam.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/include/vmparam.h diff -u src/sys/arch/evbmips/include/vmparam.h:1.1 src/sys/arch/evbmips/include/vmparam.h:1.1.142.1 --- src/sys/arch/evbmips/include/vmparam.h:1.1 Thu Mar 7 14:44:02 2002 +++ src/sys/arch/evbmips/include/vmparam.h Sun Sep 13 03:33:08 2009 @@ -1,11 +1,11 @@ -/* $NetBSD: vmparam.h,v 1.1 2002/03/07 14:44:02 simonb Exp $ */ +/* $NetBSD: vmparam.h,v 1.1.142.1 2009/09/13 03:33:08 cliff Exp $ */ #ifndef _EVBMIPS_VMPARAM_H_ #define _EVBMIPS_VMPARAM_H_ #include mips/vmparam.h -#define VM_PHYSSEG_MAX 1 +#define VM_PHYSSEG_MAX 32 #define VM_NFREELIST 1 #define VM_FREELIST_DEFAULT 0
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips
Module Name:src Committed By: matt Date: Mon Sep 7 23:20:29 UTC 2009 Modified Files: src/sys/arch/evbmips/adm5120 [matt-nb5-mips64]: machdep.c src/sys/arch/evbmips/alchemy [matt-nb5-mips64]: machdep.c src/sys/arch/evbmips/atheros [matt-nb5-mips64]: machdep.c src/sys/arch/evbmips/malta [matt-nb5-mips64]: machdep.c Log Message: Update to deal with pcb_context being a label_t (this should be a common routine). To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.6.10.1 src/sys/arch/evbmips/adm5120/machdep.c cvs rdiff -u -r1.37 -r1.37.10.1 src/sys/arch/evbmips/alchemy/machdep.c cvs rdiff -u -r1.13 -r1.13.10.1 src/sys/arch/evbmips/atheros/machdep.c cvs rdiff -u -r1.28.10.1 -r1.28.10.2 src/sys/arch/evbmips/malta/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/adm5120/machdep.c diff -u src/sys/arch/evbmips/adm5120/machdep.c:1.6 src/sys/arch/evbmips/adm5120/machdep.c:1.6.10.1 --- src/sys/arch/evbmips/adm5120/machdep.c:1.6 Wed Jul 2 17:28:55 2008 +++ src/sys/arch/evbmips/adm5120/machdep.c Mon Sep 7 23:20:28 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.6 2008/07/02 17:28:55 ad Exp $ */ +/* $NetBSD: machdep.c,v 1.6.10.1 2009/09/07 23:20:28 matt Exp $ */ /*- * Copyright (c) 2007 Ruslan Ermilov and Vsevolod Lobko. @@ -107,7 +107,7 @@ */ #include sys/cdefs.h /* RCS ID Copyright macro defns */ -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.6 2008/07/02 17:28:55 ad Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.6.10.1 2009/09/07 23:20:28 matt Exp $); #include opt_ddb.h #include opt_kgdb.h @@ -440,7 +440,13 @@ v = uvm_pageboot_alloc(USPACE); lwp0.l_addr = proc0paddr = (struct user *)v; lwp0.l_md.md_regs = (struct frame *)(v + USPACE) - 1; - proc0paddr-u_pcb.pcb_context[11] = +#ifdef _LP64 + lwp0.l_md.md_regs-f_regs[_R_SR] = MIPS_SR_KX; +#endif + lwp0.l_addr-u_pcb.pcb_context.val[_L_SR] = +#ifdef _LP64 + MIPS_SR_KX | +#endif MIPS_INT_MASK | MIPS_SR_INT_IE; /* SR */ /* Index: src/sys/arch/evbmips/alchemy/machdep.c diff -u src/sys/arch/evbmips/alchemy/machdep.c:1.37 src/sys/arch/evbmips/alchemy/machdep.c:1.37.10.1 --- src/sys/arch/evbmips/alchemy/machdep.c:1.37 Wed Jul 2 17:28:55 2008 +++ src/sys/arch/evbmips/alchemy/machdep.c Mon Sep 7 23:20:28 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.37 2008/07/02 17:28:55 ad Exp $ */ +/* $NetBSD: machdep.c,v 1.37.10.1 2009/09/07 23:20:28 matt Exp $ */ /*- * Copyright (c) 2006 Itronix Inc. @@ -107,7 +107,7 @@ */ #include sys/cdefs.h /* RCS ID Copyright macro defns */ -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.37 2008/07/02 17:28:55 ad Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.37.10.1 2009/09/07 23:20:28 matt Exp $); #include opt_ddb.h #include opt_kgdb.h @@ -366,7 +366,13 @@ v = (void *) uvm_pageboot_alloc(USPACE); lwp0.l_addr = proc0paddr = (struct user *)v; lwp0.l_md.md_regs = (struct frame *)((char *)v + USPACE) - 1; - proc0paddr-u_pcb.pcb_context[11] = +#ifdef _LP64 + lwp0.l_md.md_regs-f_regs[_R_SR] = MIPS_SR_KX; +#endif + lwp0.l_addr-u_pcb.pcb_context.val[_L_SR] = +#ifdef _LP64 + MIPS_SR_KX | +#endif MIPS_INT_MASK | MIPS_SR_INT_IE; /* SR */ /* Index: src/sys/arch/evbmips/atheros/machdep.c diff -u src/sys/arch/evbmips/atheros/machdep.c:1.13 src/sys/arch/evbmips/atheros/machdep.c:1.13.10.1 --- src/sys/arch/evbmips/atheros/machdep.c:1.13 Wed Jul 2 17:28:55 2008 +++ src/sys/arch/evbmips/atheros/machdep.c Mon Sep 7 23:20:29 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.13 2008/07/02 17:28:55 ad Exp $ */ +/* $NetBSD: machdep.c,v 1.13.10.1 2009/09/07 23:20:29 matt Exp $ */ /* * Copyright (c) 2006 Urbana-Champaign Independent Media Center. @@ -147,7 +147,7 @@ */ #include sys/cdefs.h /* RCS ID Copyright macro defns */ -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.13 2008/07/02 17:28:55 ad Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.13.10.1 2009/09/07 23:20:29 matt Exp $); #include opt_ddb.h #include opt_kgdb.h @@ -312,7 +312,13 @@ v = (void *) uvm_pageboot_alloc(USPACE); lwp0.l_addr = proc0paddr = (struct user *)v; lwp0.l_md.md_regs = (struct frame *)((char *)v + USPACE) - 1; - proc0paddr-u_pcb.pcb_context[11] = +#ifdef _LP64 + lwp0.l_md.md_regs-f_regs[_R_SR] = MIPS_SR_KX; +#endif + lwp0.l_addr-u_pcb.pcb_context.val[_L_SR] = +#ifdef _LP64 + MIPS_SR_KX | +#endif MIPS_INT_MASK | MIPS_SR_INT_IE; /* SR */ /* Index: src/sys/arch/evbmips/malta/machdep.c diff -u src/sys/arch/evbmips/malta/machdep.c:1.28.10.1 src/sys/arch/evbmips/malta/machdep.c:1.28.10.2 --- src/sys/arch/evbmips/malta/machdep.c:1.28.10.1 Fri Aug 21 17:52:16 2009 +++ src/sys/arch/evbmips/malta/machdep.c Mon Sep 7 23:20:29 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.28.10.1 2009/08/21 17:52:16 matt Exp $ */ +/* $NetBSD: machdep.c,v 1.28.10.2 2009/09/07 23:20:29 matt Exp $ */ /* * Copyright 2001, 2002 Wasabi
CVS commit: [matt-nb5-mips64] src/sys/arch/evbmips/conf
Module Name:src Committed By: matt Date: Sun Aug 23 03:43:33 UTC 2009 Modified Files: src/sys/arch/evbmips/conf [matt-nb5-mips64]: std.malta Log Message: Compile MALTA with -mmips64 To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.5.94.1 src/sys/arch/evbmips/conf/std.malta Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/evbmips/conf/std.malta diff -u src/sys/arch/evbmips/conf/std.malta:1.5 src/sys/arch/evbmips/conf/std.malta:1.5.94.1 --- src/sys/arch/evbmips/conf/std.malta:1.5 Sun Dec 11 12:17:11 2005 +++ src/sys/arch/evbmips/conf/std.malta Sun Aug 23 03:43:33 2009 @@ -1,4 +1,4 @@ -# $NetBSD: std.malta,v 1.5 2005/12/11 12:17:11 christos Exp $ +# $NetBSD: std.malta,v 1.5.94.1 2009/08/23 03:43:33 matt Exp $ machine evbmips mips include conf/std # MI standard options @@ -11,6 +11,7 @@ options EXEC_ELF32 # exec ELF32 binaries options EXEC_SCRIPT # exec #! scripts +makeoptions CFLAGS+=-mips64 makeoptions DEFTEXTADDR=0x8010 makeoptions BOARDTYPE=malta