mark
47364b0c91
Use IPL_AUDIO for the interrupt priority.
1998-08-31 02:34:36 +00:00
mark
cdaa8d9c45
Further improvements to init_arm(). Use map_chunk() to map a number of
...
areas of the kernel including the text, data and bss.
1998-08-31 00:11:18 +00:00
mark
80d8aa6034
Remove a couple of redundant lines.
1998-08-31 00:08:11 +00:00
cgd
5fa7eee1ff
don't define __BUS_SPACE_COMPAT_OLDDEFS by default. As stated in
...
bus_space(9), if drivers want it (they shouldn't; easy to convert) they
can define it right before including bus.h. There's been a release since
the interfaces were (slightly) changed, and no code in the source tree
uses the old interfaces as far as I can tell.
1998-08-30 23:40:14 +00:00
cgd
3110e22945
use current bus_space interface names for barrier ops
1998-08-30 23:29:10 +00:00
mark
c4ae202098
Further improvements to init_arm(). Use map_chunk() to map a number of
...
areas of the kernel include the text, data and bss.
1998-08-30 23:19:37 +00:00
mark
45faa60d85
Added a new function map_chunk() used during init_arm() when setting up
...
the kernel page tables. map_chunk() replaces running a loop, calling
map_entry() and in addition where possible it will use L1 section mappings
or L2 large page mappings instead of L2 small page mappings in order to
reduce the TLB entried needed for the kernel.
1998-08-30 23:17:44 +00:00
mark
82661d453d
Define new PTE construction macros for L2 large small pages and L1
...
sections and define some of the other macros using the new ones.
Add more comments for various definitions in the file.
1998-08-30 23:15:14 +00:00
pk
4dbdab4423
Erase sparc_nam2blk[].
1998-08-30 21:54:25 +00:00
pk
88ab783b42
Define floppy device major number.
1998-08-30 21:53:35 +00:00
pk
fc313d9031
Nuke old getprop() function and put its successor in place.
1998-08-30 21:30:41 +00:00
pk
400208c8b7
getpropA() => getprop()
1998-08-30 21:27:32 +00:00
pk
6f2539f8a6
getpropA() => getprop().
1998-08-30 21:26:46 +00:00
eeh
26d2d906c7
Some more 64-bit cleanup. Now everything compiles.
1998-08-30 15:32:16 +00:00
lukem
cdf68a7fa3
a minor hack i've had locally for ages: if PCVT_CAPS_IS_CTRL is
...
defined, make the capslock key act like another control key.
1998-08-30 09:59:47 +00:00
eeh
acbd410040
Some more 64-bit ification and I think I finally fixed the vref() panic.
1998-08-30 02:12:02 +00:00
pk
fe6b9295a8
Adjust for some small changes in lsi64854 back-end driver.
1998-08-29 21:43:00 +00:00
pk
0a30d383a0
Sbus `esp' and `le' front-ends now attach in `sys/dev/sbus/files.sbus'.
1998-08-29 20:53:11 +00:00
pk
e4091cb757
Split `esp' driver and DMA engine into separate front-end files.
...
The Sbus front-ends have all been moved to `sys/dev/sbus', while
the `obio' front-ends remain here.
1998-08-29 20:49:35 +00:00
pk
1f0567dd53
Nuke unnecessary header files.
1998-08-29 20:38:38 +00:00
eeh
d581aadc3e
Some more 64-bit-ification.
1998-08-29 18:16:56 +00:00
mrg
08528c6bd2
remove unnecessary "extern int ncpus" (was also causing egcs warning)
1998-08-29 16:24:25 +00:00
mrg
892ab683dc
minor minor KNF nit.
1998-08-29 16:24:03 +00:00
mrg
06a7946b7d
register -> int or nothing & egcs warnings cleanup.
1998-08-29 16:21:20 +00:00
mrg
ac9132322e
minor minor KNF nit.
1998-08-29 16:16:37 +00:00
mrg
af81b233e1
remove unnecessary "extern int tickadj" (was also causing egcs warning)
1998-08-29 16:15:53 +00:00
mrg
6b1d637705
add "int" type to interrupt handler typedefs (egcs warning)
1998-08-29 16:15:11 +00:00
mrg
3d26a04acb
add "int" type to static tzops array (egcs warning)
1998-08-29 16:14:15 +00:00
mrg
ba1bba6844
register -> int (also fixes egcs warning). minor KNF nit.
1998-08-29 16:13:33 +00:00
mrg
ed88a6f103
add support for finding kernels other than `netbsd'. the list is:
...
netbsd, netbsd.gz, netbsd.old, netbsd.old.gz, onetbsd, onetbsd.gz
and vmunix, in that order. this is used by the bootable `bootfs'
image (suitable for floppies and cdroms), which contains a netbsd.gz
by default.
while i'm here, fix up `boot [device] -s' which got broke when
booting kernels with a - in their name was fixed..
1998-08-29 06:40:43 +00:00
mark
eff784066e
Don't discard the proc0_pt_pte mapping and make sure that the
...
proc0_pt_pte and proc_pagedir mappings are uncached.
1998-08-29 04:58:16 +00:00
mark
4a241e1fbd
Change KERNEL_BASE to VM_MIN_KERNEL_ADDRESS.
1998-08-29 04:08:12 +00:00
mark
9eb28e934b
Include sys/types.h instead of sys/param.h
...
Junk some un-needed includes and include cpu.h.
1998-08-29 04:05:44 +00:00
mark
ae7526d965
Removed some un-necessary includes.
1998-08-29 04:01:58 +00:00
mark
c611af7c7f
Change boot_path to boot_file and initialise to NULL along with boot_args.
1998-08-29 03:57:03 +00:00
mark
5898385f6b
Change boot_path -> boot_file and initialise to NULL along with boot_args.
1998-08-29 03:55:57 +00:00
mark
4ad81305d5
Initialise boot_args and boot_file to NULL.
1998-08-29 03:53:17 +00:00
mark
80b4f63e42
Updated for some reserved majors.
1998-08-29 03:28:17 +00:00
mark
af5eba9861
Implement address validation as a separate function db_validate_address().
...
Use this function to validate the page table entries for all reads and
writes.
1998-08-29 03:21:33 +00:00
mark
3e217a0157
Remove the definition of CURRENT_PAGEDIR_HOLE and CURRENT_PAGEDIR_BASE
...
as they are no longer reference.
Move ALT_PAGE_TBLS_BASE from 0xf3c00000 to 0xf0c00000.
Increase the size of the KERNEL_VM_SIZE by 16MB now that 0xf3xxxxxx is free.
1998-08-29 03:19:55 +00:00
mark
22a3c54923
Use KERNEL_VM_SIZE to calculate the number of page tables needed for
...
the kernel data area.
Don't map the proc0 L1 page table into the L2 page tables space.
1998-08-29 03:17:27 +00:00
mark
99bb4b6b6b
Rewritten pmap_pte() not to use the mapping of the L1 page table within
...
the L2 pages tables (CURRENT_PAGEDIR_HOLE).
Don't map the L1 page table into the L2 page table space any more (easy
reference hack) in pmap_allocpagedir().
1998-08-29 03:14:14 +00:00
mark
66074cf792
Use VM_MAX_KERNEL_BUF only to limit nbuf and not bufpages.
1998-08-29 03:09:14 +00:00
dbj
12107a5187
Updated many of the pmap files to use current versions from the
...
mvme68k port. The next68k port now uses MACHINE_NEW_NONCONTIG.
1998-08-28 23:05:53 +00:00
dbj
abbb6f13e3
Added some machine probing information to console printouts.
1998-08-28 22:56:08 +00:00
dbj
fa906c926a
added a flag to disable the NEXT_SLOT_ID_BMAP for testing the turbo machines
1998-08-28 22:53:47 +00:00
dbj
a96195b5fd
added -Wno-main if USE_EGCS is defined
1998-08-28 22:50:54 +00:00
dbj
a538dbbf21
Moved initialization of vbr, and removed default machine configuration
...
varaiables to debug probing on the turbo machines.
1998-08-28 22:47:12 +00:00
thorpej
4b7b605d84
Use the "nointr" pool page allocator for pmap_pmap_pool.
1998-08-28 22:22:48 +00:00
thorpej
d1f73558ff
Use the "nointr" pool page allocator for pmap_pmap_pool.
1998-08-28 21:58:29 +00:00
pk
8e0c62893c
Remove cache flush from dma_espintr(); the bus dma routines take care
...
of that now. Hence we no longer need <sparc/cpuvar.h>.
1998-08-28 20:14:36 +00:00
pk
ca868d7da6
Specify our boundary restriction when allocating DMAble memory.
1998-08-28 20:07:52 +00:00
mark
808c0cca58
Fix bug with zeroing kernel page tables that I introduced yesterday.
1998-08-28 20:04:35 +00:00
pk
221a000391
Pass on bus_dma*() aligment and boundary arguments.
1998-08-28 20:02:19 +00:00
thorpej
f369f261d1
Fix a debug printf.
1998-08-28 19:22:50 +00:00
mark
1cb7a16aed
Fix typo. The page table allocation loop in initarm() should be
...
<= NUM_KERNEL_PTS rather than < NUM_KERNEL_PTS.
1998-08-28 17:15:45 +00:00
pk
f6a208ce6b
Nuke Dprintf; fix formats.
1998-08-28 08:57:38 +00:00
thorpej
70b6acd9df
Use NFS_BOOT_BOOTPARAMS until we change the boot program to use DHCP
1998-08-28 04:56:15 +00:00
mark
25ae95328f
Use kernel_pmap->pm_pdir instead of PAGE_DIRS_BASE when mapping podule
...
space.
1998-08-28 03:19:34 +00:00
mark
17dcbf485c
More reworking in initarm().
...
Further cleanup and simply the allocation and mapping of the kernel
pagetables and static data pages.
Removed the page directory page table as it is no longer necessary.
Changed the allocation of the proc0 L1 page table and L2 page table
that maps the page tables to map these pages into kernel virtual
address space.
Updated for pv_addr_t argument changes to pmap_bootstrap().
1998-08-28 02:58:41 +00:00
mark
133f5c93f0
Updated for pmap_bootstrap() argument change. Modify ofw_configmem()
...
to obtains pv_addr_t structures for the proc0 L1 page table and the proc0
pagetable that maps page tables.
Use the virtual address from the pv_addr_t structure for the proc0 L1 page
table when calling pmap_bootstrap rather than relying on a special mapping
at PAGE_DIRS_BASE.
Modify ofw_construct_proc0_addrspace() for similar changes to
ofw_configmem().
Remove the kernel_pde page table in ofw_construct_proc0_addrspace() as it
it now longer needed.
1998-08-28 02:52:37 +00:00
mark
1ca0ef8cae
Modify the arguments to pmap_bootstrap() to take a pv_addr_t structure
...
for the page table to map kernel pagetables (kernel_ptpt). This means
that the pm_vptpt field is now valid for the kernel_pmap.
Use constants from vmparam.h in pmap_allocpagedir().
1998-08-28 02:46:51 +00:00
pk
7e95972ed1
Add `audiocs' ("SUNW,CS4231") and `en' ("ENI-155s").
1998-08-27 20:56:44 +00:00
tv
6baebf57c6
Nuke egcs warns: void main(), implicit int
1998-08-27 12:20:51 +00:00
mrg
713a7dc9c3
oops, remove old isp attachment here..
1998-08-27 11:47:12 +00:00
mrg
396330e186
remove sparc64 "options BUS_DMA" -- it is now standard
1998-08-27 11:43:14 +00:00
mrg
82571f5403
move isp sbus attachment to dev/sbus
1998-08-27 11:41:24 +00:00
mrg
bd85d62257
move isp sbus attachment to dev/sbus and support it on the sparc64
1998-08-27 11:40:06 +00:00
scottr
f8a4876874
Add on-board video information for the LC III, and a guess
...
at the LC II based on similar machines mentioned in the dev note.
1998-08-27 07:31:34 +00:00
eeh
a465fdedc6
Add 64-bit pmap support:
...
Moved from a two level 512/1024 entry setup mapping 32 (9/10/13) bits
respectively to a three level 1024/1024/1024 entry setup mapping 43
(10/10/10/13) bits. In 32-bit mode we waste about 1/12 pages mapping the high
11 bits. We also only manage 43 of the possible 44 bits of virtual address
space, wasting half of it. Oh well, maybe we'll do better next revision.
1998-08-27 06:23:31 +00:00
mark
c5695ed630
Centralize the definition of pv_addr_t to pmap.h
1998-08-27 04:00:53 +00:00
mark
af91a82f1e
Remove pv_addr_t and systempage declarations.
1998-08-27 03:58:10 +00:00
mark
e7a61c9984
Centralise the definition of the pv_addr_t structure.
1998-08-27 03:55:06 +00:00
tv
7308faf67b
"COMPAT_11 + COMPAT_12 + COMPAT_13" doesn't work - these are based on
...
definition, not 1 or 0. Also, since all pre-1.4 releases require
COMPAT_13 (not just 1.3 binaries), just "#ifdef COMPAT_13".
1998-08-26 14:51:57 +00:00
dante
df94d3f4f5
Add AdvanSys SCSI controller
1998-08-26 14:27:44 +00:00
augustss
c5b4ddc051
Add more opl attachments.
1998-08-26 13:37:49 +00:00
mrg
a40fb261e6
deal with no DDB
1998-08-26 12:41:47 +00:00
mrg
446bcd99d6
panicstack: is needed outside of DEBUG. use _C_LABEL, and printf not db_printf (incase no ddb!)
1998-08-26 12:37:35 +00:00
augustss
9deb19798f
Add OPL driver.
1998-08-26 12:10:57 +00:00
tsubai
a890d2dd7f
Add MD DELAY and spl routines to fit Nisimura's change.
1998-08-26 12:07:21 +00:00
tsubai
1c3e72cd0e
Back out previous change.
1998-08-26 11:44:06 +00:00
mrg
8912df90bf
fix missed sparc -> sparc64
1998-08-26 10:36:42 +00:00
mrg
e791891d53
- use UVM by default.
...
- clean up the Makefile a bit to be less solaris-centric :)
- add support for compat_sparc32 (32bit compat module for NetBSD/sparc). this
isn't yet fully tested but it mostly written and compiles if not totally
links yet.
1998-08-26 10:31:36 +00:00
augustss
76567c8213
Remove ad1848 attribute; it's in conf/files now.
...
(Why don't we remove the XXX hack in this file?)
1998-08-26 09:32:24 +00:00
mrg
8ea67882ab
make this actually work
1998-08-26 09:09:31 +00:00
mrg
be25ea2fb5
put pmapdebug usage inside #ifdef DEBUG
1998-08-26 07:55:10 +00:00
sakamoto
4fa399d4db
vm_offset_t -> {paddr_t,vaddr_t}, vm_size_t -> vsize_t
1998-08-26 04:54:17 +00:00
thorpej
7cfa6e0972
Always use pmap_kremove() if removing a mapping from the kernel pmap.
1998-08-25 23:09:08 +00:00
mark
47e470f2af
Use UVM as standard.
1998-08-25 22:07:46 +00:00
mark
34f8ef18c9
Updated for changes to some of the constants defined in vmparam.h
...
Simplified serveral parts of the initarm() to make the code clearer and
modified parts of initarm() as part of an on-going effort to abstract
out part of initarm() on various machines.
1998-08-25 22:03:07 +00:00
mark
61bd706797
Include machine/vmparam.h
1998-08-25 21:56:14 +00:00
mark
bd14bb41f0
Define KERNEL_PD_SIZE in terms of various constants defined in vmparam.h
1998-08-25 21:55:06 +00:00
mark
cda0e37703
Collect various kernel constants together and define them in all one
...
place (some moved from param.h)
Define several constants such as page table addresses in terms of other
constants.
Increase some of the limits :
MAXTSIZ 8MB -> 16MB
DFLDSIZ 16MB -> 128MB
MAXDSIZ 256MB -> 512MB
DFLSSIZ 512KB -> 2MB
1998-08-25 21:53:37 +00:00
mark
4e8239cdca
Removed a number of kernel constants as they have moved to vmparam.h
1998-08-25 21:50:54 +00:00
thorpej
b42b94b608
Shave yet more translation ops from the inner loops of pmap_protect().
1998-08-25 18:21:17 +00:00
ragge
218681f3e5
Kernel stach should be 4K, not 32K. Increase MCLSHIFT to 11.
...
Remove ovbcopy().
1998-08-25 17:35:23 +00:00
matthias
fb5e3aef9b
For the pc532 MACHINE (pc532) isn't equal to MACHINE_ARCH (ns32k) but there
...
is no sys/arch/ns32k.
1998-08-25 11:52:26 +00:00
thorpej
2fa5652849
Break the code that cleans out page tables from pmap_remove_mapping() into
...
separate functions that perform the cleanout starting at the l3pt, l2pt,
or l1pt.
1998-08-25 09:00:19 +00:00
pk
af5a3e52a5
yanko
1998-08-25 08:28:53 +00:00
thorpej
33caa59da3
Optimize the pmap_protect() loop. Will make a similar change to pmap_remove()
...
once some changes are made to how pt pages are cleaned up.
1998-08-25 08:00:15 +00:00