Commit Graph

9555 Commits

Author SHA1 Message Date
mrg eb77d4840c add OFW_PCI_PHYS_HI_BUS() 2001-02-17 16:28:37 +00:00
martin 48501b8e83 Rename isa_isic.c to i4b_isic_isa.c and isadaic.c to i4b_daic_isa.c
to improve naming consistency.
2001-02-17 15:38:09 +00:00
martin 618dd31ddd Rename pcmcia_isic.[ch] to i4b_isic_pcmcia.[ch] to better fit in the
grand sheme of names.
2001-02-17 15:00:49 +00:00
martin 982f2baf7e Abort attach when failing to allocate io range.
Don't allocate one large io range, this fails about every time on real
pcmcia buses (not attached to pci/cardbus bridges) because of other
devices interfering in that range. Use the bogusly small region for
now, which works purely by chance (map granularity) on cardbus bridges
too (more or less).
XXX - make this map three different, small regions after layer1 <-> layer2
XXX   interface has been brought in shape.
2001-02-17 11:41:35 +00:00
pk 672f49bfa2 Turn off command tagging by default for pre-SCSI2 devices. 2001-02-16 22:54:27 +00:00
kenh d6cdd9ad5b Connect to the interrupt endpoint on the control interface to receive
notification messages.  This lets us properly pass line status changes
down to the ucom driver (specifically, DSR, DCD, and RI).
2001-02-16 20:15:57 +00:00
mrg 2f85e9e153 expand this a little further to include defines of:
OFW_PCI_PHYS_HI_DEVICE() - extract PCI device from phys_hi
	OFW_PCI_PHYS_HI_FUNCTION() - extract PCI function from phys_hi
and the definition of `struct ofw_pci_register'.
2001-02-16 14:16:30 +00:00
sato a965aa1435 rasops4.c depend on rasops_masks.c 2001-02-15 09:51:28 +00:00
christos 6e65af2882 make this compile again. 2001-02-14 21:10:20 +00:00
jdolecek 60b3bb82f9 remove mca_issupp() and just use UNCONF for unknown devices, like other
buses do - array of 'supported' peripheals makes addition of new stuff
unnecessarily harder
2001-02-14 19:31:19 +00:00
christos e0ddf88b0a PR/12204: Andreas Wrede: Add support for Lava 8-port serial card. 2001-02-14 15:07:28 +00:00
tacha 08cc996106 Check and set PCI power management register. clcs now works when
warm boot from Windows.
2001-02-13 04:11:11 +00:00
thorpej f234f12854 Oops, `mii' attribute has to go onto the device decl. 2001-02-13 02:31:41 +00:00
thorpej 4641c2d237 Regen; D-Link DMF-560TX. 2001-02-13 02:09:37 +00:00
thorpej 65fd586599 Add a new D-Link ID (they seem to actually have a valid one, now!),
and add the DMF-560TX product.
2001-02-13 02:07:53 +00:00
thorpej db1896b76f ne at pcmcia needs dl10019, mii, mii_bitbang 2001-02-13 01:58:56 +00:00
thorpej 4027cab9ea Support for the MII on the D-Link DL10019/DL10022 NE2000-compatible
Ethernet chips.
2001-02-13 01:43:02 +00:00
bjh21 3cbd9caea7 Fix an uninitialised variable which could have caused corruption of the user
button state (and hence spurious mouse clicks) if the event queue filled
up.
2001-02-13 01:14:45 +00:00
ichiro 357d9efda4 Power Management Hook
esm_powerhook();
2001-02-12 23:56:40 +00:00
mjacob a898cb6cb0 Eliminate ISP2100_FABRIC- we always allow for fabric now. Add an
isp_iid_set/isp_iid for fibre channel- this is because we now
fake a port database entry for ourselves. Add the additional loop
states between LOOP_PDB_RCVD and LOOP_READY.

Change and comment on a wad of Fibre Channel isp_control functions.
Change and comment on some of the ISPASYNC Fibre Channel events.

Add was_fabric_dev/fabric_dev tags to our local FC database structure
(so we can see rapidly whether something was a fabric device but is
now gone).

Add a tag which says what role this adapter should take. It can take
on the value of None, Target, Initiator or Both. None is useful for
warm failover purposes. Remove the ISP_CFG_NOINIT silliness since
a role of "None" does this.

Add a isp_lastmbxcmd tag to store the opcode for the last mailbox
command used.
2001-02-12 23:33:49 +00:00
mjacob b01ecfe65c Put in offset definitions for FPM and FBM registers, plus just enough
bits defined so we can reset them.
2001-02-12 23:33:11 +00:00
mjacob a86729db93 Add structure defining FC-AL position maps. The only tool that I know of
that really uses this is luxadm(8) under Solaris.
2001-02-12 23:32:44 +00:00
mjacob 4409fa23b2 Remove ISP2100_FABRIC (we're always fabric now). Fix usage of isp_lastmbxcmd
to report the mailbox command that times out. Fix isp_unswizzle_sns_rsp
which for reasons *I* find obscurer just doesn't work correctly on sparc64
with words past 128. I have no idea why this *does* work on SparcLinux.
2001-02-12 23:32:11 +00:00
mjacob 25bc760687 Do some cleanup based upon adapter role- mainly not enabling interrupts
if we're ISP_ROLE_NONE. Change ISPASYNC_LOGGED_INOUT to ISPASYNC_PROMENADE.
Make sure we note if something is a fabric device.
2001-02-12 23:30:12 +00:00
mjacob d9696b793a Add isp_fc_runstate function- this function's purpose is to, in stages,
and depending on role, make sure link is up, scan the fabric (if we're
connected to a fabric), scan the local loop (if appropriate), merge
the results into the local port database then, check once again
to make sure we have f/w at FW_READY state and the the loopstate
is LOOP_READY.
2001-02-12 23:29:26 +00:00
mjacob 85b0326ec6 Minor stuff:
Remove ISP2100_FABRIC defines- we always handle fabric now. Insert
isp_getmap helper function (for getting Loop Position map). Make
sure we (for our own benefit) mark req_state_flags with RQSF_GOT_SENSE
for Fibre Channel if we got sense data- the !*$)!*$)~*$)*$ Qlogic
f/w doesn't do so. Add ISPCTL_SCAN_FABRIC, ISPCTL_SCAN_LOOP, ISPCTL_SEND_LIP,
and ISPCTL_GET_POSMAP isp_control functions. Correctly send async notifications
upstream for changes in the name server, changes in the port database, and
f/w crashes. Correctly set topology when we get a ASYNC_PTPMODE event.

When resetting the Qlogic 2X00 units, reset the FPM (Fibre Protocol
Module) and FBM (Fibre Buffer Modules). Also remember to clear the
semaphore registers. Tell the RISC processor to not halt on FPM
parity errors.


Finally, use a new tag in the softc to store the opcode for the
last mailbox command used so we can report which opcode timed
out.

Major stuff:
Quite massively redo how we handle Loop events- we've now added several
intermediate states between LOOP_PDB_RCVD and LOOP_READY. This allows us
a lot finer control about how we scan fabric, whether we go further
than scanning fabric, how we look at the local loop, and whether we
merge entries at the level or not. This is the next to last step for
moving managing loop state out of the core module entirely (whereupon
loop && fabric events will simply freeze the command queue and a thread
will run to figure out what's changed and *it* will re-enable the queu).
This fine amount of control also gets us closer to having an external
policy engine decide which fabric devices we really want to log into.

Throw out the ISP_CFG_NOINIT silliness and instead go to the use of
adapter 'roles' to see whether one completes initialization or not
(mostly for Fibre Channel). The ultimate intent, btw, of all of this
is to have a warm standby adapter for failover reasons.  Because
we do roles now, setting of Target Capable Class 3 service parameters
in the ICB for the 2x00 cards reflects from role. Also, in isp_start,
if we're not supporting an initiator role, we bounce outgoing commands
with a Selection Timeout error. Also clean out the TOGGLE_TMODE
goop for FC- there is no toggling of target mode like there is
for parallel SCSI cards.

Do more cleanup with respect to using target ids 0..125 in F-port
topologies. Also keep track of things which *were* fabric devices
so that when you rescan the fabric you can notify the outer layers
when fabric devices go away.

Only force a LOGOUT for fabric devices if they're still logged in
(i.e., you cat their Port Database entry. Clean up the Get All Next
scanning.
2001-02-12 23:28:50 +00:00
mjacob 055ac54fd2 set default HBA role 2001-02-12 23:25:20 +00:00
mjacob e8b5aa491e update to latest f/w 2001-02-12 23:19:55 +00:00
ad 469b91fce0 Don't put the request onto the `worklist' in ccb_submit(), since it may
still be on the pending queue.
2001-02-12 19:04:35 +00:00
thorpej ec0ab7054b Add a "stop_card", which is the opposite of "init_card", and
call it from dp8390_stop().
2001-02-12 18:56:26 +00:00
thorpej b17ef220b5 Print the Ethernet address before attaching media. 2001-02-12 18:52:22 +00:00
thorpej 043e519d55 Adjust the way that media is initialized on DP8390-compatible
chips.  The dp8390_softc now has media_init and media_fini
function pointers that do the work.
2001-02-12 18:49:03 +00:00
tshiozak faec1fc4fc some improvement for cmpci; SPDIF supports, etc. 2001-02-12 18:47:12 +00:00
uch 85fcf16be0 fix flag. 2001-02-12 17:55:09 +00:00
briggs 180bf3d3ac Clean up a couple of printf-format warnings. 2001-02-12 15:49:19 +00:00
tshiozak 17c5f7060a add CMI8738B. 2001-02-12 14:45:04 +00:00
mrg 6ee70851f1 backout the parts of the previous change (7 months ago) that were *not* part
of the sys/vm removal, but some (fortunately disabled) work-in-progress.
2001-02-12 09:14:53 +00:00
briggs 433553dc94 Deal with a lack of the proper type of memory. For example, if a bridge
only supports 16-bit I/O addresses, do not configure it with addresses
having the upper 16-bits non-zero.
2001-02-12 06:24:24 +00:00
nathanw eb65359d14 The card_attach_now flag hasn't been necessary or useful for some time.
Garbage collect the code and corresponding documentation.
2001-02-12 04:52:48 +00:00
nathanw 54caa65cf6 Correct the ri_xorigin calculation for the RI_CENTER case again.
Original calculation (bits += (ri_stride - ri_emustride) / 2) was
incorrect because stride may be wider than visible width.

Fix in 1.33 (bits += (ri_width - ri_emustride) / 2) was incorrect
because units do not match; "bits" and "ri_emustride" are in bytes,
but "width" is in pels. Works by accident for 8bpp displays.

Change to bits += ((ri_width * bpp / 8) - ri_emustride) / 2
to correctly account for visible width and bpp.
2001-02-12 04:33:36 +00:00
hpeyerl 2dcf59c673 Fix for kern/12114 and kern/12158 Advansys DMA errors.
Reported by Bob Bernstein who heard from Kenneth Westerback that this
might be the problem.  Tested by HP.
2001-02-11 23:40:03 +00:00
nathanw 65321bff54 Make tga_rop_vtov deal with copies of <256 byte granularity, necessary
for proper console text handling (especially in-line insertion) on
8-bit displays.

From Christian Groessler <cpg@aladdin.de>.
Tested on 32-bit TGA by me.
2001-02-11 19:34:58 +00:00
bouyer 0653304779 Avoid sending new commands to the device if it has sense pending:
- run request sense command without disconnect
- don't restart the script before siop_scsicmd_end has been called if the
  cmd didn't complete with good status.
- reserve slot 0 for request sense, to make sure it'll be sent first.
2001-02-11 18:04:49 +00:00
ad b0eba3a40d Match an upcoming product. 2001-02-11 15:37:13 +00:00
ad 65f7a36374 Regen. 2001-02-11 15:33:53 +00:00
ad 853ce24872 Add another 3ware product. 2001-02-11 15:33:25 +00:00
ichiro 175f4c6b75 regen 2001-02-11 05:49:42 +00:00
ichiro 2ea023a03f add vendor/product id
CASIO label writer for USB
2001-02-11 05:49:20 +00:00
ichiro 2ddca54f69 add wavelan card
corega PCCA-11
NEC CMZ-RT-WP
NTT-ME SS-LAN
2001-02-11 03:29:59 +00:00
ichiro 2fdf447129 regen 2001-02-11 03:28:16 +00:00