1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-19 10:53:58 +00:00
freebsd/sys/i386/isa
Bruce Evans 2dafbfcbab Added calibration the i8254 and the i586 clocks agains the RTC at boot
time.  The results are currently ignored unless certain temporary options
are used.

Added sysctls to support reading and writing the clock frequency variables
(not the frequencies themselves).  Writing is supposed to atomically
adjust all related variables.

machdep.c:
Fixed spelling of a function name in a comment so that I can log this
message which should have been with the previous commit.

Initialize `cpu_class' earlier so that it can be used in startrtclock()
instead of in calibrate_cyclecounter() (which no longer exists).

Removed range checking of `cpu'.  It is always initialized to CPU_XXX
so it is less likely to be out of bounds than most variables.

clock.h:
Removed I586_CYCLECTR().  Use rdtsc() instead.

clock.c:
TIMER_FREQ is now a variable timer_freq that defaults to the old value of
TIMER_FREQ.  #define'ing TIMER_FREQ should still work and may be the best
way of setting the frequency.

Calibration involves counting cycles while watching the RTC for one second.
This gives values correct to within (a few ppm) + (the innaccuracy of the
RTC) on my systems.
1996-05-01 08:39:02 +00:00
..
ic Changes to the Digi/Arnet SYNC driver: 1996-03-17 00:29:35 +00:00
matcd Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
pcvt Oops, include opt_pcvt_hdr.h before the key value in it is used. 1996-04-13 16:59:29 +00:00
sound Added a note about OPTi 82C929 based cards. 1996-04-11 15:34:22 +00:00
aha1542.c Removed now-unused #includes of <machine/cpu.h>. They were for bootverbose 1996-04-07 17:32:42 +00:00
aic6360.c Cleanse the SCSI subsystem of its internally defined types 1996-03-10 07:04:48 +00:00
asc.c Declared `unittab' as static. It was bogusly shared between the asc and 1996-04-13 12:18:45 +00:00
ascreg.h added ID strings so we know what version we have... 1995-09-08 18:30:34 +00:00
atapi.c Eliminated sloppy common-style declarations. Now there are no duplicated 1996-04-13 12:45:57 +00:00
atapi.h Eliminated sloppy common-style declarations. Now there are no duplicated 1996-04-13 12:45:57 +00:00
b004.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
b004.h Fix a bunch of spelling errors in the comment fields of 1996-01-30 23:02:38 +00:00
bt5xx-445.c Override the unit number passed into us in the isa_device structure with 1996-03-31 03:06:20 +00:00
clock.c Added calibration the i8254 and the i586 clocks agains the RTC at boot 1996-05-01 08:39:02 +00:00
cronyx.c Staticize and cleanup. 1995-12-10 13:40:44 +00:00
ctx.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
ctxreg.h
cx.c Completed function declarations and/or added prototypes and/or added 1995-12-15 00:54:32 +00:00
cxreg.h Fix a bunch of spelling errors in the comment fields of 1996-01-30 23:02:38 +00:00
cy.c Fixed ownerships of callout devices. 1996-03-27 20:03:32 +00:00
cyreg.h Rewrite: 1995-07-05 12:15:52 +00:00
diskslice_machdep.c Removed now-unused #includes of <machine/cpu.h>. They were for bootverbose 1996-04-07 17:32:42 +00:00
elink.c
elink.h
fd.c Update drivers to use isa_dma_acquire() and isa_dma_release() 1996-04-08 19:40:57 +00:00
fdc.h
fdreg.h
ft.c Completed function declarations and/or added prototypes and/or added 1995-12-15 00:54:32 +00:00
ftreg.h
gpib.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
gpib.h
gpibreg.h
gsc.c Declared `unittab' as static. It was bogusly shared between the asc and 1996-04-13 12:18:45 +00:00
gscreg.h
icu.h
icu.s Removed undocumented an unused APM_SLOWSTART code. 1996-03-12 05:44:25 +00:00
if_ar.c Improve the handling of receive errors. Fix a nasty bug in the receive 1996-04-12 19:57:44 +00:00
if_arregs.h Changes to the Digi/Arnet SYNC driver: 1996-03-17 00:29:35 +00:00
if_cx.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
if_ed.c Format the already applied PCCARD additions to use KNF form. No 1996-04-23 18:36:56 +00:00
if_edreg.h Fix a bunch of spelling errors in the comment fields of 1996-01-30 23:02:38 +00:00
if_eg.c Removed never-used #includes of <machine/cpu.h>. Many were apparently 1996-04-07 17:39:28 +00:00
if_egreg.h
if_el.c Clean up Ethernet drivers: 1996-02-06 18:51:28 +00:00
if_elreg.h Fix a bunch of spelling errors in the comment fields of 1996-01-30 23:02:38 +00:00
if_ep.c Fix media type determination. 1996-02-28 17:19:04 +00:00
if_epreg.h Fix media type determination. 1996-02-28 17:19:04 +00:00
if_fe.c Format the already applied PCCARD additions to use KNF form. No 1996-04-23 18:36:56 +00:00
if_fereg.h This is a revised fe, Ethernet driver for MB8696x based adapters. 1996-03-17 08:36:38 +00:00
if_ie507.h
if_ie.c Clean up Ethernet drivers: 1996-02-06 18:51:28 +00:00
if_iereg.h
if_ix.c Clean up Ethernet drivers: 1996-02-06 18:51:28 +00:00
if_ixreg.h Fix a bunch of spelling errors in the comment fields of 1996-01-30 23:02:38 +00:00
if_le.c Remove reference to ac_ipaddr, which was being used to 1996-03-23 19:34:12 +00:00
if_lnc.c Clean up Ethernet drivers: 1996-02-06 18:51:28 +00:00
if_lnc.h Fix a bunch of spelling errors in the comment fields of 1996-01-30 23:02:38 +00:00
if_ze.c Clean up Ethernet drivers: 1996-02-06 18:51:28 +00:00
if_zp.c Now that ac->ac_ipaddr and arpwhohas() no longer exist, remove the 1996-03-23 21:32:39 +00:00
if_zpreg.h Fix a bunch of spelling errors in the comment fields of 1996-01-30 23:02:38 +00:00
isa_device.h Add a lock for DMA Channels to prevent two devices from using the same DMA 1996-04-08 19:38:57 +00:00
isa.c Change the devconf description from "ISA or EISA bus" to "ISA bus" now 1996-04-20 21:22:32 +00:00
isa.h Fix a bunch of spelling errors in the comment fields of 1996-01-30 23:02:38 +00:00
joy.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
kbd.h
kbdtables.h Change RUKEYMAP sligtly 1996-01-25 16:37:20 +00:00
labpc.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
lpt.c Work around a braindead signal handling in many newer HP printers. 1996-04-04 12:28:36 +00:00
lptreg.h
mcd.c Removed now-unused #includes of <machine/cpu.h>. They were for bootverbose 1996-04-07 17:32:42 +00:00
mcdreg.h Calculate TOC size to match what scsi cd says. 1996-02-02 20:50:04 +00:00
mse.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
ncr5380.c Cleanse the SCSI subsystem of its internally defined types 1996-03-10 07:04:48 +00:00
npx.c Choose a different name to hold the option definition.. The original one 1996-01-06 23:10:57 +00:00
pcaudio.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
pcibus.c Make pcibus_check() ignore Device/Vendor IDs of all 0. 1996-04-30 21:37:21 +00:00
pcic.h Fix a bunch of spelling errors in the comment fields of 1996-01-30 23:02:38 +00:00
pcicx.c Staticize and cleanup. 1995-12-10 13:40:44 +00:00
prof_machdep.c Added a $Id$ keyword. Bruce still needs to put a copyright notice 1996-04-08 16:41:06 +00:00
psm.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
qcam.c slight re-ordering to allow the qcam to compile with devfs enabled. 1996-04-29 20:05:52 +00:00
qcamdefs.h Add support for /very/ experimental -e (exposure) option. 1996-03-21 08:22:59 +00:00
qcamio.c Add in linux support for the quickcam driver bottom half and 1996-04-17 09:00:53 +00:00
qcamreg.h Update the Connectix QuickCam driver to match my current work. 1996-03-02 03:48:19 +00:00
random_machdep.c Use rdtsc() function instead of inline essembler. 1996-04-07 18:16:26 +00:00
rc.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
rcreg.h Allow any speed from 0..76800 1995-08-02 10:17:35 +00:00
README.le
rtc.h BIOS manufacturers don't seem to have a unique idea about 2.88 MB 1995-10-09 15:00:39 +00:00
scd.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
scdreg.h Fix a bunch of spelling errors in the comment fields of 1996-01-30 23:02:38 +00:00
seagate.c Cleanse the SCSI subsystem of its internally defined types 1996-03-10 07:04:48 +00:00
si_code.c Drat! I forgot to add this part of the Specialix Driver.. 1995-08-10 08:10:57 +00:00
si.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
sio.c Format the already applied PCCARD additions to use KNF form. No 1996-04-23 18:36:56 +00:00
sioreg.h Staticize and cleanup. 1995-12-10 13:40:44 +00:00
sireg.h Mainly cosmetic cleanups... It now uses more consistant message reporting 1995-11-28 02:07:36 +00:00
spigot.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
spkr.c Fixed name of /dev/speaker (it's not spkr). 1996-03-27 19:07:33 +00:00
syscons.c Fixed a race that caused panics in kernel printfs when the screen timeout 1996-05-01 03:58:21 +00:00
syscons.h Fix a bunch of spelling errors in the comment fields of 1996-01-30 23:02:38 +00:00
timerreg.h
tw.c Switched from using devfs_add_sw() to using devfs_add_swf() 1996-03-28 14:29:52 +00:00
ultra14f.c Cleanse the SCSI subsystem of its internally defined types 1996-03-10 07:04:48 +00:00
vector.s Moved AUTO_EOI_[12] and most sio and pcvt options out of the makefile. 1996-04-11 21:18:49 +00:00
wcd.c Replace usage of buf->b_actf with queue.3 and buf->b_act. 1996-04-08 07:56:42 +00:00
wd7000.c Removed never-used #includes of <machine/cpu.h>. Many were apparently 1996-04-07 17:39:28 +00:00
wd.c Whoops, shouldn't really have been here, but what the heck: remove some 1996-04-18 21:37:43 +00:00
wdreg.h Implement a prototype interface to bus-master IDE DMA on the Triton 1996-01-28 22:16:20 +00:00
wt.c Update drivers to use isa_dma_acquire() and isa_dma_release() 1996-04-08 19:40:57 +00:00
wtreg.h . move out the error and status register def's for wt into 1996-02-22 00:31:49 +00:00

$Id: README.le,v 1.1 1994/10/01 20:15:43 wollman Exp $

----------------

This driver is in no way supported by Digital Equipment.  See the
disclaimers in the sources for more.

This driver supports all the DEC EtherWORKS III NICs (DE203, DE204,
and DE205) and the later DEC EtherWORKS II NICs (DE200, DE201, DE202,
DE422).  DEPCA-style boards prior to the DE200 have not been tested
and may not work.  

This driver is not EISA aware.  If you are using a DE422 or have
configured the EtherWORKS III in EISA mode, make sure you specify
the I/O port properly as this driver will *not* probe for it.
(The I/O port should be 0xNc00 where N is the EISA slot number).

This driver does not yet use the full 128KB allowed by the DE422.
Someday, it might. For EtherWORKS III NICs, the driver will override
the EEPROM setting of MemoryMode and *always* use the 2K for best
results.

The driver includes full support for both BPF and IP Multicast.

[All paths are relative to the top of sys source area, usually
/usr/src/sys.]

The following files need to be moved into their respective
directories:

	if_le.c	   -->	i386/isa
	am7990.h   -->	i386/isa/ic
	lemac.h	   -->	i386/isa/ic

You will need to apply the patch provided in pat.files.i386 to
i386/conf/files.i386 file.

After that is done you will need to edit your config file (in
i386/conf) and a line similar to:

device le0 at isa? port 0x300 net irq 5 iomem 0xd0000 vector le_intr

[The above line assumes the board is still at the factory defaults.]
Change the port, irq, and iomem value if needed to your configuration.

Now you are ready to rebuild your kernel, reboot, and see if the
driver can configure your board.  When the system boots, you will
hopefully something close to:

    EtherWORKS II:

	le0 at 0x300-0x30f irq 5 maddr 0xd0000 msize 65536 on isa
	le0: DE202 ethernet address 08:00:2b:2d:c8:45
	bpf: le0 attached

    EtherWORKS III:

	le0 at 0x320-0x33f irq 5 maddr 0xd0000 msize 2048 on isa
	le0: DE205-AB ethernet address 08:00:2b:bb:23:e0
	le0 attached

in the startup log.  If so, the board configured properly and
should be ready to use.

--
Mail:	thomas@lkg.dec.com
URL:	http://ftp.digital.com/~thomas/