Home | History | Annotate | only in /src/sys/arch/i386/eisa
History log of /src/sys/arch/i386/eisa
RevisionDateAuthorComments
 1.3 11-Sep-1996  explorer remove unneeded placeholder
 1.2 27-Oct-1994  cgd new RCS ID format.
 1.1 19-Apr-1993  cgd compile needs to be kept in the distribution
 1.45 27-Jan-1995  mycroft Clean up deleted files.
 1.44 18-Jan-1995  mycroft Initialize host_stat and target_stat properly.
 1.43 13-Jan-1995  mycroft Simplify some sanity checks.
 1.42 03-Jan-1995  mycroft Add interrupt sharing types.
 1.41 28-Dec-1994  mycroft Numerous changes. Many bugs fixed, better autoconfig, a few new features.
 1.40 04-Nov-1994  mycroft No longer needs icu.h.
 1.39 04-Nov-1994  mycroft Change all of the uses of IRQ{0-15} and bit masks to use plain numbers
rather than bit shifting.
 1.38 27-Oct-1994  cgd new RCS ID format.
 1.37 22-Aug-1994  mycroft Disable EISA reset, for now.
 1.36 07-Aug-1994  mycroft Remove diagnostic.
 1.35 28-Jul-1994  mycroft Redo some of the EISA config stuff.
 1.34 27-Jul-1994  mycroft Normalize.
 1.33 27-Jul-1994  mycroft Enable IRQ probing.
 1.32 05-May-1994  mycroft branches: 1.32.2;
Remove now-bogus cast.
 1.31 05-May-1994  cgd lots of changes: prototype migration, move lots of variables, definitions,
and structure elements around. kill some unnecessary type and macro
definitions. standardize clock handling. More changes than you'd want.
 1.30 29-Apr-1994  cgd change timeout/untimeout/wakeup/sleep/tsleep args to void *
 1.29 20-Apr-1994  mycroft Change structure member names.
 1.28 08-Apr-1994  mycroft Fix return values from some interrupt routines.
 1.27 07-Apr-1994  mycroft Implement dynamic IRQ configuration and IRQ sharing. Inline spl*() calls.
Reorganize and clean up the relevant code.
 1.26 05-Apr-1994  mycroft Increase ahb_send_mbox timeout.
 1.25 02-Apr-1994  mycroft Minor code cleanup.
 1.24 30-Mar-1994  mycroft Print out board revision info.
 1.23 29-Mar-1994  mycroft New SCSI system, based on Julian's more recent work.
 1.22 25-Mar-1994  mycroft Put controller target in scsi_switch.
 1.21 12-Mar-1994  mycroft Fix bug in last change.
 1.20 12-Mar-1994  mycroft Update to match config(8).
 1.19 10-Mar-1994  mycroft Updates to match config(8).
 1.18 08-Mar-1994  mycroft #include cpu.h in all files which use spl*().
 1.17 03-Jan-1994  mycroft Use KERNBASE, not 0xfe000000.
 1.16 20-Dec-1993  davidb Fixed bug where with two or more SCSI controllers of the same type, you
could not have devices at the same ID on each bus.
This patch not directly applicable to magnum branch, which is using Julian's
new SCSI code.
 1.15 20-Dec-1993  mycroft Canonicalize all #includes, and add pio.h where appropriate.
 1.14 28-Jul-1993  cgd branches: 1.14.2;
incorporate changes from 0-9-base to 0-9-ALPHA
 1.13 17-Jul-1993  mycroft branches: 1.13.2;
Make these files GCC 2 happy.
 1.12 09-Jun-1993  deraadt minor silliness related to two or more controllers
 1.11 22-May-1993  cgd add rcsids to everything and clean up headers
 1.10 04-May-1993  deraadt support for making dev->id_alive be set, this is for iostat to
find disk devices. wee bit of a kludge. sub-device attach()
routines must now return 1 for successful attach(), 0 otherwise.
Other bsd's do this too..
 1.9 02-May-1993  deraadt fixed silly typo.
 1.8 26-Apr-1993  cgd id for scsi_attach must be an int.
 1.7 15-Apr-1993  deraadt ioconf changes, see previous cvs's that dumped core
 1.6 15-Apr-1993  glass NDDB made a re-appearance....
 1.5 12-Apr-1993  deraadt new scsi subsystem.
changes also in config/mkioconf.c & sys/scsi/*
 1.4 10-Apr-1993  glass fixed to be compliant, subservient, and to take advantage of the newly
hacked config(8)
 1.3 09-Apr-1993  cgd have probe return size of io space on successful return, rather
than simply 1.
 1.2 08-Apr-1993  deraadt dmesg output at boottime now tries to print out information as
soon as it is available. The output looks much more like Sunos.
 1.1 21-Mar-1993  cgd after 0.2.2 "stable" patches applied
 1.13.2.1 27-Jul-1993  deraadt two extra splx()'s noticed by <hd@world.std.com> go away.
 1.14.2.7 25-Mar-1994  mycroft Stylistic changes.
 1.14.2.6 02-Feb-1994  mycroft Change some structure names.
 1.14.2.5 02-Feb-1994  mycroft Change second arg of probe to self.
 1.14.2.4 02-Feb-1994  mycroft Fix potential bogon if card is in last slot.
 1.14.2.3 29-Nov-1993  mycroft Add some bzero()s before it bites me.
 1.14.2.2 29-Nov-1993  mycroft Converted. Needs testing.
 1.14.2.1 25-Nov-1993  mycroft New code from Julian, not yet converted.
 1.32.2.4 22-Aug-1994  mycroft update from trunk
 1.32.2.3 07-Aug-1994  mycroft update from trunk
 1.32.2.2 28-Jul-1994  cgd from trunk.
 1.32.2.1 27-Jul-1994  cgd from trunk, per mycroft
 1.42 01-May-2024  andvar Make eisa_machdep build without NIOAPIC > 0 by extracting irq definition.
 1.41 18-Jun-2022  andvar fix typos in word "functions" in comments, mainly s/fuctions/functions/.
 1.40 27-Apr-2015  knakahara fix i386 build for MSI/MSI-X support code.
 1.39 29-Mar-2014  christos branches: 1.39.6;
make pci_intr_string and eisa_intr_string take a buffer and a length
instead of relying in local static storage.
 1.38 18-Jun-2013  uebayasi branches: 1.38.2;
port-i386/47907: kernel trap when using EISA with I/O APIC on i386

Patch from Felix Deichmann.

XXX pullup netbsd-6
 1.37 01-Sep-2011  christos branches: 1.37.2; 1.37.8; 1.37.12;
Add bus_dma overrides. From dyoung
 1.36 27-Aug-2011  christos use c99 struct initializers
 1.35 01-Jul-2011  dyoung #include <sys/bus.h> instead of <machine/bus.h>.
 1.34 17-Nov-2009  dyoung Don't #include <sys/extent.h> any more because this module doesn't use
struct extent any more.
 1.33 17-Nov-2009  dyoung Delete unused functions eisa_mem_alloc() and eisa_mem_free().
 1.32 27-Jun-2008  cegger branches: 1.32.10;
struct device * -> device_t
 1.31 30-May-2008  ad branches: 1.31.2;
Add a 'known_mpsafe' argument to intr_establish().
 1.30 28-Apr-2008  martin branches: 1.30.2;
Remove clause 3 and 4 from TNF licenses
 1.29 22-Feb-2007  matt branches: 1.29.42; 1.29.44; 1.29.46;
Fix lossage from boolean_t -> bool and updated x86 bus_dma.
 1.28 16-Nov-2006  christos branches: 1.28.4;
__unused removal on arguments; approved by core.
 1.27 12-Oct-2006  christos - sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
 1.26 19-Feb-2006  thorpej branches: 1.26.14; 1.26.16;
Use aprint_*().
 1.25 11-Dec-2005  christos branches: 1.25.2; 1.25.4; 1.25.6;
merge ktrace-lwp.
 1.24 16-Apr-2005  yamt branches: 1.24.2;
tweak x86 bus_dma code so that it can be used by xen port.

- distinguish paddr_t and bus_addr_t.
for xen, use bus_addr_t in the sense of machine address.
- move _X86_BUS_DMA_PRIVATE part of bus.h into bus_private.h.
- remove special handling of xen_shm. we can always grab
machine address from pte.
 1.23 03-Feb-2005  perry branches: 1.23.4;
de-__P, partially ANSIfy
 1.22 22-Apr-2004  itojun branches: 1.22.4; 1.22.6;
sprintf -> snprintf
 1.21 30-Oct-2003  fvdl * keep track of PCI buses that aren't known by firmware, but are found
by NetBSD
* use this info in in intr_find_mpmapping
* get rid of the last argument to intr_find_mpmapping, it was redundant
 1.20 16-Oct-2003  fvdl Add hooks and structures to allow the MP table intr mapping code a
better shot at finding a mapping. For PCI interrupts, if a bus
has no mappings, try its parent, with the swizzled pin, and the
bridge's device number.
 1.19 08-May-2003  fvdl branches: 1.19.2;
Adapt tag initialisation to the new fields that were added recently.
 1.18 26-Feb-2003  fvdl Adapt for i386/x86 change.
 1.17 22-Nov-2002  fvdl New interrupt code. The basic idea behind it is to hide the differences
in interrupt controllers in struct pic, and try to keep as much
common code as possible. At the lowest (asm) level, this is done
with CPP macros.

The main structure is now struct intrsource, describing an established
interrupt line, of any kind (soft/hard local apic/legacy apic/IO apic).
For quick masking, there may be a maximum of 32 sources per CPU.
Sources can be assigned to any CPU in the MP case, though currently they
all go to the boot CPU.
 1.16 01-Oct-2002  fvdl Merge Bill Sommerfeld's i386 MP branch. This code has some known
caveats, but works quite well in a lot of MP cases, and all
UP cases that I have tested. Parts of this will hopefully be
reworked in the not-too-distant future.
 1.15 27-Sep-2002  provos remove trailing \n in panic(). approved perry.
 1.14 15-Nov-2001  lukem add RCSID
 1.13 15-May-2001  lukem branches: 1.13.2;
delint: don't try & return something from void eisa_intr_disestablish()
 1.12 11-Aug-2000  thorpej branches: 1.12.2;
Add functions to read EISA configuration data for MEM, IRQ, DMA, and IO.

XXX Just error stubs on the i386 right now -- someone needs to write
XXX EISA BIOS code for i386.
 1.11 04-Jun-2000  cgd branches: 1.11.2;
Implement the more flexiable `evcnt' interface as discussed (briefly) on
tech-kern and now documented in evcnt(9).
 1.10 03-Jun-1998  thorpej branches: 1.10.14; 1.10.22; 1.10.24;
EISA and PCI do not require bouncing; specify a bounce threshold of 0.
 1.9 26-Apr-1998  thorpej Garbage-collect the DMA tag's "_cookie" member; it's not used for anything.
 1.8 06-Feb-1998  thorpej Erg, typi.
 1.7 06-Feb-1998  thorpej Notify other machine-dependent code that the EISA bus has been configured
in the attach hook.
 1.6 06-Jun-1997  thorpej Pull thorpej-bus-dma branch into mainline.
 1.5 21-Oct-1996  thorpej branches: 1.5.8;
Implement eisa_mem_{alloc,free}(), a method for allocating/freeing
EISA bus physical address space.

This i386 implementation allocates system physical address space
after the end of RAM.
 1.4 13-Oct-1996  christos backout previous kprintf changes
 1.3 11-Oct-1996  christos printf -> kprintf, sprintf -> ksprintf
 1.2 11-Apr-1996  cgd update for addition of a machine-dependent cookie as the first argument
to isa_intr_{,dis}establish().
 1.1 09-Apr-1996  cgd make the EISA code look a bit more like the PCI code, in the way
the bus is configured, interrupts are handled, etc. define
eisa_chipset_tag_t and eisa_intr_handle_t types, and the following
functions:
eisa_attach_hook()
eisa_maxslots()
eisa_intr_map()
eisa_intr_string()
eisa_intr_establish()
eisa_intr_disestablish()
to do the right things for the i386.
 1.5.8.2 18-May-1997  thorpej Don't provide the dma tag in eisa_attach_hook().
 1.5.8.1 13-May-1997  thorpej Provide a bus dma tag to children via eisa_attach_hook().
 1.10.24.1 22-Jun-2000  minoura Sync w/ netbsd-1-5-base.
 1.10.22.6 29-Dec-2001  sommerfeld Yet another mergeup.

New work:
- Frank van der Linden's tlb shootdown fix.
Mainline functionality merged:
- IrDA
- Kernel RCSID's
- Transmeta CPU support
- ACPI
- XMM register access through procfs
 1.10.22.5 23-May-2001  sommerfeld Merge branch with tonight's current.
boots multiuser.
 1.10.22.4 07-Jan-2001  sommerfeld Snapshot of merge-in-progress with -current.

[Not expected to build]. Catch up with the last N months worth of
changes to -current.
 1.10.22.3 21-Aug-2000  sommerfeld Give systems reporting EISA interrupts in the mpbios tables a prayer
of working.
 1.10.22.2 25-Jun-2000  sommerfeld Merge up to just-post-1.5 -current
 1.10.22.1 29-Feb-2000  sommerfeld (Untested) code for EISA interrupt routing.
 1.10.14.1 20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.11.2.1 11-Aug-2000  thorpej Pullup from trunk:
Add EISA configuration readining infrastructure.
 1.12.2.4 11-Dec-2002  thorpej Sync with HEAD.
 1.12.2.3 18-Oct-2002  nathanw Catch up to -current.
 1.12.2.2 08-Jan-2002  nathanw Catch up to -current.
 1.12.2.1 21-Jun-2001  nathanw Catch up to -current.
 1.13.2.2 10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.13.2.1 10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.19.2.5 10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.19.2.4 04-Feb-2005  skrll Sync with HEAD.
 1.19.2.3 21-Sep-2004  skrll Fix the sync with head I botched.
 1.19.2.2 18-Sep-2004  skrll Sync with HEAD.
 1.19.2.1 03-Aug-2004  skrll Sync with HEAD
 1.22.6.1 12-Feb-2005  yamt sync with head.
 1.22.4.1 29-Apr-2005  kent sync with -current
 1.23.4.1 21-Apr-2005  tron Pull up revision 1.24 (requested by yamt in ticket #175):
tweak x86 bus_dma code so that it can be used by xen port.
- distinguish paddr_t and bus_addr_t.
for xen, use bus_addr_t in the sense of machine address.
- move _X86_BUS_DMA_PRIVATE part of bus.h into bus_private.h.
- remove special handling of xen_shm. we can always grab
machine address from pte.
 1.24.2.3 26-Feb-2007  yamt sync with head.
 1.24.2.2 30-Dec-2006  yamt sync with head.
 1.24.2.1 21-Jun-2006  yamt sync with head.
 1.25.6.1 22-Apr-2006  simonb Sync with head.
 1.25.4.1 09-Sep-2006  rpaulo sync with head
 1.25.2.1 01-Mar-2006  yamt sync with head.
 1.26.16.2 10-Dec-2006  yamt sync with head.
 1.26.16.1 22-Oct-2006  yamt sync with head
 1.26.14.1 18-Nov-2006  ad Sync with head.
 1.28.4.1 27-Feb-2007  yamt - sync with head.
- move sched_changepri back to kern_synch.c as it doesn't know PPQ anymore.
 1.29.46.3 11-Mar-2010  yamt sync with head
 1.29.46.2 04-May-2009  yamt sync with head.
 1.29.46.1 16-May-2008  yamt sync with head.
 1.29.44.2 04-Jun-2008  yamt sync with head
 1.29.44.1 18-May-2008  yamt sync with head.
 1.29.42.2 29-Jun-2008  mjf Sync with HEAD.
 1.29.42.1 02-Jun-2008  mjf Sync with HEAD.
 1.30.2.2 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.30.2.1 23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.31.2.1 27-Jun-2008  simonb Sync with head.
 1.32.10.2 27-Aug-2011  jym Sync with HEAD. Most notably: uvm/pmap work done by rmind@, and MP Xen
work of cherry@.

No regression observed on suspend/restore.
 1.32.10.1 24-Oct-2010  jym Sync with HEAD
 1.37.12.3 03-Dec-2017  jdolecek update from HEAD
 1.37.12.2 20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.37.12.1 23-Jun-2013  tls resync from head
 1.37.8.1 23-Jun-2013  bouyer Pull up following revision(s) (requested by uebayasi in ticket #904):
sys/arch/i386/eisa/eisa_machdep.c: revision 1.38
port-i386/47907: kernel trap when using EISA with I/O APIC on i386
Patch from Felix Deichmann.
XXX pullup netbsd-6
 1.37.2.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.38.2.1 18-May-2014  rmind sync with head
 1.39.6.1 06-Jun-2015  skrll Sync with HEAD
 1.5 19-Mar-1999  cgd Moved to eisa_machdep.h,v
 1.4 06-Jun-1997  thorpej Pull thorpej-bus-dma branch into mainline.
 1.3 21-Oct-1996  thorpej branches: 1.3.8;
Implement eisa_mem_{alloc,free}(), a method for allocating/freeing
EISA bus physical address space.

This i386 implementation allocates system physical address space
after the end of RAM.
 1.2 09-Apr-1996  cgd make the EISA code look a bit more like the PCI code, in the way
the bus is configured, interrupts are handled, etc. define
eisa_chipset_tag_t and eisa_intr_handle_t types, and the following
functions:
eisa_attach_hook()
eisa_maxslots()
eisa_intr_map()
eisa_intr_string()
eisa_intr_establish()
eisa_intr_disestablish()
to do the right things for the i386.
 1.1 04-Mar-1996  cgd Attach isa, eisa, and pci to mainbus now, rather than root. The i386
now has a single device tree (rather than a forest). Also, attach
EISA only if it's present, and attach in order: PCI, EISA, ISA (most
specific to least specific).
 1.3.8.1 18-May-1997  thorpej Add an external declaration for the eisa dma tag.

RSS XML Feed