summaryrefslogtreecommitdiffstats
path: root/sys/dev (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add a barrier after arming a completion queue. If multiple cqs are usingjmatthew2019-06-141-2/+3
| | | | | the same uar page, these writes could be combined, which would result in a queue not being armed.
* Do not consider the pipe as halted if the device is gone.mpi2019-06-131-1/+3
| | | | Analysed by and ok claudio@
* the rx drops field is 8 bits (and a 24 bit flow tag), not 32 bits.dlg2019-06-131-2/+3
| | | | sympathy from jmatthew@
* Set interrupt moderation on the completion queue for around 10000jmatthew2019-06-121-2/+8
| | | | | | interrupts per second, or 90% of the cq size. ok dlg@
* drm: don't block fb changes for async plane updatesjsg2019-06-112-10/+20
| | | | | | From Helen Koike fbb7e114e6e690c46f170dedd6fd2fb22f241519 in linux 4.19.y/4.19.50 89a4aac0ab0e6f5eea10d7bf4869dd15c3de2cd4 in mainline linux
* drm/i915: Maintain consistent documentation subsection orderingjsg2019-06-112-4/+4
| | | | | | From Jonathan Corbet 6600ec2600d63868efa8c6641375451677469b24 in linux 4.19.y/4.19.50 551bd3368a7b3cfef01edaade8970948d178d40a in mainline linux
* drm/i915/fbc: disable framebuffer compression on GeminiLakejsg2019-06-111-0/+4
| | | | | | From Daniel Drake 360e00e290a355219425b5ea0ca62d9df3261fa1 in linux 4.19.y/4.19.50 396dd8143bdd94bd1c358a228a631c8c895a1126 in mainline linux
* drm/amdgpu: remove ATPX_DGPU_REQ_POWER_FOR_DISPLAYS check when hotplug-injsg2019-06-111-2/+1
| | | | | | From Aaron Liu f3dcc88d531fd21af0c4261896eb23b455499366 in linux 4.19.y/4.19.50 bdb1ccb080dafc1b4224873a5b759ff85a7d1c10 in mainline linux
* drm/radeon: prefer lower reference dividersjsg2019-06-111-2/+2
| | | | | | From Christian Koenig 84c82ab8f133f1c1e27f6b1bafe3f7d8835acc4c in linux 4.19.y/4.19.50 2e26ccb119bde03584be53406bbd22e711b0d6e6 in mainline linux
* drm/amdgpu/psp: move psp version specific function pointers to early_initjsg2019-06-111-9/+10
| | | | | | From Alex Deucher 748a97ec6c1588e3a49e09fe9ca56dcdb7f976b5 in linux 4.19.y/4.19.50 9d6fea5744d6798353f37ac42a8a653a2607ca69 in mainline linux
* drm: add non-desktop quirks to Sensics and OSVR headsets.jsg2019-06-111-0/+6
| | | | | | From Ryan Pavlik 98a8cb0282ab22d0533de34412f2118bf21147e4 in linux 4.19.y/4.19.50 29054230f3e11ea818eccfa7bb4e4b3e89544164 in mainline linux
* drm: add non-desktop quirk for Valve HMDsjsg2019-06-111-0/+19
| | | | | | From Andres Rodriguez 490290b0415f069eb156db50d165ca6a407d47bc in linux 4.19.y/4.19.50 30d62d4453e49f85dd17b2ba60bbb68b6593dba0 in mainline linux
* Use km_alloc() instead of mallocarray() when allocating ttm dma segmentsjsg2019-06-111-7/+10
| | | | to avoid running out of kmem space. Suggested by and ok kettenis@
* pass what pci_intr_established returns to intr_barrierdlg2019-06-111-2/+2
| | | | | | | | passing a pointer to a pci_intr_handle_t doesnt work too well on sparc64, where it faults in the guts of the scheduler. dunno why amd64 is fine. ok jmatthew@
* if ifiq_input says there's too much pressure, tell the rxr we're livelockeddlg2019-06-111-3/+4
| | | | ok jmatthew@
* bump up the ring sizes for dlg@jmatthew2019-06-111-4/+4
|
* records a flowid in the mbuf if the rx cqe provides an rx hash value.dlg2019-06-111-1/+6
| | | | | jmatthew@ says we need to configure the hw to populate that, but i can put this in now in preparation for it.
* support hardware timestamping for received packets.dlg2019-06-101-4/+121
| | | | | | | | | | | | | | the chip has a cycle counter or something, and the value of the counter when the packet is sent to the host is stored in the completion queue entry. the driver periodically checks the cycle counter and records the time at that point, so the rx path can do some maths to figure out what the clock time is for the cycle counter. if the driver is calibrated with the chips counter, the rx packets are timestamped. this is based on the changes made to freebsd, but with some simplifications.
* Print proper ACPI version number.kettenis2019-06-103-11/+14
| | | | ok mlarkin@
* drm/lease: Make sure implicit planes are leasedjsg2019-06-102-0/+12
| | | | | | From Daniel Vetter 390a0fd31b02f2f7086af2f3bdb8ae576b9a4b84 in linux 4.19.y/4.19.49 204f640da6914844b3270b41b29c84f6e3b74083 in mainline linux
* Let drm(4) allocate memory without constraints if the hardware supportskettenis2019-06-093-17/+27
| | | | | | | | | 64-bit DMA. Should reduce the pressure on DMA-reachable memory, which is important since there are still cases where the pagedaemon ends up being triggered continuously if we run out of DMA-reachable memory but have plenty of memory left. ok jsg@
* When establishing the mapping between ACPI device nodes and PCI devices,kettenis2019-06-081-1/+6
| | | | | | skip PCI host bridges and devices that aren't there. ok patrick@
* disambiguate memory extent conflicts for membars and rom addressesdlg2019-06-081-2/+2
| | | | | | there's some more work to do in this space, but this helps us start. ok kettenis@
* Update Spleen kernel fonts to the latest released version, bringingfcambus2019-06-085-193/+193
| | | | | | | | | | | | | | | the following improvements: - Shift the middle bar of the upper case 'G' one pixel down in the 12x24 version - Shift lower case 'k' character right, for better alignment in the 12x24, 16x32, and 32x64 versions - Make upper case 'X' thicker in the 16x32 and 32x64 versions - Make upper case 'V' thicker in the 32x64 version - Make lower case 'g' character smoother in the 16x32 and 32x64 versions - Add some artefacts on each side of the lower case 'i' characters OK kettenis@, naddy@, deraadt@
* add ukspan(4), a driver for the Keyspan USA19HS USB serial adapterjcs2019-06-072-1/+600
| | | | written by Cody Cutler <ccutler at csail.mit.edu>
* regenjcs2019-06-072-4/+9
|
* add Keyspan USA-19HSjcs2019-06-071-1/+2
|
* Introduce acpi_getsta() and use it to eliminate some duplicated code.kettenis2019-06-072-24/+28
| | | | ok patrick@
* make struct mcx_cq_entry a bit closer to realitydlg2019-06-071-8/+9
| | | | | | this puts the timestamp, rx drops, and hash fields in the right place. ok jmatthew@
* have mcx_process_rx return the number of slots it made freedlg2019-06-071-8/+10
| | | | | | | | | | this is instead of passing a pointer to the counter. while here use byte swapping loads and stores, which is mostly a nop cos i dont think we have an LE arch with swapping memory operations. ok jmatthew@
* ConnectX-5 cards work toojmatthew2019-06-061-1/+3
|
* Set up the interrupt handler before creating the event queue.jmatthew2019-06-061-20/+21
| | | | | | Apparently the boot rom on some cards leaves an interrupt vector set up, which will be run on completion of the first command after we set up the event queue, causing kernel crashes. chris@ reported this a while ago.
* We know which flow table entries are actually in use, so we can justjmatthew2019-06-051-11/+13
| | | | | | delete those rather than blindly deleting everything, which also means we don't need to check against a specific syndrome code to ignore errors we get deleting entries that aren't there.
* this can support 64BIT DVA for iodlg2019-06-051-2/+3
|
* Move a function used as a callback out of a header so there will only bejsg2019-06-042-61/+63
| | | | one function with a single address.
* use htolemXX and lemtohXX instead of htoleXX and letohXXdlg2019-06-041-25/+26
| | | | | | this makes the generated code a lot shorter on sparc64, and has no effect on little endian archs. this has been in my tree for well over a year without issue.
* tx and rx descriptors work fine with 64bit dvadlg2019-06-041-4/+6
| | | | ok jmatthew@
* Implement mcx_media_change(). This disables the port, sets the media type tojmatthew2019-06-041-65/+158
| | | | | | | | | | the requested type (or all available types, if none specified), then re-enables it to start negotiation. While here, only set up the available media types during attach, rather than on every mcx_media_status() call, as they don't reflect the type of module or cable present so they won't change over time. ok dlg@
* Prevent corruption of the pckbc command queue. If multiple synchronousanton2019-06-031-9/+27
| | | | | | | | | | | | | | commands are in flight and all corresponding threads are sleeping waiting for a response, the first command to timeout will clear the command queue. The remaining threads once awake will then try to remove a dequeued command from the queue, leading to corruption. Instead, remove commands from the queue before waking up the sleeping thread. A quirk is still needed to handle the case where tsleep() returns successfully during suspend. ok mpi@ visa@ Reported-by: syzbot+fe74fc50c630bfa26302@syzkaller.appspotmail.com
* Implement rx filtering using the flow table. Now we have three flow groups,jmatthew2019-06-031-72/+263
| | | | | | | | | | | one that will match any packet, used in promisc mode; one that matches on the low bit of the first byte of the destination mac address, used to receive all multicast packets; and one that matches on the whole destination mac address, used to receive unicast, broadcast and specific multicast addresses. As we add multicast addresses, we create flow entries to match them, but if we run out, we create an all-multicast flow entry. ok dlg@
* - Remove a redundant check within alc_mii_readreg_813x().kevlo2019-06-031-5/+1
| | | | | | | | The PHY address is already checked within alc_miibus_readreg(). - Remove redundant call to alc_stop_queue(). First thing alc_stop_mac() does is call alc_stop_queue(). From Brad
* Change pci_intr_handle_t into a struct and replace duplicated code thatkettenis2019-06-032-169/+38
| | | | | | | | implements mapping of MSI and MSI-X interrupts with new generic functions. Fixes a use-after-free in sone PCI device drivers that call pci_intr_string(9) after pci_intr_establish(9). ok deraadt@
* drm: Wake up next in drm_read() chain if we are forced to putback the eventjsg2019-06-011-0/+1
| | | | | | From Chris Wilson 00734a9e7329acc48e575f697ee4118998c1dac0 in linux 4.19.y/4.19.47 60b801999c48b6c1dd04e653a38e2e613664264e in mainline linux
* drm/amd/display: Set stream->mode_changed when connectors changejsg2019-05-311-2/+1
| | | | | | From Nicholas Kazlauskas 62e79f4c6bc05c32be43e2532fe12c082429af27 in linux 4.19.y/4.19.47 b9952f93cd2cf5fca82b06a8179c0f5f7b769e83 in mainline linux
* drm/amd/display: Fix Divide by 0 in memory calculationsjsg2019-05-311-5/+15
| | | | | | From Murton Liu fc5293ab6c48710eed5df3b40e808e3a3c560e2d in linux 4.19.y/4.19.47 59979bf8be1784ebfc44215031c6c88ca22ae65d in mainline linux
* drm/amd/display: fix releasing planes when exiting odmjsg2019-05-311-2/+4
| | | | | | From Dmytro Laktyushkin 70611b1b81c4ec8ce99d3c00107e89697ec1f495 in linux 4.19.y/4.19.47 bc2193992b00488f5734613ac95b78ef2d2803ab in mainline linux
* drm/amdgpu: fix old fence check in amdgpu_fence_emitjsg2019-05-311-7/+17
| | | | | | From Christian Koenig d8a36f8418034bacef0b5b73c0822f41646d77ba in linux 4.19.y/4.19.47 3d2aca8c8620346abdba96c6300d2c0b90a1d0cc in mainline linux
* Add MSI-X support.kettenis2019-05-311-28/+39
| | | | ok patrick@
* remove duplicate page tablejsg2019-05-312-37/+0
| | | | a holdover from when the allocation wasn't done in ttm
* Add MSI-X support.kettenis2019-05-311-29/+39
| | | | ok patrick@