Commit Graph

46323 Commits

Author SHA1 Message Date
lukem
f863105161 remove some lint, including ansifying funcs 2001-04-30 02:55:08 +00:00
jmc
36d8e99d14 Cast args correctly to match format strings. 2001-04-30 02:49:04 +00:00
jmc
5a6772df26 Cast base correctly for format string. 2001-04-30 02:46:20 +00:00
lukem
9d02aae3a9 minor lint 2001-04-30 02:44:53 +00:00
lukem
85772a1cef remove some lint 2001-04-30 02:34:58 +00:00
lukem
abf1970c82 delint newline in string 2001-04-30 02:17:55 +00:00
lukem
599ac910c6 this is _C_ not _C++_, and // is NOT valid in _C_ 2001-04-30 01:34:04 +00:00
lukem
d2ac513298 remove some lint 2001-04-30 01:19:40 +00:00
lukem
b8f8cf0235 remove some lint, including ansifying some inlines 2001-04-30 01:17:30 +00:00
lukem
36079c81c4 remove some lint 2001-04-30 01:13:20 +00:00
thorpej
2b27ac7a99 Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for
each vm_page structure.  Add a VM_MDPAGE_INIT() macro to init this
data when pages are initialized by UVM.  These macros are mandatory,
but ports may #define them to nothing if they are not needed/used.

This deprecates struct pmap_physseg.  As a transitional measure,
allow a port to #define PMAP_PHYSSEG so that it can continue to
use it until its pmap is converted to use VM_MDPAGE_MEMBERS.

Use all this stuff to eliminate a lot of extra work in the Alpha
pmap module (it's smaller and faster now).  Changes to other pmap
modules will follow.
2001-04-29 22:44:31 +00:00
matt
a403ed4939 Fix printing of stack traceback (last argument was always wrong). Use
%#x so that 0s are 0 and not 0x0
2001-04-29 22:17:24 +00:00
christos
afdcbf7e55 Correct formatting. Put the port and the ethernet address in their own
line.
XXX: it is stupid that pcmcia_io_map() prints " port 0xNNN[-0xMMM]". This
makes the printing code confusing.
2001-04-29 20:12:01 +00:00
christos
3ae161c702 don't put a trailing comma in pcmcia_devinfo. All the drivers use
printf("%s\n", devinfo) and it looks stupid.
2001-04-29 20:10:24 +00:00
sommerfeld
a80b986278 Correct microtime() to use the microsecond part of the base timestamp. 2001-04-29 17:04:41 +00:00
fvdl
b7025ec37b Make it possible to override TCP_NDEBUG. The default value of 100
wastes quite a bit of space (0xfa00).
2001-04-29 15:18:01 +00:00
bjh21
45eb40e8d3 Minimal implementation of cpu_sysctl(). 2001-04-29 15:13:45 +00:00
fvdl
9554615dfb Set NMBCLUSTERS to the old value of 256 here, as the new default
will only be a waste of space for this configuration.
2001-04-29 12:48:12 +00:00
ragge
c3736bf111 Use ubmemalloc() for data structures. Remove unused vars. KNF. 2001-04-29 12:32:18 +00:00
tsutsui
b83fe1a852 Correct register address map for 53c710. 2001-04-29 11:20:44 +00:00
martin
b5b75a7d19 Add an in-kernel PPPoE (ppp over ethernet, RFC 2516) implementation,
based on the existing net/if_spppsubr.c stuff.

While there are completely userland (bpf based) implementations available,
those have a vastly larger per packet overhead thus causing major CPU
overhead and higher latency. On an i386 base router, running a 486DX at 50MHz
my line (768kBit/s downstream) was limited to something (varying) between 10
and 20 kByte/s effective download rate. With this implementation I get full
bandwidth (~85kByte/s).

This is client side only. Arguably the right way to add full PPPoE support
(including server side) would be a variation of the ppp line discipline and
appropriate modifications to pppd. I promise every help I can give to anyone
doing that - but I needed this realy fast. Besids, on low memory NAT boxes
with typically a single PPPoE connection, this implementation is more
lightweight than a pppd based one, which nicely fits my needs.
2001-04-29 09:50:36 +00:00
jmc
a2d52d0ed4 Add #define for 1394 ROM signature 2001-04-29 08:37:04 +00:00
scw
81be7c00b7 Compute PAGER_MAP_SIZE at runtime to avoid needlessly crippling large-
memory models for the benefit of small-memory models.

Uses a heuristic of min(onboard_ram_size/2, 16MB).
2001-04-29 07:53:56 +00:00
scw
89e9fc44d5 Do the same as mac68k/pmap.c:1.70 to prevent wired pages being
removed by pmap_collect().
2001-04-29 07:41:58 +00:00
thorpej
f38e77afea Add glue for page zero'ing in the idle loop. 2001-04-29 06:54:03 +00:00
thorpej
a96fcfa38c Disable the optimized in4_cksum() for now -- there seem to be problems. 2001-04-29 05:54:29 +00:00
thorpej
cb648add29 The idle loop page zero'er no longer needs to do uncached access
now that we have page coloring.
2001-04-29 04:42:04 +00:00
thorpej
cda7baa0d5 Implement page coloring, using a round-robin bucket selection
algorithm (Solaris calls this "Bin Hopping").

This implementation currently relies on MD code to define a
constant defining the number of buckets.  This will change
reasonably soon (MD code will be able to dynamically size
the bucket array).
2001-04-29 04:23:20 +00:00
itojun
fce23b0ae4 correct outbound outer IPv4 destination address selection.
IFF_LINK0 disables inbound path, removes security worries.
more examples in manpage.
2001-04-29 03:56:06 +00:00
thorpej
cee702b869 Optimized in4_cksum(). 2001-04-29 03:29:21 +00:00
erh
acc17cc823 Set the delta for the particular source so telling mixerctl to decrease the
volume (using --) adjusts it far enough to stick.
2001-04-29 02:47:25 +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
bjh21
1ca2839e35 When NFS_V2_ONLY is defined, refuse to mount NFSv3 and NQNFS filesystems,
rather than pretending they're NFSv2 and hoping for the best.  Fix based on
that supplied by Christian Groessler.
2001-04-28 16:11:47 +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
bouyer
1346d56311 - don't wait when called from interrupt context (basically this means we
can't sleep in HBA drivers)
- pool_get can fail, so return XS_RESOURCE_SHORTAGE instead of panic()
- don't try to bzero() a NULL pointer
2001-04-28 15:09:42 +00:00
augustss
e67bc465a2 Make it compile with DEBUG after SCSI changes. 2001-04-28 14:48:39 +00:00
bjh21
beb69f2aad Before allowing kgmon to do anything, check that we managed to allocate the
profiling buffer at startup.  If not, pretend the kernel doesn't have
profiling support at all.
2001-04-28 12:56:00 +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
tsutsui
862125c057 Don't forget to set XS_CTL_DATA_OUT (that was removed in previous). 2001-04-28 09:33:25 +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
thorpej
335ac52a5b Use simple tags for read and write, unless B_ORDERED is set, in
which case we use an ordered tag.
2001-04-28 04:11:31 +00:00
bouyer
74b15b27a2 Don't forget to call psw_done() ! 2001-04-27 21:36:58 +00:00
jdolecek
2758818d81 regen - SKNET cards 2001-04-27 18:04:14 +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
jdolecek
b28d00fa02 Introduce mca_match_disabled() - this returns true if cards with particular
id should be handled even through it's marked as disabled in POS registers.
There are some cards which need this due to nonstandard hw design.
2001-04-27 17:52:51 +00:00
jdolecek
d66e548d92 Introduce mca_match_disabled() - this returns true if cards with particular
id should be handled even through it's marked as disabled in POS registers.
There are some cards which need this due to nonstandard hw design.
2001-04-27 17:11:45 +00:00
jdolecek
6589e65051 Don't panic if the memory size is "weird", but instead compute
reasonable transmit/receive buffer count.
This is needed for e.g. SKNET adapters, which use top 30 bytes of 16KB
memory to map registers and PROM and hence not all the memory is
available for buffers.
2001-04-27 17:08:02 +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
bouyer
af5fd4c7d8 Stopgap measure for PR kern/12762: cut the number of openings per device
to 16 or 4 (depending on capabilities of adapter), as it was before
thorpej_scsipi integration
Waiting feedback to known whenever the problem with openings set to AHC_SCB_MAX
existed before.
2001-04-27 14:49:11 +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
joda
55ffdd0e46 make this compile with the new scsi framework 2001-04-27 08:06:33 +00:00
jdolecek
27706951af Slighly improve comment for ltsleep(), the previous formulation might
be understood incorrectly (at least, it confused me at first, before
I looked at the actual code).
2001-04-27 08:00:03 +00:00
lukem
cdf90834d5 put TAB after #defines 2001-04-27 06:07:27 +00:00
lukem
0808e23b17 cdev_vmegen_init can use cdev__ocrwim_init 2001-04-27 05:47:47 +00:00
marcus
d317b08ca6 STDC cleanup: extra token not allowed after #endif. 2001-04-27 00:14:47 +00:00
marcus
9bcf84f72a STDC cleanup: label not allowed just before end of block. 2001-04-27 00:14:02 +00:00
marcus
11ac2c3105 STDC cleanup: multi line string literal removed. 2001-04-27 00:06:11 +00:00
marcus
b6240639a2 STDC cleanup: volatile needs to be cast away for lk_flags as well. 2001-04-27 00:05:13 +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
ragge
a7d2fe8275 Use uballoc()/ubmemalloc() for data structure allocation. 2001-04-26 20:05:46 +00:00
ragge
6bfb730eba Use ubmemalloc() to get mapped uba memory.
Only copy mbufs if there are more than two in a mbuf chain (on transmit).
This squeezed another 5% out of the DEUNA. (now closing up to 100 K/s :-)
2001-04-26 19:36:07 +00:00
ragge
014984b747 Add functions to allocate mapped-in qbus memory. 2001-04-26 19:16:07 +00:00
thorpej
596cc0bc10 Cast the config block buffer to (u_int8_t *) when reading it
from ISA memory space.
2001-04-26 17:58:28 +00:00
thorpej
e5422a382f Explictly include <machine/pio.h> (since this driver uses
i386 pio instructions -- XXX BROKEN).
2001-04-26 17:57:47 +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
bouyer
856411129e Disable tagged queuing for now, it causes commands timeouts.
Note that it's not worse since thorpej_scsipi integration: tagged queuing
was not used before, because of a tag message rejected at probe time.
2001-04-26 17:09:39 +00:00
bouyer
d032d80637 Redo xfer sync/wide/tag notification again: we need to notify upper layer
that we can do tag.
Start sync/wide nego at first command, but wait ADAPTER_REQ_SET_XFER_MODE
to notify upper level.
2001-04-26 16:56:53 +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
kanaoka
03941a12da - Fix typo in comment. 2001-04-26 08:23:22 +00:00
kanaoka
0d6646292e - Fix typo in comment.
- Add (missed)powerhook_disestablish() in ex_detach().
 - Sync with below.     Original commit log message:
 Add new powerhook argument values, PWR_SOFTSUSPEND, PWR_SOFTSTANDBY and
 PWR_SOFTRESUME. Apm calls powerhook with the values in normal interrupt
 priority level while others are protected with splhigh().
2001-04-26 08:21:51 +00:00
enami
5a6a17f734 Make sysctl_msgbuf() to copy message buffer to userland even if
the write pointer points to the beginning of message buffer.
2001-04-26 06:07:13 +00:00
is
f7455bf6e8 Be more specific than "some isic board". 2001-04-26 05:58:41 +00:00
enami
bb08989ba7 Since union_getpages may be called with PGO_LOCKED,
- We need to skip PGO_DONTCARE page also.
- ``npages'' returned by VOP_GETPAGES for lower vp doesn't count
  those pages in this case.  So, just loop ``npages'' times is
  insufficient.  Loop while there is real pages instead.
2001-04-26 05:25:14 +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
enami
360780f37e s/\<PROTO_ATAPI/C&/ 2001-04-26 03:59:32 +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
kleink
38ba8564f5 Add esm. 2001-04-25 18:32:10 +00:00
thorpej
93b0af8f60 pmap_resident_count() always exists. Besides, returning the
value of vm_rssize is pointless -- it is never initialized to
anything other than 0.
2001-04-25 18:09:52 +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
thorpej
773ed79e5b Add a comment describing a problem. 2001-04-25 14:59:44 +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
kleink
e7e729ef95 ElfNN_RelA -> ElfNN_Rela, which I missed in the Great Renaming;
noticed by Juan Jose Garcia-Ripoll in PR standards/12274.
2001-04-25 12:18:48 +00:00
haya
94e69e110f Initialise all function's latency timer and cacheline size. 2001-04-25 09:29:36 +00:00
haya
3d8f9a4f4f Set function-in-use flag before calling power control function in
order to prevent turn on power twice.  This change does not prevent
power-off/power-on conflicts.
2001-04-25 09:20:32 +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
4d24d9a940 Regen. 2001-04-25 03:07:19 +00:00
simonb
3e4456d049 Spell "portege" correctly - it's a computer, not a car. 2001-04-25 03:06:11 +00:00
simonb
6f6fe2f3ad Spell occurred correctly. 2001-04-25 02:33:08 +00:00
mycroft
ad44e79f90 It appears there's a race condition when disabling a channel that causes us to
need to explicitly relatch the interrupt when firing it up again.  So, in the
trigger routines, explicitly disable and reenable the interrupt to relatch it,
like we do in the interrupt routine.

Also clean up some broken loop overrun checks.

My ES1371 seems to be more reliable now, but I'm not going to pretend to fully
understand this chip.
2001-04-24 21:03:33 +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
jdolecek
115f4e4207 print the drq together with irq, slot info 2001-04-24 09:15:06 +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
0e325bb097 Some spring cleaning. 2001-04-24 00:19:00 +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
simonb
229d807e8c Add a comment for p_comm, from Bill Sommerfeld. 2001-04-23 19:21:05 +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
09062a99f9 one less 2001-04-23 09:36:01 +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
1fe3261554 Add constant for SKNET Ethernet Card 2001-04-23 06:10:09 +00:00
jdolecek
15224351ef Compact autoconf info by printing the IRQ number together
with 'at mca0 slot foo' info.
2001-04-23 06:10:08 +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
jmc
a0c30da432 Add comment set spec id to macro types 2001-04-23 00:57:32 +00:00
jmc
7c87238caa Add Model id as a valid generic type 2001-04-23 00:57:05 +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
jdolecek
3d1c1edbc5 g/c edc_dev_status[] 2001-04-22 20:02:38 +00:00
jdolecek
d0a98e1d18 fix edc_dump_status_block() to correctly print Command Error Code and
Device Error Code/Status when appropriate
add one item to TODO - need support for kernel memory crash dumps (to be
implemented "soon")
2001-04-22 20:00:59 +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
thorpej
27253eea15 Use uvm_pageboot_alloc() rather than pmap_steal_memory(). 2001-04-22 16:44:41 +00:00
bjh21
8eed59a146 Move arcpp so it attaches before podulebus. 2001-04-22 15:26:07 +00:00
pooka
d31d45d28e Fix misinformation in comment 2001-04-22 15:09:03 +00:00
bjh21
9aba6e0cc4 Add arcpp. 2001-04-22 15:03:22 +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
85f0e37b44 edc_dump_status_block(): print RBA # and block count as unsigned 2001-04-22 13:00:24 +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
jdolecek
8927d6f1be Fix serious bug in bounce buf handling - the EDF_BOUNCEBUF flag needs
to be cleared always in edmcadone(), otherwise if there is a write
via bounce buffer followed by read directly to buf, the read operation
would return trashed data (the buf data would get overwritten
by contents of bounce buffer in edmcadone()).
Reset b_resid as necessary when the i/o is done, too.

g/c some unneeded stuff, use lockmgr()-style locking in ed_[un]lock(),
better avoid some deadlocks

These changes make the driver quite a bit more stable. It's actually
reliable enough to be possible to newfs the drive and use it for
read/write filesystem now.
2001-04-22 11:32:49 +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
68ec0583b4 Add latches (arm26). 2001-04-22 00:27:18 +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
bjh21
4442920f51 In nfs_loadattrcache(), if checkalias() gives us a new vnode, lock it. This
prevents us losing the locked state of the old vnode.

fvdl thinks the old vnode is certain to be locked at this point.  I've put in
a KASSERT to be on the safe side.

This seems to fix PR kern/12661.
2001-04-21 21:35:53 +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
0115ec662c The pmap_update() call at the end of uvm_swapout_threads() is
completely useless.  Nuke it.
2001-04-21 17:38:24 +00:00