Commit Graph

2391 Commits

Author SHA1 Message Date
mjacob 81df08ddef Use a SNS REGISTER FC4 TYPE subcommand to register with the name server.
This means we should be able to work with McData switches now. Change
ISPASYNC_PDB_CHANGED to ISPASYNC_LOGGED_INOUT (more descriptive). Allow
F-Port topologies to use target ids 0..125 to log into fabric devices.
Yet again fool around with defaul WWN stuff.
2001-01-09 18:54:06 +00:00
thorpej 7bebf9a408 On ADMtek chips, don't just idle the chip when programming the
multicast filter.  These chips don't like to go into "idle" state
very much, so we have to use the big hammer and reset the chip,
instead.
2001-01-08 22:12:57 +00:00
thorpej e9bb880aaf The ADMtek AN985 "ghosts" the single built-in PHY at every MII address.
Work around this by having a custom media init routine that limits the
search to MII address 1.
2001-01-08 21:40:29 +00:00
thorpej b79ddef845 Also ignore receiver errors if VLAN_MTU is enabled; the 21040 appears
to require this.
2001-01-07 23:29:12 +00:00
martin 6b82e7fe42 64bit police.
Rumors say there are archs without ISA busses, so avoid including
(uneccesarily) isa bus headers in MI files.
XXX this is the minimal solution, layer interface calls will have
XXX to be revisited later
2001-01-07 21:47:24 +00:00
sommerfeld 4522010c18 Make certain we see COM_MPLOCK, MULTIPROCESSOR, and LOCKDEBUG
to avoid any confusion about whether or not we have a lock in the softc.
2001-01-07 18:09:26 +00:00
nathanw a30debae05 Add description of the pinout of a standard DB-25 parallel port,
relative to the bits described here.
2001-01-06 17:16:19 +00:00
takemura 1c518d67a0 Add WDC_CAPABILITY_SINGLE_DRIVE to ignore secound drive. Wdc on pcmcia will
be attached with this flag.
Some CF Card (for ex. IBM MicroDrive and SanDisk) doesn't seem to implement
drive select command. In this case, you can't eliminate ghost drive properly.
So you should use this flag to ignore the ghost by force.
2001-01-06 14:55:49 +00:00
martin c3cb638bca Initial import of ISDN4BSD release 0.96 2001-01-05 12:49:52 +00:00
mjacob 6cb4620b76 (some of these changes were made in the previous revision- oops)
Say which mailbox command times out (polled or interrupting). Also,
give them a bit more time to timeout (5 seconds instead of 2).
2001-01-05 07:03:54 +00:00
mjacob 9d7f6e219f Ian McDonnell <apriori@world.std.com> made me see the error of my ways.
*Cough*. Ahem. I hadn't been setting error to XS_SENSE when there was
a check condition. Major blunder.
2001-01-05 07:02:00 +00:00
augustss 5f3c3e0d6f Add definitions for some bits in ID and STATUS regs. 2001-01-05 03:32:46 +00:00
augustss cc9f003455 Add some codecs. 2001-01-05 03:32:11 +00:00
mjacob 462ff196a4 [ dummy checkin to add to previous CVS ]
It's probably not really a compiler bug- somebody pointed out
that it was the kernel making strings readonly. But I do think it's
a bug. The actual code was really more like:

	char *revname;

	...

	revname = "2X00";

	...
	revname[1] = '2'; <<<<<<<<< BOOOM


The variable revname is not a const. If I had said

	const char *revname = "2X00"
	...
	revname[1] = '2';

that would indeed be breaking const rules.
2000-12-30 19:47:20 +00:00
mjacob 8adadc9bda There's a compiler bug for sparc64 that makes the construct:
char *foo = "XXXX";
	...
	foo[1] = 'Y';

blow up (in the kernel) with the 2nd assignment. Work around it here-
it's probably just as well- I was spending more in cpu instructions doing
the assignment than I was saving in string space (it would have been
cheap on a pdp11 or a 68k- but the address loads and assignments on something
like sparc or alpha way outweigh the savings in space. Tsk.).
2000-12-30 19:30:09 +00:00
wiz 1796fa4bd8 Fix pasto in comment. 2000-12-30 16:55:24 +00:00
wiz 2ad3fd958d Merge 2.18 to trunk. 2000-12-30 16:52:36 +00:00
mjacob d4c32f2a63 Apply nearly all of Bill Sommerfeld's -Wformat patches. The one
change I didn't take is the %llu format- I can't have a common
across multiple platform module assume a %ll argument capability-
which really pointed out that I shouldn't be trying to *print*
something which could long long.
2000-12-28 22:27:46 +00:00
mjacob 0dae1b3d9a Turn ISP_LOCK/ISP_UNLOCK into ISP_ILOCK/ISP_IUNLOCK macros for routines
that are driven from a timeout (oops, they're on the interrupt stack).
2000-12-28 21:37:04 +00:00
mjacob d81d268d13 Use the ISP_CFG_NOINIT flag to decide whether to complete the full init
process steps (this is used in some platforms where you want to bring
the adapter to ready (to get a WWN, e.g.) , but not engage either target
or initiator mode until some later time). Set the correct defaults WWNs.
2000-12-28 08:26:12 +00:00
mjacob a5498e1514 add an ISP_CFG_NOINIT flag 2000-12-28 08:24:17 +00:00
mjacob b551237fb6 add two minor ATIO2 offsets 2000-12-28 08:23:48 +00:00
mjacob 829a533bfb Restore the change fvdl made. Sorry about not noticing it. The
header (about 'Maintainer') is supposed to help encourage folks
to coordinate with me.
2000-12-28 08:11:52 +00:00
bjh21 a48c9194bb Print the newline after the memory test. This makes it clear that the delay's
related to this driver rather than the next device to be attached.
2000-12-23 16:37:20 +00:00
wiz c8b0b91e7e Fix pathnames in comment. 2000-12-23 01:37:57 +00:00
onoe 2079f9d276 improve an_cmd() slightly:
- strip unnecessary loop to get command result status
- ack command after clearing busy bit

XXX: it still sometimes get timeout to get status(0xff50) or statistics(0xff68)
     probably due to heavy load of firmware in receiving.
2000-12-21 15:37:18 +00:00
onoe c6607f2fef move definition of AN_INTRS from anreg.h to anvar.h
strip off AN_EV_CMD from AN_INTRS because it causes severe performance
problem.
2000-12-20 23:30:36 +00:00
briggs 9a73f8b22b Make _sure_ that we do not use selatn3 when it is not present. Fixes a
problem on pmax reported by Izumi Tsutsui.  Tested also on alpha and mac68k.
2000-12-20 15:49:03 +00:00
eeh d1ab475964 Make the driver negotiate sync again and remove some (hopefully) superfluous
DELAY()s.
2000-12-20 03:19:34 +00:00
pk c6bd81f8a6 Fix reversed logic when setting setting sync-negotiation ability flag 2000-12-19 14:08:17 +00:00
onoe 684fe5613d cleanup attach procedure, use tsleep() instead of long delay (and ignore
timeouts).
stop driver after suspend.
XXX: should use command interrupt but no document...
XXX: status update sometimes failed perhaps due to collision.
	(RID 0xff50 or 0xff68 access failed)
2000-12-19 08:00:55 +00:00
thorpej ba4b6847df Fix a problem with the ALTQ changes that can cause bogus memory
refernces.  Problem reported by Luke Mewburn.
2000-12-19 00:06:01 +00:00
thorpej 4dbafc4a71 Remove an IF_PREPEND() that slipped through. 2000-12-18 23:57:13 +00:00
briggs 7ea0edc288 If the target rejects a tag message, turn off tagged transfers for that target.
Also, adjust message/command construction in ncr53c9x_select() to work no
matter how the structure alignment works out (needed at least for m68k).
Tested by me on mac68k & alpha, and sanity-checked by eeh.
2000-12-18 23:39:44 +00:00
thorpej df6482a625 ALTQ'ify. 2000-12-18 20:32:08 +00:00
thorpej cc6e5d835f Adapt to ALTQ-related API changes (driver is not fully ALTQ'ified yet). 2000-12-18 20:23:04 +00:00
eeh 519aef8cf4 Make sure bits in the flags are disjoint. 2000-12-17 06:18:21 +00:00
briggs d25ab824c8 Back out previous change. It appears to be in error. There is something
else that is causing the esp driver on the mac68k to fail miserably.
2000-12-17 04:38:29 +00:00
briggs 0debc0e91e At least the 53c96 does not work with the selatn3 command. Disable it
for both the 53c94 and 53c96.  This also addresses PR port-mac68k/11716.
2000-12-17 03:29:03 +00:00
thorpej 8489b5e4cf if_qflush() -> IFQ_PURGE() 2000-12-14 17:48:23 +00:00
thorpej 6b16911a43 ALTQ'ify. 2000-12-14 06:27:23 +00:00
onoe a7125e435c Add PCI version of Aironet, not tested at all.
ISA/ISApnp version won't come since I don't know about isa...
2000-12-14 04:11:25 +00:00
onoe d5dd5139a3 Support 80211NWKEY and 80211POWER ioctl. 2000-12-13 20:21:10 +00:00
thorpej c5293456da Adapt to bpfattach() changes, and further centralize the bpfattach()
and bpfdetach() calls into link-type subroutines where possible.
2000-12-12 18:00:22 +00:00
onoe aa513e6338 add support(?) for PC4500 which is a 2Mbps product.
Though ifconfig -m no longer show 5Mbps/11Mbps for PC4500 by this fix,
I cannot find how to set fixed transmit speed to the firmware.
FreeBSD version of driver apparently ignore the value set by ancontrol(8).
2000-12-12 05:34:02 +00:00
onoe 99675e3dde cleanup headers: remove duplicate definition, split reg.h/var.h. 2000-12-12 05:11:15 +00:00
thorpej 41d6a62c1c s/Ethernet/802.11/ when printing the address. 2000-12-12 01:32:34 +00:00
onoe c63194c7af To fix panic at "ifconfig an0 down",
define ANCACHE in if_an_pcmcia.c (XXX)
try not to access registers after interface down.
2000-12-11 23:58:55 +00:00
onoe 9c25e9208a Port 'an' driver for Aironet PC4500/PC4800 IEEE802.11 card from FreeBSD.
This is very adhoc work for IETF meeting.
- Since it seems that 'an' and 'wi' have similar hardware, low level
  functions should be shared.
- There are PCI/ISA cards of Aironet but not supported yet.
- The wiconfig interface is changed so that wiconfig cannot be used.
- 'ancontrol' of FreeBSD is not ported.
- Only infrastructure mode is tested.
- WEP is not supported.

Though I only have an Aironet card, Cisco card should be expected to work.
2000-12-11 23:16:50 +00:00
ws 8132c2a6aa Fix the previous differently:
The intent was to protect the full range of ports on the board by the
barriers.  But the start address was wrong.  Fix it.

While here, change two other barriers to also protect the full range
(not only the nic ports), and add yet another similar barrier.
2000-12-11 17:07:38 +00:00
ad 2940363203 Report soft-errors-per-unit once per minute at most. 2000-12-11 13:19:50 +00:00
eeh af770220fa Fix for chips that don't grok NCRCMD_SELATN3. 2000-12-10 19:25:07 +00:00
mjacob af2807f9f7 Finally fix this driver to be sensible about the ENDIAN dance. It's not
quite simply a question of the Qlogic being little endian and having
to have stuff swapped on big endian machines- it also has to do with the
fact that the SBus and PCI DMA layouts are wierd with respect to this.

At any rate, now finally fixed- works on Mac G4, tested it on a SS10
for sparc, checked on alpha to see if I've broken anything, and as
soon as I get another spare afternoon I'll finally install a sparc64
version which should just work (as it'll be like the Mac).
2000-12-09 08:06:31 +00:00
tsutsui fd97da6384 Add (missed) bus_dmemem_free() in rtk_detach(). 2000-12-09 02:02:20 +00:00
tsutsui e8bfefe60c - Since rtk_rxeof() was rewritten, we don't have to reserve a few bytes
before the Rx buffer.
- Reduce delay on EEPROM access.
- Some more cosmetics.
2000-12-05 11:11:49 +00:00
fvdl d26269e0a6 'error' was not initialized in the _ioctl function, potentially returning
!= 0 values in the non-error case.
2000-12-04 11:18:49 +00:00
fvdl 0888965bb7 Remove uninitialized variable usage (it was redundant anyway). 2000-12-04 11:05:32 +00:00
eeh 03e0f9950a Fix bug in non-dma select code i added. 2000-12-03 23:25:24 +00:00
jlam 9cfd45593f Set range of memory protected by read/write bus space barriers to the
correct size, instead of extending past the mapped region.
2000-12-03 23:15:23 +00:00
tsutsui 311a1a842c Clean up receive interrupt routine:
- Use MGETHDR + MCLGET + memcpy rathar than m_devget + m_adj + m_copyback.
- Call bus_dmamap_sync(9) correctly for Rx buffer.

Mostly from thorpej's if_rtp.c.
2000-12-03 14:24:17 +00:00
fvdl 2b69243845 Add AHC_NO_TAGS option to switch off tagged queueing. Done because
tagged queueing has a severe performance impact (60%) on write
throughput with UBC. Needs investigation.
2000-12-02 14:53:01 +00:00
augustss a51ea43fd6 Make this compile again (on i386). 2000-12-01 04:37:54 +00:00
pk d736ce5086 We don't need <sys/proc.h>, <sys/user.h> and <machine/cpu.h>. 2000-11-30 23:21:39 +00:00
pk 55fa60c3e5 De-__P(). 2000-11-30 23:12:43 +00:00
pk 58b6f2ef7d KNF patrol && De-__P(). 2000-11-30 23:06:44 +00:00
pk 03903e1da8 KNF patrol. 2000-11-30 23:01:03 +00:00
tsutsui 786dc5161c Clarify RX status header length and some cosmetics. 2000-11-30 15:51:57 +00:00
tsutsui fd4d074b27 After rev 1.16 rtk driver uses the CRC from the chip,
so no need to adjust Rx address for it. Fixes kern/11301.
2000-11-30 15:33:04 +00:00
thorpej 64222ad03a Fix some printf formats, and remove SPARC-specific debugging stuff. 2000-11-30 14:41:46 +00:00
pk 7006bcd449 Fix two cases of reversed arguments to printf(); 2000-11-30 09:58:03 +00:00
eeh 9e7aa98aa6 Add TAG QUEUE support to the ncr53c9x driver. 2000-11-30 00:19:25 +00:00
thorpej 997701c6c1 Define additional AC'97 registers. 2000-11-28 16:54:17 +00:00
ad 57ea462da2 lsu -> ld, by popular request. 2000-11-26 17:44:02 +00:00
takemura 3c9d9276dc Add new powerhook argument values, PWR_SOFTSUSPEND, PWR_SOFTSTANDBY and
PWR_SOFTRESUME. Apm calls powerhook with the values in normal interrupt
priority level while others are protected with splhigh().
2000-11-26 11:08:57 +00:00
soren 290a66c213 Reduce probe noise. 2000-11-21 05:23:37 +00:00
sommerfeld acc196c4a9 Initialize ring buffer pointers when the ring buffer is allocated.
(comsoft() can be invoked before comopen() on serial consoles; a character
received before the console is opened "for real" can result in a fatal trap
unless the ring buffer pointers are initialized early)
2000-11-18 15:46:23 +00:00
bouyer 42681a6a9f Supports ETHERCAP_VLAN_MTU. Tested on sbus hme on Ultra/1.
Thanks to Andrei Petrov for the hint !
2000-11-17 19:08:00 +00:00
thorpej b84f740be0 Move bpfattach()/bpfdetach() calls into ether_ifattach()/ether_ifdetach(). 2000-11-15 01:02:11 +00:00
thorpej 60f33f91c2 Pull in <uvm/uvm_extern.h> 2000-11-14 18:35:10 +00:00
thorpej 275539f03c NBPG -> PAGE_SIZE 2000-11-14 18:21:00 +00:00
pk 4c54ce2034 Define ncr53c9x_ioctl() and use it to start sync negotiation. 2000-11-13 15:24:22 +00:00
pk ad9bda9339 Change `nvram size' data type to `bus_size_t'. 2000-11-11 11:59:42 +00:00
pk 035ceca5b2 Add note about time-of-day and interval timer programming on this chip
are combined into the same (write-only!) control register.
2000-11-11 11:18:07 +00:00
pk 526def8fd1 Add a function to retrieve the size of the on-chip NVRAM area. 2000-11-11 11:03:31 +00:00
eeh faa5920bd2 Use the MI console magic sequence framework. 2000-11-08 23:13:03 +00:00
ad 142ab5b1ec Move lsu stuff to more logical locations, and push queueing into the lsu
driver.
2000-11-08 19:20:33 +00:00
wrstuden 88cbfbe36d Move guts of pciide_print_modes() to wdc_print_modes() so that non-pciide
wdc drivers (like macppc's obio IDE interface) can use it. Also add
support to both wd attach line and to wdc_print_modes() to print
Ultra/{33,66,100} for respective UDMA modes (From Manuel Bouyer).
2000-11-08 17:57:36 +00:00
thorpej d764c4d540 One more fix to multicast hash computation. Submitter confirms that
with this fix, multicast does indeed work properly on the EPIC.

From Zdenek Salvet <salvet@ics.muni.cz>.
2000-11-08 15:20:29 +00:00
chs b6b3ee8657 remove what looks to be a bit of leftover debug code. 2000-11-05 23:00:10 +00:00
thorpej aac73109ae Feh, fix st00p1d braino in last. 2000-11-05 05:41:25 +00:00
scw 3b5fce6c46 Invert the sense of i82586_init()'s return value so that
it matches what ether_ioctl() expects.
2000-11-04 19:48:38 +00:00
veego 232ac6b3d1 Print the vendor and chip id in the DPRINTF with 0x%x and not just %d. 2000-11-04 18:28:19 +00:00
thorpej 05d5f37522 Shadow the AC'97 codec registers. This adds two capabilities:
* support devices that crash when reading the codec registers; a flags
  interface is added to the host interface and one flag is defined
  (AC97_HOST_DONT_READ).
* new API (restore_ports) for restoring the user's settings.  This
  can be useful after an APM resume after a suspend to disk.

From OpenBSD.
2000-11-04 08:07:14 +00:00
thorpej 0bb6525f5b Add some more codec IDs. From OpenBSD. 2000-11-04 05:45:57 +00:00
tsutsui 39355e9743 Make this compilie with LANCE_REVC_BUG. 2000-11-03 06:21:32 +00:00
tsutsui d952450835 Wrap function declaration with "#ifndef sun3/#endif"
because sun3 does not have bus_space(9) support and
it have not switched to MI intersil7170 driver.

XXX We should split this into intersil7170{reg,var}.h ?
2000-11-03 05:23:07 +00:00
bjh21 930c4cf062 First attempt at multicast stuff. I suspect it doesn't work.
Use ether_ioctl -- saves 300 bytes of text.
2000-11-03 00:25:36 +00:00
bjh21 42e564ed45 Remove unnecessary includes.
Add a compiled-in RCSID.
2000-11-02 21:56:46 +00:00
bjh21 13234acd0f Convert to using ether_ioctl().
G/C huge swathes of unused code and outdated comments.
2000-11-02 21:42:41 +00:00
eeh 2a860a3de9 Adapt to the new line discipline scheme. 2000-11-01 23:54:57 +00:00
eeh f9a51c7b15 Clean up a #define that doesn't belong. Oops. That's what I get for
working this late.
2000-10-31 08:06:14 +00:00
eeh 37486bb837 Get the bpp driver to work properly. 2000-10-31 06:32:06 +00:00
mjl a7fcd8b686 Fix hanging token ring when data size is multiple of 514, using
patch in PR/11316 by YAMAMOTO Takashi.
This fixes random hangs I experienced, and probably also
remedies PR/11300 and PR/9321.
2000-10-31 01:22:08 +00:00
bouyer fc92601259 Fixes related to QUEUE FULL status:
- move status handling in siop_scsicmd_end(), it's better than in siop_intr()
- define 2 internal SIOP status, for "no status reported by device" and
  reset condition
- add a list of "urgent" command, to be executed before the list of command
  queued the normal way; this is used for command which got aborted
  by a QUEUE FULL and have to be requeued in order.
- Don't accept to send a Q_TAG message not immediatly folowing a IDENTIFY
2000-10-23 23:18:10 +00:00
bouyer 7777f61cbe Rearrange for script changes (scheduler core in main script, command part
of the scheduler in command table).
Add tagged command queuing support.
2000-10-23 14:56:16 +00:00
onoe 644aa13a51 Fixed the value of TULIPF_DBO; which was accidentaly shared with the same
value of TULIPF_BLE.  Pointed out by Enami-san.
2000-10-23 04:05:21 +00:00
bouyer 2ebf1a0cd0 Ops, sync the script DMA map when the script RAM *don't* exists. 2000-10-21 13:56:17 +00:00
bouyer e999ecae48 Support ETHERCAP_VLAN_MTU. Tested on a sparc 2 with:
le0 at sbus0 slot 0 offset 0xc00000 level 5: address 00:00:3b:86:19:92
le0: 8 receive buffers, 2 transmit buffers
2000-10-20 09:40:26 +00:00
mrg 0c6aa8d3ed ensure DMA mappings are not mapped streamable. fixes ethernet problems on
ultrasparc sbus class machines.  from eeh.
2000-10-20 06:08:02 +00:00
ad 67fe5fbbb4 Update for lsu; untested. 2000-10-19 14:28:46 +00:00
bouyer d239df5374 Adapt for script change: don't assume Ent_lun_switch_entry == 0 2000-10-19 07:22:06 +00:00
bouyer f629a0ae67 Ops, add proper bus_dmamap_sync() calls for reselect switch operations. 2000-10-18 20:06:54 +00:00
bouyer 9d3f5d7fbd Adapt for new lun switch script.
Implement SCBUSACCEL ioctl.
Snapshot of work in progress on tagged queuing: we can send/receive
queue tag messages. Infrastructure to manage multiple commands per
devices not here yet.
2000-10-18 17:06:52 +00:00
bouyer 9836ff3913 Looks like frame size isn't checked; just say we can do VLAN MTU.
Tested with a SMC9432TX.
2000-10-18 16:49:13 +00:00
bouyer f87b1573c3 Support ETHERCAP_VLAN_MTU by ignoring the EX_UPD_ERROR and EX_UPD_OVERSIZED
status bits. Tested with a 3c905-TX.
2000-10-17 16:16:52 +00:00
bouyer 5cc13a273b Support ETHERCAP_VLAN_MTU. It seems the chip doesn't check the frame size.
Tested with a NetVin 5000 and a WD8013EBT.
2000-10-17 16:14:42 +00:00
mjacob c64069308b Make changes relevant to changes in WWN defaults.
Also fix egregious bug where we would never decrement
the islocked recursion counter. I guess this means
that we don't recurse on this platform! All of this should
go away when we have real lock primitives to use in drivers.
2000-10-16 05:18:15 +00:00
mjacob c7c2783178 Change some of the WWN macros- eliminate PORT_FROM_NODE_WWN and make
sure we have a DEFAULT_{PORT,NODE}WWN and ISP_{NODE,PORT}WWN macro
as a requirement for all platforms.
2000-10-16 05:16:56 +00:00
mjacob ffdbddbd79 Add in commented-out hiwater measurement.
Remove egregious older bug which had us refusing to log into
fabric devices unless they were NL ports. Whuff.
2000-10-16 05:15:55 +00:00
mjacob 298ec0ecd9 Clarify/cleanup how node and port names are derived from nvram. Remove
clause 2 of licence. Remember to print initiator ID (LOGINFO level).
2000-10-16 05:15:05 +00:00
thorpej 4318834442 Don't trim off the FCS, pass it up. 2000-10-15 19:56:31 +00:00
bjh21 83666f01fa Shuffle printfs around so they look right when we've got a drive attached. 2000-10-14 23:45:57 +00:00
matt b885772956 The input packet has the FCS attached to set M_HASFCS before passing up.
Revove eh = ... since it's no longer used.
2000-10-14 20:06:02 +00:00
thorpej 2198741306 Use ether_ioctl(). 2000-10-11 16:57:45 +00:00
onoe fcde56c9ba Add flags to indicate that tlp_init() should set some more BUSMODE bits.
TULIPF_BLE	/* data is big endian */
	TULIPF_DBO	/* descriptor is big endian */
These setting is required for Big-endian bus front-end (such as APbus for
newsmips) to work with tulip.  Also,
	sc_maxburst
member is added to the tulip_softc to limit the maximum burst length.
This member defaults to zero which means no restriction for burst length.
2000-10-11 14:59:52 +00:00
itojun b69ea2a63d make it work right on non-32bit arch. from kjc@csl.sony.co.jp 2000-10-10 10:15:00 +00:00
enami db6fba6bdf Move inclusion of rnd.h and sys/rnd.h from tulip.c to tulipvar.h. 2000-10-09 14:31:01 +00:00
enami ca88e2b6bd Make tulip a random source. 2000-10-09 12:54:28 +00:00
nathanw 34f3869cdc Change int->bus_addr_t in com_kgdb_attach() prototype.
Compiles again with KGDB enabled.
2000-10-06 21:12:01 +00:00
bouyer f6bf6762ab Ops, disable debugging messages. 2000-10-06 20:07:10 +00:00
bouyer 171adcf634 Fix recurent typo: shed->sched 2000-10-06 16:39:04 +00:00
bouyer e353a6d9b2 Adapt for reselect handling from the script. While here, fix typo
(SIOP_SCXFER -> SIOP_SXFER).
2000-10-06 16:35:13 +00:00
bouyer 2e6cb6a878 When 802.1Q MTU, we have to ignore the Frame Too Long errors, and there's no
need to disable RWT and JAB.
2000-10-05 07:22:43 +00:00
tsutsui d11ef545cd Enable sanity checks in mk48txx_gettime().
(Many news68k have dead NVRAM.)
2000-10-04 17:00:45 +00:00
thorpej 5fcde4924f Support ETHERCAP_VLAN_MTU by igorning Receive Watchdog and Transmit Jabber
errors if VLANs are configured on the interface.
2000-10-03 23:35:55 +00:00
thorpej cbfe7605c9 Support ETHERCAP_VLAN_MTU by doing extra error checking upon packet
reception and saving other "bad frames" (i.e. ones that are larger
than the standard Ethernet frame length) if we have VLANs configured
on the interface.
2000-10-03 23:35:02 +00:00
simonb 5d4fa9b0ce Revert rev 1.31 of bha.c (and associtated changes in the headers and
config glue files).

Fixes PR kern/9841.  Tested by Tracy J. Di Marco White with a bt948
and 6 disks.
2000-10-03 14:07:36 +00:00
tsutsui 91959d389e Typo in comment. 2000-10-03 13:54:02 +00:00
tsutsui 33e8ebeef3 1970 -> POSIX_BASE_YEAR 2000-10-03 13:52:39 +00:00
thorpej 7edd5d54bc Add support for the ADMtek AN983 and AN985. 2000-10-03 04:32:00 +00:00
itojun 1af3d80bce fix compilation without INET. 2000-10-02 03:53:07 +00:00
thorpej 7ca3fb9ef0 Move the check for "promisc + unicast + not for us" into ether_input(),
and change Ethernet drivers to always pass all received frames to
ether_input() (with a few exceptions, which are documented in the
code).
2000-10-01 23:32:39 +00:00
tsutsui 710c43c745 6 -> ETHER_ADDR_LEN 2000-09-28 10:56:57 +00:00
tsutsui ab9b015dce 6 -> ETHER_ADDR_LEN 2000-09-28 10:10:14 +00:00
sommerfeld 91178eae70 Add missing '&& defined(COM_MPLOCK)' 2000-09-26 14:12:42 +00:00
enami d52ba1b85f Fix merge lossage in disabled code. 2000-09-25 01:07:25 +00:00
jdolecek 5eb24d5dd0 am7990[0]_intr(): only print the "entering with isr=XX" debug message
if compiled with LEDEBUG > 1
2000-09-24 18:37:22 +00:00
jdolecek 5fea96167f use new generic bootverbose instead of local definition 2000-09-24 12:37:03 +00:00
sommerfeld 6a71867356 Add `COM_MPLOCK' option to use a device-instance-specific spinlocks
when running at splserial().  This is a temporary measure (until
there's a MP-safe interrupt handling structure); until then, it should
be used when MULTIPROCESSOR and IPL_SERIAL > IPL_SCHED.
2000-09-23 17:17:11 +00:00
bjh21 a48f581877 Substantial overhaul, factoring out of common code, removal of redundancy
and general cleanup.  Still not a beautiful driver, but one I'd be willing to
introduce to my parents now.
2000-09-23 15:13:02 +00:00
bjh21 65c1db338c paddr_t -> bus_addr_t in prototypes too. 2000-09-23 12:08:16 +00:00
eeh d651adf44a paddr_t -> bus_addr_t. 2000-09-22 14:46:38 +00:00
soren cf3c3f9410 Rename to match Ben's naming scheme. 2000-09-22 05:48:50 +00:00
eeh 56cf963264 Support for SPARC machines with `su' devices. 2000-09-21 23:27:32 +00:00
bjh21 f3ef35c447 Add rudimentary 80C04 support (basically saying "Oh look, an 80C04!").
Move printing the initial ":" into the board driver, like i82586.c does.
Don't bother printing the amount of RAM, as it's always 64 KB.
2000-09-21 22:20:38 +00:00
fvdl c5d8401866 Add support for the 3c555, 556 and 556B MiniPCI cards. Based on the
cardbus code and the FreeBSD xl driver.
2000-09-19 01:15:06 +00:00
bjh21 40aba7cd4d Split the arm26 Ether3 (ea) driver into an MI driver for the SEEQ 8005 chip,
and a front-end driver for the Ether3.  Only semantic change is to remove
ea_claimirq() and ea_releaseirq() on the grounds that the seem too spurious
to warrant a callback to the front-end.
2000-09-18 20:51:14 +00:00
toshii faf55ac40c Change tiocm_to_{com,zs}'s second argument to u_long to match with
the type in their caller.
2000-09-17 22:07:39 +00:00
drochner a960881851 -make the default screentype override less invasive, call it
VGA_CONSOLE_SCREENTYPE because the screen types are hardware specific
 and make it affect the console only (no need to change runtime
 behaviour), don't call vga_setscreentype() unless necessary (to avoid
 trouble with strange hardware - PR kern/11025)
-some beginnings of ISO-7 (greek) font support
2000-09-15 14:13:01 +00:00
lukem 6439b28202 * rename vga_stdscreen* -> vga_25lscreen*
* in vga_init(), set the screen type to WSCONS_DEFAULT_TYPE, which defaults
  to "80x25".
    XXX: the code currently makes no attempt to ensure that a font
	 with the appropriate width & height is available, effectively
	 limiting this default to either "80x25" or "80x24" at this
	 time.
* make wsdisplay_screentype_pick() non static, so that vga_init() can use it
2000-09-10 11:44:13 +00:00
ad 237007cd69 - Set CCB_ACTIVE flag in all cases when DIAGNOSTIC is defined.
- Correct arguments to bus_dmamap_create().
2000-09-08 12:16:17 +00:00
thorpej e79103cb0a Cast the arg to vtophys() to vaddr_t. 2000-09-06 18:48:36 +00:00
eeh 0d01e04003 Add support for write protecting clock registers. 2000-09-01 19:04:49 +00:00
drochner 641326ee44 -fix multicast filter programming
-support access to MII_ANER too for completeness
-remove some hacks which disappeared in FreeBSD if_rl.c
 rev. 1.25 (Aug 31 14:45:49 1999)
(the driver could need more updating, but this is what I've tested
for months)
2000-09-01 15:07:23 +00:00
ad f729f26133 FLUSH_CACHE will not return until complete. 2000-09-01 14:17:15 +00:00
ad 40f6cd2b96 The `cac' driver now frees CCBs on our behalf. 2000-09-01 12:23:57 +00:00
ad 671d7f91ae - Interface cleanup. static, const in places.
- Move convenience macros from cacreg.h to cacvar.h.
- Add one hardware check in DIAGNOSTIC case.
- Declare `cac_l0'.
2000-09-01 12:12:29 +00:00
ad ac2883e218 - Interface cleanup. static, const in places.
- Pull in linkage useful for both PCI and EISA boards from cac_pci.c.
- cac_ccb_done() now frees the done CCB if the CCB callback completes.
- Model-specific linkage is now responsible for DMA synchronization.
- Use wakeup_one() in cac_ccb_free().
- Start synchronous commands `manually'.
- Add one hardware check in DIAGNOSTIC case.
- Improve error messages.
- Start firmware background tasks on controllers that need it.
2000-09-01 12:11:37 +00:00
ad d8e5466776 - Move convenience macros from cacreg.h to cacvar.h.
- Define EISA board register set and some other magic numbers.
- Add missing elements to `struct cac_controller_info'.
2000-09-01 12:10:21 +00:00
haya ea9ef4ff69 Correct LED polarity bit. This bit and PHY power bit should be
defined in elinkxlreg.h.
2000-08-31 08:42:29 +00:00
haya 25147761ff Add support 3C[CX]FE575CT. 2000-08-29 08:54:50 +00:00
mjacob 37c83e1340 fix some missing initializations 2000-08-27 21:43:26 +00:00
haya 0e2c6c0cc1 Access on ELINK_W3_INTERNAL_CONFIG register with 32-bit mode. Remove
16-bit access code.  This register is 32-bit.  16-bit access with the
register causes data inconsistency (especially for CardBus cards).
2000-08-25 09:01:59 +00:00
jeffs d3afa878a2 Fix typo in SIATXRX_SPP comment. 2000-08-25 08:03:10 +00:00
haya 6cbde58ee4 Add flag defines for 3CCFE575BT and 3CCCFE575CT (CardBus cards). 2000-08-24 08:54:31 +00:00
thorpej 7951ece147 Use splsched() instead of splhigh(), and explain why in a comment,
as well as document a pitfall of the approach being used.
2000-08-21 14:25:14 +00:00
castor 0c05c0b9f2 Add register definitions for S.M.A.R.T. -- an autonomous disk monitoring
standard.
2000-08-21 03:53:55 +00:00
sommerfeld 8f5586c98f Avoid calling tsleep when running above splhigh() 2000-08-18 13:22:39 +00:00
bjh21 d7eebd9227 Basic driver for CHIPS 82C710 Universal Peripheral Controller and friends,
as used on later arm26 system (A5000, A4, A3010, A3020, A4000).

What we have got:
...
upc0 at iobus0 base 0x010000: config state bb 87 1c 00 00
fdc at upc0 offset 0x3f4 not configured
wdc0 at upc0 offset 0x1f0
lpt0 at upc0 offset 0x278
com0 at upc0 offset 0x3f8: ns8250 or ns16450, no fifo
...

What we haven't got:
 - FDC support (found, but not configured).
 - Clearing lpt interrupts on arm26 systems (needs help from IOEB).
 - A upc(4) manual page.
 - More than minimal testing (my A3020s don't have root devices).
 - A proper probe routine (arm26 can't use one anyway).
2000-08-16 23:56:08 +00:00
mjacob 4f5e77ca58 Change _res field in ispstatusreq_t to be req_response for FC.
Add some more FC specific response defines and split the response
defines into common, SCSI only and FC only cases.
2000-08-16 18:11:38 +00:00
mjacob d9162135d4 Add some changes/notes suggested by eeh@netbsd.org (zero header of
response queue entry). Clean up some of the Fibre Channel completion
stuff so that thing we check actually match the current manual. There's
only one silly lossage that the manual doesn't cover at present- if
an FC command completes with SV (sense valid), the f/w does *not* s
et "GOT_STATUS" in the state bits- I guess they assume that you'd figure
out that if you have SENSE DATA you probably have a CHECK CONDITION. Still-
yet another fine f/w frotz from Qlogic. Add in an ISP_EXEC_THROTTLE
define to set a per-device execution throttle.
2000-08-16 18:10:21 +00:00
thorpej f80d70f19a Just add the mmap argument to vga_common_attach(), don't bother
with vga_extended_attach().
2000-08-14 20:14:50 +00:00
onoe 7f6e2386a6 Make sure to reset length of data (len) and offset of mbuf (mlen) when
CRC is splitted into two mbufs in receiving.  This fixes panic or hangup
in arc4_encrypt() when WEP is enabled on awi.
2000-08-14 11:28:03 +00:00
mjacob ec701021fd Add a maintenance note. Fix QFREE and QAVAIL macros to match change in usage. 2000-08-14 07:12:15 +00:00
mjacob ed05406b77 Add a maintenance note 2000-08-14 07:11:14 +00:00
mjacob b1c18a6bc7 Add a maintenance note. Move the single bit tags of islocked and
onintstack to be real integers. Add ISP_ILOCK/ISP_IUNLOCK macros.

Fix the isp_lock/isp_unlock inlines to stop being so embarrassingly
in error. Why, or why, can't I have mutex_enter/mutex_exit, pretty please?
2000-08-14 07:10:09 +00:00
mjacob 22ef6ec857 Add a maintenance note. Change all splbio's to use the ISP_LOCK/ISP_UNLOCK
or ISP_ILOCK/ISP_IUNLOCK macros.
2000-08-14 07:08:12 +00:00
mjacob 8801250c70 Add a maintenance note. Add a cast to u_int16_t which will keep
Solaris lint && the SUNPro SC5.0 complier happy.
2000-08-14 07:06:50 +00:00
mjacob d7ee06672f Add a maintenance note.
Clarify some startup SCSI mode settings. Insist that the FC f/w options
*must* have ICBOPT_PDBCHANGE_AE set (wasted a half day on this crock).

Make a specific comment in isp_start that the tags being selected for FC
cards, in lieu of any set by the outer layers, are there for safety's sake.
This removes the change from a previous commit.

For the ISP_TOGGLE_TMODE function, do a complete reset, not just an
isp_init (info from Solaris port). Make some cleanup changes for
code clarity.
2000-08-14 07:05:28 +00:00
augustss 0390dd7f3e Fix spelling in comment. 2000-08-12 22:24:26 +00:00
tls c9dc8413bb Make our policy WRT tagged queueing consistent and sane: ordered tags for sync writes, simple tags for all else. Should make ahc and adv a bit more reliable (metadata writes won't get reordered incorrectly...) and isp a bit more performant (it was using ordered tags all the time). 2000-08-11 21:31:19 +00:00
thorpej 8cb7deb85b Add support for the DEC DE422 Ethernet, which is a DEPCA
attached to the EISA bus.  This board is commonly found
on Alpha Jensen systems.
2000-08-11 02:27:07 +00:00
tv 389bf995b5 %b -> bitmask_snprintf() 2000-08-09 01:56:33 +00:00
mjacob 0dc8c1fb35 Remove ispcmd_slow routine- SCBUSACCEL routine will set/clear tag/wide/sync.
Make some changes about where some things sit in the softc.
2000-08-08 22:58:30 +00:00
bjh21 4f33d5a8ab Register definitions for the C&T 82C710, 82C711 and 82C721, as used in
the Acorn A5000, A4, A4000, A3010 and A3020.
2000-08-08 22:14:53 +00:00
jeffs aaa5c58d70 Update arc map routine prototype to compile again. 2000-08-08 02:11:05 +00:00
briggs b103a8ca48 Label the buffer size as such on probe. 128 KB makes sense, but 4608 does not. 2000-08-06 00:19:04 +00:00
bouyer a8421d4787 Some W83781 have ID 0x11 instead of 0x10; handle these too.
Restore printing sdata for each sensors if DEBUG.
2000-08-03 09:27:01 +00:00
castor b6dd28b4ce Support some differences in the Macronix 98715AEC-C and E chips from the other
98715* series.

The MX98715AEC-[C,E] use a different location in the serial eerom for
LED control, and programming it with the original location's values
caused unpredictable behavior.

Also, start integrating fixes where media changes on an adapter
under load may fail.  There's more work to be done here, but I need
to sort out our internal changes a little more carefully.
2000-08-03 03:07:30 +00:00
jeffs e97c2066ab Add options DDB_BREAK_CHAR. This overrides break on the serial console
break character with the supplied one.  This is useful for cases where
break is hard to generate, or you are connected to a PC that "sends"
breaks when power cycled.  For this mode in com, interpret break char
in the polling section, which allows entry into the debugger before
the tty is opened.  Only supported in the com driver currently.
2000-08-03 00:30:47 +00:00
bouyer de378db998 W83781D: Explicitely reselect bank0 before using "value RAM" registers.
Hopefully this will make the W83781D works.
Also use common functions to set up fan & temp info[] & sensors[] for
the W83781D.
2000-08-02 22:20:41 +00:00
bouyer e445e43ddc Add support for the W83697HF - basically a W83627HF with only 2 temp sensors. 2000-08-02 21:50:37 +00:00
mjacob 068c76fc80 Core version 2.0 (platform version 1.0) rewrite of ISP driver. Some
interace cleanups, some new common functions. The major impact that
will be noticeable right away is that if you boot with not Fibre connected
to the FC cards, you no longer hang indefinitely.
2000-08-01 23:55:09 +00:00
briggs 02e3c1ef40 Use bus_space_read/write_multi_stream_2 for FIFO instead of bsr/w_multi_2. 2000-07-31 22:48:49 +00:00
ad 067f5e9814 Previous would have misbehaved if polled commands overlapped. 2000-07-31 13:16:34 +00:00
briggs 3628f3e00c Make sure that we do not call bus_space_*_multi_* with zero count. 2000-07-31 02:14:47 +00:00
bouyer 100a4a6b22 Add support for the W83781D and W83782D hardware monitors. 2000-07-30 22:23:53 +00:00
briggs e6dde2bd42 Add MII support to smc91cxx driver. This is supported for the 91c100
and 91c100FD (FEAST) controllers.  Existing controllers should continue
to work as they have.  Added the card's memory to the probe message.
2000-07-30 21:34:47 +00:00
bouyer 538126d75a swap lm_match() and wb_match(), as wb_match() is more restrictive.
Otherwise a winbond can be mis-probed as a lm if it has the rigth device ID.
Problem reported by Bernd Ernesti.
2000-07-30 17:22:26 +00:00
bouyer e955a714ba Add support for the W83627HF: lm7x like, but with more sensors, and more
registers.
2000-07-27 21:49:22 +00:00
bouyer ca5b9b0c22 Force 64bit arithmetic for timeout computation; a 32bit int opverflows for
large timeouts. Should fix PR kern/10575.
2000-07-27 21:28:17 +00:00
pk 4ba0c6b55c New time-of-day clock chip drivers. These implement the todr(9) interface. 2000-07-25 22:33:02 +00:00
bouyer 10afc4e0a8 create a funcion, siop_busreset(), to reset the scsibus.
Reset the scsi bus at attach time, to be sure all devices start in narrow/async
mode.
Defer sync/wide negotiation until after whe have a valid
xs->sc_link->device_softc, so that we can honnor the NOSYNC/NOWIDE quirks.
2000-07-24 15:15:00 +00:00
ad 74cf7af4a9 Increase polled command timeout to 2s. 2000-07-24 12:28:31 +00:00
onoe afa5b645c2 add support for SIOCS80211NWKEY and SIOCG80211NWKEY. 2000-07-21 04:48:55 +00:00
scw a1b8e79bb1 Take advantage of generic soft interrupts, if available. 2000-07-20 20:44:50 +00:00
deberg 0d5d0bd93a don't define LIST_FOREACH, it's in sys/queue.h now. 2000-07-20 03:47:56 +00:00
mjacob c47c527343 add some more CTIO flags 2000-07-19 22:19:23 +00:00
mjacob 0615788781 zero result queue entry when done if debugging.
don't do an isp_notify_ack if we're not at run state.
2000-07-19 22:19:00 +00:00
mjacob 93379fb341 fix mislabelled error case 2000-07-19 22:18:02 +00:00
pk f9e6c9cf42 Fixx off-by-one error in handlereset(). 2000-07-19 16:07:00 +00:00
onoe 0ab524f389 moved the check priviledge for SIOCS80211NWID from each driver to ifioctl().
it also fixes the problem that non-priviledged user can change nwid
for wi and ray drivers.
2000-07-19 06:00:39 +00:00
ad 7d1b0e5b39 Use device_lookup() and ditch TAILQ sillyness. 2000-07-18 15:27:44 +00:00
drochner 54ccff0437 define "80x24" screen types for better vt100 compatibility 2000-07-15 18:47:54 +00:00
scw 20305c6623 Fix a typo in the `device_lookup()' changes. 2000-07-15 18:12:42 +00:00
soren b141a6bfe8 Merge-o. 2000-07-14 21:09:45 +00:00
onoe 6c4d97da13 Indicate WEP capability to association request when WEP is enabled.
Without this fix, some (IEEE802.11 conformant) APs will send data to this
station without using WEP.
2000-07-11 12:54:00 +00:00
onoe b99e56173c do not allow non-priviledged user to change nwid via ifconfig. 2000-07-10 14:36:17 +00:00
onoe c2ed037f55 move associated/synced/no-recent-beacons messages to IFF_DEBUG. 2000-07-10 12:32:53 +00:00
mycroft d621cc4cb0 Add missing newlines in some messages.
Set Vpp the same as Vcc by default.  We need to do more with voltage sense.
2000-07-09 01:55:18 +00:00
sommerfeld dcf6e7b09e When receiving an rx interrupt on a closed or unconfigured port, read
the data out of the board anyway so it won't re-interrupt anyway.
Fix tested by C Kane <ckane@best.com>
2000-07-08 18:36:02 +00:00
mjacob 58a60a43f2 Gah. Bad port from FreeBSD code (thanks Robert Elz) for setting
up default timeout for watchdogging commands.
2000-07-07 03:14:53 +00:00
onoe a4d6bdac79 do not show wep keys to non-root users. 2000-07-06 17:22:25 +00:00
thorpej cb450cc444 Use device_lookup(). 2000-07-06 01:47:34 +00:00
mjacob 7ed7b1b9fd Per advice from thorpej, reinstated some of Erik's changes. 2000-07-06 01:17:38 +00:00
mjacob f78b367775 Roll core version. Get rid of dogactive (no longer used). Add in some
volatile flags (isp_mboxbsy- keeps a bitmask of expected output mailbox
registers) and storage for them (isp_mboxtmp). Get rid of macroized
LUN widths. This is determined at run time.
2000-07-05 22:28:08 +00:00
mjacob 7358822ab5 Fix incorrect uint8_t vs. u_int8_t usage. Add in offset macros for outgoing
mailbox regs and a INT_PENDING_MASK macro.
2000-07-05 22:26:53 +00:00
mjacob b520c663d0 add MBOX_GET_RESOURCE_COUNT command 2000-07-05 22:25:53 +00:00
mjacob 93778c19b8 pick up FreeBSD changes 2000-07-05 22:25:34 +00:00
mjacob 3626695b49 Roll platform minor. We are now always supporting ISP2100_FABRIC. Add
in new MBOX_WAIT_COMPLETE/MBOX_NOTIFY_COMPLETE macros (ready for SMPizing).
Define STRNCAT inline for our usage.

Stealing a bit of the xs_status flags to maintain command state that
is pertinent for the hBA- should really reserve them for private usage
in scsipiconf.h.
2000-07-05 22:25:06 +00:00
mjacob a743834a38 Redo watchdogs to handle cases of false death of commands- time
each command now.. Get rid of SCCLUn stuff. Use an isp_done routine
to handle cases of watchdog and isp_done racing to completion.
2000-07-05 22:23:05 +00:00
mjacob a7560ced04 Add back in a (corrected) isp_prtstst function. 2000-07-05 22:21:44 +00:00
mjacob e946846577 Back out previous commit- the author is incorrect. There is no 'narrow'
Qlogic controller driven by this chipset. If they don't want the verbosity,
don't compile a DIAGNOSTIC kernel.

Major amount of mailbox command rewrites- hopefully should fix some of the
outstanding PRs.

Change header to note that this is no longer maintained at NASA/Ames.
2000-07-05 22:20:51 +00:00
onoe 807a12c8cd change the argument of SIOCS80211NWID and SIOCG80211NWID ioctls from
u_int8_t array to struct ieee80211_nwid to prepend length field.
The length field is necessary because IEEE 802.11 spec doesn't prohibit
even '\0' for SSID.
Though the name and the value of SIOC... macro is unchanged, this change
breaks binary compatibility.  The only affected userland program on the
tree is ifconfig(8).
As Jason suggested on tech-net, it is better than live with problems
since there are no releases for this ioctls yet.
2000-07-05 02:35:53 +00:00
pk e7adcbdb13 enet dma: claim interrupt as appropriate. 2000-07-04 14:58:36 +00:00
onoe 7411709050 Support WEP functions for awi driver. 2000-07-04 14:47:58 +00:00
onoe 793eb28211 Support WEP functions for awi driver.
arc4 implementation by Kalle Kaukonen has been added.
	define "wlan" in files.
		XXX: only awi depends on wlan for now.
	Allow authentication for adhoc (IBSS) mode.
Disable adhoc mode without bssid (mediaopt adhoc,flag0) for FH radio.
	FH cannot work without synchronization by beacons.
Align IP header for ethernet encapsulation (IFF_FLAG0) mode.
Print available access points for IFF_DEBUG.
2000-07-04 14:27:56 +00:00
onoe 0e23cbd506 Remove unneeded include <sys/kernel.h> from FreeBSD by <phk@freebsd.org> 2000-07-04 14:16:21 +00:00
thorpej a02e08bf4f Remove work-around for Lite-On PNIC in tlp_filter_setup() that is
apparently no longer necessary (probably due to other fixes that
have happened in the filter setup path) and is in fact harmful.

Based on a patch from Krister Walfridsson, who claims this makes
his newer NetGear FA-310TX work (although, my older NetGear FA-310TX
still does not, but fails in an entirely different way).
2000-07-04 04:18:17 +00:00
itojun 33d6ee7269 sync with sys/dev/ic/adwlib.h change (s/ADV_TICKLE/ADW_TICKLE/)
not sure if it is right.  comments?
2000-07-04 04:17:03 +00:00
nisimura 0c92b006c6 Fix negative timeout symptoms caused by integer multiply overflow,
which is revealed with larger HZ systems like NetBSD/pmax (256Hz)
and NetBSD/alpha (1024Hz) as reported by PR#8645.  Polled tape
drive access is done with maximum 6 hour timeout which ended up
with negative time and then confused SCSI bus severely.
2000-07-04 01:10:18 +00:00
dante fa845b7795 Fix a off-by-one error in sc_freeze_dev[].
Thanks to kwesterback@home.com
2000-07-03 18:14:18 +00:00
pk 8c46f6d687 #include "opt_ahc.h" 2000-06-29 23:12:19 +00:00
thorpej 756aa08443 Since the RFA is allocated in a normal mbuf, as opposed to DMA-safe
memory that is explicitly mapped in a DMA-coherent manner, we must
make sure to PREREAD sync the RFA after noticing a clear "complete"
bit.  Without this, the clear bit will linger in the cache, and the
CPU will not notice when the chip updates the bit via DMA later.

From Izumi Tsutsui on port-arm32@netbsd.org.
2000-06-29 16:53:48 +00:00
mrg 314f1e97c5 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-28 17:12:48 +00:00
mrg e185413725 remove redudant <vm/pmap.h> includes. <vm/pmap.h> -> <uvm/uvm_pmap.h> 2000-06-27 04:18:48 +00:00
fvdl 4cc6a62a33 Remove debugging code that wasn't supposed to be in the commit of version 1.55 2000-06-26 19:38:14 +00:00
mrg 89d0a3e519 remove redundant vm includes. 2000-06-26 14:38:50 +00:00
mrg 2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
eeh 44330020aa Make PCI HME work. 2000-06-25 01:10:04 +00:00
eeh 79dffec702 Get PCI HME working. 2000-06-25 01:05:16 +00:00
thorpej f82e306928 Add a clearing-house pseudo-device for system monitoring devices
such as the LM78 and VT82C686A (and eventually ACPI).  Multiple
sensor devices can be hooked registered with `sysmon', and eventually
sysmon will also handle hardware (and software) watchdog timers.

Convert the `lm' and `viaenv' drivers to the new interface.
2000-06-24 00:37:19 +00:00
bouyer dbc130250d Patch from Eduardo Horvath: don't bus_dmamap_sync the script dma map if
it lives in the on-chip RAM !
2000-06-20 17:16:22 +00:00
ad 318f9b048b Feck. 2000-06-20 15:04:50 +00:00
pk 5f887c484e The sparc clients of this driver (si & sw) now use bus_space_*(). 2000-06-18 19:22:33 +00:00
soda 849b74a926 add vga_extended_attach function on arc port, to make mmap() available.
XXX - is it better to remove "#ifdef arc"?
2000-06-17 07:11:50 +00:00
cgd eee18e1f6c beat back the undead: __BROKEN_INDIRECT_CONFIG had risen, and was
terrorizing innocent hackers...
2000-06-16 23:41:33 +00:00
pk 6e94b922a1 Comply with bus_dma(9) specs. 2000-06-16 11:47:34 +00:00
soren 18b4be2a92 Update from Onno:
- Add a tr_reopen() and use that instead of tr_init() for callouts.
- As tr_reinit() and tr_reopen() are used as callouts, protect them at splnet.
2000-06-15 19:55:27 +00:00
pk 297445c2a2 Turn on the hash filter enable bit in the RX configuration register
when loading the multicast hash filter (noted by itojun@iijlab.net).
2000-06-15 15:34:32 +00:00
soren ca34a6a69a Call frontend enable/disable functions in the ioctl path.
Use _sc prefixes for some softc members.
A few minor cleanups.
2000-06-13 20:00:02 +00:00
nathanw a5598651e8 Arrange to use the right RAMDAC cookie at console initialization time.
[I thought I committed this months ago....]
2000-06-13 17:21:06 +00:00
bouyer 22a10be43e sheduler->scheduler, as pointed out by Klaus Klein 2000-06-13 13:59:15 +00:00
ad 3553879fc2 Use my proper name. 2000-06-13 13:36:42 +00:00
bouyer 12d3bf8c1a Add a callback (*irqack), for controllers that need special action to ack
the interrupt once it has been ack'd on the drive.
2000-06-12 21:10:40 +00:00
bouyer 221a99f782 Handle "scsi bus mode change" interrupts on 895 and higther.
Thanks to Hal Murray for reporting the problem and testing the fix.
2000-06-12 20:13:41 +00:00
ad 397fa0e4e2 Fix a couple of pastos. 2000-06-12 11:07:45 +00:00
mrg b9140fbc0c KNF a line. 2000-06-12 05:25:48 +00:00
bouyer 7bb3d03448 Relax condition on 'sn' for atapi probe, it can be different from 0x1 with
some controllers/devices. Fixes a problem reported by Markus Illenseer.
2000-06-11 17:09:34 +00:00
onoe 73a779fa1f Restore the original copyright notice by Bill Sommerfeld
<sommerfeld@netbsd.org> since it is based on the original code.
2000-06-09 14:36:25 +00:00
onoe 4da3935bae cleanup haeders.
add opt_awi.h to define AWI_DEBUG, AWI_WEP_ARC4.
show the firmware version at attach.
create a framework to support WEP (encryption code is not included for now).
a new wiconfig compatible ioctl interface replaced the awictl interface.
fix memory leak in selecting AP
fix bugs in ESSID selection
changes from FreeBSD-current by Warner Losh:
  revision 1.2
  date: 2000/04/17 22:58:15;  author: imp;  state: Exp;  lines: +16 -1
  Provide mem* for compat with NetBSD to fix LINT
fixes from FreeBSD-current by Guido van Rooij:
  revision 1.4
  date: 2000/05/29 19:58:10;  author: guido;  state: Exp;  lines: +5 -2
  Fix a panic resulting from an obvious null pointer deref.
  Apparently some other panics still exist in this driver, but with
  this fix, it was at least possible to run the Nokia card at SANE 2000.
2000-06-09 05:31:15 +00:00
soda 0f76c56f2d increase number of parameters of pckbc_cnattach(), since offset of command port
is not 4 (KBCMDP), but 1 on jazz based platforms of arc port.
2000-06-09 04:58:32 +00:00
cgd 1e158fae9a nuke bogus use of s = spl0() / splx(s). reviewed by Jason Thorpe. 2000-06-08 22:43:15 +00:00
cgd 625dbd8f87 in allegedly-MI code, if we're gonna use '#pragma pack(N)', #pragma pack()
should be used to reset the packing.  (#pragma pack(4) was used here
before.  "wrong!")
2000-06-08 18:22:15 +00:00
cgd d8dcb11d4f don't include ISA headers. these have been properly abstracted so that
the ISA headers are unnecessary, and they're used by PCI VGA.  There may
not be any ISA at all.
2000-06-08 07:01:19 +00:00
tsutsui 3f94f56142 Adapt struct scsipi_adapter changes. 2000-06-07 14:40:20 +00:00
soren 3b8b24cffe Only wait 100 ms instead of 1 s for the SEEPROM to come ready. This is
still plenty for cards with SEEPROM's and reduces the delay on platforms
without, which conveniently also avoids triggering the O2 watchdog timer.
2000-06-06 17:29:40 +00:00
soren b4b667c0a0 Make ID printing a little more robust in case of problems reading
AC97 registers.
2000-06-06 17:25:52 +00:00
soren 8b0390203b Some minor diagnostics cleanups. 2000-06-06 16:41:33 +00:00
soren 1ec719ccc0 Add power management hooks. 2000-06-06 16:26:57 +00:00
sommerfeld f1802cf848 Fix previous change: guard against missing subdevices of pckbc. 2000-06-06 16:21:22 +00:00
tsutsui 499db14bcb sun3 always defines Debugger(), so don't redefine it. 2000-06-06 14:24:05 +00:00
sommerfeld bcf02ec8ff If rnd is configured into the kernel, do rnd(4) entropy collection
from devices connected to pckbc:
 - Do actual sample collection in pckbc.
 - Add rndsource_element_t to the slot data.
 - Change pckbc_set_inputhandler() to take an additional argument,
the name of the device, which is (eventually) passed into
rnd_attach_source() to identify the source.
 - Change callers of pckbc_set_inputhander() appropriately.
2000-06-05 22:20:54 +00:00
bouyer 0e7cd755f4 use the correct variable in a debug printf(). 2000-06-05 21:47:25 +00:00
tsutsui a12331c461 Oops, struct scsipi_adapter was changed recently. 2000-06-05 15:19:42 +00:00
nisimura 4371d91433 Have MI ncr53c9x_attach() the 2nd and 3rd arguments for scsipi_adater
and scsipi_device respectively, with size reduction of ncr53c9x_softc.
Specifying NULL instructs the driver to use default adapter and default
device codes. Every target port has ncr53c9x_attach(sc, NULL, NULL) anyway.
2000-06-05 07:59:50 +00:00
matt 6204fa3c99 Update to new evcnt stuff 2000-06-05 02:28:19 +00:00
fvdl c8c1e5854f Fix wrong test for (software) queue blocked condition. 2000-06-04 11:42:55 +00:00
matt 576faa0c31 Start couting interrupts. 2000-06-04 02:14:12 +00:00
fair e3a9f21a5f Change the debug level from 1 to 3 for "skipping target" diagnostic
which spews unreasonably for a Qlogic SCSI-2 narrow controller, which
does not have ID's above 7.
2000-06-03 22:44:43 +00:00
fvdl b9bb94500e Obey the "Reset SCSI bus at startup" EEPROM setting. 2000-05-29 20:13:53 +00:00
jhawk 1e59d99d28 For all network drivers that call ether_ifattach(), and also
have _detach() functions:
  Ensure that softc keeps state about whether the attach succeeded,
  and make the detach function return immediately if the attach did
  not complete.
2000-05-29 17:37:12 +00:00
tsubai 8cde93a435 * Support (not so) new cards. (only Cyclom-8YsP+ is tested)
* Make compilable with CY_DEBUG.
2000-05-29 12:05:41 +00:00
matt 2864a7186a reclaim transmitted packets on receive interrupts. 2000-05-28 01:28:52 +00:00
fvdl 3713246e34 Don't bother searching the qinfifo for SCBs to requeue in the BUSY
and QUEUE FULL cases; this is already done for all BAD_STATUS cases.

Make sure to requeue the SCB in the above cases internally in the driver,
the SCSI layer doesn't know how to deal with it properly.
2000-05-28 00:19:59 +00:00
fvdl 4b7b35ae8a When a bus is accessed for the first time, reset it. Without this,
some devices may not be found if the BIOS (which would normally
do the reset at startup) is disabled. Should really be done from the SCSI
layer.

Implement the SCBUSIORESET ioctl.
2000-05-27 21:58:15 +00:00
dante 39c7c9aff6 Change AdwInitCarriers in adwmcode.c
Add new AdwInitCarriers prototype in adwmcode.h
All of the supported adapters are now initialized calling a unique common
    function
2000-05-27 18:24:50 +00:00
thorpej d0a8b751b2 Don't use sleep() and a callout; just use tsleep(). 2000-05-27 04:46:24 +00:00
matt dd266dbb2f Fix counting of output packets. Only count descriptors with TDES_LS set.
Also make transmit timeout logic more correct.
2000-05-27 04:26:32 +00:00
tsutsui 7ae8c684a8 Increase delay on EEPROM access.
CATS sometimes cannot read MAC address correctly.
2000-05-27 00:55:42 +00:00
ragge 38d5764cd1 Fix for a driver bug provided by Jon W Grubbs (jgrubbs@megsinet.net).
This bug is only visible on some disks, and I have verified that it works
correctly on VAX. However, du to the author, it is a problem on other
machines/disks as well. Here's the author's comments:

> The MI code for the NCR5380 has a small bug in it  The RZ56 wants to
> negotiate for Synchronous Data Transfers and when it does, the current code
> looks like it will send a REJECT message as the spec calls for when we cant
> handle the request.  However, a couple of lines of code in the
> ncr5380_msg_in routine are missing wrt the PARITY message and anything that
> wants to send a REJECT message.  The ATN setup that is done in
> ncr_sched_msgout is immediately negated by the final byte ACK sequence in
> this routine.  This causes bad things to happen to an RZ56.
2000-05-26 21:11:00 +00:00
tsutsui e3427d8f2c Call bus_dmamap_sync() properly before/after reading fcd_stats
in fxp_control_data.
2000-05-26 19:11:24 +00:00
thorpej 8a3725612d Add support for the Davicom DM9102 and DM9102A 10/100 Ethernet chips.
Partially based on diffs submitted by Matthew Orgass <darkstar@pgh.net>
and IWAMOTO Toshihiro <iwamoto@sat.t.u-tokyo.ac.jp>.
2000-05-26 16:38:13 +00:00
dante 3d7bdc4c94 Fix a bug introduced in last commit which caused a painc due to
re-enqueueing an already free ccb.
Prepare the background to have a unique initialization function for
    all of the supported host adapters.
Rename a lot of #define in a more sane way.
Move Carriers initialization and defines in adwmcode.{c,h}
Don't lose Carrier nodes in case of a BUS/Chip reset explicitly invoked
    after a DMA failure.

XXX - DMA failure still arise when AdvanSys U[2]W host adapters are used
      in conjunction with Intel 82443BX Host Bridge/Controller (rev. 0x03).
      !?!Have to understand why!?!
2000-05-26 15:13:43 +00:00
tsutsui 5dca757b0e Swap the order of u_int16_t member in Tx/Rx descriptors
on big endian machines.

"Big endian mode" of smc83c170 actually works!
(i.e. no htole??()/le??toh() functions are needed.)
2000-05-26 00:20:26 +00:00
tsutsui dea97be7fd Don't use bcopy() to copy u_int16_t data to u_int8_t array. 2000-05-26 00:14:41 +00:00
thorpej c9a7ec7a66 Add Davicom DM9102 registers. 2000-05-25 22:50:11 +00:00
thorpej 7c709cc6b4 Comment the fact that the X3201-3 requires FS|LS in the setup
packet descriptor.
2000-05-25 22:18:07 +00:00
thorpej f4a3f5ea48 So, while the DEC chips and other clones want no FS|LS in the
setup descriptor, apparently the Xircom X3201-3 requires it.
2000-05-25 18:46:07 +00:00
thorpej 215a635a5b Truncate receive buffers to 4-byte boundary. Slightly modified
from kern/10198, from Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>.
2000-05-25 16:47:18 +00:00
thorpej 2f08658512 Fix a couple of typos in debugging messages. From IWAMOTO Toshihiro,
kern/10194.
2000-05-25 16:37:33 +00:00
thorpej 05a766d42e Don't set FS and LS in the setup packet descriptor. From
IWAMOTO Toshihiro <iwamoto@sat.t.u-tokyo.ac.jp>, kern/10194,
and confirmed with the 21040 manual.
2000-05-25 16:36:03 +00:00
fvdl 3e54d43abc Be sure to not use tagged queueing for a few commands. 2000-05-25 11:41:05 +00:00
bouyer b063b2ec36 Separate the sheduler from the main script, allocate another DMA-safe
memory page for the sheduler. Put the main script in the on-chip RAM when
available.
Avoid a null-pointer dereference when DSA is invalid.
2000-05-25 10:10:54 +00:00
soren c25111e4ae Make two previous changes more correct, as shown by Izumi Tsutsui. 2000-05-24 13:20:32 +00:00
soren 8922795de0 The EEPROM is little-endian. 2000-05-24 08:04:23 +00:00
soren 66083288eb Fix DMA status reading on big-endian systems. From Sanjay Lal on port-macppc. 2000-05-24 07:49:13 +00:00
soren 35bf53bd9c And a newline after error string. 2000-05-24 06:04:12 +00:00
bouyer 2904666f56 Allocate dynamically the command block descriptors. 2000-05-23 17:08:07 +00:00
soren 9f00930ace Make AHC_DEBUG compile. 2000-05-23 03:50:12 +00:00
fvdl c9fe89891a Don't try to re-enable tags once they have been disabled because of a
MSG_REJECT from the target. Obey the NOTAG quirk.
2000-05-22 21:14:24 +00:00
tsutsui a6d8e45ba7 Call bus_dmamap_unload() if any Tx mbuf remains in rtk_stop(). 2000-05-21 13:00:46 +00:00
matt 20a98cb524 count input and output packets. 2000-05-20 18:33:18 +00:00
jhawk 92f539aa66 Calibrate the timeouts from rev 1.26 by using DELAY(1) so their
values are less machine-dependant. Fixes port-i386/10141, where
spurrious timeouts were being seen.
Also note the line numbers of the timeouts so it can be determined
which is being seen (via __LINE__).
2000-05-19 16:00:30 +00:00
tsutsui f2973e2fb8 - Change RL_* -> RTK_*
- Free bus_dma resources if attach fails
- Add detach and power management code

Patch from Masanori Kanaoka <kanaoka@ann.hi-ho.ne.jp> in kern/10156.
2000-05-19 13:42:29 +00:00
thorpej f636538446 NULL != 0 2000-05-19 04:34:39 +00:00
mrg badbd98b2a rearrange the order of bus_dma operations to be more like many other
drivers, at the suggestion of fvdl.  also, use bus_dmamap_load() not
load_raw().
2000-05-18 14:00:46 +00:00
mrg cc57e4111a do not pass a `boundary' argument to bus_dmamap_create(), particularly one
that is smaller than the `size' argument.
2000-05-18 12:49:09 +00:00
thorpej b5cf4e96cf Use big-endian CRC on ADMtek multicast hash. 2000-05-18 03:02:45 +00:00
thorpej 463931b3ba Nuke dk_establish() from orbit except from those ports which still use
it to determine the boot device: mvme68k, pc532, macppc, ofppc.  Those
platforms should be changed to use device_register().  In the mean time,
those ports defined __BROKEN_DK_ESTABLISH.
2000-05-16 05:45:44 +00:00
thorpej 47490d3527 Whitespace glitch. 2000-05-16 00:18:44 +00:00
dante e66be0bd10 Cosmetic change 2000-05-15 16:38:49 +00:00
bouyer c94bdce1f4 Don't enable debug message by default. 2000-05-15 15:16:59 +00:00
bouyer 863014523a - split siop.c in script-dependant vs script-independant part, for
comming esiop
- add a reset callback for bus-dependant registers settings
2000-05-15 07:48:24 +00:00
thorpej 7da80620c9 splimp() -> splnet() 2000-05-15 01:55:53 +00:00
thorpej e5ae7c287a Symbol namespace cleanup: rl_ -> rtk_ 2000-05-15 01:55:12 +00:00
thorpej 706ee091ed Move register definitions into ac97reg.h 2000-05-15 01:32:03 +00:00
thorpej 1838aef29c ac97.h -> ac97var.h 2000-05-15 01:27:44 +00:00
dante e852afa89f Fix a typo 2000-05-14 19:52:34 +00:00
dante 94cd08a535 Handle better the status codes.
Add a way to instruct the upper layer to don't bother w/ new requests if/when a device queue is full/busy or the device is unavailabale at that time
Use scsipi_inquiry_data instead of its own inquiry structure
2000-05-14 18:25:49 +00:00
dante 1937dbee6a Reflect changes in scsipi_inquiry_data structure: "flags" field is now named "flags3" 2000-05-14 18:22:13 +00:00
he 084953b8f7 Update from Matthew Jacob:
Correctly account for F-port vs. F-port (no FLOGI_ACC) topologies.
  Make sure we get a port database entry for the fabric name server.
  Preserve fabric logins if the device didn't change across fabric
  or port database changes, or the device has already logged into
  us (e.g., for target/initiator dual role devices like Veritas
  SANbox). Propagate class 3 service parameter changes where devices
  can change roles.

  Fix all occurrences of setting a sendmarker so that setting it
  for one bus on dual bus cards doesn't wipe a pending sendmarker
  for other busses on the same card :-;.

  Comments added and clarifications made in some of the target mode code.
2000-05-13 16:53:03 +00:00
jhawk e0292df01c sc_ih (interrupt cookie) is not pci-specific data
and needs to remain in fxp_softc rather than fxp_pci_softc;
otherwise we break cardbus.
2000-05-12 18:46:33 +00:00
thorpej d6c07323b2 If using ring-mode, don't update the receive descriptor list base address
when a receive overrun occurs.  From Castor Fu <castor@geocast.com>.
2000-05-12 17:09:27 +00:00
thorpej f0481f14ab Oops! We actually want the *lower* 6 bits of the crc32 of the multicast
address to generate the multicast filter bit index, not the upper 6.

Should address kern/8268.
2000-05-12 16:57:30 +00:00
thorpej 6e4b4f6954 Use ether_crc32_le(). 2000-05-12 16:45:42 +00:00
thorpej 692e54c43d Use ether_crc32_be(). 2000-05-12 16:44:19 +00:00
tsutsui 0ee6a24aa7 Read upd_pktstatus from DMA buffer after bus_dmamap_sync() called. 2000-05-12 15:22:33 +00:00
bouyer 9b45dfba17 Accept any 'sc' value when probing atapi drives: with some drives, or
controllers, or combination of both, the value can be different from the
expected one after a reset.
2000-05-12 15:00:33 +00:00
jhawk 6622f20fc1 Move pci-specific data to fxp_pci_softc from fxp_pci_softc.
Add some more pci-specific data to fxp_pci_softc.
2000-05-12 03:36:18 +00:00
jhawk e50925114e Catch some potentially infinite loops in while() loops if the chip happens
to "go insane" and never complete some operations (dmasync, etc.).
2000-05-12 03:35:57 +00:00
bjh21 2d09335a35 Fixes from PR 9838:
Only access board memory using the front-end functions.
Add hook for clearing latched interrupts.
Corrent debugging printf of ethertype on LE systems.
Make it possible to us I82586_DEBUG as a kernel option.

Tested on arm26 and mvme68k.
2000-05-11 20:55:03 +00:00
bouyer 2222d240a7 Use correct divider value for scxfer 2000-05-11 09:30:12 +00:00
dante 8c999651eb Change adw_isr_callback() status handler
Add a catch for DMA Error which show up on Intel 82443BX Host Bridge/Controller (rev. 0x03). This doesn't fix the problem, but reset the SCSI bus and reinitialize the host adapter
Minor cosmetical changes

Thanks a lot to Greg Oster and Andan Lauber
2000-05-10 21:22:34 +00:00
pk 1bf775b965 Conform bus_dmamem_{alloc,map} usage to bus_dma(9) specs. 2000-05-09 22:42:08 +00:00
explorer 6b66bf5d80 set paa_busname to pcmcia, like the i82365.c driver does. 2000-05-08 19:44:34 +00:00
dante 6644e670f7 Change the way ADW_CARRIER is allocated and handled.
Increased ADW_MAX_CCB to 63 and ADW_MAX_CARRIER to 253
Print WDTR/SDTR negotiation result per target
Protect AdvISR() inside splbio()/splx() pair
Add a pending queue to keep track of all the CCBs that are being executed by the host adapter.
Rewrote timeout handler in a more efficient way:
    After 3 timeout now the SCSI is resetted and all pending queues not completed are now reenqueued in the waiting queue so to get executed just after the BUS Reset (hoping that resetting the SCSI BUS and reinitializing the adapter could solve the problem).
2000-05-08 17:21:33 +00:00
mycroft f5bd37be57 Make the SPARC audioamd driver at least *compile*. Well, the C code, that is.
*sigh*
2000-05-08 02:44:31 +00:00
martin 41dc1a6839 Avoid stomping on the W0_CONFIG_CTRL register which seems not to be
implemented on EISA cards. This makes a 3Com 3C597 Fast Etherlink TX
work for me at last, fixing PR kern/7067.
2000-05-07 14:03:25 +00:00
wiz 7392f90215 multiple inclusion protection 2000-05-07 03:01:58 +00:00
wiz 006e9528a1 install bt8xx.h for bktr 2000-05-07 00:29:03 +00:00
wiz c2f780fbfd Import of (finally busspaced) bktr-driver from FreeBSD (part 2).
This version is from the location specified in the README, modified
by bktr2netbsd, to be committed later.
2000-05-07 00:17:13 +00:00
soren 6a1547768c Typos. 2000-05-06 00:44:00 +00:00
matt 2b44ae84ee LP64 printf fix. (I wish size_t was unsigned long on all platforms). 2000-05-05 17:52:38 +00:00
bouyer 904ca34539 Ops, restore sync/wide parameters after a reselect.
Also, better handling of parity errors.
2000-05-05 09:32:48 +00:00
bouyer 4c9516aa3b Rework the command queue, to avoid having commands blocked at the end
of the queue. Load is now properly balanced across all disks of the same bus.
2000-05-05 09:05:44 +00:00
ad fc89ce9f53 Oops, nuke unused structure member. 2000-05-04 17:27:25 +00:00
bouyer 2306b4a34e When a WDTR message is rejected, initiate sync negotiation anyway.
When a SDTR message is rejected indicate that target is async
Add a missing bus_dma_sync call.
2000-05-04 17:18:27 +00:00
bouyer f5b572d26b - LP64 issues in debug printfs.
- on a phase mismatch, do byte recovery only if we were in data phase.
  Otherwise just clear the fifo.
- Properly handle reject of a sync or wide negotiation.
2000-05-04 16:56:13 +00:00
thorpej b29178acf3 Remove unnecessary junk on #undef line that some C preprocessors
get cranky about.
2000-05-03 19:19:04 +00:00
thorpej e37397c2e8 `typedef void ifnet_ret_t;' isn't valid C -- use #define, instead. 2000-05-03 19:17:54 +00:00
thorpej ab635a46d3 Slight change to previous. 2000-05-03 19:15:27 +00:00
thorpej 2d66ccbd13 Don't return an uninitialized error code. 2000-05-03 18:58:37 +00:00
thorpej 01e8438aa8 Fill in ccb->ccb_req.sgcount with the value that's guaranteed to
be initialized.
2000-05-03 18:58:15 +00:00
bouyer 3bb9a5f666 - do sync/wide negotiation
- use a circular queue for the start slots, so that order has better chances
  to be preserved.
2000-05-02 19:03:02 +00:00
augustss f9dbbf4c92 Make am7930 driver machine independent. PR 10032 from Gregory McGarry. 2000-05-02 06:30:49 +00:00
tsutsui 9498452c05 - Move some initialization into MI rl_attach() from each bus attachment.
- Use proper CARDBUS_* macro in if_rl_cardbus.c
- Use product ID read from PCI configuration space rather than from EEPROM
  in if_rl_pci.c.

Patch sent from Masanori Kanaoka <kanaoka@ann.hi-ho.ne.jp> and
some cosmetic changes by me.
2000-05-01 15:08:50 +00:00
soren ac6e6c980d Add Seeq 8003 register definitions. 2000-05-01 08:06:17 +00:00
dante 1dbea6c0f9 Add new microcode for all of the supported boards.
Fix minor glitches.
Add preliminary support for ASB-3940U3W host adapters; it might work w/ autotermination on.
ASB-3940U3W support is not yet tested due to lack of board.
2000-04-30 18:52:14 +00:00
tsutsui 439b360ab9 Modify EEPROM read functions and handle also 9356 EEPROM.
Fixes kern/9861.
2000-04-30 12:00:40 +00:00
is 4cacfc5684 change 10base-t media _setting_ to set autodetect instead.
Contrary to what the rtl8019 docs say, this seems to be necessary.
Observed by myself when implementing non-auto earlier, and independently
complained about by Antti Kante in PR 9962.
2000-04-28 17:49:03 +00:00
augustss 308fa27a0d Unmute some mixer controls by default. From OpenBSD. 2000-04-28 12:39:59 +00:00
bouyer fcf693203f More big-endian fixes from Izumi Tsutsui. 2000-04-27 16:49:07 +00:00
bouyer bf7a94ec2b Fix copyrigth notice. 2000-04-27 14:06:57 +00:00
bouyer ce7f4dafe1 Big-endian fixes from Izumi Tsutsui. 2000-04-26 20:00:31 +00:00
ad d5d441a516 - Bump xfer size limit to the maximum allowable.
- 20 CCBs is enough to maintain a constantly stuffed inbound FIFO.
2000-04-26 15:58:01 +00:00
ad 75bb77ed56 - Rearrange some spl*() calls to be as intended.
- Scan cac_cd in cac_shutdown(), don't use a SIMPLEQ.
2000-04-26 15:54:02 +00:00
tsutsui b4f524c223 - Allocate mbuf dynamically on Tx and use bus_dmamap_load_mbuf(9).
- Call bus_dmamap_sync(9) as appropriate.
- Leave only register declarations in rtl81x9reg.h and
  split other stuff into rtl81x9var.h.

bus_dma(9) code mostly taken from thorpej's if_rtp.c.
2000-04-26 14:02:34 +00:00
thorpej 8b8597dae0 Recognize the Crystal CS4297A codec, and add a couple of macros
to manipulate AC97 codec IDs.
2000-04-26 00:00:41 +00:00