summaryrefslogtreecommitdiff
path: root/sys/dev/pci
AgeCommit message (Collapse)Author
2010-04-20Nuke a few dead stores and one newly created unused variable.Owain Ainsworth
found by clang static analyser
2010-04-20A few more uninitialised variables (mostly in incredibly uncommon cases).Owain Ainsworth
found by clang static analyser.
2010-04-20Don't ask for ipv6 checksum offloading as we aren't ready for it.Jonathan Gray
Due to the messy context setup code this was breaking ipv6 forwarding when ipv4 offloading was enabled. All checksum offloading remains disabled for now. Debugged with and ok claudio@
2010-04-20Don't write garbage to the config space for phison,Jonathan Gray
we shouldn't be touching the config space at all here. Found by the clang static analyser. ok deraadt
2010-04-20- an unsolicited response contains the codec address, not the codecJacob Meuser
index - we only care about unsolicited responses from the codec we're using - no need to enable unsolicited responses until we know which codec we're using fixes crash reported by jacekm@
2010-04-19Enable VS timer dispatch, from Eric Anholt upstream.Owain Ainsworth
The spec says this bit should always be set. It can help resolve hardware deadlocks where a unit downstream of the VS is waiting for more input, the VS has one vertex queueed up but not dispatched because it hope to get one more vertex so it can dispatch a 2x4 block, and software isn't handing any more vertices due to waiting on rendering.
2010-04-19Fix use of uninitialised variable.Owain Ainsworth
found by Clang static analyser.
2010-04-19Add flags for chipset generation in with the other chipset type flagsOwain Ainsworth
prevent the horrible constructs we use to determine generation otherwise.
2010-04-19Correct fence pitch checking code and fence register writing on 9{1,4}x.Owain Ainsworth
The tiling check was insufficient and allowing too large pitches, which in some cases could cause graphical corruption, strengthen the check so that only valid values are used. Solved and patch ported from one by Daniel Vetter on intel-gfx. tested by Dorian Buettner (first dot last @ gmx dot de); thanks!
2010-04-17regenMiod Vallat
2010-04-17A few more devices found on sgi hardware.Miod Vallat
2010-04-16Remove Intel RAID IDs for now. They can be added back when code has beenMark Kettenis
written to detect the Intel RAID metadata format such that we no longer risk overwriting it. If this makes you lose your disks, you'll need to change the controller type from RAID to AHCI in the BIOS to get them back. ok marco@, deraadt@
2010-04-16Additional gtt alignment paranoia:Owain Ainsworth
when we go to pin, additionally check alignment against that required for tiling and unbind/rebind if needed. We shouldn't hit this case, but it is a good to check (would have found the bug in the last commit). tested by mlarkin and matthieu (and myself, of course)
2010-04-16Correct reversed test in set_tiling. this should deal with the fenceOwain Ainsworth
alignment errors that matthieu and mlarkin saw. Tested by both of them, and by me.
2010-04-16Correct some comments and cleanup some whitespace.Owain Ainsworth
2010-04-16paranoia: NULL check before free.Owain Ainsworth
2010-04-16If we fail to idle the chip in leavvt don't disable the interrupt,Owain Ainsworth
retrying that will hurt.
2010-04-16fix types in two error printfs. one of these also had a %d bug no varargOwain Ainsworth
for it, oops.
2010-04-15- fix bunch of use-after-free bugs found by splint;Marco Peereboom
- support sharing a phy port by devices (should work fine with sas expanders that share phy port number if such exist); - remove dead timeout_xs stuff; - make mpii_push_reply take a struct mpii_rcb argument instead of an address (like mpi does); - use SLIST instead of TAILQ to manage ccbs (ala mpi); - rototil openfirmware attachment code as it was copied verbatim (but with an error) from mpi and clearly wasn't tested; - increase reset delay to 240ms for stability purposes; - sprinkle some 'default' cases in a bunch of switch statements; - remove several splbio's from the code that runs on boot; - clarify/simplify the code that deals with sc_vd_id_low; - some slight cleanup.
2010-04-15Use IPL_TTY instead of IPB_BIO as suggested by oga.Marco Peereboom
Tested by me and mlarkin on amd64 and i386 ok oga
2010-04-12Radeon HD3200 works; from kili@.Owain Ainsworth
2010-04-12Some of the line disciplines want to check for suser. Better to pass themTed Unangst
a process instead of using curproc. ok deraadt
2010-04-11Send "STANDBY IMMEDIATE" command to ATA disks upon suspend. For this to work,Mark Kettenis
pciide(4) needs to formward DVACT_SUSPEND and DVACT_RESUME events to its children, so do that. Gets rid of the nasty "click" sound from the disk on many laptops. ok marco@, jsg@
2010-04-10Add radeon 4850; from Sviatoslav Chagaev (slava at zb dot lv), ta.Owain Ainsworth
2010-04-10some frees that were forgottenMarco Peereboom
2010-04-10Intel Centrino Advanced-N 6200 G2 adapters have their own hardwareDamien Bergamini
revision type.
2010-04-10regenDamien Bergamini
2010-04-10new Intel Centrino Advanced-N 6200 G2 idDamien Bergamini
2010-04-09oopsie, misplaced {Marco Peereboom
2010-04-09- event handling rewrite (while preserving original logic);Marco Peereboom
- support additional volume events; - track volume rebuild progress; - support for drive hotplug; - log when volume state changes and when we start to resync; - mpii_device handling rewrite (r/b tree is no more); - improvements in mpii_ioctl_* functions; - use internal disk_phys_num again as phy port number based scheme was proven to be unreliable; - fixup ioc_status check in mpii_scsi_cmd_done; - change Offline state to Invalid when drive is gone; - fixup recognition of the rebuilding state; - don't leak ccb if poll fails; - make use of the MPII_F_RAID flag and register with bio only if there are RAID capabilities (idea from mpi); - EVENT_UNMASK macro improvement from Kai Doernemann; - use proper endianness when setting ccb_dev_handle; - lower a polling delay in the mpii_complete; - improve readability and debugging output in several places; - change semantics of the SAS discovery event handler; - start of the event cleanup; - start of the whitespace cleanup; - start of the KNF cleanup; from Mike Belopuhov <mkb@crypt.org.ru>
2010-04-08DRM memory management for inteldrm(4) using the Graphics ExecutionOwain Ainsworth
Manager api. This is currently disabled by default under ifdef INTELDRM_GEM (option INTELDRM_GEM in a kernel config or a patch to i915_drv.h needed to enable), mostly because the intel X driver currently in tree does not always play well with GEM and needs to be switched to UXA accelmethod (which is the only option on later drivers). While based on the intel drm code in the linux kernel this has come cleanups and some obvious behaviour changes: 1) mmap through the GTT is entirely coherent with the gpu cache, removing mappings whenever the cache dirties so you can not race with userland to write to memory at the same time as the gpu. 2) pread/pwrite access is tiling-correct, so userland does not need to tile manually (mesa has already been fixed for this a while ago). The straw that broke the camels back here was the bit17 swizzling stuff on some mobile gpus meansing that while userland did the swizzle itself, the kernel had to do *extra* swizzling, this was frankly retarded so the option was dropped. 3) there is no option to map via the cpu from userland, again due to coherency issues. 4) additional integer overflow checking in some areas. 5) we only support the newer EXECBUFFER2 command submission ioctl. the old one is not supported at all (libdrm was fixed WRT over a week ago). now the TODOs: 1) the locking is funky and is only correct due to biglock. it does however work due to that. This will be fixed in tree, the design in formulating in my head as I type. 2) there are currently no memory limits on drm memory, this needs to be changed. 3) we really need PAT support for the machines where MTRRs are useless, else drm uses quite a lot of cpu (this is a bug that continues from the older code though, nothing new). 4) gpu resetting support on other than 965 is not written yet. 5) currently a lot of the code is in inteldrm, when memory management comes to other chipset common code will be factored out into the drm midlayer. Tested on: 855 (x40), GM965 and 915 by me. 945 by armani@ and jkmeuser@, gm45 by armani@ and marco@. More testing is needed before I enable this by default though. Others also provided testing by what they tested escapes me right now. In order to test this enable INTELDRM_GEM in a kernel and add the following line to the driver section in xorg.conf (I am working on a patch to autodetect the X stuff): Option "AccelMethod" "UXA"
2010-04-08Fill in the bus_dma_sync for intagp to use clflush instead of wbinvd()Owain Ainsworth
if supported. When we do memory management on intel this would lead to a LOT of wbinvd() to deal with gpu->cpu incoherency. no one wants that. Needed for sanity of inteldrm memory management which is coming up next.
2010-04-08these files don't need to include proc.h anymore. ok oga for agpTed Unangst
2010-04-07Make intagp restore pgtbl_ctl and the scratch page to the gtt on resume.Owain Ainsworth
When we move more towards kms we'll need to save/restore what is bound to the aperture, but right now this is not needed (since we always unbind everything before we go down anyway). "can not hurt" deraadt@. tested by halex, deraadt and maybe some others.
2010-04-06update a random sampling of drivers after the proc.h -> systm.h moveTed Unangst
2010-04-06A fix for the PCI-X check so that this is only tested on controllersChristian Weisgerber
that could be PCI-X. This bit is not valid for PCIe controllers. From Brad
2010-04-06add Intel 82801GR RAID.David Gwynne
2010-04-05Initial bits for >=RT3090 support.Damien Bergamini
Probably not functionnal yet (but test reports are welcome). Update microcode for RT2860 while I'm here (remember to run make && make install under sys/dev/microcode/ral/).
2010-04-05syncDamien Bergamini
2010-04-05new Ralink PCI IDsDamien Bergamini
2010-04-04Reinitialize pins upon resume. Makes audio work after resume on machinesMark Kettenis
with codecs like the ALC269 that have pins that need to be configured but don't have an associated mixer item. ok jakemsr@
2010-04-04Attach the 2nd generation of 6000 2x2 devices even though the firmwareDamien Bergamini
is not yet available. The combo WiFi/WiMAX devices need a separate firmware too (that is not yet available), so do not use the firmware for WiFi-only devices as it will likely not work. Change the way active chains (the ones that have an antenna plugged in) are detected to work around a firmware bug which could make us mark non-existing chains as active.
2010-04-04syncDamien Bergamini
2010-04-04PCI ID for second generation of Intel Centrino Advanced-N 6200 devices.Damien Bergamini
2010-04-04syncDamien Bergamini
2010-04-04PCI ID for Atheros AR9300.Damien Bergamini
It will require a lot of work in athn(4) to be supported though, because of important differences (in DMA and registers) with AR5008/AR9001/AR9002 series.
2010-04-04configure conversion for the correct direction. I guess no one hasJacob Meuser
ever tried recording big endian samples with fms.
2010-04-04avoid rounding the blocksize to 0Jacob Meuser
2010-04-03You cannot save a pointer to your attach arguments and expect it to pointMark Kettenis
somewhere meaningful later on. Save the PCI device tag instead and use it instead. ok miod@, jakemsr@
2010-04-02add $OpenBSD$Jonathan Gray