Commit Graph

33499 Commits

Author SHA1 Message Date
christos
633f1790bf parenthesize properly. 2002-10-22 20:51:43 +00:00
jdolecek
e0c1e1cffb g/c kbdpoll(), it was replaced with nopoll() 2002-10-22 20:20:35 +00:00
chris
aa7f00f3de netwinder and cats can share irqhandler.h, so move (and rename) into the
footbridge dir, and share it.
2002-10-22 20:15:25 +00:00
scw
1ad6189f11 No, really attach sm(4) at sysfpga... 2002-10-22 15:35:25 +00:00
scw
b604625664 - sm at sysfpga,
- gsip at pci (and its phy)
2002-10-22 15:21:24 +00:00
scw
8477927799 - Attach sm(4) at sysfpga instead of at superio. The latter was a relic
of when we used to attach sm(4) to the isabus.
- Re-work sysfpga's interrupt naming scheme to reflect that used in the docs.
2002-10-22 15:19:06 +00:00
scw
b12d613c40 Enable the NMI only if DDB is defined, instead of DEBUG. 2002-10-22 14:38:26 +00:00
scw
bce8874166 Make this compile when DEBUG is not defined. 2002-10-22 14:17:34 +00:00
scw
949919c48e Tick off another item. 2002-10-22 13:11:06 +00:00
scw
2a52019c1e As per TODO item #13, clear the Referenced bit in the PTE after purging
a mapping from the TLB/cache to prevent duplicate purges for pages
which were not touched since the last purge.
2002-10-22 13:10:28 +00:00
scw
8496cdaeb7 - Fix REDUCE16 to ignore the upper 32-bits of the input operand.
- Shift a leading misaligned quad to compensate for the implicit shift
  in the "ldlo.q" instruction. (And remove the "XXX:" comment which correctly
  hinted that this might be necessary).
- Clean up some comments.
2002-10-22 12:22:43 +00:00
scw
6a2132797e - Simplify early initialisation so we do most of it in C.
- Call allocsys() much earlier so we can use uvm_pageboot_alloc() to
  steal KSEG0 pages for system tables.
2002-10-22 09:30:26 +00:00
chs
4017fd1809 fix two bugs in the previous PTE-spill handling changes:
- in pmap_pte_spill(), the victim PTE could be using the secondary hash,
   in which case its pvo entry is actually in the other bucket.  use the
   correct bucket for the victim pvo when moving it to the front of its list.
 - similarly, in pmap_pvo_remove(), if the pteidx is pre-computed for us,
   it might actually point to the other bucket if the entry is using the
   secondary hash.  adjust ptegidx if this is the case.

these should fix PRs 18645 and 18736.
while I'm here, wrap line lines and do some other misc cleanup.
2002-10-22 04:34:13 +00:00
bjh21
2a89b96077 Pull down rev 1.7.2.1 [must be careful which branch I commit to!]:
Reinstate .Lextirq_return: it was used in two places, and I only removed one
of them.
2002-10-21 18:09:18 +00:00
uch
7e96d57199 make this compile again. 2002-10-21 17:07:36 +00:00
jdc
c709dda0d9 Regenerate config. files from GENERIC.in rev. 1.28. 2002-10-21 16:18:34 +00:00
scw
b7d8acc608 In switch_exit(), load the SP and FP from proc0's PCB instead of using
a "null" stack.
Also be sure to clear curproc, and update curpcb.
2002-10-21 15:37:20 +00:00
uwe
af2a75546d Clean-up kbd driver layers a bit more. Lift common code into the upper layer.
Add some wskbd TODO remarks (hi, martin).
2002-10-21 15:36:35 +00:00
uwe
35ec23469c Correct zstty interface attribute (cf files.sparc64 1.69).
Comment out unused kbd_tty and ms_tty attachments.
2002-10-21 15:25:42 +00:00
martin
f19a67c55f Allow hyphen in kernel names. Bump version.
Should fix PR 13429 and PR 18691.
2002-10-20 20:55:38 +00:00
martin
fdeb300692 We are not going to get a "upa at mainbus" autoconfig entity, since
UPA is just a physical incarnation of our mainbus0.

Evidence:

 - There can only be one!
 - The firmware node coresponding to it is the root of the OF tree

So: remove the unused (and uncompilable) upa.c, remove upavar.h after
moving the only declaration used from it to autoconf.h.
2002-10-20 15:53:16 +00:00
kanaoka
848304f890 Fix bugs in the BIOS memory probe.
- If the BIOS reports the same memory cluster multiple times,
  only allocate the extent once.

- If we fail to allocate an extent,
  don't add it to mem_clusters and don't increment mem_cluster_cnt.

- When loading the physical extents,
  make sure we don't try to add an extent with zero length (seg_start == tmp).

port-i386/13399: from maximum entropy <entropy@tappedin.com>.
2002-10-20 10:35:41 +00:00
gmcgarry
04a46ed198 Fix flow control in dcmmint() by checking termios control flags for
CCTS_OFLOW rather than tty t_flags.  From Steve Peurifoy in PR-18735.
2002-10-20 06:26:39 +00:00
gmcgarry
55802a56ff - merge if_levar.h into if_le.c
- de-__P(), ansify
- remove unnecessary headers
2002-10-20 05:54:29 +00:00
chs
1c2419d28a merge the 12 copies of vm_machdep.c on the m68k platforms.
clean up some other stuff along the way, including:
 - use m68k/cacheops.*, remove duplicates from cpu.h.
 - centralize a few declarations in (all the copies of) cpu.h.
 - define M68K_VAC on platforms which have a VAC.
 - switch the sun platforms to the (now common) proc_trampoline().
 - do the phys_map thang on the sun platforms too, no reason not to.
2002-10-20 02:37:21 +00:00
isaki
31bae84b32 Remove unbalanced parenthesis in debug message. 2002-10-20 02:33:08 +00:00
isaki
49e7158ab9 x68k needs config_cfdriver_lookup() to initialize its console.
XXX ad-hoc way?
2002-10-20 02:26:59 +00:00
christos
30b2e62985 add ipfilter as 37 2002-10-20 00:32:59 +00:00
soren
c542464dd9 CARDBUS was rotting. Make it truly GENERIC+Cardbus by including GENERIC. 2002-10-19 20:32:48 +00:00
bsh
5e33e792f7 Support Intel PXA250 and PXA210 application processors. 2002-10-19 19:31:38 +00:00
isaki
55e60d35cf Not used anywhere. 2002-10-19 13:27:56 +00:00
scw
87df298d3e Unroll the zero/copy page loops to do 128 bytes per loop instead of 32,
paying particular attention to cache-lines and sets.
2002-10-19 13:18:55 +00:00
scw
28cf032416 If the incoming buffer is already quad aligned, skip the initial
alignment code. (There was nothing wrong with the original code path
other than it was slightly slower if the buffer was already aligned).

Also, catch another corner case related to alignment/length of the
last 1-7 bytes.
2002-10-19 13:17:33 +00:00
bsh
d5fb42a86c non-inline version of atomic_{set,clear}_bit(), defined when
ATOMIC_SET_BIT_NONINLINE_REQUIRED is defined.
(extracted from arm/arm32/locore.S)
2002-10-19 12:46:57 +00:00
bsh
7b6639153c make atomic_{set,clear}_bit() inline for arm32 ports, and
add <machine/atomic.h> for them.
2002-10-19 12:22:33 +00:00
scw
7feac76e17 Tick off a few more items, and add a new one. 2002-10-19 11:13:11 +00:00
scw
873eee59ff Add fast assembler versions of in_cksum() and in4_cksum().
(Well, as fast as can be expected on a cpu with no carry flag)
2002-10-19 09:01:44 +00:00
scw
80b7fbca17 Ditch the crude and slow bytewise copyin()/copyout()/kcopy() code in favour
of the asm memcpy() in libkern.
2002-10-19 08:56:45 +00:00
scw
1e0542ac19 Fix a spurious looping PC/FP message when we stop due to not finding
the caller's stack frame.
2002-10-19 08:50:30 +00:00
scw
c01b319dcc There seem to be some stability problems with the scif serial port driver
at the moment, possibly as a side-effect of some yet-to-be-committed SH5
speed-ups.

Work-around it for now by using com0 as the console.
2002-10-19 08:43:32 +00:00
scw
472a1ad6b2 When setting up to probe a com(4) port for use as the console, make sure
the port is powered up and configured correctly.
2002-10-19 08:39:50 +00:00
junyoung
abbf53bb9c Add NEW_BUFQ_STRATEGY (disabled by default). 2002-10-19 05:58:25 +00:00
junyoung
7e4d58b1b8 Move NEW_BUFQ_STRATEGY to misc options section. 2002-10-19 05:55:09 +00:00
bjh21
a531a4ae8e Undo recent cpu_switch register usage changes in order to decrease nathanw_sa
merge pain.
2002-10-19 00:10:53 +00:00
bjh21
7dd8880e90 The grand cpu_switch register reshuffle!
In particular, use r8 to hold the old process, and r7 for medium-term
scratch, saving r0-r3 for things we don't need saved over function
calls.  This gets rid of five register-to-register MOVs.
2002-10-18 23:06:33 +00:00
bjh21
3d1b6867f0 In cpu_switch(), stack more registers at the start of the function,
and hence save fewer into the PCB.  This should give me enough free
registers in cpu_switch to tidy things up and support MULTIPROCESSOR
properly.  While we're here, make the stacked registers into an
APCS stack frame, so that DDB backtraces through cpu_switch() will
work.

This also affects cpu_fork(), which has to fabricate a switchframe and
PCB for the new process.
2002-10-18 21:32:57 +00:00
wrstuden
0ce4a385a5 Should have done this sooner. Bump to version 1.7 to indicate good
alloc.c.
2002-10-18 21:22:40 +00:00
thorpej
c96a6edaf4 Make sure the footbridge device has the interface attribute. 2002-10-18 20:03:02 +00:00
nathanw
c1cc872908 Catch up some code inside #ifdef DEBUG to recent pvo_entry changes. 2002-10-18 20:02:23 +00:00
tsutsui
88590b41ed Add (commented out) options NEW_BUFQ_STRATEGY and pseudo-device cgd.
(sync with GENERIC)
2002-10-18 19:30:03 +00:00
junyoung
e4b7588c28 Add NEW_BUFQ_STRATEGY (disabled by default). 2002-10-18 15:11:08 +00:00
scw
a7be530a95 Add code to support tracing back through a stackframe which was created
using a "movi imm, Rn / sub R15, RN, R15" pair. This is how the compiler
creates frames which are too big to fit in the immediate field of "addi";
something which happens a lot with -O0 ...

While I'm here, add a simple heuristic to detect infinite loops caused by
tracing back through some non-leaf asm routines which don't set up frames.
2002-10-18 09:16:14 +00:00
grant
f525c02fbe remove 'UT' from fxp and rtk, as these have been tested and known
to work. some whitespace cleanup.
2002-10-18 01:59:27 +00:00
grant
c571e22b48 add comment about pciide and wd flags (from i386 GENERIC). 2002-10-18 01:54:15 +00:00
yamt
dcde342d09 add an entry for 0x83 to intel_cpuid_cache_info. 2002-10-18 00:51:22 +00:00
thorpej
b000f2251b * Add "struct device" to the softc.
* Add missing notice.

Problems pointed out by Jonathan Stone.
2002-10-17 22:03:40 +00:00
jdolecek
3a80cf174b initSH3(): prefix the extern edata[], end[] with '_', so that the kernel links
XXX this is probably wrong, other sh3 platforms don't need/have this
2002-10-16 21:26:32 +00:00
jdolecek
e7bc7ac4bd tsc_microtime(): use splclock() for !MULTIPROCESSOR (cosmetic, this is used
for MULTIPROCESSOR only currently)
2002-10-16 21:01:22 +00:00
mycroft
64f9a5eccd Fix a sign extension bug that caused pmap_growkernel() to fail with >2GB KVA.
Symptom observed and verified fixed by tls.
2002-10-16 18:48:05 +00:00
petrov
d7612810f1 Add wscons devices, sync with sparc. 2002-10-16 17:52:09 +00:00
martin
f47b939a22 Since we now use pmap_kenter_pa, which ignores PMAP_LITTLE, don't bother
to pass that as flags. We've already changed the ASIs used to access the
mapped pages acordingly.
2002-10-16 16:11:41 +00:00
martin
9b3cdc3ab5 Make 32bit sparc64 kernels with DEBUG and DIAGNOSTIC compile. 2002-10-16 11:05:10 +00:00
lukem
2da742de79 tweak the comments describing the memory disk size 2002-10-16 02:46:03 +00:00
lukem
29ba686238 crank the memory disk from 1440k to 1600k; things have Grown a bit. 2002-10-16 02:44:27 +00:00
bsh
475d72b0be fix a bug sneaked into cpu_reset() in "- . - 8 purge"
(s/mov pc,lr/mov lr,pc/)
2002-10-15 23:10:32 +00:00
jdolecek
bebf9e4b2e remove duplicate options USERCONF - we get it from WALNUT config 2002-10-15 21:54:24 +00:00
bjh21
441e8907fe Switch to using the MI C versions of setrunqueue() and remrunqueue().
GCC produces almost exactly the same instructions as the hand-assembled
versions, albeit in a different order.  It even found one place where it
could shave one off.  Its insistence on creating a stack frame might slow
things down marginally, but not, I think, enough to matter.
2002-10-15 20:53:38 +00:00
bjh21
a9b87645e0 ANSIfy. Un-__P(). 2002-10-15 20:50:01 +00:00
bjh21
7ee3ff8794 KNF -- this file was making my eyes hurt.
No functional change.
2002-10-15 20:46:12 +00:00
junyoung
fb173f7efd Add (commented out) VGA_RASTERCONSOLE. 2002-10-15 18:20:58 +00:00
thorpej
dbdee1d904 The zstty device must have an interface attribute in order for
children to attach; it is not sufficient to have an interface
atttribute which only happens to have the same name.

Fix the same mistake with the sabtty declaration.
2002-10-15 15:11:07 +00:00
jdc
86fda61426 Uncomment audioamd0 at obio0. 2002-10-15 13:53:01 +00:00
jdc
d1f466e658 Add audioamd at obio attachment. Now we have working audio on 4/600's :
audioamd0 at obio0 slot 0 offset 0x500000 level 13 softpri 4
  audio0 at audioamd0: full duplex
2002-10-15 13:49:52 +00:00
bjh21
d599df9587 Continue the " - . - 8" purge. Specifically:
add	rd, pc, #foo - . - 8		->	adr	rd, foo
ldr	rd, [pc, #foo - . - 8]		->	ldr	rd, foo

Also, when saving the return address for a function pointer call, use
"mov lr, pc" just before the call unless the return address is somewhere
other than just after the call site.

Finally, a few obvious little micro-optimisations like using LDR directly
rather than ADR followed by LDR, and loading directly into PC rather than
bouncing via R0.
2002-10-14 22:32:50 +00:00
elric
34b6e58083 Add cgd(4). 2002-10-14 19:42:34 +00:00
elric
b76bc64358 Add cgd to the ALPHA. 2002-10-14 19:40:58 +00:00
elric
5ab71e20b0 Added commented out cgd(4)s to GENERIC configs. 2002-10-14 18:39:22 +00:00
elric
a855471fb4 Added a commented out cgd(4). 2002-10-14 18:23:30 +00:00
scw
fd0556a4dc Interrupt handles are now allocated from KSEG0. 2002-10-14 14:22:44 +00:00
scw
a92b12e63a Enable the early bus_space_map() of the sysfpga's registers. 2002-10-14 14:21:35 +00:00
scw
89612efe30 Interrupt overhaul:
- Allocate interrupt handles dynamically from a pool(9) to reduce the
   number of TLB misses during interrupt dispatch.
 - Fully support evcnt(9) in all interrupt dispatchers.
2002-10-14 14:19:27 +00:00
scw
041aef4bee Preparation for compat_netbsd32. 2002-10-14 14:13:27 +00:00
takemura
97bde1b442 Battery status should be represented in APM 1.0 style. 2002-10-14 13:34:09 +00:00
scw
bd8765b9da Add a couple more items. 2002-10-14 10:52:41 +00:00
scw
e52022da42 Mark a couple of items as done. 2002-10-14 09:48:20 +00:00
scw
278e4d7886 Quell an uninitialised variable warning. 2002-10-14 09:46:31 +00:00
chs
cb76676a56 merge pte.h for m68k w/ motorola or compatible MMU
(only 4k-page platforms so far).
2002-10-14 05:18:45 +00:00
chs
b79663cf62 eliminate PT_ENTRY_NULL in favor of plain old NULL. 2002-10-14 05:11:21 +00:00
takemura
bd737ed276 Added APM device entry. 2002-10-14 04:43:54 +00:00
isaki
516c2ef781 Sort. 2002-10-14 03:40:57 +00:00
takemura
900b200c92 Moved MI APM definitions into dev/apm. 2002-10-14 02:08:37 +00:00
chris
a28f4c93a2 Fix arm kernel build breaks for non multiprocessor systems. 2002-10-13 21:14:28 +00:00
petrov
86b5bbfddd rearrange streming cache flushes in iommu_dvmamap_sync 2002-10-13 20:17:55 +00:00
bjh21
3d91ec9fdd Instead of "add rd, pc, #foo - . - 8", use either "adr rd, foo" or (where
appropriate) "mov lr, pc".  This makes things slightly less confusing and
ugly.
2002-10-13 14:54:47 +00:00
wiz
65cd27e43e Support 48kHz by using aurateconv.
Based on a patch by TAMURA Kent -- thanks!
2002-10-13 14:43:19 +00:00
bjh21
85386dce51 Use cpu_number() to find curpcb rather than assuming we're on CPU 0. 2002-10-13 14:24:09 +00:00
bjh21
75248cc7a1 It appears that MI code requires ci_cpuid to be the CPU number of the CPU
in question, whereas the ARM code was using it to hold the model
identification.  To fix this, rename:

ci_cpuid -> ci_arm_cpuid
ci_cputype -> ci_arm_cputype (for consistency)
ci_cpurev -> ci_arm_cpurev (ditto)
ci_cpunum -> ci_cpuid

This makes top(1) give correct CPU numbers in its "STATE" column (all 0 for
now).
2002-10-13 12:24:57 +00:00
bjh21
bd4a91a822 Rework (#ifdef'ed out) code to print I/O timings so as to give more
information (I was curious).
2002-10-13 12:20:44 +00:00
isaki
61c1cd36f7 Break a long line. 2002-10-13 12:11:36 +00:00
isaki
626365359b - Delete simple_devprint(), which is meaningless.
- "adpcm" device is gone.
2002-10-13 12:09:43 +00:00