Commit Graph

39450 Commits

Author SHA1 Message Date
tls
db47b27974 HYPERVISOR_yield is one of the hypervisor calls that's "overloaded"; it
does different things depending what's in %ebx.

We weren't setting %ebx here *at all*; so we did not get SCHEDOP_yield,
which was what was wanted; so unpredictable things happened, notably
immediate return to the NetBSD idle loop, in other words spinning on CPU.
Definitely not cool!

Michael Kukat caught this one and suggested this fix on port-xen.
2004-12-13 19:33:56 +00:00
sekiya
c01662e204 Add prototype for r5k_sdcache_wbinv_range_index() 2004-12-13 08:39:50 +00:00
sekiya
07b6e1e982 Implement r5k indexed writeback-invalidate, and fix usage of Page_Invalidate_S.
Originally written by rafal@ back in April 2003.  Field-tested by many
people since.

(I am not committing the pmap hack at this time; although pmap changes are
necessary to fully address the r5k panic/coma problems, the implementation
needs further thought)
2004-12-13 08:39:21 +00:00
sekiya
d1eab478d8 Remove gratuitous use of MIPS1/MIPS3. 2004-12-13 08:31:54 +00:00
sekiya
d45f3ffb2c MIPS3_CONFIG_SC is an unreliable indicator for SC presence; r5k_enable_sdcache()
will gracefully exit if there is no secondary cache.  Rework #ifdef'd out
r5k cache code to take this into account, and remove pointless r10k case.
2004-12-13 08:30:58 +00:00
chs
f873a82973 for drivers that support only one instance, use a global variable to ensure
that only one instance is configured rather than requiring that its
unit number be zero.
2004-12-13 02:39:07 +00:00
chs
25c1fe704b rather than duplicate the contents of the MI version of this file,
just include it and redefine the one thing that we want to be different.
2004-12-13 02:36:50 +00:00
chs
fa37aec784 remove an unused macro (which was also removed from the sh3 version of this). 2004-12-13 02:34:03 +00:00
chs
f91d38c18c adjust for b_bcount changing from long to int. 2004-12-13 02:33:06 +00:00
chs
1da81163d5 for drivers that support only one instance, use a global variable to ensure
that only one instance is configured rather than requiring that its
unit number be zero.
2004-12-13 02:31:56 +00:00
chs
0ded74691b for drivers that support only one instance, use a global variable to ensure
that only one instance is configured rather than requiring that its
unit number be zero.
2004-12-13 02:14:13 +00:00
abs
964859d895 Fix comments regarding configration bounaries 2004-12-12 21:03:06 +00:00
abs
5958dd944e Fix comments slighly 2004-12-12 20:42:53 +00:00
tsutsui
29ec4fefaa news68k/locore.s directly includes <machine/trap.h> and
m68k/copy.s directly includes <sys/errno.h>,
so remove definitions for them from assym.h.
2004-12-12 10:26:36 +00:00
tsutsui
e76635baae Remove definitions for EFAULT and ENAMETOOLONG.
m68k/copy.s directly includes <sys/errno.h>.
2004-12-12 10:22:20 +00:00
tsutsui
3725e9832e u_intXX_t -> uintXX_t 2004-12-11 03:32:27 +00:00
jmc
d33fb8436c Fix some improper casts now that b_count is an int 2004-12-10 20:05:05 +00:00
christos
142373a47b dkvar.h now needs bufq.h, and now xen compiles again. 2004-12-10 18:54:08 +00:00
christos
78db5aa65d catch up with field name rename. 2004-12-10 18:53:43 +00:00
christos
d0f26be538 Just when I thought it was all working... Unfortunately cpu.h defines
clockframe -> intrframe, but that is included too late, because this
file includes systm.h and it is in the path of including systm.h. Fix
it by not including <systm.h>; it was only needed for the panic() calls
which I have disabled, since they look more like debugging calls to me.
Also add forward struct declaration for trapframe.
2004-12-10 18:51:15 +00:00
christos
d4ea0343bc don't use va_list here; use _BSD_VA_LIST_ because we could be included
before va_list is defined. This is common practice for kernel header
files (syslog.h)
2004-12-10 18:49:02 +00:00
christos
174c6b074b Move the disable_intr and enable_intr functions from xenfunc.h to cpufunc.h,
because the x86/intr.h needs them and does not include xenfunc.h. Including
xenfunc.h in cpufunc.h is a clear lose because xenfunc.h needs a boatload
of include functions in order to compile.
2004-12-10 18:47:52 +00:00
matt
eb30eca3e3 Add -Wa,-maltivec so that AltiVec instuctions will be recognized. 2004-12-09 22:57:12 +00:00
briggs
b222b60d4a Start I/O range at base+0x1000 to avoid 0. 2004-12-09 04:40:20 +00:00
briggs
f31e26a3dd Several changes from Michael Lorenz. Adapted from PR port-macppc/27680.
1. Reset SCSI bus & MESH on reboot to keep OF happy.
2. Tweak interrupt handler to clear interrupt register again if we get a
   CMDDONE interrupt with DMA active and a 0 fifocnt.  It's not clear why
   this is necessary, but is well documented in some other open source
   drivers.  This enables synchronous mode to work.
3. Dump a little more information if we do get a timeout.
2004-12-09 04:37:30 +00:00
briggs
d6a3e9bb82 Apply patch from Makoto Fujiwara (and Timm Wetzel) in PR port-macppc/15505
to enable internal modem for KeyLargo and Pangea.
2004-12-09 03:19:56 +00:00
briggs
a20a28eda2 Add wi devices so that devices can install over wireless LAN.
Addresses part of PR port-macppc/26466 from Chris Scott.
2004-12-09 02:54:18 +00:00
briggs
2268345329 Add VIA Rhine to install kernel.
Addresses PR port-macppc/26459 from Daan Goedkoop.
2004-12-09 02:46:01 +00:00
briggs
82b7820648 Revamp the old-world interrupt support based on better understanding of
the hardware.  Inspired by Michael Lorenz with some hints from OpenDarwin
sources.  Thanks to Michael for beginnings of the patch and for both
discussion and testing.  Thanks to Tim Kelly and Riccardo Mottola for
further testing.
2004-12-09 01:43:37 +00:00
matt
42e9e00c87 Make MSIZE and MCLSHIFT overrideable in <machine/param.h> 2004-12-09 00:37:54 +00:00
reinoud
a80eefb9fc Accidently added SMBfs support as default wich is still declared as
expirimental to my knowledge.
2004-12-08 13:30:10 +00:00
reinoud
4dddbc1c21 Add IPv6 support like all other architectures do and add NetBSD 2.0
binary compatibility
2004-12-08 13:28:27 +00:00
reinoud
ce52f6650b Add NetBSD 2.0 compatibility setting 2004-12-08 13:24:49 +00:00
reinoud
fc45116dff Add IPv6 support as default since all ports now have it as default; no use
to delay NC's since it doesn't that much memory too.
2004-12-08 13:23:45 +00:00
briggs
710cfd7aef Add MPC7400 to the list of CPUs for which we try to measure the speed.
Noticed missing by Tim Kelly.
2004-12-08 03:07:03 +00:00
chs
bc7f8afb31 use the m68k-common procfs_machdep.c on all m68k platforms. 2004-12-08 02:32:33 +00:00
thorpej
dffe7d8e8d READ_CAPACITY -> READ_CAPACITY_10 2004-12-07 23:14:03 +00:00
thorpej
ce91ac7d6b USe more appropriate macro/struct names for READ/WRITE (6) and
READ/WRITE (10).
2004-12-07 23:07:31 +00:00
thorpej
d5083f78be Use "struct scsipi_command" in internal command structures so that
we have enough space for 16-byte CDBs.
2004-12-07 22:23:45 +00:00
thorpej
a974bfe8ce - Use the cmdlen specified in the scsipi_xfer structure. Keying off
the command group ID won't necessarily work for vendor-specific commands.
- Expand the storage in the SC_REQ structure to account for 16-byte commands.
2004-12-07 21:12:42 +00:00
briggs
f06d48126e Bring in some code to deal with devices in the lower slots of a UMAX S900
and perhaps PowerMac 9500.  These slots sit behind a PCI-PCI bridge, and
devices in those slots inherit the PCI-PCI bridge interrupt.  Derived from
a patch submitted in PR port-macppc/26341 by Michael Loreny, who was also
diligent in prodding me to look at it.
2004-12-07 15:42:08 +00:00
thorpej
d41e8f00bf Don't use "struct scsi_generic" in a hardware-defined structure. Instead,
use an array of 12 bytes.  Check the incoming CDB to see that it will fit,
and print and error and fail the command if it won't.
2004-12-07 14:50:56 +00:00
briggs
6fec1d4f73 OpenFirmware on machines with the "Grackle" bridge assign an 'AAPL,interrupts'
property instead of 'interrupt-map' and 'interrupt-map-mask' properties.
Adjust for this by checking for the latter, and if they're not present
(and the parent isn't 'pci-bridge'), then look for 'AAPL,interrupts'.

Problem analyzed and patched by Tim Kelly on port-macppc.  I modified the
patch to move the fallback into find_node_intr(), tweaking some previously-
disabled code.
2004-12-07 13:22:51 +00:00
chs
cf58c69b3e use the m68k-common procfs_machdep.c on all m68k platforms. 2004-12-07 04:33:24 +00:00
cube
99b014db5e Add ixpide(4). 2004-12-06 19:28:12 +00:00
briggs
52af8374ec Minor (old) patch from me to correct CPU ID of 604e vs. 604ev.
Tested by Tim Kelly.
Also patched from Tim to
 - Delay longer for second CPU spinup.
 - Only attempt to print CPU speed and cache configuration on certain
   CPU types.
2004-12-06 04:15:03 +00:00
chs
2a728789eb elf2bb is a host program, don't assume that m68k pointer alignment is
sufficient.  fixes PR 27055.
2004-12-04 16:23:31 +00:00
chs
e3f37f50b8 the arguments to BUS_ADDR() are (space, offset), not the other way around.
fixes PR 26472.
2004-12-04 16:19:36 +00:00
matt
080d581a20 Make sure to enable interrupts before lower IPL so we don't block any
interrupts (IPI) we shouldn't.
2004-12-04 05:56:28 +00:00
chs
5500ae7993 remove cache_flush_virt() and PADDRT, they're no longer used.
allocate a stack frame for blast_dcache() when profiling so it shows up.
in dcache_flush_page(), use a stride of 32 instead of 16 to match the
cache line size.  correct various comments.
2004-12-03 02:04:00 +00:00