Commit Graph

27250 Commits

Author SHA1 Message Date
msaitoh e29b0f085f .type xxx,@function isn't supported under COFF 2001-06-10 19:06:26 +00:00
scw 179dd3e579 sigh. It also helps to switch back to .text ... 2001-06-10 17:31:38 +00:00
sommerfeld b55c21bb0d Copy in segment descriptors all at once rather than one at a time. 2001-06-10 17:30:41 +00:00
tsubai 8561123ccf -Wreturn-type is included in -Wall. 2001-06-10 17:05:11 +00:00
scw 08fb0e543b Pick the right bit to check... 2001-06-10 17:03:01 +00:00
scw 8aad61265b On 162 and up, get the CPU speed from the firmware and only fall back
to calculating it on the fly if the firmware's value is bogus.

This fixes problems caused by rounding errors on some board/speed
combinations.
2001-06-10 16:48:19 +00:00
scw aab2376d45 Refuse to boot on 162/172 and 167/177 if the user has not removed
the jumper which tells 1xx-Bug where to locate its scratch data.

Instead, print a message informing the user to RTFM (which needs to
be updated to include this info. ;-)
2001-06-10 16:45:52 +00:00
tsubai a3496ef8a8 When invoking the pcb_onfault mechanism, pass the return value of uvm_fault()
to the onfault routine.
2001-06-10 16:31:59 +00:00
tsubai 29d06d028c Fix printf format error. 2001-06-10 15:54:05 +00:00
tsubai 7f2d136a9a Remove options NMBCLUSTERS=1024 -- it's default now. 2001-06-10 15:41:13 +00:00
tsubai b736ff678e Use machine/bat.h rather than powerpc/mpc6xx/bat.h. 2001-06-10 15:32:57 +00:00
tsubai afa0c16167 include powerpc/mpc6xx/bat.h. 2001-06-10 15:24:57 +00:00
tsubai bedfcf904c libkern.h is included in systm.h. Not needed here. 2001-06-10 15:05:44 +00:00
scw 89546c98a1 Enable DHCP and BOOTP as supported diskless NFS boot options. 2001-06-10 14:40:47 +00:00
scw 967e648941 Use the versions of dev_net.[ch] in libsa in order to get DHCP support.
In other words, mvme68k's "netboot" finally supports DHCP.
2001-06-10 14:12:48 +00:00
tsubai 8b0b4ecd3f Forgot to commit this; s/offb/ofb/. 2001-06-10 13:56:13 +00:00
scw ea5249214a Add rnd(4) pseudo-device. 2001-06-10 13:16:07 +00:00
sato 9d87ee4b59 add MC-R700, 730 touch panel parameter 2001-06-10 12:37:43 +00:00
tsubai 4911bdc582 Use ofb_softc again. 2001-06-10 11:38:21 +00:00
tsubai 5a051092e4 Rename ofb_softc to ofbus_softc. (XXX Is this good name?) 2001-06-10 11:36:03 +00:00
tsubai f6482742de pte_spill -> pmap_pte_spill. 2001-06-10 11:09:28 +00:00
tsubai 6650a1901e Use the new pmap to compile again (sorry). 2001-06-10 11:07:36 +00:00
tsubai fafb5d4bc3 Make the new pmap optional. Use the old (stable!) pmap by default. 2001-06-10 11:01:26 +00:00
mrg 53e9189ae7 oops; non-primary cpus should still spin, not jump to idle. 2001-06-10 10:50:20 +00:00
tsubai 27c2892f13 Enable color! call in ofb_putcmap again.
Matt, please don't remove codes silently without confirmation.
(At least, leave a log message!)
2001-06-10 10:34:27 +00:00
thorpej be7629b7e0 Hand off intr evcnt responsiblity in a reasonable way on the 5064. 2001-06-10 09:28:26 +00:00
thorpej 7c074dc806 Check in work-in-progress of generic ISA interrupt support. The
goal here is to get the P-5064 PCMCIA slots working, and serve as
the basis for P-6032 interrupt support.

PCMCIA interrupt auto-detection not working -- more work to be
done here.
2001-06-10 09:13:06 +00:00
thorpej 82418a77b0 Add PCMCIA devices. 2001-06-10 08:45:09 +00:00
matt 66822e55be Fix a spl issues. Turn on PMAPCHECK until instability problems are found.
Add a pmap_pvo_verify call you call it from it ddb and verify the pmap
data structures are sound.  Fix warnings when DEBUG was turned on.
2001-06-10 07:56:36 +00:00
matt b9ef9e99da Print a more informative is a uncatchabl DSI or ISI exeception happens in
kernel mode.
2001-06-10 07:49:13 +00:00
thorpej 1930cfd7dc Correct for a data structure change. 2001-06-10 06:17:15 +00:00
thorpej ce66bf0803 Rewrite the interrupt handling code:
- Compute the number of CPU pipeline cycles per second using the
  mc146818.
- Use the COMPARE interrupt for the hardclock interrupt.
- Collapse all interrupt priorities into a single priority, and use
  the CPU interrupt inputs to determine the interrupt source (local
  device, PCI device, ISA device, etc.)

This allows us to have interrupt sharing.
2001-06-10 05:26:58 +00:00
thorpej 0e82abb5de Add MIPS3_5200. 2001-06-10 05:02:33 +00:00
briggs b1db1fba38 Adapt to new PowerPC pmap.
Use more common PowerPC code including bus_dma and unified bus_space.
2001-06-10 03:16:29 +00:00
briggs c97896cd4d Pull avail_start/avail_end logic for bus_dmamem_alloc() from macppc port,
as suggested by matt@netbsd.org--the vm_physmem array may not be in order.
2001-06-10 02:31:25 +00:00
briggs a2b115fa4c Up the default # of NMBCLUSTERS to 2048 (GATEWAY) & 1024 (non-GATEWAY)
from 512/256.
2001-06-10 02:28:57 +00:00
bjh21 ce17af0c82 Very crude changes to ensure we never call malloc passing M_WAITOK from
pmap_enter.  Instead, we panic if allocation fails.  This is bad, and should
be reworked.
2001-06-09 12:22:11 +00:00
chris b0a79f686c Typo police: 28285 -> 21285
Also garbage collect the old kernel VM map defines for footbridge.
2001-06-09 10:44:10 +00:00
chris 4c30449347 Remove the old kernel config files for cats, also remove isa_cats_machdep, as
it now lives in cats/isa/isa_machdep.c
2001-06-09 10:35:55 +00:00
chris af8ce95972 Move the footbridge dir out of arm32 into arm. 2001-06-09 10:29:11 +00:00
matt 3cad96a936 Move towards common Makefile.arm
Add a netwinder/autoconf.c
2001-06-09 05:38:23 +00:00
matt e27941e917 Eliminate some unavailable devices on netwinder. 2001-06-09 05:36:28 +00:00
bjh21 bfddba9825 Separate podule and netslot cases in poduleread() into separate functions,
with the correct one referenced by a pointer in the podule structure.  This is
in aid of eventually making the netslot and podulebus code a little more
separate from one another.
2001-06-08 22:38:07 +00:00
chris 9e26feedf2 Finish off the cats arch dir by creating an include dir and populating it from
arm32/include.
Make use of std.cats in the kernel config.

Fixup files.cats so it actually works.
2001-06-08 22:22:59 +00:00
bjh21 ca2047f7c6 Adapt the dtide driver to the MI podulebus framework, and move it to its new
home.  It still doesn't actually work, but that's a SMOP.
2001-06-08 20:13:24 +00:00
fredette cca6e28421 Added comments and fixed some macros now that I correctly
understand how to address the sun2 VME bus in the VM hardware.
2001-06-08 18:00:51 +00:00
mrg 1375a0c31e don't run SMP flush routines if (cold); be sure cpus[n] is valid. 2001-06-08 16:25:04 +00:00
mrg 72c1d9df6d more SMP work: finish up ipi's, SMP DDB support, cpu startup issues, and
idle() u area issues:

in nmi_sun4m(), if this is a soft NMI and DDB is configured, setup a trapframe
and pass it to nmi_soft().  in cpu_hatch(), spin until our cpu's flags no longer
have CPUFLG_STARTUP set.  then, setup registers and jump to
idle_enter_no_schedlock.  in idle(), if MULTIPROCESSOR, always switch to this
cpus idle u.  a minor optimisation to cpu_switch().
2001-06-08 16:15:23 +00:00
thorpej 37c37861b9 Make sure to always re-sync the rx buffer dmamap if recycling the
rx buffer.
2001-06-08 14:32:05 +00:00
mrg aa2443e7c8 if DDB, when pausing, save a copy of this cpus registers while paused. 2001-06-08 09:51:40 +00:00
mrg 67fc8c19be if MULTIPROCESSOR, make the registers virtual, so that we can access other
processors registers.  rework enter/exit ddb code to look more like the i386
code.  make "mach cpu" and "mach cpu N" work.
2001-06-08 09:49:28 +00:00
mrg 7666800896 need a per-cpu ddb_regs pointer. 2001-06-08 09:45:50 +00:00
mrg 1ae283fcdd use raise_ipi_wait_and_unlock(). 2001-06-08 09:40:31 +00:00
matt e3b20fd18d options PROG32 for now. 2001-06-08 06:16:09 +00:00
matt 85656841a3 Change _ARM32* to _NETWINDER* Include <machine/psl.h> to get psl
definitions.
2001-06-08 06:14:25 +00:00
matt 1f4156858b add an include subdir rule in the Makefile to make netwinder use the
"new" include file structure to be used on arm ports.
2001-06-08 06:13:02 +00:00
matt 7c77092fcf Change options<tab> to options<space> 2001-06-08 06:10:40 +00:00
chs 68e8e6ff9c make this compile again. 2001-06-08 05:43:00 +00:00
mrg 7bb4cfc2db split {sunos,svr4}_sigcode out for LKMs 2001-06-08 04:49:45 +00:00
simonb e5bd00e48d For ports that wire up pciide in compatibility mode, have
them define __HAVE_PCIIDE_MACHDEP_COMPAT_INTR_ESTABLISH
in pci_machdep.h and pciide_map_compat_intr() only calls
pciide_machdep_compat_intr_establish() if that preprocessor
define exists.

Ports that don't need to do this no longer need to supply a
dummy function.
2001-06-08 04:48:54 +00:00
mrg 9a3de71872 add CPUINFO_FLAGS 2001-06-08 04:21:41 +00:00
uwe 9634e929d1 Oops, missed in the previous commit: bump PIL_SER to 13 as well.
It seems to be unused...
2001-06-08 01:33:32 +00:00
matt d2f0c68d47 Make macppc compile by default with -Wall -Wmissing-prototype in addition
to its currently enabled warnings.  For the lack of a better place, most
global function prototype wound up in <machine/autoconf.h> unless there
was a better place for them.  ofb_* structs renamed to offb_* to avoid
conflict with ofb_softc in <dev/ofw/openfirm.h>
2001-06-08 00:32:01 +00:00
matt f6d422beb8 Fix warning about braces & if. Include libkern.h for strncpy prototype 2001-06-08 00:21:45 +00:00
matt 75a27eccff Rename pte_spill to pmap_pte_spill. Fix pmap_clear_{referenced,modify}
to return the previous state of the bit.  Make it compile under
-Wmissing-prototypes -Wall.  Change around some debug stuff.
2001-06-08 00:16:24 +00:00
rafal a8bb9b127a All soft interrupts are currently handled by soft interrupt 1, so make
all splsoftxxx() calls block soft interrupt 1 and make spllowersoftclock()
re-enable soft interrupt 1.

XXX: This needs to be reworked so that spllowersoftclock() only turns on
softclock interrupts, not all soft interrupt.  That change is coming soon.
2001-06-08 00:09:28 +00:00
rafal 86d8f950ef Fix initial interrupt mask settings for `hard' interupts to mask out soft
interrupts as well.  The system is quite stable now that soft interrupts
don't pop up at random places where they're unexpected 8-)

Also, while here, fix CPU clock speed calculation for the Indy.
2001-06-08 00:02:41 +00:00
thorpej 0859a7601d - Differentiate beteen the 8003 and 80c03 (the 80c03 has some additional
features).
- Implement crude multicast support -- enable reception of all multicast
  frames if we have any addresses on the multicast list.  TODO: use the
  64-bit hash table on the 80c03.
- Implement promiscuous mode.

IPv6 doesn't quite work yet -- DAD finds a duplicate for the
link-local.  The 8003 hears its own transmissions, but IFF_SIMPLEX
is not set, so I'm a little confused.
2001-06-07 23:05:51 +00:00
chris 4e6f32c9d7 Fix the broken stray irq handling for footbridge, this needs to be
propegated to other arm32 irq handlers, until there's a common core part
for doing irq handling.

Untested as I've no cards that generate stray irq's.
2001-06-07 21:47:36 +00:00
chris 75d8b9d463 Checkin fix to ARM7TDMI support. As per patch from John Fremlin to
port-arm32.
2001-06-07 21:07:22 +00:00
thorpej b4e0748bf3 Don't use PCLK as the baud rate generator, as the Indy doens't
like that, and it has no effect on the Indigo2.
From Christopher SEKIYA <wileyc@rezrov.net>.

Also, query the "ConsoleOut" ARCS variable (i.e. "what the console
really is") rather than "console" ("what the console is configured
as").
2001-06-07 19:23:03 +00:00
mrg d3b1cc167d more SMP work:
make IPI's work.  modify boot_secondary_processors() to clear the startup flag
in each cpu.  new raise_ipi_wait_and_unlock() that calls raise_ipi(), waits
for the cpu to acknowledge it got the message, and then unlocks the msglock.
use the new framework in mp_{pause,resume}_cpus().  nmi_soft() takes a
`struct trapframe *', to be used by ddb.
2001-06-07 17:59:47 +00:00
mrg ba991d978b move ev_out32() here. 2001-06-07 17:54:35 +00:00
mrg 51b7188429 make lkm friendly. 2001-06-07 17:49:51 +00:00
briggs 5d512c674c GENERIC + memory disk hooks. 2001-06-07 17:08:13 +00:00
briggs af0929e6ce Enable a few more devices (adw, dpt, siop, sip, sd). Do not compile DEBUG. 2001-06-07 17:05:11 +00:00
mrg 6246dceb77 print p_pid & p_comm for alignment errors. 2001-06-07 15:31:16 +00:00
thorpej a7df60e8e9 Pass -N to the linker, so that it will generate a single PT_LOAD
section (a'la OMAGIC).
2001-06-07 15:26:31 +00:00
rafal a1830df1bb Fix a deadlock in the tx code -- the code checked the DMA status before
sync'ing the descriptor, leading to a race where the packet could complete
after the DMA check but before the sync of the descriptor, sending the code
into unknown territory and the DMA engine into space.  Also, fix a bug with
spurious watchdog resets going off due to the if_timer not always being set
on transmit.

Finally, clean up use of hardcoded magic numbers, get them from hpcreg.h
when possible.
2001-06-07 12:20:42 +00:00
rafal 63f856cb2e Add a bunch of defines for bits withing the ethernet-related registers so
the Seeq driver can use them instead of hardcoded constants.
2001-06-07 12:10:34 +00:00
leo 3aa99cbeac We really need a wsdisplay on the Milan. 2001-06-07 08:41:11 +00:00
leo e371e8a5ae Try to search for an isa bus during console configuration too... Otherwise,
we miss the console keyboard on the Milan.
2001-06-07 08:35:29 +00:00
leo 3700ec551e The newly generated config files. 2001-06-07 08:01:19 +00:00
leo d355dc319f Oops, we don't want 'MILAN' anymore.... 2001-06-07 08:00:24 +00:00
leo 3bc0965e01 Everything you always wanted to know about Atari,Milan,IDE and byteswaps...
The Milan configuration is split up in 2 parts:
   - MILAN_ISAIDE
   	Supports the traditionally formatted IDE disks on the Milan
   - MILAN_PCIIDE
   	Supports the byte swapped formatted IDE disks on the Milan

If you want to read more, checkout the comment in MILAN.in...
2001-06-07 07:56:57 +00:00
leo 92a2e67c31 Remove the atari specific incarnation of wdc_isa.c. We don't need it (in
fact it didn't work that well either), all could be done by simply adding the
NOSTREAM options to the flags of the generic ISA frontend.
There was probably to much byteswapping in my brain when I invented this.
2001-06-07 07:23:02 +00:00
chs 762bab2606 implement pmap_clear_modify() correctly. 2001-06-07 05:29:13 +00:00
lukem 178aeb74a0 work around lint issue (inspired by similar work in sparc port) 2001-06-07 04:44:05 +00:00
lukem 5429ee5e02 add iha(4); it works in my pc164 after thorpej fixed a minor issue 2001-06-07 03:51:53 +00:00
toshii d69d2974a4 Sprinkle some volatile keywords around inline asm so that the optimizer
doesn't reorder critical section codes.
2001-06-07 02:38:59 +00:00
mrg 9b27fa3ff8 set the coredump32 hook. make LKM friendly. 2001-06-06 21:39:50 +00:00
mrg 059d4936ab extract the netbsd32, sunos, 32 bit svr4 and 64 bit svr4 sigcode out into
separate files, so that compat lkms can link with them as well.
2001-06-06 21:19:48 +00:00
mrg ea39a5c3b4 make a NETBSD32 stack check LKM friendly. 2001-06-06 21:06:52 +00:00
matt 695e5e7ab5 Changes new pmap, common param.h, vmparam.h, and moved includes. 2001-06-06 17:50:14 +00:00
matt f294982771 Enable tlp for 21x4x chips. 2001-06-06 17:47:54 +00:00
matt daf8279e4b Change bebox port to use the include MPC6XX files and the new common bus.h
framework.
2001-06-06 17:42:29 +00:00
matt e38a49d835 Include a common bus.h and bus_dma.c that powerpc ports can use
if they so choose.
2001-06-06 17:37:37 +00:00
matt 938edd5b75 Introduce a new & faster pmap for the MPC6xx (60x, 7xx, 7xxx) PPC CPUs.
Move MPC6xx dependent header files to powerpc/include/mpc6xx/
2001-06-06 17:36:01 +00:00
uwe 92359cee67 Bump splserial to 13 to support com port on Tadpole and JavaStations.
While I'm here - remove redefinition of PIL_TTY, move splnet
definition to keep the list sorted and sync its comment with reality.
2001-06-06 13:45:18 +00:00
chs ec218acedd make this compile without MULTIPROCESSOR. 2001-06-06 06:29:36 +00:00