Commit Graph

1499 Commits

Author SHA1 Message Date
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