Commit Graph

621 Commits

Author SHA1 Message Date
sekiya
8590eac465 Use the mace interrupt handler for PCI interrupts.
From KIYOHARA Takashi
2004-09-06 07:24:06 +00:00
sekiya
7e244e5e53 Oooops, iaa.iaa_name must be initialized. 2004-09-05 13:32:10 +00:00
sekiya
847a930d95 Use config_found_ia() rather than config_found(). 2004-09-05 11:48:34 +00:00
manu
6e3c639957 IPv4 PIM support, based on a submission from Pavlin Radoslavov posted on
tech-net@
2004-09-04 23:29:44 +00:00
drochner
46289e1fef Phase out the use of a string as first "attach args" member to control
which bustype should be attached with a specific call to config_found()
(from a "mainbus" or a bus bridge).
Do it for isa/eisa/mca and pci/agp for now. These buses all attach to
an mi interface attribute "isabus", "eisabus" etc., and the autoconf
framework now allows to specify an interface attribute on config_found()
and config_search(), which limits the search of matching config data
to these which attach to that specific attribute.
So we basically have to call config_found_ia(..., "foobus", ...) where
such a bus is attached.
As a consequence, where a "mainbus" or alike also attaches other
devices (eg CPUs) which do not attach to a specific attribute yet,
we need at least pass an attribute name (different from "foobus") so
that the foo bus is not found at these places. This made some minor
changes necessary which are not obviously related to the mentioned buses.
2004-08-30 15:05:15 +00:00
tsutsui
efa3e6b66b Remove bogus TABs. (from OpenBSD) 2004-08-18 14:47:25 +00:00
rumble
d15d05328d Add some infrastructure to support HPC-based ethernet adapters
(E++):
 o The static configuration table now identifies by HPC offset.
 o Added sq(4) entries for IP12, IP20, and IP24.
 o Accomodated HPC revision forcing based on kernel config flags.
2004-08-17 00:57:42 +00:00
rumble
38bbaabc37 Add defines for the four possible HPC GIO bus addresses. 2004-08-17 00:48:08 +00:00
rumble
d023bcf042 Implement several changes that get my E++ (HPC1.5 GIO ethernet
adapter) to work on IP24:
 o Force HPC and GIO slot endianness.
 o Allow slots one and two to be masters and configure for
   realtime mode.

Also, while we're here move IP22 invariants into the IP22 case.

I suspect that IP20 will work as well since it exhibited the same
broken DMA that IP24 did before I flipped the master bit.
2004-08-17 00:44:39 +00:00
sekiya
1a682ebd64 Add 64-bit ABI bootloader (for IP30). Needs a slightly modified toolchain
and a 64-bit-clean libkern.a; once those bits are committed, this should be
100% good to go.
2004-08-11 11:45:26 +00:00
sekiya
8a3d53f346 Start routine for 64-bit ABI. 2004-08-11 11:41:19 +00:00
tsutsui
9df92e5adc - It turns out alignment restriction for TX descs is 8kbytes, not 64kbytes.
- Use MEC_TX_ALIAS register to set/clear TX interrupt enable bit.
2004-08-01 06:36:36 +00:00
drochner
a5a5473c25 remove now unnecessary "pci_enumerate_bus" definitions 2004-07-29 16:55:25 +00:00
sekiya
c830efd52f Properly detect the EISA bus for IP22-class machines. 2004-07-25 10:28:28 +00:00
rumble
44f3c135e7 KNF and consistency 2004-07-20 05:19:23 +00:00
rumble
5189fbb0b4 Allow for console attachment by statically allocating a softc
extension. Tweak cs_softreq when appending the transmit queue.
Finally, add a bit of debugging.
2004-07-20 04:55:21 +00:00
rumble
ae62a41f43 Properly initialise the tx and rx queue head and tail positions. 2004-07-20 04:43:44 +00:00
atatat
f68a9f1ff2 Add "options SYSCTL_INCLUDE_DESCR" to a lot of configs, but commented
out in most of them.
2004-07-15 03:53:44 +00:00
tsutsui
3edbd6052a Add device-major for lpt. 2004-07-14 14:13:24 +00:00
tsutsui
7565fb7456 Now multicast on mec0 is confirmed working, so remove XXX comment
in mec_setfilter() function.

Thanks to Gerald Heinig for providing multicast test programs.
2004-07-14 09:45:47 +00:00
tsutsui
c2de425692 Reenable lpt at mace since shared interrupt code was fixed in mace.c rev 1.2. 2004-07-12 13:45:40 +00:00
tsutsui
204f5095a2 Enable mec Ethernet at mace. 2004-07-12 13:16:14 +00:00
tsutsui
fff3ff1b2c Add a working driver for O2 (IP32) on-board MACE MAC-110 Ethernet.
Note:
- I don't have any hardware docments for this device, so this driver might
  have some odd descriptions guessed by results of try-and-errors.
  (the only info I have is the Linux driver, but I think it doesn't describe
   the hardware specifications very well anyway)
- All RX packets and most TX packets are copied from/to buffers in the driver
  due to hardware restriction, so performance is not so good for now.
  Maybe RX packets can be directly DMA'ed to mbufs by the same method used
  of fxp(4), but the hardware seems to require 4kbyte aligned RX buffers.
- Multicast filter setup function is not tested yet (no info).
- Currently only tested on R5000 O2 with disabled L2 cache, so needs
  more tests on other CPU (i.e. RM5200/R10000/R12000) models.
- Currently BUS_DMA_COHERENT is not used for the device control data DMA
  to avoid performance issue on memcpy() against RX buffers, but it might be
  problematic when L2 cache is enabled or on R10000 models.
2004-07-11 03:13:04 +00:00
tsutsui
43f42bdb21 Count mace interrupts by evcnt(9). 2004-07-10 08:47:33 +00:00
tsutsui
9864035c97 Remove a debug printf. 2004-07-10 08:44:42 +00:00
tsutsui
0d31ac4463 Make sure shared interrupts properly handled. 2004-07-10 07:39:13 +00:00
sekiya
ce13caf073 Add wsmouse* at zsms* 2004-07-08 22:43:30 +00:00
sekiya
c1036b3eff Uncomment keyboard/mouse at zs* 2004-07-08 22:32:34 +00:00
sekiya
5110af7a8b Add support for keyboard and mouse attachments at zs*, used on IP12 and IP20.
Code written by Steve Rumble; committed with his blessing.

Using a glass TTY as a console on IP20 (IP12 untested) should now be possible.
2004-07-08 22:30:53 +00:00
sekiya
9a82e9035c Uncomment grtwo* attachment and its corresponding wsdisplay* 2004-07-08 10:12:27 +00:00
sekiya
ae7e3d69b0 Fake a FIFO interrupt iff the FIFO interrupt is unmasked. Should eliminate
the "spurious interrupt" messages on machines without grtwo displays.
2004-07-08 10:10:49 +00:00
sekiya
9c289db87a Remove unnecessary variables from grtwo_cnattach(). 2004-07-08 10:02:10 +00:00
sekiya
ead6809450 Call gio_video_init() for IP12 and IP20. Neither model uses the same keyboard
glue as the IP22, so add conditionals in the keyboard connection logic.
2004-07-08 10:00:30 +00:00
rumble
84931191d5 Fix a typo in zsms0's parent. 2004-07-07 00:58:43 +00:00
sekiya
c279001857 Oops. Remove reference to phantom variable. 2004-07-07 00:11:11 +00:00
sekiya
79fdbacde6 Add ih_next to the data structure. Part of Steve Rumble's interrupt-sharing
scheme.
2004-07-07 00:08:43 +00:00
sekiya
eadba4d41f Add commented-out entries for grtwo wscons support (and fix the entries for
serial keyboard/mouse).
2004-07-06 23:59:48 +00:00
sekiya
432805bb11 Add the following to the int driver:
* if the driver hasn't been properly initialized, spin for a bit in wait_fifo()
  rather than try to access the local0 status register.
* allow interrupt sharing (from Steve Rumble; necessary for IP20 glass TTY
  support).
2004-07-06 23:56:13 +00:00
sekiya
9c873da232 Many fixes to the grtwo wscons driver:
* fills seem to be broken.  Avoid filling large vertical regions; instead,
  attempt to break it up into managable chunks.  This doesn't work perfectly
  either, so clear the screen row-by-row (which does work).
* Characters are now right-side-up
* the driver now uses screen coordinates properly.

With the exception of column erases (which fall prey to the fill issue), the
driver is now usable.
2004-07-06 23:51:40 +00:00
bouyer
21e9a36edc Add options P1003_1B_SEMAPHORE
to all GENERIC-like kernel config files where SYSV* options were already
present (commented out if the SYSV* options are commented out).
Fix lib/25897 and lib/25898.
2004-06-28 21:07:47 +00:00
abs
bd8eb3b5ed Add (commented out) ALTQ options to all GENERIC-like files 2004-06-26 07:32:05 +00:00
christos
c22e4ed8cd ptm is now mandatory, depends on pty, and can be disabled with -DNO_DEV_PTM 2004-06-18 15:02:29 +00:00
christos
0399e839cf Add pseudo-device ptm on all the generic flavored kernels. 2004-06-16 15:07:39 +00:00
rumble
875866073a sekiya-san's platform abstraction allows us to keep these
functions static.
2004-06-13 18:30:11 +00:00
rumble
0f58ff497d General cleanup to improve style consistency and KNF adherence.
Updated comments and removed superfluous code. No functional
change intended.

ok'd by pooka and sekiya
2004-06-13 18:28:35 +00:00
rumble
533084bbc7 Refactor consinit() for readability by pulling out mach_type
specific code into their own functions. No functional change is
intended.

ok'd by pooka and sekiya
2004-06-09 23:01:01 +00:00
rumble
df731a5f0f Use global static prom vectors within the module instead of
creating them on the fly. Simplify arcemu_ip12_putc() since the
printf vector behaves as expected.
2004-06-08 22:51:21 +00:00
kleink
7b3b647647 Factor out W{CHAR,INT}_{MAX,MIN} into their own header file. 2004-05-08 21:51:47 +00:00
pooka
88d0b8e68e Return "video()" instead of "graphics(0)" for a graphics console,
since that's what even our code expects.

suggested by Steve Rumble
2004-04-14 10:29:26 +00:00
sekiya
7af65e354b Back out portions of previous commit -- the mips/bus_dma.c code is less
correct than the sgimips-specific code.
2004-04-13 08:12:03 +00:00