Commit Graph

31 Commits

Author SHA1 Message Date
bjh21
5ddc1e1310 Add retry mechanisms for Econet, so that if a four-way handshake doesn't
complete for some reason, we defer it for a bit and then try again.  This
gets ping down to 0% packet loss.

Of course, ping _should_ have been at 0% packet loss anyway, and that's the
next thing to deal with.
2001-09-17 22:41:59 +00:00
bjh21
33d596bef8 Add support for incoming IP broadcast packets. The protocol for this is
worked out by observing RISC iX's behaviour, so it may be technically
wrong.  The only implementations of IP-over-Econet for which I've got
sources don't support broadcasts.

Tested using broadcast ping from RISC iX to NetBSD, and using rwhod.
2001-09-16 15:08:39 +00:00
bjh21
91dae8ca83 Add minimal IP-over-Econet support and a load of bug-fixes. I can ping,
unreliably, between my RISC iX and NetBSD boxes with this.  There's a lot
of work to go before it's solid, though.
2001-09-15 17:27:24 +00:00
bjh21
e416135347 Driver for the standard Archimedes Econet interface, based around the
Motorola 6854 ADLC.
2001-09-10 23:41:48 +00:00
bjh21
9c45cae8df Make cmos_read() and cmos_write() globally visible, and make the instance
they operate on implicit.  Also, stop abusing cf_unit, and remove a vast
swathe of unused code.
2001-08-26 12:24:24 +00:00
bjh21
c6c9e5d915 Act as an entropy source for rnd(4). 2001-07-02 23:49:17 +00:00
wiz
0a600be867 receive, not recieve 2001-06-12 15:17:10 +00:00
bjh21
856547f067 Driver for Archimedes parallel ports. I haven't got a parallel printer, so
this is currently untested.
2001-04-22 15:01:25 +00:00
bjh21
2a1570b5d9 Add functions to twiddle the latch bits, patterned after the ones in Linux. 2001-04-22 15:00:13 +00:00
bjh21
660a20cd22 Add a skeleton driver for the random latches on the Archimedes, which are
shared between the printer port and floppy drive.  Useful facilities will be
added when I know what I need.
2001-04-22 00:26:35 +00:00
bjh21
575fa5e5af #ifdef out arckbd_pick_layout until we get round to using it again. 2001-02-17 18:39:11 +00:00
bjh21
21e1b73962 Update ioeb_irq_clear to match its caller. 2001-02-08 22:21:24 +00:00
bjh21
3c3ed6cecd Flush out cf_unit abuses.
Also, most device functions related to IRQ handling no longer take a device
pointer.  We make so many assumptions about the machine's layout in irq.c that
this just seemed silly.
2001-01-23 23:58:31 +00:00
bjh21
f32fc0fc90 Use evcnts properly for interrupt counting.
The architecture here follows that of the vax port -- each device has its
evcnt in its softc, but defers actually incrementing it to the IRQ
dispatcher.  This way, devices can attach sub-counts (e.g. Rx and Tx counts
for Ethernet interfaces), but don't all have to have code to increment the
counters.

Drivers deliberately call evcnt_attach_dynamic() before establishing their
interrupt handler so that the establish routine can attach a parent event if
that's appropriate.  At present, it isn't.
2001-01-23 22:07:59 +00:00
bjh21
d0b6f0f1cd Changes to interrupt accounting:
NULL "name" argument to irq_establish indicates that the device will maintain
an evcnt structure for this interrupt.  In this case, irq_establish will still
maintain its own count (for DDB machine irqstat), but won't attach it to the
global list.

Change use of ev_group and ev_name to follow guidelines in evcnt(9).

Switch arckbd(4) over to the new arrangements.
2001-01-22 23:08:26 +00:00
bjh21
2b076072d3 Add a "name" argument to irq_establish and friends, in imitation of arm32. 2001-01-07 15:56:01 +00:00
bjh21
6b513dfe29 Remove ioc_irq_establish -- It wasn't serving any useful purpose. 2001-01-07 15:36:34 +00:00
bjh21
32ad12527c ANSIfy. 2001-01-07 15:00:02 +00:00
bjh21
5568314c66 Since the Arc's interrupt layout is fixed, only print IRQ numbers in
verbose mode.  This helps to ensure the kernel version number doesn't disappear
too quickly.
2000-12-23 21:49:13 +00:00
bjh21
8df54708da If we get an odd IOEB type, tell the user. I have a feeling issue 1 A5000s
might trip this.
2000-12-09 18:04:05 +00:00
bjh21
eb0dc305da Insert clock low after ack bit. 2000-11-26 18:53:12 +00:00
bjh21
f801b80192 Zero-length reads seem to confuse the chip, so don't do that. 2000-11-26 18:12:36 +00:00
bjh21
7270db5ec0 Change to semantics of irq_establish: IRQs are now enabled by default, which
I think is the same as all other ports.
2000-10-14 23:41:01 +00:00
bjh21
6e3e3a755d Don't include <machine/spl.h> any more.
Include <machine/intr.h> everywhere than uses spl(9) functions.
2000-08-22 21:22:48 +00:00
bjh21
cc396125ae Add support for clearing IRQ 0, which is latched by the IOEB (on IOEB systems). 2000-08-18 12:50:00 +00:00
bjh21
4d52022987 Comment tidying 2000-07-28 09:54:56 +00:00
bjh21
61edac627c Convert the arm26 rtc driver to use pk's new todr(9) interface internally.
Nothing outside the driver will notice until we get proper MI I^2C.
2000-07-27 23:51:43 +00:00
bjh21
9f33355278 Ensure rtcattach generates a newline even if the RTC is broken 2000-06-28 15:25:03 +00:00
bjh21
9d61165c26 Oops. Swedish is KB_SV. 2000-05-13 14:40:10 +00:00
bjh21
b85a45b9f1 Move out spurious defines 2000-05-13 12:17:49 +00:00
bjh21
6c97e2bd78 Initial commit of arm26 port 2000-05-09 21:55:44 +00:00