Commit Graph

1576 Commits

Author SHA1 Message Date
lukem 4b2744bf35 __KERNEL_RCSID() 2003-07-15 02:43:09 +00:00
simonb beadae28a9 Add some dependancies on assym.h; helps "make -j N" kernel builds. 2003-07-04 03:48:01 +00:00
thorpej d876aa082a Nuke the "alchemy_info" stuff, and just use the dev_propdb to set
the mac-addr property for the Au1x00 on-chip MACs.
2003-07-04 01:19:58 +00:00
simonb 1534c8822e ANSIfy, KNF. 2003-06-30 13:39:36 +00:00
fvdl d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
simonb 2bda3187f5 Fix 'struct lwp *' lossage. 2003-06-29 15:14:11 +00:00
simonb 9e8290fbee Use the com softc enabled/disable hooks instead of directly frobbing
Au1x00 registers in com_attach_subr().  Suggested by Jason Thorpe and
tested on both console and extra serial ports.
2003-06-29 13:18:24 +00:00
simonb 261417ff31 Fix 'struct lwp *' lossage. 2003-06-29 12:34:55 +00:00
simonb 33187ba9d0 Show current PC in an panic message. 2003-06-29 12:21:32 +00:00
simonb 6939feda9f KNF nit (parentheses around return value). 2003-06-29 12:20:19 +00:00
simonb a810cb3990 Don't use "extern" with functions. 2003-06-29 11:32:11 +00:00
simonb fe57fb71a2 Fix more needless 'struct proc *' to 'struct lwp *' fallout. 2003-06-29 09:23:14 +00:00
darrenr 960df3c8d1 Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V
2003-06-28 14:20:43 +00:00
simonb c674f217bf Use STATIC_LEAF and STATIC_XLEAF for the helper functions; there's no
need to export their symbols.
2003-06-27 08:25:43 +00:00
simonb ecdaf1626b Add STATIC_LEAF and STATIC_XLEAF macros, ala the alpha port. 2003-06-27 08:22:05 +00:00
he 57822a30b2 Conditionalize usage of the COM_HW_HAYESP constant on COM_HAYESP.
Add a dummy type argument to the local (au)comcnattach to match the change
in the prototype of the "real" comcnattach.

Reviewed and tested by simonb.
2003-06-27 07:39:34 +00:00
simonb 8eda62491d Need to pass the address of the lock to simple_unlock(). 2003-06-25 05:37:00 +00:00
martin d505b18964 Make sure to include opt_foo.h if a defflag option FOO is used. 2003-06-23 11:00:59 +00:00
simonb e02e7ca6de Consistency nit- always use "#if defined(foo)" for checking MIPSn. 2003-06-12 14:35:56 +00:00
simonb f1f77c261e Don't use "return;" as last statement of a void function. 2003-06-11 15:27:57 +00:00
simonb 9e9abd6653 Change MIPS3_SR_FR_32 to MIPS3_SR_FR. Both the old R4000 manual and the
current MIPS64 manuals don't use the "32" in the bit name.
2003-06-10 06:42:06 +00:00
simonb 789329a94f Remove definitions and usage of MIPS_COP_0_STATUS_REG and
MIPS_COP_0_CAUSE_REG - use MIPS_COP_0_STATUS and MIPS_COP_0_CAUSE
instead.
2003-06-09 12:20:37 +00:00
simonb 519e8df6a1 Don't use magic numbers in asm code (use MIPS_COP_0_STATUS instead
of "12").
2003-06-09 07:46:20 +00:00
simonb 9f9b329dbc Remove needless line wrap. 2003-06-02 05:55:11 +00:00
simonb 94582f47bd #define<tab> 2003-05-30 06:41:00 +00:00
tsutsui 71ef8e5915 Use common mips/softintr.c for softintr(9) on evbmips.
Ok'ed by simonb.
2003-05-25 14:08:19 +00:00
tsutsui 00415d8082 Prepare common routines for MIPS generic software interrupt. 2003-05-25 13:48:00 +00:00
kristerw f14bf619f4 Make lint happy by changing asm to __asm. 2003-05-24 14:37:31 +00:00
simonb 4f5bd23f68 scdebug_call() takes an LWP and not a proc as it's first argument. 2003-05-23 12:58:18 +00:00
simonb b2aa917e00 Un-wrap a no-longer-too-long panic message, add some extra info to another
panic message.
2003-05-14 10:09:49 +00:00
kleink 776138ea69 Rename <sys/float_ieee.h> to <sys/float_ieee754.h>, following libc's
convention for these.
2003-05-12 15:22:53 +00:00
thorpej 36da248c07 Back out the following chagne:
http://mail-index.netbsd.org/source-changes/2003/05/08/0068.html

There were some side-effects that I didn't anticipate, and fixing them
is proving to be more difficult than I thought, do just eject for now.
Maybe one day we can look at this again.

Fixes PR kern/21517.
2003-05-10 21:10:23 +00:00
fvdl d88cf589cb A few ISA sound drivers like to share dma channels, and hence deferred
isa_dmamap_create() calls to their open/close entrypoints. This worked
with some luck, but broke on i386 when _bus_dmamap_create started
to allocate bounce buffers upfront, since memory below 16M may well
not be available when the sound devices is opened for the Nth time.

To fix this, create a new simple interface, isa_drq_alloc/isa_drq_free,
wrappers around already existing bitmask macros. These are expected
to be used before an isa_dmamap_create call, and after an
isa_dmamap_destroy call, respectively. For the sb and ad1848 drivers,
they're deferred until open/close.

All isa_dmamap_create calls can now use BUS_DMA_ALLOCNOW and be done
at attach time.
2003-05-09 23:51:25 +00:00
thorpej b77900c3c2 Simplify the way the bounds of the managed kernel virtual address
space is advertised to UVM by making virtual_avail and virtual_end
first-class exported variables by UVM.  Machine-dependent code is
responsible for initializing them before main() is called.  Anything
that steals KVA must adjust these variables accordingly.

This reduces the number of instances of this info from 3 to 1, and
simplifies the pmap(9) interface by removing the pmap_virtual_space()
function call, and removing two arguments from pmap_steal_memory().

This also eliminates some kludges such as having to burn kernel_map
entries on space used by the kernel and stolen KVA.

This also eliminates use of VM_{MIN,MAX}_KERNEL_ADDRESS from MI code,
this giving MD code greater flexibility over the bounds of the managed
kernel virtual address space if a given port's specific platforms can
vary in this regard (this is especially true of the evb* ports).
2003-05-08 18:13:12 +00:00
simonb 8bfe136eca Remove a duplicate load of "a1" in page_zero (a PAGE_SIZE vs NBPG botch). 2003-05-04 04:56:33 +00:00
simonb f426b1ecfe Use 64-bit "sd" in mips_pagezero() if we're compiled for MIPS{3,4,64}
(the actual check is !MIPS1 && !MIPS32).

Do the ".set push", ".set mips3", ".set pop" dance if we use 64-bit
instructions.
2003-05-04 02:53:53 +00:00
scw 8c5c893bf7 Add a BKPT_ADDR() macro which gives MD code a chance to munge a
breakpoint address before it's used. Currently a no-op on all but sh5.

This is useful on sh5, for example, to mask off the instruction
type encoding in the bottom two address bits, and makes it possible
to do "db> break $rXX" instead of manually munging the address.
2003-04-29 17:06:03 +00:00
bjh21 4be7a2dcf3 Add a new feature-test macro, _NETBSD_SOURCE. If this is defined
by the application, all NetBSD interfaces are made visible, even
if some other feature-test macro (like _POSIX_C_SOURCE) is defined.
<sys/featuretest.h> defined _NETBSD_SOURCE if none of _ANSI_SOURCE,
_POSIX_C_SOURCE and _XOPEN_SOURCE is defined, so as to preserve
existing behaviour.

This has two major advantages:
+ Programs that require non-POSIX facilities but define _POSIX_C_SOURCE
  can trivially be overruled by putting -D_NETBSD_SOURCE in their CFLAGS.
+ It makes most of the #ifs simpler, in that they're all now ORs of the
  various macros, rather than having checks for (!defined(_ANSI_SOURCE) ||
  !defined(_POSIX_C_SOURCE) || !defined(_XOPEN_SOURCE)) all over the place.

I've tried not to change the semantics of the headers in any case where
_NETBSD_SOURCE wasn't defined, but there were some places where the
current semantics were clearly mad, and retaining them was harder than
correcting them.  In particular, I've mostly normalised things so that
_ANSI_SOURCE gets you the smallest set of stuff, then _POSIX_C_SOURCE,
_XOPEN_SOURCE and _NETBSD_SOURCE in that order.

Tested by building for vax, encouraged by thorpej, and uncontested in
tech-userlevel for a week.
2003-04-28 23:16:11 +00:00
christos a2dfb1b570 PR/3012: Greg A. Woods: Write all float.h files [except the vax of course]
in terms of float_ieee.h
2003-04-19 23:05:28 +00:00
nathanw ff28c51cc0 Make cpu_getmcontext() run the PC through ras_lookup() so that kernel
getcontext() plus userlevel setcontext() (as used in libpthread) respects
the atomicity of RAS regions.
2003-04-11 22:02:28 +00:00
simonb 0cdf56e3e6 Fix a tyop in a comment. 2003-04-11 06:24:59 +00:00
thorpej 9bd03b1f69 Cast the arg to MIPS_KSEG0_TO_PHYS() in POOL_VTOPHYS() (thanks, nathan!). 2003-04-09 22:10:58 +00:00
thorpej a0aee79a1d Add the ability for pool caches to cache the physical address of
objects.  Clients of the pool_cache API must consistently use
the "paddr" variants or not, otherwise behavior is undefined.

Enable this on Alpha, ARM, MIPS, and x86.  Other platforms must
define POOL_VTOPHYS() in the appropriate manner in order to enable
the feature.

Part 1 of a series of simple patches contributed by Wasabi Systems
to improve network performance.
2003-04-09 18:22:13 +00:00
thorpej cf9d21bf8e Use PAGE_SIZE rather than NBPG. 2003-04-08 23:39:14 +00:00
hpeyerl 5eefd45be5 Read USBH_ENABLE twice in succession according to Errata 7 for au1500. 2003-04-03 16:41:23 +00:00
thorpej cc2c493bc4 Use PAGE_SIZE rather than NBPG. 2003-04-02 07:35:54 +00:00
thorpej bc226765c8 Use PAGE_SIZE rather than NBPG. 2003-04-02 03:27:35 +00:00
hpeyerl 295e297794 de-slob-ify. (I'm a slob) 2003-04-02 02:18:52 +00:00
hpeyerl badb1c52ec OHCI front-end driver for Alchemy cpu's. We now have USB Host support.
Tested on PB1500 and DB1500 boards.
2003-04-01 17:36:45 +00:00
hpeyerl deece0b31e s/ohci.c/ohci_aubus.c/ 2003-04-01 17:31:50 +00:00
hpeyerl 29422429f6 add defines for Alchemy clock and frequency control registers. 2003-04-01 17:30:09 +00:00
hpeyerl 56f13f6fa9 allocate an aubus dma tag. 2003-04-01 17:29:11 +00:00
hpeyerl 9cda767630 support active low, level triggered interrupts, needed for ohci front end. 2003-04-01 17:28:24 +00:00
he fd386b5a4d Initialize new members (cn_halt and cn_flush) in consdev to NULL to
allow this to compile again.
2003-03-28 07:10:35 +00:00
simonb d38e1fa853 Use "rxintr" for the name of the receive interrupts evcnt instead
of "txintr".  Much less confusing that way...
2003-03-27 01:21:52 +00:00
simonb 0a30e5fb17 Fix a grammatical nit. 2003-03-22 14:26:41 +00:00
simonb 3c7ff59b5b Sprinkle some "volatile"; fixes problems with the {read,write}_{1,2}
functions big-endian Au1xxx CPUs.
2003-03-13 03:04:13 +00:00
he 0f55132c91 Initialize the two new members of "struct console" to NULL so that
this file compiles again.
2003-03-08 09:42:56 +00:00
rafal 67cca2386c Protect uses of MIPS_R5000 with #ifndef ENABLE_MIPS_R3NKK in new code just
as the old code does.
2003-03-08 05:18:25 +00:00
rafal 33fcc94c6f Add support for R5k secondary caches, from code Chris Sekiya sent me a long
time ago, with small tweaks by me.  Since the R5k doesn't do VCE, the pmap
still needs to be whacked for R5kSC CPUs to work correctly, but this is a
start.
2003-03-08 04:43:24 +00:00
tshiozak 31e2cbf0b5 add some ISO C 1995 I18N functions and types:
btowc, wctrans, towctrans, wcscoll, wcsxfrm, wctype_t and wctrans_t.
2003-03-02 22:18:11 +00:00
simonb 7a3efea0bf Make whitespace in multi-way loops line up a bit nicer. 2003-02-17 12:32:13 +00:00
simonb 8883b06039 No need to protect headers with #ifdef _KERNEL if they're never installed
in /usr/include.
2003-02-17 11:35:01 +00:00
cgd bc735179e8 use COP0_HAZARD_FPUENABLE in a couple more places when turning on FP:
In start (noticed after looking for more COP_1_BIT uses, and note
that there are extra nops here but really they don't hurt), and in
MachFPTrap (noticed by ... running regress!).
2003-02-08 00:50:33 +00:00
cgd 8a6b8c3b72 Update to consistently use Broadcom GPL-compatible license on all SiByte code. 2003-02-07 17:38:48 +00:00
cgd 045575c57d add BCM112x A2 definition 2003-02-07 17:35:05 +00:00
nakayama e3e4805068 Replace machine/rnd.h with more appropriate name to share it
with cycle counter based microtime in kern/kern_microtime.c.
2003-02-05 13:57:50 +00:00
kent cd7d9faeaf Introduce BUS_DMA_NOCACHE, and bus_dmamem_map() of i386 supports it. 2003-01-28 01:07:51 +00:00
simonb d77e3b36e0 Assign to pcb->pcb_context[] in the same order in cpu_lwp_fork() and
cpu_setfunc().
2003-01-22 13:55:09 +00:00
rafal c406903ac2 LWP'ify the svr4_mcontext stuff. 2003-01-22 04:32:17 +00:00
simonb 76cc21a34c Fix a tyop and some white-space nits. 2003-01-21 04:26:01 +00:00
thorpej 706b88727b Fix typo in sigcontext conversion macros. From Christopher SEKIYA. 2003-01-20 16:28:13 +00:00
tsutsui aa4186745b Add '#define' for _MCONTEXT_TO_SIGCONTEXT(). 2003-01-18 13:03:17 +00:00
thorpej a50e3bc1cb Merge the nathanw_sa branch. 2003-01-17 22:58:53 +00:00
simonb b2e8253950 Zero out the TX buffer when padding packet to ETHER_MIN_LEN-ETHER_CRC_LEN. 2003-01-17 12:40:20 +00:00
simonb c018fbe68d Tidy up event counter increments a little. 2003-01-16 01:14:17 +00:00
simonb c69f520bc8 Removed unused register map; this info is now passed in with the attach
args.
2003-01-16 01:05:39 +00:00
rafal 0cc0813590 Add the MIPS3_CONFIG_SE (name taken from Rm52xx manual) bit, which is the
external cache enable bit -- this allows software to enable or disable the
(external) L2 cache on the R5k and Rm527x and the (external) L3 cache on
the Rm7k.  If the (external) cache is disabled, treat it as if there were
no cache for the purposes of the cache setup code.

Also, update sgimips code to use the new name.
2003-01-10 03:22:48 +00:00
wiz 1035faff1d writable, not writeable. 2003-01-06 20:30:28 +00:00
thorpej dbb0f0ebed Use aprint_normal() for cfprint routines. 2003-01-01 01:47:30 +00:00
manu 4a06119a9d Pass the system call table to trace_enter() and ktrsys() so that it is
possible to use alternate system call tables. This is usefull for
displaying correctly the arguments in Mach binaries traces.

If NULL is given, then the regular systam call table for the process is used.
2002-12-21 16:23:56 +00:00
simonb 5b6caeca74 Mark the Au1x00 CPUs as having a fully coherent data cache that doesn't
require flushing (even in the instruction cache handlers).  This gives
about a 4% improvement in a "make depend" benchmark.

Mark the SB-1 CPUs as having a fully coherent data cache that only
require flushing in the instruction cache handlers.  This gives about
a 5% improvement in a "make depend" benchmark.
2002-12-17 12:07:50 +00:00
simonb 2c1a832f25 Add support for caches where the data cache is fully coherent, and
either requires flushing either only when the I cache ops are used
or not at all.  Currently only used by MIPS32/MIPS64 cache code.
2002-12-17 12:04:29 +00:00
thorpej e8cc3884de Rename __LDPGSZ to AOUT_LDPGSZ, to accurately reflect what it is. 2002-12-10 17:14:02 +00:00
thorpej 78ea2dd367 Use __LDPGSZ (which must be == USRTEXT) as the text address for a.out
executables, and eliminate the USRTEXT constant, which was only used
by the a.out exec code.
2002-12-10 05:14:24 +00:00
simonb 6a5e492b57 Remove the explicit `makeoptions MACHINE_ARCH="mipse{b,l}"' for kernel
builds and use the endianness of the toolchain being used to determine
the endianness of the kernel.
2002-12-09 22:54:09 +00:00
simonb 699bf96665 Drop the _KERNEL test; these functions are needed for SMP and other ports
don't bother with a _KERNEL check.
2002-12-05 02:56:51 +00:00
tsutsui d03ac2a783 Fix botch in previous. This is pcb.h, not reg.h. 2002-11-30 22:50:01 +00:00
jdolecek 9a87c0933c make LKM friedlier - only include opt_* ifdef _KERNEL_OPT 2002-11-30 10:52:16 +00:00
simonb fdd1e3b715 Standardise on #ifdef _MIPS_<header>_H_ for multiple inclusion tests. 2002-11-30 01:52:31 +00:00
simonb d644dd9c43 Add multiple-inclusion protection. 2002-11-30 01:49:18 +00:00
lukem 0635de35a3 Remove KDIR=, since SYS_INCLUDE=symlinks and KDIR are not supported any more. 2002-11-26 23:30:07 +00:00
simonb 12c35ee2d2 New generic way-aware MIPS32/64 range-index cache functions with proper
handling for phyiscally-indexed caches where the way size is greater than
the page size.
These work fine with pass 1 SB1 cores, so g/c those workarounds.

Much thanks to Chris Demetriou for many suggestions and helping me get
my head around all this.
2002-11-24 07:41:29 +00:00
simonb 3a72aadc2b Add the VI bit in config 0. 2002-11-24 07:28:42 +00:00
simonb 3682edd3d4 Move the curpcb and segbase extern decls to cpu.h to better group together
what will need to change for SMP.
Hide 'struct cpu_info' and some macros in #ifdef _KERNEL/#endif.
2002-11-24 07:26:04 +00:00
cgd 8935916d0a initial support for mac features in new chip revs 2002-11-19 01:44:04 +00:00
simonb 5e3d4a224c Add cache_r4k_op_8lines_{16,32} macros to perform cache ops on 8
consecutive lines.
2002-11-17 06:40:43 +00:00
simonb aa5595f691 Fix typo in the address of the Au1500 MAC1 enable register; 2nd MAC works
on the Au1500 cpu now.
2002-11-17 04:57:34 +00:00
simonb ba1c8ffa9d Remove reference to mips_int5_evcnt from here; that is port-specific,
not arch-specific.
2002-11-17 04:56:57 +00:00
manu d584ed9598 Add a realcode argument to trace_enter and ktrsyscall. realcode is the
original system call number, which can be negative for a Mach trap.
We cannot just replace code by realcode, because ktrsyscall uses it as
an index in the system call table, thus crashing the kernel when the
value is negative.
2002-11-15 20:06:00 +00:00
simonb 5bdb1a36ce Add a hack to mipsNN_pdcache_wbinv_range_index_32_4way() so that we
use the index ops at a offset of the page size as well, controlled by
an MIPS64_SB1 check.  The SB1 D-cache way size is physically indexed
and twice as big as the page size (4k), so we weren't flushing all the
addresses we needed too.

XXX: This is kinda gross; will be cleaned up and made more generic soon.
There are still other SB1-specific issues to be cleaned up too...
2002-11-15 01:23:17 +00:00
simonb 181d7f08c9 Use COP0_HAZARD_FPUENABLE instead of a hard-coded 4 NOPs when enabling
the FPU.
2002-11-15 01:16:18 +00:00
simonb 2aabe4d4e2 Define COP0_HAZARD_FPUENABLE as four nops.
Include <mips/sb1regs.h> if MIPS64_SB1 is defined.
2002-11-15 01:15:11 +00:00
simonb 383afcb5b6 Declare some CP0 hazards for the SB1 core. 2002-11-15 01:09:20 +00:00
simonb 28a1083dd2 Put the MIPS64_SB1 option in opt_cputype.h. 2002-11-15 01:02:49 +00:00
simonb 3d416825dc White space nits. 2002-11-15 00:58:32 +00:00
nisimura abad61e77f Remove o32 stack layout exposure form cpu_fork().
Tested on R4000 and R3000.
2002-11-12 14:00:41 +00:00
simonb 96c9d84cda Add support for the ST M41T81 RTC found on pass 2 swarm boards.
XXX: Much of this should live in arch/sbmips instead of arch/mips/sibyte.
XXX: These should be replaced with MI SMBus drivers one day.
2002-11-12 01:22:25 +00:00
he aba5de5e41 Remove a PARANOIADIAG check which is a bit too paranoid. This one
would now trigger whenever a previously used "cached" uarea was reused.

Reviewed by thorpej and chs.
2002-11-11 22:30:15 +00:00
simonb 396f36cc12 Fix a typo in the on-board device selection machinery (which I thought
I'd committed long ago).
2002-11-11 16:39:18 +00:00
simonb 2e98091daf Make sure we use index ops (instead of hit ops) in the range index
functions.
Fix typos in the cache_r4k_op_32_4way_load_off macro.

Both problems reported by Chris Demetriou.
2002-11-10 11:11:39 +00:00
simonb b8eff8f9aa Adapt for the ioctl ERESTART/EPASSTHROUGH changes.
Make sure we don't tsleep() at splhigh/splserial.
2002-11-10 11:06:11 +00:00
simonb 6fb837941b Remove some copyright notices that don't apply to this code. 2002-11-10 11:01:15 +00:00
nisimura 983202f1ed Change pmap_kenter_pa/pmap_kremove pair back to pmap_enter/pmap_remove
in fear of the case choosen kva results in occupying inconsistent
distinctive cache lines of uva.
2002-11-10 05:29:18 +00:00
nisimura 2a312dd17f Use pmap_enter_pa and pmap_kremove for vmapbuf/vunmapbuf, respectively.
Have variable names renamed for the logic clarity.
2002-11-10 02:27:50 +00:00
thorpej 84ccc9c46e Build with kernel with -msoft-float. 2002-11-09 20:34:26 +00:00
thorpej ff114c4a59 Fix signed/unsigned comparison warnings. 2002-11-09 20:06:07 +00:00
thorpej 21ca5cbcc7 Make md_ss_addr a vaddr_t. 2002-11-09 20:05:57 +00:00
thorpej 800f626770 Fix signed/unsigned comparison warnings. 2002-11-09 20:00:20 +00:00
thorpej 0c2979d1c8 Fix signed/unsigned comparison warnings. 2002-11-09 19:35:52 +00:00
thorpej 4d7f6969a5 Make cache size/mask variables unsigned. 2002-11-09 19:34:39 +00:00
thorpej 73f78d5e61 Fix signed/unsigned comparison warnings. 2002-11-09 18:52:20 +00:00
thorpej 3689b18f89 * Add -mno-abicalls to AFLAGS.
* GCC 3.3's traditional preprocessor functions properly now, so we
  no longer need to special-case it.
2002-11-09 18:18:22 +00:00
thorpej a99bec6b60 Nuke the CROSSDIR stuff. 2002-11-09 18:12:09 +00:00
nisimura 94df053502 Nuke "mips_reg_t" exposures from here. "mips_reg_t" will be
corrected-back with "register_t" by completing the implementations
of N32 and LP64 environment.
2002-11-09 10:59:52 +00:00
thorpej e935239e3c No need to pass -mno-half-pic; NetBSD's compiler does not generate
half-pic references.
2002-11-09 07:31:08 +00:00
simonb 31fcce3c41 Include <sys/device.h> so this compiles again. 2002-11-09 04:13:03 +00:00
nisimura 8d6e18f90d - Make monolistic files into smaller manageable pieces, resulting
three new files;
    sig_machdep.c (from mips_machdep.c)
    copy.S and sigcode.S (from locore.S)
- Nuke the local use of struct sigframe, which is now identical to
struct sigcontext, from sendsig() as the consequence of new signal
trampoline.
2002-11-09 02:02:31 +00:00
cgd 48164df6b2 handle different SOC types and features a little better 2002-11-08 19:53:29 +00:00
cgd f4a3e5f997 fix long-standing pasto in DMA config1 register address setting 2002-11-08 19:40:05 +00:00
cgd 49c87f0804 update to latest CFE API code 2002-11-08 19:35:38 +00:00
cgd 99a582aab5 Calculate end virtual address for cache ops before chopping low bits
(line mask) off of starting address.  Otherwise, could miss the final
line that the ops should have been operating on.  Reviewed by simonb.
2002-11-08 07:35:20 +00:00
cgd 1f2efd0d77 update SiByte includes from their master versions. (main differences:
bug fixes, conditionalization of different chip support, new features.)
(Reviewed and tested by simonb.)
2002-11-08 07:32:40 +00:00
simonb 0b3b87b6c8 Whitespace nit. 2002-11-08 04:13:13 +00:00
simonb 28cb103184 Note a new MIPS64_SB1 option that should be included in opt_cputype.h
one day.
2002-11-08 00:50:49 +00:00
simonb 220b08b128 Sprinkle a little more COP0_SYNC (in an unused function...). 2002-11-08 00:49:32 +00:00
cgd a13b227af2 fix errors in calculating the ending VA to use in r4k_icache_sync_range_16
and r5k_icache_sync_range_32.  (reviewed by thorpej.)
2002-11-07 23:03:21 +00:00
cgd d6cd994028 don't under COP0_SYNC. (approved by simonb.) 2002-11-07 05:39:48 +00:00
thorpej 0bc2a57e26 Use named indices for RA, SR, MULLO, MULHI, and EPC in the
trapframe.
2002-11-04 20:02:09 +00:00
thorpej fab408c3af Use named indices for trapframe slots, and use the TA0-TA3 names
where appropriate.
2002-11-04 19:51:05 +00:00
thorpej c8fbf16072 Define named constants for the trapframe register idices (they
are different from the normal register numbers).  Use these names
in genassym.cf.  (Wow, how ever did that test kernel boot before...)
2002-11-04 19:40:04 +00:00
thorpej ad825a97f1 t4-t7 -> ta0-ta3 2002-11-04 18:54:13 +00:00
thorpej 1d0b5f8106 A few more t4-t7 -> ta0-ta3 that I missed before. 2002-11-04 18:45:55 +00:00
thorpej 731fe805a1 t4-t7 -> ta0-ta3 2002-11-04 18:41:37 +00:00
thorpej 32d1740afc Add FRAME_[TA0-TA3] and TF_REG_[TA0-TA3]. Change TF_REG_* to use
defined constants for register indices, rather than hard-coded numbers.
2002-11-04 18:41:03 +00:00
thorpej 65fdfe7d64 Add TA0-TA3 register indices. 2002-11-04 04:24:48 +00:00
thorpej abaff8e1c6 t4-t7 -> ta0-ta3 2002-11-04 04:06:51 +00:00
thorpej 3e54f426e0 Rearrange mips_pagecopy() and mips_pagezero() for N32/LP64.
XXX Does not yet use the correct reg names for new-ABI.
2002-11-04 04:04:32 +00:00
thorpej 1bf923d5f3 Add N32 register vars. 2002-11-04 03:46:18 +00:00
thorpej aa2b9a65fc Add SGI-compatible ta0-ta3 register names. These allow one to write
asm code which can be built easily in old-ABI and new-ABI environemnts.

In old-ABI, they map to t4-t7, and in new-ABI, they map to a4-a7.  This
means that t0-t3,ta0-ta3,t8,t9 are available in both ABIs.

Because ta0-ta3 overlap with arg regs (albeit arg slots which are usually
unused), they should be used only if t0-t3,t8,t9 isn't enough.
2002-11-04 03:38:32 +00:00