summaryrefslogtreecommitdiff
path: root/sys/dev/pci
AgeCommit message (Collapse)Author
2010-06-12add missing arg to a printf callJonathan Gray
ok oga@
2010-06-07Fix various problems of auich on SiS 7012 based chips:Alexandre Ratchov
- rework auich_halt_pipe() and use it to ensure AUICH_RR is set only after DMA is halted (spec says to do so) - rework auich_calibrate(): clear interrupt and event bits in AUICH_STS and ensure CIV counter is not changed. - in the interrupt handler, set LVI to (qptr - 1) rather than the max value (bug introduced by previous commit) All fixes are from Christopher Zimmermann <madroach at zakweb.de>, Thanks! tested on two different intel-based auich devices, ok jakemsr
2010-06-07Proper range check in radeon_emit_packets(); ok oga@Miod Vallat
2010-06-05change sign extension such that we do not rely on >> being anDamien Bergamini
arithmetic shift on signed integers.
2010-05-27Add missing license (amd, mit/x11)Owain Ainsworth
armani@ noticed that is was missing.
2010-05-26add a new getparam member to get the contents of scratch register 3 (theOwain Ainsworth
one we use to dump the software interrupt number). For some strange reason noticed upstream, writeback doesn't seem to be working for this value for use, so instad of using the get_scratch functions, we fallback to a direct register read (more bus traffic, but it actually works). This is to be used by new mesa on r100 and r200 since they reworked stuff for dri2, and we have local patches that prevent userland mapping the registers in dri clients. Tested by Josh Elsasser on a M9 (rv250), thanks very much to him.
2010-05-26- no need for a separate mpii_minphys;Marco Peereboom
- save about 26K of kernel memory by giving scsi subsystem a hint that we won't be using more than one lun per target; - remove a debugging leftover. from Mike Belopuhov <mkb@crypt.org.ru>
2010-05-25The logic in this function is a little tricky (though correct).Owain Ainsworth
Explain how an invaviant is satisfied and add an assertion to check (never hit that one). As a side benefit clang doesn't bitch about a possible NULL deref now.
2010-05-25Having just calculated which sequence number we wish to wait for (soOwain Ainsworth
that in the reading-only case we need only wait for all gpu writes to be done and flushed), don't then wait for the full seqno anyway. Found by Clang's static analyser where it flagged a dead store to the seqno variable.
2010-05-25rename struct drm_i915_private to struct inteldrm_softc, to be more inOwain Ainsworth
line with everything in the tree. No functional change. I have wanted to do this for ages! More cleanup will be forthcoming.
2010-05-25Remove the DRI1 code paths from inteldrm as promised two weeks ago.Owain Ainsworth
We no longer support these paths, only memory managed mode is now allowed.
2010-05-24Support fibre PHY on BCM5709S. From FreeBSD via Brad.Stuart Henderson
Tested by Brad on: BCM5706, BCM5708C Tested by me on: BCM5716 (BCM5709 PHY)
2010-05-24regenJonathan Gray
2010-05-24shrinkJonathan Gray
2010-05-24atascsi may (will) reuse ata_xfers, meaning the xa state thatDavid Gwynne
ahci_ata_cmd is called with might be the state of the xfer that ahci set previously. this stops ahci_ata_cmd from checking the state of ata_xfers its given, and instead trusts that atascsi is doing the right thing. reported and fix tested by matthew dempsky, who also did an awesome job of tracing the problem.
2010-05-24Remove the drm drivers that are not enabled (and have never been so).Owain Ainsworth
For now they are unmaintained, and work on kernel modesetting has very large inferface changes needing to be made. Also, when the radeon driver has been converted over, we will no longer support X with the DRI1 protocol, only DRI2. When the upheaval has finished, these drivers may be brought back after work to switch them to DRI2 style memory management and kernel modesetting has been done, but until then they are unsupported and probably broken (i know at least two of them have been reported broken before now). ragedrm will likely come back as a component of radeon (their interfaces are still fairly similar). The other drivers require rewriting. I have been threatening to do this for over a year. Discussed with deraadt@ and matthieu@ at various points since then.
2010-05-23remove another piece of ancient #ifdef arc codeTheo de Raadt
2010-05-23fix another signed/unsigned slipt. no functional change. I hate thisOwain Ainsworth
header. Found by Clang static analyser.
2010-05-23rely on __alpha__, __amd64__, and __i386__ insteadTheo de Raadt
2010-05-20New scsi code seems to be stable. Pluck previously identifiedKenneth R Westerback
low-hanging splbio/splx pairs that are no longer needed and see if this reveals any hidden scsi flaws. ok dlg@
2010-05-19BUS_DMA_ZERO instead of alloc, map, bzero.Owain Ainsworth
ok krw@
2010-05-19BUS_DMA_ZERO love.Owain Ainsworth
ok kevlo@, krw@
2010-05-18Add as yet untested support for the 82576 quad copper ET2Jonathan Gray
based on information in the linux driver. ok claudio@
2010-05-18regenJonathan Gray
2010-05-18Add some more em devices and workbit CF ATA.Jonathan Gray
2010-05-18bus_dmamem_alloc() ...; bzero/memset(); ->Owain Ainsworth
bus_dmamem_alloc(, BUS_DMA_ZERO); "ok on all the ones with my copyright" marco@
2010-05-18oops. needs_fence should still be conditional on tiling due to the needsOwain Ainsworth
fence execbuffer logic.
2010-05-18Always invalidate fences in pin if they are invalid, not just if we needOwain Ainsworth
a fence. This will stop the case where a newly untiled buffer that has been reused will be execed as if it was tiled, causing havok. Solves the PTE errors on mlarkin's 945. He has another bug that he is currently bisecting for me which I am looking into.
2010-05-17regenJonathan Gray
2010-05-17add some devices found on a core i5 machineJonathan Gray
2010-05-16add AR9300 PCI IdDamien Bergamini
2010-05-15Always check the tiling mode alignment on pin, even if we don't need aOwain Ainsworth
fence register. Stops some chipsets crapping out during rendering. Tested by Jan Stary; thanks!
2010-05-13new iwn(4) ids.Damien Bergamini
do not attach to the Gen2b devices yet as it is not clear wether or not they have their own hardware revision type.
2010-05-13new iwn(4) pci idsDamien Bergamini
2010-05-12syncOwain Ainsworth
2010-05-12Add ids for the integrated graphics builds into the core i3 and core i5Owain Ainsworth
2010-05-12Add Pineview M to intagp and inteldrm.Owain Ainsworth
Tested (and initial tweaked diff) from Erik Mugele; thanks!
2010-05-12syncOwain Ainsworth
2010-05-12add Pineview M dmi bridge and graphics ids.Owain Ainsworth
Tested (and inital patch that I tweaked) from Erik Mugele; thanks!
2010-05-10unifdef INTELDRM_GEM.Owain Ainsworth
This enabled GEM for the intel driver unconditionally. The legacy codepaths will be removed in approximately one week since they are now completely unused. After discussion with matthieu@, drahn@, kettenis@ and marco@ (well, mostly nagging from marco ;).
2010-05-10Remove the additional paranoia that I added compared to upstreamOwain Ainsworth
(reading back the relocation). It doesn't add any real security and when we actually need to map the buffer on demand to read/write it makes things cripplingly slow. The correct way to make this utterly incorruptible is a radeon-kms-like command checker to the command streams. This is on my todo list. Thanks to drahn@ for additional testing.
2010-05-10Use the new agp mapping api (introduced in previous commit) to allowOwain Ainsworth
this driver to work on machine with low kva and large apertures. tested by myself and drahn@
2010-05-10Continue with the horrible habit of using agp_machdep.c for agp related MDOwain Ainsworth
things that there really isn't a decent api for elsewhere. Since on recent intel IGPs the gtt aperture is too big (256meg is not uncommon) to be mapped on a kva-constrained arch like i386, introduce an agp mapping api that does things depending on arch. On amd64 which can afford the space (and will use the direct mapping again soon)just do bus_space_map() on init, then parcels things out using bus_space_subregion(), thus avoiding map/unmap overhead on every call (this is how inteldrm does things right now). On i386, we do bus_space_map() and bus_space_unmap as appropriate. Linux has some tricks here involving ``atomic'' maps that are on only one cpu and that you may not sleep with to avoid the ipi overhead for tlb flushing. For now we don't go down that route but it is being considered. I am also considering if it is worth abstracting this a little more, improving the api and making it a general MD interface. Tested by myself on i386 and amd64 and by drahn@ (who has one of the machines with an aperture that is too big) on i386.
2010-05-09Attach pineview graphics in inteldrm.Owain Ainsworth
Tested by Jan Stary; thanks!
2010-05-09Support Pineview IGD in intagp.Owain Ainsworth
Tested by Jan Stary, thanks!
2010-05-08A little bit of a hack.Owain Ainsworth
If userland asks to allocate an object large enough that two that size could not fit around the pinned objects, disallow it with EFBIG. This prevents mmap of large objects that big and copying between them putting the machine into infinite thrashing. with a patch to the ddx (on my git branch) that allocates a non-accelerated pixmap when it gets that return code, matthieu@s test huge image works happily when before it DOSed the kernel. The correct fix would be to fall back to mmaping the backing pages for objects that big (radeondrm will need such ability anyway). This however is a lot more complicated and I am still working out how to do it correctly hence this commit for now.
2010-05-08Set the write combined bit on our newly created pages.Owain Ainsworth
We need a proper MI api for doing this (one which will fall back to mtrrs if PAT is not available would be best), but for now this allows inteldrm to use PAT if available. Big fat XXX mentioning the need for a real api. ok kettenis@, tedu@
2010-05-07Remember to restore the spl. Found out the hard way by me.David Hill
ok @damien
2010-05-05Prevent a process from entering iwn_ioctl while another process isDamien Bergamini
tsleep'ing (for example waiting for the firmware to become alive) in iwn_init. I believe this might fix a crash reported by dhill@ This is a temporary fix until I find something better that I will apply to my other drivers that can tsleep in if_init (wpi, run etc...)
2010-05-05firmware images in type-length-value format can now offer differentDamien Bergamini
alternatives in a same image.