Commit Graph

30828 Commits

Author SHA1 Message Date
simonb 8eb960909e Determine and display the CPU clock frequency from the "System
Identification and Revision Register", and set the frequency
related variables in curcpu info structure.
2002-03-06 03:27:34 +00:00
simonb 3fe666190f Wrap long line and remove a bogus XXX comment. 2002-03-06 03:25:09 +00:00
simonb f3e2fe6731 Add entry for sbmips. 2002-03-06 02:42:30 +00:00
simonb 4b7a128684 A basic port to the Broadcom/SiByte SB1250 evaluation board (the
"swarm").  Other SB-cpu boards will be supported by this port in
the future.

Includes support for on-chip ethernet and serial.  Many features
still missing - notably SMP, PCI/LDT and IDE.

This code is provided by the Broadband Processor Business Unit at
Broadcom Corp with minor updates by me.
2002-03-06 02:13:37 +00:00
simonb 2c68c156c5 Only include <sys/exec_ecoff.h> if EXEC_ECOFF is defined.
Note that ELF is mandatory.
2002-03-06 00:22:09 +00:00
simonb 3ab34324e9 Remove a few unneeded include files. 2002-03-06 00:05:06 +00:00
simonb 1b5ddfe411 Add support for the on-chip peripherals on the Broadcom SiByte SB1250 CPU
and support routines for the Broadcom CFE (Common Firmware Environment).

This code is provided by the Broadband Processor Business Unit at
Broadcom Corp with minor updates by me.
2002-03-05 23:46:40 +00:00
eeh 2f0ba3e1a2 More walnut-isms. 2002-03-05 22:02:25 +00:00
thorpej 84be4d4719 Fix size/padding of .data. From Nick. 2002-03-05 21:26:11 +00:00
briggs 257f8fe26f Add BAT_G for EUMB (incl. I/O) space. Per matt@netbsd.org's macppc change. 2002-03-05 19:06:38 +00:00
shiba 081fae3ddb Fix up a bug which PB150 shuts down when one boots up in progress.
PB150 will work with SCSI disk. But we cannot use an internal IDE
disk yet.

Reviewed by briggs
2002-03-05 17:39:25 +00:00
simonb 8b5599e7ce Remove HPCMIPS_FLUSHCACHE_XXX debug code. 2002-03-05 16:16:45 +00:00
simonb 0d0a449d80 mips/mips/fp.S is in mips/conf/files.mips now. 2002-03-05 16:16:03 +00:00
simonb 4c27f5f8f7 mips/mips/fp.S is in mips/conf/files.mips now. 2002-03-05 16:14:57 +00:00
simonb fd77e40b6b Provide a L2 cache configuration function. 2002-03-05 16:12:35 +00:00
simonb 713adcd0e8 Use new cache coherency attribute macro. 2002-03-05 16:11:57 +00:00
simonb f1dbc97679 Not used anymore. 2002-03-05 16:08:55 +00:00
simonb 811ee92532 Add support for MIPS32 and MIPS64 architectures:
- Build mips3/5900/32/64 support subroutines.
 - Move arch/mips/mips/fp.S to central location.
 - Move NOFPU to opt_cputype.h.
2002-03-05 16:08:00 +00:00
simonb f340c57568 Values related to the MIPS32/MIPS64 Privileged Resource Architecture
(from Broadcom Corp).
2002-03-05 16:07:10 +00:00
simonb 9ac7c86a0f Adjust for 5900 include file changes. 2002-03-05 16:06:04 +00:00
simonb 3f2f4c9bf6 r5900_vector_init() is in mips_machdep.c now. 2002-03-05 16:05:26 +00:00
simonb dd756c0ca5 Rename <mips/r5900/cpuregs.h> to <mips/r5900regs.h> and remove some
content no longer needed.
2002-03-05 16:04:57 +00:00
simonb fcdc111c1a Cosmestic changes (more like the mips3+ code). 2002-03-05 16:03:22 +00:00
simonb c5d34b4371 Remove the number of TLB entries for different rx39 CPUs - this info
is in the table in mips_machdep.c now.
2002-03-05 16:02:48 +00:00
simonb c6bcfb2589 Add support for MIPS32 and MIPS64 architectures:
- Move away from using CPUISMIPS3; use MIPS_HAS_R4K_MMU instead.
 - Bump the Sysmap size a little for large-memory machines.
XXX: still need work, especially in pmap_procwr().
2002-03-05 16:01:25 +00:00
simonb 0f9c00fc2e Add support for MIPS32 and MIPS64 architectures:
- Move away from using CPUISMIPS3; use MIPS_HAS_R4K_MMU instead.
 - ANSIfy.
2002-03-05 15:57:20 +00:00
simonb fa9c08ab16 Remove HPCMIPS_FLUSHCACHE_XXX debug code.
Remove old unused exception frame unwind code.
Change a MIPS3 check to a MIPS3_PLUS check.
ANSIfy.
2002-03-05 15:55:41 +00:00
simonb 278bfc1c02 Add support for MIPS32 and MIPS64 architectures:
- move away from using CPUISMIPS3; use MIPS_HAS_CLOCK instead.
2002-03-05 15:54:33 +00:00
simonb 351c1c16a6 Add support for MIPS32 and MIPS64 architectures:
- Use a table-driven CPU detection algorithm instead of multiple
   case statements.
 - Add MIPS32/64 feature detection using the architected CP0 registers
   (from Broadcom Corp).
 - Call MD mips_machdep_cache_config() function if
   __HAVE_MIPS_MACHDEP_CACHE_CONFIG is defined - used to set up the
   L2 cache on some ports.
2002-03-05 15:53:00 +00:00
simonb ba8e2e82e4 Add support for MIPS32 and MIPS64 architectures:
- Remove all mmu-related code that may use 32 register on mips32-style
   implementatios and move them to mipsX_subr.S - which is then included
   from mips{3,32,64,5900}_subr.S with various control defines enabled.
 - Remove local cache instruction flags
 - Add badaddr64 (from Broadcom Corp).
2002-03-05 15:50:59 +00:00
simonb 9ed4fd257f Change a MIPS3 check to a MIPS3_PLUS check.
XXX: I'm not 100% sure of the intent of this code - it would seem that
 it needs a run-time check of CPU ISA to be completely correct...
2002-03-05 15:48:31 +00:00
simonb d62813603c Check userland address and address alignent as two separate checks.
Fix for when mips_reg_t is 64-bits.
ANSIfy.
2002-03-05 15:46:51 +00:00
simonb fe86ad150e Change MIPS3 checks to MIPS3_PLUS checks (XXX - still bogus!). 2002-03-05 15:44:40 +00:00
simonb c9a3bd8900 Add support for MIPS32 and MIPS64 architectures:
- Move away from using CPUISMIPS3; use MIPS_HAS_R4K_MMU instead.
 - Add a command to dump cp0 state.
2002-03-05 15:43:25 +00:00
simonb 9b785c48f3 Cache ops for MIPS32/64 cpus. 2002-03-05 15:42:50 +00:00
simonb 0446046fde Add MIPS32/64 cache setup code (from Broadcom Corp). 2002-03-05 15:42:21 +00:00
simonb cae6e0e516 Prototypes for MIPS32/64 cache ops. 2002-03-05 15:41:48 +00:00
simonb 0ff59237ca Change a MIPS3 check to a MIPS3_PLUS check (XXX - still bogus!). 2002-03-05 15:41:14 +00:00
simonb 01422aae5c Add support for MIPS32 and MIPS64 architectures:
- move away from using CPUISMIPS3; use MIPS_HAS_CLOCK instead.
2002-03-05 15:40:10 +00:00
simonb 1d05db445d Add support for MIPS32 and MIPS64 architectures:
- Move away from using CPUISMIPS3; use MIPS_HAS_R4K_MMU instead.
2002-03-05 15:39:31 +00:00
simonb 934c4ba555 Add support for MIPS32 and MIPS64 architectures:
Remove the unused PSL_USERCLR and BASEPRI macros.
2002-03-05 15:38:33 +00:00
simonb b255c47737 Add support for MIPS32 and MIPS64 architectures:
Better cache coherency attribute macros (from Broadcom Corp).
2002-03-05 15:37:32 +00:00
simonb f38d391749 Add support for MIPS32 and MIPS64 architectures:
- Add mips32 and mips64 locore function prototypes.
 - Add mips3_lw_a64() and mips3_sw_a64() for access data at any
   64bit address (from Broadcom Corp).
 - Add Broadcom and Sandcraft CPU company ids.
2002-03-05 15:36:51 +00:00
simonb 2fab526863 Add support for MIPS32 and MIPS64 architectures:
- Add XKPHYS macros (from Broadcom Corp).
 - Add some r5900 register bit definitions.
 - Add extra exception vector addresses for mips32/mips64 and r5900.
 - Make the mips cp0 register definitions available from both asm and C.
 - Add some Alchemy and Sandcraft CPU ids.
 - Add r3000, tx39xx and r4x00 CPU revision ids.
 - Remove defines for the number of TLBs on some CPUs.
2002-03-05 15:35:22 +00:00
simonb 60fe625bd0 Add support for MIPS32 and MIPS64 architectures:
- Clean up (somewhat) mips1 vs mips3+ configuration.
   XXX:  this is still quite messy.
 - Add cpu frequency info to struct cpu_info.
 - ANSIfy.
2002-03-05 15:34:04 +00:00
simonb ef0fcacb94 ANSIfy. 2002-03-05 15:12:58 +00:00
simonb 8070cbd848 Add 4way 16/32-byte-line cache op primitives. 2002-03-05 14:32:26 +00:00
simonb e8e49d677b Don't explicitly depend locore_*.S and fp.S on assym.h - this is done
for all .S files in /sys/conf/Makefile.kern.inc.
2002-03-05 14:28:31 +00:00
simonb 7bd5992f7a Fix for when we have 64 bit registers enabled for userland (but still
using the o32 API).
2002-03-05 14:23:50 +00:00
simonb 4a931bedb8 KNF whitespace. 2002-03-05 14:21:32 +00:00
simonb 59f53aab95 The 64-bit safe, ILP32 o32 model is safe with the current stdarg
implementation.
2002-03-05 14:18:12 +00:00
simonb 836b7ec262 Include <machine/cdefs.h> to select 32/64bit APIs. 2002-03-05 14:17:16 +00:00
simonb b2fb45331b ANSIfy. 2002-03-05 14:08:43 +00:00
simonb 58faa5f0ca Clean up #ifdef checks a little. 2002-03-05 14:08:07 +00:00
wiz 92a8da0e0d 'securyty' looks nice. Sadly, it's wrong. 2002-03-05 13:59:13 +00:00
simonb 9bcc70fa1d Don't cast argument to ffs() to long.
Per discussion on port-alpha, noticed by Robert Elz.
2002-03-05 09:40:38 +00:00
thorpej 5658662324 * Make pmap_is_{modified,referenced}() macros in pmap.h that just
test the attributes in the vm_page_md directly.
* Clean up pmap_clear_{modified,referenced}().
* Delete now-unused pmap_testbit().
2002-03-05 04:48:03 +00:00
thorpej a92da3d4a5 Switch back to using vm_page_md (thanks chuq for finding the bug
in the code that made it unstable before!)
2002-03-05 04:19:59 +00:00
itojun ac36f7cb2c bring in latest ALTQ from kjc. ALTQify some of the drivers. 2002-03-05 04:12:57 +00:00
simonb d224e9dcc0 Indent by tab and not two spaces. 2002-03-05 00:38:41 +00:00
simonb de2043f47e Sort function declarations.
Fix some KNF whitespace nits.
2002-03-05 00:34:14 +00:00
simonb 07a0ec1fd1 Split the (commented out) complete list of archs into separate lines
split alphabetically.  This makes it easier to add new archs without
having to do extensive reformatting.
2002-03-05 00:07:04 +00:00
thorpej f0963ab552 Add ofromioctl(), needed since Christos added ioctl to the memory device's
cdev decl.
2002-03-04 23:43:01 +00:00
shiba db5d1f5f34 Add the machine id of PowerBook 190CS. 2002-03-04 16:58:37 +00:00
wiz 634dabecb0 possible has two s. 2002-03-04 15:35:56 +00:00
uch 2f603eaa17 CTL_MACHDEP definitions are integrated into sh3/include/cpu.h again. 2002-03-04 14:36:13 +00:00
wiz 0995897f47 Remove ipip reference. 2002-03-04 14:12:56 +00:00
kleink 8a79f029ad VRSAVE is SPR 256, not 238. 2002-03-04 13:37:42 +00:00
sommerfeld 3406f0a3dd The "gif*" tunnelling interface does everything ipip does.
Move usage example from ipip.4 to gif.4
Excise ipip and stitch up the scars.
2002-03-04 13:24:06 +00:00
dbj b5fde890d0 add cnpollc() calls around cngetc for TRAP_PANICWAIT 2002-03-04 04:07:35 +00:00
dbj ed04b7ecb3 add a few missing keys, including f1-f12,home,end,next,prior 2002-03-04 04:03:36 +00:00
simonb 6f0fb25121 Don't need to declare phys_map - it is declared in <uvm/uvm_extern.h>. 2002-03-04 02:43:22 +00:00
simonb 9a942a34e0 Don't use local extern declarations for the mountroot variable or
declare local prototypes for nfs_mountroot() or md_root_setconf().
2002-03-04 02:25:21 +00:00
simonb 64c7743a05 Don't "extern int cold;" - this is in <sys/kernel.h>. 2002-03-04 02:19:07 +00:00
wiz 1b7f309f0a Correct misspellings of "failed". 2002-03-04 01:38:31 +00:00
kleink 995081f947 Make this link again in the absence of envsys/sysmon. 2002-03-04 00:55:04 +00:00
thorpej e0ea696615 * Add support for running the IQ80310 kernel where KERNEL_BASE !=
physical memory start.  Garbage-collect some cruft while here.
* Move the kernel up to 0xc0000000, giving a 1G/3G kernel/user split.
* Adjust the Integrator startup code accordingly.
2002-03-03 21:22:15 +00:00
thorpej e23381908a inittodr(): Actually initialize time from the file system time. 2002-03-03 21:10:40 +00:00
mhitch d616d3990b Enable transmit error and EPH interrupt, and reset NIC on EPH interrupt.
Fixes a source of lost interrupts.
2002-03-03 18:21:37 +00:00
uch bf5bf0be48 remove obsolete headers. 2002-03-03 14:59:55 +00:00
uch 0894ee8f62 use GENERIC. 2002-03-03 14:45:21 +00:00
uch 0d29f32a67 clean up config files. 2002-03-03 14:36:48 +00:00
uch 3c9bf76936 make it work correctly when both hd64461uart and hd64465uart are enabled. 2002-03-03 14:35:08 +00:00
uch 7592c6aa95 don't initialize twice 2002-03-03 14:34:36 +00:00
uch 7166e5033d platform dependent HD64461 PCMCIA module (power supply). 2002-03-03 14:34:00 +00:00
uch 08aefbe07d remove temporal debug code. 2002-03-03 14:32:21 +00:00
uch 90baa8b206 SR related parts moved to psl.h. cpufunc.h segments.h are removed.
kernel mode checking is only SR.MD. no check stack pointer.
2002-03-03 14:31:24 +00:00
uch 17fbf85dc3 machine dependent sysctl are moved to machine/cpu.h
dreamcast, hpcsh ... CPU_CONSDEV
	mmeye, evbsh3	 ... CPU_CONSDEV, CPU_LOADANDRESET
2002-03-03 14:28:48 +00:00
uch 24ebe31f30 remove unneeded configuration. 2002-03-03 14:27:24 +00:00
chris 1181e367e0 Implement pmap_growkernel for arm32 based ports.
Note that this has been compiled on some systems, cats, IQ80310, IPAQ, netwinder and shark (note that shark's build is currently broken due to other reasons), but only actually run on cats.
Shark doesn't make use of the functionality as I believe there has to be a correlation between OFW and the kernel tables so that calls into OFW work.
2002-03-03 11:22:58 +00:00
scw 293681cdc3 Rename the bootstrap from netboot to just boot as eventually it will
support both network and scsi devices in one binary.
(There are no absolute size restrictions for a PReP-style one-stage
bootloader).
2002-03-03 11:03:43 +00:00
scw 087d3361fc Define NEWPMAP here if it is not already defined, for the benefit
of lkms.
2002-03-03 10:55:35 +00:00
scw 44c52d4714 No longer need to define CACHELINESIZE here, and move NEWPMAP option
to std.mvmeppc since the old pmap module is not supported on mvmeppc.
2002-03-03 10:53:10 +00:00
nathanw b50fb54af2 Calculate and print the speed of G3 and G4 processors.
Add code to read the on-chip temperature sensor on the G3 and hook it in
to the envsys/sysmon subsystem. "envstat" now prints the CPU temperature.
2002-03-03 07:31:33 +00:00
nathanw 1eeb28024d Add sysmon data structures to struct cpu_info. 2002-03-03 07:09:09 +00:00
matt d26c78e764 All Moto PPC revisions should be printed as maj.min (0x0200 -> 2.0). 2002-03-03 07:09:01 +00:00
nathanw 780a2774c6 The cpu device now requires sysmon_envsys. 2002-03-03 07:04:34 +00:00
nathanw de0fe89086 Add sysmon device (62). 2002-03-03 07:02:54 +00:00
matt e0ba5cf38d Add initial MPC7455 support. 2002-03-03 06:56:09 +00:00
matt 997374a8dd Add MPC7455 2002-03-03 06:47:25 +00:00
nathanw 5d5aeaa547 Add bit definitions for the MMCR's, and event numbers for the events
that are common to the G3 and G4.
2002-03-03 06:38:31 +00:00
nathanw 7a92615001 Correct the SPR numbers of PMC3 and PMC4.
SIA wasn't retconned, but the SPR number was wrong. Re-add it, and add
USIA.
2002-03-03 05:32:37 +00:00
nathanw c2b8ec655a Delete the retconned SIAR SPR. 2002-03-03 05:17:48 +00:00
nathanw ee2cbbfe4a Add MPC7xx/7xxx performance monitor control registers (MMCR0-2, UMMCR0-2). 2002-03-03 05:15:44 +00:00
nathanw 28b2a20fb9 Add bit definitions for the MPC750 thermal management registers. 2002-03-03 04:31:53 +00:00
jmc 8c3c52f61d Provide a definition for DEV_EEPROM so mem.c will compile if SUN4 is defined. 2002-03-03 03:11:06 +00:00
thorpej 20dd585980 Add RCS ID. 2002-03-02 22:29:40 +00:00
uch 6042c0a3fc Initial support for KGDB on the sh3. 2002-03-02 22:26:25 +00:00
uch 65af267aeb Add SH7709A INTEVT2 register define. 2002-03-02 22:25:19 +00:00
thorpej ebcb5cdd36 Move the DBSYM bits up in the file. 2002-03-02 22:23:10 +00:00
uch 36c7edfda4 recompile 2002-03-02 22:03:51 +00:00
uch 795a7cf404 WCE210 support. 2002-03-02 22:01:57 +00:00
uch 2a2cc9f493 always open COM1 for the sake of KGDB. 2002-03-02 22:01:34 +00:00
uch ddf9130f5c add run-time detection of Windows CE version. 2002-03-02 22:01:05 +00:00
kleink 4a513728e8 Add end-of-comment missing in previous. 2002-03-02 21:36:27 +00:00
mhitch 9de3e943c6 Make reset actually do something and enable the use of the watchdog timer.
Losing interrupts no longer will hang the network.
2002-03-02 21:08:04 +00:00
chris a973797a7a Remove ref to VM_MAXKERN_ADDRESS, it's not used in this file 2002-03-02 15:35:05 +00:00
chris 4fa8495ff4 Update the types, pt_entry and pd_entry should be unsigned, and fixed at 32 bits. 2002-03-02 15:30:49 +00:00
kleink a34187bca3 Also reset segment register 0 on kernel entry: there may not always be
a fixed BAT entry covering segment 0, or not completely covering it,
and we do restore it on return to user level already.
2002-03-02 15:19:56 +00:00
kleink dc0a08feaa Note that Guarded bit is not implemented on the 601. 2002-03-02 15:07:35 +00:00
kleink 98eeb8198f Give block translations to I/O memory the Guarded attribute; from Matt Thomas. 2002-03-02 14:25:02 +00:00
mrg ccc760f047 check _KERNEL_OPT for opt_ddb.h 2002-03-02 12:28:16 +00:00
scw 6cf459ffb5 Add BAT_G to the I/O bats, as per matt@netbsd.org's change for macppc. 2002-03-02 11:01:50 +00:00
matt b7a4d57a9e Now all MBR_* definitions come from <sys/disklabel_mbr.h> 2002-03-02 07:05:30 +00:00
jmc 68b038f787 Wrap the generation of machine and powerpc links so they don't happen during
make obj, clean or cleandir as the proper objdir may not be around yet.
2002-03-02 06:32:28 +00:00
matt 4b948be2fc Disable BTIC on rev 2.0 or earlier MPC7450s as Motorola Errata #31 for the
MPC7450.
2002-03-02 02:18:38 +00:00
matt 102f6b0e48 Make sure I/O bats are set to BAT_I|BAT_G (guarded, cache-inhibited) as to
not allow speculative loads to occur within them.  This is the cause of the
random MCHKs on 7450 based Mac's.
2002-03-02 00:44:08 +00:00
ragge 16cd24dea4 usrptsize was not correct calculated, fixed.
Add space to system page table for the UVM kernel area.
This fixes the KVM usage problem that Manuel Bouyer reported a while ago.
2002-03-01 23:55:10 +00:00
thorpej 35abec3c31 Add -Os and -mcpu=i486 to COPTS. Add VNODE_OP_NOINLINE. 2002-03-01 23:42:20 +00:00
martin f801cd463b Rename EBUS_PADDR_FROM_REG uses to EBUS_ADDR_FROM_REG. 2002-03-01 11:51:00 +00:00
martin 7d9d648a64 For aesthetical reasons use bus_addr_t instead of paddr_t in the BUS_ADDR
makro. Requested by uwe.
2002-03-01 11:34:36 +00:00
martin feaf0ddd87 Cast the "io" parameter of BUS_ADDR to paddr_t before it gets shifted.
This makes this makro work with smaller values passed for io. No functional
change.
2002-03-01 07:19:29 +00:00
scw fc673fcd59 Missed this file when adding mvmeppc port. 2002-02-28 21:54:42 +00:00
thorpej 1addb1955a Default to telling the MI PCI code that rd/line, rd/mult, and wr/inv
commands are OK.
2002-02-28 21:48:05 +00:00
leo 18dfb594ff These were created by accident (typo), hope this removal does what I
expect from the man-page...
2002-02-28 20:08:18 +00:00
uch f21c737967 Catch up with the latest vrip changes. 2002-02-28 18:26:05 +00:00
uch b94c8137ab cpu_reset:
Set EXPEVT to 0x20(manual reset) before jump to reset vector.
2002-02-28 18:18:51 +00:00
uch bbcdfc2583 Use sh3/intcreg.h macro instead of immediate. 2002-02-28 18:17:29 +00:00
thorpej f711992b7f Add options GATEWAY. 2002-02-28 17:54:56 +00:00
uch 9c21656766 cpu_dumpconf, reserve_dumppages, dumpsys, cpu_reset are moved to sh3/sh3_machdep.c 2002-02-28 16:54:28 +00:00
uch f52cc0a5e4 Fix comment to reflect reality. 2002-02-28 16:52:46 +00:00
simonb 4324f37586 Use "#define<tab>". 2002-02-28 03:17:23 +00:00
uch 74680cb1cd change define _ -> PRINT 2002-02-28 01:59:51 +00:00
uch 6ece4e10f0 Remove #if 0 #endif 2002-02-28 01:58:53 +00:00
uch 2e904b2d1e s/MMEYE_NO_CACHE/CACHE_DISABLE/ 2002-02-28 01:58:18 +00:00
uch bbc655c4fb Cleanup register definition 2002-02-28 01:56:57 +00:00
uch 40382c6556 Change foo_r0_r1 macro in sh3/locore.h to foo(Rn, Rm) 2002-02-28 01:53:42 +00:00
uch 06fbd079f5 Remove unneeded header. 2002-02-28 01:52:28 +00:00
scw bd9412df1c Oops, replace this with a (very) slightly modified version of prep's
intr.h instead of a remnant of my original hacking where it was based
on sandpoint's.
2002-02-28 00:27:38 +00:00
scw eb06a2e443 Nuke a file which should not have been commited. 2002-02-28 00:02:26 +00:00
scw f179ae8cce Get in sync with include files. 2002-02-27 21:55:44 +00:00
scw 509f6019ae Add entry for mvmeppc. 2002-02-27 21:33:46 +00:00
scw 4c447e5383 New port: NetBSD/mvmeppc
Based mostly on NetBSD/prep at this time since the earlier mvme160x
boards are pretty much PReP compliant. Later boards in the range
diverge somewhat from the reference platform, hence the separate port.

Still needs *lots* of bashing into shape, but at this time it will
boot to multi-user over ethernet on an MVME1603-051.
2002-02-27 21:02:12 +00:00
leo f70bec2792 Also visit the file2swp subdir. 2002-02-27 20:29:14 +00:00
leo 927df39940 copy a file to a 'SWP' partition 2002-02-27 20:14:39 +00:00
pk f478419a29 Calling pmap_zero_page() (in #if DEBUG section) from pmap_bootstrap() hangs
an E250; comment it out.
2002-02-27 16:09:51 +00:00
simonb 06b7c00543 s/DEL_ZERO/DEV_ZERO/ 2002-02-27 06:51:57 +00:00
kleink 39a685458d Fix pastos & typoe. 2002-02-27 04:13:10 +00:00
matt 178af24f65 Add a comment to where we increment intr_depth to show that intstk+INTSTK
== intr_depth. (gag)
2002-02-27 03:27:14 +00:00
kleink ebb0f83c31 Sort. 2002-02-27 02:21:22 +00:00
rafal 929d489997 In _bus_dmamap_sync, only invalidate as much data as there is in the current
segment rather than invalidating the total map length for each segment.
2002-02-27 01:51:48 +00:00
christos e8116a8f5b - Use DEV_ constants, instead of documenting the numbers!
- Delete cdev_decl(mm); where appropriate, and other hand-crufting [hi powerpc!]
2002-02-27 01:20:51 +00:00
christos 6b030ee036 - define other DEV_ constants that the local port uses.
- delete cdev_decl(mm) since <sys/conf.h> does it.
2002-02-27 01:19:03 +00:00
jmcneill f876e538ae Add options (commented out) for disabling power hooks on the pms and pmsi
PS/2 mouse drivers.
2002-02-27 00:31:12 +00:00
kleink 5424a781c8 Upon reflection, use hexadecimal values for previous, which make the
segment/block/battable relationship far more obvious.
2002-02-26 23:56:52 +00:00
kleink 4218adb6c2 Move battable entries for I/O to their correct pseudo-segment offsets;
while BAT spills currently don't happen, it should be possible for the
handlers to find them at the expected address anyway.

XXX Why the PCI I/O and Memory spaces are being installed in the iBAT
XXX registers is beyond me.
2002-02-26 23:45:54 +00:00
eeh 1eb3484425 Fix PR# port-sparc64/13811: PCITAG_SETNODE() is defined using `x' insted of `t'.
from URA Hiroshi
2002-02-26 22:39:14 +00:00
tv b2ec8a78fc NEW_PIPE is no longer a configurable option (there's only PIPE_SOCKETPAIR,
inverted logic).
2002-02-26 21:44:29 +00:00
kleink 5e6a2be4e0 For the time being, add a wrapper around GENERIC causing the tlp driver
to match the on-board 21040, which the de driver has issues with.
2002-02-26 19:02:50 +00:00
kleink 9fcf8c7e63 Add platform support for the Motorola Ultra Plus and Ultra 60x boards.
Note that this currently matches only the boards built into Bull Estrella
systems, as Bull chose to change the board identification string whose
original content is not known at this time.
2002-02-26 16:09:14 +00:00
kleink 5eb5b37d22 Add the same probe fig leaf as in the mk48txx attachment to prevent
false positives.
2002-02-26 15:28:38 +00:00
simonb d9ab16ba2f Purge CLSIZE, CLSIZELOG2 and MCLOFSET.
Be consistant in the way that MSIZE, MCLSHIFT, MCLBYTES and NMBCLUSTERS
  are defined.
Remove old VM constants from cesfic port.
Bump MSIZE to 256 on mipsco (the only one that wasn't already 256).
2002-02-26 15:13:19 +00:00
simonb 9f5c966439 We are not a DECstation. 2002-02-26 12:45:24 +00:00
kleink f7a55f56d3 PIR is the same on 601. 2002-02-26 00:48:58 +00:00
kleink 326c1b225d Move the ext_intr() variant using the board interrupt vector register
into common code; it is not specific to the 6050, and in fact not even
specific to IBM-built hardware.
2002-02-26 00:30:10 +00:00
kleink 03cae416f5 Add an attachment for the MK48T18 RTC/NVRAM found on some Motorola boards. 2002-02-25 19:09:43 +00:00
ad 3f78ffdeca Argh, dont reference any wscons parts in files.dec yet. 2002-02-25 17:11:17 +00:00
kleink bc2fec2880 Typo in comments. 2002-02-25 16:18:19 +00:00
ad f89bb3064e Move the dz driver to dev/dec, since it can be shared with pmax. 2002-02-25 14:58:06 +00:00
kleink d5fe2ac32f Declare the id argument to pci_conf_hook(9) as pcireg_t, which is more
appropriate.
2002-02-25 00:34:13 +00:00
kleink 6805e97fff Make the logic for wildcarding the I/O address actually achieve its purpose. 2002-02-25 00:04:49 +00:00
thorpej c92241b420 Correct a comment. 2002-02-24 20:51:56 +00:00
leo fa1cc12897 Move some disk I/O and disklabel functions into the library. The code
mostly originated from aptck. Need an extra pass over aptck to cut out all
functionality now moved to the library...
2002-02-24 20:51:07 +00:00
thorpej 4af7d26f26 Fix a couple of comments. 2002-02-24 20:44:28 +00:00
thorpej 0a4bc3ccd5 This file is obsolete. 2002-02-24 20:32:40 +00:00
thorpej 39c165f331 Add support for relocating gzboot's .text out of flash and into
RAM (while still decompressing the image directly from flash).

This makes gzboot run a LOT faster.
2002-02-24 20:29:44 +00:00
dbj 5f15cedc89 solve polled adb keyboard problems with dropped keys and unsynced caps lock
by queueing polled keys.
2002-02-24 20:20:20 +00:00
uch 31ae0ac1e9 clean up Makefiles 2002-02-24 20:10:53 +00:00
uch 6bda0e36c3 use sh_clock_get_pclock() instead of PCLOCK. 2002-02-24 19:35:42 +00:00
thorpej d819468d64 Improve zlib error reporting. 2002-02-24 18:36:29 +00:00
uch 3c3da7bf57 _start -> start. 2002-02-24 18:24:15 +00:00
uch 693be1956c Move common exception vector and scheduler code to
sh3/sh3/exception_vector.S and sh3/sh3/locore_subr.S. exception
vectors are installed by sh_cpu_init().  machine/locore.S contains
kernel entry, interrupt handler, and some MD code.
2002-02-24 18:19:40 +00:00
uch 72589177e0 remove obsolete file. 2002-02-24 18:13:06 +00:00
is 3763cdd026 remove unused prototype (a duplicate with a typing error) 2002-02-24 15:20:05 +00:00
kleink 5410bbdb16 In order to support both indirect PCI configuration space access as well
as direct-mapped PCI configuration space access (such as implemented on
the IBM 27-82650 PCI Host Bridge), switch to a function vector based
PCI configuration space access implementation.  The appropriate PCI
chipset tag is provided by platform-specific code.
2002-02-24 13:19:06 +00:00
kleink 73cdf7f537 Get rid of cf_unit misuse. 2002-02-24 11:22:00 +00:00
kleink 5b6184e81b Upon reflection, really choose the right pseudo-segment for PCI memory space. 2002-02-24 10:58:41 +00:00
kleink 50838c01e1 Move battable entries for I/O to their correct pseudo-segment offsets;
while BAT spills currently don't happen, it should be possible for the
handlers to find them at the expected address anyway.
2002-02-24 10:56:54 +00:00
takemura 6df64c4e5e Make it compilable even if PCI wasn't configured. 2002-02-24 09:16:07 +00:00
thorpej ca1294612c Remove some globals defined in libsa. 2002-02-24 01:51:04 +00:00
matt 28b1aa2b30 Move .s files to .S files. (and .s.o rules in boot/Makefile.inc)
Put in register prefixes everywhere.
2002-02-24 01:04:23 +00:00
ad fab93c4a60 Reserve majors 101 and 102 for wsmux and wsfont. 2002-02-24 00:39:36 +00:00
matt 17a0652faf Change the default entry for ELF. 2002-02-24 00:17:42 +00:00
matt 6cad4b795d Upon further reflection, move udiv/urem to libkern and out of vax/vax. 2002-02-24 00:08:19 +00:00
matt 87806a826d Rename VAX kernel assembly source from .s to .S (the NetBSD standard) 2002-02-23 23:48:00 +00:00
gmcgarry 0166df69f5 Implement DIOCGDEFLABEL ioctl. 2002-02-23 21:55:25 +00:00
gmcgarry 49fd989e9b Unnecessary to cast splx() to void. 2002-02-23 21:54:31 +00:00
gmcgarry 562fb80d45 Make the keyboard attach printf a little less cryptic. 2002-02-23 21:53:25 +00:00
gmcgarry 5382848ec7 Recognise md as a valid root device. And since md disks don't get
device_register()'d, don't go looking on our device list for them.
Ramdisk kernel now boot.
2002-02-23 21:52:25 +00:00
gmcgarry 42abedb038 Trim down to 1.2MB ramdisk for booting on 4MB machines. 2002-02-23 21:48:08 +00:00
gmcgarry 19f1fd96ca Don't need printer support during installation. 2002-02-23 21:47:07 +00:00
gmcgarry 6a45dcbe5d Cleanup options for binary compatibility. HPUX and SUNOS are known to work. 2002-02-23 21:46:24 +00:00
gmcgarry feb0773e27 Support two-stage netboot. Is known to work on maxine, but problems
have been reported on 3min.
2002-02-23 21:43:57 +00:00
thorpej 0780eaaa32 Use bcopy() and bzero(), since the rest of libsa does. This means
we don't have to pull in memset() and memcpy() from libsa.
2002-02-23 20:48:14 +00:00
leo c3de71f0bf Fixup icu-code. It now works for both ISA and PCI. 2002-02-23 20:44:45 +00:00
thorpej 59f1dfe1c2 Don't need to provide zcalloc() and zcfree(); there are such routines
in libz.
2002-02-23 20:34:41 +00:00
thorpej 524d248b59 Fix the -DRELOC=... CPP flag. Add -DDYNAMIC_CRC_TABLE to shrink
the text (and, thus, the space taken up in flash) a bit.
2002-02-23 20:19:52 +00:00
briggs caaef6d0d0 Implement obio_bs_rr_1. 2002-02-23 19:55:34 +00:00
thorpej a91d5a1a99 Example Makefile and linker script for building a run-from-flash
gzboot image for the IQ80310 with room for 2M of compressed data.
2002-02-23 19:16:54 +00:00
thorpej c39065eb62 Add support for running directly out of flash:
* Require that the builder Makefile provide a linker script.
* After making sure the MMU is disabled, check to see if
  _etext == __data_start.  If not, then copy the .data contents
  into RAM.
* Put the stack in .bss.
2002-02-23 18:19:09 +00:00
thorpej 87de164ab4 Fix a silly bug in the propellor spinning code. 2002-02-23 17:25:32 +00:00
scw c4dbe1a160 Allow MD code to provide functions for reading/writing NVRAM/RTC
locations. If passed NULL, the old behaviour using bus_space_{read,write}_1()
is used. Otherwise, all access to the chip goes via the MD functions.

This is necessary for mvmeppc boards where the mk48txx NVRAM/RTC is not
directly addressable.
2002-02-23 17:18:54 +00:00
toshii 3676484136 Make KERNEL_VM_SIZE a little larger so that ubc_init doesn't fail from
ENOMEM.
2002-02-23 14:02:48 +00:00
toshii 5e0f2080c8 Remove a bogus pmap_map_entry call. 2002-02-23 13:58:10 +00:00
dbj c467951c58 turn on polling using cnpollc 2002-02-23 10:51:50 +00:00
dbj b97918f553 In adb_soft_intr, remove the packet from the queue before calling the
completion routine so that the completion routine can reentrantly
process the queue.  This happens, for example. when polling is turned
on by entering the debugger by keystroke.
2002-02-23 10:47:16 +00:00
thorpej d114b32f24 Add some nops after we enable the MMU, for good measure (enough for
the nops to be the prefetch'd insns when the MMU switch occurs).
2002-02-23 05:58:46 +00:00
thorpej f31f6affa9 Make sure the MMU is enabled after we switch to the new kernel
page tables (gzboot disables the MMU before it does its work).
2002-02-23 05:55:26 +00:00
thorpej 0fac1c42e9 gzboot -- boot a gzip'd kernel image. This is useful for booting
compressed kernel images from flash.

This needs more work, but is a good first-pass.
2002-02-23 05:41:14 +00:00
thorpej 1152fa21da Add some simple standalone device drivers for IOP310-based boards. 2002-02-23 05:12:01 +00:00
uch 43eee13717 fix comment. 2002-02-22 19:56:27 +00:00
uch b1b1f1117b NetBSD/sh3 common part of clock routine. 2002-02-22 19:55:33 +00:00
uch f3b1882035 print MMU infomation. 2002-02-22 19:46:34 +00:00
uch 45407e955f setjmp,longjmp are moved to sh3/locore_subr.S 2002-02-22 19:45:31 +00:00
uch f694c9fdd7 New NetBSD/sh3 clock framework.
+ hardclock source is moved from TMU1 to TMU0.
 + SH3/SH4 common kernel support.
 + PCLOCK estimation.
 + remove duplicated code.
2002-02-22 19:43:58 +00:00
kleink 67678b7c54 Handle the 601's Run Mode/Trace Exception. 2002-02-22 18:50:45 +00:00
thorpej 9d157337f4 Fix the "va" argument to pmap_map_entry() when mapping kernel_ptpt. 2002-02-22 18:25:08 +00:00
thorpej ac5d6ab89f Fix the "va" argument to pmap_map_entry() when mapping kernel_ptpt. 2002-02-22 17:26:36 +00:00
thorpej 37595cfcf8 Fix the "va" argument to pmap_map_entry() when mapping kernel_ptpt.
This happened to work in the IOP310 because the kernel runs VA==PA.
2002-02-22 17:23:13 +00:00
skrll 25133dd770 Pass the VA for kernel_ptpt as the VA to pmap_map_entry 2002-02-22 17:11:59 +00:00
simonb e19a9be04b Note that "addu $x, $y, $0" is a "move" only in 32-bit mode.
XXX: need to revisit this.
2002-02-22 16:18:36 +00:00
ad f5ba8920cf Note that INSECURE is needed for X with a px or pxg. 2002-02-22 16:17:23 +00:00
skrll 7590561ee1 Make sure the kernel_pt_table has the right physical to virtual address
mapping.
2002-02-22 15:57:38 +00:00
kleink 543f1e7a2d Handle the 601's Run Mode/Trace Exception as well. 2002-02-22 13:51:40 +00:00
briggs c31c5df13c Bumb NMBCLUSTER defaults to 2048 for GATEWAY and 1024 otherwise. These
match current powerpc defaults and are more reasonable for the current era.
2002-02-22 06:41:48 +00:00
thorpej 5164bca298 Also generate flat binary kernels for the IQ80310. 2002-02-22 05:07:46 +00:00
thorpej bb84e85802 Change pmap_map_entry() to work like pmap_map_chunk(): take a pointer
to the L1 table and a virtual address, and no pointer to the L2 table.
The L2 table will be looked up by pmap_map_entry(), which will panic
if the there is no L2 table for the requested VA.

NOTE: IT IS EXTREMELY IMPORTANT THAT THE CORRECT VIRTUAL ADDRESS
BE PROVIDED TO pmap_map_entry()!  Notably, the code that mapped
the kernel L2 tables into the kernel PT mapping L2 table were not
passing actual virtual addresses, but rather offsets into the range
mapped by the L2 table.  I have fixed up all of these call sites,
and tested the resulting kernel on both an IQ80310 and a Shark.
Other portmasters should examine their pmap_map_entry() calls if
their new kernels fail.
2002-02-22 04:49:19 +00:00
thorpej 77e3a89912 When reporting there is no VM map for a fault, also report the
faulting address.
2002-02-22 03:24:09 +00:00
thorpej 79738a99e9 Keep track of which kernel PTs are available during bootstrap,
and let pmap_map_chunk() lookup the correct one to use for the
current VA.  Eliminate the "l2table" argument to pmap_map_chunk().

Add a second L2 table for mapping kernel text/data/bss on the
IQ80310 (fixes booting kernels with ramdisks).
2002-02-21 21:58:00 +00:00
enami 60dccae121 Add RCS Id. 2002-02-21 08:23:31 +00:00