Commit Graph

47882 Commits

Author SHA1 Message Date
thorpej
4b23ee5d3b PCI configuration space access for BONITO. 2001-06-22 03:58:55 +00:00
thorpej
5df8e5587e Basic BONITO software state definitions. 2001-06-22 03:58:33 +00:00
thorpej
90c3629b19 Add a definition for BONITO_PCIMAPCFG_TYPE1, and make the BONITO
accessor macros useful in the NetBSD kernel environment.
2001-06-22 03:58:03 +00:00
thorpej
e4ce5f4268 A P-6032 will never have a V3 PBC -- don't include its option header. 2001-06-22 03:45:24 +00:00
simonb
7fe4c3ba1d Make this compile when DEBUG isn't defined. 2001-06-22 03:25:39 +00:00
thorpej
b5443137f0 Only call through the function pointer if it's not NULL. 2001-06-22 01:42:20 +00:00
toshii
8128f45c37 Remove useless DEBUG code. 2001-06-22 01:29:26 +00:00
matt
41d73006f1 DMISS/DCMP/HASH1/HASH2/IMISS/ICMP/RPA are also valid on the MPC6XX
(specially the 603 and maybe the 601)
2001-06-22 00:01:25 +00:00
chris
2f52c6af4f Remove commented out reference to EBSA missed in previous change. 2001-06-21 23:11:48 +00:00
eeh
6bda7d4cc7 Add an install kernel w/room for a miniroot. 2001-06-21 23:00:19 +00:00
chris
9bb435db31 Tidy up bootconfig, only needs the footbridge section on cats. 2001-06-21 22:08:28 +00:00
matt
6d3037579c Change a debugging message a bit. 2001-06-21 22:05:50 +00:00
jdolecek
36f8e84443 Move prototype of sysctl_dopipe() from <sys/sysctl.h> to <sys/pipe.h>
and adjust kern/kern_sysctl.c accordingly.
2001-06-21 19:08:36 +00:00
thorpej
1ce7119f17 More ISA interrupt rototilling. I get *some* interrupts on a:
we1 at isa0 port 0x300-0x31f iomem 0xcc000-0xcffff irq 10
we1: WD8013WC Ethernet (16-bit)
we1: Ethernet address 00:00:c0:94:f6:72

...but still nothing on the PCIC.
2001-06-21 19:00:18 +00:00
jdolecek
82ce96aaec Don't include opt_new_pipe.h, it's not needed here 2001-06-21 18:59:51 +00:00
thorpej
e0901dc354 Fix whitespace botch. 2001-06-21 18:58:18 +00:00
thorpej
2ab206fbb5 Update, based on i8259a manual. 2001-06-21 18:57:04 +00:00
jdolecek
ad2b5880f0 Oops, fell into rpipe/wpipe trap:
The end we want to do selwakeup() on is not necessarily same as the one
we send SIGIO to. Make pipeselwakeup() accept two parameters and update
callers accordingly. This change fixes behaviour for code, which does
select(2)s on the write end waiting for reader (watched on gv, the problem
manifestated itself as a too long delay before the document was displayed).

Clearly separate the resource free code for FreeBSD
and NetBSD case in pipeclose(), so that it's a bit clearer what's going on.
Also LK_DRAIN the lock before the memory is returned to pipe_pool.

Add missing wakeup() in pipe_write() for PIPE_WANTCLOSE case.
2001-06-21 18:46:22 +00:00
matt
756d684c5a Rename/enumerate the PTE protection bits to their real purposes. 2001-06-21 18:03:37 +00:00
bouyer
b1a2f97303 Also print DSA addr in a DIAGNOSTING printf. 2001-06-21 16:55:20 +00:00
bouyer
8a46c28bc6 Proper media support for Compaq Deskpro 4000. PR kern/13244 from
Andrew Gillham.
2001-06-21 16:33:33 +00:00
briggs
9fb64d8fcd Build with and without option NEWPMAP. 2001-06-21 16:30:05 +00:00
briggs
1e9e15b279 Bring back pte.h for non-NEWPMAP builds. 2001-06-21 16:28:51 +00:00
onoe
b5e1e7d8ab add #include <net/if_ieee80211.h> to make it compilable. 2001-06-21 14:02:56 +00:00
onoe
ea8bda451f Add support for persistent key.
Fix promiscuous mode, taken from FreeBSD.
Fix to re-enable the card after suspend/resume.
Reflect current operational rate to if_media interface.
Avoid duplicate copy in transmit.
Move most of debug printfs into IFF_DEBUG.
Disable ANCACHE - designed for IPv4 only and no one use it.
Add IFF_ALLMULTI flags, as we don't have multicast filter.
Convert bzero/bcopy to memset/memcpy.
... sorry for jumbo commit.
2001-06-21 12:49:06 +00:00
onoe
0e7b0f3f43 add definitions for LEAP stuff in 350 series.
fix the value for AN_802_3_OFFSET to 0x34 (no one uses)
2001-06-21 12:33:24 +00:00
onoe
dd3d1120f0 Add definitions of the value for 'i_wepon' of ieee80211_nwkey to prepare
support for persistent keys.
2001-06-21 12:29:39 +00:00
wiz
e2eaa3b87a constraint, not contraint. 2001-06-21 12:15:03 +00:00
chris
db3f1a4dd5 Update vmparam.h to just have the cats value for KERNEL_VM_SIZE.
As noted by Robert Swindells.
2001-06-21 09:29:39 +00:00
thorpej
cc6c89106a Correct the ISA bridge irqmap. 2001-06-21 06:24:23 +00:00
thorpej
f341043437 Rototill ISA interrupt code. In particular, I have remembered most
of the horror that is the 8259 PIC.

PCMCIA interrupts still not working yet, but getting closer.
2001-06-21 05:20:54 +00:00
kei
bddb038898 explain about macppc litte more. 2001-06-21 05:18:07 +00:00
thorpej
ee9070cc5a Add a long-needed register descripton file for the i8259 PIC.
This was taken from the PIIX4 manual, and thus doesn't have all
the legacy crap (relative to "modern" ISA PICs, anyway), so if
you have a real i8259 manual, fill in some more bits.
2001-06-21 03:43:43 +00:00
matt
467c0ed022 Rework pmap_bootstrap. Fix some comments. Add old copyright until i finish
excising that code.
2001-06-21 03:26:12 +00:00
uwe
666d09dcfc Add PROM patches (forth code) as a table indexed with root node name
and prom version.  Little tweaks to prom during secondary boot are
much easier then fragile work-arounds in the kernel.  Currently this
is used for JavaStation 1 with OBP3.
2001-06-21 03:13:05 +00:00
oster
bdfad3793f We don't need to check for raidautoconfig here, so nuke it and
clean up a little.
2001-06-21 03:07:04 +00:00
eeh
b61ff8de5f Prevent a hang if trying to pmap_protect a page with wired mappings. 2001-06-21 01:17:18 +00:00
eeh
8009aa2033 Allow multiple 4MB pages for both kernel text and kernel data.
Note: DEBUG checks will not allow accesses to the hole between
text and data segments, so you may need to update programs that
use libkvm before relocating the start of kernel data.
2001-06-21 00:24:22 +00:00
eeh
ede617e6dc Allow probes to kernel addresses that generate access errors not panic the machine. 2001-06-21 00:10:49 +00:00
eeh
bceb1fab42 Be a bit more consistent about returning errors. 2001-06-21 00:08:02 +00:00
chris
ca2e4c7c43 remove another reference to ebsa285 missed in the last change 2001-06-20 22:20:42 +00:00
chris
7383fda9e0 Remove defopt EBSA285.
Move the files from footbridge that are cats specific.
Remove EBSA285 kernel as people should be able to use the generic cats kernel for EBSA285 systems.
2001-06-20 22:14:32 +00:00
thorpej
ae2fb7473c Regen; add/update 3Com 3CR990 products. 2001-06-20 19:52:19 +00:00
thorpej
8e15530e96 Add more/update existing 3Com 3CR990 product IDs. 2001-06-20 19:51:12 +00:00
uch
cd62c87986 recompile. 2001-06-20 17:38:59 +00:00
uch
7b262bfecb when there are two or more framebuffer setting, returns best match setting.
and this is for bivideo.
2001-06-20 17:36:00 +00:00
thorpej
08415c62e6 Regen; add SysKonnect SKNET-GE. 2001-06-20 16:33:10 +00:00
thorpej
70bbf8c3aa Add SysKonnect SKNET-GE (GEnesis Gigabit Ethernet). 2001-06-20 16:32:32 +00:00
matt
f0a0494c33 Allocate mb_map is PMAP_MAP_POOLPAGE is not defined. 2001-06-20 15:25:02 +00:00
nonaka
a68ff290b1 Sync reality. 2001-06-20 14:42:39 +00:00
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