thorpej
af66038f73
Merge the thorpej-mips-cache branch onto the trunk. This is an
...
overhaul of how caches are handled for NetBSD's MIPS ports.
2001-11-14 18:15:10 +00:00
thorpej
b1ec255377
Add a "firstbus" argument to pci_configure_bus(), indicating the
...
first bus number to use, rather than always assuming that we should
start at bus #0 .
2001-11-09 19:29:12 +00:00
thorpej
6fd8d278ed
pci_conf_interrupt() takes bus/dev/pin, not bus/dev/func.
2001-10-29 23:33:42 +00:00
thorpej
90a2bc2cf7
For MIPS kernel Makefiles, don't set ENDIAN in std.${MACHINE}. Instead,
...
explicitly set MACHINE_ARCH to the appropriate thing. Makefile.mips will
then set all of the internal variables it needs to accordingly.
2001-10-23 20:40:00 +00:00
simonb
e1f5fbd944
Fix a tyop in a comment.
2001-10-20 13:47:09 +00:00
simonb
d9e75e198e
Fix typo in mmap hander.
2001-10-20 05:56:35 +00:00
simonb
cfd067b21b
One copy of <sys/conf.h> will be enough.
2001-10-03 13:14:02 +00:00
chris
0e7661f023
Update pmap_update to now take the updated pmap as an argument.
...
This will allow improvements to the pmaps so that they can more easily defer expensive operations, eg tlb/cache flush, til the last possible moment.
Currently this is a no-op on most platforms, so they should see no difference.
Reviewed by Jason.
2001-09-10 21:19:08 +00:00
simonb
a41b7a380e
Clean up and standardise across MIPS ports.
2001-09-09 04:20:25 +00:00
thorpej
81bcece4d4
Implement bus_space_mmap().
2001-09-04 16:32:42 +00:00
simonb
c91e08563f
Clean up.
2001-09-04 06:26:18 +00:00
simonb
62fb390c64
May as well include <mips/cpuregs.h> in <mips/cpu.h> once rather than
...
in every MIPS port's <machine/cpu.h>.
2001-09-04 06:23:15 +00:00
simonb
214f5366ea
Centralise struct cpu_info declaration and related info to <mips/cpu.h>.
2001-09-04 06:19:21 +00:00
simonb
a6b8c86af0
Remove an unneeded comment; ``sync'' with other "just include <mips/foo.h>"
...
files.
2001-08-31 03:53:22 +00:00
simonb
4ac4da1c52
G/C the unused kernel-only CLK_TCK #define.
...
XXX: does include/time.h still need <machine/limits.h>?
2001-08-31 03:46:03 +00:00
simonb
bcdac55add
Fix the display of the CPU clock speed.
2001-08-24 02:11:01 +00:00
simonb
8375df5b6a
Whitespace nits.
2001-08-24 02:07:34 +00:00
thorpej
15dcb4a98e
Link the kernel at 1MB.
2001-08-22 19:44:47 +00:00
thorpej
9f019df56f
Allow a keypress on the console to transition from "halted" to "returning
...
to monitor".
2001-08-22 19:13:09 +00:00
thorpej
f0ea5cb1e9
Don't need to do the Alpha boot block checksum here :-)
2001-08-22 17:53:44 +00:00
thorpej
17c22a634f
Set PCI_NETBSD_ENABLE_IDE to 0x01, so that the first IDE channel
...
will be enabled.
2001-08-22 00:42:43 +00:00
thorpej
f5e6f05c1a
If PCI_NETBSD_ENABLE_IDE is set, enable the PIIX{3,4} southbridge
...
IDE channels on the P-5064 and P-6032, since PMON doesn't do it
for us (thus causing the `pciide' driver to ignore them).
2001-08-22 00:40:38 +00:00
wiz
ef8d715888
bzero -> memset
2001-07-22 15:11:01 +00:00
thorpej
babefc5331
Add BUS_DMA_READ and BUS_DMA_WRITE flags, that hint the back-end
...
at dmamap load time that the mapping will be used for a unidirectional
transfer of the specified direction.
2001-07-19 15:32:10 +00:00
tsutsui
df016928f8
Remove (commented out) ncr* at pci? lines.
2001-07-07 17:09:47 +00:00
thorpej
7a1408c38b
Deal with different `memsize' convention on new PMON revs.
2001-06-25 21:25:07 +00:00
thorpej
498641fc7e
Print more BONITO rev. info.
2001-06-25 20:15:57 +00:00
thorpej
2a171eff3a
Correct a typo.
2001-06-22 14:29:12 +00:00
thorpej
3ae8717568
Add commented-out examples for how to use MEMSIZE and ETHADDR options
...
in the event that you need them (really old PMON versions). Add FDESC.
Comment out SCSI-related stuff until I work out why the system goes into
outer orbit when its enabled.
2001-06-22 14:15:56 +00:00
thorpej
04986e1e9a
Add FDESC.
2001-06-22 14:14:16 +00:00
thorpej
306b1b09bc
Kernel config file for a P-6032.
2001-06-22 14:12:19 +00:00
thorpej
36a4b627d0
Sigh, Jason needs to go to sleep.
2001-06-22 07:00:25 +00:00
thorpej
32e780695d
Add a couple of missing p6032 bits.
2001-06-22 06:50:21 +00:00
thorpej
0c37c9e860
Check in work-in-progress of P-6032 support. This is not tested,
...
but is meant for back-up purposes.
2001-06-22 06:02:54 +00:00
thorpej
7f047ac2b2
Use the other DMA window (with prefetch enabled) on the P-4032
...
on-board Ethernet. Suggested by Nigel Stephens <nigel@algor.co.uk>.
2001-06-22 05:57:26 +00:00
thorpej
b440db94e8
Fill in one P-6032 snippet.
2001-06-22 04:33:26 +00:00
thorpej
e4ce5f4268
A P-6032 will never have a V3 PBC -- don't include its option header.
2001-06-22 03:45:24 +00:00
thorpej
b5443137f0
Only call through the function pointer if it's not NULL.
2001-06-22 01:42:20 +00:00
thorpej
1ce7119f17
More ISA interrupt rototilling. I get *some* interrupts on a:
...
we1 at isa0 port 0x300-0x31f iomem 0xcc000-0xcffff irq 10
we1: WD8013WC Ethernet (16-bit)
we1: Ethernet address 00:00:c0:94:f6:72
...but still nothing on the PCIC.
2001-06-21 19:00:18 +00:00
thorpej
e0901dc354
Fix whitespace botch.
2001-06-21 18:58:18 +00:00
thorpej
cc6c89106a
Correct the ISA bridge irqmap.
2001-06-21 06:24:23 +00:00
thorpej
f341043437
Rototill ISA interrupt code. In particular, I have remembered most
...
of the horror that is the 8259 PIC.
PCMCIA interrupts still not working yet, but getting closer.
2001-06-21 05:20:54 +00:00
thorpej
e51a043945
Yet more interrupt cleanup -- the platform mater interrupt establish
...
function now just takes an "irq", which is an index into the irqmap
table for that platform.
2001-06-15 04:01:39 +00:00
thorpej
1d161cd563
Correct a comment.
2001-06-14 19:03:43 +00:00
thorpej
fe87c9aade
When the old PCI address map is in use, disable I/O space. Also disable
...
I/O space on PBC revs < B2.
2001-06-14 18:52:26 +00:00
thorpej
0ddf0d259b
Don't use BUS_END to compute SYS_END.
2001-06-14 18:48:23 +00:00
thorpej
80dfaa3e5a
Read the PCI memory space base and the PCI DMA window base from the
...
V3 PBC, and use them in the bus mem tag and the bus dma tag on the
P-4032. This allows us to get much further when PMON has configured
the PBC using the old-style PCI address map.
2001-06-14 17:57:26 +00:00
thorpej
4c73c770ce
Add MEMSIZE and ETHADDR options, so that they can be set in
...
the kernel config file, in case you have a buggy PMON which
doesn't provide the environment variables to the kernel.
2001-06-14 16:14:37 +00:00
thorpej
defcaa8bcb
Initlialize PMON after configuring the console, so we can see
...
debugging info.
2001-06-14 15:29:23 +00:00
thorpej
587d3ec2b4
Insert some debugging code, conditional on PMON_DEBUG.
2001-06-14 15:28:56 +00:00
thorpej
3bad583046
Oops, use the correct space tag when unmapping the RTC on the
...
P-4032 after calibrating the clock.
2001-06-14 05:58:19 +00:00
thorpej
7e59a1be7a
No longer need MIPS3_5200 here.
2001-06-12 22:32:50 +00:00
thorpej
be7629b7e0
Hand off intr evcnt responsiblity in a reasonable way on the 5064.
2001-06-10 09:28:26 +00:00
thorpej
7c074dc806
Check in work-in-progress of generic ISA interrupt support. The
...
goal here is to get the P-5064 PCMCIA slots working, and serve as
the basis for P-6032 interrupt support.
PCMCIA interrupt auto-detection not working -- more work to be
done here.
2001-06-10 09:13:06 +00:00
thorpej
82418a77b0
Add PCMCIA devices.
2001-06-10 08:45:09 +00:00
thorpej
1930cfd7dc
Correct for a data structure change.
2001-06-10 06:17:15 +00:00
thorpej
ce66bf0803
Rewrite the interrupt handling code:
...
- Compute the number of CPU pipeline cycles per second using the
mc146818.
- Use the COMPARE interrupt for the hardclock interrupt.
- Collapse all interrupt priorities into a single priority, and use
the CPU interrupt inputs to determine the interrupt source (local
device, PCI device, ISA device, etc.)
This allows us to have interrupt sharing.
2001-06-10 05:26:58 +00:00
thorpej
0e82abb5de
Add MIPS3_5200.
2001-06-10 05:02:33 +00:00
simonb
e5bd00e48d
For ports that wire up pciide in compatibility mode, have
...
them define __HAVE_PCIIDE_MACHDEP_COMPAT_INTR_ESTABLISH
in pci_machdep.h and pciide_map_compat_intr() only calls
pciide_machdep_compat_intr_establish() if that preprocessor
define exists.
Ports that don't need to do this no longer need to supply a
dummy function.
2001-06-08 04:48:54 +00:00
thorpej
2b5df8b7ff
vm_page_t -> struct vm_page *
2001-06-01 19:52:54 +00:00
thorpej
71cb790fb5
Add support for the Algorithmics P-4032 board. This is totally
...
untested, since I have no P-4032 board, but it's no worse than
the current situation, which is "totally non-working P-4032
support in the ARC port, of all places".
2001-06-01 16:00:03 +00:00
thorpej
23a3dc1508
If a bus doens't want to use an extent, don't force it to.
2001-06-01 15:57:31 +00:00
thorpej
356699e86b
Fat-trimming.
2001-06-01 15:30:11 +00:00
thorpej
c702830c42
The P-4032 has no ISA bridge/bus, so remove all P-4032 conditionals.
2001-06-01 15:20:06 +00:00
thorpej
f4f6c1dd1c
Enable SCSI.
2001-06-01 03:53:29 +00:00
nisimura
1f4f9ae5c2
Fix minor typos.
2001-05-31 07:24:23 +00:00
enami
299159546d
s/Alpha/MIPS/ in comment.
2001-05-31 02:20:55 +00:00
lukem
d84d2c6c85
add missing #include "opt_kgdb.h"
2001-05-30 15:24:23 +00:00
mrg
67afbd6270
use _KERNEL_OPT
2001-05-30 11:57:16 +00:00
thorpej
f0c1fb1bb2
Initialize DDB at boot time and break into it if the "d" argument
...
is specified to the kernel.
XXX PMON doen't load symbols for us -- need a dbsym(1) for ELF.
2001-05-29 18:40:25 +00:00
thorpej
f2800b2299
Don't have conf.h (pasto).
2001-05-28 23:25:25 +00:00
thorpej
9d8dc820a8
Forgot bsd.kinc.mk
2001-05-28 22:34:25 +00:00
thorpej
af63f8979c
D'oh, clear the soft interrupt bits in CAUSE *before* servicing
...
soft interrupts, rather than after, so that soft interrupts scheduled
by other soft interrupts don't get lost.
2001-05-28 18:19:27 +00:00
thorpej
16b9c60621
A port to the Algorithmics MIPS evaluation boards. We currently
...
support the P-5064, which has a QED RM5xxx CPU soldered on.
There is some skeletal support for the P-4032 (an older board, which
had an R4xxx CPU). There are some placeholders for the P-6032, which
is their newest board, but no real code yet (the P-6032 has a different
PCI controller, the Algorithmics BONITO).
There are still some (apprently softintr-related) problems with the
algor kernel, but it works well-enough to self-host.
Kudos to Allegro Networks for loaning me a P-5064 board on which to do
the port.
2001-05-28 16:22:13 +00:00