Commit Graph

167 Commits

Author SHA1 Message Date
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
nisimura
0e80e9cd4b Minor comment adjustments. cpu_switch has an argument of struct proc *. 2000-05-31 01:46:15 +00:00
thorpej
a7d0570e67 First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

	- Global state: sched_qs (run queues), sched_whichqs (bitmap
	  of non-empty run queues), sched_slpque (sleep queues).
	  NOTE: These may collectively move into a struct schedstate
	  at some point in the future.

	- Per-CPU state, struct schedstate_percpu: spc_runtime
	  (time process on this CPU started running), spc_flags
	  (replaces struct proc's p_schedflags), and
	  spc_curpriority (usrpri of processes on this CPU).

	- Every platform must now supply a struct cpu_info and
	  a curcpu() macro.  Simplify existing cpu_info declarations
	  where appropriate.

	- All references to per-CPU scheduler state now made through
	  curcpu().  NOTE: this will likely be adjusted in the future
	  after further changes to struct proc are made.

Tested on i386 and Alpha.  Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
2000-05-26 21:19:19 +00:00
thorpej
a787870607 From tusbai@netbsd.org:
Simplify SONPROC change.  (and now compiles)
2000-05-26 12:57:11 +00:00
thorpej
8964c35eca Introduce a new process state distinct from SRUN called SONPROC
which indicates that the process is actually running on a
processor.  Test against SONPROC as appropriate rather than
combinations of SRUN and curproc.  Update all context switch code
to properly set SONPROC when the process becomes the current
process on the CPU.
2000-05-26 00:36:42 +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
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
msaitoh
9a41bed54e move the Interrput Priority Level (IPL_*) definitions into MD part. 2000-04-13 15:36:09 +00:00
simonb
2f1fef39b3 Centralise the declarations of cpu_model, machine, machine_arch,
osrelease, and ostype and remove "extern char foo[];" (for hostname
and domainname too).

Also delete redunctant decl of boottime in kern_info_43.c.
2000-03-28 23:57:24 +00:00
msaitoh
ddb9af1bfe set SQMD bit when sh4 2000-03-25 03:07:29 +00:00
msaitoh
b39aeb4493 use BSC_PCR_VAL 2000-03-25 02:51:57 +00:00
cgd
7c35662066 add commented out option PCI_CONFIG_DUMP whever there's a PCIVERBOSE. 2000-03-22 00:58:16 +00:00
itojun
fb2faae278 add prototype for ip6intr (not tested). 2000-03-21 04:42:57 +00:00
msaitoh
d2be696634 use SDMR2 and SDMR3 2000-03-20 22:27:16 +00:00
msaitoh
ff49b7006c move MMUCR register definitions into mmureg.h 2000-03-20 20:30:33 +00:00
msaitoh
f1a4c4f9e7 Computex's SH7750 evaluation board 2000-03-20 20:11:00 +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
msaitoh
a84d573e15 KZ-SH4-01 (Kyoto Micro Computer Co.,LTD) 2000-02-24 23:33:59 +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
e2cc2d00d7 watchdog timer 2000-02-24 17:07:34 +00:00
erh
8f03b9a04a Define the DONETISR macro and use netisr_dispatch.h. This is to cut down on code duplication and to standardize the available NETISRs across all ports. 2000-02-21 20:38:46 +00:00
thorpej
dded044fc2 Update for the NKMEMPAGES changes. 2000-02-11 19:25:12 +00:00
msaitoh
96250cd570 fix the calculation bug for the LMA of bss. 2000-02-06 16:53:57 +00:00
tsutsui
11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
tron
04eb110431 Add "dependall" target for comfort. 2000-01-24 20:36:06 +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
msaitoh
7d3068a3b4 use macros 2000-01-17 21:59:43 +00:00
kleink
6910891781 Add NAN constant glue for sh3. 2000-01-17 16:27:53 +00:00
msaitoh
39caf082ca use _C_LABEL() 2000-01-12 14:41:44 +00:00
msaitoh
908d5761a1 OBJCOPY?=objcopy 2000-01-12 14:40:49 +00:00
msaitoh
665e9462e5 s/ECOFF/COFF/ (comment only) 2000-01-07 11:20:41 +00:00
msaitoh
049ad0d982 machine/exec_coff.h -> sys/exec_coff.h 2000-01-07 09:40:33 +00:00
msaitoh
941be5884f computex(computex.co.jp)'s evaluation board. 1999-12-27 11:17:14 +00:00
msaitoh
b682f09cbb fix missing SCI IRQ mask/unmask code. 1999-12-27 10:50:41 +00:00
msaitoh
d73af2f624 use _C_LABEL() 1999-12-26 20:32:11 +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
67f8a5ca5b fix the usage of .align 2 1999-12-21 21:41:56 +00:00