thorpej
d8ab0d1e84
Remove unused extern decls.
2002-04-03 21:06:21 +00:00
thorpej
6d66c469bf
Add a comment summarizing the post-ARM3 CP15 registers.
2002-04-03 19:57:48 +00:00
thorpej
7739f7410a
Always provide kernel_text.
2002-04-03 17:30:50 +00:00
reinoud
9fc5cf5824
Fix the mmap'ing of the screen memory. The way it was implemented
...
completely sucked... I wonder how it was even working (....)
Thanks to Jason for pointing out the problem.
2002-04-03 16:03:50 +00:00
reinoud
943880cea2
Rototil and fix the pmap_extract function. It wouldn't even return data
...
when the part being quiried was mapped with a section (!) giving weird
results and had become a mess of goto's.
Complete rewrite and cleaned up the `goto'-jungle entirely ... ripped all
goto's. The resulting code is much better to read and might even have a
small performance gain.
2002-04-03 15:59:58 +00:00
reinoud
d6a3919c2c
In analogy to L2_LPAGE_SIZE add L2_SPAGE_SIZE ....
2002-04-03 00:46:53 +00:00
lukem
d213d804f7
Rename MEMORY_DISK_SIZE (formerly MINIROOTSIZE) to MEMORY_DISK_ROOT_SIZE,
...
which was suggested by Izumi Tsutsui <tsutsui@ceres.dti.ne.jp> as
being more consistent with what it's controlling...
2002-04-02 05:30:34 +00:00
reinoud
d1f811363a
Only include the vidc_machdep.h file when we're compiling the kernel
2002-03-30 17:10:31 +00:00
thorpej
243dc1d498
Rename the ARM sysarch calls from arm32* -> arm*
2002-03-30 06:23:39 +00:00
thorpej
863afc5d41
Fix a printf format.
2002-03-29 00:48:58 +00:00
thorpej
6ce299c3d3
Use write-back caching on the Verde.
2002-03-28 16:47:49 +00:00
thorpej
70fbd8fba7
Fix soft interrupts.
2002-03-28 03:19:31 +00:00
thorpej
0b109cd060
iwin_base_lo is a BAR value; make sure to mask off the non-address
...
bits when using it.
2002-03-27 23:17:03 +00:00
thorpej
f536211623
Basic support for the Intel i80321 I/O Processor (Xscale core).
...
Note: This is a snapshot of work-in-progress; there are still some
bugs to be shaken out.
2002-03-27 21:45:47 +00:00
thorpej
c915b880c5
The 80321 manual lies; it does have a CPU ID distinct from the 80200.
...
Add that CPU ID, and add a case for it.
2002-03-27 01:34:47 +00:00
thorpej
41f47f03e7
Restructure a few things in order to support other XScale core
...
I/O processors:
* The i80200 and the i80321 have the same CPU ID, so split the
CPU_XSCALE option into CPU_XSCALE_80200 and CPU_XSCALE_80321
options, and don't let them both be defined at the same time.
XXX May want to revisit this in the future.
* Split some registers common between the i80200 and i80321 into
<arm/xscale/xscalereg.h>.
* Rename a few existing functions.
2002-03-26 19:29:44 +00:00
thorpej
3964313f67
Fix reporting of the kernel virtual address space range to UVM.
2002-03-25 22:11:12 +00:00
thorpej
a2a309d02a
* Some cleanup.
...
* Delete the call to pmap_copy() in pmap.h
2002-03-25 19:53:38 +00:00
thorpej
b17e7a03c2
Clean up pmap_map_ptes() and pmap_unmap_ptes() a little, and add
...
a debug assertion that curproc is never NULL if mapping a non-current
pmap.
2002-03-25 17:50:12 +00:00
thorpej
a2d8f71d01
The target page of pmap_zero_page(), pmap_pageidlezero(), and
...
pmap_copy_page() will never have any mappings. Therefore, it
is unnecessary to do a cache clean for that page.
Add assertions in #ifdef DEBUG that assert this invariant.
This shaves some cycles off the frequently-called pmap_zero_page()
and pmap_copy_page() (no need to look up the dst page's vm_page
structure, and one less function call to clean the page).
2002-03-25 17:33:26 +00:00
thorpej
75cb2c6554
* Clean up some comments/whitespace.
...
* Don't construct a fake trap frame and pass it to main(); that hasn't
been needed for some time.
* panic if main() returns.
2002-03-25 16:58:18 +00:00
thorpej
a61914be93
Garbage-collect fetchuserword(); nothing uses it any more.
2002-03-25 16:32:55 +00:00
thorpej
dbe6d8291b
* Fix use of pmap_curmaxkvaddr.
...
* Use the PTP hint in the pmap.
2002-03-25 04:51:19 +00:00
thorpej
8500c97458
Move some private pmap data structures into pmap.c
2002-03-25 03:00:28 +00:00
thorpej
c93e4f6940
Tidy a few things up.
2002-03-25 02:51:32 +00:00
thorpej
a9cba12f54
Correct the comment describing the layout of the VM space. In
...
particular, don't describe a recursive PTE mapping, since the ARM
port doesn't (and can't) use one.
2002-03-25 02:44:07 +00:00
thorpej
da2944b10e
In the Prefetch Abort handler, just do the uvm_fault() dance
...
directly, rather than doing a data access to fetch the page,
which meant we had to take another fault (!!).
2002-03-25 01:53:36 +00:00
thorpej
a4652c81cf
Only check for SA110 bugs on SA110 CPUs with step <= K.
2002-03-24 22:03:23 +00:00
thorpej
ea553e2681
Cache the cpu type and cpu revision in cpu_info.
2002-03-24 22:02:58 +00:00
thorpej
186c0135d6
Garbage-collect pmap_pte() (and good riddance!)
2002-03-24 21:32:18 +00:00
thorpej
ea95b58d21
* Only check for SA110 rev K bug if we're on an SA110 (XXX should also
...
check stepping).
* In said check, don't use pmap_pte().
* Garbage-collect some useless debug code.
2002-03-24 21:27:57 +00:00
chris
03345d6008
remove pointless pg = NULL in else part of if (pg != NULL)
2002-03-24 21:10:25 +00:00
thorpej
bf3ea66d5c
pmap_enter(): Use pmap_map_ptes() correctly.
2002-03-24 20:48:59 +00:00
thorpej
1ffa188c0a
Remove exported pmap_pte() prototype.
2002-03-24 18:36:52 +00:00
thorpej
5ffc15a083
Use vtopte() instead of pmap_pte().
2002-03-24 18:12:54 +00:00
chris
434f6391ea
Update pmap_copy_page to only map in the src readonly and only invalidate it after the copy, no need for it to flush the wb.
2002-03-24 18:05:45 +00:00
bjh21
650f7e5c99
arm26 -> acorn26 changes.
2002-03-24 16:10:11 +00:00
bjh21
99ba40c188
arm26->acorn26 transition.
2002-03-24 15:49:38 +00:00
bjh21
ebfcb75fe5
Add ARM610 cache information. Not yet tested because booting on ARM610s seems
...
to be broken at present.
2002-03-24 15:37:46 +00:00
thorpej
a6d59cb039
pmap_allocpagedir(): Don't use pmap_pte(), and simplify a little.
2002-03-24 06:07:00 +00:00
thorpej
b812152b34
pmap_handled_emulation(): Fix locking protocol botch.
...
XXX Should we traverse the PV list and enable all PTEs?
2002-03-24 05:55:31 +00:00
thorpej
6fbfe41621
pmap_handled_emulation(): Use pmap_map_ptes() correctly.
2002-03-24 05:52:10 +00:00
thorpej
ec75dcf496
pmap_modified_emulation(): Use pmap_map_ptes() correctly.
2002-03-24 05:39:53 +00:00
thorpej
0aef2cab11
pmap_unwire(): Use pmap_map_ptes() correctly.
2002-03-24 05:28:46 +00:00
thorpej
11df08a743
pmap_clearbit(): Use pmap_map_ptes() correctly.
2002-03-24 05:15:59 +00:00
thorpej
eb638f9bc5
Use pmap_is_curpmap() consistently.
2002-03-24 04:56:49 +00:00
thorpej
242f080390
Clean up the PTP allocation functions a bit.
2002-03-24 04:49:16 +00:00
thorpej
c34d24ea3c
Clean up PTE access macros a bit.
2002-03-24 04:38:33 +00:00
thorpej
aa1563948c
* arm_byte_to_page() -> arm_btop()
...
* arm_page_to_byte() -> arm_ptob()
2002-03-24 03:37:18 +00:00
thorpej
48d8c5fdd9
Remove some redundant tests in pmap_enter().
2002-03-24 03:25:10 +00:00