thorpej
cee702b869
Optimized in4_cksum().
2001-04-29 03:29:21 +00:00
fvdl
70316ad6e1
Remove COMPAT_14.
2001-04-29 00:34:11 +00:00
bjh21
e9c8a1fbb5
Add ipfilter, rnd, vcoda and raid.
2001-04-28 17:41:01 +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
ragge
0c1fdede08
MD in4_cksum.
2001-04-28 09:38:03 +00:00
ragge
8f8a96a056
Fix a bug so that MD-optimized in4_cksum() now works.
...
While here; rewrite header checksum calculation in assembler.
2001-04-28 09:36:01 +00:00
thorpej
53c1b3f9d7
Add a microtime() implementation that interpolates between ticks
...
using the cycle counter. MP-safeness is achieved by giving each
CPU its own PCC frequency variables, and kicking the non-primary
processors via an IPI once per second.
Based on the sample code from David Mills' "A Kernel Model for
Precision Timekeeping".
2001-04-28 06:10:49 +00:00
wdk
86d8020753
Move previous patch which performs allocsys() before pmap_bootstrap()
...
to the correct location.
2001-04-28 04:20:27 +00:00
jdolecek
3367b801f2
Add driver for SKNET Personal and MC+ - AMD Lance 7990 based ethernet cards.
...
Both models tested and seem to be quite stable and fast.
Thanks to:
- Hans Hubner <hans@Huebner.org> for giving me the cards for testing
- Georg Klug of Syskonnect, who provided me with hw docs for these cards,
very promptly and willingly - I wish all vendors would be like this
- Alfred Arnold, Linux SKNET driver author, for giving me valuable Syskonnect
contact :)
2001-04-27 18:03:40 +00:00
ragge
ec52ca1e06
Enable the L1 cache on KA640. Problem reported and testing help from
...
Saku Setala.
2001-04-27 15:02:37 +00:00
tsutsui
1bcd6675d5
Reset FDC in news5000_init() to avoid spurious interrupts
...
after booting from floppy (since we don't have fdc driver yet).
2001-04-27 12:55:51 +00:00
lukem
0808e23b17
cdev_vmegen_init can use cdev__ocrwim_init
2001-04-27 05:47:47 +00:00
bjh21
3a7710b605
Add ELF version of _PROF_PROLOGUE.
2001-04-26 23:20:02 +00:00
bjh21
271fb855ce
Arrange to restore R14 on return from __mcount, so that profiled assembler
...
routines will work. We could put this in _PROF_PROLOGUE, but this seems
lighter-weight and possibly cleaner.
2001-04-26 22:09:57 +00:00
thorpej
9d7220db23
Explicitly include <machine/pio.h>.
2001-04-26 17:56:37 +00:00
thorpej
ea0e8e69d5
Const poison.
2001-04-26 17:55:54 +00:00
kleink
99054d7a6c
Add definitions for C99 fastest minimum-width integer types.
2001-04-26 16:25:19 +00:00
tsubai
520e444562
Cosmetic changes.
2001-04-26 15:52:00 +00:00
tsubai
75dbde785b
Remove spaces at EOL.
2001-04-26 15:27:05 +00:00
tsubai
8e3cb2354b
Comment out ``printf("spurious interrupt\n")''.
2001-04-26 14:40:19 +00:00
is
f7455bf6e8
Be more specific than "some isic board".
2001-04-26 05:58:41 +00:00
ross
32edf97089
Move fp_complete() outside kernel lock perimeter.
2001-04-26 04:21:35 +00:00
ross
b569533b9a
Clean up 3 comments.
2001-04-26 04:16:17 +00:00
ross
2df695b1e4
o IEEE 754 floating-point completion code.
...
o Implement the architected FP_C "Floating Point Control Quadword"
2001-04-26 03:10:44 +00:00
thorpej
a60e816e7a
Provide a pmap_resident_count() that simply expands to 0.
2001-04-25 18:03:19 +00:00
thorpej
4717bdf66e
Remove some redundant definitions (they're already in <mips/pmap.h>).
2001-04-25 17:54:07 +00:00
bouyer
937a7a3ed9
Pull up the thorpej_scsipi branch to main branch.
...
This is a completely rewritten scsipi_xfer execution engine, and the
associated changes to HBA drivers. Overview of changes & features:
- All xfers are queued in the mid-layer, rather than doing so in an
ad-hoc fashion in individual adapter drivers.
- Adapter/channel resource management in the mid-layer, avoids even trying
to start running an xfer if the adapter/channel doesn't have the resources.
- Better communication between the mid-layer and the adapters.
- Asynchronous event notification mechanism from adapter to mid-layer and
peripherals.
- Better peripheral queue management: freeze/thaw, sorted requeueing during
recovery, etc.
- Clean separation of peripherals, adapters, and adapter channels (no more
scsipi_link).
- Kernel thread for each scsipi_channel makes error recovery much easier
(no more dealing with interrupt context when recovering from an error).
- Mid-layer support for tagged queueing: commands can have the tag type
set explicitly, tag IDs are allocated in the mid-layer (thus eliminating
the need to use buggy tag ID allocation schemes in many adapter drivers).
- support for QUEUE FULL and CHECK CONDITION status in mid-layer; the command
will be requeued, or a REQUEST SENSE will be sent as appropriate.
Just before the merge syssrc has been tagged with thorpej_scsipi_beforemerge
2001-04-25 17:53:04 +00:00
thorpej
fe664428c8
Garbage-collect pmap_page_index().
2001-04-25 17:35:00 +00:00
bjh21
90dfa8d8ff
Undo my accidental revival of pmap_kenter_pgs().
2001-04-25 16:30:03 +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
bjh21
7cf0a5e592
Arrange the "unamanaged" pages (entered through pmap_kenter_pa()) are tracked
...
and ignored as necessary.
2001-04-25 14:42:31 +00:00
thorpej
5de93d4755
Move _i386_memio_unmap() into bus_machdep.c; the ACPI code wants it.
2001-04-25 03:31:23 +00:00
simonb
6f6fe2f3ad
Spell occurred correctly.
2001-04-25 02:33:08 +00:00
thorpej
c28272808b
Remove the PTP and PV entry stealing code. Now that the pmap
...
module can fail gracefully, it serves little purpose, and the
code is a bit complicated and adds overhead to the context
switching code.
2001-04-24 20:53:43 +00:00
ragge
2f019a2701
Support for KA681 (4000/500A) from Michael Kukat.
2001-04-24 20:16:36 +00:00
thorpej
20f1193ce2
Delete a couple of statistics that are not really worth keeping.
2001-04-24 20:14:45 +00:00
thorpej
7d4893b529
Gather ASN info into a single structure, and place a variable-length
...
array of those structures at the end of the pmap structure. We compute
the size of the pmap structure based on the maximum CPU ID for a
particular machine. This gives us better cache behavior and better
memory footprint for the ASN info.
2001-04-24 20:11:53 +00:00
thorpej
42113967f9
Fix an uninitialized variable problem in the non-MULTIPROCESSOR case.
2001-04-24 20:03:20 +00:00
marcus
bc069b939c
Abstracted handling of System ASIC controlled IRQ:s a little.
...
Three different IRQ:s can be selected for each event, 9, 11, or 13
(which selects hardware priority). More events to be added as they
are discovered. Do not use shb_intr_establish() to register IRQ 9, 11
or 13 anymore.
2001-04-24 19:43:23 +00:00
uch
909873bca2
recompile.
2001-04-24 19:30:53 +00:00
uch
bd926f64c6
code clean up.
2001-04-24 19:27:58 +00:00
bjh21
843c4223f1
setsoftast is a macro now.
2001-04-24 18:21:10 +00:00
bjh21
63692f5771
Rather large overhaul. Mostly cosmetic, but also:
...
Provide PROC_PC on arm26.
Provide working CLKF_INTR on arm26.
Make setsoftast a macro everywhere.
2001-04-24 18:20:21 +00:00
bjh21
01adfb1d35
Pull in <arm32/psl.h> for spl* definitions.
2001-04-24 18:16:43 +00:00
bjh21
05d087e7c7
Remove definitions of CLKF_*. They're defined in <arm/cpu.h> now.
2001-04-24 18:15:44 +00:00
uch
f0df5e196f
delete noisy debug message.
2001-04-24 17:09:54 +00:00
thorpej
e553a6caf0
Do the first allocsys() pass (the pass that computes sizes) before
...
calling pmap_bootstrap(); pmap_bootstrap() needs some of the size
information computed by allocsys().
2001-04-24 15:41:38 +00:00
fredette
de878b5521
Added these required headers.
2001-04-24 14:42:32 +00:00
tsubai
af50ac4b06
Make sure free rx buffers have GMAC_OWN set.
2001-04-24 11:04:11 +00:00
leo
56ea880f14
Both isa_hades.c and isa_milan.c are also dependent on 'isa' of course...
2001-04-24 10:56:54 +00:00
nisimura
da9a00c583
Add PRiD register imp value 0x2d for Toshiba TX4900 family.
2001-04-24 08:03:44 +00:00
leo
164b045485
Split the ISA common attachment stuff and the interrupt handling.
...
There are too many differences between the Hades and Milan in this area.
2001-04-24 06:39:47 +00:00
leo
a1bcd64a89
The register spacing for the Milan is different.
2001-04-24 06:27:58 +00:00
leo
d7512523ba
Add sanity checking on register B of the mc146818.
2001-04-24 06:26:48 +00:00
leo
8e9f65f2a7
Don't emit SCU defines when it isn't present.
2001-04-24 06:17:22 +00:00
leo
7488e821c5
Handle cases in which the cpulabel pointer == NULL.
2001-04-24 06:15:42 +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
thorpej
1e306aae10
Garbage-collect pmap_bootstrap_alloc(); nothing uses it.
2001-04-23 23:58:09 +00:00
thorpej
a5dd88f940
Add local prototype for internal pmap_bootstrap_alloc() function.
2001-04-23 23:57:49 +00:00
thorpej
92891185c3
Don't need a prototype for pmap_bootstrap_alloc(); the function
...
does not exist in the pmap API anymore.
2001-04-23 23:53:07 +00:00
thorpej
079c2e0ac9
Call pmap_bootstrap() before calling uvm_pageboot_alloc(), so that
...
the kernel virtual address space bounds will be set up.
2001-04-23 23:50:22 +00:00
bjh21
72aab13520
Add the IOLINES register from the ARM7500FE, and delete a few incongruous
...
blank lines.
2001-04-23 22:17:09 +00:00
rearnsha
8a64dad5d2
Eliminate dev->sc_xs. Simplify calls to sbicicmd. Replace
...
dev->sc_kv.dc_{addr,count} with dev->data{,len}.
2001-04-23 20:32:33 +00:00
kanaoka
bb0eabfe15
- fixup only #0 bus --> fixup maxbus.
...
- Don't pciaddr_do_resource_allocate if device is AGP
to avoid conflict.
2001-04-23 19:15:29 +00:00
uch
c4ebb7bc47
recompile.
2001-04-23 18:09:27 +00:00
uch
144b54db26
generate opt_spec_platform.h.
2001-04-23 18:07:57 +00:00
thorpej
cd31bdd2b7
Make sure virtual_end is initialized before calling uvm_pageboot_alloc(),
...
and garbage-collect the virtual_avail variable (it is not necessary in
this pmap implementation).
2001-04-23 17:14:17 +00:00
uch
12772d5476
I forgot to add.
2001-04-23 16:47:16 +00:00
thorpej
2c37838b72
The Alpha pmap_virtual_space() can return compile-time constants,
...
so do so. This allows us to call uvm_pageboot_alloc() before
pmap_bootstrap().
Also, the virtual_start variable is unneeded in the Alpha pmap
module, and virtual_end (and the mostly-unused-except-by-bus_dma
variables avail_start and avail_end) can be `computed' at the
same time.
2001-04-23 15:42:29 +00:00
thorpej
92ca543e1c
Panic if all mappings are not removed from a pmap when its
...
reference count drops to 0.
2001-04-23 15:26:08 +00:00
pk
f33abf3809
Bump PIL_NET to 7; some sbus network boards use this interrupt level.
...
Nuke PIL_IMP.
2001-04-23 14:40:03 +00:00
sato
25bed1d297
fix memcpy argument in SPEC_PLATFORM&BOOT_STANDALONE case.
2001-04-23 11:31:15 +00:00
uch
f95d468a51
switch to ELF kernel.
2001-04-23 11:22:55 +00:00
uch
210faed679
new hpcsh clock module.
2001-04-23 11:22:19 +00:00
uch
63ec3bc3fa
dreamcast clock module was separated.
2001-04-23 11:20:41 +00:00
sato
40e5d08ed9
set specified platid when BOOT_STANDALONE & SPEC_PLATFORM=xx specified.
2001-04-23 10:13:02 +00:00
sato
4a5dcf307b
#include "opt_spec_platform.h"
2001-04-23 10:08:28 +00:00
jdolecek
7c9c35e3e7
Move the inclusion of 'mca.h' so that it doesn't depend on pcppi. The clock
...
interrupts are properly reset on PS/2 now.
Handle the slighly different PS/2 CMOS layout and get/set century
byte as appropriate. The check for valid CMOS CRC checksum is not implemented
yet; I don't currently know algorithm they use.
The info about PS/2 CMOS was taken from the Padgett Peterson's
x86/MSDOS Interrupt List, release 60.
2001-04-23 09:35:12 +00:00
jdolecek
e99b513ca1
fix typo
2001-04-23 05:45:43 +00:00
thorpej
69fd928d7c
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-23 01:02:06 +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
ec66f67f3a
Use pmap_kenter_pa() rather than pmap_kenter_pgs().
2001-04-22 23:28:52 +00:00
thorpej
69abdbf60c
Undo a misguided previous change to the pmap_update() API.
2001-04-22 23:19:26 +00:00
fredette
8a5ee3ff29
Added.
2001-04-22 21:00:27 +00:00
ross
8e68ebf6df
Add one-line placeholder for pending commit so diffs are complete.
2001-04-22 20:47:22 +00:00
soren
a671e50d00
Put tr(4) in network section.
2001-04-22 19:53:25 +00:00
jdolecek
24568e5a13
Since IBM PS/2 support is becoming quite stable, remove the lenghty
...
disclaimer on top and leave only necessary fragments.
edc(4) seems to be quite stable, remove the EXPERIMENTAL note
2001-04-22 19:15:05 +00:00
jdolecek
0800e2ed46
add major { ed = 20 }
2001-04-22 18:39:49 +00:00
thorpej
5871b80f00
Use uvm_pageboot_alloc() for early memory allocation, rather than
...
calling pmap_steal_memory() directly. On these platforms, since
uvm_pageboot_alloc() is a wrapper around pmap_steal_memory(), there
is no functional change. This is merely for API consistency.
2001-04-22 18:21:48 +00:00
uch
103b08ffa1
make this compile again under SH4
2001-04-22 17:37:55 +00:00
thorpej
cfb5c7ed9f
Make pmap_virtual_space() a required pmap function, even on platforms
...
which have pmap_steal_memory(). This is to reduce the API differences
between pmaps that implement pmap_steal_memory() and pmaps which do
not.
Note that pmap_steal_memory() needs to adjust *vstartp and/or
*vendp only if it used addresses within the range provided to UVM
via the pmap_virtual_space() call. I.e. it is not necessary to do
so in any current pmap_steal_memory() implementation.
2001-04-22 17:22:57 +00:00
uch
95f0d5c680
add RTC control register 1 defines.
2001-04-22 16:50:17 +00:00
bjh21
8eed59a146
Move arcpp so it attaches before podulebus.
2001-04-22 15:26:07 +00:00
bjh21
11b40e716c
Add arcpp. Not in GENERIC because I don't know it works.
2001-04-22 15:02:51 +00:00
bjh21
856547f067
Driver for Archimedes parallel ports. I haven't got a parallel printer, so
...
this is currently untested.
2001-04-22 15:01:25 +00:00
bjh21
2a1570b5d9
Add functions to twiddle the latch bits, patterned after the ones in Linux.
2001-04-22 15:00:13 +00:00
jdolecek
912e570671
Introduce machdep mca_disk_[un]busy(), which turn on/off disk LED.
...
Call as appropriate from the ESDI disk driver
2001-04-22 11:52:18 +00:00
jdolecek
738e87aeb9
fix argument for bitmask_snprintf() (stylistic only, code is commented out anyway)
2001-04-22 11:51:45 +00:00
shin
2d7f52d2c7
add Serial Line IP (sl).
2001-04-22 02:06:34 +00:00
shin
22b4360d24
add config files for installation.
2001-04-22 02:01:43 +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
bjh21
660a20cd22
Add a skeleton driver for the random latches on the Archimedes, which are
...
shared between the printer port and floppy drive. Useful facilities will be
added when I know what I need.
2001-04-22 00:26:35 +00:00
thorpej
7f10ba88b1
#define away pmap_update() in <machine/pmap.h> so that no function
...
call overhead is incurred as we start sprinkling pmap_update() calls
throughout the source tree (no pmaps currently defer operations, but
we are adding the infrastructure to allow them to do so).
2001-04-21 23:51:14 +00:00
ross
c8ee2e4ddd
Import and use cpu_info_primary for non-MULTIPROCESSOR.
...
Hey, it compiles, and it's only -current.
2001-04-21 22:03:21 +00:00
fvdl
4c41d3275c
s/cheap/expensive/ for DIAGNOSTIC
2001-04-21 21:10:41 +00:00
fvdl
41a3ee5d58
Note that the (already commented out) DIAGNOSTIC option is expensive.
2001-04-21 21:03:46 +00:00
fvdl
2654febb55
Remove DIAGNOSTIC and mark it as expensive.
2001-04-21 21:02:03 +00:00
fvdl
a1b8e618af
Doh. Put the option *after* the include of plain GENERIC.
2001-04-21 20:58:13 +00:00
fvdl
781af989f9
Move the DIAGNOSTIC option to a seperate config file, it's too expensive
...
to be in GENERIC (which should be a kernel ready for production use).
2001-04-21 20:49:14 +00:00
rearnsha
8faae68155
Use bus_space functions for accessing SBIC registers.
2001-04-21 20:47:26 +00:00
jdolecek
6402f68d79
Match any device with class bridge and subclass BRIDGE_MC, instead
...
of matching individual products. Pointed out by Jason Thorpe.
2001-04-21 19:18:20 +00:00
bjh21
85e1abfb39
Keep track of interrupt depth. With forthcoming changes to cpu.h, this gets
...
us accounting for interrupt time.
2001-04-21 18:51:17 +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
thorpej
c3df364b08
pmap_update() -> tlbflush()
2001-04-21 17:20:58 +00:00
thorpej
82065e8a0b
Update the comment for pmap_update().
2001-04-21 17:13:12 +00:00
thorpej
24e7ecca97
Adjust the way the cpu_info[] array works (array of pointers
...
rather than array of structures). Keep a list of active
CPUs and define a CPU_INFO_FOREACH to traverse them.
This fixes cpustates statistics tracking.
2001-04-21 16:27:10 +00:00
sato
5c43977ed6
- fix comment for MCR/530.
...
- add MCR/530A(MobilePro780) PWCTL_COM0 device.
- add MC-R520A(MobilePro770) BTN_COVER device,
but commented because of no checking.
- add MC/R530A(MobilePro780) BTN_COVER device,
but commented because of no checking.
2001-04-21 15:56:55 +00:00
bjh21
630f137a5e
Multiple-inclusion protection.
2001-04-21 15:47:32 +00:00
sato
9804ab7c49
add VR4181 vrip register maps.
...
add VR4181 vrip intr levels.
2001-04-21 14:46:36 +00:00
sato
05c9ce0788
add VR4181 BCU register definitions.
...
add routines for VR4181.
2001-04-21 14:44:40 +00:00
tsutsui
c7bcfd56a3
Fix a leftover comment.
2001-04-21 11:54:25 +00:00
sato
a797d869ed
dump io setting: DPRINTF->VPRINTF
2001-04-21 10:32:38 +00:00
tsutsui
c6e66cb834
Define ${ELF2ECOFF} and use it so that we can specify objcopy
...
for it on cross environment.
2001-04-21 05:54:02 +00:00
ross
baa78b5c79
Nonfunctional change split out from pending functional commit.
2001-04-20 23:52:23 +00:00
thorpej
4ad5b289fe
No longer need to play with the kernel_lock while waiting
...
for the other processor to sync FP state.
2001-04-20 22:59:38 +00:00
thorpej
c24c3604b0
SPINLOCK_INTERLOCK_RELEASE_HOOK should actually be
...
SPINLOCK_SPIN_HOOK, so that we actually check for
pending IPIs on the Alpha more than once. Also,
when we call alpha_ipi_process(), make sure to go
to splipi().
2001-04-20 22:58:39 +00:00
thorpej
b8ccfcaac5
Add splipi() to block interprocessor interrupts (which come in at IPL 5).
2001-04-20 22:28:58 +00:00
toshii
61ff48a82e
In pmap_allocpagedir(), check if uvm_km_zalloc of ptpt is successful,
...
and handle alloc failure case.
2001-04-20 18:11:53 +00:00
matt
1a5fe5b583
Split cpu from mainbus so that cpu can attached to other buses (like ofbus).
2001-04-20 18:08:48 +00:00
thorpej
97682364ef
Adjust for a multiprocessor data structure change (whee, I guess
...
I haven't built a GENERIC.MP for a while...)
2001-04-20 18:03:27 +00:00
thorpej
499f5a02fd
Alas, we must put pmap_emulate_reference() in the kernel_lock
...
perimeter as long as we still acquire it in interrupt handlers,
in order to avoid a lock ordering deadlock.
2001-04-20 18:00:50 +00:00
he
9f142f57b9
In the provisional disklabel (which will be used if there is no
...
valid on-device disk label), set d_npartitions to RAW_PART+1 instead
of to 1. Discovered as a build bug on the netbsd-1-5 branch, affecting
miniroot construction and vnd devices; RAW_PART went missing from the
in-core disklabel, and eventually also the on-device label.
2001-04-20 16:58:19 +00:00
matt
5f6967f571
A small change for NETWINDER support. (netwinder needs its own pci_attach_hook)
2001-04-20 16:52:04 +00:00
matt
60ca1c1c66
Make EXEC_ELF32 standard. Cleanup/fix GENERIC to include more devices.
2001-04-20 16:48:01 +00:00
thorpej
e84fefd1f1
pmap_asn_alloc(): In a multiprocessor configuration, it's possible
...
to arrive here referencing the kernel_lev1map without having the
RESERVED ASN -- another CPU may have caused pmap_lev1map_destroy()
to be called, and that routine only invalidates the ASN for the
CPU that called it. So, in the MULTIPROCESSOR case, simply assign
the RESERVED ASN if we reference the kernel_lev1map rather than
asserting that we already have the RESERVED ASN. Thanks to Bill
Sommerfeld for helping me track down the problem.
Also add a new IPI that causes a CPU to re-activate its address
space if the pmap it's using changes level 1 maps (this probably
won't happen very often, but it's correct to have it).
This makes Alpha MP kernels boot multiuser. In fact, this commit
is being made from my dual-CPU AlphaServer 1200 running an MP kernel.
2001-04-20 16:22:33 +00:00
matt
21b85badda
More changes to get the netwinder to multiuser. Hack the initarm code
...
to reserve the first 2MB for the kernel. Use the netwinder specific
files. Add pci_attach_hook for init the pci devices. Add and alternate
id for the PCI ISA bridge.
2001-04-20 16:09:48 +00:00
reinoud
80b53c5a9b
Euhm... small typo !
2001-04-20 12:47:55 +00:00
sato
355c78fa22
enlarge MSGBUFSIZE for -v option.
2001-04-20 12:08:45 +00:00
sato
f3f40df128
options<TAB><TAB> -> options<SPACE><TAB>
2001-04-20 12:07:49 +00:00
sato
17218cb6b4
- add VR4181 and VR4122 cpu for hpcmips. and regen headers.
...
- add new option 'options BOOT_STANDALONE'
boot from standalone(not WinCE application) boot loader.
- add new option 'options SPEC_PLATFORM'
statically specify platid in config file.
In BOOT_STANDALONE case,
'options SPEC_PLATFORM=platid_mask_MACH_xxx_yyy',
and add 'options SPEC_MACH_xxx'&'options SPEC_MACH_xxx_yyy'.
for specify platid in config file statically'
In wince boot case, 'options SPEC_PLATFORM'
and add 'options SPEC_MACH_xxx'&'options SPEC_MACH_xxx_yyy' for
config level size optimization.
XXX: now I working in hpcmips...
2001-04-20 10:15:02 +00:00
kanaoka
9d36cadfe7
- Allocate memory map entry correctly to avoid Compatibilty Holes.
...
- Update some comments.
patch provided by: enami tsugutomo <enami@sm.sony.co.jp>
suggested by: John Hawkinson <jhawk@MIT.EDU>
2001-04-20 09:10:45 +00:00
jdolecek
a98cbd0740
Add MCA ne(4) attachment for Novell NE/2 Ethernet adapter and clones.
...
Tested with NE/2 card provided to me by Hans Hubner <hans@Huebner.ORG>.
The Compex and Arco cards were not tested. According to Linux ne2 driver,
they should work same way as NE/2.
2001-04-20 07:37:42 +00:00
matt
2297e41241
After finishing with the received descriptor, make sure to "eieio" to make
...
sure the OWN gets back to the gmac in the proper order. This reduces (and
maybe even fixes) the gm0 out-of-order problem.
2001-04-20 01:18:47 +00:00
thorpej
702cab6b16
Eliminate race conditions in the FP-switch code. MP kernels get
...
much further on the way to multi-user now.
2001-04-20 00:10:17 +00:00
chris
485dbd078a
Improved IRQ handling code on IOMD. By using an ffs-like algorithm we don't need to loop quite so much when looking for bits to service (also means we only service irqs that need servicing), also moved code around to avoid stalling where it doesn't loose too much understandabilty.
2001-04-19 20:46:07 +00:00
thorpej
c68e2d61d2
Add support for attaching "com" serial ports as KGDB devices.
2001-04-19 18:25:26 +00:00
uch
9fc37d32af
remove non-existent function declaration.
2001-04-19 18:24:16 +00:00
uch
207066edaa
fix comment.
2001-04-19 18:22:34 +00:00
uch
d6c81cbed0
fix comment.
...
fix KERNBASE, KERNTEXTOFF.
2001-04-19 18:21:19 +00:00
thorpej
8acff45e10
Work around a firmware bug on the AlphaServer 1000A whereby the
...
built-in ISA display is reported incorrectly.
2001-04-19 18:02:57 +00:00
thorpej
f2f0a680e3
Glue in KGDB. Needs some more work -- KGDB currently renders
...
DDB disabled, but it's a start.
2001-04-19 17:48:46 +00:00
uch
9b730bc368
patch PR port-i386/11114 by MINOURA Makoto.
2001-04-19 17:32:40 +00:00
rearnsha
348133bed4
More formatting cleanups. Disable UNPROTECTED_CSR since the code
...
is unsafe (can clear interrupts that we are waiting on).
2001-04-19 17:30:20 +00:00
jdolecek
dbf91c827d
Use "edc" instead of "dasd". As pointed out by Soren, dasd doesn't
...
mean anything special in IBM-talk. And edc better matches prior art, too.
2001-04-19 17:17:28 +00:00
pk
d373e2120f
Fix fdc_c_hwintr() and use it as a fall back if the `fast trap' handler
...
cannot be registered.
2001-04-19 14:53:36 +00:00
bjh21
e66c66730e
Remove <arch/arm26/podulebus/podulebus.h>. Podulebus driverd now include
...
<dev/podulebus/podulebus.h>.
2001-04-19 13:47:07 +00:00
kleink
622af9d8c2
Add remaining int_* wrappers.
2001-04-19 08:13:53 +00:00
jdolecek
0915128873
add stuff for ESDI disks, marked as EXPERIMENTAL
2001-04-19 07:37:10 +00:00
mrg
72177f5b6f
-Dsparc64
2001-04-19 07:35:14 +00:00
jdolecek
e1d848e38a
add ed at mca (ESDI disk)
2001-04-19 07:34:28 +00:00
matt
446403457a
Don't the RPC stuff on SHARK or FOOTBRIDGE machines.
2001-04-19 07:19:48 +00:00
matt
afc8ecb0ea
A small NETWINDER kludge.
2001-04-19 07:15:24 +00:00
matt
e046a0dbfb
Add a NETWINDER keyword
2001-04-19 07:14:52 +00:00
matt
dba1f1b73d
Add the isa & pci machdep files.
2001-04-19 07:13:24 +00:00
matt
56260f7d2c
Populate the netwinder include directory.
2001-04-19 07:11:00 +00:00
matt
60f69773a0
A minimum amount to get netwinder support
2001-04-19 07:01:11 +00:00
matt
df03fa3de9
Add these to CVS so other folks can look at them and let me what
...
I'm screwing up.
2001-04-19 06:53:58 +00:00
thorpej
f9d203e8f7
KGDB glue for NetBSD/alpha.
2001-04-19 02:56:34 +00:00
thorpej
58f470b95a
Need <sys/kgdb.h> for kgdb_connect() prototype.
2001-04-19 00:21:08 +00:00
rearnsha
50e1e30747
Put back that old (not) unused include file. But only include it
...
when ARMFPE is defined. Since that is the only time we use it.
2001-04-18 20:27:33 +00:00
thorpej
b1cdda68fb
Remove an un-true comment regarding the location of the u-area.
2001-04-18 16:04:43 +00:00
thorpej
d2fefd399c
ctype-like functions are in libkern now.
2001-04-18 15:43:01 +00:00
thorpej
7fe777de1c
toupper() exists in libkern now.
2001-04-18 15:39:34 +00:00
fredette
c1d17391f5
Added support for the sc SCSI controller on mbmem.
2001-04-18 15:09:47 +00:00
fredette
02db82623f
Trimmed off some options that are unnecessary for now,
...
and some that don't work. Added some more comments,
commented out some 2/50 device entries.
2001-04-18 15:08:59 +00:00
sato
12a0a0a537
- support VR4122 vrip register map.
...
- support VR4122 ICU register map.
- support VR4122 intr levels.
XXX: currently if 'options VR4122' is defined,
XXX: cannot specify 'options VR4121','options VR4111', 'options VR4102'.
XXXX: i have not the VR4122 based hardware.. so no check for VR4122.
2001-04-18 11:07:26 +00:00
sato
553d85e2d4
missing includes in last commit (rev1.6->1.7).
2001-04-18 11:00:30 +00:00
sato
d4262d1ab3
use VRIP_CMU_ADDR in vr/vripreg.h
2001-04-18 10:48:58 +00:00
sato
9d92917cd6
check platid if 'options VR41XX' and 'options TX39XX' are both defined.
...
XXX: currently this case is missconfiguration and not compilable.
XXX: because all codes are not supported this case yet.
2001-04-18 10:42:39 +00:00
kanaoka
e2749d2799
Add "Sanity check the entry" code to avoid Compatibilty Holes
...
(0xa0000 -- 0xfffff).
2001-04-18 05:44:10 +00:00
fredette
db8595f14f
Much bus_dma work. When destroying a map, unload it if it's
...
loaded. Added more comments. Fixed the perspective of a 24-bit
device from the original sun4 code to match the sun2. For now,
we don't double-map pages into DVMA space by hand, we're back
to using pmap_enter. Be more paranoid about saving and
restoring the MMU user context.
2001-04-18 03:45:10 +00:00
fredette
026720119b
Added support for the Sun SC scsi controller.
2001-04-18 03:38:38 +00:00
fredette
451d8d47e1
Added support for creating a bus_dma tag for the mbmem bus.
2001-04-18 03:34:54 +00:00
fredette
5f19315baa
Now define IPL_BIO.
2001-04-18 03:30:14 +00:00
fredette
68230340aa
Fixed a bug in db_write_text where on exit we would bash
...
a PTE in whatever user context happened to be set on
entry.
2001-04-18 03:19:21 +00:00
ichiro
cb893abf13
typo
...
PGOFFSET -> PGOFSET
2001-04-18 01:35:14 +00:00
thorpej
1bf3f87777
Fix a problem with kcopy()/copyin()/copyout() on MP systems
...
that became apparent when UBC was added: store a pointer to
the process itself, not a pointer to ci->ci_curproc.
This gets us back to where we were before UBC went in: MP
kernels get to single-user mode, and can run processes on
both CPUs, but things go south when we try to come into
multi-user mode.
2001-04-18 00:38:10 +00:00
thorpej
a51a1d8cdd
- Get rid of the prot bits in the mem_clusters[] array when
...
reserving RAM in the bus_mem extent map. Problem pointed
out by Artur Grabowski.
- Work around a slightly annoying bit of behavior exhibited by
the UP1000 firmware. The UP1000 firmware reports the space
consumed by the "ISA hole" in the same MDDT entry as two
chunks of RAM (on either side of the hole) used by the PALcode,
all as one "reserved for PALcode" chunk. We must take this
into account when reserving RAM in the bus_mem extent map.
2001-04-17 21:52:00 +00:00
pk
4485b7f720
pmap_enter():
...
* turn ad-hoc `pmap resources allocated during sleep' into a panic condition
(this should all be prevented by higher level VM locking).
* arrange for ENOMEM to be returned if PMAP_CANFAIL is on, and malloc()
and/or pool_get() fail.
2001-04-17 20:14:46 +00:00
toshii
58165a53a2
Make masked interrupts don't bring CPU out of idle mode.
2001-04-17 17:12:40 +00:00
toshii
cfa894dce0
Use idle mode in process waiting idle loop.
2001-04-17 16:14:57 +00:00
toshii
de8e20334a
Map a page needed for entering idle mode.
...
Also, use zero memory at physaddr 0xe0000000 to clean D cache.
2001-04-17 16:10:47 +00:00
toshii
ffe7f4da8a
Fix a bug crept in the previous revision. Call dosoftints() after
...
reenabling interrupts.
2001-04-17 16:07:13 +00:00
toshii
a78b59337f
Overhaul interrupt handlers.
...
- Set the match register before calling hardclock() to prevent
clockintr lossage.
- Better handling of match register overrun case.
2001-04-17 15:58:51 +00:00
toshii
0c1210c6b3
Make the debugging hack needed for DEBUG_BEFOREMMU functional again.
2001-04-17 15:53:04 +00:00
toshii
5373b5ab86
Special care must be taken in order to run statclock at 128Hz.
...
For now, change statclock rate to 64Hz for simplicity.
Thanks to Ross Harvey for pointing out this issue.
2001-04-17 15:49:02 +00:00
sato
cdc83120a7
fix SINGLE_VRIP_BASE condition.
2001-04-17 15:45:20 +00:00
toshii
af9740eeee
Initialize platid in hpc_machdep().
2001-04-17 15:33:39 +00:00
takemura
a8106b2b59
Fix typo. kbdparam.h -> kdbparam.h.
...
RP12685
2001-04-17 15:19:41 +00:00
kleink
40c8d08347
Oops, intptrs are always long integers.
2001-04-17 13:46:02 +00:00
sato
97683d27ae
- definition for vr cpu identify.
...
- definition for vr cpu group identify.
2001-04-17 11:13:16 +00:00
dbj
6456e9d8a9
increase maxsegs of esp main dma map by one to avoid error
...
tweak esp glue to read xfer_len from dma map
add some debugging checks for dma driver invariants
read DD_LIMIT instead of DD_SAVED_LIMIT on scsi dma shutdowns
2001-04-17 03:42:24 +00:00
dbj
fa84b1d943
make sure that dm_segs is last field of next68k_bus_dmamap,
...
so that variable length allocations work
2001-04-16 21:36:58 +00:00
chris
7b97ef04ca
Enable clockswitching on sa110 (with it disabled the core clock runs at the speed of the memory bus)
2001-04-16 18:09:56 +00:00
bjh21
074987f4a3
Ensure that we have some idea what a label_t is, even in userland.
2001-04-16 17:30:32 +00:00
thorpej
18c1bea288
Oops, properly mark a memory operand as both an input and an
...
output as necessary.
2001-04-16 17:05:22 +00:00
bjh21
020a050984
Randomize the statclock period properly. We use the same algorithm as the
...
sparc port.
2001-04-16 14:12:38 +00:00
dbj
b2bff5fc7f
add receive ethernet bpf tap
...
keep receive ethernet crc and set M_HASFCS
change bus_dma MD fields to keep xfer_len for entire map
instead of per segment
turn off automatic dma restarts in preparation for changing
scsi driver to handle them.
add dma debugging routines to keep history of dma states
tweak checking for unusual dma limit register
2001-04-16 14:12:12 +00:00
briggs
511ae4853c
Remove extra whitespace after \.
2001-04-16 13:45:31 +00:00
sato
00ec577a8e
add VR4122 specified register definitions.
...
XXX: vrip.c is not yet supported VR4122.
2001-04-16 09:55:56 +00:00
sato
8a19f18c0b
fix typo in comment.
2001-04-16 09:17:05 +00:00
thorpej
1bd443444b
In splx(), don't call spl0() unless the ssir != 0.
2001-04-15 23:26:05 +00:00
thorpej
00f815f803
Clean up soft interrupt related stuff a bit.
2001-04-15 23:07:34 +00:00
toshii
9e3772786d
Add header files for PPC and SSP register definitions.
2001-04-15 17:27:26 +00:00
toshii
1875326646
Use the second channel to generate 128Hz statclock interrupts.
...
top(1) reports more accurate CPU times (user/sys/intr/idle) now.
2001-04-15 17:19:32 +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
c544d84b41
Catch up with ansi.h rev. 1.12: define SIZE_T_MAX and SSIZE_MAX as long
...
integer constants in ELF environments.
2001-04-15 14:16:08 +00:00
kleink
80ad23a5da
Catch up with ansi.h rev. 1.12: define intptr_t and uintptr_t as long
...
integers in ELF environments, like is done with ptrdiff_t.
2001-04-15 13:38:19 +00:00
takemura
05859f4c8e
Add __COMPILER_UINT64__="unsigned __int64" syncing with the change
...
of arch/mips/include/int_types.h, revision 1.4.
2001-04-15 12:27:32 +00:00
bjh21
5a15be6a18
Don't panic on a stray IRQ, just log it and hope it goes away. This works for
...
my acemidi card at least.
2001-04-15 11:59:43 +00:00
takemura
60f9754d4b
Add __COMPILER_UINT64__="unsigned __int64" syncing with the change
...
of arch/mips/include/int_types.h, revision 1.4.
The version of the binaries are '1.17.3 2001.04.15'
2001-04-15 10:10:43 +00:00
kleink
75f6b62025
Add long-missing(!) <machine/math.h>.
2001-04-14 22:48:31 +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
bjh21
cee3528adc
When checking if an IRQ is active, check for _all_ the right bits' being set,
...
not just some of them.
2001-04-14 19:58:58 +00:00
reinoud
763e66f5de
Initial commit of wsmouse driver for the IOMD quadratic mouse.
2001-04-14 19:22:43 +00:00
bjh21
e0e3b230c1
Remember to initialise the interrupt handle.
...
Bugs like this are my penalty for having my only supported podule in slot 0.
2001-04-14 18:39:20 +00:00
scw
9beeeabe1b
Define a PAGER_MAP_SIZE of 4MB for the benefit of low-memory models.
...
XXX: This may still not be low enough for models with less than 8MB RAM...
2001-04-14 16:02:24 +00:00
reinoud
4e845e001a
Accidently left COMCONSOLE configured
2001-04-14 14:51:04 +00:00
augustss
72eb64fead
Propagate __HAVE_GENERIC_SOFTINTR to assembly files.
2001-04-14 13:56:02 +00:00
scw
dd8c947561
Implement a real microtime() by reading the timer counter register.
...
On mvme147 this gives 6.25uS resolution, and 1uS on all other boards.
2001-04-14 13:53:05 +00:00
scw
c605c91bdf
Fix bootline argument passing from the Bug PROM.
2001-04-14 13:43:07 +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
8b3fc18a1f
Generic soft interrupt implementation for NetBSD/i386. This could
...
probably be tuned somewhat, but this is a stop-gap measure to hold
us until Bill Sommerfeld's new interrupt code comes in from the
MP branch.
2001-04-14 06:49:30 +00:00
reinoud
c025377acc
Cleanup of attachment code of framebuffers
2001-04-14 02:25:43 +00:00
thorpej
e964ad79cf
Change the softintr implementation to be a bit more cache friendly
...
(though, sigh, slightly more expensive at softintr_schedule() time).
2001-04-14 00:45:13 +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
bjh21
d3c7885319
Make sure that every time we touch the referenced/modified bits, we do a
...
pmap_update_page() to get all the mappings of that page up-to-date.
2001-04-13 16:37:28 +00:00
matt
362ba8300c
Include USB and 1394 support (sun models now have them).
2001-04-13 16:26:41 +00:00
bjh21
991d163aa2
Remove code from pmap_fault() that ws trying to do referenced/modified
...
emulation on kernel pages (and getting it wrong).
2001-04-13 15:09:35 +00:00
bjh21
7b00aef2da
Rev 1.3 accidentally undid rev 1.2. Re-do it.
2001-04-13 14:50:47 +00:00
bjh21
ac01781de7
Make UBC_WINSHIFT a constant.
2001-04-13 12:40:16 +00:00
itojun
fbc07662f5
$NetBSD$ tag cleanup
2001-04-13 08:11:44 +00:00
itojun
eb0cfc6af5
s/$Id$/$NetBSD$/
2001-04-13 08:09:07 +00:00
kleink
9133b51cd8
Replace the 'unsigned __COMPILER_INT64__' construct with a new name,
...
__COMPILER_UINT64__, to be supplied - if such a case is made, it shouldn't
be assumed that the unsigned type-specifier may be applied to it.
2001-04-12 22:01:18 +00:00
reinoud
fdeb609887
Place a remark ... the old vidcconsole code can't handle the comconsole
...
not yet for it is called early in the init_arm() ... this needs to be
patched one day so it can be called very early; but is this possible ?
2001-04-12 21:54:06 +00:00
reinoud
242cca702b
Part one of the COMCONSOLE repair ... it works now but the video console
...
is effectively dead instead... this needs work. Also the boottime switching
to the vidcconsole would be good.
2001-04-12 20:15:06 +00:00
thorpej
0d8e6faeb2
splimp -> splvm
2001-04-12 19:43:46 +00:00
thorpej
316dcc474b
splvec.splimp -> splvec.splvm
2001-04-12 19:21:20 +00:00