Commit Graph

1784 Commits

Author SHA1 Message Date
ws 7da71e5f9e Make IPKDB working again.
Add support for i386 debugging and pci-based ne2000 boards.
2000-03-22 20:58:25 +00:00
ws 1b83998bd7 Add bus_space_barrier.
Add DELAY in some busy loops to allow the dma engine to actually do something
(neccessary on fast processors).
2000-03-22 18:02:59 +00:00
onoe 5644a7e248 Update awi driver, which now supports AMD 79c930 based 802.11 DS cards
as well as 802.11 FH cards.  Also, it can operate in infrastructure mode,
adhoc mode, and wi(4) (aka WaveLAN/IEEE) compatible adhoc mode.
2000-03-22 11:22:20 +00:00
mycroft b58a073f39 There's no need to frob cfg4/cfg5 in _attach(), since _reset() does it. 2000-03-22 03:27:56 +00:00
ad e32aed3c4e Pass xfer size to disk_unbusy(). 2000-03-21 19:47:59 +00:00
enami 83446dedc1 - Test the generic device active flag instead of home grown one.
- Test also it in wdcintr.
2000-03-20 22:53:36 +00:00
ad 424f6471cb - Remove dead code.
- Make synchronous writes optional, disabled by default (*way* too slow).
- Handle case where dm_nsegs > CAC_SG_SIZE.
- Fix a couple of silly bugs.
- Fix use of __attribute__((__packed__));
2000-03-20 18:48:34 +00:00
ad d02615fe27 Install cac{reg,var}.h. 2000-03-20 18:07:59 +00:00
thorpej 92d27d3c2e Get rid of the powerhook when we detach. 2000-03-20 07:52:58 +00:00
tsutsui 979d79d931 Use sc_cfg4 for the Am53c974. 2000-03-20 05:48:28 +00:00
mycroft 8b484a0264 NCR_SCSIREGS() and NCR_PIOREGS() are bogus. GC them. 2000-03-20 00:50:20 +00:00
mycroft 41cd6b4fc9 Reset CFG4 and CFG5 correctly in the reset routine. 2000-03-20 00:49:42 +00:00
thorpej 92c19e5ff7 Add suspend/resume hooks to ensure that the chip doesn't scramble memory
after an APM suspend and is unsnoozed after an APM resume.
2000-03-19 21:45:23 +00:00
mycroft b8e1812629 For the ESP406/FAS408, add sc_cfg4 and sc_cfg5.
Add a detach routine, and do the addref/delref.
2000-03-19 21:25:49 +00:00
pk 6d04005134 Check for console input and output separately.
XXX - split input/output for /dev/console is not yet supported.
2000-03-19 12:42:45 +00:00
pk 3f1373d9b7 Define separate flags for console input and output.
Allow console operations to be passed in attachment arguments.
2000-03-19 12:39:47 +00:00
scw b0ca3fa931 The soft-interrupt handler now returns void. 2000-03-19 10:38:43 +00:00
mycroft 744ccf496c Expose ncr53c9x_init(). 2000-03-18 22:18:57 +00:00
mycroft c0b35f72c2 Adjust ncr53c9x_intr() prototype. 2000-03-18 22:09:32 +00:00
mycroft b1d2b97787 Change footprint of ncr5380_intr() to match normal interrupt handler usage. 2000-03-18 17:14:34 +00:00
mycroft 1d1321109f Use bus_space on MIPS. 2000-03-18 17:07:46 +00:00
mycroft 0af581a1a1 Add a ncr5380_attach() routine which does part of the initialization, attaches
the scsibus, and does the addref/delref dance.
2000-03-18 16:13:22 +00:00
mycroft 5960b2aec6 Move some code around in preparation for nca_pcmcia. 2000-03-18 13:05:20 +00:00
ad afaa5767a3 Match shutdown msg with that of cac.c. 2000-03-16 15:13:05 +00:00
ad a81a812b50 Remove unneeded field in 'struct cac_ccb'. 2000-03-16 15:07:22 +00:00
ad 70063dc527 Driver for Compaq array controllers and disks (cac(4)/ca(4)). 2000-03-16 14:52:22 +00:00
fvdl f44ddd61a9 Do bus-specific interrupt handling (i.e. ahc_pci_intr) via a bus_intr
field in the softc, instead of relying on NPCI > 0. This would
prevent things from compiling if PCI buses were in the config file,
but ahc was attached only to something else than the PCI bus.
2000-03-16 10:33:45 +00:00
augustss f9fd27ea3c Fix an uninitialized variable. From Krister Walfridsson <cato@df.lth.se> 2000-03-15 22:41:29 +00:00
thorpej c38405d33d Add power management support to the `tlp' driver. The battery on my
laptop lasts a whole lot longer now.
2000-03-15 18:39:50 +00:00
sommerfeld fbc4dbb7ac Catch up to rearranged aic7*.h files 2000-03-15 07:17:06 +00:00
fvdl 1e4647a15b New ahc driver, a port of Justin Gibbs' FreeBSD driver. This adds
support for the U2W chips, and U160 controllers.
2000-03-15 02:08:28 +00:00
fvdl 085f68836e Common code for EISA and VL frontends for the ahc driver, split off
by Noriyuki Soda when updating for the new ahc driver.
2000-03-15 02:06:18 +00:00
jdc 797ac20035 Add power management hooks. 2000-03-14 21:20:51 +00:00
soren 95054da1a1 Fix doubled 'the's in comments. 2000-03-13 23:52:25 +00:00
thorpej 0391e3393f Slight change to the SROM size printf. 2000-03-10 02:46:39 +00:00
matt 9f86839658 change Mb/s to MB/s (Megabit to megabyte). 2000-03-09 23:19:26 +00:00
groo 7e567738f2 support rfact. use manufac. suggested resistor values by default
clean up some comments
2000-03-09 04:20:58 +00:00
groo af00b7b880 split probe into generic and bus specific 2000-03-07 18:39:14 +00:00
enami c1b54794fc Add missing `cnt++'. 2000-03-07 03:37:39 +00:00
enami 7ce8a9f46b Also, fix indentation in previous commit. 2000-03-07 03:34:52 +00:00
soren dfaacf6eab Fix bug in previous. 2000-03-07 01:08:55 +00:00
soren 6cc1408bca Only print SROM size if TLP_DEBUG. 2000-03-07 01:06:12 +00:00
mycroft 5eee9ca94c Determine the size of the SROM by probing the chip using the standard Microwire
protocol.  Eliminates the need for srom_quirks and some other trash.
2000-03-07 00:39:17 +00:00
mycroft 064b1bd2e9 Fix obvious typo. 2000-03-07 00:33:13 +00:00
thorpej a183d34f04 - Implement cnbell() -- ring the console bell. The cn_bell entrypoint
is optional.
- Add cn_bell to statically allocated consdevs as appropriate.
2000-03-06 21:36:05 +00:00
thorpej a6f861574a No longer necessary to futz with ifp->if_baudrate here. 2000-03-06 21:02:00 +00:00
enami 9066b12bbb Remove redundant assignment. 2000-03-06 10:21:46 +00:00
elric b16807c51a Graphics card independant Bt485 code, derived from dev/pci/tga_bt485.c. 2000-03-04 10:25:57 +00:00
elric c4019af322 Definitions of standard TGA monitors as used by DEC. 2000-03-04 10:25:07 +00:00
elric 7428bb6ffd Definition of struct monitor, which contains syncs, and dot clocks. 2000-03-04 10:24:34 +00:00
elric fec44d6f55 Header for a generic RAMDAC that can be reused between different
graphics cards.
2000-03-04 10:23:39 +00:00
is d8bf2eb8ef - we didn't write enable toe config1-3 registers before trying to set the
media.
- read out original settings to find out what the defaults (EEPROM) for this
  board were, instad of hardwiring to auto.
XXX the first might need further refinement. At least on my boards, 10baseT
doesn't work for 10baseT, only AUTO.
2000-03-03 21:37:18 +00:00
enami a5921b902e Check if device is active in the interrupt handler and the one second
tick handler.
2000-03-02 01:21:56 +00:00
thorpej ac1b683642 Amend previous; pay attention to EX_CONF_MII on deactivate, too. 2000-03-01 20:53:11 +00:00
thorpej 448dfa4249 Only detach PHYs if we have MII in the first place, and remove a bunch
of #if 0'd code which was copied from the Tulip driver.
2000-03-01 20:51:50 +00:00
ad c09a9a072f Oops, pasto. 2000-02-29 11:14:46 +00:00
joda c627d45cc3 (fxp_init): don't clear the FXPF_MII flag as this results in a panic
when detaching
2000-02-28 10:16:17 +00:00
mycroft a87f80ad5f Give the VPP bits better names. 2000-02-28 07:33:08 +00:00
enami 71df610aeb Remove no longer necessary workaround for hpcmips. 2000-02-27 22:57:20 +00:00
augustss 7b4eccb432 Use DPRINTF for debug messages. 2000-02-27 21:06:55 +00:00
mycroft 61cc77895b Some minor cleanup to the probe code. 2000-02-27 20:01:05 +00:00
thorpej 6f1701b01c Put a lock on the pcic, to serialize access to the chip during event
handling.  This is important when multiple cards are present when
the system boots, as we use tsleep now instead of delay in various
places (delay used to provide serialization by virtue of not causing
a context switch).
2000-02-26 17:24:44 +00:00
mycroft 49f1a84ad6 Be even more careful about cleaning up the socket at boot time.
Also, nuke the windows when the socket is disabled.  (They might be deallocated
and reallocated, and would thus cause a conflict.)
2000-02-25 20:45:43 +00:00
drochner 7da6407d04 add (minimal, PIO only) support for the popular "Tundra Universe"
PCI-VME interface chip and a frontend for the "Bit3 Mod. 2706"
PCI-VME adapter
2000-02-25 18:22:39 +00:00
mycroft 7dbe5be481 Disable all windows at boot time, to avoid conflicts when reading the CIS.
Also, GC a small bit of code that's inaccesible after the previous change.
2000-02-25 05:26:17 +00:00
mycroft ac4c520f05 If we fail to attach the socket driver, clear PCIC_FLAG_SOCKETP so that we
don't try to use the socket any further.  (This will only happen if the user
explicitly unconfigured some of the sockets.)
2000-02-25 04:24:37 +00:00
itojun 1ccb9e8170 when change mbuf type, clear m_pkthdr so that we do not get panic with
old data in pointer fields.  NOTE: we'll extend m_pkthdr field soon.

Wondering: do mbuf pre-allocation code in elink3.c really buy us much
performance?  it comes with code duplicate/synchronization problem with
sys/mbuf.h...
2000-02-25 03:39:13 +00:00
groo f5f2ad429c Initial import of National Semiconductor LM7[89] Hardware Monitor with isa and
pnpbios attach.

examples:

	lm0 at pnpbios0 index?
	lm0 at isa? port 0x290


TODO: spinlocks, i2c interface.
2000-02-25 02:17:43 +00:00
ad 50062f0914 - Don't use bitfields.
- Cosmetic changes.
- Shut down all HBAs "simultaneously", not individually.
- Don't bother grokking HA_ST_MORE. It causes problems.
- Other bits and pieces.
2000-02-24 18:47:55 +00:00
thorpej 3f9cf7572c Don't use void * for chipset tags. Bad hacker, no biscuit. 2000-02-22 16:04:44 +00:00
enami 32f100250f Cosmetic changes. 2000-02-22 02:38:26 +00:00
dbj 8f2d14fbd1 added wmesg argument to pcic_delay debug printout 2000-02-21 20:16:22 +00:00
mjacob 7f44584598 clen up some error messages 2000-02-21 19:18:53 +00:00
mjacob d88aecac57 Remove residual and now broken !ISP_NO_FASTPOST_SCSI code (which was
turning back on fast posting!). Redo fabric (re)login loop- don't try
and log out ports that haven't been logged in. Do correct target id
shuffling so we just always find the target ID we want. Add in support
for > 12 byte commands for parallel SCSI. Handle some Dual Bus reset
stuff. Finally fix ABORT COMMAND to use the right 16 bit order of the
handle to abort.
2000-02-19 01:53:56 +00:00
mjacob ff86abe827 Cleanup some printaouts. 2000-02-19 01:51:43 +00:00
mjacob b6dd4ddacf Add in ISP_SWIZZLE_CONTINUATION macro. 2000-02-19 01:51:21 +00:00
mjacob 8c2e6c73e3 Handle dual bus cases for immediate notify and enable lun commands. 2000-02-19 01:50:57 +00:00
mjacob 98f7f7b5a0 Fix ITDEBUG macro 2000-02-19 01:50:25 +00:00
mjacob 77dec43b22 Clarify cd_resid tag. 2000-02-19 01:50:03 +00:00
mjacob 8405ee3752 Add in some mbox return codes that define when we've used up target
ids for doing fabric login. Define the 'Get All Next' SNS response
structure.
2000-02-19 01:49:47 +00:00
thorpej 132107ce3b Add a whole slew of registers found in the PCnet-PCI family. 2000-02-17 20:18:29 +00:00
sommerfeld 50c84950f2 awi: rewrite to be higher performance. 2000-02-17 17:37:23 +00:00
sommerfeld 7adb22cfa5 Add detach support.
Light cleanup.
2000-02-17 15:58:32 +00:00
pk 1d373a94e2 Bump receive buffer size up to the maximum DMA burst boundary. 2000-02-14 17:14:28 +00:00
bouyer 085f44145c - Be more strict in status check before sending a command (make sure
DRQ is not asserted). Closes kern/9346.
- Change the "fake identify before the real one" by a delay(). The real cause
  of the problem is that the drive is unresponsive just after a reset.
  The real problem (and the solution) showed up after the first change.
2000-02-14 12:37:35 +00:00
thorpej 1268cc5d6c If we got an xfer from our backlog queue, don't allow sleeping; we're in
interrupt context.

XXX This is fixed properly in the thorpej_scsipi branch, but that won't
be ready for 1.5, I don't think.
2000-02-12 19:12:52 +00:00
enami 01868857df Add activate routine and check device active flag also in one second
tick handler.
2000-02-12 04:05:49 +00:00
enami fbc47bda30 Cosmetic changes. 2000-02-12 03:55:49 +00:00
mjacob 1b188ee2ff A lot of cleanup and shrinkage. Some items moved to isp_tpublic.h. 2000-02-12 02:33:34 +00:00
mjacob 55a78c1ee4 Add in 12160 (Ultra3) support. Turn back on fast posting for the new
generateion parallel SCSI cards (1240/1080/1280/12160). Split up nvram
reading routines to be more readable. Fix topology reporting- 2200 has
connected topology in mailbox 6 when you're done getting your loop id
(supported: Private Loop (NL Port), N-Port, F-Port, FL-Port). The 2100
doens't report this, but we can synthesize it to be either NL-Port or
FL-Port. Add in some connection mode async events.
2000-02-12 02:32:21 +00:00
mjacob 56e16448ad add in 12160 (Ultra3) related definitions 2000-02-12 02:29:00 +00:00
mjacob 9f63fdeefb add in 12160 (Ultra3) NVRAM definitions 2000-02-12 02:28:32 +00:00
mjacob 87355d841f add some Qlogic 2200 point-to-point and extended ICBOPT definitions 2000-02-12 02:26:26 +00:00
mjacob 50f2620822 add 80 MHz case 2000-02-12 02:25:28 +00:00
mjacob 3f96822c3b some minor cleanups 2000-02-12 02:24:20 +00:00
mjacob 63c56a9de6 add a more public shared i/f to target mode 2000-02-12 02:23:13 +00:00
chopps 44b423d73b always map attr memory 8 bit, since its defined that way. 2000-02-10 09:00:19 +00:00
joda d40e2b51ee add detach code 2000-02-09 22:15:57 +00:00
enami e00270524e ASIX AX88190 support (Planex FNW-3700-T and Melco LPC3-TX) from FreeBSD/PAO3. 2000-02-09 15:40:23 +00:00
enami 99f529f0b3 - Since all resources are mandatory, no need to manage individually.
- KNF some code.
- Factor out some code into function.
- Disestablish an interrupt handler when failed to enable card power.
2000-02-09 14:42:33 +00:00
mycroft 2a2d421881 Forgotten part of chopps\'s i82365_isasubr.c commit. 2000-02-08 17:56:58 +00:00
enami c7573d517e - Bail out from attach stage if failed to enable card, number of iospace
or memspace is unexpected, failed to map iospace or failed to configure
the controller properly.
- Disestablish an interrupt handler if failed to enable card.
2000-02-08 12:49:12 +00:00
thorpej bfdc6759fb Don't rely on the receive descriptor's BCAST/MCAST status bits. Test the
Ethernet destination address to see if it's multicast.
2000-02-08 00:22:13 +00:00
thorpej 52a2804a5c Add a new function call to the ISA DMA API: isa_dmamaxsize(), which returns
the maximum transfer size for the specified DMA channel.  Make all clients
of ISA DMA use this call to determine their maximum transfer size.
2000-02-07 22:07:27 +00:00
jonathan e9a4467c58 Fix thinko in previous revision: it wouldn't catch deassert.
Revert the code inside the new test to the previous-but-one revision.
2000-02-07 02:17:18 +00:00
jonathan 2da22cf2c5 Check for DCD status change interrupts which signal PPS events, even
if the line discipline is ignoring carrier (e.g., via comparam()'s
setting of sc->sc_msr_mask).  Move PPS timestamp outside the normal
status-change processing, and ignore sc_msr_mask when testing
for PPS events.
2000-02-06 23:23:37 +00:00
nathanw 958e687d69 LP64 printf fixes. 2000-02-05 20:02:42 +00:00
augustss 494c9affea Support detach. 2000-02-05 18:11:55 +00:00
enami abac10f360 Yet anothor workaround for hpcmips. I guess real problem is somewhere else...
With rev.1.37, my MobileGearII for DoCoMo finds both ne0 and wd0
even if pcic_delay_sleep is 1.
With rev 1.40, it fails to find wd0.
2000-02-05 04:34:36 +00:00
dante 2a46aa5d9a Fix "unused variable" warning when FAILSAFE option is defined 2000-02-04 16:23:14 +00:00
dante b4edda97d5 Fix a compilation bug due to a missing parenthesys 2000-02-04 15:43:46 +00:00
enami 9c688fd57c s/SYSTEM/SYSMEM/; so that this file compiles again. 2000-02-04 11:04:46 +00:00
joda 8006211b18 fix previous broken commit of the 8-bit memory handling (spotted
by Christian Hopps); this will enable 16-bit memory accesses for devices
that can handle it
2000-02-04 10:18:28 +00:00
itojun 0f09f8dd2b cope with card insertion/removal during suspend-resume session.
(removal/ insertion after suspend and before resume)

How should we deal with card swaps?
2000-02-04 09:45:34 +00:00
chopps d344dd94ab keep track of the enabled state of a socket 2000-02-04 08:42:07 +00:00
enami ed0f41807d - Call if_deactivate instead of smc91cxx_disable when deactivating.
- Fix typo in comment.
2000-02-04 04:05:50 +00:00
dante cbacaf54d7 Add AdvanSys U2W (LVD) boards support 2000-02-03 20:28:26 +00:00
itojun 579e538de0 fix promisc mode for smc91cxx again. 2000-02-03 16:20:49 +00:00
enami 1102c5ed1d Remove temporary workaround for hpcmips. Now it works without it. 2000-02-03 09:00:39 +00:00
enami d6554f3e25 Cosmetic changes; remove unnecessary semi-colon. 2000-02-03 08:59:20 +00:00
thorpej 5802ccb9c9 In ahc_intr(), if initialization failed, don't try to service the
interrupt.
2000-02-03 06:25:09 +00:00
chopps 68a7084f0c attempt to make this more like the std indicates 2000-02-03 06:07:06 +00:00
enami 20522c36ed Detach MII if there is. 2000-02-03 06:03:39 +00:00
thorpej eed75dbc26 Don't dry to diving MIIF_NOISOLATE in the PHY drivers. Instead, pass
flags down from the parent to child vi mii_attach().
2000-02-02 17:09:38 +00:00
itojun b2cac6e684 if_detach for sm/pcmcia.
with addition of resource allocation flags in softc (to DTRT on detach).
2000-02-02 16:04:40 +00:00
enami f7096eef97 Fix typo; not PCIC_DEBUG but PCICDEBUG. 2000-02-02 14:23:48 +00:00
itojun 7a7a3bcfdf handle attach failure in ne/pcmcia more carefully. (otherwise we'll
have trouble on detach)
2000-02-02 13:06:15 +00:00
itojun f4e8883ccd use a bit more standard (sys/device.h) prototype for {dp8390,ne2000}_detach(). 2000-02-02 11:41:56 +00:00
augustss a5f7a2c791 Detach rnd source in ep_detach(). Check for DVF_ACTIVE in epintr(); 2000-02-02 11:00:48 +00:00
enami 60e57afedd - Check also DVF_ACTIVE bit in dp8390_intr.
- Delete ifmedia instances on detach.
2000-02-02 10:50:56 +00:00
enami a54d060a1c Unhook the entropy source on detach. 2000-02-02 10:45:12 +00:00
enami 500a12d2e5 - No need to wait in pcic_chip_socket_disable. It was intended to keep
some period between disable and enable in spec, but is done in
pcic_chip_socket_disable.  And we also disable socket in pcic_deactivate_card,
we should do it in another way if it is really necessary.
- Shorten the wait message so that ps(1) and ps in ddb be happy.
- Replace newly added long delay with sleep.
2000-02-02 10:31:45 +00:00
enami e16a469c8f Cosmetic changes. 2000-02-02 10:19:51 +00:00
itojun 17f5887294 implement if_detach code for ne/pcmcia.
XXX still incomplete, ne_pcmcia_detach() commented out for safery - please test
2000-02-02 10:00:06 +00:00
enami a909d816d2 Add detach support. 2000-02-02 09:34:51 +00:00
augustss e4c766e299 Make sure to untimeout() things on detach. 2000-02-02 08:57:51 +00:00
augustss 82559ba682 Move detach operations around a little to simplify (and perhaps get it
right?).  Prompted by Jason, itojun and myself.
2000-02-02 08:41:00 +00:00
thorpej 84dc99fdea Bring some order to the chaos which was the MII code function naming
"conventions".
2000-02-02 08:05:26 +00:00
augustss ea45df4d30 Make sure to get rid of shutdown hook and ttach media on detach. 2000-02-02 08:00:21 +00:00
chopps ea37d51548 do something more like pccbbs chip_enable. don't enable interrupts
until we have everything else setup..
2000-02-02 04:45:21 +00:00
thorpej 001748dc57 First cut at detach support; doens't fully work yet. 2000-02-01 22:54:47 +00:00
chopps d8e72e215d implement probing for available irqs on non-cirrus pcmcia controllers
including cardbus controllers running in pcic mode
2000-02-01 22:39:51 +00:00
thorpej a72f993570 When possible, use ring mode for descriptors. Not only is this slightly
more efficient on genuine DEC chips, but some clones apparently Lose Badly
if you use chain mode.  To further complicate things, some clones *only*
do chain mode, so make this whole mess conditional.
2000-01-28 23:23:49 +00:00
thorpej 59fbdbb7cb Just use a regular Tx descriptor for the setup packet; don't bother with
a separate one.
2000-01-28 22:23:58 +00:00
pk f18d4a028b Define the fixed hme PHY addresses. 2000-01-28 15:52:34 +00:00
pk 437ad6d192 Reset audio chip on device open. 2000-01-28 15:49:44 +00:00
enami cf83f4ae57 Use delay by default on hpcmips for now. 2000-01-27 01:05:17 +00:00
thorpej a697dac5f2 Back out a change I didn't intend to commit. 2000-01-26 06:17:59 +00:00
thorpej 8949eab0cb Split the code that reads the SEEPROM into its own file. 2000-01-26 06:04:37 +00:00
ad 62c4800e7f Argh - add initialization that got lost during editing of previous addition. 2000-01-26 01:23:32 +00:00
thorpej 62fb37ba49 Some changes for the Xircom X3201-3 in 21143 emulation mode:
- The Xircom doesn't bring itself out of reset; we have to do it.
- The Xircom requires transmit buffers to be aligned to 4 bytes, too.

Partially from Rafal Boni (though the Tx buffer alignment issue is
handled much differently in this version).
2000-01-25 22:11:12 +00:00
chopps da499b1e3a make the wait_ready loop use pcic_delay() (thus tsleep) too for cards
that take a while to become ready
2000-01-25 19:38:18 +00:00
thorpej 6aca67041c Add a chip type for the Xircom X3201-3, and centralize the declaration
of the chip names array.
2000-01-25 19:29:17 +00:00
pk 855fe23671 Prevent possible wayward loop. 2000-01-25 09:30:00 +00:00
enami 5cb9984dd0 Replace long delay with sleep. 2000-01-25 09:17:35 +00:00
enami 012a23a770 Use config_pending and let the kernel thread to attach a card even on boot. 2000-01-25 09:14:27 +00:00
thorpej 8f7ad1f798 When checking for a non-standard address ROM format, allow the
Cobalt Networks address ROM through.

From Soren S. Jorvang <soren@wheel.dk>
2000-01-25 03:14:12 +00:00
ad ea0751f1aa Finish with fixing the SOFTCURSOR stuff. 2000-01-25 02:44:03 +00:00
soda 3d14a7c591 kluge to make this work with NEC M403 (arc/magnum). 2000-01-23 21:06:01 +00:00
thorpej b176cb0869 Add OPMODE_FD (full-duplex) to the media-related OPMODE bitmask. This
will cause the Tulip to be reset when this bit is toggled.  This is
apparently required for some chip revs.

From Matt Thomas.
2000-01-22 21:05:53 +00:00
thorpej dc59bc1db3 Update for sys/buf.h/disksort_*() changes. 2000-01-21 23:39:55 +00:00
ad e716b4ba71 Fix register offset problem. This should make EISA boards work correctly,
and is also needed for the ISA frontend (some time this week).
2000-01-18 16:50:38 +00:00
mycroft 9efabde18b Rearrange ex_intr() to use C_INTR_LATCH the same way the ep driver does,
to prevent race conditions.
2000-01-18 03:35:40 +00:00
itojun e9100143aa in promisc mode, don't inject outgoing packet to bpf twice.
this is because the card gets the outgoing packet from itself in promisc mode
(not really IFF_SIMPLEX).
2000-01-17 07:06:57 +00:00
bouyer 638e1a6958 Improve the downgrade logic:
- If UDMA 2 is failing try UDMA 1 first, it helps in some cases
- downgrade if we get an error in the first 4000 xfers, or if we get
  4 errors in 4000 xfers if the first 4000 went without troubles.

While I'm there commit a local change I have since some time to get my CD
probed: issue a "blanck" IDENTIFY before the one used to detect slave ghosts,
with my drive the first IDENTIFY following a controller reset fails with an
aborted command ...
2000-01-17 00:01:00 +00:00
ad d2d4da8b08 Be consistant when printing haHHBA status. 2000-01-16 14:08:42 +00:00
ad c02df4a16e Typo. Don't worry, nothing that will cause system instability or data
corruption.
2000-01-15 18:13:22 +00:00
ad d2d9ade964 Validate EATA signature in returned EATA configuration data before anything
else. More proper than important.
2000-01-15 18:10:32 +00:00
mjacob 035b04d47a UltraMode is okay for SBus cards with chiptypes of 1020A. 2000-01-14 08:46:37 +00:00
joda 31188c7a4b (tcic_chip_do_mem_map): handle 8-bit memory 2000-01-13 09:38:17 +00:00
joda 4bc55bd307 (pcic_chip_do_mem_map): handle 8-bit memory 2000-01-13 09:00:30 +00:00
ad 192e087585 Make PCDISPLAY_SOFTCURSOR work as it should. 2000-01-12 14:42:21 +00:00
chopps e8a27771a7 remove unused llc from receive logic, protect use of llc header in tranmist
logic, fixes pr#9151
2000-01-09 17:32:58 +00:00
chopps f3b56e33df rename hl_control to hl_ffb (friendly fudge byte) as per cisco insider
the belief is that this was used to align OSI clnp header fields better
2000-01-09 14:47:43 +00:00
chopps 15e3ae96fb pass iso pdus to netiso 2000-01-08 20:46:29 +00:00
nisimura ddd5fcbf66 Remove tinfo_t symbols which result in never used global common variables. 2000-01-07 08:12:15 +00:00
mjacob 1204bc3a13 Bump up level of some very verbose debugs so that SCSIDEBUG doesn't cause them
to print.
2000-01-06 23:02:51 +00:00
mjacob f90308c0b9 Bump default login time to 60 seconds. Move the spot at
which we claim we've seen the loop up at least once so
that we don't hang forever coming up. Add in the basics
for MI target mode stuff. Force the outer layers to deal
with a FCP response coming back that has a CHECK CONDITION
but no sense data.
2000-01-06 03:02:11 +00:00
mjacob 92f150a791 roll revision level and add some taret mode changes 2000-01-06 03:00:11 +00:00
mjacob 02f6f85175 add the enable target mode command, plus some minor fiddles 2000-01-06 02:59:43 +00:00
mjacob bc8be11468 add isp_print_qentry inline 2000-01-06 02:56:20 +00:00
mjacob dc86769bb7 Add in MI target mode code modules 2000-01-05 19:50:05 +00:00
ad e75404417a Add and use pcdisplay_cursor_init(). Still a couple of nits with this, I
will resolve when I can test properly.
2000-01-05 16:14:35 +00:00
ad ea89296a61 Back out previous. A proper fix will follow. 2000-01-05 16:04:00 +00:00
chopps d8a4f43d0f convert to support non-dma IO (for the isa Riscom/N2).
allow the user to set and use the internal baud rate generator
fix the transmission ring logic to support more than 1 frame per interrupt
add autodetection of the base clock frequency.
cleanup the receive ring logic
support dynamically resizing the low-water mark on the fifo in response
	to buffer underruns on transmit.
2000-01-04 06:36:29 +00:00
sommerfeld 9aeb6a25d2 minor KNF tweaks 2000-01-02 02:08:07 +00:00
sommerfeld b38548c58d On a cold suspend to disk, the Sony VAIO Z505 BIOS appears to not
preserve enough of the state of the PCIC to keep it interrupting on
card insertion/removal..

Add a power hook to notice if the CSC_INTR device register is zeroed
on resume, and if so, reset it to a sane value.
2000-01-01 21:57:45 +00:00
ad 6d88cc0622 - Make sense out of comment on dpt_wait().
- Trivial streamlining of logic in dpt_poll().
2000-01-01 19:56:59 +00:00
matt 6b0de2aa24 Off by one error in station events. 1999-12-27 22:41:04 +00:00
matt 711fcf6e2f Add some defensive code to the unsolicited event printing 1999-12-23 18:14:59 +00:00
wrstuden ba7b2b4124 Make the bitfields in here work on big-endian machines. How this ever
worked is unclear.

Patch from thorpej, tested by me.
1999-12-23 00:15:12 +00:00
drochner b95651b752 set carrier early if used as console or kgdb line, fixes PR kern/6547
by Andreas Gustafsson, gson@iengines.com
1999-12-21 11:04:36 +00:00
mjacob 955d4bb00b clean up some f/w revision stuff. clean up some dualbus stuff. 1999-12-20 00:39:16 +00:00
mjacob 83931d33df clean unused fwrev stuff 1999-12-20 00:38:21 +00:00
mjacob 8f18ef5b45 restore (by request) CFGPRINTF to DIAGNOSTIC level kernels 1999-12-20 00:37:49 +00:00
pk 85a78db7b1 Add support for selecting a PHY (i.e. built-in transceiver vs. external MII
device) by using media/instance parameters.
1999-12-18 14:05:37 +00:00
pk 60eeab910b Avoid feeding negative values to the `roundup()' macro.
Configure the MII management interface earlier.
1999-12-17 14:37:15 +00:00
pk aaffba693c Fix status bit symbols strings.
Rename MII receives enable bit to be in sync with the STP2002 datasheet.
1999-12-17 14:34:25 +00:00
fvdl 8b98cf56b6 Deal with cable problems gracefully. From Onno van der Linden. 1999-12-17 08:26:31 +00:00
mjacob edf809c8b6 Dual LVD (1280) support. 1999-12-16 05:35:42 +00:00
ad f607dfe4dd - Change prefix for Bt459 register defs to BT459_IREG to indicate that
these are indirectly accessed registers.
- Add defs for directly accessed registers to bt459reg.h.
1999-12-15 15:09:36 +00:00
tsutsui b5084582c9 add one more htole32().
fixes "tlp0: filter setup timeout" on my macppc.
1999-12-15 12:23:32 +00:00
pk 967d744acd Correctly encode the configured number of buffer descriptors. 1999-12-15 10:33:31 +00:00
pk 9902ec50bb * Probe the MII device.
* Ask for an interesting set of interrupt conditions.
* Correct various other typos and omissions.
1999-12-14 23:58:15 +00:00
pk ea69621efe Add a missing register offset. 1999-12-14 23:54:41 +00:00
drochner 106e6868db fix off-by-one error in font table initialisation
(mostly harmless because it is zero initialized in most cases anyway)
1999-12-13 14:04:06 +00:00
thorpej 014cd3fcc1 Take a stab at making this work on big-endian systems. 1999-12-12 17:46:36 +00:00
thorpej afbb07a0e5 Use htole32() and le32toh(). 1999-12-12 02:53:56 +00:00
thorpej a661b4e5dc Oops, forgot to byte-swap the receive descriptors. 1999-12-12 02:41:51 +00:00
thorpej caae0e1aa1 - Don't try to run the chip in big-endian mode. Not all chips support
this consistently, and it doesn't always work even when the chip
  supports it.
- Make sure things DMA'd to the chip that the chip interprets are in
  little-endian mode.
1999-12-11 00:32:59 +00:00
mjacob 4b6c35ccaf Respond to a crucial security alert. 1999-12-08 11:01:44 +00:00
thorpej ff4a32590d When checking the SROM checksum, if the standard location fails, try
the new standard location (according to the SROM format update document
for the 21143).  From Masanori Kanaoka.
1999-12-07 18:24:01 +00:00
drochner 162086b1cd do the screen switch asynchronously (via timeout(0)) if possible,
this hopefully helps for the (very rare) display corruption reported
in PR kern/8628
1999-12-06 18:54:50 +00:00
ad 801b079e37 If the vga driver isn't present in the kernel and PCDISPLAY_SOFTCURSOR
is set, then pcdisplay_cursor() should disable the hardware cursor first
time it is called.
1999-12-06 10:04:50 +00:00
mjacob 60416909de Oops. The compiler didn't catch this 'used before set'. Kudos
to Sean Doran for finding it and being nice in telling me.
1999-12-05 18:20:53 +00:00
mjacob 53ecdaee6c Some queue related functions now use a u_int16_t. Turn some messages into
CFGPRINTF messages. Clear up the f/w download slightly. If less than
rev 5 2100 chip, turn off loop fairness. Clean up a botch or two.
1999-12-04 03:08:18 +00:00
mjacob 5854be051d Make sure we have a big enough buffer to sprintf into (noticed by
deraadt@openbsd.org).
1999-12-04 03:06:54 +00:00
mjacob 0f0fbfa802 Roll core version minor. Clean out some target mode stuff. Respecify some
queue related functions to take u_int16_t's. Restructure the softc a bit.
1999-12-04 03:06:05 +00:00
mjacob f5c2acedc2 (wow- I thought I'd already committed most of this).
Clean up some isp_attach time stuff- if ISP2100_FABRIC is defined try *really*
hard to make sure that we get the firmware state to FW_READY and see the
loop state where the Port Database is ready to be gathered- if we don't do
this it's unlikely we will be able to correctly query the nameserver because
we won't see that we're on a fabric.

Clean up the completely broken and stupid attempts to hot switch the
'slow' start routine out of the way. Sigh.

Turn speed announcements into CFGPRINTF functions (available only if DEBUG
defined).
1999-12-04 03:04:59 +00:00
mjacob e363023daf Rearrange defines to make the file diff cleaner with OpenBSD. Change CFGPRINTF
and default verbose levels. Add in a forced compile in f/w define unless
either IS_DISABLE_FW or ISP_COMPILE_FW defined.
1999-12-04 02:59:29 +00:00
sommerfeld 878fa4790f Fix "make includes" since pckbc moved to dev/ic from dev/isa
(Hi, Jason!)
1999-12-04 02:16:24 +00:00
sommerfeld 97cb535e46 change comment to mention that this driver also handles the '558 and '559 1999-12-04 02:02:30 +00:00
thorpej 4560ac465a Split the PC-like keyboard controller driver into chip back-end and
bus front-end.
1999-12-03 22:48:22 +00:00
thorpej 66a51bd133 Quiet down the "excessive collision" messages w/ LEDEBUG. None of the other
Ethernet drivers really report this quite as loudly as this did.
1999-12-01 00:40:53 +00:00
ad 4763c00196 - Don't use our own private endian conversion cruft (from OpenBSD).
- SmartRAID V is not and will never be an EATA board (from OpenBSD).
- Use dpt_outl() when issuing EATA command packet address to HBA.
- Fix a style nit.
- Fix a typo.
1999-11-29 15:04:23 +00:00
bouyer 7bd006b847 Improve a few debug messages. 1999-11-28 20:04:22 +00:00
scw 54f42f17fc Don't bother spinning in the console 'putc' routine for the transmitter
to become idle; it actually doesn't matter as the chip takes care of
this for us. It would also spin endlessly in certain circumstances
during shutdown.

While I'm here, (finally) add code to allow sending BREAK characters.
1999-11-28 12:23:18 +00:00
augustss 961d4d6ad2 Change CS4297 id entry. 1999-11-24 23:21:01 +00:00
sommerfeld 17d170b1ca defopt COM_DEBUG, COM_HAYESP, and COM16650 1999-11-22 03:53:38 +00:00
augustss f73590bbf0 Print the PnP id of unknown codecs. 1999-11-20 01:16:15 +00:00
thorpej 9ed17102f4 - Use the common MII bit-bang module.
- Add support other than 128-byte SROMs.
- Add support for the 21142/21143 MII.
1999-11-19 18:22:42 +00:00
thorpej dc5a586c1c Use the common MII bit-bang module. 1999-11-19 18:17:14 +00:00
joda d7496546b5 try to do a better job of figuring out the EEPROM size; the old code
didn't work on (some?) 557-based cards
1999-11-19 15:19:14 +00:00
bouyer 3a220103e8 Adapt printf format for 64bit stats counters. 1999-11-19 10:42:48 +00:00
thorpej 916d6aaa36 Use the common MII bit-bang module. 1999-11-17 17:56:52 +00:00
thorpej 5bd0644a68 Make the MII code match the `ep' driver's (*again*). 1999-11-17 08:03:30 +00:00
simonb fca16d1571 Move the "Attach the interface" section after printing the mac address
and buffer sizes.  Stops the ipv6 attach info from messing up the
other driver info.
1999-11-17 03:42:24 +00:00
dante 70bd4a7d53 Let user enable/disable WDTR, SDTR and Tag Queuing from kernel config file 1999-11-15 19:55:53 +00:00
thorpej 4bdf6bd731 Call mii_down() as appropriate. 1999-11-12 18:14:17 +00:00
scw 3981e235b7 Zero is a valid value for ch_tcor and ch_rcor, so be a bit more conservative
when deciding if the baud-rate should be changed. (Spotted by Bruce Martin)
Also fix the mask used when setting the Rx FIFO threshold to zero. I don't
yet understand how the Rx side worked with the code as it was. ;-}
1999-11-11 09:38:43 +00:00
mycroft f8934aa2f6 Modification to the previous:
We still have to preload the command, when selecting without ATN.  (We could
probably avoid this by being more careful in the interrupt handler...)
1999-11-10 05:02:53 +00:00
mycroft 58fec0d55a When sending a REQUEST SENSE, do *not* attempt to create an I_T_L nexus. This
is technically wrong, and some targets (like my 4x NEC CD-ROM drive) misbehave
when we do.
1999-11-10 04:21:30 +00:00
mycroft 5b75863870 A residual after select with DMA step 2 is legitimate (in fact, *not* having a
residual would probably be cause for concern), so don't spew about it.
1999-11-10 00:42:37 +00:00
sommerfeld dea88f1c20 Completely rewrite receive processing to avoid sleep-deprivation-induced
brain damage and infinite loops, and lousy RTTs

Also, flush tx queues when reassociating with AP and when taking the
interface down.
1999-11-09 14:58:07 +00:00
sommerfeld 1cfdb728d0 avoid touching freed mbuf after allocation failure. 1999-11-08 15:56:16 +00:00
sommerfeld 66ab262b1c add a bunch of debug printfs under IFF_DEBUG and IFF_LINK2;
turn on IFF_DEBUG to trace the management protocol goo.
turn on IFF_LINK2 as well to see beacons.
1999-11-08 15:45:00 +00:00
sommerfeld 94bb856781 misc cleanups; seems to work a little better in a dense-AP environment now.
1) ignore probe requests rather than printing "unknown mgmt subtype"
	(cosmetic)
 2) don't panic if mget of the 2nd mbuf in a chain fails (patch from MCR)
	(though that whole function badly needs to be rewritten)
 3) be a little more tenacious about hanging on to an access point.
1999-11-08 13:24:00 +00:00
sommerfeld 8be740541b Extract MAC address from CIS data in pcmcia front end.
Fix multicast address manipulation.
ipv6 now works through this driver.
1999-11-06 16:43:53 +00:00
sommerfeld 73bf131124 Add rcsid's 1999-11-05 05:13:36 +00:00
thorpej 0ad32f07d2 Revert this part of rev 1.59:
- Be more conservative when resetting the interface after a transmit error.

It caused the interface to totally wedge on the (somewhat common) transmit
FIFO underrun condition.
1999-11-04 20:27:11 +00:00