Commit Graph

1361 Commits

Author SHA1 Message Date
mark 46f166f090 Cleaned up the map_entry*() functions.
Removed register keywords.
Tidied up printf format strings.
Removed a number of blank lines.
1998-09-05 01:23:04 +00:00
mark a21a7644df Rip out a load of junk thats long past its "best before" date. 1998-09-05 01:18:19 +00:00
mark ec1dae5a9d Only build modedefs.c if MONITOR is defined. 1998-09-05 01:16:17 +00:00
mark 9ad228e3bc Update MINIROOTSIZE option. 1998-09-05 01:14:43 +00:00
mark 7115a4f53e Updated several comments and acknowledgements. 1998-09-05 01:12:14 +00:00
mark 218bf90f49 Nuke register keywords. 1998-09-05 01:09:42 +00:00
mark e6aee6549e Updated for recent driver additions and reservations. 1998-09-05 01:06:38 +00:00
mark 3a01450f20 Bring up to date. 1998-09-05 01:04:48 +00:00
mark 323528d86f Integrate another one of Neil Carson's pmap improvements.
Use pmap_clean_page() in pmap_remove_all() to improve cache cleaning
efficiency.
1998-09-03 03:31:53 +00:00
cgd 8bbc38a130 avail mem is calculated ptoa(uvmexp.free), not ptoa(uvmexp.free - bufpages),
like on other ports.  uvmexp.free is already adjusted by the uvm_pagealloc
calls used to get the buffer pages.  (reported by mrg)
1998-09-02 00:03:05 +00:00
mark 0c11c52fc1 Added csc device. 1998-09-01 02:28:04 +00:00
mark 1c13966ceb Add csc device and scsibus attachment. 1998-09-01 02:27:21 +00:00
mark edb737d09d Initial commit of a Cumana SCSI II driver using the sfas chip driver. 1998-09-01 02:24:11 +00:00
mrg 478a07de87 generate dependancies from genassym.cf 1998-09-01 01:48:21 +00:00
mrg 1fe0874746 use genassym.sh/.cf rather then the C program. 1998-08-31 06:52:18 +00:00
mark 0e533ae4c7 Use IPL_AUDIO for the interrupt priority.
KNF.
1998-08-31 02:36:11 +00:00
mark bd75906989 Use IPL_AUDIO for the interrupt priority.
Cleaned up some comments and removed several un-necessary includes.
1998-08-31 02:35:31 +00:00
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
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
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
mark 808c0cca58 Fix bug with zeroing kernel page tables that I introduced yesterday. 1998-08-28 20:04:35 +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
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
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
augustss 9deb19798f Add OPL driver. 1998-08-26 12:10:57 +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
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