Commit Graph

210 Commits

Author SHA1 Message Date
uch
39425a7420 fix bug of TMU0 interrupt priority level setting. (my previous commit broke it.) 2002-03-06 15:03:21 +00:00
uch
2f603eaa17 CTL_MACHDEP definitions are integrated into sh3/include/cpu.h again. 2002-03-04 14:36:13 +00:00
uch
bf5bf0be48 remove obsolete headers. 2002-03-03 14:59:55 +00:00
uch
17fbf85dc3 machine dependent sysctl are moved to machine/cpu.h
dreamcast, hpcsh ... CPU_CONSDEV
	mmeye, evbsh3	 ... CPU_CONSDEV, CPU_LOADANDRESET
2002-03-03 14:28:48 +00:00
uch
9c21656766 cpu_dumpconf, reserve_dumppages, dumpsys, cpu_reset are moved to sh3/sh3_machdep.c 2002-02-28 16:54:28 +00:00
simonb
4324f37586 Use "#define<tab>". 2002-02-28 03:17:23 +00:00
uch
2e904b2d1e s/MMEYE_NO_CACHE/CACHE_DISABLE/ 2002-02-28 01:58:18 +00:00
uch
bbc655c4fb Cleanup register definition 2002-02-28 01:56:57 +00:00
uch
40382c6556 Change foo_r0_r1 macro in sh3/locore.h to foo(Rn, Rm) 2002-02-28 01:53:42 +00:00
uch
06fbd079f5 Remove unneeded header. 2002-02-28 01:52:28 +00:00
christos
6b030ee036 - define other DEV_ constants that the local port uses.
- delete cdev_decl(mm) since <sys/conf.h> does it.
2002-02-27 01:19:03 +00:00
simonb
d9ab16ba2f Purge CLSIZE, CLSIZELOG2 and MCLOFSET.
Be consistant in the way that MSIZE, MCLSHIFT, MCLBYTES and NMBCLUSTERS
  are defined.
Remove old VM constants from cesfic port.
Bump MSIZE to 256 on mipsco (the only one that wasn't already 256).
2002-02-26 15:13:19 +00:00
uch
693be1956c Move common exception vector and scheduler code to
sh3/sh3/exception_vector.S and sh3/sh3/locore_subr.S. exception
vectors are installed by sh_cpu_init().  machine/locore.S contains
kernel entry, interrupt handler, and some MD code.
2002-02-24 18:19:40 +00:00
uch
45407e955f setjmp,longjmp are moved to sh3/locore_subr.S 2002-02-22 19:45:31 +00:00
uch
f694c9fdd7 New NetBSD/sh3 clock framework.
+ hardclock source is moved from TMU1 to TMU0.
 + SH3/SH4 common kernel support.
 + PCLOCK estimation.
 + remove duplicated code.
2002-02-22 19:43:58 +00:00
uch
1bdc7cc5ca Clean up functions
disable_intr, enable_intr, disable_interrupt, enable_interrupt,
disable_ext_intr, enable_ext_intr.
New functions:
for external interrupt:
_cpu_intr_suspend and _cpu_intr_resume.
for exception:
_cpu_exception_suspend and _cpu_exception_resume.
2002-02-19 17:21:18 +00:00
uch
6e0794b560 To determine CPU architecture and product, add cpu_arch and cpu_prduct variables.
these are initialized by sh_cpu_init()@sh3/sh3_machdep.c
(see sh3/include/cputypes.h for detail.)
add "options SH3" for SH3 kernel config file.
2002-02-17 20:59:33 +00:00
uch
70826aa2cd sh_cpu_init() is added. its initialize cache, MMU ops appropriately.
machine locore code call this at first.
2002-02-17 20:57:09 +00:00
uch
615800d782 Fix calling convention. r0-r7 are caller saved. 2002-02-17 20:53:01 +00:00
uch
26c1382e72 sync with PTE bit change. 2002-02-11 18:06:34 +00:00
jdolecek
6d265bd894 add options PIPE_SOCKETPAIR to individual kernel configs
the option is commented out on everything but kernels I was able
to recognize as INSTALL-like or ones for small memory machines
2002-01-27 13:23:08 +00:00
manu
af62e00622 Added clockctl 2002-01-12 13:11:08 +00:00
lukem
ecb81c3f6d - convert usage of "defopt" to "defflag" where the relevant option does
not support a value (e.g., it's to be used as "options FOO" instead of
  "options FOO=xxx"). options that take a value were converted to
  defparam recently.
- minor whitespace & formatting cleanups
2001-11-28 10:21:10 +00:00
lukem
0fa231134c - replace "defopt" with "defparam" for options which must take a value,
as config(8) will warn for value-less defparam options
- minor whitespace/formatting cleanup
- consolidate opt_tcp_recvspace.h and opt_tcp_sendspace.h into opt_tcp_space.h
2001-11-20 14:34:18 +00:00
lukem
03aef4723c cleanup:
options SPACE TAB
	makeoptions TAB
	psuedo-device TAB
	remove trailing whitespace
	replace multiple spaces -> tabs
	options "FOO" -> options FOO
	options "FOO=bar" -> options FOO=bar
	options "FOO=\"bar\"" -> options FOO="\"bar\""
2001-11-20 12:56:17 +00:00
lukem
99bccc3cab - pull in opt_kgdb.h where necessary
- replace opt_kgdb_machdep.h with opt_kgdb.h
- defparam opt_kgdb.h:
	KGDB_DEV KGDB_DEVNAME KGDB_DEVADDR KGDB_DEVRATE KGDB_DEVMODE
- move from opt_ddbparam.h to opt_ddb.h:
	DDB_FROMCONSOLE DDB_ONPANIC DDB_HISTORY_SIZE DDB_BREAK_CHAR SYMTAB_SPACE
- replace KGDBDEV with KGDB_DEV
- replace KGDBADDR with KGDB_DEVADDR
- replace KGDBMODE with KGDB_DEVMODE
- replace KGDBRATE with KGDB_DEVRATE
- use `9600' instead of `0x2580' for 9600 baud rate
- use correct quotes for  options KGDB_DEVNAME="\"com\""
- use correct quotes for  options KGDB_DEV="17*256+0"
- remove unnecessary dependancy on Makefile for kgdb_stub.o
- minor whitespace cleanup
2001-11-20 08:43:19 +00:00
msaitoh
32b3143333 Fix incorrect kernelmode check in INTRENTRY macro.
Broken INTRENTRY causes CPU reset when sigaltstack is used.
2001-10-27 03:46:19 +00:00
thorpej
9e91d48638 This file only set MACHINE, which is now set by config(8); delete it. 2001-10-23 19:52:49 +00:00
chris
0e7661f023 Update pmap_update to now take the updated pmap as an argument.
This will allow improvements to the pmaps so that they can more easily defer expensive operations, eg tlb/cache flush, til the last possible moment.

Currently this is a no-op on most platforms, so they should see no difference.

Reviewed by Jason.
2001-09-10 21:19:08 +00:00
msaitoh
e380d9806e devclass of sci[f] is tty 2001-08-22 13:32:45 +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
abs
01b024cd5b Standardise TCP_COMPAT_42 as commented out, grouped with other COMPAT options,
and with the comment '4.2BSD TCP/IP bug compat. Not recommended'
Add commented out 'TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG'
(All hail amiga and atari which make some attempt to automate the
multiplicity of config files...)
2001-07-08 16:32:12 +00:00
ichiro
c65c21e1f7 bcopy -> memcpy
bzero -> memset
2001-07-07 10:43:11 +00:00
lukem
d84d2c6c85 add missing #include "opt_kgdb.h" 2001-05-30 15:24:23 +00:00
msaitoh
9ae59f3041 convert two consecutive "shll"s with one "shll2" 2001-05-15 08:54:56 +00:00
thorpej
1c3a62e066 Sprinkle pmap_update() calls after calls to:
- pmap_enter()
- pmap_remove()
- pmap_protect()
- pmap_kenter_pa()
- pmap_kremove()
as described in pmap(9).

These calls are relatively conservative.  It may be possible to
optimize these a little more.
2001-04-24 04:30:50 +00:00
uch
63ec3bc3fa dreamcast clock module was separated. 2001-04-23 11:20:41 +00:00
ichiro
cb893abf13 typo
PGOFFSET -> PGOFSET
2001-04-18 01:35:14 +00:00
kleink
f06533a1ee Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 17:13:04 +00:00
kleink
739cb75837 Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 15:29:02 +00:00
kleink
cdcf9f46c5 Add definitions of C99 integer constant macros.
Tidy Makefiles up a little.
2001-04-14 22:46:19 +00:00
kleink
a7c20e5788 Add definitions of C99 integer constant macros. 2001-04-14 22:38:33 +00:00
kleink
7affdab52e Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-14 12:19:49 +00:00
lukem
20ba07f2fe - add dev_noimpl(xxx,yyy) macro to replace "(dev_type_xxx((*))) yyy",
and use appropriately

- create more helper macros:
   . cdev__xyz_init(c,n), such as cdev__ocri_init() for
     /* open, close, read, ioctl */, etc.
   . cdev__xRy_init(c,n), where nullop is used instead of enodev to dummy out
     method `R' and the comments now read /* xxx (read) yyy */ instead
   . cdev__xyz_t_init(c,n,t) - as per cdev__xyz_init, but sets d_type = t
     as well

- use seltrue instead of dev_noimpl(poll,*), as (IIRC) cdevsw.d_poll should
  always DTRT WRT returning a valid result.  (a few devices previously
  incorrectly returned ENODEV)

- use dev_noimpl(stop,enodev) instead of dev_noimpl(stop,nullop) if tty
  == 0, because it doesn't matter if dev_type_stop isn't implemented in that
  case, and it allows the use of the cdev__xyz_init macros. certain ports
  (sparc,sparc64,x68k) used the nullop method for dev_type_stop in a few
  drivers, whereas everything else uses enodev

- ensure that the comments are accurate WRT the behaviour of a given entry
2001-03-26 12:33:22 +00:00
uch
e0a4623854 move disksubr.c define to machine-port. 2001-02-21 16:42:04 +00:00
msaitoh
2633a5dcb5 _C_LABEL() 2001-02-14 17:57:31 +00:00
uch
78af56fcfd move VM_PHYSSEG_MAX, VM_NFREELIST, VM_FREELIST_DEFAULT defines to
machine/vmparam.h
2001-02-07 14:53:09 +00:00
uch
6a7b420b7e move machine-port specific file to machine directory.
for evbsh3, mmeye and dreamcast, use MI md_root.c
2001-02-06 16:45:19 +00:00
thorpej
40c4d1e0c3 Rename the CLI/STI/ECLI/ESTI macros to more descriptive names,
and add comments to describe exactly what they do (because it's
not totally obvious at a glance, due to the number juggling necessary
to frob the correct bits in SR):

CLI -> EXCEPT_DISABLE (sets SR.BL)
STI -> EXCEPT_ENABLE (clears SR.BL)

ECLI -> INTR_DISABLE (sets SR.I[0-3])
ESTI -> INTR_ENABLE (clears SR.I[0-3])
2001-02-05 18:14:42 +00:00
uch
cd5dc32000 add SH3 CCR register address define. 2001-02-05 16:51:16 +00:00
msaitoh
e0b71cc821 fix last commit. 2001-01-30 03:01:45 +00:00
msaitoh
e094a52b1f fix pmap_* arguments when SH4_PCMCIA is defined. 2001-01-30 02:39:57 +00:00
msaitoh
69ababe7ba more use _C_LABEL() 2001-01-30 01:32:56 +00:00
msaitoh
14bda6deb9 use macro for CCR register 2001-01-29 22:19:19 +00:00
tv
e58532a4bf No-op commit to force update to a non-"-kk" revision. 2001-01-18 17:47:58 +00:00
fvdl
c7f1462f3e Add machdep file for procfs. Currently only used for linux-style
/proc/cpuinfo (only active when procfs is mounted with -o linux).
For ports other than the i386 this currently produces an empty
string.
2001-01-17 00:07:18 +00:00
itojun
1efb35296f do not include mmeye.h 2001-01-16 23:57:21 +00:00
itojun
a1c683863b remove evbsh3/mmeye.h. it shouldn't be necessary, or at least it has to
be renamed to something better.
XXX dreamcast/mmeye.h
2001-01-16 17:36:02 +00:00
itojun
85b6e2618d typo 2001-01-16 17:13:28 +00:00
thorpej
d74e432ed3 Make softclock a generic soft interrupt of the API is available,
adding the requisite void * argument to softclock().
2001-01-15 20:19:50 +00:00
itojun
1e7e3274f4 split MACHINE_ARCH sh3e[lb]. userland build still needs checking. 2001-01-04 07:03:21 +00:00
itojun
f5f5aac99a look at __LITTLE_ENDIAN__ (gcc symbol) to determine which endian we are in.
makes the file bi-endian.
2001-01-04 00:51:15 +00:00
itojun
16b3064038 split big/little endian better. 2001-01-03 23:49:21 +00:00
itojun
1d25215235 $NetBSD$ 2001-01-03 18:15:47 +00:00
itojun
10e1d3091a share sys/arch/sh3/conf/Makefile.sh3 across sh3-based architectures.
cleanup param.h a bit.
2001-01-03 18:14:44 +00:00
itojun
f66249f478 dreamcast went to sys/arch/dreamcast 2001-01-03 17:59:02 +00:00
jdolecek
cacec11253 delete obsolete comment 2000-12-17 15:52:39 +00:00
msaitoh
5cb13a674a add shpcmcia_mem*() for SH4_PCMCIA 2000-11-08 01:01:22 +00:00
msaitoh
d191cbf210 add interrupt mode into wdog
To use:

	ioctl(fd, SIOWDOGSETMODE, &val)

	val:	WDOGM_RESET	-> reset when counter expired
		WDOGM_INTR	-> print PC when counter expired (new!)

This interface is still under experimental.
2000-10-31 02:04:12 +00:00
msaitoh
ec7e30e271 fix compile problem on SH3 (from Atsushi Noda) 2000-10-31 01:18:02 +00:00
msaitoh
c258b5a193 delete PMAP_NEW 2000-10-17 09:59:29 +00:00
msaitoh
3c5d2c7fac avoid SH7709A's serious bug (it fails to read IPR* registers under particular
circumstances)
2000-09-29 08:08:37 +00:00
msaitoh
f487c6c12e check whether both COMPUTEXEVB and SH7709A is defined to access special
register.
2000-09-26 22:23:55 +00:00
msaitoh
7c1b5c5599 fix SDMR settings:
- s/BSC_SDMR_VAL/BSC_SDMR3_VAL/
 - add options COMPUTEXEVB
2000-09-26 22:20:03 +00:00
jdolecek
b1f94e26ab don't specify number of ptys if >= 16 (current default initial number)
pty comments: normalize and g/c what is no longer relevant
2000-09-24 15:59:26 +00:00
tsubai
9fdd44d404 DDB single step and stack trace support. 2000-09-08 10:15:23 +00:00
msaitoh
85c00d0fed refer MMUCR_VALIDBITS from mmureg.h 2000-09-04 05:50:45 +00:00
tsubai
f286397ff1 Scheduler locking changes. 2000-08-30 18:41:16 +00:00
msaitoh
4a9013cf38 add code to mask mmucr register (SH4 only)
I'm sorry, I'd forgotten to commit it for a long time.
2000-08-17 13:13:28 +00:00
msaitoh
a8fe4a6776 check INTEVT_SCIF (SH4 only)
I'm sorry, I'd forgotten to commit it for a long time.
2000-08-17 13:07:51 +00:00
msaitoh
4c0e0bb61c - enable KERNFS and PROCFS
- disable NULLFS and UMAPFS
2000-08-12 06:59:01 +00:00
msaitoh
7803e30fde - remove "options PMAP_NEW"
- enable "options INET"
 - enable "pseudo-device loop"
2000-08-12 06:53:37 +00:00
msaitoh
7e0d8cf541 hide InitializeBSD if DONT_INIT_BSC is defined 2000-08-11 15:11:22 +00:00
msaitoh
18f2e17644 fix the first (temporary) kernel stack address
from	IOM_RAM_BEGIN + 0x003ff000
	to	IOM_RAM_BEGIN + IOM_RAM_SIZE - 0x00001000
2000-08-11 14:51:08 +00:00
msaitoh
468e8d8cef unused file (use 'makeoptions LDSCRIPBASE="shl.x"' for little endian) 2000-08-08 05:24:28 +00:00
msaitoh
ac06675f56 add COMPAT_14 2000-08-03 11:30:30 +00:00
msaitoh
9b50348e47 set internal register correctly (SH4) 2000-08-03 08:19:26 +00:00
msaitoh
9c331f1f89 use 'makeoptions LDSCRIPTBASE="sh.x"' (or shl.x) to select ldscript file 2000-07-31 20:57:45 +00:00
msaitoh
1fa850b0ef config file for Dreamcast 2000-07-13 18:11:53 +00:00
msaitoh
e633c4ca18 don't initialize BSC when BSC is already initialized (e.g. Dreamcast) 2000-07-13 18:02:10 +00:00
msaitoh
dc6054c8b0 add OBJCOPY?=objcopy 2000-07-11 18:47:09 +00:00
cgd
a5c13f9ad4 Kwality control:
* put #includes of opt headers and headers to get protos used by
  net/netisr_dispatch.h in net/netisr.h (if !defined(_LOCORE)) (rather than
  in netisr_dispatch.h itself, and potentially nowhere, respectively).
* require netisr.h to be included before netisr_dispatch.h.
* minor additional cleanup of both netisr.h and netisr_dispatch.h.
* clean up uses to remove now-unnecessary header file inclusions, and
  local prototypes of the fns.
* convert netisr dispatch implementations which didn't use
  netisr_dispatch.h (pc532) to use it.
2000-07-02 04:40:33 +00:00
itojun
d738f90fd7 raise MSIZE from 128 to 256.
- for sizeof(void *) == 8 arch, this is mandatory.  MHLEN is too small
  already (less than 80) and there are chances for unwanted packet loss due
  to m_pullup restriction.
- for other cases, the change should avoid allocating clusters in most cases
  (even when you have IPv4 IPsec tunnel, or IPv6 with moderate amount of
  extension header)

portmasters: if your arch chokes with the change (high memory usage or
whatever), please backout the change for your arch.
2000-06-30 17:55:11 +00:00
mrg
7bf55b1ed1 remove include of <vm/vm.h>. 2000-06-29 08:19:21 +00:00
kleink
e695f72a2e Add <machine/int_types.h>, which provides namespace-pure definitions
of exact-width integer types.
2000-06-26 15:42:16 +00:00
mrg
2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
fvdl
1ee7d22c0b Remove prefix construction for softdeps. Add SOFTDEP option to GENERIC. 2000-06-22 20:27:49 +00:00
msaitoh
61d02add45 remove extra NOPs because "bf" and "bt" instruction have no delayed slot. 2000-06-07 05:28:17 +00:00
soren
a9aa2abf94 defopt SYSCALL_DEBUG. 2000-06-06 18:52:30 +00:00
thorpej
8871d8563a Add a comment on single-processor systems about p_cpu being initialized
by fork1().
2000-05-31 05:06:43 +00:00