Commit Graph

19829 Commits

Author SHA1 Message Date
Joerg Wunsch
27a98ec529 MFC r203360
GPIB overhaul, part #2: make the tnt4882 driver work with the newer
  TNT5004 IC.  This involved a major rewrite of a number of things, as
  this chip no longer supports the NAT7210 legacy mode but requires the
  host to use the (more modern) FIFO mode.

  In theory, this also ought to work on the older TNT4882C chip.  I'll
  probably add this as optional support (perhaps by a device.hints flag)
  later on.  By now, FIFO mode is *only* activates iff a TNT5004 chip
  has been detected (where the old code didn't work at all), while
  everything else is supposed to use the old code.
2010-02-28 22:25:39 +00:00
Andriy Gapon
0445c84e45 MFC r203546: acpi_cpu: prefer _OSC over _PDC 2010-02-28 21:43:47 +00:00
Andriy Gapon
9478f3990b MFC r203430: acpi_cpu: correct capabilities arguments for Processor _OSC 2010-02-28 21:30:46 +00:00
Matt Jacob
c5fc7d9644 MFC of 204384: Fix misallocation error in target mode 2010-02-28 06:07:53 +00:00
Rui Paulo
9d8ea0c702 MFC r203695, r203751
Fix spelling mistake and compile error.
2010-02-26 20:25:30 +00:00
Rui Paulo
f5e8283aa9 MFC r203683:
Add multicast key search support. This fixes corrupted mcast packets
 when we have more than one hostap vap.
2010-02-26 18:46:16 +00:00
Rafal Jaworowski
bca23f69fd MFC r204009
Assorted fixes for mge(4).

- Use proper map for the busdma sync on mge descriptor.
- Remove unnecesary busdma sync.
- Eliminate redundant locking in mge_reinit_rx() (just assert).
- Kill unused variable.

Submitted by:	Grzegorz Bernacki
Obtained from:	Semihalf
2010-02-25 13:28:05 +00:00
Ed Maste
624e666b5d MFC r202812:
Add H55 ID from Mike Tancsa, with minor rewording from avg@.

PR:		kern/143068
Submitted by:	Mike Tancsa (Sentex)
2010-02-23 01:00:15 +00:00
Alexander Motin
a510b78b19 MFC r200291, r203529:
Increase Max Read Request Size for PCIe chips from 512 to 1024 bytes.
It gives those beasts additional 10% of write bandwidth.
Use new helper functions to do it.
2010-02-19 18:15:45 +00:00
Alexander Motin
210a19d014 MFC r203528:
Add pci_get|set_max_read_req() helper functions to control maximum PCIe
read request size.
2010-02-19 18:07:51 +00:00
Alexander Motin
c48c2a2389 MFC r203873:
With FBS enabled, we have no idea what command caused timeout.
Implement same logic as in siis(4) - wait for other commands
complete or timeout and then give some more time.
2010-02-19 17:54:03 +00:00
Rebecca Cran
dfbcd90790 MFC r203685:
Document the usfs driver and the NO_SYSCTL_DESCR option, and update the comment
for umass.
Don't include the sysctl description variables in aic7xxx when NO_SYSCTL_DESCR
is used.

Approved by:	rrs (mentor)
2010-02-18 11:07:36 +00:00
Rebecca Cran
82521c1509 MFC r203678:
Rename usb2_ structures and variables to usb_.

Approved by:	rrs (mentor)
2010-02-18 10:59:32 +00:00
Alexander Motin
877380223f MFC r203426:
Disable PHY of unconnected ports when interface power management enabled.
It allows to save a bit more power (about 0.5W on 2 unused ports of ICH8M).
2010-02-14 20:00:21 +00:00
Alexander Motin
3e2fbfe5e6 MFC r203165:
Reset port on disconnect event, to abort any running requests.
2010-02-14 19:59:06 +00:00
Alexander Motin
0129e5cf7a MFC r203123:
Add FIS-based switching support. If controller supports FBS, it allows
several devices beyond Port Multiplier to work simultaneously, substantially
increasing performance.
2010-02-14 19:57:54 +00:00
Alexander Motin
ee22e37df5 MFC r203449:
Implement poll method for atapicam.
It is not perfect, but better then nothing.
2010-02-14 19:56:42 +00:00
Alexander Motin
34cbb135e7 MFC r203347:
NetCell is a PCI hardware RAID without cable and mode setting.
2010-02-14 19:55:41 +00:00
Alexander Motin
dd96528dec MFC r203525:
Report SATA300 chips also as SATA.
2010-02-14 19:54:16 +00:00
Alexander Motin
d2846ca800 MFC r203445:
Report to CAM unit number of underlying ataX bus device, instead of this
atapicamX. It is more apropriate and useful together with "ata" name.
2010-02-14 19:53:09 +00:00
Alexander Motin
929100472e MFC r203376, r203384:
- Give ATA/SATA SIMs info about ATAPI packet size, supported by device.
- Make ATA XPT to reject longer SCSI CDBs then supported by device, or
any SCSI CDBs, if device doesn't support ATAPI.
2010-02-14 19:44:48 +00:00
Alexander Motin
50ae5fde8d MFC r203108:
Large set of CAM improvements:
- Unify bus reset/probe sequence. Whenever bus attached at boot or later,
CAM will automatically reset and scan it. It allows to remove duplicate
code from many drivers.
- Any bus, attached before CAM completed it's boot-time initialization,
will equally join to the process, delaying boot if needed.
- New kern.cam.boot_delay loader tunable should help controllers that
are still unable to register their buses in time (such as slow USB/
PCCard/ CardBus devices), by adding one more event to wait on boot.
- To allow synchronization between different CAM levels, concept of
requests priorities was extended. Priorities now split between several
"run levels". Device can be freezed at specified level, allowing higher
priority requests to pass. For example, no payload requests allowed,
until PMP driver enable port. ATA XPT negotiate transfer parameters,
periph driver configure caching and so on.
- Frozen requests are no more counted by request allocation scheduler.
It fixes deadlocks, when frozen low priority payload requests occupying
slots, required by higher levels to manage theit execution.
- Two last changes were holding proper ATA reinitialization and error
recovery implementation. Now it is done: SATA controllers and Port
Multipliers now implement automatic hot-plug and should correctly
recover from timeouts and bus resets.
- Improve SCSI error recovery for devices on buses without automatic sense
reporting, such as ATAPI or USB. For example, it allows CAM to wait, while
CD drive loads disk, instead of immediately return error status.
- Decapitalize diagnostic messages and make them more readable and sensible.
- Teach PMP driver to limit maximum speed on fan-out ports.
- Make boot wait for PMP scan completes, and make rescan more reliable.
- Fix pass driver, to return CCB to user level in case of error.
- Increase number of retries in cd driver, as device may return several UAs.
2010-02-14 19:38:27 +00:00
Alexander Motin
9290c85988 MFC r203030:
Add support for SATA part of Marvell 88SE912x controllers to ahci(4).
Limit early revisions from 6Gb/s to 3Gb/s by default, or they negotiate
only 1.5Gb/s, when 3Gb/s devices connected.

Add dummy driver for PATA part of these controllers, preventing generic
driver attach them. It causes system freeze when SATA controller used after
PATA was touched.
2010-02-14 19:28:45 +00:00
Alexander Motin
82368eed51 MFC r202699:
Make ata_getrev() an optional method by implementing ata_null_getrev().
This fixes a bogus '???' boot message on Cambria boards with a CompactFlash
card.
2010-02-14 19:23:05 +00:00
Alexander Motin
20bbf2de82 MFp4:
After last running command completed, give commands in timeout state
second time.
2010-02-14 12:24:12 +00:00
Alexander Motin
6228bcd1ee MFC r203524:
When hacking INQUIRY result, make sure that it is right INQUIRY and there
is enough of result to hack.
2010-02-14 12:04:25 +00:00
Alexander Motin
9a1be4e8d1 MFC r203489:
Return CAM_RELEASE_SIMQ flag only when it is needed, when SIM really
was frozen before and should be released.
2010-02-14 12:03:04 +00:00
Alexander Motin
66a894f383 MFC r203484:
Do not release device, when changing number of openings.
2010-02-14 12:00:23 +00:00
Alexander Motin
1ea9446171 MFC r202150, r202170:
Make OSS_GETVERSION ioctl really work. It has 'M' group, not 'P',
as different nearby ones, and was grabbed by MIXER_xxx() handler.

While there, replace '(cmd & MIXER_xxx(0)) == MIXER_xxx(0)' expressions
with more correct '(cmd & ~0xff) == MIXER_xxx(0)'. Use of bit operations
to compare numeric fields doesn't looks sane.
2010-02-14 11:53:51 +00:00
Gavin Atkinson
3390bcf4cf Merge r200530 from head:
Don't panic on failure to attach if we fail before or during the
  if_alloc() of ifp.

  This fixes the panic reported in the PRs, but not the attach failure.

PR:		kern/139079, kern/143874
Tested by:	Steven Noonan <steven uplinklabs.net>
Reviewed by:	thompsa
2010-02-14 09:34:27 +00:00
Matt Jacob
9090fd5bfa Pick up some changes the the MFC missed. 2010-02-12 00:47:23 +00:00
Matt Jacob
7733cf8fff MFC a number of changes from head for ISP (203478,203463,203444,202418,201758,
201408,201325,200089,198822,197373,197372,197214,196162). Since one of those
changes was a semicolon cleanup from somebody else, this touches a lot more.
2010-02-11 18:34:06 +00:00
Andriy Gapon
d5f8ba9274 MFC r203062: acpi_hpet: correctly get number of timers in a timer block 2010-02-10 09:46:31 +00:00
Ed Maste
207a2ae06c MFC r198593:
Rename aac_fast_intr to aac_filter to reflect its current use.  Eliminate
  the fallback of using the filter as an interrupt handler, as it is no
  longer needed.

  Discussed with:       scottl, jhb
2010-02-09 22:05:30 +00:00
Andriy Gapon
e21bbd1743 MFC r197104,197105,197106,197107,197688,198237,199337,199338,200553,200554,
202771,202773: bring acpica version to 20100121

MFC details:
r197104 | jkim | 2009-09-12 01:48:53 +0300 (Sat, 12 Sep 2009) | 4 lines
MFV:    r196804
Import ACPICA 20090903

r197105 | jkim | 2009-09-12 01:49:34 +0300 (Sat, 12 Sep 2009) | 2 lines
Catch up with ACPICA 20090903.

r197106 | jkim | 2009-09-12 01:50:15 +0300 (Sat, 12 Sep 2009) | 2 lines
Catch up with ACPICA 20090903.

r197107 | jkim | 2009-09-12 01:56:08 +0300 (Sat, 12 Sep 2009) | 2 lines
Canonify include paths for newly added files.

r197688 | jkim | 2009-10-01 23:56:15 +0300 (Thu, 01 Oct 2009) | 4 lines
Compile ACPI debugger and disassembler for kernel modules
unconditionally.
These files will generate almost empty object files without
ACPI_DEBUG/DDB
options.  As a result, size of acpi.ko will increase slightly.

r198237 | jkim | 2009-10-19 19:12:58 +0300 (Mon, 19 Oct 2009) | 2 lines
Merge ACPICA 20091013.

r199337 | jkim | 2009-11-16 23:47:12 +0200 (Mon, 16 Nov 2009) | 2 lines
Merge ACPICA 20091112.

r199338 | jkim | 2009-11-16 23:53:56 +0200 (Mon, 16 Nov 2009) | 2 lines
Add a forgotten module Makefile change from the previous commit.

r200553 | jkim | 2009-12-15 00:24:04 +0200 (Tue, 15 Dec 2009) | 2 lines
Merge ACPICA 20091214.

r200554 | jkim | 2009-12-15 00:28:32 +0200 (Tue, 15 Dec 2009) | 3 lines
Remove _FDE quirk handling as these quirks are automatically repaired
by ACPICA layer since ACPICA 20091214.

r202771 | jkim | 2010-01-21 23:14:28 +0200 (Thu, 21 Jan 2010) | 2 lines
Merge ACPICA 20100121.

r202773 | jkim | 2010-01-21 23:31:39 +0200 (Thu, 21 Jan 2010) | 2 lines
Fix a new header inclusion.

Discussed with:		jkim, jhb
No objections from:	acpi@
2010-02-06 12:03:25 +00:00
Alexander Motin
f8451095fa MFC r203043, r203058:
Do not place fake interrupt register on chip.
Now we have better place for it.
2010-02-05 12:17:14 +00:00
Alexander Motin
3ca74a280b MFC r203034:
Restore SATA speed reporting, broken by ATA_CAM changes.
2010-02-05 12:09:43 +00:00
Alexander Motin
dc65878eb6 MFC r203033:
Clear ch->devices, if hard-reset failed.
This makes hot-plug work better.
2010-02-05 12:07:53 +00:00
Gavin Atkinson
75cf52103d Merge r202161 from head:
Spell "Hz" correctly wherever it is user-visible.

PR:		bin/142566
Submitted by:	N.J. Mann   njm njm.me.uk
2010-02-05 08:52:51 +00:00
Alexander Motin
9eb48f44f2 MFC r202789, r202796:
- Improve tracer, to handle more cases of input-to-output monitoring
loopback.
- Use "igain" mixer control for input-to-output monitoring loopback.
- Allow AD1981HD codecs to use playback mixer. Now driver should be able to
really use it.
- Fix bug in shared muters operation.
2010-02-05 08:36:33 +00:00
Alexander Motin
24f890094e MFC r202736:
Print playback channels paths in order of their sequence numbers, not nids.
2010-02-05 08:32:07 +00:00
Pyun YongHyeon
0fb14c6f0d MFC r203082:
Add initial support for RTL8103E PCIe fastethernet.

  PR:	kern/142974
2010-02-01 23:57:42 +00:00
John Baldwin
d362c2a208 MFC 203070:
Initialize the ifnet before calling mii_phy_probe() as some phy drivers
(e.g. e1000phy(4)) expect if_dname to be valid when they are probed.
2010-02-01 22:01:48 +00:00
Antoine Brodin
e2b36efde5 MFC r201145 to stable/8:
(S)LIST_HEAD_INITIALIZER takes a (S)LIST_HEAD as an argument.
  Fix some wrong usages.
  Note: this does not affect generated binaries as this argument is not used.

  PR:		137213
  Submitted by:	Eygene Ryabinkin (initial version)
2010-01-30 12:11:21 +00:00
Rui Paulo
b85fb2f79c MFC r202986:
o add more notification strings in iwn_intr_str()
  o sync with OpenBSD code

  Submitted by:	Bernhard Schmidt <bschmidt at techwires.net>
  MFC after:	3 days
2010-01-29 18:19:43 +00:00
Joerg Wunsch
1f9b7387d8 Merge of r202870,202898:
Overhaul of the pcii driver:

. Properly allocate all IO space resources.  These cards scatter their
  IO addresses over a range of 0x1600 bytes, and they require an
  additional address for "special interrupt handling".

. Implement the "special interrupt handling" per the GPIB-PCIIA
  Technical Reference Manual; this was apparently not declared for the
  clone card this driver has been originally implemented for, but it
  turned out to be needed for both, an original NI brand PCII/PCIIA
  card as well as the Axiom AX5488 clone.

. Add some diagnostic messages for various resource allocation etc.
  failures during probe.

. Add some comments about the structure of the IO address space that
  is used by these cards.
2010-01-27 10:32:02 +00:00
Gavin Atkinson
7ac856b829 Merge r202000 from head:
Don't panic on attach if we can't allocate ifp

Approved by:	ed (mentor, implicit)
2010-01-24 22:01:04 +00:00
Robert Noland
c79d8f1fb5 MFC r200764
Fix a handful of issues with via agp support.

  * Read the pci capability register to identify AGP 3 support
  * Add missing smaller aperture sizes for AGP3 chips.
  * Fix the aperture size calculation on AGP2 chips.
    All sizes between 32M and 256M reported as 256M.
  * Add \n to error string.
2010-01-23 16:29:04 +00:00
Navdeep Parhar
c78cb5e4f1 MFC r202863
Don't forget to release the adapter lock for a no-op.
2010-01-23 08:37:04 +00:00
Xin LI
11ad45c9ce MFC r202268:
o Add PCI ID for BCM 5756.
 o Don't enable BGE_FLAG_BER_BUG on both 5722 and 5756, and based
   on their PCI IDs rather than their chip IDs.

Reported by:    several PC-BSD users via kmoore
Reviewed by:    yongari, imp, jhb, davidch
Sponsored by:   iXsystems, Inc.
2010-01-23 01:25:09 +00:00