Commit Graph

412 Commits

Author SHA1 Message Date
msaitoh a797322f08 supports single step! 2000-05-10 20:28:33 +00:00
hubertf 9f48bba3ae Add "install" target, so "make install" after building the kernel
does something useful.  The target can be redefined by putting a
install-kernel-${MACHINE_NAME} target that fits your needs into
/etc/mk.conf.
2000-05-09 00:56:21 +00:00
thorpej 6a33c86623 HAVE_GCC28 -> HAVE_EGCS, and make it match gcc 2.9 as well. Also,
make the use of -Wno-uninitialized explicit, don't rely on a compiler
hack to do it for us.
2000-05-09 00:32:19 +00:00
thorpej 855b79db92 Let each platform typedef the new __cpu_simple_lock_t, which should
be the most efficient type used for the atomic operations in the
simplelock structure, and should also be __volatile.
2000-05-02 04:41:04 +00:00
thorpej f51470a514 Require that each each MACHINE/MACHINE_ARCH supply a lock.h. This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED.  These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case).  Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.
2000-04-29 03:31:45 +00:00
tsubai 1be338dabc GC VM_MBUF_SIZE. 2000-04-25 12:31:10 +00:00
tsubai 63fca4fecb Use P1SEG to map pool pages. 2000-04-25 12:17:06 +00:00
tsubai 88a555948c Sync with current i386 pmap.c. 2000-04-24 08:40:21 +00:00
msaitoh e61941261f remove a debug log 2000-04-20 14:04:04 +00:00
msaitoh 25f1ebacc1 add a copyfault routine into the TLB miss handler 2000-04-20 14:02:41 +00:00
tsubai 8bd19349a1 Fill paa_busname field in pcmciabus_attach_args. 2000-04-20 11:51:27 +00:00
msaitoh 7e7033d239 Catch the breakpoint trap ("trapa #0xc3") and send SIGTRAP.
Now works breakpoint and continue!

TODO: single step
2000-04-13 23:00:42 +00:00
msaitoh 8796b43e1c remove sys_vtrace() 2000-04-13 15:54:27 +00:00
msaitoh c750d5f42d - save/restore more registers in process_{read,write}_regs()
- return EINVAL in process_sstep (temporary)
2000-04-13 15:51:26 +00:00
msaitoh 9c13ab1d7c KNF 2000-04-13 15:45:11 +00:00
msaitoh ca4ca0111c exports MACH and MACL registers, too. 2000-04-13 15:41:55 +00:00
msaitoh 9a41bed54e move the Interrput Priority Level (IPL_*) definitions into MD part. 2000-04-13 15:36:09 +00:00
chs a6d33cc1f2 add a new function vn_marktext() for exec code to let others know
that the vnode is now being used as process text.
2000-04-11 04:37:47 +00:00
thorpej d37f3bd4ee Use UVM_PGA_ZERO in pmap_alloc_ptp(). 2000-04-10 06:34:11 +00:00
jdolecek cef3c93f82 Switch to MI ns_cksum.c - the MD ns_cksum.c is equivalent to it
(modulo some u_intX_t vs. u_char type usage). In particular, the
MD version didn't contain any MD code.
2000-04-06 13:37:49 +00:00
thorpej 2bc5adb20e Instead of checking vm_physmem[<physseg>].pgs to determine if
uvm_page_init() has completed, add a boolean uvm.page_init_done,
and test against that.  Use this same boolean (rather than
pmap_initialized) in pmap_growkernel() to determine if we are
being called via uvm_page_init() to grow the kernel address space.

This fixes a problem on some i386 configurations where pmap_init()
itself was needing to have the kernel page table grown, and since
pmap_initialized was not yet set to TRUE, pmap_growkernel() was
choosing the wrong code path.

Fix tested by Havard Eidnes.
2000-04-02 20:39:14 +00:00
minoura 78b105698a Move dl* function definitions to libc on ELF.
Based on the patch supplied by Takuya Shiozaki <tshiozak@astec.co.jp>.
See http://mail-index.netbsd.org/tech-userlevel/2000/02/23/0000.html.
2000-04-02 15:35:47 +00:00
msaitoh 35ba37f2f7 fix the sci[f]cninit() bugs to work both SCI and SCIF at the same time. 2000-03-27 16:24:08 +00:00
kleink 230876cf26 Merge parts of chs-ubc2 into the trunk:
* Remove the casts to vaddr_t from the round_page() and trunc_page() macros to
  make them type-generic, which is necessary i.e. to operate on file offsets
  without truncating them.
* In due course, cast pointer arguments to these macros to an appropriate
  integral type (paddr_t, vaddr_t).

Originally done by Chuck Silvers, updated by myself.
2000-03-26 20:42:21 +00:00
thorpej 7b918b4088 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 06:40:33 +00:00
msaitoh 826aac6ff8 - Use macro
- RTCCNT is not 16000Hz but 16384Hz (not used)
- fix the bug in 16bit int <-> BCD conversion macro (SH4)
2000-03-20 20:44:32 +00:00
msaitoh 7052a2af38 Add the definitions of SH4's TPSC field of TCR register
(This field is not compatible with SH3's)
2000-03-20 20:36:58 +00:00
msaitoh ff49b7006c move MMUCR register definitions into mmureg.h 2000-03-20 20:30:33 +00:00
tron e86957458a Install "machineendian_machdep.h". 2000-03-17 22:36:31 +00:00
mycroft 9e21b6555a In the `MY THAT'S GROSS' department...
Eliminate the recursive include of machine/endian.h from sys/endian.h.
2000-03-17 00:09:18 +00:00
mycroft 02905321b2 Foolish consistency. Mainly, always use underscores and sys/endian.h. 2000-03-16 15:09:34 +00:00
kleink ad7dbd825c Define ISO C99 (unsigned) long long (min, max) symbols. 2000-03-07 19:33:00 +00:00
msaitoh 6e7f2e9779 SH4! 2000-02-24 23:32:26 +00:00
msaitoh da0ae51fcf variable start address of the main memory (now we can use
the area 2 as main memory with "options IOM_RAM_BEGIN=0x88000000")
2000-02-24 19:42:35 +00:00
msaitoh 7ae4a95c4d multiple interrputs!!! 2000-02-24 19:01:24 +00:00
msaitoh 3559e78ed2 include <machine/endian.h> 2000-02-24 17:19:57 +00:00
msaitoh dddc24af60 G.C. 2000-02-24 17:18:30 +00:00
msaitoh f51b1c6783 add RCSID and copyright 2000-02-24 17:10:16 +00:00
msaitoh e2cc2d00d7 watchdog timer 2000-02-24 17:07:34 +00:00
msaitoh 0e12305a13 global variable declaration 2000-02-24 16:42:54 +00:00
msaitoh e0c3daee1d remove PMAP_NEW 2000-02-23 21:14:12 +00:00
msaitoh 58369df4e9 Fix the bug which cause invalid slot exception under SH4.
This exception doesn't occurs under SH3
2000-02-22 02:17:05 +00:00
msaitoh c02e68b1f5 calculate checksum correctly 2000-02-22 02:14:16 +00:00
msaitoh c956cdcabe bugfixes:
o SCI accesses SCI registers (not SCIF) correctly
 o If there is serial inputs in boot time, it could hangup in interrupt routine
 o some cleanups(KNF)
2000-02-22 01:37:11 +00:00
thorpej fd8c03cf44 Allow arch-specific code to specify in4_cksum() like it can specify
in_cksum().
2000-02-14 21:42:50 +00:00
thorpej dded044fc2 Update for the NKMEMPAGES changes. 2000-02-11 19:25:12 +00:00
msaitoh 986d236119 remove COMPAT_NOMID stuff 2000-02-06 13:13:20 +00:00
kleink 36e6bc645e Improve namespace test macros a bit. 2000-02-05 14:04:36 +00:00
cgd 7d16ac338c add __BROKEN_CONFIG_UNIT_USAGE #define, becuase these ports do very
wrong things with device configuration data "cf_unit" information.
2000-02-05 00:13:22 +00:00
kleink 82464e46d6 Add a C99-style va_copy macro. 2000-02-03 16:16:06 +00:00
tsutsui 11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
tsutsui b0fbaa33fb Remove obsoleted macros. 2000-01-26 09:44:10 +00:00
drochner 8eb798e603 define a "BUS_SPACE_MAP_PREFETCHABLE" flag which basically means that
device accesses are idempotent (but should not be cached by the CPU)
2000-01-25 22:13:17 +00:00
tron 04eb110431 Add "dependall" target for comfort. 2000-01-24 20:36:06 +00:00
sommerfeld aa195e816f Fix PR9240: comment above cpu_fork() out of synch with reality on most ports.
(comment change only, but was wrong for more than just i386).
2000-01-20 22:18:54 +00:00
thorpej a0397a2573 Move callout initialization to a single location; no need to duplicate
that code all over the place.
2000-01-19 20:05:30 +00:00
tsutsui e61f177ab1 STRIP -> STRIPPROG 2000-01-19 16:29:54 +00:00
thorpej 4f27a98702 Use b_cylinder as defined in sys/buf.h 2000-01-18 19:48:02 +00:00
msaitoh c330a893d5 - check whether tv_usec == 1000000, too.
- set the reload count of the timer unit 1 correctly
  (Timer unit counts from TCOR to 0 (i.e. the length of the counts equals
  to TCOR + 1)).
- use macros.
2000-01-17 21:54:32 +00:00
msaitoh 8cf5a56c3f add some bit definitions 2000-01-17 21:41:13 +00:00
kleink 6910891781 Add NAN constant glue for sh3. 2000-01-17 16:27:53 +00:00
msaitoh 150090f9b8 inittodr() and resettodr() supports SH4 2000-01-15 02:46:30 +00:00
msaitoh 5cb845afcd remove SH3_PHYS_TO_P1SEG macro 2000-01-14 21:02:40 +00:00
msaitoh 1e15a3117c use clock_subr.c 2000-01-14 19:41:36 +00:00
msaitoh 06c297195a in_cksum.c ->in_cksum.S 2000-01-14 19:20:32 +00:00
msaitoh f485f2635c add SH3_{PHYS,P1SEG,P2SEG}_TO_{PHYS,P1SEG,P2SEG} macros 2000-01-14 19:09:35 +00:00
msaitoh 69fcc26071 write through bit (SH4) 2000-01-14 16:06:11 +00:00
msaitoh 2d4348b99d in_cksum.S (bi-endian) 2000-01-14 15:47:42 +00:00
msaitoh 80d920c3d0 block prototype definitions with _LOCORE (for .S) 2000-01-14 15:46:02 +00:00
msaitoh ac8d6acaa7 add cpgreg.h and pfcreg.h for "make includes" 2000-01-14 13:58:06 +00:00
msaitoh cf37b6ff3b KNF 2000-01-12 14:40:27 +00:00
msaitoh 08b1e4a63f enable cpu_coredump() 2000-01-07 12:01:00 +00:00
msaitoh b3fa48ba9d implement send/recieve break signal routines 2000-01-07 10:50:14 +00:00
msaitoh 1020615169 use PSL_IMASK macro 2000-01-07 00:13:24 +00:00
msaitoh 518cfb0bde userret() if the user process will be killed.
Now the NetBSD/sh3 works very stable!
2000-01-03 02:55:25 +00:00
msaitoh b75406e24f remove exec_coff.h 2000-01-02 13:40:55 +00:00
msaitoh da3eeac505 EXEC_COFF cleanup 2000-01-02 13:39:49 +00:00
msaitoh b682f09cbb fix missing SCI IRQ mask/unmask code. 1999-12-27 10:50:41 +00:00
msaitoh 1d5d46cad0 round_page(data_segment_size), too 1999-12-24 08:32:58 +00:00
msaitoh 05781b11af back to previous one (suggested by cgd) 1999-12-24 08:29:23 +00:00
msaitoh 8427734872 move sysctl definitions into ${MACHINE}/include/cpu.h 1999-12-21 22:19:16 +00:00
msaitoh 1e7bb23911 add some register definitions 1999-12-21 22:06:04 +00:00
msaitoh 79f94c37ab G.C. 1999-12-21 18:21:53 +00:00
msaitoh 45cbcdba34 round textsize only if the binary is demand-pagable
(for backward compatibility)
1999-12-17 08:25:35 +00:00
msaitoh e7924755fa - round_page(ep_tsize). This fixes a bug which cause panic in pmap_enter_pv().
- DPRINTF cleanup.
1999-12-16 16:50:08 +00:00
msaitoh 650e62ebf5 demand paging for ZMAGIC SH COFF binary! 1999-12-09 08:33:15 +00:00
msaitoh f7bd242b6f calculate microtime() correctly. 1999-12-08 20:39:45 +00:00
msaitoh e7c433b9d5 fix copyinstr(9) bug (from Charles M. Hannum). 1999-12-08 17:12:21 +00:00
ragge 26e1b45757 clrnd()/clbase() discarding. 1999-12-05 11:56:30 +00:00
ragge 0513268399 CL* discarding. 1999-12-04 21:13:19 +00:00
fvdl d116707af0 Add
prefix ../gnu/sys
cinclude "conf/files.softdep"
prefix

to all std.* files, so that soft dependencies can be activated using
"options SOFTDEP".
1999-11-15 19:00:25 +00:00
thorpej 1946167939 Update for pmap_enter() API change. No functional difference. 1999-11-13 00:30:26 +00:00
kleink 522cbf0248 Update to match new SVR4-style definition names in <sys/exec_elf.h>. 1999-10-25 13:55:06 +00:00
msaitoh d478b71746 print a trap type in hexadecimal instead of decimal. 1999-10-21 22:50:53 +00:00
msaitoh 3c51010f6a - unset RS/CS flow control bit from default setting
- GC
1999-10-06 09:19:46 +00:00
msaitoh 2f74c366d0 Fix RWKREG register reset code in resettodr(). 1999-09-23 05:34:03 +00:00
tsubai 0afae6fc87 Move common parts of machdep.c to sh3_machdep.c. 1999-09-21 13:16:15 +00:00
thorpej 11cae42531 Centralize the declaration and clearing of `cold'. 1999-09-17 19:59:35 +00:00
msaitoh adc175c443 check SCI(F)CONSOLE 1999-09-17 01:23:00 +00:00
msaitoh f921a6e9c5 sync with tmureg.h 1999-09-16 21:17:46 +00:00
msaitoh 9211d6bed4 sync with sci*.h and tmureg.h 1999-09-16 21:17:26 +00:00
msaitoh d9a70fd1dc cleanup 1999-09-16 21:15:36 +00:00
msaitoh 7977bd843d enclose tlbflush(), disable_intr() and enable_intr() with #ifder _KERNEL 1999-09-16 14:42:27 +00:00
msaitoh 224d34b5e1 remove sh3/include/mmeye.h 1999-09-16 13:32:24 +00:00
msaitoh ffbd08b126 remove extra Id 1999-09-16 12:48:35 +00:00
msaitoh 814f6b8936 add NetBSD RCS ID 1999-09-16 12:48:06 +00:00
thorpej 3b01d1b872 Rename the machine-dependent autoconfiguration entry point `cpu_configure()',
and rename config_init() to configure() and call cpu_configure() from there.
1999-09-15 18:10:33 +00:00
tsubai 40905bd3ec Catch up with -current. 1999-09-14 10:22:34 +00:00
msaitoh 427928b3a1 add some comments. 1999-09-13 19:13:09 +00:00
msaitoh ac3fe6d372 remove mainbus pseudo floppy drive 1999-09-13 16:26:17 +00:00
itojun 14971ca02a add local def for CXX. 1999-09-13 15:50:01 +00:00
itojun 65363da25e Merge in NetBSD/sh3 from cvs.kame.net repository.
Tree structure:
- sys/arch/sh3: sh3 generic code
	As commented, in-chip device drivers are put into sys/arch/sh3/dev.
- sys/arch/evbsh3: sh3 evaluation boards (pure sh3 CPU, no fancy external HW)
- sys/arch/mmeye: Brains mmEye, www.brains.co.jp
MI source code includes couple of #ifdef for sh3-coff support.
(sh3 uses coff or elf)

Needs some more improvements, especialy in sys/arch/sh3/conf/files.sh3,
to compile the tree (due to last minute tree structure change).
1999-09-13 10:30:21 +00:00