summaryrefslogtreecommitdiff
path: root/sys/dev
AgeCommit message (Collapse)Author
2019-06-08When establishing the mapping between ACPI device nodes and PCI devices,Mark Kettenis
skip PCI host bridges and devices that aren't there. ok patrick@
2019-06-08disambiguate memory extent conflicts for membars and rom addressesDavid Gwynne
there's some more work to do in this space, but this helps us start. ok kettenis@
2019-06-08Update Spleen kernel fonts to the latest released version, bringingFrederic Cambus
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@
2019-06-07add ukspan(4), a driver for the Keyspan USA19HS USB serial adapterJoshua Stein
written by Cody Cutler <ccutler at csail.mit.edu>
2019-06-07regenJoshua Stein
2019-06-07add Keyspan USA-19HSJoshua Stein
2019-06-07Introduce acpi_getsta() and use it to eliminate some duplicated code.Mark Kettenis
ok patrick@
2019-06-07make struct mcx_cq_entry a bit closer to realityDavid Gwynne
this puts the timestamp, rx drops, and hash fields in the right place. ok jmatthew@
2019-06-07have mcx_process_rx return the number of slots it made freeDavid Gwynne
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@
2019-06-06ConnectX-5 cards work tooJonathan Matthew
2019-06-06Set up the interrupt handler before creating the event queue.Jonathan Matthew
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.
2019-06-05We know which flow table entries are actually in use, so we can justJonathan Matthew
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.
2019-06-05this can support 64BIT DVA for ioDavid Gwynne
2019-06-04Move a function used as a callback out of a header so there will only beJonathan Gray
one function with a single address.
2019-06-04use htolemXX and lemtohXX instead of htoleXX and letohXXDavid Gwynne
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.
2019-06-04tx and rx descriptors work fine with 64bit dvaDavid Gwynne
ok jmatthew@
2019-06-04Implement mcx_media_change(). This disables the port, sets the media type toJonathan Matthew
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@
2019-06-03Prevent corruption of the pckbc command queue. If multiple synchronousanton
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
2019-06-03Implement rx filtering using the flow table. Now we have three flow groups,Jonathan Matthew
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@
2019-06-03- Remove a redundant check within alc_mii_readreg_813x().Kevin Lo
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
2019-06-03Change pci_intr_handle_t into a struct and replace duplicated code thatMark Kettenis
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@
2019-06-01drm: Wake up next in drm_read() chain if we are forced to putback the eventJonathan Gray
From Chris Wilson 00734a9e7329acc48e575f697ee4118998c1dac0 in linux 4.19.y/4.19.47 60b801999c48b6c1dd04e653a38e2e613664264e in mainline linux
2019-05-31drm/amd/display: Set stream->mode_changed when connectors changeJonathan Gray
From Nicholas Kazlauskas 62e79f4c6bc05c32be43e2532fe12c082429af27 in linux 4.19.y/4.19.47 b9952f93cd2cf5fca82b06a8179c0f5f7b769e83 in mainline linux
2019-05-31drm/amd/display: Fix Divide by 0 in memory calculationsJonathan Gray
From Murton Liu fc5293ab6c48710eed5df3b40e808e3a3c560e2d in linux 4.19.y/4.19.47 59979bf8be1784ebfc44215031c6c88ca22ae65d in mainline linux
2019-05-31drm/amd/display: fix releasing planes when exiting odmJonathan Gray
From Dmytro Laktyushkin 70611b1b81c4ec8ce99d3c00107e89697ec1f495 in linux 4.19.y/4.19.47 bc2193992b00488f5734613ac95b78ef2d2803ab in mainline linux
2019-05-31drm/amdgpu: fix old fence check in amdgpu_fence_emitJonathan Gray
From Christian Koenig d8a36f8418034bacef0b5b73c0822f41646d77ba in linux 4.19.y/4.19.47 3d2aca8c8620346abdba96c6300d2c0b90a1d0cc in mainline linux
2019-05-31Add MSI-X support.Mark Kettenis
ok patrick@
2019-05-31remove duplicate page tableJonathan Gray
a holdover from when the allocation wasn't done in ttm
2019-05-31Add MSI-X support.Mark Kettenis
ok patrick@
2019-05-30Fix definitions of PCI_MSIX_MAU32 and add a define for the MSI-X functionMark Kettenis
mask bit. ok mlarkin@, jmatthew@
2019-05-30Mellanox support tells me that according to an internal datasheet, legacyJonathan Matthew
interrupts are not supported, leaving us with just MSI-X for mcx(4).
2019-05-30wrap some long lines, except in bits I'll probably have to rewrite soonJonathan Matthew
2019-05-29Add jumbo frame support. Set the port MTU as high as we can (up to 9500)Jonathan Matthew
and allocate dma maps and receive buffers to match. ok dlg@
2019-05-27spelling fixes in comments and one printf; from j sissonJason McIntyre
2019-05-27fix virtio_pci on 32bit archsStefan Fritsch
bus_space_read/write_8 do not exist there, use two 32bit operations.
2019-05-27fix multitouch by properly reading multi-finger data on type4Joshua Stein
devices which have padding between finger data tested on an older model by bru@
2019-05-26Support virtio 1.0 for virtio_pciStefan Fritsch
virtio 1.0 for virtio_mmio it not yet implemented, but 0.9 devices continue to work.
2019-05-26Rework virtio_negotiate_features()Stefan Fritsch
Add a sc_driver_features field that is automatically used by virtio_negotiate_features() and during reinit. Make virtio_negotiate_features() return an error code. Virtio 1.0 has a special status bit for feature negotiation that means that negotiation can fail. Make virtio_negotiate_features() return an error code instead of the features. Make virtio_reinit_start() automatically call virtio_negotiate_features(). Add a convenience function virtio_has_feature() to make checking bits easier. Add an error check in viomb for virtio_negotiate_features because it has some feature bits that may cause negotiation to fail. More error checking in the child drivers is still missing. ok mlarkin@
2019-05-26virtio_pci: Move msix vector config into functionsStefan Fritsch
ok mlarkin@
2019-05-26virtio_pci: Split bus space handlesStefan Fritsch
In virtio_pci 1.0, different parts of the register set may be located in different BARs. Use subregions to make the access independent of the virtio version.
2019-05-24Configure pins.Mark Kettenis
2019-05-24Remove redundant conditional. Inspecting flags is the correct way toanton
determine if the device was opened in read/write mode. ok mpi@ visa@
2019-05-24Match radeon_device.c rev 1.2 and return early in amdgpu_device_suspend()Jonathan Gray
if "shutdown" is set and the mountroot hook has not run. Otherwise unhibernate causes a uvm fault due to an uninitialised lock.
2019-05-24implement support for SIOCGIFSFFPAGEJonathan Matthew
i2c reads are implemented as a port register read that returns up to 32 bytes from a page. ok dlg@
2019-05-23drop STUB() calls in paths frequently called when running xorgJonathan Gray
2019-05-23Inline 18 bytes of packet header so we can send vlan tagged packets.Jonathan Matthew
2019-05-23match radeondrm and switch DRM_INFO message with device id/asic name toJonathan Gray
a printf so it shows without DRMDEBUG
2019-05-23Formatting fixes.Kevin Lo
From Brad
2019-05-22Cleanup debug macros in wscons. Favor __func__ over spelling out the actualanton
function name in order to reduce grep noise. Also, some of them where referring to the wrong function.
2019-05-22A wscons device may only be opened in read/write mode once. However,anton
after checking for exclusive access, malloc() can sleep in wsevent_init() opening up for a potential race where more than one thread may be able open the device. Prevent this by checking if the race was won after calling malloc(). While here, switch to mallocarray as proposed by both cheloha@ and mpi@ ok mpi@