Commit Graph

28222 Commits

Author SHA1 Message Date
mhitch 0b5d3c0d43 From Chuck Silvers:
implement pmap_k{enter_pa,remove}() correctly.
remove various checks for impossible conditions.
other misc cleanup.
2001-08-15 01:03:59 +00:00
rearnsha ff2b83c782 New bus-independent DMA framework. Adjust asc.c for new interface
but not (yet) make use of new framework.
2001-08-14 22:58:17 +00:00
augustss 596db62c43 Alphabetize two items. Fix one whitespace glitch. 2001-08-14 13:15:45 +00:00
mrg c22c51584c but this machine is now an ultra1. 2001-08-14 12:16:19 +00:00
mrg d8544ce59a this machine is no more. 2001-08-14 12:14:59 +00:00
simonb e807a5f821 Fix typo, noted by UCHIYAMA Yasushi in private mail. 2001-08-14 04:32:56 +00:00
fredette 170407cf2c Fixed a bug where we were using ETHERMIN and ETHERMTU
where we really wanted ETHER_MIN_LEN and ETHER_MAX_LEN.
2001-08-14 03:57:16 +00:00
hubertf 1fabbfed1a Sync with GENERIC,v 1.414
XXX We really need a better way to do such things...
XXX For now, please make sure to update this too when editing GENERIC!
2001-08-14 00:27:03 +00:00
mjacob 7a43c0e46b Fixed the one minor buglet that kept 8200s from working
(SCB_VECTOIDX(vec) - SCB_IOVECBASE] -> SCB_VECTOIDX(vec - SCB_IOVECBASE))

Sigh. This is all very good work- this new interrupt stuff. Yet like the
last time my good friend Jason 'simplified' things, we lost information.
It used to be you could tell which specific slot an interrupt was frame
based upon the vector. Now you can't because they're allocated dynamically.
Oh well- it's not all that important.
2001-08-13 23:36:30 +00:00
bjh21 63011ec08f Add lint stubs. Not actually tested or anything. 2001-08-13 23:16:11 +00:00
bjh21 9d345bfc35 New header file for FIQ-related definitions.
Currently just contains the FIQ numbers, until I decide on an API.
2001-08-13 22:59:40 +00:00
soda e65a97d83b correct function name in panic message which is referred by Izumi Tsutsui
on port-arc mailing list.
2001-08-13 19:08:13 +00:00
soda 7e7514b7f1 OP_BLTZAL was defined twice. 2001-08-13 18:48:48 +00:00
soda 5ea71c9743 fix duplicate wired TLB allocation, this is now done in {vga,pccons}_jazzio.c. 2001-08-13 18:45:49 +00:00
tsubai b1d1120084 Search "/netbsd.gz" and "/netbsd.macppc" in addition to "/netbsd". 2001-08-13 15:38:11 +00:00
itojun a66997843c sync with GENERIC 1.414. LAMB has no working printer port. 2001-08-13 11:21:40 +00:00
jdolecek a95aa7326a g/c _remque()/_insque(); use the C version in libkern 2001-08-13 06:10:09 +00:00
chs 610af327b3 add an unlock missing from previous revision. 2001-08-13 01:12:15 +00:00
scw 13c2f8b505 Some more things ticked off the list. 2001-08-12 19:28:28 +00:00
scw 79abe4afda Fix the clock device offset. (Overlooked in last commit) 2001-08-12 19:16:18 +00:00
scw e97b8f6555 clockreg.h is no longer needed now we use the MI mk48txx driver. 2001-08-12 18:36:17 +00:00
scw e9261b9f13 Time Keeper NVRAM driver. 2001-08-12 18:34:25 +00:00
scw bb210bda7e Split the nvram/rtc functionality away from the clock interrupt code
and attach it as `timekeeper0 at mainbus0'.
Use the MI mk48txx nvram/rtc access functions instead of home-grown
versions.

It should now be very easy to add a character device for the benefit
of userland access to NVRAM.
2001-08-12 18:33:12 +00:00
scw 7374ebbf8c Slight tweak: Avoid needlessly purging cachelines which we've just flushed. 2001-08-12 18:13:45 +00:00
jdolecek c495131fe3 Move _insque()/_remque() to libkern. Once remaining uses would
be converted to <sys/queue.h> macros, _insque()/_remque() would be eliminated
altogether.
2001-08-12 08:35:31 +00:00
chs 7c661278ee update some comments. 2001-08-12 00:20:32 +00:00
bjh21 a3119c10de Report link status correctly for 10BASE-T. 2001-08-11 20:42:45 +00:00
chris 0b0518e0dd Fix compile without DIAGNOSTICs enabled 2001-08-11 14:47:56 +00:00
chris 191de4d242 Checking a whole host of pmap changes:
Improved locking (not that we actually use it on a uniprocessor, but one day :)
Removed unneeded splvm's
tweaked pmap_clean_page code to only flush the cache if the page is mapped in the current pmap  (based on diff from richard E)
Adopted pv entry allocation mechanism from i386.
Laid framework for returning ptp's when we've finished with them rather than holding onto them till the process exits.
ptp's are now allocated with a uvm object for the pmap, means that we can walk a list to free them off in pmap_release, until they get freed off by pmap_remove.

Also implemented a page zeroing function when the processor is idling.  Note that hpcarm may wish to disable this.

I believe this code to be stable, if anyone has any problems please shout up.
2001-08-11 13:20:19 +00:00
chris c5de587666 Make use of pmap_kenter instead of pmap_enter for kernel buffers. 2001-08-11 13:00:48 +00:00
chris 163b9983d7 Add arm_trunc_page, similair to trunc_page but using a hardcoded PGOFSET. 2001-08-11 12:59:45 +00:00
chris 6cca1c3f58 Update to make use of a proper kenter implementation for vmapbuf and vunmapbuf. 2001-08-11 12:57:25 +00:00
chris 6e43d02452 Patch in Richard E's changes to bcopy page, the loop doesn't need unrolling as much as it currently is due to the overhead of the load/stores taking most of the time. (profiling shows minimal time difference) 2001-08-11 12:44:42 +00:00
eeh 76d075e3b3 Use the new in4_cksum. 2001-08-10 20:53:50 +00:00
eeh 0e7789220f Add an optimized in4_cksum(). 2001-08-10 20:53:11 +00:00
bjh21 12a3da3896 Add RASOPS_SMALL. 2001-08-10 20:14:17 +00:00
msaitoh dfc4520de8 G.C. 2001-08-10 18:57:25 +00:00
msaitoh 6096cc20fb byebye 2001-08-10 18:55:08 +00:00
bjh21 beb2e3fe5d Cast size_t argument appropriately for printf format. 2001-08-10 18:51:06 +00:00
msaitoh 0756145b0f fix a ldtlb handling bug:
- set to PTE{H,L,A} and call LDTLB must do atomically.
 - never call LDTLB when it's unnecessary.

Broken kernel oocasionally causes cpu reset when /etc/security is called.
Now fix this problem.
2001-08-10 18:27:08 +00:00
bjh21 b5560b60b9 No need to mention procfs_machdep.c here -- it's in files.arm anyway. 2001-08-10 18:24:20 +00:00
tsutsui 17f8dae7c0 This file is no longer used. (moved to ofppc/soft_spl.c) 2001-08-09 16:08:34 +00:00
eeh 39634ee178 Clean up some debug printfs. 2001-08-09 01:03:01 +00:00
eeh 462c99aa55 pmap_kenter_pa() always creates privileged mappings.
No need to enter a no-fault mapping any more.
2001-08-09 01:01:31 +00:00
eeh 10d6680e29 Fix context masking lossage caused by last version. 2001-08-09 01:00:11 +00:00
matt f3011c96b4 Fix thinko. Do the mask before the divide. 2001-08-08 21:09:58 +00:00
eeh 82ff27c161 Clean up the trap code to handle the changes cause by supporting non-faulting
accesses.  Also change the parameter order so trap frames are easy to find.
2001-08-08 18:30:45 +00:00
wdk 83cb8b7f0a If the boot device cannot be determined don't return an un-initialized
pointer.
Prevents garbage when asking for root device at startup.
2001-08-08 11:35:12 +00:00
eeh b88a8597fb This file is no longer used. 2001-08-08 00:17:00 +00:00
eeh b012dbff07 Use the new version of in_cksum. 2001-08-08 00:13:37 +00:00
eeh 57ef5c3617 Add an optimized assembly in_cksum(). (Why did I do this?) 2001-08-08 00:12:37 +00:00
eeh 7ffc44a35e Add some useful mbuf fields. 2001-08-08 00:09:30 +00:00
bjh21 4dd0161267 Use STACKALIGN rather than &=~7. 2001-08-07 22:56:09 +00:00
bjh21 8fa03d16ac Add macros to hide the details of stack-pointer alignment. 2001-08-07 22:54:00 +00:00
bjh21 bd6d4d6b77 Use <arm/param.h> to get shared definitions. 2001-08-07 22:26:56 +00:00
scw e8ba963ae7 Change a post-decrement to a pre-decrement. 2001-08-07 17:25:19 +00:00
eeh b400579dd9 Make sure C code always has ASI_PRIMARY_NOFAULT in the %asi register so
the compiler will be happy if it ever starts generating speculative loads.
2001-08-07 00:03:27 +00:00
eeh c633b30dd4 Add some alternate spellings for ASIs.
Make sure ASI_PRIMARY_NOFAULT is always restored.
Garbage collect some old code.
2001-08-06 23:55:34 +00:00
bjh21 f37b49755f When delivering a signal, ensure that the stack is 8-byte-aligned. 2001-08-06 22:32:23 +00:00
eeh 4b569fc269 Fix bug involving small, non-contiguous dma segments.
From Manuel Bouyer.
2001-08-06 22:02:58 +00:00
thorpej 013d3a1013 Make some APMDEBUG verbosity only verbose if the INFO debug flag is set. 2001-08-06 07:59:39 +00:00
eeh 140e9e72dd Add support for non-faulting loads and optimize MMU miss handling paths. 2001-08-05 18:32:30 +00:00
jdolecek 74954dadf9 use unsigned variable types as appropriate 2001-08-05 18:07:51 +00:00
chris 9522cf08d4 Share procfs_machdep.c across arm. 2001-08-05 13:09:45 +00:00
tsutsui 9e7c918fc2 Avoid NULL pointer dereference. 2001-08-05 11:14:21 +00:00
scw aac15fa001 Create the `machine' symlink before building. 2001-08-05 10:52:05 +00:00
scw 86b01af066 Make this work again for mvme147... 2001-08-05 09:45:39 +00:00
tsutsui 96ca5eec53 Define VM_MAX_KERNEL_BUF and PAGER_MAP_SIZE to save KVA space. 2001-08-05 06:55:02 +00:00
matt b46d7a47ab Don't substract KERNBASE, xor it to clear. The former causes GNU ld to
bitch about a signed overflow and this code is only done once, incurring
an extra instruction isn't going to matter much in the long run.
2001-08-05 06:14:22 +00:00
matt f33b1a3fd8 This is a HOST program, so make compile as one. 2001-08-05 06:10:25 +00:00
tsutsui 9651c6a654 Add PM_SR 2001-08-05 05:47:43 +00:00
matt ced3859405 print time_t as signed long. 2001-08-05 05:22:10 +00:00
matt 9509e734a3 Force size_t formats/arge to be (u_long). I'd use 'z' for this but gcc
2.95.3
2001-08-05 05:07:27 +00:00
matt c7d43df086 If = is in a constraint, it must be the first character. 2001-08-05 04:40:03 +00:00
mrg ca351acf50 avoid an unused variable warning 2001-08-05 03:03:16 +00:00
chs 177230d1d6 implement pmap_k{enter_pa,remove}() correctly.
remove various checks for impossible conditions.
other misc cleanup.
2001-08-04 18:42:39 +00:00
chs 79124b95bf implement pmap_k{enter_pa,remove}() correctly.
remove various checks for impossible conditions.
other misc cleanup.
2001-08-04 16:26:49 +00:00
sato 0e356bc8ef fix VR4122 some unit address. 2001-08-04 14:08:46 +00:00
chs 6bc422a7ee use pmap_k* in pagemove() (ie. for buffer cache pages)
and in vmapbuf() and vunmapbuf() (since there's no VAC on this platform).
2001-08-04 07:44:52 +00:00
chs ea127ad258 use pmap_k* in pagemove(), ie. for buffer cache pages.
in vunmapbuf(), call pmap_kremove() explicitly since uvm_km_free_wakeup()
will soon no longer do it for us.
2001-08-04 07:42:07 +00:00
chs be706f969f in vunmapbuf(), call pmap_remove() explicitly since uvm_km_free_wakeup()
will soon no longer do it for us.
2001-08-04 04:28:49 +00:00
chs f6a81a1ac7 remove the uncached idle-loop page zeroing.
(to be replaced by a version that uses the cache...)
2001-08-04 04:26:48 +00:00
chs 873e926c7b remove remaining spl calls, they're not needed.
remove some checks for impossible conditions.
in pmap_enter(), only call pmap_remove() to remove an existing mapping
if there actually is an existing mapping.

in pmap_remove_pv(), don't flush the MIPS1 cache when removing the last mapping.
this was added in rev 1.97, to avoid stale data being left in the cache
when the page is zeroed bypassing the cache in pmap_zero_page_uncached().
we've since found that bypassing the cache for idle-loop page zeroing
doesn't work very well anyway, so we don't do that anymore.
so now we can remove the extra cache-flush.
remove pmap_zero_page_uncached() while I'm thinking of it.

various other cleanup.
2001-08-04 04:25:37 +00:00
chs 843823c7c5 rewrite set_segmap_allctx() in assembly.
reduces cpu usage of sequential write()s to a file by 5%.
2001-08-04 04:06:29 +00:00
enami 4b5c6b86d6 Minor tweak to build kernel under a.out environment. 2001-08-04 00:54:30 +00:00
tsubai 3070e77046 Remove (#if 0'ed) m68k asm codes. 2001-08-03 23:09:42 +00:00
tsubai b51ccd5322 Cosmetics. 2001-08-03 12:58:38 +00:00
tsubai b1919bc716 Add bmtphy. 2001-08-03 12:56:55 +00:00
thorpej 518ad20222 Upon further reading of the manual, don't save the MXCSR-at-last-exception.
Its status bits are sticky, and unaffacted by FNINIT.
2001-08-03 01:46:08 +00:00
thorpej 099e93139b In setregs(), initialize the process's MXCSR to the reset-default
value as documented in the IA-32 Instruction Set Reference (in the
description of the LDMXCSR insn).
2001-08-03 01:24:39 +00:00
thorpej cfb1fd004d Don't clobber the MXCSR when we fake FNINIT. 2001-08-03 01:21:34 +00:00
thorpej f72ee0a9c6 Remember the MXCSR at last-exception the way we do the FPU SW/TW. 2001-08-03 01:11:49 +00:00
groo 3f5acd41c2 Remove trailing "U" on KERNBASE introduced in last commit.
Breaks assembly of locore.
2001-08-03 01:03:10 +00:00
thorpej 6e331fdd9f Define KERNTEXTOFF in terms of KERNBASE. 2001-08-03 00:47:59 +00:00
thorpej 8f308d671e Adapt to new FPU save format in PCB. 2001-08-03 00:41:46 +00:00
bjh21 8c3ac05de9 Bump version for * command addition. 2001-08-03 00:41:12 +00:00
bjh21 33452511ed Add a single * command, *boot26, so that the module can be manually invoked
after it's loaded.
2001-08-03 00:40:23 +00:00
bjh21 b471d90032 Add OS_Module. 2001-08-03 00:32:30 +00:00
bjh21 6e82ab9796 Wrap boot26 in a minimal relocatable module. When *RMRun, it just copies the
existing boot26 code to 0x8000 and runs it.
2001-08-02 23:55:55 +00:00
bjh21 3e749936d6 Script to generate a help string for a RISC OS module from the same sources
as newvers_stand.sh uses.
2001-08-02 23:47:07 +00:00