Commit Graph

47882 Commits

Author SHA1 Message Date
nonaka
79c7d30f6d - Add "siop at pci" and related line.
- Add "options PCI_NETBSD_CONFIGURE".
2001-06-20 14:37:46 +00:00
nonaka
992a1d0be4 Seprate model depended code. (based on arc 'struct platform')
files.prep:
 - add new files entry.

pci_machdep.c:
 - use dev/pci/pciconf.c instead of mine for pci io/mem addr/intr fixup.

cpu.c:
 - separate code

machdep.c:
 - call ident_platform()

mainbus.c:
 - call pci_configure_bus(), if defined PCI_NETBSD_CONFIGURE

ibm_machdep.c:
 - for IBM PReP generic

ibm_6050.c:
 - for IBM Personal Power Series 830/850

ibm_7248.c:
 - for IBM RS6000/43P deppendency
2001-06-20 14:35:23 +00:00
nonaka
dccc50da3c ANSI'fy 2001-06-20 14:19:28 +00:00
nonaka
87f63a4997 print elcr reg, if defined DEBUG 2001-06-20 14:11:45 +00:00
leo
ad5b48bcb8 Make the compile with diagnostic. 2001-06-20 10:24:22 +00:00
jdolecek
89238be159 Adapt to lance_init() change 2001-06-20 10:10:12 +00:00
jdolecek
15ed017345 Fix problem introduced in rev. 1.32 - dirent d_namlen should NOT count
the final null byte.
This makes programs using fts(3) (like find(1)/du(1)) print correct
name again. Problem reported by Luke Mewburn in private e-mail, thanks.
2001-06-20 09:14:59 +00:00
imp
c633f47bfd Regen. 2001-06-20 05:46:24 +00:00
imp
34fe57df0e Add O2Micro PCI-{CardBus,PCMCIA} bridges:
OZ6729, OZ6730, OZ6832/OZ6833, OZ6860 and OZ6812/OZ6872
2001-06-20 05:44:33 +00:00
ichiro
f4e59879ce support Raltek 8139-based Cardbus card
reported by Takayoshi Kochi(t-kouchi@mvf.biglobe.ne.jp)
 kern/13252: RealTek 8139-based Cardbus support
2001-06-20 05:41:27 +00:00
ichiro
f03f25cb17 regen 2001-06-20 05:39:36 +00:00
ichiro
ba3eaf4273 add product RealTek 8139
by kern/13252: RealTek 8139-based Cardbus support
2001-06-20 05:39:17 +00:00
simonb
9f273cc763 Fix up comment botch.
_Never_ fix a simple formatting thing _after_ a test compile.
2001-06-20 05:33:25 +00:00
simonb
d75760a329 Add some more e_machine values and a reference to the SCO website with
ELF ABI information.
2001-06-20 03:15:42 +00:00
uwe
25d726e4eb Attach serial console at com. 2001-06-20 03:13:19 +00:00
oster
76d322c58c #if out a few more bits that arn't required if we are not doing
PQ or RAID6.
2001-06-20 03:09:23 +00:00
uwe
35e011d31b Convert to use cnmagic(9). Unifdef DDB and DDB_BREAK_CHAR.
While I'm here, s/ungetc/readahead/ in com_common_* because that's
what it _really_ is, "ungetc" is a very confusing name.
2001-06-20 03:07:25 +00:00
briggs
279833d138 Build for kgdb as well as for ddb (mutually exclusive). 2001-06-20 02:40:14 +00:00
toshii
8b8a1cfa73 Define __HAVE_GENERIC_SOFT_INTERRUPTS, and nuke traditional softserial and
softclock.
2001-06-20 02:34:26 +00:00
toshii
9663b23e37 Add IPL_SOFT* interrupt levels.
XXX These's no point in having two copies of intr masks (spl_masks and
XXX imask).  This needs to be fixed.
2001-06-20 02:30:47 +00:00
toshii
9159944a03 Add IPL_SOFT* interrupt levels.
Fix type for softintr handlers.
2001-06-20 02:26:30 +00:00
toshii
352aae04a4 Fix type for softintr handlers. 2001-06-20 02:21:58 +00:00
toshii
ccc8a74c00 Map PPC (peripheral pin controller) registers also. 2001-06-20 02:19:55 +00:00
christos
b42ac39883 fix processor name 2001-06-20 02:19:36 +00:00
toshii
b0f168f8ce GC dead codes. 2001-06-20 02:18:06 +00:00
toshii
681b3193ca Make sacom generic soft interrupts ready. 2001-06-20 02:16:49 +00:00
briggs
e870bf36b9 There is no other support for KGDB in this driver yet, so ifdef out the
call to a non-existent (on macppc) zs_check_kgdb() for now.
2001-06-20 02:01:56 +00:00
thorpej
0b0010a7c3 When probing for a PHY, look at the EXTSTAT bit in the BMSR, as well,
not just the media mask.  This prevents PHYs/TBIs that only support
Gigabit media from slipping through the cracks.
2001-06-20 01:42:41 +00:00
fvdl
e861a00729 X8664 -> X86_64 2001-06-20 01:20:19 +00:00
fvdl
5f21a82a5d Elf64_Word should be 32 bits; alpha is the exception rather than
the rule, so change the ifdef to reflect this.
2001-06-20 01:07:22 +00:00
thorpej
7e843c3ccb Device driver for the Sundance Tech. ST-201 10/100 Ethernet. This
chip is found on the D-Link DFE-550TX.
2001-06-19 23:00:47 +00:00
jdolecek
a0e44b481b Fix locking disorder in ntfs_vgetex(), which resulted in deadlock
under heavy vnode usage - vget() must be called with unlocked ntnode!
Actually check the vget() return value and DTRT if it fails (i.e. when
the vnode has been recycled for other use).
2001-06-19 22:14:14 +00:00
jdolecek
ec6b53c217 ntfs_{read|write}vattr_plain(): remove NetBSD-specific code which seems
to be not needed anymore with UBC. This might also solve problems
people seen as 'Argument list too long', like kern/10119
2001-06-19 22:10:11 +00:00
thorpej
7914a89b02 Add support for the Seeq 80225 10/100 Ethernet PHY. This is just
a stripped-down version of the 80220/80223.
2001-06-19 20:10:54 +00:00
thorpej
93169d8a94 Regen; added Seeq 80225 10/100 PHY. 2001-06-19 19:51:27 +00:00
thorpej
5d3c31d576 Add Seeq 80225 10/100 PHY. 2001-06-19 19:51:04 +00:00
jdolecek
74e9588fda Add linux_trap.c for i386 2001-06-19 18:18:42 +00:00
jdolecek
3fd1ca0fc9 Do not include the ELF 'catch all' entry in execsw[] by default, which
used to make ELF binaries unmatched by any signature check to be run under
NetBSD 'emulation'. This causes problems like kern/12253.
The old behaviour is available with option EXEC_ELF_CATCHALL.
2001-06-19 17:58:41 +00:00
uch
27e3cda68b add document for developers. 2001-06-19 17:50:39 +00:00
uch
86b75389d1 recompile. 2001-06-19 16:51:43 +00:00
uch
3563b6010c add build number. when 'make uuencode', increment it. 2001-06-19 16:50:05 +00:00
uch
a934bba390 set BI_CNUSE_SERIAL flag at SerialConsole constructor. and remove
getBootConsole member from SerialConsole class
2001-06-19 16:48:49 +00:00
sommerfeld
f00786e7ab restore fs and gs from sigcontext in sigreturn (correct oversight in
previous commit).
2001-06-19 15:54:48 +00:00
wiz
ac951736bc response', not responce' 2001-06-19 13:45:52 +00:00
wiz
3f9984fc90 existent', not existant' 2001-06-19 13:42:07 +00:00
fvdl
fc4ff23a7a Fix a few bogons. 2001-06-19 13:19:54 +00:00
simonb
e50bbd9bf9 Add -Wstrict-prototypes. 2001-06-19 13:00:42 +00:00
wiz
f3f6c5b675 accessible' only has one a'. 2001-06-19 12:52:20 +00:00
fvdl
dd270d4a3f ifdef NISAPNP -> if NISAPNP > 0 2001-06-19 12:45:23 +00:00
simonb
d4bcd9c735 Add/change prototypes so that macpcc builds with -Wstrict-prototypes. 2001-06-19 12:02:55 +00:00
nonaka
595d6a40b4 Back out last changes. 2001-06-19 11:56:27 +00:00
nonaka
b9c1984c7e Back out last changes. 2001-06-19 11:36:17 +00:00
lukem
b7f8c7eb86 delint 2001-06-19 10:43:26 +00:00
scw
21481088f3 Minor correction for mvme68k. 2001-06-19 09:51:03 +00:00
fvdl
b4b5dc533d Add fxsr CR4 bits. 2001-06-19 09:12:49 +00:00
fvdl
d8d208d673 Fix botched commit; I forgot to bring this up to date to -current
before committing it.
2001-06-19 09:10:30 +00:00
simonb
43eba60849 Make all the ppc delay() functions the same - formating change only, no
code changes.  Step one of a unified ppc clock.c.
2001-06-19 08:34:49 +00:00
simonb
a8068ab82d Don't use argument names in function declarations. 2001-06-19 08:24:07 +00:00
mrg
e16036ef83 complete sparc descriptions. 2001-06-19 07:49:14 +00:00
jdolecek
934f52d4ff Sprinkle couple of cosmetic changes - use 'extern' in headers, make
some stuff static, const as appropriate, use static TAILQ_HEAD_INITIALIZER()
instead TAILQ_INIT() call.
2001-06-19 07:37:16 +00:00
jdolecek
a7d6a8f2f1 The ifa is needed for CCITT&&LLC case, provide it in that case 2001-06-19 07:19:35 +00:00
simonb
97b16e911f Move the DSISR SPR bit definitions from <powerpc/mpc6xx/pte.h> to
<powerpc/spr.h>.  Remove unused ISI/SRR1 bit definitions.
2001-06-19 07:14:23 +00:00
oster
0e8f8213af A bunch of these bits are only needed for the EVENODD stuff.
Shaves a little better than 1K off the size of an i386 kernel.
2001-06-19 03:25:16 +00:00
christos
495370b307 add x86_64 2001-06-19 02:49:05 +00:00
fvdl
ba22234cb4 .s -> .S for microtime 2001-06-19 02:06:52 +00:00
fvdl
4880ff208d Forgot this one. This is basically a copy of the i386 version;
needed because the sim provides this, likely to be nuked later.
2001-06-19 02:06:15 +00:00
fvdl
653103e16a This was previously missed. 2001-06-19 01:58:46 +00:00
fvdl
090a2bb9f1 Fix typo in comment. 2001-06-19 01:40:42 +00:00
fvdl
2563e4390d Add IDs for x86-64. 2001-06-19 00:41:53 +00:00
fvdl
fe75469d65 Some of this was sparc-specific, so ifdef __sparc__ it (XXX). Also,
change the alignment of one structure with an MD ifdef. Should
be moved into the netbsd32_machdep parts.
2001-06-19 00:36:21 +00:00
fvdl
9b4c0e34d2 Initial commit of the port to AMD's upcoming 64 bit architecture, the
x86-64. Since there's no hardware available yet, this port is only
known to run on the Simics simulator for at the moment, and as such
uses the PC devices that it simulates for now. It will be developed
more (and cleaned up) as the hardware becomes available.
2001-06-19 00:19:12 +00:00
thorpej
9c9eba63ec Add gsip(4), gphyter(4), and sf(4) drivers. 2001-06-18 22:45:54 +00:00
thorpej
7478f1c9a3 Add sf(4), gsip(4), gphyter(4) drivers. 2001-06-18 22:40:19 +00:00
bjh21
cb36bacea5 Merge arm32/dev/bus_space_notimpl.S and hpcarm/hpcarm/bus_space_notimpl.S
into arm/arm/bus_space_notimpl.S.  They were identical anyway.

This file has no excuse for being in assembler, but I'll leave that for another
day.
2001-06-18 22:26:15 +00:00
thorpej
62224968e1 Add support for the Adaptec AIC-6915 10/100 Ethernet. This is
a 64-bit PCI chip, available in 1, 2, and 4 port models.
2001-06-18 22:05:35 +00:00
bjh21
80c5d7ab99 Move <arm/arm32/bus.h> to <arm/bus.h>, since it looks like it's going to be
necessary on arm26 as well.
2001-06-18 21:37:32 +00:00
bjh21
743e0579d1 Remove "defopt FOOTBRIDGE" -- it's in files.footbridge now. 2001-06-18 20:49:14 +00:00
mrg
cbe144f269 copy tlb_flush*() #defines here, but rename them tlb_flush*_real(). this
allows for tlb_flush*() to be defined differently if MULTIPROCESSOR.
2001-06-18 15:42:06 +00:00
nonaka
03e1e2dc99 Add bus_dma entry. 2001-06-18 14:04:39 +00:00
onoe
319ea4a342 make it compilable: delete unused variable 'ifa' from lance_ioctl() 2001-06-18 13:47:18 +00:00
onoe
c07d2e1e96 Add Cisco/Aironet 350
Reported by Wolfgang Rupprecht <wolfgang@wsrcc.com>.
This doesn't fix PR 13181, which says the card doesn't work well.
2001-06-18 13:21:24 +00:00
onoe
e523b2f091 regen: Add Cisco/Aironet 350 2001-06-18 13:19:07 +00:00
onoe
61285ac2da Add Cisco/Aironet 350 2001-06-18 13:18:08 +00:00
martin
91a63a0595 Protect interface queue manipulations by splnet(). Splsoftnet() is not
enough.
2001-06-18 12:32:47 +00:00
rafal
9e735123dc mmeye (as the text says) is sh3, not arm. 2001-06-18 11:50:07 +00:00
bjh21
c5b2129e84 Re-write arm26 description, and remove mention of "Acorn Risc Machines" from
the arm32 description, since they were Advanced by the time the ARM6 came out,
and are now just ARM.
2001-06-18 11:48:28 +00:00
wiz
5e33503d64 Fix typo. 2001-06-18 11:36:47 +00:00
uch
51b515b09a recompile. 2001-06-18 11:31:32 +00:00
uch
376c55b2be arm, mips: forgot to initialize boot console. 2001-06-18 11:31:04 +00:00
wiz
ccfe29f3cf Symmetric has one s and two m's. 2001-06-18 11:23:00 +00:00
jdolecek
e65b619faa Convert to use ether_ioctl() for SIOCSIFADDR and SIOCSIFFLAGS. 2001-06-18 11:06:26 +00:00
jdolecek
176beeea9e Make compilable with -Wall, in hope this could be actually useful
(which is unlikely)
2001-06-18 09:57:27 +00:00
bouyer
49ed2592ce Add my copyrigth and remove the older ones. None of the original authors of
the st driver wrote something in this file.
2001-06-18 09:41:06 +00:00
bouyer
0a63f01fef Snapshot of ATAPI tapes support. Known to be able to read/write to tape with:
st0 at atapibus0 drive 1: <Seagate STT8000A, , 5.51> type 1 sequential
removable
Major changes may still happen in order to properly support other ATAPI
tape drives.
2001-06-18 09:05:05 +00:00
sommerfeld
b10656ba32 Delete dead code.
Mask segment registers from trap frame with 0xffff for cleanliness.
2001-06-18 03:33:59 +00:00
sommerfeld
926b6ff132 since seg regs are 16 bits, toss high order bits from the trapframe 2001-06-18 03:32:14 +00:00
christos
59abdecf4b Add a linux specific trapsignal() function. This is just a passthrough
on all platforms but the i386. On the i386 we look at T_PROTFLT and send
a SIGSEGV instead of SIGBUS. This makes allegro lisp 5.0 and pvs (a proof
verification system) to work.

XXX[1]: We need to go through each architecture and verify that we send
        the correct signal on each trap type.
XXX[2]: trap.c on all other architectures but i386 needs to be modified
        to s/trapsignal/(*p->p_emul->e_trapsignal)/g
2001-06-18 02:04:42 +00:00
christos
0f380fac15 Add an e_trapsignal member to struct emul, so that emulated processes can
send the appropriate signal depending on the trap type.
2001-06-18 02:00:48 +00:00
simonb
1506d21315 Make error checking/reporting a little more correct. 2001-06-18 01:58:08 +00:00
sommerfeld
7e7d262c34 Add %fs/%gs to trap frame and save/restore them on
trap/interrupt/syscall entry from userspace.

Remove special-case "by hand" validation of fs/gs register values as
well as special handling of them in various signal handling paths.

Now, like %ds and %es, they are validated by the hardware on return to
userland.

This paves the way for the use of %fs for per-cpu data on
multiprocessor systems, and fixes an otherwise difficult-to-fix
interaction between threads/clone(2) and USER_LDT.

Discussed in advance with Frank van der Linden.
2001-06-17 21:01:32 +00:00
tsubai
1614d87d0e Support the new iBook. 2001-06-17 19:54:47 +00:00
tsubai
de98ab5b38 Regen. 2001-06-17 19:51:27 +00:00
tsubai
b63b6d01e6 Add device IDs on the new iBook. 2001-06-17 19:50:33 +00:00
tsubai
91f99e1981 Forgot to commit this -- move file .../bus_dma.c line to files.${machine}. 2001-06-17 19:32:17 +00:00
jdolecek
adaaf11f9f make pckbc_slot_names[], pckbc_portcmd const 2001-06-17 16:15:41 +00:00
nonaka
31794a5423 NEWPMAP 2001-06-17 16:01:28 +00:00
nonaka
b83f37566d identified prep model. (I missed it...) 2001-06-17 15:59:57 +00:00
nonaka
5098ff59f6 identified prep model. 2001-06-17 15:57:11 +00:00
thorpej
97354efd4d More corrections. 2001-06-17 14:54:29 +00:00
kleink
abaced98c3 Fix context handling for 32-bit environments:
* Really pass PSR ICC bits instead of raw CCR.
* Don't touch ASI and FPRS, which are not part of the 32-bit mcontext.
Also, correct printf conversions in svr4_printmcontext.
2001-06-17 14:39:32 +00:00
simonb
56151c1fef Make this compile and work for the IBM 4xx series CPUs. 2001-06-17 13:39:33 +00:00
simonb
d70d5d1ee0 Use _C_LABEL() for externally referenced symbols. 2001-06-17 13:39:02 +00:00
simonb
0647591d3a Globalise "trapexit" for new ddb tracing changes. 2001-06-17 13:38:33 +00:00
simonb
91817c8f5e s/workstations/machines/ for pmax and sgimips. Make the description of
the walnut more technically correct.
2001-06-17 13:37:01 +00:00
kleink
db52b31344 Save/restore only the FP register file as far as the 32-bit environment
is concerned; in particular, don't overrun the [mu]context.
2001-06-17 13:10:05 +00:00
perry
407eec5184 minor fixes 2001-06-17 04:10:16 +00:00
lukem
24c92d43e5 minor typo 2001-06-17 00:48:28 +00:00
cyber
662f93aeeb Change the way boot strings are handled and the way the root device
is determined.  This allows multiple internal disks in a raq2 to work.
2001-06-17 00:11:40 +00:00
christos
38527630e2 fixes from perry 2001-06-16 23:17:34 +00:00
christos
002c8b43f1 Add a list with a brief description of each ports. With 43 ports right
now it is a bit tough to collect all the information.

XXX: Portmasters, or people who know better, please correct any mistakes.
2001-06-16 23:04:15 +00:00
manu
ff5ce5bd93 Removed obsoletes EMUL_NO_BSD_ASYNCIO_PIPE and EMUL_NO_SIGIO_ON_READ flags.
Async I/O OS specifities should now handled in OS specific code. Linux
has been done, but other emulation should be handled. See case LINUX_F_SETFL
in sys/compat/linux/common/linux_file.c:linux_sys_fcntl() for more details.

The data that has been collected yet:

                                  Net Free Open Linux SunOS AIX OSF1 Darwin
send SIGIO to write end of pipe     Y  N    N     N     N    N   Y     Y
send SIGIO to read end of pipe      Y  Y    N     N     N    ?   Y     ?
send SIGIO to write end of socket   Y  Y    Y     N     N    Y   Y     Y
send SIGIO to read end of socket    Y  Y    Y     Y     Y    ?   Y     ?
2001-06-16 22:05:36 +00:00
manu
a7cdf998ec Removed obsoletes EMUL_NO_BSD_ASYNCIO_PIPE and EMUL_NO_SIGIO_ON_READ flags.
Async I/O OS specifities should now handled in OS specific code. Linux
has been done, but other emulation should be handled. See case LINUX_F_SETFL
in sys/compat/linux/common/linux_file.c:linux_sys_fcntl() for more details.

The data that has been collected yet:

                                  Net Free Open Linux SunOS AIX OSF1 Darwin
send SIGIO to write end of pipe		Y  N    N     N     N    N   Y     Y
send SIGIO to read end of pipe      Y  Y    N     N     N    ?   Y     ?
send SIGIO to write end of socket   Y  Y    Y     N     N    Y   Y     Y
send SIGIO to read end of socket    Y  Y    Y     Y     Y    ?   Y     ?
2001-06-16 21:44:27 +00:00
manu
ce10f4da5b Linux does not send a SIGIO to the write end of a socket,
neither it does send any SIGIO for pipes. If async I/O
was requested, we keep the SS_ASYNC in struct socket flag
set, but we clear SB_ASYNC flags on the sending buffer
(for socket), and on the sending and the receiving buffer
(for pipes).

Because we do not alter to SS_ASYNC in struct socket,
the Linux process keeps a consistent view of async I/O
status if it attemps to read the async flag (SS_ASYNC)

This async I/O problem does matters, since some Linux
a programs such as the JDK request async I/O on pipes,
but they fail if they happen to get a SIGIO to the write
end of the pipe.
2001-06-16 21:32:51 +00:00
manu
94a4020177 Use SB_ASYNC in struct sockbuf sb_flags field instead of SS_ASYNC in
struct socket so_state field to decide if we need to send asynchronous
notifications. This makes possible to request notification on write but
not on read, and vice versa.

This is used in Linux emulation code, because when async I/O is requested,
Linux does not send SIGIO to write end of sockets, and it never send any
SIGIO to any end of pipes. Il Linux emulation code, we then set SB_ASYNC
only on the read end of sockets, and on no end for pipes.
2001-06-16 21:29:32 +00:00
tsutsui
01704d0990 Add iha at pci, which just works on my CATS. 2001-06-16 13:58:18 +00:00
toshii
bf923a99b8 Don't set HPCFB_SWAP_BYTE (if little endian). 2001-06-16 12:53:05 +00:00
jdolecek
60a45fb944 export sys/pipe.h 2001-06-16 12:02:13 +00:00
jdolecek
ee882e3a09 Add port of high performance pipe implementation written by John S. Dyson
for FreeBSD project. Besides huge speed boost compared with socketpair-based
pipes, this implementation also uses pagable kernel memory instead of mbufs.

Significant differences to FreeBSD version:
* uses uvm_loan() facility for direct write
* async/SIGIO handling correct also for sync writer, async reader
* limits settable via sysctl, amountpipekva and nbigpipes available via sysctl
* pipes are unidirectional - this is enforced on file descriptor level
	for now only, the code would be updated to take advantage of it
	eventually
* uses lockmgr(9)-based locks instead of home brew variant
* scatter-gather write is handled correctly for direct write case, data
  is transferred by PIPE_DIRECT_CHUNK bytes maximum, to avoid running out of kva

All FreeBSD/NetBSD specific code is within appropriate #ifdef, in preparation
to feed changes back to FreeBSD tree.

This pipe implementation is optional for now, add 'options NEW_PIPE'
to your kernel config to use it.
2001-06-16 12:00:02 +00:00
jdolecek
02d39f046b Import FreeBSD sys/pipe.h rev 1.17 for reference (this was used as a base
for the NetBSD port).
2001-06-16 09:23:11 +00:00
jdolecek
664cf935c7 Import FreeBSD sys_pipe.c rev 1.82 for reference (this was used as a base
for the NetBSD port).
2001-06-16 09:21:34 +00:00
dbj
ef86c3badd fix handling of transmit length calculation so we now handle full length xmits 2001-06-16 09:18:46 +00:00
dbj
e9d708e25b allow unaligned pointers in bus_dmamap_sync 2001-06-16 09:08:05 +00:00
jdolecek
c57b6d9ba4 Add DTYPE_PIPE (to be used by new pipe implementation) and handle
it accordingly.
2001-06-16 08:28:39 +00:00
tsutsui
aa35eff5da Enable some devices which I am/was using:
epic* at pci?
 fxp* at pci?
 sip* at pci?
 tlp* at pci?
 inphys* at mii?
 qsphys* at mii?
2001-06-16 05:47:37 +00:00
matt
38fc9e283d Fix pte_spill to set the index on the proper pvo. Deal with recursion
in pmap_syncicache.
2001-06-16 03:32:48 +00:00
tsutsui
c5bc6249f0 Make sure to write out the dump header into an independent block
on the dump device on sun3x. (sync with sun3)
Now savecore(8) can find core dump in dumpdev properly.

XXX "target kcore /dev/mem" on gdb does not work yet.
2001-06-16 00:38:19 +00:00
matt
979edf3c4a pmap_syncicache can be called recursively. Properly deal with that
situation.
2001-06-15 22:28:54 +00:00
matt
60f8375758 Replace printf with (*pr) 2001-06-15 22:27:07 +00:00
thorpej
4c49d6fa2a Split the Tx and Rx interrupt routines into separate functions,
and add some (optional) event counters.
2001-06-15 22:16:00 +00:00
dbj
093fab47ce remove extra args from printf 2001-06-15 21:56:06 +00:00
matt
e55c9f74af Add missing braces in pmap_pte_to_pvo (DEBUG|PMAPCHECK defined). Rearrange
some code so that consistency check in pmap_pte_to_pvo do not trigger on
false positives.  Correct/enhance some printfs.
2001-06-15 21:29:54 +00:00
matt
25a2c4d481 While not stricly needed, to match pmap_pvo_find_va, mask of the page
offset bits.
2001-06-15 20:53:45 +00:00
matt
787e1b0b36 When comparing VA's, ignore the page offset bits.
Invert and strengthen a test for pte equality.
2001-06-15 20:43:01 +00:00
matt
c7c7dab8f1 Stop overloading unused bits in the pte. Use the low 12bits of the vaddr
instead to store them.  Add a macro to fetch the vaddr without them.
Make all variables/routines prefixed with pmap_
Cleanup & fix some of the vsid bitmap usage.
Cleanup DEBUG printfs.  Add some more checks to pmap_pvo_to_pte.
2001-06-15 18:26:06 +00:00
nathanw
f71391cb6c Move the check for successful attachment to earlier in the detach
routine, to avoid referencing nonexistent data structures.
2001-06-15 18:05:36 +00:00
drochner
b97fed556d vm_map_t -> struct vm_map *
vm_page_t -> struct vm_page *
simple_lock_data_t -> struct simplelock
2001-06-15 17:48:13 +00:00
thorpej
7660fd850d In check_exec(), don't bother checking P_TRACED along with
MNT_NOSUID, just check MNT_NOSUID to clear the S{U,G}ID bits
in the attributes for the vnode we're about to exec.

We now check P_TRACED right before we would actually perform
the s{u,g}id function in the exec code.

This closes a race condition between exec of a setuid binary
and ptrace(2).
2001-06-15 17:24:19 +00:00
nonaka
7f44dfec92 Compile again. 2001-06-15 15:53:27 +00:00
nonaka
80e152f0fc Use new common bus.h framework. 2001-06-15 15:50:04 +00:00
nonaka
3a3661fb58 Delete unused function. 2001-06-15 15:24:03 +00:00
bouyer
17eff1c958 Pass WDC_CAPABILITY_MODE to the wdc core, so that it will set timings
on the drive side too.
Deal properly with the case where master and slave don't have the same timings,
and set PIO timings too.
2001-06-15 10:35:26 +00:00
matt
192642af05 Don't enable PMAPCHECK by default. 2001-06-15 08:17:00 +00:00
matt
f6b81171c1 Globalize trapexit. Improve db_trace.c so that you can trace thru traps!
Rework the output so that is also prints the frame address by default.
2001-06-15 08:09:33 +00:00
matt
0278444e19 Add a check to pvo_check which makes sure the pte is really in the
pteg_table.   In pte_to_va, take into account if the PTE_HID is set.
2001-06-15 08:08:04 +00:00
matt
ab92d9cd59 phys_map should use kenter/kremove 2001-06-15 08:07:03 +00:00
matt
816a5637cd When releasing the SR VSID, mask off the bits not related to the index
in the pmap vsid bitmap.
2001-06-15 06:27:07 +00:00
sommerfeld
d3249871b5 Rework how user-mode instruction and stack fetches are done.
While we're in here, catch another vm86 protocol botch.
2001-06-15 05:43:40 +00:00
thorpej
e51a043945 Yet more interrupt cleanup -- the platform mater interrupt establish
function now just takes an "irq", which is an index into the irqmap
table for that platform.
2001-06-15 04:01:39 +00:00
fredette
6000674775 Now unmap the PROM's pages only after we have
installed our own vector table.
2001-06-15 00:32:38 +00:00
bjh21
ddc6e8e6ad I've got an 8-bit Ether3, so I've discovered that the address mapping is
non-linear.  Comment it here so I don't forget.
2001-06-15 00:28:01 +00:00
bjh21
5dc1e8334c Fix abuse of bus_space_handles in podloader functions. 2001-06-14 23:09:23 +00:00
thorpej
8eb3b954f1 Don't need to prototype child_return() here, it's in <sys/proc.h>. 2001-06-14 22:56:55 +00:00
thorpej
80cc38a1af Fix a partial construction problem that can cause race conditions
between creation of a file descriptor and close(2) when using kernel
assisted threads.  What we do is stick descriptors in the table, but
mark them as "larval".  This causes essentially everything to treat
it as a non-existent descriptor, except for fdalloc(), which sees a
filled slot so that it won't (incorrectly) allocate it again.  When
a descriptor is fully constructed, the code that has constructed it
marks it as "mature" (which actually clears the "larval" flag), and
things continue to work as normal.

While here, gather all the code that gets a descriptor from the table
into a fd_getfile() function, and call it, rather than having the
same (sometimes incorrect) code copied all over the place.
2001-06-14 20:32:41 +00:00
mjacob
60a0137d9c Ooops- we need to allocate an array of pointers to scsipi_xfer structures
isp_maxcmds in length- not an array of scsipi_xfer structures isp_maxcmds
in length.
2001-06-14 19:54:07 +00:00
thorpej
1d161cd563 Correct a comment. 2001-06-14 19:03:43 +00:00
thorpej
fe87c9aade When the old PCI address map is in use, disable I/O space. Also disable
I/O space on PBC revs < B2.
2001-06-14 18:52:26 +00:00
thorpej
0ddf0d259b Don't use BUS_END to compute SYS_END. 2001-06-14 18:48:23 +00:00
thorpej
80dfaa3e5a Read the PCI memory space base and the PCI DMA window base from the
V3 PBC, and use them in the bus mem tag and the bus dma tag on the
P-4032.  This allows us to get much further when PMON has configured
the PBC using the old-style PCI address map.
2001-06-14 17:57:26 +00:00
uch
6c492e4e70 fix hpcio configuration. 2001-06-14 16:55:34 +00:00
fredette
1a4779d8a4 Now get the prototypes from the common sun68k/sun68k/control.h. 2001-06-14 16:36:46 +00:00
fredette
7ab5601058 Since physical memory below 0x2000 isn't mapped anywhere
for now, return EFAULT when /dev/mem tries to read it.
Other physical memory not managed by the pmap system is
mapped at the same virtual addresses.  Now that we
understand how VME PTEs are constructed, give mmapping
a VME bus a better chance of working..
2001-06-14 16:32:45 +00:00
thorpej
4c73c770ce Add MEMSIZE and ETHADDR options, so that they can be set in
the kernel config file, in case you have a buggy PMON which
doesn't provide the environment variables to the kernel.
2001-06-14 16:14:37 +00:00
fredette
8f6cff260d Now uses the common sun68k bus_space/bus_dma
and autoconf code.
2001-06-14 15:54:18 +00:00
fredette
e20baedfd4 Added prototypes for w16zero and w16copy, found
in the new w16copy.s.
2001-06-14 15:49:05 +00:00
fredette
c7154a0bfd Added two functions that zero memory and copy memory
in an optimized fashion using only properly aligned
8- and 16-bit accesses.
2001-06-14 15:38:16 +00:00
thorpej
defcaa8bcb Initlialize PMON after configuring the console, so we can see
debugging info.
2001-06-14 15:29:23 +00:00
thorpej
587d3ec2b4 Insert some debugging code, conditional on PMON_DEBUG. 2001-06-14 15:28:56 +00:00
fredette
70ba9292d4 Now use the bus_space_peek_N function to probe for
the device, and common sun68k_find_prom_map function to
find a PROM mapping for a device.
2001-06-14 15:20:46 +00:00
fredette
9c1d420baf This file has been moved to sys/dev/vme. 2001-06-14 15:15:15 +00:00
fredette
15b02e5ba0 Added a function, prom_sd_target, to translate a PROM
sd unit number into a SCSI target.  Now only set up our
g0 and g4 handlers inside prom_abort(), so we're not
normally running with them.
2001-06-14 13:21:39 +00:00
fredette
edad0f956c Under _LKM, now undefine KERNBASE for declaring it.
Not sure if this is correct, but the real question
is whether 68000 LKMs are even possible.
2001-06-14 13:18:54 +00:00
fredette
54f88e2668 Corrected the value of DVMA_OBIO_SLAVE_BASE; obio
devices can see the entire CPU address space.
2001-06-14 13:17:04 +00:00
fredette
01e5507e7e Now simply include the real header under arch/sun68k. 2001-06-14 13:16:03 +00:00
fredette
000fa36842 Moved the definition of romVectorPtr here from mon.h.
Prototype prom_sd_target.
2001-06-14 13:15:21 +00:00
fredette
9e52c15c31 Now simply include the real header under arch/sun68k. 2001-06-14 13:12:50 +00:00
fredette
af6051568c Removed. These files can be found under arch/sun68k now. 2001-06-14 13:10:20 +00:00
fredette
c3679650d5 Added some kernel sources that can be shared between
sun2 and sun3.
2001-06-14 13:08:11 +00:00
fredette
17de8ec19e Set ARCHSUBDIR to m68k when MACHINE_ARCH is m68000.
Add sun68k to SUBDIR when MACHINE is sun2.
2001-06-14 13:01:27 +00:00
fredette
c1c742b4c9 Added sources for the sun2 boot blocks and other
sun68k-ish code, all of which ought to eventually
be shared with the sun3.
2001-06-14 12:57:10 +00:00
uch
ea54d618ea ANSI KNF. and change my copyright to TNF copyright. 2001-06-14 11:09:55 +00:00
sato
4cc6a0ac93 fix 'mask clock to PIU' 2001-06-14 08:43:41 +00:00
chs
766dfc9b6f be sure to allocate dirty zeroed pages to cover blocks we allocate
to resolve a write fault.  fixes PR 13201.
also, be sure to allocate blocks for write faults to holes even if
the page is already in memory.  fixes PR 13189.
2001-06-14 08:22:14 +00:00
itojun
015f17a7cb fix comment on ifi_lastchange, for 1.4 if_data 2001-06-14 06:37:34 +00:00
thorpej
3bad583046 Oops, use the correct space tag when unmapping the RTC on the
P-4032 after calibrating the clock.
2001-06-14 05:58:19 +00:00
itojun
a90f815dc4 update comment on if_lastchange 2001-06-14 05:50:02 +00:00
itojun
4d51fe368b change the meaning of ifnet.if_lastchange to meet RFC1573 ifLastChange.
follows BSD/OS practice and ucd-snmp code (FreeBSD does it for specific
interfaces only).

was: if_lastchange get updated on every packet transmission/receipt.
now: if_lastchange get updated when IFF_UP is changed.
2001-06-14 05:44:23 +00:00
chs
7e00a527ea work around an overflow problem in uvm_fault_wire().
from Eduardo Horvath and Simon Burge.
2001-06-14 05:12:56 +00:00
oster
669f5cc5a5 It's silly to need a parity rebuild after a reconstruction has completed.
If we've just reconstructed a disk, then the parity is known to
be correct.  (XXX doesn't hold for RAID 6!)
2001-06-14 02:35:56 +00:00
rafal
5b1c3b74ba Remove externs moved to headers, fix interrupt masks to be zeroes at startup,
add MIPS clock interrupt (int5) event counter and clean up some more debug
goo.
2001-06-14 01:15:35 +00:00
rafal
d9d912728f Get rid of externs moved to header files, add event counter for the clock
interrupt, use platform.ticks_per_hz instead of hardcoded constant for the
counter increment (XX: not that the ticks_per_hz is calculated for the IP32
yet).
2001-06-14 01:09:37 +00:00
thorpej
3078a3d26d It's pretty questionable to printf a PCI tag, but if we're going to
do so, at least make the printf compile across the board.
2001-06-14 01:06:56 +00:00
rafal
3327706cab Add externs for struct platform and the machine type definitions (mach_type,
mach_subtype, mach_boardrev).
2001-06-14 01:06:08 +00:00
wiz
b2e2ddf49e It's "extern int", not "extern".
Macppc kernels with LINUX_COMPAT now compile again.
2001-06-13 23:10:31 +00:00
wiz
3d343db054 #include <machine/fpu.h> for save_fpu()
#ifdef 0 two unused and un-prototyped functions.
Following a hint by Andrw Cagney on port-macppc.
2001-06-13 23:09:01 +00:00
uch
0774d04303 (TX39) switch from TX local I/O manager to hpcio 2001-06-13 19:09:07 +00:00
uch
a9d7b546d6 make this work. 2001-06-13 19:02:13 +00:00
bjh21
bb5ca33de4 Add a driver for the HCCS IDE interface I got at Wakefield. Like the D.T.
Software one (dtide), it doesn't generate interrupts, so we run it in polled
mode.
2001-06-13 18:31:43 +00:00
bjh21
18c4c9eab3 Update to use the new support for IRQ-less IDE controllers.
Also generally re-work to do channel attachment in a loop, since that saves on
code size.
2001-06-13 18:29:40 +00:00
bjh21
6acf237023 Use the new generic mechanism for forcing polling on a SCSI interface, rather
than doing it ourselves.
2001-06-13 18:27:27 +00:00
bjh21
4bc5a3b295 Add explicit support for IDE and SCSI adaptors which don't support interrupts.
On such adaptors, all transfers are done in polling mode.

OK'ed by Manuel on tech-kern.
2001-06-13 18:17:38 +00:00
nathanw
0adcac34e5 That's supposed to be <machine/io.h> in the XXX'd #ifdef, not a repeat
of <machine/bus.h>.
2001-06-13 17:52:43 +00:00
nathanw
9e8fb68348 The trace_req() function is a no-op; garbage collect it. 2001-06-13 16:06:27 +00:00
sato
01b21ab7a1 register VRIP_INTR_BAT handler to vrip_intr_establish(). 2001-06-13 16:05:59 +00:00
soda
45c99b6989 remove resolved TODOs, reorder some entries, and some formating fixes. 2001-06-13 15:41:53 +00:00
soda
22b59feda9 introduce "struct platform", and remove "cputype" variable. 2001-06-13 15:39:13 +00:00
soda
fb93db6893 remove __BROKEN_CONFIG_UNIT_USAGE, finally (sorry to be late, cgd). 2001-06-13 15:38:15 +00:00
soda
cefa712681 update configurations for "struct platform" and related changes 2001-06-13 15:37:27 +00:00
soda
56716edd1f incomplete platfrom description for SNI RM200. 2001-06-13 15:36:44 +00:00
soda
6ddec4b5e4 platform description for NEC RISCstation 2200 variants.
not tested.
2001-06-13 15:36:04 +00:00
soda
8612165cf4 platfrom description for NEC Express RISCserver and NEC RISCserver 2200.
tested by Bob Meader on NEC RISCserver 2200, and
Chuck Silvers on NeTpower S1030 (likely compatible with Express RISCserver),
until it asks for boot device.
2001-06-13 15:35:04 +00:00
soda
ee220d37b2 platform description for NEC RISCstation 2250.
test by Shuichiro URATA (until it asks for boot device)
2001-06-13 15:33:27 +00:00
soda
42215b6b35 platform description for NEC Express 5800/230, R4400 & PCI variant.
tested by Izumi TSUTSUI.
2001-06-13 15:30:38 +00:00
soda
ed19e07cc7 platform description for Acer PICA-61 and its OEM.
tested by myself on NEC Image RISCstation.
2001-06-13 15:29:30 +00:00
soda
4e70aed6b2 platform description for MIPS Magnum (Microsoft-Jazz).
tested by myself on a NEC Magnum derived machine.
2001-06-13 15:28:23 +00:00
soda
a8a1317719 latform description for DESKTECH Tyne and rPC44.
not tested.
2001-06-13 15:27:17 +00:00
soda
b7f2c5a631 common chipset description for NEC PCI generation platforms 2001-06-13 15:23:22 +00:00
soda
221f729935 common chipset description for NEC EISA generation platforms 2001-06-13 15:22:49 +00:00
soda
272b3c0d0d common chipset description for NEC EISA and PCI generation platforms 2001-06-13 15:21:52 +00:00
soda
3e5520d4d1 common description for platforms which have Jazz and EISA
but doesn't have PCI, like magnum based platforms and
NEC EISA generation platforms
2001-06-13 15:21:00 +00:00
soda
4f9452f773 common chipset description for magnum based platforms like
Microsoft-Jazz and PICA-61
2001-06-13 15:19:28 +00:00
soda
eab4fd5e7a rename statically allocated software context which is needed for
console initialization, from "struct necpb_config necpb_configuration;"
to "struct necpb_context necpb_main_context".
to resolve naming conflicts with "struct XXX_config *XXX_conf;"
which describes platform-dependent configuration variants.
2001-06-13 15:18:28 +00:00
soda
1aa149136b rename statically allocated software context which is needed for
console initialization, from "struct necpb_config necpb_configuration;"
to "struct necpb_context necpb_main_context".
to resolve naming conflicts with "struct XXX_config *XXX_conf;"
which describes platform-dependent configuration variants.
2001-06-13 15:18:27 +00:00
soda
56197e330a make vga frontend does same thing with pccons frontend 2001-06-13 15:12:28 +00:00
soda
d54e67b2d3 add copyright notice 2001-06-13 15:12:02 +00:00
soda
5738ad78e7 remove "cputype", introduce "struct jazzio_config *jazzio_conf;" to
describe platform-dependent variants. clean up jazz i/o interreupt
handling had device configuration information.
2001-06-13 15:11:38 +00:00
soda
131e5819c3 remove "cputype", introduce "struct asc_config *asc_conf;"
to describe platform-dependent variants.
2001-06-13 15:10:35 +00:00
soda
ceabf3273a remove "cputype", introduce "struct btl_config *btl_conf;"
to describe platform-dependent variants.
2001-06-13 15:09:32 +00:00
soda
bc0d30a90c introduce "struct platform", and remove "cputype" variable.
this change also includes a patch to obtain secondary cache size
from ARC firmware by Bob Meader, which was posted on port-arc on 18 Aug 2000.
this should make NEC Express RISCserver work.

this change obtains ID of display controller from ARC firmware, too.
2001-06-13 15:08:05 +00:00
soda
b7abba7794 split pccons driver into "pccons" and "opms",
also split into bus-dependent frontend and bus-independent backend.
2001-06-13 15:05:43 +00:00
soda
226c44ecbc use MI i8253reg.h instead of home grown one 2001-06-13 15:03:53 +00:00
soda
ba6a3c6db5 split ISA bridge code into bus dependent frontends to remove "cputype"
variable.
2001-06-13 15:03:24 +00:00
soda
c6eacfae15 split clock_mc.c into interval timer driver (timer) and
real time clock driver (mcclock)
2001-06-13 15:02:12 +00:00
soda
c7b603e55d split clock.c into interval timer part ("timer" for cpu_initclock) and
real time clock part ("todclock" for inittodr, resettodr)
2001-06-13 15:00:26 +00:00
soda
33669543d9 remove algor related codes, because there is independent (and working!)
algor port now.
2001-06-13 14:58:38 +00:00
soda
7a314c516c enable device_register(9) on arc port to parse boot device name
passed by ARC firmware correctly.
2001-06-13 14:36:33 +00:00
toddpw
a865af9ad5 Enable attachment for Kingston KNE-PC2 Ethernet. 2001-06-13 13:41:01 +00:00
rafal
68306a9bf0 Implement a db_trap_callback which turns off the watchdog on entry to DDB
and turns it back on on exit.  Hook the callback in early in the boot, so
it's there as soon as DDB is available.
2001-06-13 12:34:24 +00:00
wiz
c03a48d64f withough -> without 2001-06-13 10:45:57 +00:00
scw
e13606c37b Workaround for buggy OPTi pciide chipset revisions, as reported
in PR/11644.
2001-06-13 09:55:25 +00:00
enami
4553af4ee5 Add minimal support for vr4122/vrc4173 pci. 2001-06-13 07:32:47 +00:00