kleink
dadbb7e784
There is no extended-precision format on sh3.
2001-05-03 13:19:52 +00:00
scw
2963ff5c58
Add l_poll' to
struct linesw' and provide an xxxpoll() entry point
...
in each tty driver to indirect through it.
This allows tty line-disciplines to handle poll(2) system calls.
2001-05-02 10:32:08 +00:00
thorpej
cf67ac7122
Per discussion w/ chuck and chuck, restructure the md page stuff
...
to use a structure called "vm_page_md", and use __HAVE_VM_PAGE_MD
and __HAVE_PMAP_PHYSSEG.
2001-05-01 02:19:13 +00:00
thorpej
2b27ac7a99
Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for
...
each vm_page structure. Add a VM_MDPAGE_INIT() macro to init this
data when pages are initialized by UVM. These macros are mandatory,
but ports may #define them to nothing if they are not needed/used.
This deprecates struct pmap_physseg. As a transitional measure,
allow a port to #define PMAP_PHYSSEG so that it can continue to
use it until its pmap is converted to use VM_MDPAGE_MEMBERS.
Use all this stuff to eliminate a lot of extra work in the Alpha
pmap module (it's smaller and faster now). Changes to other pmap
modules will follow.
2001-04-29 22:44:31 +00:00
kleink
fe3c9ceaf7
* Move definitions of exact-width integer types from <machine/types.h>
...
to <sys/types.h> and <sys/stdint.h>.
* Add a new C99 <stdint.h> header, which provides integer types of
explicit width, related limits and integer constant macros.
* Extend <inttypes.h> to provide <stdint.h> definitions and format
macros for printf() and scanf().
* Add C99 strtoimax() and strtoumax() functions.
* Use the latter within scanf().
* Add C99 %j, %t and %z printf()/scanf() conversions for
intmax_t, pointer-type and size_t arguments.
2001-04-28 15:41:28 +00:00
kleink
99054d7a6c
Add definitions for C99 fastest minimum-width integer types.
2001-04-26 16:25:19 +00:00
thorpej
d7e12660a3
Work around the problem that causes kern/12554. Basically,
...
there are some pathological cases that cause pmap_page_protect()
to be called on a wired page to revoke all mappings. We
need to skip mappings that are actually wired to prevent Bad
things from happening later.
THIS IS JUST A WORK-AROUND. We need to prevent the pathological
behavior from happening in UVM to begin with. But it's unclear
what the right solution is there, right now.
2001-04-25 16:18:24 +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
thorpej
55044638aa
Remove pmap_kenter_pgs(). It was never really adopted by
...
anything, and the interface itself wasn't as flexible as
callers would have probably liked.
2001-04-22 23:42:11 +00:00
thorpej
69abdbf60c
Undo a misguided previous change to the pmap_update() API.
2001-04-22 23:19:26 +00:00
uch
103b08ffa1
make this compile again under SH4
2001-04-22 17:37:55 +00:00
uch
95f0d5c680
add RTC control register 1 defines.
2001-04-22 16:50:17 +00:00
thorpej
4738622712
Give pmap_update() an argument (a pmap_t) so that it knows which
...
pmap it should be updating.
2001-04-22 00:33:59 +00:00
thorpej
15f731ee94
pmap_update() should not be equated with "flush entire TLB", it is
...
used to process deferred pmap operations. Since these pmaps don't
defer anything, pmap_update() is a noop.
2001-04-21 17:25:01 +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
thorpej
bf2dcec4f5
Remove the use of splimp() from the NetBSD kernel. splnet()
...
and only splnet() is allowed for the protection of data structures
used by network devices.
2001-04-13 23:29:55 +00:00
marcus
b6c1c5d49a
Altentries should also be marked as functions, to keep linker happy.
2001-04-09 20:31:20 +00:00
marcus
e0d02d24d5
Mark syscalls as functions.
2001-04-09 15:52:59 +00:00
marcus
0640ad6ace
When the endians are little, they are little.
2001-03-29 03:23:33 +00:00
matt
f283c0a504
Use ${THISSH3} instead of ../.. ; not everyone builds in ../compile/FOO
2001-03-24 18:26:11 +00:00
chs
e47583af2c
missed some KERN_FAILUREs.
2001-03-18 23:43:53 +00:00
chs
ac3bc537bd
eliminate the KERN_* error codes in favor of the traditional E* codes.
...
the mapping is:
KERN_SUCCESS 0
KERN_INVALID_ADDRESS EFAULT
KERN_PROTECTION_FAILURE EACCES
KERN_NO_SPACE ENOMEM
KERN_INVALID_ARGUMENT EINVAL
KERN_FAILURE various, mostly turn into KASSERTs
KERN_RESOURCE_SHORTAGE ENOMEM
KERN_NOT_RECEIVER <unused>
KERN_NO_ACCESS <unused>
KERN_PAGES_LOCKED <unused>
2001-03-15 06:10:32 +00:00
itohy
7ffa2a0375
Add RTC_OFFSET support to inittodr() on dreamcast.
...
No changes to other sh ports.
2001-03-07 00:47:22 +00:00
thorpej
51aeeceeaf
Clean up TLB trap handling a little.
...
- When printing a user trap, include p->p_comm in the message.
- In the TLB fault handler, don't just go charging along if
the fault can't be handled. If we get a fatal kernel TLB
fault, we need to panic! Or, if DDB is enabled, call the
Debugger().
2001-03-06 21:58:23 +00:00
msaitoh
0aa1f3d01e
modify target name because we can't recommend to use pkgsrc/cross
...
(though I'm not the person who did such BAD modification)
2001-02-27 14:05:53 +00:00
msaitoh
bba3f2423b
add comment about $CPP
...
From source:
# XXX following definition is absolutely incorrect.
# Our cpp is not /usr/libexec/cpp but /usr/bin/cpp.
# True solution is:
# 1) copy /usr/bin/cpp into /usr/local/bin/sh-*-*-cpp
# 2) Edit CPP in sh-*-*-cpp correctly
# (e.g. "CPP=`$CC -print-prog-name=cpp`").
# 3) Edit STDINCDIR in sh-*-*-cpp correctly
# (e.g. STDINCDIR=/usr/local/sh-unknown-netbsdcoff/include)
# BROKEN
CPP=`$TARGET-gcc -print-prog-name=cpp`
# EXAMPLE
#CPP=/usr/local/bin/sh-unknown-netbsdcoff-cpp
#CPP=/usr/local/bin/sh-unknown-netbsdelf-cpp
2001-02-26 08:46:15 +00:00
msaitoh
6c4c53a461
add "MACHINE_CPU=sh3"
2001-02-26 08:24:20 +00:00
msaitoh
bc759e0d8d
check __LEADING_UNDERSCORE
2001-02-25 19:15:04 +00:00
msaitoh
526ce203e7
check __LEADING_UNDERSCORE instead of __sh3__
2001-02-25 15:49:58 +00:00
uch
e0a4623854
move disksubr.c define to machine-port.
2001-02-21 16:42:04 +00:00
uch
8ce0133cc8
add SH7709/SH7709A I/O port register define
2001-02-21 14:49:53 +00:00
msaitoh
c090c1cfe5
temporary fix a serious pmap problem with dummy PMAP_{MAP,UNMAP}_POOLPAGE().
...
To fix correctly, set IOM_RAM_BEGIN with P0 addr instead of P1 addr and
fix machdep.c and pmap.c.
2001-02-19 17:51:22 +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
c8cdb12913
Add some comments about P/USEG
2001-02-02 18:25:04 +00:00
thorpej
ef2315d256
Rewrite how mod/ref emulation is done. In particular, make
...
modified attribute checking actually work. Previously, a
page could be reported as modified even if it wasn't! This
is very bad, and e.g. caused the VM system to attempt to
"clean" pages of read-only files.
Only lip-services is paid to referenced attribute emulation.
This could be improved.
2001-02-02 02:28:18 +00:00
msaitoh
61831529f2
add some macros for 8bit PCMCIA access
2001-01-30 04:15:10 +00:00
tsubai
9b4793fd1b
#ifdef DREAMCAST --> #ifdef dreamcast.
2001-01-22 08:23:58 +00:00
tsubai
4791d269ec
-Dsh3 --> -D${TARGET_MACHINE}.
2001-01-22 08:22:15 +00:00
tsubai
ffb8bbbb30
#ifdef sh3 --> #ifdef __sh3__.
2001-01-22 08:18:06 +00:00
itojun
f92ee7af5c
sync indent.
2001-01-22 07:04:10 +00:00
marcus
aa94cdc6ad
Oops. Left a debug printout in there...
2001-01-21 23:53:09 +00:00
jdolecek
d5d431e8ae
make db_[e]regs[] const
2001-01-18 10:54:27 +00:00
itojun
f79137a3f1
it looks that gas configured for little endian output runs as
...
big endian assembler, sometimes. explicitly have -little to specify
little endian output.
2001-01-17 06:03:54 +00:00
itojun
ef1a3ce53b
the kernel for SH3-based WinCE machines (little endian), by uch.
...
MACHINE=hpcsh, MACHINE_CPU=sh3el.
bootloader: ftp://f77.nop.or.jp/users/uch/hpcboot/
original patch: ftp://f77.nop.or.jp/users/uch/hpcsh/
sys/sh3/sh3/md_root.c: add #ifdef MEMORY_DISK_DYNAMIC
2001-01-17 05:21:47 +00:00
itojun
d8ba6d06be
procfs_machdep is per port (not per CPU).
2001-01-17 00:44:33 +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
marcus
bc9ea0aebd
Dreamcast uses a different realtime clock than the builtin RTC.
2001-01-16 00:34:44 +00:00
thorpej
45de366b2e
Rename __GENERIC_SOFT_INTERRUPTS to __HAVE_GENERIC_SOFT_INTERRUPTS,
...
and place the definition in <machine/types.h>. This can now be used
as a flag to indicate whether or not <machine/intr.h> can be included
to get the generic soft interrupt API.
2001-01-14 23:50:28 +00:00
thorpej
a3ec356d52
splimp() -> splvm()
2001-01-14 03:22:04 +00:00
thorpej
d85a75f583
Make sure everybody has an splvm() and equate it with splimp() (splimp()
...
is the historical name for this interrupt level, and the historical name
is going to go away in the near future).
2001-01-14 02:00:37 +00:00
itojun
6378ac40ee
pass the right $CPP
2001-01-09 02:31:37 +00:00
itojun
828bec041b
committed local change by mistake :-)
2001-01-04 09:49:29 +00:00
itojun
a8507fa1e7
pkgsrc/cross/sh-* do not supply cpp
2001-01-04 08:55:08 +00:00
itojun
26b1bcce00
cc -v is too verbose
2001-01-04 08:39:53 +00:00
itojun
a629edfcca
use -O1 for now, -O2 dies
2001-01-04 07:55:32 +00:00
itojun
da0e17f08c
fix pathname to meet pkgsrc/cross/sh*
2001-01-04 07:51:50 +00:00
itojun
8a58f991f6
content were mixed up
2001-01-04 07:50:23 +00:00
itojun
156bea1018
nuke obsolete Makefile templates.
...
split build-sh3 into two, for sh3e[bl].
2001-01-04 07:09:47 +00:00
itojun
1e7e3274f4
split MACHINE_ARCH sh3e[lb]. userland build still needs checking.
2001-01-04 07:03:21 +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
takemura
c5fd828440
replace 'long long' with int64_t to compile stand alone program with
...
compiler other than GCC.
2001-01-03 10:08:55 +00:00
itojun
efa2b7073c
make mbstate_t bigger (32 -> 128 bytes).
...
XXX if you have libc after citrus locale import, please recompile libc,
and your applications that use mbstate_t (rather rare). really sorry
for the mess.
2000-12-26 10:35:28 +00:00
jdolecek
e9e91a0fb5
split off thread specific stuff from struct sigacts to struct sigctx, leaving
...
only signal handler array sharable between threads
move other random signal stuff from struct proc to struct sigctx
This addresses kern/10981 by Matthew Orgass.
2000-12-22 22:58:52 +00:00
itojun
823498203f
populate _BSD_MBSTATE_T_. add warning regarding to rune_t.
2000-12-21 06:03:47 +00:00
jdolecek
cacec11253
delete obsolete comment
2000-12-17 15:52:39 +00:00
tsubai
0763c14571
Make this compile again.
2000-12-15 01:16:48 +00:00
marcus
724713366e
Made weak_alias create correct labels on sh-elf.
2000-12-14 18:47:30 +00:00
msaitoh
007d059977
- fix \n conversion from \n\r to \r\n
...
- cleanup
2000-11-22 21:14:25 +00:00
msaitoh
d077acc4e9
const struct sysent
2000-11-22 21:12:28 +00:00
chs
c62d17a551
rationalize the use of b_flags for geteblk() buffers.
...
rather than assigning to the whole field, set or clear individual flags,
which implies that the B_BUSY and B_INVAL flags will remain set.
this allows us to make the assertion in brelse() that B_BUSY is set,
which is the purpose of all this.
2000-11-20 08:24:08 +00:00
msaitoh
3ba9161ab2
check whether SH4_PCMCIA is defined or not.
...
fixes PR. 11441.
2000-11-08 01:03:03 +00:00
msaitoh
d254039699
Add support stacktrace when a function contains "mov #n,r3; sub r3,r15"
2000-11-02 13:08:25 +00:00
eeh
8c3f6a0d10
Adapt to new line discipline scheme.
2000-11-02 00:37:56 +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
13bed0a344
- fix error handing in getc.
...
Now we can handle BREAK signal and framing error correctly.
- cleanup.
2000-10-31 01:08:41 +00:00
is
126ba78048
We do wired page accounting. Tell UVM about this.
2000-09-28 14:03:38 +00:00
thorpej
72a24b4eae
Add an align argument to uvm_map() and some callers of that
...
routine. Works similarly fto pmap_prefer(), but allows callers
to specify a minimum power-of-two alignment of the region.
How we ever got along without this for so long is beyond me.
2000-09-13 15:00:15 +00:00
msaitoh
2b1674cc62
remove extra #endif
2000-09-08 19:52:13 +00:00
msaitoh
2cb1f4181a
sync with i386's revision 1.133:
...
It's legal to mmap pages in the lower part of the stack (<limit),
and use them, so allow this by relaxing the check for it.
2000-09-08 19:48:12 +00:00
msaitoh
772c846544
delete an obsolete comment.
2000-09-08 18:46:39 +00:00
tsubai
9fdd44d404
DDB single step and stack trace support.
2000-09-08 10:15:23 +00:00
tsubai
d0078c839c
Add breakpoint().
2000-09-06 11:25:13 +00:00
tsubai
96f1451685
Downcase mnemonics.
2000-09-04 23:18:36 +00:00
tsubai
600169a9a3
Make this (at least) compile on sh3.
2000-09-04 23:11:42 +00:00
tsubai
bf4246e37a
Disassembly support in DDB.
2000-09-04 23:02:42 +00:00
tsubai
cdbe0b9ec9
Add DDB hook.
2000-09-04 22:44:18 +00:00
tsubai
5f39c378a3
Correct label_t size.
2000-09-04 22:18:43 +00:00
msaitoh
8d1b1036ff
- move MMUCR_VALIDBITS definition into mmureg.h.
...
- access correct address in cacheflush().
2000-09-04 05:48:35 +00:00
msaitoh
e44c80532c
sh3 disassembler written by Akinori Koketsu.
2000-09-01 22:25:36 +00:00
tsubai
a964ecd1a9
Correct iosize.
2000-09-01 10:43:33 +00:00
tsubai
c6615ed380
Initialize pv_head locks.
2000-08-30 09:55:28 +00:00
thorpej
4db6fc7542
Make need_resched() take a "struct cpu_info *" argument. This
...
causes gives a primitive form of processor affinity. Its use in
roundrobin() still needs some work.
2000-08-25 01:04:06 +00:00
thorpej
58e7a6954b
Add spllock(). See spl(9) for details.
2000-08-22 19:46:26 +00:00