Commit Graph

39579 Commits

Author SHA1 Message Date
scw a1b8e79bb1 Take advantage of generic soft interrupts, if available. 2000-07-20 20:44:50 +00:00
eeh 0a25b480c6 Clean up disassembly of sparc v9 insns and handling of negative values. 2000-07-20 20:43:21 +00:00
scw 83e678b1a4 Implement generic soft interrupts for mvme68k.
Based on Jason Thorpe's Alpha implementation.
2000-07-20 20:40:34 +00:00
bjh21 bf14d56ba8 Add strtoul.c -- if_ea.c needs it. 2000-07-20 20:27:53 +00:00
bjh21 da2949153f Disable dtide since it doesn't work (and probably never will -- the card's
brain-dead).
2000-07-20 20:27:11 +00:00
bjh21 6744ec9f53 Include locore.S in the main assembly mkdep. 2000-07-20 20:26:32 +00:00
bjh21 b5d3226a07 General tidying up, notably:
- Get the Ethernet address from the card's description string, rather than
   relying on RISC OS to set it.
 - Don't mention this is a SEEQ8005 -- that's all an "ea" can be.
 - Use format_bytes to display the amount of buffer RAM.
2000-07-20 20:25:10 +00:00
thorpej 9c881e00cb Add a SIOCGIFCLONERS ioctl, which fetches a list of network
interface cloners from the kernel.
2000-07-20 18:40:26 +00:00
jeffs 2ebdfcd251 Make pmap_prefer() use a global setting based on cache size
instead of assuming 64KB.   This allows best fit and will
support bigger caches.
2000-07-20 18:33:40 +00:00
jeffs c8b819c2ed Include kgdb hooks in trap.c. Include bits of DDB code for kgdb also. Remove
some local prototypes that are in headers now.
2000-07-20 18:14:46 +00:00
pk 4badffe2c1 For now, alias `network' to `hme'. 2000-07-20 16:29:03 +00:00
ad b60bcd873d Regen. 2000-07-20 14:47:35 +00:00
ad d3b42c18e4 Add what is apparently ESS's old vendor ID and corresponding product ID for
the Maestro 1.
2000-07-20 14:46:51 +00:00
pk 71169064c4 Since `intrcnt' points to an array of long ints, reserve the appropriate
amount of space depending on _LP64. Provide macros to load/store signed
and unsigned long ints.

Also, make the `intrcnt' and `intrpending' arrays 16 entries long, as on
sparc/v9 interrupt #15 is just a regular interrupt.
2000-07-20 13:28:39 +00:00
bouyer 6e88d58524 Make it compile when PCIIDE_AMD756_ENABLEDMA is defined. From kern/10555
by MURATA Shuuichirou.
2000-07-20 12:19:41 +00:00
nisimura 7d6022a0db version[] string was const'ifed. Pointed out by Izumi Tsutsui. 2000-07-20 08:29:41 +00:00
tsutsui 83f94dc417 Regen. 2000-07-20 07:11:28 +00:00
tsutsui 4af0fbdb1a Add PMAG-JA framebuffer. 2000-07-20 06:38:39 +00:00
deberg 0d5d0bd93a don't define LIST_FOREACH, it's in sys/queue.h now. 2000-07-20 03:47:56 +00:00
deberg 23f2392b19 don't define TAILQ_FOREACH, it's in sys/queue.h now. 2000-07-20 03:44:46 +00:00
deberg 6d22be08eb add *_FOREACH() and {TAILQ,CIRCLEQ}_FOREACH_REVERSE() macros from
freebsd.  fix some of the comments up top.
2000-07-20 03:36:38 +00:00
jeffs d8d3c52075 Move masked status and instr into jal cpu_intr delay slot. 2000-07-20 00:43:07 +00:00
mjacob c47c527343 add some more CTIO flags 2000-07-19 22:19:23 +00:00
mjacob 0615788781 zero result queue entry when done if debugging.
don't do an isp_notify_ack if we're not at run state.
2000-07-19 22:19:00 +00:00
mjacob 93379fb341 fix mislabelled error case 2000-07-19 22:18:02 +00:00
jeffs 5938072101 In FPU excepton code, send SIGILL if no one claims the instruction.
SIGFPE is still delivered where appropriate.
2000-07-19 22:05:02 +00:00
ragge 96122c2884 Do mtpr(0, PR_TBIA), not mtpr(1, PR_TBIA). This has worked on all CPUs
except for KA88.
2000-07-19 21:08:06 +00:00
jeffs 64d555c075 Improve outofworld: to include the vaddr. Removed unused mips3_Set64bit
and an #if 1.
2000-07-19 20:46:00 +00:00
matt b14e1fbbd4 Tpyo 2000-07-19 20:29:45 +00:00
bjh21 f079e15d48 - Remove asc driver, since it doesn't work
- Reduce maxusers to 2
2000-07-19 19:41:48 +00:00
jeffs 32ee71ac65 Fix stacktrace() to have an 8 byte aligned stack. On our platform previously
it would hang-up.  logstacktrace() actually was the same as stacktrace() so
just make it an XLEAF() for now.  Include some DDB code for KGDB compilation.
2000-07-19 18:56:36 +00:00
jeffs 8b8bf4501b At the start of the kernel, keep the MIPS3_SR_DIAG_BEV setting
on mips3 systems, until the kernel actually hooks the vectors.
This makes it easier to debug early problems if the firmware
has provides an exception handler.
2000-07-19 18:38:41 +00:00
matt 38c659cca5 Include ELF support by default. 2000-07-19 18:29:21 +00:00
matt 8e9ff5814e More ELF changes (a.out still works). 2000-07-19 18:15:01 +00:00
thorpej 9faf26ffb5 This file is obsolsete. 2000-07-19 17:39:57 +00:00
bjh21 8c2ce5b135 New configuration, based on GENERIC, but small enough to fit on a system
with 4Mb of RAM (I hope).
2000-07-19 16:39:30 +00:00
pk f9e6c9cf42 Fixx off-by-one error in handlereset(). 2000-07-19 16:07:00 +00:00
eeh 6996dd8691 Fix merge problem. 2000-07-19 15:48:25 +00:00
eeh 25f8633edd Add an option to poll the ROM console from hardclock you can break into DDB
even if callouts are disabled.
2000-07-19 15:41:53 +00:00
nathanw e72ba11928 In cpu_switch(), load value *after* checking that the base register
is not NULL.
2000-07-19 14:00:24 +00:00
nathanw 554019cd4b More printf format munging for off_t: when printing as %lld, cast to long long. 2000-07-19 13:44:24 +00:00
tsutsui 5867f914e8 Add (commented out) "options TCVERBOSE". 2000-07-19 10:42:22 +00:00
mrg e3fc09812a make myetheraddr() work even if the clock hasn't been setup yet 2000-07-19 10:20:09 +00:00
augustss 00cafd0569 Add MIDI support. From Tatoku Ogaito. 2000-07-19 09:58:45 +00:00
onoe 0ab524f389 moved the check priviledge for SIOCS80211NWID from each driver to ifioctl().
it also fixes the problem that non-priviledged user can change nwid
for wi and ray drivers.
2000-07-19 06:00:39 +00:00
eeh 422e1b7236 Disable interrupt interlock using ih->ih_pending field. Seems to cause
more problems than it solves.
2000-07-19 04:36:42 +00:00
matt 69a9192fb8 We need strncasecmp.c now. 2000-07-19 03:56:38 +00:00
matt 237e784779 ELFify 2000-07-19 03:48:24 +00:00
eeh 625dc5189f Miscellaneous cleanup. 2000-07-19 03:24:07 +00:00
matt d66b7dcc2d Switch to loadfile instead of exec. Now we can load a.out or ELF kernels. 2000-07-19 02:39:11 +00:00
matt ad99ca5ed2 use size_t instead of u_int. 2000-07-19 01:02:52 +00:00
matt ab5d2882a0 Move KA630 definitions from boot/boot/consio.c to here. 2000-07-19 01:01:58 +00:00
matt 15c6bb6dbd ELFify (udiv -> __udiv, urem -> __rem) 2000-07-19 01:01:02 +00:00
matt 732a08c3c3 Put the assembly consio routines in a separate file so it can deal with
a.out/ELF differences.
2000-07-19 00:59:20 +00:00
matt 9b4c867626 Add support for loading a 2nd stage boot in either a.out or ELF.
Add support for loading a 2nd stage boot directly to it's desired address
if possible.
cleanup use of u_int/size_t.
2000-07-19 00:58:23 +00:00
eeh 067b7521b5 Fix PIC bugs. 2000-07-18 22:38:11 +00:00
lukem b1fcf03d7f freebsd kqueue implementation 2000-07-18 22:11:54 +00:00
jeffs ddc66457b1 Same change in the kgdb code as was done in ddb:
Move platform db_trap callback from arch/mips into ddb as suggested by
  jhawk.  This callback is used by platform code to manage things like
  watchdogs that should be disabled while in ddb.  Done as a callback
  for processors such as mips that support lots of different systems.
2000-07-18 21:49:08 +00:00
jeffs 9349a51d66 Provide some info on what db_trap_callback() is for in the code. 2000-07-18 20:51:07 +00:00
pk 59a7148fe9 address casts: long -> u_long 2000-07-18 20:19:56 +00:00
pk db76bf893e Cast pointer to `u_long' (not `long') for correct results. 2000-07-18 20:15:36 +00:00
pk 602e908589 Correct args usage comment in probeget.
Whitespace cleanup.
2000-07-18 20:14:45 +00:00
pk 1d14ce3842 probeget: 9 -> 0x9 2000-07-18 19:27:57 +00:00
pk c0e91fb184 If `ih_pending' is set simply return from the trap, don't schedule another
soft interrupt.
2000-07-18 19:25:26 +00:00
ad 7d1b0e5b39 Use device_lookup() and ditch TAILQ sillyness. 2000-07-18 15:27:44 +00:00
onoe 47f692248f add WEP support also for PRISM2 cards.
Corega works fine with WEP, but farallon doesn't work well with WEP for now..
2000-07-18 15:01:55 +00:00
itojun 65d37eff7f correct RFC2367 PF_KEY conformance (SADB_[AE]ALG_xx values and namespaces).
sync from kame.

WARNING: need recompilation of setkey(8) and pkgsrc/security/racoon.
(no ipsec-ready netbsd was released as official release)
2000-07-18 14:56:42 +00:00
onoe 905b4e497f Add support for Corega Wireless LAN PCC-11, and Farallon SkyLINE 11Mb.
Note that Corega card works at 3.3V only, then it requires cardbus code
for now.
2000-07-18 14:53:26 +00:00
onoe 4a2a3bf091 Add Farallon SkyLINE 11mb card as Intersil Prism2
vendor:product of the card is Lucent:WaveLAN, and CIS string shows
	"INTERSIL" "HFA384x/IEEE"...
2000-07-18 14:48:10 +00:00
onoe 0dbbd8cec4 implement new signal syscalls in FreeBSD 4.0-RELEASE, using native syscalls:
sigaction, sigprocmask, sigsuspend, and sigpending.
2000-07-18 14:15:05 +00:00
pk a49fddc9b3 openfirmware: don't lower %pil 2000-07-18 12:52:56 +00:00
matthias 9cb57a12a7 Change KERNBASE to 0xe0000000 to give more room for KVA. This is the maximum
amount of KVA that is supportable on the ns32532.
2000-07-18 12:45:49 +00:00
soda 36b85ab9c7 hexadecimal constant in "options" value doesn't need quotation. 2000-07-18 11:41:32 +00:00
soda 87b0dd6e6a make PCIBIOS_IRQS_HINT patchable. 2000-07-18 11:37:56 +00:00
pk 34270e85bd Use probeget() in pci_config_read() for the psycho, to avoid bus
faults when probing PCI space.
2000-07-18 11:37:31 +00:00
pk 073e24cd1b Set up register bank sharing bwteen psycho A & B based on matching
physical addresses.  Allocate IOMMU state separately and refer to it
from both psycho_softc's.
2000-07-18 11:35:03 +00:00
soda 52e3dc4e56 use I386_PCI_INTERRUPT_LINE_NO_CONNECTION instead of magic number. 2000-07-18 11:24:09 +00:00
soda 663add1b20 use PCI_INTERRUPT_PIN_MAX and I386_PCI_INTERRUPT_LINE_NO_CONNECTION,
instead of magic number
2000-07-18 11:23:28 +00:00
soda 81858d7c01 - Use PCIBIOS_PRINTV().
- Use PCI_INTERRUPT_PIN_MAX and I386_PCI_INTERRUPT_LINE_NO_CONNECTION
   instead of magic number.

the Following changes are
{Modified with,Approved by} UCHIYAMA Yasushi <uch@netbsd.org>:

 - Do not touch a PIRQ router, if the PIRQ is already routed
   by the BIOS, or no appropriate IRQ is found for the PIRQ.
   The latter prevents a panic on the machine of Frank van der Linden.

 - Do not modify a PCI Interrupt Configuration register,
   if it is already set by the BIOS, even if it is inconsistent
   with the PCI IRQ routing table provided by the BIOS.
   (The PCI Interrupt Configuration register seems to be more reliable
    than the PCI IRQ routing table.)
   This is needed to prevent a incorrect header_fixup() caused
   by the incorrect PIR table on a Panasonic Let's Note AL-N2T516J5.

   Provide "options PCIBIOS_INTR_FIXUP_FORCE" to retain
   previous behavior, i.e. believe the PCI IRQ routing table
   and ignore the PCI Interrupt Configuration register.
   Although I'm not sure this is really needed.

 - Do not modify a PCI Interrupt Configuration register,
   if appropriate IRQ is not found for the link.

 - Move a pciintr_icu_getclink() call and a pciintr_icu_get_intr()
   call from pciintr_link_fixup() to pciintr_link_alloc(),
   and only allocate pciintr_link_map if those calls succeeded.
   This reduces number of calls of pciintr_icu_getclink(),
   and also avoid necessity to validate a clink value in
   ICU's {get,set}_{intr,trigger}() functions.
   The sanity checks are not removed yet, though.

 - Fix uninitialized usage of variable `bitmap' on stage 3
   of pciintr_link_fixup().

 - Remove a member variable `old_irq' from struct pciintr_link_map.

 - Always use 0x%02x for printf format of canonical link value.

 - Use DIAGNOSTIC instead of PCIINTR_DEBUG for really weird situation.
2000-07-18 11:22:36 +00:00
soda b01ab37ef6 use PCIBIOS_PRINTV() defined in pcibios.h, instead of homegrown DPRINTF(). 2000-07-18 11:18:04 +00:00
soda 698b2b1173 - define pcibiosverbose here, instead of each C source.
- use PIR_DEVFUNC_{DEVICE,FUNCTION}.
2000-07-18 11:15:25 +00:00
soda 0e8343265b - define PCIBIOS_PRINTV() as pcibiosverbose printf() here,
instead of DPRINTF() in each C source.
 - define PIR_DEVFUNC_{DEVICE,FUNCTION}
2000-07-18 11:14:06 +00:00
soda 2f9cb9c128 add several debug printf which can be enabled by PIIX_DEBUG. 2000-07-18 11:10:22 +00:00
soda 9a7e0d82ac - deal with FIRESTAR_PIR_SELECT_PIRQ case on set/get_trigger(),
to prevent a panic on a Panasonic Let's Note AL-N2T516J5.
 - add several debug printf which can be enabled by FIRESTARDEBUG.
 by UCHIYAMA Yasushi <uch@netbsd.org>

 - use I386_PCI_INTERRUPT_LINE_NO_CONNECTION instead of magic number.
2000-07-18 11:07:20 +00:00
soda b8a6bd6e11 add "#define I386_PCI_INTERRUPT_LINE_NO_CONNECTION 0xff" 2000-07-18 11:00:35 +00:00
soda c41ca10d33 add "#define PCI_INTERRUPT_PIN_MAX 0x04" 2000-07-18 10:59:04 +00:00
jeffs f7dacc7a8e Use spl*_noprof routines to raise and lower spl for kernel profiling.
This keeps the SR management more contained in locore, and should
be roughly the same performance as the .text size is less.  Talked
to simonb and he was ok with this change.
2000-07-18 06:25:32 +00:00
thorpej 693ff4c94d PAGE_SIZE -> IOASIC_DMA_BLOCKSIZE in one last place. From Izumi Tsutsui. 2000-07-18 06:14:05 +00:00
thorpej b91d520dc9 Back out previous. It is no longer needed, as both the Alpha
and DECstation IOASIC drivers clear the appropriate interrupts
in the dispatch routine.
2000-07-18 06:12:33 +00:00
thorpej ea0cb4c30e Clear the ISDN TXPTR/RXPTR/OVRN interrupt bits here. Based on
a suggestion by Gregory McGarry.
2000-07-18 06:10:06 +00:00
mrg faaa100d6e #if 0 some dumpsys() debugging messages 2000-07-18 05:18:35 +00:00
mrg d2626038cd kill dead files. 2000-07-18 04:21:17 +00:00
mrg 040268c10e s/auxreg/auxio/ 2000-07-18 04:17:23 +00:00
enami 84606936fb Fix an obvious typo in comment introduced by previous commit; the instruction
now compares a0 against a1 + a2, not a0 + a2.
2000-07-18 01:20:24 +00:00
jeffs 8e5b35a55a Fix FP exception handling that was recently broken and would not
run src/regress cleanly.  Need to save and restore the frame pointer
for fpemul_sig*().
2000-07-18 00:41:18 +00:00
jeffs 5961b67774 if MIPS3_ENABLE_CLOCK_INTR is defined, set MIPS3_[HARD_]INT_MASK
appropriately.  This supports ports that use the internal clock.
Add 2 diag register defines that are specific to QED processors.
2000-07-17 23:35:13 +00:00
jeffs 0e0c4d24e8 Move platform db_trap callback from arch/mips into ddb as suggested by
jhawk.  This callback is used by platform code to manage things like
watchdogs that should be disabled while in ddb.  Done as a callback
for processors such as mips that support lots of different systems.
2000-07-17 19:57:49 +00:00
pk 1d1b0968f1 IF we're changing hz, change tick accordingly too. 2000-07-17 18:32:25 +00:00
tron 5446d3c92e Don't make assumptions of the actual value of PCI_PMCSR_STATE_D0.
Problem noted by John Hawkinson.
2000-07-17 18:12:00 +00:00
tron cfae3184d8 Don't clobber bits from 2 to 31 when trying to change the power state.
Problem noted by John Hawkinson.
2000-07-17 17:53:44 +00:00