Commit Graph

208 Commits

Author SHA1 Message Date
mark fc9ce1cfd8 Recognise both Icubed and Acorn versions of the EtherH netslot card as
they have different podule ID's.
Always attach the driver even if it appears to fail the tx test as there
appear to be a collection of cards around that will fail this tx test but
will actually work ok - This problem needs further investigation.
1997-07-28 17:54:07 +00:00
mark d910d89af8 Rebuilt from podules rev 1.6. 1997-07-28 17:48:45 +00:00
mark be04b11f72 Added various new podule manufacturer ID's and product ID's. 1997-07-28 17:47:53 +00:00
jtk b4777471db use locator defines in "locators.h" to index cf_loc[] 1997-07-17 01:52:54 +00:00
mark 82de5bb16d Add missing ifp variable in eaintr() following new ARP merge. 1997-03-19 02:45:06 +00:00
mark e8e11b85c0 Fix missing bracket introduced in new ARP system merge. 1997-03-19 02:43:03 +00:00
is 07b064e02e New ARP system, supports IPv4 over any hardware link.
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.
1997-03-15 18:09:08 +00:00
mark 045ff1df99 Initial commit of the rapide driver. This driver provides support for the
RapIDE32 EIDE interface podules.
This driver currently only support issue 2 podules.
1997-02-23 04:00:31 +00:00
mark a47555862b Initial commit of the icside driver. This driver provides support for
the ICS IDEA IDE interface podules.
1997-02-23 03:57:45 +00:00
mark 66f1f203e3 Synchronise with podules files. 1997-02-23 03:52:29 +00:00
mark 6c7cc537c9 Add ID for ANT EtherM network slot interfaces. 1997-02-23 03:51:19 +00:00
mark e4316a91d0 Rebuilt from podules file. 1997-02-18 03:08:59 +00:00
mark c569d5e23f Added new podule ID's for ICubed etherlan interfaces.
Fixed typo in A448 title string.
1997-02-18 03:08:04 +00:00
mark 83697fa8b9 Added a field sc_ixfer to the sfas_softc structure to allow the standard
sfas ixfer() routine to be overridden with a card specific one.
1997-02-11 03:33:46 +00:00
mark 06f80904ec Set the sc_ixfer function pointer to the default sfas_ixfer() function
during initialisation if the pointer is NULL.
Use the sc_ixfer function pointer in the sfas softc when doing
immediate polled transfers.
1997-02-04 06:57:47 +00:00
mark ed854d0d12 Fix the declarations of the interrupt handlers to accept void * pointers
as the only argument and cast this as appropriate now that the function
pointers to the interrupt registration functions are fully prototyped.
1997-01-28 04:20:58 +00:00
mark ad1a9d7854 Now that the generic sfas code works fine under interrupts, disable polling
behaviour of the driver.
1997-01-28 04:10:47 +00:00
mark 77ecaec2ca Implement bus space interfaces for set multiple, set region and copy 1997-01-26 01:55:02 +00:00
mark 4c5fff219e Added a new nexus flag ESC_NF_RETRY_SELECT. This flag is used to indicate
that a unit select did not complete and needs to be retried. Selection will
be retried following a disconnection if this flag is set. The function
esc_select_unit() will set/clear this flag depending on when a selection
completed or not.
1997-01-18 01:57:18 +00:00
mark c5cc357f5d Added a new nexus flag SFAS_NF_RETRY_SELECT. This flag is used to indicate
that a unit select did not complete and needs to be retried. Selection will
be retried following a disconnection if this flag is set. The function
sfas_select_unit() will set/clear this flag depending on when a selection
completed or not.
1997-01-18 01:38:05 +00:00
mark 12af47bc6a The powertec card uses a 40MHz clock frequency.
Report the driver as polling at attach time is so configured.
1997-01-17 01:12:26 +00:00
mark cf799895fc Pass a podule bus space tag in the pa_iot field of the podule
attach args.
1997-01-17 01:07:58 +00:00
mark 5c03890971 Updated for the new bus space implementation.
Added a pa_iot field to the podule attach args structure.
1997-01-17 01:04:02 +00:00
mark 6caa7a0b4b Implement a set of functions that provide bus space mapping and
read/write routines for the podulebus.
1997-01-17 01:00:47 +00:00
mark fd643704d1 Minor changes (inline -> __inline)) 1997-01-06 04:47:53 +00:00
mark 2bb8f07910 Added a probe for a podule is EASI space if it is not found in normal
podule space.
Fixed a bug in the reading of bytes from network slot cards that prevented
the correct reading of the network slot ROM description.
config code now allows duplicable devices to be attached.
1997-01-03 23:30:30 +00:00
mark 4065dc201f Increased the podule description length from 47 to 63 characters.
Commented some structure members.
1997-01-03 23:27:31 +00:00
mark dc9795f6e8 Removed a lurking ; from a #define line. 1997-01-03 23:26:22 +00:00
mark e1395f3c17 Updated credits. 1997-01-03 23:24:48 +00:00
mark 0b49070ad5 Rebuild from latest podules list. 1997-01-03 23:22:03 +00:00
mark 180ca73617 Added new manufacturer and podule ID's. 1997-01-03 23:21:28 +00:00
thorpej d502e68402 Fill in sc_link.max_target 1996-12-10 21:27:16 +00:00
mark 2883a694fa Check the IOMD ID in the podulebus probe to make sure the IOMD supports
a podulebus.
Make sure the podulebus driver conforms to the Acorn expansion card
specification:
  - Probe the podule bus using sync access cycles rather than slow access
    cycles.
  - Read the podulebus header/ROM using sync access cycles rather than slow
    access cycles
1996-11-23 03:42:39 +00:00
mark 374d51c858 Rebuild from latest podules list. 1996-11-23 03:27:15 +00:00
mark ecdf4c14bd Added a number of new manufacturer ID's and some new podule ID's. 1996-11-23 03:23:49 +00:00
mark de6db9f206 Added fix from Jasper Wallace th=at solves the bus hang ups caused when
DMA to the card going wrong.
1996-10-30 01:50:01 +00:00
mark 0bec347c79 Allocate a DMA channel number when setting up the podule descriptors.
The DMA channel is determined by the IOMD present in the machine and the
podule slot number.
1996-10-30 00:07:42 +00:00
mark c11a34daff Added a dma_channel field to the podulebus structure so that the
podulebus driver can allocate the DMA channels for the podules located.
1996-10-30 00:01:05 +00:00
mark 29465fe28a Updated the acknowledgement comments. 1996-10-29 23:52:59 +00:00
mark f5a1f76622 Remove the bufferable bit from the pte for the DMA buffer. 1996-10-29 23:37:39 +00:00
mark c544086b51 Initial commit of the Connect32 SCSI driver. This driver uses the esc
generic driver.
Currently this is only a polling driver.
1996-10-15 00:08:43 +00:00
mark 43fce8325b Initial commit of the esc generic SCSI driver code. This is a driver for
the AMD AM53CF94 Enhanced SCSI Controller. The code is based on the
SFAS216 driver as these chips are very similar. There are several
differences but more will follow.
1996-10-15 00:05:04 +00:00
mark bc6649505b Add definition of configuration register B. 1996-10-14 23:57:11 +00:00
mark 8b97be16ab Include podules.h for definitions of manufacturer and podule ids.
Use definitions from this file for match_podule() rather than hardcoded
values.
Added packet filter support.
1996-10-14 23:55:01 +00:00
mark 91de56b1b6 Include podules.h for definitions of manufacturer and podule ids.
Use definitions from this file for match_podule() rather than hardcoded
values.
Added a routine asc_minphys() in preparation for driver changes when on
card DMA support is added.
1996-10-14 23:53:58 +00:00
mark 56250a75b0 Include podules.h for definitions of manufacturer and podule ids.
Use definitions from this file for match_podule() rather than hardcoded
values.
Reset the interface following a bad packet. This fixes some jams when
the driver failed to recover properly after a bad packet.
1996-10-14 23:50:20 +00:00
mark ce36c22380 Include podules.h and use the manufacturer and identities defined there
for calling match_podule() rather than using hardcoded values.
1996-10-14 23:42:17 +00:00
mark a7c4273ef8 Fix comments. 1996-10-14 23:35:41 +00:00
mark b7b4a80fa1 Remove old-style disk instrumentation. 1996-10-14 23:31:29 +00:00
mark cb1d61078c Use tlb_flush() rather than tlbflush(). 1996-10-14 23:29:47 +00:00
mark 9d8ffb415e Removed all the podule manufacturer and id structures and included
podule_data.h instead.
Removed the dead function find_podule().
The 0xf5 entry in the podules chunck directory is now searched for and
the podule description associated with this entry is placed in the
description field of the podule structure.
Generally tidied up all the comments.
1996-10-14 23:26:48 +00:00
mark ccdc440eac Added a description field to the podule structure. This is filled in
at config time with the podule description (if any) that is extracted
from the podule ROM.
1996-10-14 23:21:22 +00:00
mark 7e9e37b0bf Sync with master podule list. 1996-10-14 23:17:09 +00:00
mark 1698c1854e Initial commit of master list of podule manufacturers and ids along
with tools for building podules.h and podule_data.h from this file.
1996-10-14 23:16:07 +00:00
christos ca36ac9ef4 backout previous kprintf change 1996-10-13 03:05:43 +00:00
christos 60dd5ceebe printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:06:28 +00:00
cgd 71ad30d0e9 (1) set scsi_link channel to either the appropriate channel (if a
multi-channel driver), or to SCSI_CHANNEL_ONLY_ONE if a
    single-channel driver.
(2) use scsiprint() rather than a locally-defined autoconfig print
    function, and kill any locally-defined print function.
1996-08-28 18:59:15 +00:00
cgd 2a73ef60b7 change cfprint_t type definition to take a const char *, rather than
a char *, because that's what was really intended, and because
if the print function modifies the string, various things could become
unhappy (so the string should _not_ be modified).
1996-08-27 21:53:46 +00:00
mark 64c91a1cc3 Report EASI space timings when probing the podule bus. 1996-08-21 19:46:47 +00:00
mark e8f3059a07 Define EASI space cycle types.
Added macro for setting the EASE space cycle time for a podule.
1996-08-21 19:44:53 +00:00
mark 103a43ae29 Get the interrupt flags address from sc->sc_specific.sc_podule rather
than sc->sc_podule.
1996-06-13 18:29:45 +00:00
mark 31c4f7d574 Only read beyond the first byte of the podule header if we know that
an extended header is present i.e. don't assume an extended header as
however unlikely there could be a podule that doesn't have one.
Calculate an absolute address for the podule's interrupt mask rather
than leaving it relative to the base address of the podule.
If the interrupt status pointers are not present or are zero then
used the default bits as specified in the podule specification to
determine if the podule is interrupting.
1996-06-12 21:09:55 +00:00
mark 857439698b Claim the interrupt when leaving the interrupt handler as there can
only ever be a owner of the netslot interrupt.
Don't declare ebintr() as static.
1996-06-12 21:01:56 +00:00
mark 27ab616466 Don't claim the podule interrupts but pass them on in case of
chained podule interrupt handlers.
Fill out the ih_maskaddr and ih_maskbits fields in the interrupt handler
structure so that interrupt dispatcher knows where to look to determine
if the handler should be called.
General code tidy up and source code formatting.
1996-06-12 20:59:10 +00:00
mark 4dd0dabfca Don't claim the podule interrupts but pass them on in case of
chained podule interrupt handlers.
Fill out the ih_maskaddr and ih_maskbits fields in the interrupt handler
structure so that interrupt dispatcher knows where to look to determine
if the handler should be called.
1996-06-12 20:46:58 +00:00
mark 8477987501 Fixed lots and lots and lots of -Wall compiler warnings. 1996-06-03 22:44:53 +00:00
mark bfe01da7b5 Tidied up the prototype declarations. 1996-06-03 22:41:14 +00:00
mark 4732cc6c39 Make sure that the ethernet address has been set correctly before
attaching the interface to the network code.
1996-06-03 22:39:12 +00:00
mark d7ef096470 Probe for both Atomwide and ANT ether3 podules. 1996-05-17 16:24:03 +00:00
mark 8a9255ea4b Recognise ANT ether3 podules. 1996-05-17 16:17:21 +00:00
mark 525cc1eebc Fixed the printing of the podule description from the chunk directory
for unrecognised podules.
1996-05-16 19:05:35 +00:00
thorpej 748810b06d Changed struct ifnet to have a pointer to the softc of the underlying
device and a printable "external name" (name + unit number), thus eliminating
if_name and if_unit.  Updated interface to (*if_watchdog)() and (*if_start)()
to take a struct ifnet *, rather than a unit number.
1996-05-07 00:46:37 +00:00
mark 58ff5333d7 Fixed -Wall compiler warnings. 1996-05-06 00:11:16 +00:00
mark 8f285e6977 Added prototype for sfasintr(). 1996-05-06 00:09:28 +00:00
mark 81e79a0787 Recognise the 24i16 digitiser podule.
Fixed -Wall compiler warnings.
1996-05-06 00:04:06 +00:00
mark 6e054ed22f Probe functions rewritten to support new podulebus configuration code.
matchpodule() is now used to test podule_attach_args for correct id's.
Moved the probing code that used the softc into the attach function.
Fixed compiler warnings generated with -Wall.
1996-04-26 22:44:00 +00:00
mark fff1823ed8 Probe functions rewritten to support new podulebus configuration code.
matchpodule() is now used to test podule_attach_args for correct id's.
1996-04-26 22:41:24 +00:00
mark 9a12d19953 Probe functions rewritten to support new podulebus configuration code.
matchpodule() is now used to test podule_attach_args for correct id's.
Fixed compiler warnings generated with -Wall.
1996-04-26 22:38:11 +00:00
mark 4a3ceede5a Added function prototype for matchpodule(). 1996-04-26 22:34:02 +00:00
mark c18452b410 podulebus configuration code rewritten. Junked config_scan() from
the podulebus attach function.
For each podule found, config_found_sm() is now called. Device drivers
now only need to look at the podule_attach_args information during
the probe.
A new function matchpodule() has been added for use in the
podule device driver probe functions.
1996-04-26 22:32:36 +00:00
mark 027b04a250 Fixed compiler warnings obtained with -Wall. 1996-04-26 22:25:56 +00:00
mark e59df39537 Added asc_dump() function to dump the information gathered by the sbic
driver.
1996-04-19 20:13:56 +00:00
mark 0d0b8de238 Code fixes to get the sbic debugging code to compile. 1996-04-19 20:09:50 +00:00
mark 8345378c81 Define name for interrupt handler. 1996-03-27 22:07:26 +00:00
mark b4aaf66b7a Remove prototype for Debugger() as this is defined in systm.h. 1996-03-27 22:05:19 +00:00
mark 6245ffb5e5 Define a name for the sbic interrupt handler. 1996-03-27 21:51:22 +00:00
mark 44d3ebb603 Define a name for the network interrupt handlers for use with vmstat
-i.
1996-03-27 21:49:26 +00:00
mark 9adb4b41cb Make this work following the attachment changes. 1996-03-20 18:49:56 +00:00
mark 6973956563 Fixed references to match function. 1996-03-20 18:46:58 +00:00
mark 8ac78e8698 RCS Id police. 1996-03-18 21:23:09 +00:00
thorpej 5c67e5fad9 New device attachment scheme:
- split softc size and match/attach out from cfdriver into
	  a new struct cfattach.

	- new "attach" directive for files.*.  May specify the name of
	  the cfattach structure, so that devices may be easily attached
	  to parents with different autoconfiguration semantics.
1996-03-17 01:16:48 +00:00
mark d389b21913 Added boot time override for the memory test during probing. This
memory test apparently causes hangups on some etherH interfaces.
Until this can be debugged with an offending interface the memory
test can be bypassed.
1996-03-13 20:52:35 +00:00
mark c117a7f133 Only call the debugger if DDB is defined. 1996-03-13 20:28:50 +00:00
mark 1014c385d8 Added NetBSD tag. 1996-03-08 16:24:51 +00:00
mark 00af8622e0 Added NetBSD tag. Reformatted source kernel in line with the style
guide.
1996-03-08 16:22:38 +00:00
mark 095bb565ba Files for the new Acorn SCSI driver that uses the generic SBIC driver
code. This is a much better version that does not trash your HD.
1996-03-07 23:54:28 +00:00
mark 3506c48c2a opps forgot to remove this as well. Part of the old and BUGGED Acorn
SCSI driver.
1996-03-07 23:50:33 +00:00
mark 169a40e0cf These files represent the old and BUGGED Acorn SCSI driver.
They are replaced with a new Acorn SCSI driver based on the SBIC
generic SCSI code.
1996-03-07 23:45:24 +00:00
mark 385c194369 Added #ifndef guards round the timeout macros so values can be
overridden in the config file.
1996-03-06 23:56:59 +00:00
mark 34e0ef97c0 Code reformatted to make it a bit more readable and brings it inline
with a lot of the style guide.
1996-03-06 23:53:13 +00:00
mark 8429ee71c5 Initial commit of generic sbic (WD3393) SCSI driver code based on the
amiga sbic driver.
1996-03-06 23:44:09 +00:00
mark a66ed3abac Initial commit of generic sbic (WD3393) SCSI driver code based on the
amiga sbic driver.
1996-03-06 23:44:06 +00:00
mark a629b79a66 Fixed reporting of errors when claiming podule interrupts. 1996-03-06 23:33:14 +00:00
mark c3833aaabe Opps, what was a delay() prototype doing here. 1996-02-22 23:25:10 +00:00
mark f134e05316 Fixed performance problems caused by the ring buffer becoming flodded when
multiple packets were being received due to not flushing newly received
packets from the ring buffer between receiving an interupt and pulling
in the packets.
1996-02-15 21:48:59 +00:00
mycroft fc9d84fb46 assym.s -> assym.h
(Some ports did this already.)
1996-02-02 02:34:09 +00:00
mycroft 88e512b693 LOCORE -> _LOCORE 1996-02-01 22:28:24 +00:00
mark 0705e7dfd1 Initial commit of the NetBSD/arm32 port. 1996-01-31 23:24:54 +00:00