Commit Graph

2861 Commits

Author SHA1 Message Date
ichiro 7fadd48a2f using table driven for Prism2 family IDs/Names. 2002-04-04 07:06:16 +00:00
chs e340f273c4 add support for Cogent EM100 (aka Adaptec ANA-6910) TX and FX. 2002-04-04 05:45:54 +00:00
ichiro ff941b5271 s/WI_NIC_3842/WI_NIC_3842_EVA 2002-04-03 15:43:14 +00:00
ichiro a07b331747 add more IDs of PRISM family 2002-04-03 15:33:20 +00:00
isaki 677cd20c7f initialize codec variables every open(). 2002-04-02 15:22:37 +00:00
isaki fec379f5cd Correct ADPCM -> linear8 conversion routine.
Now, we can record on vs0 (but it's very noisy)
2002-04-02 15:19:00 +00:00
petrov 71419e9eb9 Return from interrupt handler after chip init(reset). 2002-04-02 09:48:27 +00:00
martin bf8b82a971 Move isic_intr_enable to a file not depending on the HSCX driver, so
ifpci-only configurations build again.

Remove the now unused controller enable function from the passive drivers
l2<->l1 interface.
2002-04-01 12:14:26 +00:00
martin 71b6502920 Do not bother to enable interrupts at attach time - we are going to disable
them again imediately
2002-04-01 12:12:26 +00:00
ichiro 2288447a2e add more IDs of PRISM family 2002-04-01 02:46:47 +00:00
bouyer bf5fb91f9c Fix typo in a comment. Reported by Alexander Yurchenko in private e-mail. 2002-03-31 19:47:39 +00:00
mjacob 9fff4c6833 Thanks to Jason Wright of OpenBSD- spotted that the offsets were all wrong
for bus_dmamap_sync calls. They'd been blindly ported from Solaris which
had *one* dma map for the entire control space, so offset was incremented
for the Request, Response and FC Scratch spaces. Tsk. There are three maps
in NetBSD. I should probably make them one anyway.
2002-03-31 17:56:54 +00:00
jdolecek 3679b97e61 add some bound checking
patch submitted by IWAMOTO Toshihiro in kern/13112
2002-03-31 10:44:44 +00:00
ichiro cf8b4530ef add more description of "Connection control characteristics" in Prism2 2002-03-31 06:09:37 +00:00
ichiro 42d7147fe3 typo fixed 2002-03-31 05:54:19 +00:00
ichiro 53f97402c6 Dont use magic number.
added parameter of WEP flags
2002-03-31 05:51:47 +00:00
ichiro 17a3f4351a delete incorrect register 2002-03-31 05:22:26 +00:00
ichiro 94e7948a7e add rx/tx status register 2002-03-31 05:12:55 +00:00
ichiro 5cebe8a050 mistake 2002-03-31 04:06:29 +00:00
ichiro d68d2ca3ec add more frame structure register 2002-03-31 03:36:15 +00:00
uwe 782296b588 First cut at framebuffer driver for Integraphics Systems IGA1682.
It's not finished yet, but it can do enough to get wscons working for
Krups JavaStation.
2002-03-30 19:48:55 +00:00
martin e5c92d53f8 Be a nice citizen, enable interrupts only when we are ready to talk
to the ISDN (i.e. when userland has /dev/isdn open).
2002-03-30 19:13:44 +00:00
martin ed4ba39c75 Add a command to layer 1 drivers to update LED state for controllers that
have status LEDs.
2002-03-30 17:54:17 +00:00
ichiro 7cd9648d72 added sc_pri_firmware_ver, and print Primary/Station firmware versions.
cosmetic change.
2002-03-30 16:44:59 +00:00
ichiro c05f3dd312 the kind of "firmware" was clarified.
firmware -> station firmware
2002-03-30 15:58:45 +00:00
ichiro 20417d89e0 add WI_RID_PRI_IDENTITY rid , (0xFD02)
Reflects the primary funcs firmware Identification number
2002-03-30 15:53:26 +00:00
tron 92ca7a2bc8 Apply changes provided by Thilo Manske in PR kern/16118:
1. Fix setting of nominal fan speeds with ENVSYS_STREINFO.
2. Treat Winbond 83781D specially because it has a programmable divisor for
   FAN3 unlike generic devices.
3. Set nominal RPMs.
4. Fix a typo in the code for setting FAN3's divisor for W83782 type
   hardware monitors.
2002-03-30 13:37:41 +00:00
martin e14f4779db Avoid duplicate expensive lookups by passing a pointer to the call
descriptor/a pointer to the layer 3 state directly to driver functions,
instead of their ID/index.
2002-03-30 11:15:41 +00:00
martin f5e2c967fc Split BRI attaching into two phases, so lower layer drivers can get their
BRI identifier and L3 driver state early on, then finish initializing and
announce the controller to userland when it's ready.
2002-03-29 20:29:53 +00:00
matt 8a30192c27 Correct a comment and cleanup slightly how the local ethernet is programmed
into the chip.
2002-03-29 00:00:10 +00:00
bouyer da0cf38ed5 In wdcintr(), it !WDCF_IRQ_WAIT, read the status register anyway to clear a
possible pending interrupt. This should avoid the interrupt loop described
in PR kern/15841.
It is safe to read status here, because if we're not waiting for an interrupt
we have no command pending, so the device should be idle.
2002-03-28 22:51:58 +00:00
onoe 45a8f0749c Fix to work Symbol firmware card, which cannot be initialized more than once.
Tested with 3Com 3CRWE737A and Intel Pro/Wireless 2011.
2002-03-27 08:01:22 +00:00
chs 150665fbb1 91C96 has the same chip ID as 91C94, list both in attach output. PR 11413. 2002-03-27 07:50:54 +00:00
martin ebd73ccd11 After Jason Thorpe explained to me how it is supposed to work, implement
(de)activate for pcmcia cards.
Implement detach/(de)activate for PCI cards.
Clean up internal state (free call-descriptors) if a controller is
detached while it has open connections.
2002-03-27 07:39:35 +00:00
chs 23825982c3 add support for SMC 9332DST. 2002-03-26 07:57:16 +00:00
chs 99b5d17961 move some prototypes from tulip.c to tulipvar.h so they can
be used by bus-specific code.
2002-03-26 07:41:40 +00:00
martin 0db68b667b Now that we have all pieces in place (and enough granularity to specify
B-channel and D-channel drivers separately) split the Fritz!PCI card
driver out of the isic driver.

The new device is called "ifpci" and uses the same D-channel driver as the
isic devices, but has it's own B-channel driver.
2002-03-25 16:39:52 +00:00
martin 909e313a80 Remove a leftover from the BRI registry at layer 2.
Initialize layer 2's idea of it's BRI id after attaching.
2002-03-25 14:44:46 +00:00
martin a994533d0a Make pcmcia cards detach properly.
Notify userland of attaching/detaching cards.
This partly fixes PR 15951.
2002-03-25 12:07:33 +00:00
dbj ea44522489 changes from Warner Losh to read firmware version for non prism2 cards 2002-03-25 09:10:54 +00:00
martin 8a2d9422bd Fix confusion about the return value from the internal MI probe routine.
Make the ISA probe actually (silently) fail if no card is found.

XXX - need to aquire the SBUS variant of this card some day or have
Jaromir find an MCA one.
2002-03-25 09:08:09 +00:00
martin 0bc69b6498 Now that we have all the pieces of the puzzle available start to unriddle
and move them in their proper places.

Move the BRI registry from layer 2 (duh!) to layer 4, so active cards
(which don't have layer 3 or layer 2 in their driver). Remove all remaining
hard coded controller and driver types. Remove any arbitrary hard coded
limits, at least those that show up in the internal API.

This fixes PR 15950.
2002-03-24 20:35:43 +00:00
jdolecek 9977ae0589 ncr53c9x_attach(): if sc_rev is NCR53C90_86C01, set it to ESP100 once
the variant name is printed.
This fixes a problem that the card would be treated as ESP100 in
ncr53c9x_reset(), but not on couple other places (pointed out by
Andy Doran in private e-mail).

g/c now redundant case entry in ncr53c9x_reset()
2002-03-24 17:16:19 +00:00
bjh21 cc685cb13e __arm26__ -> acorn26. This has the advantage of actually being defined. 2002-03-24 15:52:33 +00:00
bjh21 a90a7a1ab7 Mention the DS2401 Silicon Serial Number. 2002-03-24 15:51:45 +00:00
itohy 78b5427b7e Add wait-for-ready code between setting MCE and changing data format,
which is required by OPL3-SA2 (YMF711) chip.
Fixes PR kern/14819.
2002-03-23 23:40:32 +00:00
gmcgarry 4c3affa3f6 Remove FreeBSD RCSID. 2002-03-23 03:40:24 +00:00
martin 9cea4a0ab0 Bring the daic driver into the new ISDN world order.
Enable active card support in the ISDN subsystem. (Had been disabled since
it couldn't be tested before.)
2002-03-22 09:54:15 +00:00
mjacob d76d04685a Handle Port Unavailable the same as Port Logout (i.e., send a LIP).
Unconst pointer to f/w in the ispdv structure. Too many compilers get
unhappy over our walking the array. Make casts as appropriate so that
initialization in structure is still happy.

Limit length of fabric to 256. This will all go away soon.

Do a cleaner case of keeping multiple CPUs/threads from reading the
same response queue entries.
2002-03-22 02:34:05 +00:00
fredette d564a038af Fixed a possible overflow bug in the timeout calculation. 2002-03-22 00:15:21 +00:00
itohy a56d289043 I have Prism2 with 0.8.2 firmware, and have no problem
using WEP without promisc on the device.
2002-03-21 07:31:37 +00:00
thorpej 1a69060597 When getting the packet off the interface, make sure the payload is
aligned after the Ethernet header.

kern/15982, Hiroyuki Bessho <bsh@grotto.jp>
2002-03-20 17:42:23 +00:00
martin e2c42aeaa8 Remove all knowledge about specific application (layer 4) drivers from
the generic layer 4 and layer 3 management system.

This should make the layer 4 driver API LKM clean - finaly.

Make the Fritz!PCI driver work again after resent changes (oops!),
noted by Frank Kardel (PR 15948) and Matthias Scheeler.
2002-03-17 20:54:04 +00:00
atatat 31144d9976 Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for
indicating an unhandled "command".  ERESTART is -1, which can lead to
confusion.  ERESTART has been moved to -3 and EPASSTHROUGH has been
placed at -4.  No ioctl code should now return -1 anywhere.  The
ioctl() system call is now properly restartable.
2002-03-17 19:40:26 +00:00
martin 1e802e7eba Clean up the application (layer 4) driver vs. B channel driver interface.
One step further on the way to make layer 4 drivers LKMable.
2002-03-17 09:45:58 +00:00
dbj 28819987b7 don't set prism2 bit when WI_NIC_LUCENT is detected 2002-03-17 02:52:59 +00:00
chs 9846849435 in the TULIP_ROM_MB_21142_MII case of tlp_2114x_isv_tmsw_init(),
use "cp" instead of "ncp" as a temporary pointer into the SROM.
we still need the value of ncp here, it points to the next media block.
(update the copy of this code in tlp_21142_reset() just 'cause.)
this makes the BNC port on the Adaptec ANA-6911A work.
2002-03-16 17:38:35 +00:00
isaki 81b3e9fb81 Fix mis-increment bug in converter msm6258_ulinear8_to_adpcm().
This fix needs factor_denom.
2002-03-16 09:00:42 +00:00
martin f4be3308da Psssst, don't tell anybody I commited this.
Add an ugly hack, #ifdef WI_AT_BIGENDIAN_BUS_HACK, to make the wi driver
access the underlying bus in big endian byte order.

This makes it possible to use this driver (probably one of the most
interesting ones) in the pcmcia slot of a stp4020 (nell) adapter at sbus. The
sparc ports bus_space_{read,write}_* macros do not provide a way to do this
cleanly now as they ignore the bus_space_tag_t parameter.

XXX - make bus_space_{read,write}_* on sparc do the right thing.
2002-03-15 13:15:36 +00:00
tsutsui f54d57e135 Remove an arg name in prototype declaration. 2002-03-15 12:57:21 +00:00
chs 1ba402084f assume that 21143 SROM info blocks are in extended format (as the spec
requires), even if the bit to indicate this is not set.
this makes Phobos P430 4-port cards work.
2002-03-14 04:44:34 +00:00
ad 5d95c4499b Fix botch in previous. 2002-03-13 23:17:18 +00:00
ad b89e39b91a Reorganise the wsfont stuff slightly so that multiple display adapters
with different bit/byte order requirements can co-exist happily.
2002-03-13 15:05:13 +00:00
uwe a05702eaac Rework the driver to add EBus DMA support and improve APC DMA support.
Audio-related stuff is left almost intact.

* support audiocs at ebus playback and capture
    tested on krups and u5 (thanks, martin)
* make first attempt at supporting audiocs at sbus capture
* nb: full-duplex is not tested
* while here, fix CSAUDIO_MONITOR_MUTE to be of CSAUDIO_MONITOR_CLASS
    i.e. outputs.monitor.mute -> monitor.monitor.mute

Ok by pk, eeh.
2002-03-12 04:48:28 +00:00
ichiro 8596bfd754 fix 128bit WEP work with Prism2 Card.
from FreeBSD
2002-03-10 14:43:38 +00:00
itohy d5f39a2d9c Add explicit support of OPL3-SA2 (YMF711).
Not well tested....
2002-03-10 13:57:10 +00:00
augustss c93a7a4d14 Add a nic I don't really know much about, but it's used on my D-Link card. 2002-03-10 00:16:47 +00:00
thorpej a180cee23b Pool deals fairly well with physical memory shortage, but it doesn't
deal with shortages of the VM maps where the backing pages are mapped
(usually kmem_map).  Try to deal with this:

* Group all information about the backend allocator for a pool in a
  separate structure.  The pool references this structure, rather than
  the individual fields.
* Change the pool_init() API accordingly, and adjust all callers.
* Link all pools using the same backend allocator on a list.
* The backend allocator is responsible for waiting for physical memory
  to become available, but will still fail if it cannot callocate KVA
  space for the pages.  If this happens, carefully drain all pools using
  the same backend allocator, so that some KVA space can be freed.
* Change pool_reclaim() to indicate if it actually succeeded in freeing
  some pages, and use that information to make draining easier and more
  efficient.
* Get rid of PR_URGENT.  There was only one use of it, and it could be
  dealt with by the caller.

From art@openbsd.org.
2002-03-08 20:48:27 +00:00
mjacob 1d228ae84c Disable RIO (reduced interrupt operation) for 2200 boards- it seemed like
it worked- but I ran into a case with a 2204 where commands were being lost
right and left. Best be safe.

For target mode, or things called if we call isp_handle_other response- note
that we might have dropped locks by changing the output pointer so we bail
from the loop. It's the responsibility of the entity dropping the lock to
make sure that we let the f/w know we've read thus far into the response
queue (else we begin processing the same entries again- blech!).
2002-03-07 00:14:04 +00:00
dbj 5c7e9abe49 return EINPROGRESS instead of EINVAL when trying to read
the results of an AP scan that is not finished
2002-03-06 14:41:39 +00:00
itohy 1990961dc9 Fix ADPCM playback/recording. 2002-03-06 07:12:02 +00:00
itojun ac36f7cb2c bring in latest ALTQ from kjc. ALTQify some of the drivers. 2002-03-05 04:12:57 +00:00
simonb 64c7743a05 Don't "extern int cold;" - this is in <sys/kernel.h>. 2002-03-04 02:19:07 +00:00
dbj 47b3797fe7 Don't attempt to gather unrequested statistics.
Allow SIOCSWAVELAN with WI_RID_IFACE_STATS to request
an immediate statistics update.

We might in the future want to have SIOCGWAVELAN with
WI_RID_IFACE_STATS return an error if a statistics gathering is in
progress.  Then the caller could request fresh statistics and gather
them when they are done.  Instead, we currently just return whatever
statistics are available, which may be up to 60 seconds old.
2002-03-04 01:56:12 +00:00
dbj e9d22f79b0 fix byte swapping when gathering statistics
this should complete the fix to pr 14385
AP scanning and statistic gathering should work on le hosts now
2002-03-04 01:33:17 +00:00
dbj 918b9d4dec correctly handle AP scanning result when there are no APs 2002-03-04 01:30:04 +00:00
dbj 0dca7b4f6d used %02x instead of %x when printing out BSS ids 2002-03-04 01:21:07 +00:00
dbj 0812667818 s/Faild/Failed/ 2002-03-04 01:19:24 +00:00
bouyer 5d5c5c0ddd As siop_morecbd() is called from the kernel thread, protect access to the
queues with splbio.
2002-03-01 21:37:03 +00:00
dbj 2622b21584 use #ifdef WI_DEBUG instead of #if WI_DEBUG 2002-02-26 09:29:18 +00:00
dbj 44ab750650 avoid walking full length of unknown stats structure.
this partially addresses pr14385.
there is still a byte swapping bug retrieving the
stats structure.  Since both the type and the length
are incorrectly swapped, we would timeout while reading
an extra long section (caused by the byteswapped length)
of garbage data.
turning on WI_DEBUG now just reports the unknown info type
which can be seen to be obviously incorrectly swapped
on macppc
2002-02-26 09:18:54 +00:00
kleink 9e8cc352a9 Update datasheet URLs. 2002-02-25 17:37:47 +00:00
scw c4dbe1a160 Allow MD code to provide functions for reading/writing NVRAM/RTC
locations. If passed NULL, the old behaviour using bus_space_{read,write}_1()
is used. Otherwise, all access to the chip goes via the MD functions.

This is necessary for mvmeppc boards where the mk48txx NVRAM/RTC is not
directly addressable.
2002-02-23 17:18:54 +00:00
mjacob 91f80cf3fc Implement F/W crashdumps for 2200 && 2300 cards (kernel compile option).
Distinguish between 2312 and 2300 cards (they *are* different). Enable
RIO (Reduced Interrupt Operation) for the LVD cards (hey- I've seen
batched completions of the 30 commands at a time with this,....)...

If we get a Port Logout on local loop topologies, we have to force the
f/w to log back in. The easiest way (for us) to do this is to force
a LIP. This also will wake up the disk that probably just had a f/w crash.

Implement mailbox 'continuations'- this allows interrupts to re-drive
a mailbox command if it's one that just essentially repeats the previous
mailbox command (e.g., f/w download). This saves a boatload of sleep/wakeup
twitches.

If we're not a 2300 and we're about to return with a 'bogus interrupt'- check
the semaphore register to be non-zero at all and outgoing mailbox 0- this
seems to be where some of the lost ISP1080 commands came from.
2002-02-21 22:32:40 +00:00
yamt e3f53c00e2 fix indent 2002-02-18 14:45:56 +00:00
yamt 1486b3d395 add a missing splx in the case of error. 2002-02-18 14:41:50 +00:00
bjh21 00994a7564 Add prototypes for static functions. 2002-02-17 20:08:34 +00:00
martin 387b55cc79 Protect calls to wi_cmd() from callout handlers by proper splnet()/splx()
pairs. Without this, the interrupt handler will steal the "command completed"
status and wi_cmd will busy loop until it times out.

Add some error output to make failure modes like this more prominent.

This should fix PR 14559.
2002-02-17 19:24:18 +00:00
chs b744097a5f allow writing to write-only mappings. fixes PR 3493. 2002-02-14 07:08:02 +00:00
itojun 75777b6533 make the driver even more silent; print state change messages only if IFF_DEBUG. 2002-02-13 22:06:17 +00:00
kleink db48366eb0 Forgot to mention two reserved bits. 2002-02-11 19:01:28 +00:00
wiz 9baadd8ee5 "doesn't" should have an 's'. 2002-02-11 11:19:26 +00:00
wiz b231fd7631 explicitly, with two l. 2002-02-11 11:01:52 +00:00
pooka 80b8890265 point sequioa.h to new location 2002-02-10 11:48:56 +00:00
tsutsui 0f5d20e20b - rename struct iha_scsi_req_q -> struct iha_scb
- reorder some functions
- some more cosmetics
2002-02-09 15:13:00 +00:00
pooka 8c1a2832b7 Remove inclusion of unused machine/cpufunc.h, it doesn't belong here anyways. 2002-02-06 14:50:42 +00:00
pooka f323b44887 remove include of <machine/cpufunc.h>, it's not used here
fixes compile (at least) on arm32
2002-02-03 23:32:10 +00:00
jdolecek f32b3f4f89 Reduce the massive code duplication regarding joy(4). Split it into
MI and MD parts, and make ISA/ISAPNP/PCI joy(4) attachments MI.
2002-02-02 18:37:38 +00:00
augustss e16f901581 Make auich support variable rate codec, and suspend/resume.
From URA Hiroshi in PR kern/15431 (partly from OpenBSD).
2002-02-02 11:13:44 +00:00
martin 0b57fdbf9d Don't display some (non-exceptional) events unless IFF_DEBUG is set.
I have a card that fires a continuos stream of "connected" events (one
every 30 seconds) while it hasn't found any peer.
2002-02-01 13:35:41 +00:00
uwe 13d8e231d8 Fix KBS_WARM comment. 2002-01-31 13:25:20 +00:00
simonb 5d591d8020 White-space niggle. 2002-01-31 06:37:30 +00:00
ad 49849b4d3a - Always validate the return value read from the outbound FIFO.
- Copy access method info into the softc so we don't double dereference.
- Remove static on functions.
2002-01-25 16:10:35 +00:00
lukem 93e58d97ac Add support for WSCONS screenblank ioctls. From Phil Budne in [kern/15213]. 2002-01-23 17:11:38 +00:00
ichiro ed09e8d901 It corrected forgetting to attach "," 2002-01-23 14:50:45 +00:00
ichiro 8d5e7bd872 if AP is nothing, FrameLen is 3 or less. 2002-01-21 21:55:05 +00:00
ichiro 65967c6704 Print Association status changes to the console. 2002-01-21 11:29:22 +00:00
ichiro e08ec84292 "Association Faild" was added to "Link Stat" messages.
;
Implement wi_scan into wi.c.
forces if_wi to initiate one round of access point scan.
This code was written by jrb@cs.pdx.edu, modified and bug-fixed by ichiro@netbsd.org
2002-01-21 11:28:18 +00:00
ichiro 93c743cc3b mistake bit number of tx_rate
case 4 -> case 5
2002-01-20 07:26:14 +00:00
ichiro 19ae79a0b6 Upps
Garbage was removed.
2002-01-20 06:49:32 +00:00
ichiro f62afb33a0 add few Information frame types 2002-01-20 06:45:22 +00:00
ichiro c1a93623bd When the length of the key of WEP was 5 or less octets, WEP was set to 40Bit.
5.5MBps were added to ifmedia.
2002-01-20 05:39:52 +00:00
ichiro c9cdd04709 add scan req/result RIDs 2002-01-20 04:37:04 +00:00
eeh 160abd5faf Remove some obsolete code. 2002-01-19 03:16:38 +00:00
ichiro 0c0bcf42a6 to use 104bit WEP key 2002-01-18 11:41:49 +00:00
ichiro da39bf6c59 some resources was released at the time of detach. 2002-01-16 03:27:37 +00:00
ichiro f855f38bdd add detach/activate routine 2002-01-16 02:11:20 +00:00
bouyer 8bf0d659b0 Don't use chp->wdc if it's NULL. 2002-01-14 21:51:35 +00:00
christos f9b7ffe292 Add LBA48 support based on patches from Keisuke YOSHIDA. KNF a bit while
I am there.
2002-01-13 17:24:28 +00:00
tsutsui 84926576f1 Call malloc(9) with M_ZERO flag instead of memset() after malloc(). 2002-01-12 16:03:11 +00:00
drochner 5e6cfa6a09 print link status changes to the console 2002-01-09 19:37:02 +00:00
dbj f629228e87 Changes to the wdc(4) mi driver that add the WDC_CAPABILITY_SELECT
flag and a callback function which gets called whenever a target is
selected on a channel.

The macppc wdc driver needs to reprogram its timing register
differently for each target on a channel each time that target is
selected.  I also changed the ATA4_TIME_TO_TICK to use a divisor of
15, which brings our timing calculations consistent with darwin.

These patches fix problems on my dual usb ibook with combo dvd/cdrw
drive because the hard drive supports udma and the combo drive does
not.  Without turning off the udma timings in the configuration
register, I cannot access the non-udma combo drive.
2002-01-07 22:11:17 +00:00
jmcneill 4e14c9fb3f For cosmetic reasons, add 'ESS Technology ES1921' to the table of codec Ids. 2002-01-06 17:03:17 +00:00
explorer a40b01901f revert changes I made a long time ago. This should undo the changes which are causing problems on some non-x86 platforms. I'll probsably redo some of these changes, but after the next release branch. 2002-01-05 20:10:53 +00:00
mjacob d9a0044d29 Implement REDUCED INTERRUPT OPERATION usage for FC cards- this allows the
firmware to delay completion of commands so that it can attempt to batch
a bunch of completions at once- either returning 16 bit handles in mailbox
registers, or in a resposne queue entry that has a whole wad of 16 bit handles.

Distinguish between 2300 and 2312 chipsets- if only because the revisions
on the chips have different meanings.

Add more instrumentation plus ISP_GET_STATS and ISP_CLR_STATS ioctls.
Run up the maximum number of response queue entities we'll look at
per interrupt.

If we haven't set HBA role yet, always return success from isp_fc_runstate.
2002-01-03 21:45:06 +00:00
augustss 1c06f6a40f Add support for radio cards. Written by Maxim Tsyplakov and Vladimir Popov
for OpenBSD, from where it was imported.
2002-01-01 21:51:38 +00:00
thorpej aedf82267c Move the declaration of an enum to avoid an "unnamed field not allowed"
warning in gcc 3.1.
2001-12-31 21:30:01 +00:00
junyoung a6a57e7b6f Registers are of u_int8_t type. 2001-12-30 13:13:04 +00:00
junyoung 0d2905f4fc - Add a structure needed for access to CRTC registers.
- Add definitions for misc output register.
- Add defintions for the number of registers.
2001-12-29 17:44:35 +00:00
junyoung dde1e51a31 Add functions needed for access to CRTC registers. 2001-12-29 17:40:35 +00:00
junyoung ea3be41a59 KNF. 2001-12-29 17:06:50 +00:00
christos 49b8e36112 Clean up the C_ and S_ constants. We don't really need two sets of them.
Also make the interrupt handler for older 3com cards look like the xl one.
I.e. don't ack the interrupt latch bit before checking if it is set.
At the same time, introduce constants for the watched interrupts, so that
we don't copy them all over the place.
2001-12-28 20:35:46 +00:00
ichiro 766857df86 add FUJITSU MBH10302 specific Registers 2001-12-23 09:21:00 +00:00
elric bfa5b70752 Hmmm. These were done this year, not 3 years ago. 2001-12-22 01:38:20 +00:00
matt 7ddce9880c When mapping the consumer assignment, assign db_seg[0] to cb_seg[0] so any
private fields are copied as well.  Then adjust cb_seq[0] public fields.
This make the DEFPA come up on sparc64.
2001-12-21 23:21:47 +00:00
soren 95c864d4f6 Previous was committed by mistake; revert. 2001-12-18 15:50:23 +00:00
tsutsui 7d563fd40e malloc() + memset() -> malloc() with M_ZERO flag 2001-12-16 04:17:02 +00:00
bjh21 7f32875295 if_media support for the DP83905 AT/LANTIC (a souped-up DP8390). 2001-12-16 00:22:43 +00:00
bjh21 c72d5d40dd Add code to support the bugged Macronix MX98905 chip, as used in several
podulebus Ethernet cards.  This replaces the NE2000 memory-access routines
with ones that don't try to transfer more than 255 bytes at a time.

This code should perhaps be merged into ne2000.c, but presumably most NE2000
clones won't need it.
2001-12-15 17:47:34 +00:00
soren 875bff0962 To make dev/pcmcia work on platforms with 64-bit bus_addr_t and
32-bit bus_size_t (sparc), change the pcmcia_mem_map(9) offsetp
argument to bus_size_t as it is used as a bus_space offset.
2001-12-15 13:23:20 +00:00
soren df984ecc52 Use bus_size_t's for bus space read/write offsets. 2001-12-15 11:41:09 +00:00
bjh21 2ee0431a3d Register definitions for the NatSemi DP83905 AT/LANTIC, as used in many
podulebus Ethernet cards.
2001-12-14 10:16:03 +00:00
mjacob 219d22404b Major restructuring for swizzling to the request queue and unswizzling from
the response queue. Instead of the ad hoc ISP_SWIZZLE_REQUEST, we now have
a complete set of inline functions in isp_inline.h. Each platform is
responsible for providing just one of a set of ISP_IOX_{GET,PUT}{8,16,32}
macros.

The reason this needs to be done is that we need to have a single set of
functions that will work correctly on multiple architectures for both little
and big endian machines. It also needs to work correctly in the case that
we have the request or response queues in memory that has to be treated
specially (e.g., have ddi_dma_sync called on it for Solaris after we update
it or before we read from it).

One thing that falls out of this is that we no longer build requests in the
request queue itself. Instead, we build the request locally (e.g., on the
stack) and then as part of the swizzling operation, copy it to the request
queue entry we've allocated. I thought long and hard about whether this was
too expensive a change to make as it in a lot of cases requires an extra
copy. On balance, the flexbility is worth it. With any luck, the entry that
we build locally stays in a processor writeback cache (after all, it's only
64 bytes) so that the cost of actually flushing it to the memory area that is
the shared queue with the PCI device is not all that expensive. We may examine
this again and try to get clever in the future to try and avoid copies.

Another change that falls out of this is that MEMORYBARRIER should be taken
a lot more seriously. The macro ISP_ADD_REQUEST does a MEMORYBARRIER on the
entry being added. But there had been many other places this had been missing.
It's now very important that it be done.

For NetBSD, it does a ddi_dmamap_sync as appropriate. This gets us out of
the explicit ddi_dmamap_sync on the whole response queue that we did for SBus
cards at each interrupt.

Set things up so that platforms that cannot have an SBus don't get a lot of
the SBus code checks (dead coded out).

Additional changes:

Fix a longstanding buglet of sorts. When we get an entry via isp_getrqentry,
the iptr value that gets returned is the value we intend to eventually plug
into the ISP registers as the entry *one past* the last one we've written-
*not* the current entry we're updating. All along we've been calling sync
functions on the wrong index value. Argh. The 'fix' here is to rename all
'iptr' variables as 'nxti' to remember that this is the 'next' pointer-
not the current pointer.

Devote a single bit to mboxbsy- and set aside bits for output mbox registers
that we need to pick up- we can have at least one command which does not
have any defined output registers (MBOX_EXECUTE_FIRMWARE).

Explicitly decode GetAllNext SNS Response back *as* a GetAllNext response.
Otherwise, we won't unswizzle it correctly.

Nuke some additional __P macros.
2001-12-14 00:13:44 +00:00
junyoung f075aa60ac ANSIfication & cosmetic changes. 2001-12-13 08:35:38 +00:00
junyoung 9ff2a7a76d ANSIfy. 2001-12-13 08:34:55 +00:00
junyoung d5decae4e0 ANSIfication & cosmetic changes. 2001-12-13 08:31:39 +00:00
elric 94448f7e52 Update the ramdac interface to be allow the setting of dotclocks. This is
required to support the driver in ibm561.c.
2001-12-12 07:47:46 +00:00
elric 8ffabd82eb Initial support for the IBM RGB561 RAMDAC. This uses the same interface
as the Bt463 and Bt485 drivers.
2001-12-12 07:46:48 +00:00
kleink 0fc3ae7e76 Add (some) register definitions for the Motorola MPC105 PCI Bridge/Memory
Controller (PCIB/MC).
2001-12-10 12:09:33 +00:00
augustss ba528e6dec Small change to Christos' fix: allow malloc() to return NULL, but complain
if it does.
2001-12-06 20:00:58 +00:00
christos 94074f1212 change the malloc arg from NOWAIT to WAITOK; pointed out by lennard. 2001-12-06 19:54:02 +00:00
christos dbabce6bb7 PR/14852: Martin Husemann: Allocate the slotdata the the probed slot before
we call the configuration function. Thanks lennard for pointing it out.
XXX: Someone should look this over and make sure that the current strategy
makes sense.
2001-12-06 19:52:56 +00:00
kleink bc1f5761e3 Recognize the MK48T18 as well (differs from the MK48T08 only in packaging
options and voltages).
2001-12-06 18:54:23 +00:00
bouyer 3fe7074804 Compile with NWD == 0. Fixe kern/14844 by hamajima@nagoya.ydc.co.jp. 2001-12-05 20:43:00 +00:00
jdolecek 08733c9d51 add NCR_VARIANT_NCR53C90_86C01 "NCR53C90 (86C01)"
treat exactly like NCR_VARIANT_ESP100
2001-12-03 23:27:31 +00:00
enami 5eb74d8bbe Use correct format letter for chp->channel. 2001-12-03 11:07:34 +00:00
bouyer bfc80822c7 Update my copyrigth. 2001-12-03 00:20:22 +00:00
bouyer 4ca5497111 Allow wd to attach to something else than wdc/pciide (like USB<->ATA bridges):
- move some functions from ata.c to ata_wdc.c or wdc.c.
- add callbacks to struct ata_bustype so that wd.c doesn't call directly
  functions from the lower level driver.
2001-12-03 00:11:15 +00:00
bouyer 4809ad42cb Clean up attach of wd/atapibus:
kill ata_atapi_attach. Change atapibus to use a struct scsipi_channel instead
of ata_atapi_attach as attach arch. Create a ata_device, compatible with
scsipi_channel, to attach wd.
2001-12-02 22:44:32 +00:00
bjh21 4e3bf132c0 Add comments naming our private-use characters (in lower case, to make them
distinct from real Unicode characters).
2001-12-02 12:46:32 +00:00
bouyer cd8d64fe2b For ATAPI tape drives, poll for DSC (using a callout), to get the real
status of the command, and make sure the drive is ready for the next one.
2001-12-01 00:00:29 +00:00
christos c563f940be ELINK_W4_UBYTESOK is 0x0d. This is probably why kim is getting x2 numbers
in stats.
2001-11-28 23:46:42 +00:00
lukem 9f42ccc795 use #ifdef DDB (for consistency with the rest of the kernel) 2001-11-28 05:45:27 +00:00
yamt dc2a9f16a0 don't allocate a mbuf cluster if we don't need. 2001-11-27 21:40:55 +00:00
fredette f0002ba642 Added macros for the bits in the SYSBUS byte, and macros
for the i82596 PORT access interface, from the documentation
for that chip.  These help clarify writes to the SYSBUS
part of the SCP, and PORT usage by i82596-aware drivers.
2001-11-26 23:30:59 +00:00
fredette ec3eeda2fe Use bus_space on sun2.
Update the comment to match list of bus_space-using ports.
Removed some old unused asm() labels.
2001-11-26 20:15:48 +00:00
yamt dbaca00330 move dev/isa/cs89x0{.c,{var,reg}.h} into dev/ic
and split isadma parts into /dev/isa/cs89x0isa*.
2001-11-26 19:17:05 +00:00
tron e75321130b Back out new "hme" driver because it causes a performance regression on
"netio" on an U5.
2001-11-26 10:39:29 +00:00
tron 7287466499 Bug fixes for VLAN handling supplied by Klaus Klein in private e-mail. 2001-11-26 06:51:12 +00:00
tron 99756bfe86 Pull in Jason Wright's latest changes to the "hme" driver from OpenBSD.
This supports direct DMA from and into mbuf cluster, and VLAN
handling is done a bit differently.
2001-11-25 22:12:01 +00:00
yamt 5bf4d5554b use little-endian crc on multicast hash for admtek chips. 2001-11-22 05:03:04 +00:00
wiz 1fd7eeefcd "than" instead of "then". 2001-11-21 19:14:19 +00:00
lukem 99bccc3cab - pull in opt_kgdb.h where necessary
- replace opt_kgdb_machdep.h with opt_kgdb.h
- defparam opt_kgdb.h:
	KGDB_DEV KGDB_DEVNAME KGDB_DEVADDR KGDB_DEVRATE KGDB_DEVMODE
- move from opt_ddbparam.h to opt_ddb.h:
	DDB_FROMCONSOLE DDB_ONPANIC DDB_HISTORY_SIZE DDB_BREAK_CHAR SYMTAB_SPACE
- replace KGDBDEV with KGDB_DEV
- replace KGDBADDR with KGDB_DEVADDR
- replace KGDBMODE with KGDB_DEVMODE
- replace KGDBRATE with KGDB_DEVRATE
- use `9600' instead of `0x2580' for 9600 baud rate
- use correct quotes for  options KGDB_DEVNAME="\"com\""
- use correct quotes for  options KGDB_DEV="17*256+0"
- remove unnecessary dependancy on Makefile for kgdb_stub.o
- minor whitespace cleanup
2001-11-20 08:43:19 +00:00
tsutsui aca8e01877 - Use MI ADAPTER_REQ_SET_XFER_MODE callback
- Move values in sc_sync[] member to sc_tinfo[]
- Change some u_int8_t values to int
- Remove unused wide negotiation states
- Misc cleanup
2001-11-18 14:50:11 +00:00
tsutsui 689089f7a9 - Use MI ADAPTER_REQ_SET_XFER_MODE callback.
- Nuke some magic numbers.
2001-11-18 14:33:10 +00:00
tsutsui 11a1ddc5dd - make sure to call bus_dmamap_unload() even after request sense
- fix usage of scb flags
- misc cleanup
2001-11-17 21:26:12 +00:00
thorpej 1466b9ca1d Back out the last two changes I made to this driver -- some people
have reported lossage.
2001-11-17 00:56:04 +00:00
lukem 2565646230 don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
bouyer 0b74b95459 If the controller doesn't support UDMA, don't allow enabling UDMA via
config flags.
2001-11-14 20:18:11 +00:00
lukem a4bae8b066 add/cleanup RCSID 2001-11-13 13:14:31 +00:00
lukem 0e9163223a cleanup RCSID 2001-11-13 13:01:22 +00:00
mhitch c873b07b2d After modifying transmit descriptors, write-back cache needs to be flushed.
Fixes DEFTA on R4x00 DECstations.
2001-11-11 18:47:03 +00:00
christos 09b14fa42a Oops, missed one. 2001-11-11 00:34:52 +00:00
christos ddf09edfc0 merge duplicate register definitions. 2001-11-11 00:24:16 +00:00
christos 257a5919a3 Get rid of duplicate RID definitions. 2001-11-11 00:16:07 +00:00
perry 7a702dcf66 trivially rename some macro parameters to avoid lint warnings. 2001-11-10 22:48:09 +00:00
bjh21 479d71be35 Add support for feeding entropy to rnd(4). 2001-11-07 20:01:58 +00:00
fvdl 7812d678d8 Initialize the cn_magic goo for kgdb (bah, that should really not
be necessary).
2001-11-05 21:39:24 +00:00
tsutsui 064be15283 Use common macro to check message length. 2001-11-04 12:03:41 +00:00
itohy c0f59fbbeb AD1845 on my AlphaStation 255 doesn't match the AD1845 doc.
Try to detect AD1845 (unfortunately this is not always correct)
and work around the problems.
2001-11-04 08:08:25 +00:00
itohy ab43d67621 Introduce "flags 1", which causes left and right channels swapped. 2001-11-04 06:44:31 +00:00
haya 3aee8d644f Prevent hang-up when a CardBus card is removed during the card is working. 2001-10-25 10:02:12 +00:00
mjacob d0c3b71a47 tra-la, another QLogic f/w funny- this time with the 2300.
If we get a completion status of RQCS_QUEUE_FULL, it means
that the internal queues are full. Other QLogic boards set
the QFULL SCSI status. But *nooooooooooo*, not the 2300.
2001-10-23 23:21:00 +00:00
augustss d9f173b146 Make it compile with debug on. 2001-10-23 17:58:15 +00:00
mjacob 8dd789d511 Comment out some redundant initializations to zero. 2001-10-23 16:24:33 +00:00
itohy 361bb97359 Support panpot on OPL3. Now this device is a stereo instrument. 2001-10-23 13:09:43 +00:00
mrg 3059c66d8f fix a typo in the previous 2001-10-22 16:47:43 +00:00
bouyer 6721892796 Forgot to add __attribute__((__packed__)) to one hardware structure. 2001-10-22 16:45:28 +00:00
mrg c4f3ffd5e7 increase the value of _HME_NDESC from 32 to 128. it reduces the noise the
driver makes due to various bad status conditions.
2001-10-22 16:45:20 +00:00
thorpej d1e191d848 Reserve one descriptor at the end of the ring as a termination point,
to prevent the producer index from getting confused.
2001-10-21 20:45:15 +00:00
mjacob 5522109c39 Protect against deranged fabric nameservers that spit out 10000 identical
port numbers.
2001-10-20 18:37:54 +00:00
thorpej 8f0b837cd4 gem_init(): Don't call gem_mii_statchg() directly. Instead, call
gem_mediachange().  This will cause gem_mii_statchg() to be called
by the MII layer with the correct MII media state, so that speed
duplex parameters will be set properly.
2001-10-20 18:25:52 +00:00
thorpej 5d51f988c6 Yet more cruft removal. 2001-10-18 15:19:21 +00:00
thorpej 62577b1c53 Remove more cruft left over from copying bits of other drivers. 2001-10-18 15:09:15 +00:00
thorpej c616253896 Remove some more stuff left over from copying bits of the HME driver. 2001-10-18 06:28:17 +00:00
thorpej bfda843574 Manipulate the Tx desc pointer as 2 32-bit values, just as
we do with the Rx desc pointer, both for consistency, and
for platforms which don't have bus_space_*_8().
2001-10-18 03:33:33 +00:00
minoura 1f7386b8aa #include mulaw.h for converter functions prototypes. 2001-10-16 04:36:56 +00:00
bouyer ea29ee7d56 Call siop_morecbd() only when scsipi ask us ADAPTER_REQ_GROW_RESOURCES.
This prevent using bus_dmamem_map() from interrupt context.
Should fix kern/13827.
2001-10-14 20:37:28 +00:00
ichiro 9ad1f29f64 The description about soft-reset of WI_PCI_COR was added
and WI_PCI_SOFT_RESET was used.
Cosmetic change.
2001-10-14 12:33:18 +00:00
chs 5a41496a04 avoid overflow in timeout calculations. 2001-10-14 00:32:33 +00:00
ichiro cbcfff63ec Add Intersil Prism2.5 Mini-PCI wavelan. 2001-10-13 15:00:23 +00:00
mjacob 6349e2e63a Fix various 2300 GB issues related to chip errata and documentation
misunderstandings. We also now can report our connection rate.
2001-10-06 20:34:49 +00:00
thorpej 0d4d2293bb Minor tidying up of the HME driver attach:
- Print nicer-looking message.
- Use bus_space_subregion() when appropriate, rather than arithmetic
  on a bus_space_handle_t.
2001-10-05 17:49:43 +00:00
yamt 9946aef1da ack intr only when intr is for us. 2001-10-03 06:58:47 +00:00
mrg 5d4f3fa900 add a backend serial driver for the cirrus logic CL-CD180/1864/1865
8 port chip.  this is used in several sbus (sparc) serial boards, as
well as an 8 port isa card from riscom.  sio16 (sbus) frontend coming
shortly.

this is heavily based on the com and zs drivers.
2001-10-03 04:25:29 +00:00
augustss 1339e88a86 Add a new optional method, dev_ioctl, to the audio hardware driver interface.
It is called when an unrecognized ioctl() is performed on a device,
thus allowing ioctl()s that frob the hardware driver (like loading
microcode).
2001-10-03 00:04:47 +00:00
pooka 787bb8ce97 fix system freeze in situation where you pop a pcmcia card out of the
slot while it is in operation

ok'd by thorpej
2001-10-02 19:17:07 +00:00
eeh a0265b2599 Remove some debug messages. 2001-10-01 23:55:00 +00:00
eeh ef420318e0 Increase receive ring to 128 entries and handle both endian devices. 2001-10-01 23:39:57 +00:00
yamt 0e8ee83d8f avoid losing a desc on error. 2001-10-01 09:26:29 +00:00
tsutsui 9cb10f82f8 Calculate offsets of sglist dinamically rather than use an static array
because PAGE_SIZE is not constant on some ports.
2001-09-29 14:23:37 +00:00
augustss 797a70e551 Add a detach function (from Jared D. McNeill). 2001-09-29 13:56:04 +00:00
mjacob 01e394b10d Now that we have a fixed thaw thingie- we can turn back on sleeping
on mailbox commands.
2001-09-28 16:23:19 +00:00
chs 80373b7e54 don't depend on other headers to include sys/proc.h for us. 2001-09-28 11:59:51 +00:00
tsutsui 3339a3e525 Remove iha_minphys() and use minphys() instead. 2001-09-27 15:26:57 +00:00
tsutsui 883a221861 Adjust IHA_MAX_SG_ENTRIES since fragments of DMA buffer are not
more than (MAXPHYS / PAGE_SIZE + 1).
2001-09-27 15:11:34 +00:00
explorer 56b9583089 Implement two major items:
(1) Add an IOCTL to tell the Lucent based cards how often to
	    do an access point scan.  These results are returned by
	    calling another IOCTL to get the most recent scan data.

	    This function works with prism2 cards as well, but the
	    data is returned in a different format, or perhaps it is
	    data only for the closest access point.

	(2) For prism2 cards, add the ability to put it into LAN monitor
	    mode, where (via BPF) all packets can be received.  This
	    mode works best with "wiconfig wi0 -p 3 -f ?" to put the
	    card into pseudo-IBSS mode (to keep it from channel-hopping
	    and scanning for access points) and to set the frequency of
	    the AP you wish to monitor.

	    The returned data has a partial wi_frame header (down to the
	    wi_dat_len field) followed by the raw data of the packet.
	    I have and will put up on http://www.flame.org/NetBSD/wireless/
	    some simple utilities which do some perhaps interesting things,
	    like scan for access points, capture packets, etc.
2001-09-22 17:22:25 +00:00
elric b537810471 Fixed AHC_DEBUG on 64 bit arches with a bit of casting in a printf.
Added a message to help me debug a problem that I'm having.  The
printf is protected by AHC_DEBUG.
2001-09-21 23:54:57 +00:00
onoe b698d56d3c Move IBSS creation stuff from awi to ieee80211. 2001-09-20 13:54:43 +00:00
onoe aebd449baa Fix for FH infrastructure mode.
XXX: FH chanset should be calculated by FH hop pattern, but BayStack 650 AP
     always specify chanset to fixed value 1.  The previous code try to this
     hack into awi driver, but it is insufficient because the chanset value
     in awi driver may change while scan and it may be different from the
     value in receiving beacon/probe-response.  So we save encoded FH chanset
     into channel in 802.11 common bss information for now.
2001-09-19 04:09:54 +00:00
onoe 8496cf2bd8 Fix register offset of SYNC_SET for FH phy. 2001-09-18 23:19:08 +00:00
wiz 9fa0b17629 Give initiali[sz]e all the "i"s it deserves. 2001-09-18 18:15:49 +00:00
onoe 6a617566bc Move IEEE 802.11 MAC management functions from awi driver to
if_ieee80211subr.c, which can be shared between any IEEE 802.11
drivers.
However, most of current working IEEE 802.11b wireless LAN cards
have rich firmware and we cannot have a control to management frames
for such cards.

IBSS creation is now supported for the awi driver.
2001-09-18 09:09:57 +00:00
chs 266b4e032c in wdc_get_xfer(), avoid crashing if pool_get() fails. 2001-09-18 05:32:14 +00:00
briggs 5301d28a1c Patch to handle odd behavior from exar ST16C1550 UART. It does not set
IIR_NOPEND if the TXRDY condition is true.  Apparently, other chips do
not take TXRDY into account in the IIR_NOPEND case.

Also remove useless assignment (iir = IIR_NOPEND;) in one case.

No response from patch posted on tech-kern 29Aug2001.
2001-09-17 02:47:13 +00:00
wiz 456dff6cb8 Spell 'occurred' with two 'r's. 2001-09-16 16:34:23 +00:00
eeh 345c4a7b0d Driver for Sun GEM gigabit ethernet, Sun ERI 10/100, and Apple GMAC. 2001-09-16 00:11:41 +00:00
thorpej b9fffe1967 Allow bus front-end to provide both ioctl and mmap entry points,
and also the wsdisplay type.

Based on changes from Simon Burge <simonb@wasabisystems.com>.
2001-09-14 01:10:11 +00:00
bjh21 e416135347 Driver for the standard Archimedes Econet interface, based around the
Motorola 6854 ADLC.
2001-09-10 23:41:48 +00:00
drochner 4aaab20b38 remove all traces when a font is removed 2001-09-10 07:29:54 +00:00
drochner e6a8d37fdd concentrate screen initialization into vga_init_screen() where it belongs 2001-09-07 17:10:13 +00:00
mjacob 7492be3d51 Fix a misspelled error message.
Temp work around problems where if we allow for non-polled mailbox commands
we got nailed by hardclock calling is for a timed thaw. Basically, this
means we only enable non-polled mailbox commands in the FC kthread when it
calls isp_fc_runstate.
2001-09-05 23:08:23 +00:00
mjacob b33b6111a5 Clean up some issues wrt loaded f/w vs. resident f/w. We can tell
attributes of some variants of FC f/w (SCCLUN or not). Fake f/w
rev for SBus cards- the f/w versions we're using don't return
version in outgoing mailbox registers like they should.
2001-09-05 23:05:20 +00:00
mjacob 9e2fd2fee9 Synchronize with FreeBSD/Linux. 2001-09-05 22:32:38 +00:00
drochner 03d3e7a8b4 -update a comment wrt the "active screen" flag
-apply the patch from PR kern/13117 (Onno van der Linden) to make the
 hardware cursor disappear more thoroughly
-deal with PR kern/13573: hardware cursor too big, but differently:
 we have to obey the font size actually used. At this point, fix the
 problem that the cursor got messed up by the initialization of
 unrelated screens.
2001-09-04 17:14:49 +00:00
drochner f2fabb4c48 simplify the way the "active screen" is kept track of a bit 2001-09-04 17:06:54 +00:00
drochner 6d3056d1a3 -fix a debug message
-unref font(s) if a screen is deleted, so they could be unloaded
 if dev/wsfont supported it
-add missing pieces to support screen types with font sizes != 8x16
 as system console - now
options VGA_CONSOLE_SCREENTYPE="\"80x50\""
options FONT_VT220L8x8
 gives you what you'd expect
2001-09-04 15:32:22 +00:00
enami 1b4cef2087 Add prescaler bit constant (missed in previous commit). 2001-09-04 01:33:14 +00:00
drochner 09accd52c0 manage fonts through the wsfont framework, which allows to use both
compiled-in or runtime loaded fonts,
keep font pointers in a LRU queue and load into the adapter on demand,
 so we can have more fonts in use than physical font slots

CAUTION: font loading through the wsdisplay device directly into the
adapter doesn't work anymore!
2001-09-03 17:34:07 +00:00
mjacob 6bb9f4a949 Add support for 2 Gigabit cards (2300/2312). This necessitated a change
in how interrupts are down- the 23XX has not only a different place to check
for an interrupt, but unlike all other QLogic cards, you have to read the
status as a 32 bit word- not 16 bit words. Rather than have device specific
functions as called from the core module (in isp_intr), it makes more sense
to have the platform/bus modules do the gruntwork of splitting out the
isr, semaphore register and the first outgoing mailbox register (if needed)
*prior* to calling isp_intr (if calling isp_intr is necessary at all).
2001-09-01 07:12:23 +00:00