* Add missing prototypes.
* Move over softnet() from intr.c.
* Establish softnet and softclock interrupts in init532.
* Misc cleanup to get it compiled with the new CWARNFLAGS.
of the ICU in clock_attach.
* Pull over (and reformat) rtc_rw from mem.c.
* Convert the rtc driver to use /sys/dev/clock_subr.c (partially by
stealing code from the sun3 port).
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.
For the detailed change history, look at the commit log entries for
the is-newarp branch.
* Uses Counter/Timer dynamicly for rate generation; You can
have both 19200 and 38400 on one duart, and 57600 on another!
* Improved scninfo program to dump driver internal information.
implemented counters for parity err, framing err, break
* Delays changes until transmitter idle to avoid "glitches"
* Cleaned up scn_softc member names
* Untested support for sc26c92 (I don't yet have any to test with);
+ Will use alternate rate tables (include 115.2kbps and 230.4kbps)
+ Will raise FIFO rx interrupt threshold and watchdog timer
at higher rates.
+ Unknown (to me) how fast pc532 MC145406 driver chips can go
NOTE: It seems like it may be a BAD idea to use a sc26c92 as
a console port for now; the PROM doesn't know to reset the
chip back to scn2692 mode!!
interrupt handlers. Due to this
- DIAGNOSTIC kernels would panic
- check_sir would run with the interrupt registered last blocked
Credits for finding and fixing this go to Ian Dall.
* Define RECOVER to something faster.
* Check for a valid softc in scnsoft. When there is
a "hole" (e.g. you have scn0,scn1, scn4, scn5) the
old code would panic. Thank's to Phil Budne for
finding and fixing this bug.
* Add (commented out) type and asmtype commands. asmtype will
be used to define the gcc constraint used to emit constants
and type will be used to define the type the constant should
get casted to before passing it to printf.
* Added LKM, PFIL_HOOKS and NFSSERVER options.
* Added four ccd devices.
* Removed PLIP and NO_INLINE_SPLX options.
* Removed MFS, MSDOSFS, CD9660, FDESK, KERNFS and PROCFS filesystems
because they all are lkmable.
Eliminate obsolete global kernel variable "struct timezone tz"
Add RTC_OFFSET option
Add global kernel variable rtc_offset, which is initialized by
RTC_OFFSET at kernel compile time.
on i386, x68k, mac68k, pc532 and arm32, RTC_OFFSET indicates how many
minutes west (east) of GMT the hardware RTC runs. Defaults to 0.
Places where tz variable was used to indicate this in the past have
been replaced with rtc_offset.
Add sysctl interface to rtc_offset.
Kill obsolete DST_* macros in sys/time.h
gettimeofday now always returns zeroed timezone if zone is requested.
settimeofday now ignores and logs attempts to set non-existant kernel
timezone.
* Add IPL_HIGH. Alias IPL_HIGH to IPL_RTTY
* Define splrtty (used by the scn driver).
* Add iv_level and iv_mask to struct iv. These define the IPL at
which the handler should run.
* intr_establish now takes *two* ipls. One at which the handler should run,
and one in which the interrupt should get blocked.
* Define SCN_RING_HIWAT and add sc_rbhiwat to scn_softc. When the
ringbuffer gets full up to this mark, rts gets asserted (Ian Dall).
* Add sc_rx_blocked to scn_softc. This is used to tell scnsoft that
rxinterrupts are blocked (Ian Dall).
* intr_establish now takes *two* ipls. One at which the handler should run,
and one in which the interrupt should get blocked.
All the following changes were provided by Ian Dall:
* Remove SCN_HSOFT. Now that the pc532's software interrupt system is running
from int14, this won't work anymore.
* Add code to detect uart type (SCN2681, SCC2692 or SCC26C92).
* Cleanup my RECOVER mess. Thank's to Ian Dall for reading the datasheet
and removing all the unnecessary RECOVERs.
* Cleanup scnrxintr.
* Implement scnhiwflow.
* Do not use automatic RTS. This and scnhiflow and some changes to the
interrupt system suggested by Ian fix the scn overrun problem at 57600
baud.
* intr_establish now takes *two* ipls. One at which the handler should run,
and one in which the interrupt should get blocked.
* Make transfersize configurable for input and output. Default the input
transfersize to 128 bytes. That way interrupts won't be disabled for more
then about 128us-256us for slow targets. This is necessary to prevent scn
fifo overruns. Cleanup the pdma code. Thank's to Ian Dall for these
changes.
* Make it work on 30mhz machines.
* Configure MSDOSFS, CD9660, KERNFS, NFSCLIENT and INET.
* Configure SCSI-cds, slip and ppp.
* Update for mi ramdisk driver.
* Initialize iv_level for all interrupts.
* Protect the call to the sir-handler with splraise.
* intr_establish now takes *two* ipls. One at which the handler should run,
and one in which the interrupt should get blocked.
* Compute iv_mask for all interrupts in intr_establish.
on indirect-config busses a (permanent) softc that they could share
between 'match' and 'attach' routines:
Define __BROKEN_INDIRECT_CONFIG so that old autoconfiguration
interfaces are used, until drivers are converted to use the new
interfaces (actually, converted back to use the _older_ interfaces)
which prohibit indirect configuration devices from receiving a softc
in their match routine that they can share with their attach routine.
Lets users over-ride with makeoptions COPTS="..." in kernel config files.
Leave `mandatory' flags (like -msoft-float which on m68k enforces no
FP in kernel) in CFLAGS.
* Support for the new softint mechanism. Softints are now requested by
triggering an unused ICU hardware interrupt. The idea for this was
contributed by Phil Budne.