7959 Commits

Author SHA1 Message Date
arr
13b9ff97a2 - Forgot to remove cardattached declaration in revision 1.22. 2002-09-10 16:50:06 +00:00
imp
c36ca204bb reprobe not needed here either 2002-09-10 06:37:56 +00:00
imp
7896bf0965 Remove more bogus reprobe code. I don't think it is needed here either. 2002-09-10 06:37:02 +00:00
imp
2b0481758d o Dike out the bogus reprobe stuff. It was getting in the way of newbus' own
reprobe code working.  This bogusness was thrust upon me.
o Don't delete the device if no drivers attach.  I had thrust this bogusness
  upon others.

These two changes make kldload of a pccard driver work again.
2002-09-10 06:32:18 +00:00
imp
44c91692ec regen for 1.34 2002-09-10 06:29:50 +00:00
imp
04ac07203d Add ARGOSY SP320
cis submitted by: phk
2002-09-10 06:29:09 +00:00
ticso
ca81a71128 add missing \n to printf
Approved by:	gallatin (mentor)
2002-09-09 17:39:48 +00:00
jdp
48dd538511 Add support for the BCM5703x chips. I do not have one of these
cards to test; however the submitter reports that this patch works
with the on-board interface on the IBM x235 server.

Submitted by:	Jung-uk Kim <jkim@niksun.com>
MFC after:	1 month
2002-09-08 19:12:02 +00:00
jake
c964ec41e1 Make this driver work a whole lot better.
- Get the initial mode from the prom settings and don't clobber the mode
  on open.
- Copy output into an internal ring buffer instead of accessing the tty
  outq directly in the interrupt handler.  This fixes a problem where
  garbage would show up in the output stream.
- Reset the console port completely and reprogram all the parameters
  before enabling it.  This fixes seemingly random hangs on startup
  when using a fast interrupt handler.
- Add minimal locking in place of spls.
- Remove dead code and minor cleanups.
2002-09-08 04:45:16 +00:00
mjacob
c5bf10c2fd The size argument to snprintf does not have to be backed off by one
to account for a NULL byte.

Submitted by:	Jacques A. Vidrine <nectar@celabo.org>
2002-09-07 16:12:52 +00:00
jhb
6e666d91a9 Export pcib_attach() as a "protected" for use in subclasses of the PCI-PCI
bridge driver.
2002-09-06 22:14:00 +00:00
brooks
1da1f5abfe Don't include "bpf.h" when compiling on FreeBSD. We always compile in
bpf support these days.
2002-09-06 20:07:50 +00:00
mjacob
5f9cb58d07 Remove STRNCAT (==>strncat) usage. Apparently I never read the man
page correctly and it wasn't doing what I thought it was.

Noticed by: Brooks Davis <brooks@one-eyed-alien.net>
2002-09-06 18:32:16 +00:00
mjacob
6ee39adbaa Tsk. Now that we're not using our own locks, we have to remember
to grab Giant in isp_kthread so that msleep is *happy* that there's
no lock being passed to it (as tsleep turns out to be...)
2002-09-06 18:20:59 +00:00
jhb
9b8609f2b4 Attach ACPI children a bit later in attach(), specifically after performing
any machine dependent initialization.  This allows the MD code to set the
interrupt routing model so that PCI interrupts are routed correctly when
using an APIC or SAPIC for example.
2002-09-06 17:01:06 +00:00
jhb
09635017d5 Prefer the physical bus number of the PCI bus as the unit of the pciX
device created.
2002-09-06 16:09:07 +00:00
jhb
004940f13e Add a helper routine acpi_SetIntrModel() to call the _PIC method to set
the interrupt model in use so that ACPI can properly route interrupts for
machines using APIC's or SAPIC's.
2002-09-06 16:08:08 +00:00
jhb
1a872debf3 Make the printf messages when routing interrupts more consistent in the
various PCI bridge drivers.
2002-09-05 17:08:35 +00:00
phk
fdadf6ba89 Don't let children attach fast interrupts if the parent interrupt is normal.
Submitted by:	bde
2002-09-04 18:50:40 +00:00
markm
62b64ef509 Make consistent; turn spaces into tabs where there is a mixture. 2002-09-04 18:14:17 +00:00
phk
131e0609dc Bring back the PUC_FASTINTR option, and implement it correctly so that
child devices also know if they are fast or normal.

Requested by:	bde
2002-09-04 15:29:04 +00:00
scottl
1c64b14417 Sigh. The fix to the suspend code wasn't complete, since the resume
code was broken in the same way.

Submitted by:	co9@xs4all.nl
MFC after:	3 days
2002-09-04 08:13:36 +00:00
imp
b720c131c7 More in the continuing saga of phk vs his strange serial card.
In this installment, we learn that it is bad to access registers that
are only defined for mfc cards in the interrupt handler when we do not
in fact have a mfc card.  For MFC cards, we'll only call the ISR if
the this card interrupted bit is set.  For non mfc cards (which are
basically 90% of pccards in use), we always call the ISR and avoid
touching the suspect registers.  We always pacify the bit in the MFC
case on the off chance that will help in the itnerrupt handler not
being registed.
2002-09-04 06:53:37 +00:00
jhb
8fddee78db Fix up a comment. 2002-09-04 03:53:21 +00:00
jhb
9b9a63123d - Make pci_load_vendor_data() static and do it during MOD_LOAD instead of
when the first PCI bus attaches.
- Create /dev/pci during MOD_LOAD as well.
- Destroy /dev/pci during MOD_UNLOAD (not that you can kldunload pci, but
  might as well get the code right)
2002-09-04 03:13:16 +00:00
jhb
63ecc1767c Use resource_list_print_types() instead of duplicating the code. 2002-09-04 03:11:20 +00:00
phk
b88e0c1555 Remove a debug printf.
Correctly identify the ARGOSY SP320 dual port serial PCMCIA card.
2002-09-03 11:31:34 +00:00
phk
d24190132a Drop another cookie to wet Warners appetite:
We need to call the drivers interrupt function even though the card is not
multifunction.
2002-09-03 11:24:25 +00:00
phk
baf5e09769 Fix interrupt registration:
PUC devices live on pccard or pci so INTR_FAST is never really an option.
Don't try to register the interrupt as fast and don't allow the children
to do so either.
2002-09-03 11:22:13 +00:00
phk
3ab8971522 Style: fix a function whitespace stuff-up. Remove a debugging printf. 2002-09-03 11:19:44 +00:00
phk
f13a60bdeb Style: move a global variable up to the top of the file. 2002-09-03 11:18:35 +00:00
phk
cfd43b66d1 Don't probe the interrupt on puc(4) attached devices. 2002-09-03 11:17:38 +00:00
sobomax
0376d803eb - Improve AC97 presence check and move it from fm801_attach() to fm801_probe();
- add bus capabilities into the driver, so that it is possible for a radio
  driver to attach to it to use shared resources of fm801 chip. The radio
  driver itself will be committed later.

MFC after:	1 week
2002-09-03 08:58:15 +00:00
mjacob
20072affec Turn off usage of SMP style locking until we sort out CAM. 2002-09-03 04:31:55 +00:00
mjacob
5dc5eb8343 Don't do transition locking (i.e., CAM->MPT->CAM)- Peter claimed that ia64
chokes the chicken with this.

Submitted by:	wemm@freebsd.org
2002-09-03 02:18:21 +00:00
mjacob
c4f4388714 Fix things so that:
a) we don't believe what the board tells us all the time (if the BIOS
hasn't run, port page 2 and port page 0 tend to be garbage)

b) add the missing code to set parameters for the SPI cards.

MFC after:	0 days
2002-09-01 23:07:09 +00:00
anholt
d284cb7b2d Remove drm_linux.h, move the two useful defines into drm_drv.h. Use fd locking
on -current.  Actually copy in data from userspace to kernel in the
linux-compat ioctl path.  Make sure ioctl sizes are as expected in the handler
functions.

Reviewed by:	rwatson
2002-09-01 17:45:04 +00:00
scottl
abed8239c8 Use the correct bit value for a debug options 2002-09-01 07:14:26 +00:00
mjacob
d9cfb70fec Upgrade to latest QLogic f/w from their intranet site for 2100, 2200 and
2300 cards.

MFC after:	1 day
2002-09-01 02:28:36 +00:00
jmallett
685f567d90 Stylistic fixes for the inclusion of the opt_puc.h header, so it comes from the
right places, and so it's sorted consistently with how all the other N-hundreds
of files ding this do it.

Submitted by:	Hiten Pandya <hiten@uk.FreeBSD.org>
2002-09-01 01:59:38 +00:00
phk
1ea87921ab More cleaning up and unhacking:
Don't expect all RIDs to be PCI rids.  The previous code made at
least 1 mistake, even for PCI.

Give the card definitions a chance to specify a init function.
Use this instead of the gross superio hack.
Move the win877 init function to puc_pci.c where it belongs.

RIDs can actually be zero, don't set badmuxed if so.

Set a less incorrect end for the construct SYS_RES_IOPORT entries,
I guess both sio and lpt happen to use 8 IO ports, but that shouldn't
really be hardcoded this way.

Fixup puc_pccard.c to match.

We're getting closer.
2002-08-31 20:29:46 +00:00
phk
11f9714e60 Don't enable PUC_DEBUG by accident 2002-08-31 18:42:31 +00:00
phk
edb326987a Split the puc driver in pci specific and generic parts.
Add a pccard frontend for it as well.

The PCcard stuff does not work yet because there is still some PCImagic
left in puc.c
2002-08-31 18:38:43 +00:00
imp
480c5ff48a Make modems work:
Don't set the CCR_OPTION register when registering/deregistering
interrupts unless the card is a MFC card.  This makes a lot of cards
work that didn't work before.  These bits are only defined for MFC
cards.

Remove COOKIE_FOR_WARNER kludges that phk introduced.

Add more debug info.

Annoy the purists by committing two minor style nits at the same time.

Many thanks to phk.  He tracked this problem down to what was screwing
things up, so fixing it became trivially easy once the problem was
understood.
2002-08-31 18:34:30 +00:00
phk
bcd9be0b7d Different and more correct workaround for broken cards under NEWCARD:
don't spam the configuration index register.

I'm not sure where those bits truly belong, but spamming the config
index sure doesn't do us any good.
2002-08-31 16:07:17 +00:00
phk
18afceec82 Ignore all config entries which have a non-zero start I/O address.
This is a bandaid which makes some more PCCards work under NEWCARD
which would otherwise not work.

Cards with only fixed address windows still loose.
2002-08-31 14:38:24 +00:00
gibbs
55f7d935a9 Sync perforce Ids. 2002-08-31 06:53:06 +00:00
gibbs
9c9597b81a Identify new controllers and the aic7901A.
Move interrupt enable to the OSM.

Remove some debugging messages.

Remove chip bug workarounds for non-production asics.
2002-08-31 06:52:27 +00:00
gibbs
37a065ecf0 Hook up the endian macros.
Correct some comments.
2002-08-31 06:51:51 +00:00
gibbs
9d6ae32264 Enable card interrupts in our OSM rather than in the core.
This ensures that we don't enter our interrupt handler until
all OSM components it might reference have been fully initialized
during attach.

Remove vestiges of untagged queue handling.

Add hints to ahd_get_scb() so it knows what type of SCB collision
management to perform for each new transaction.

Properly disable/enable IU_REQ with changes in tagged queuing and
disconnection settings passed in by CAM.
2002-08-31 06:51:15 +00:00