summaryrefslogtreecommitdiff
path: root/sys/dev
AgeCommit message (Collapse)Author
2020-04-22Use I40E_QUEUE_TYPE_EOL instead of hardcoding its value localy.Martin Pieuchot
ok jmatthew@
2020-04-21Revert r1.207. Apparently mpi(4) on sparc64 blows up ifKenneth R Westerback
sc_link.openings is greater than 34. Encountered by Sigi Rudzio on his Blade 2500, who kindly did some testing to discover that the answer is 34, not 42. Nuke some whitespace on the way by.
2020-04-21Add bcmdmac, a driver for the DMA controller found on BCM283x SoCs.tobhe
Original work by Neil Ashford and dlg@ ok kettenis@
2020-04-21Work around FIFO_UNDERRUN (0x84) Tx errors being reported by iwn(4) firmware.Stefan Sperling
When this error occurs, it tends to occur multiple times in a row. Affected frames are lost and never get transmitted, and traffic stalls for a while. I don't understand what is causing this. I have found that it only occurs if we ask the firmware to use its multi-rate retry table. If we send frames at a fixed rate, it does not happen. So this can be used as a workaround until the real problem is understood. Since this error is particularly problematic with block ack, use a fixed Tx rate for aggregation queues for now. All subframes contained in an aggregate are always sent together at the same rate anyway. ok mpi@
2020-04-21Fix TID value set by iwn(4) in the Tx command when sending block ack requests.Stefan Sperling
ok jmatthew@ mpi@
2020-04-21Add support for the additional SDHC controller found on the Raspberry Pi.Mark Kettenis
ok patrick@
2020-04-21Commands that create objects return a 24 bit object ID, so mask off theJonathan Matthew
high 8 bits of the value we extract, in case the firmware leaves junk there. Hrvoje Popovski has seen this with newer firmware on a ConnectX 5 card, which now works properly. ok dlg@
2020-04-20regenMark Kettenis
2020-04-20Add Broadcom BCM2711.Mark Kettenis
2020-04-20regenPatrick Wildt
2020-04-20Add another SanDisk/WD Black NVMe device.Patrick Wildt
From Greg Jones <gjones5555 (at) netscape (dot) net>
2020-04-20Fix pasto. We only need a single register set. Makes this workMark Kettenis
with a mainline Linux device tree.
2020-04-20Increase the completion queue size to prevent overflow. Under reasonablyJonathan Matthew
unlikely circumstances - lots of single-fragment packets being sent, a significant number of packets being received, while the interrupt handler was unable to process the completion queue - the completion queue could overflow, which would result in the interface locking up. ok dlg@
2020-04-20Check if we've reached the end of the current mailbox before writing pastJonathan Matthew
the end of it, rather than after. Now we can actually allocate queues big enough to need multiple mailboxes. ok dlg@
2020-04-20Don't call mcx_intr() from mcx_cmdq_poll(); this was a leftover from earlyJonathan Matthew
development that I forgot about, but turns out to be a potential race with the actual interrupt handler. ok dlg@
2020-04-20Add athn(4) definitions for the block-ack/block-ack-request control register.Stefan Sperling
Not used yet but may become useful later.
2020-04-19Add comments to clarify the hex IDs of some bwfm(4) devices on SD bus.Stefan Sperling
ok jmc@ deraadt@ kettenis@ "thanks and don't wait for me" patrick@
2020-04-19Add compatible string for the Raspberry Pi 4.Mark Kettenis
2020-04-19Add support for hardware where an SDHC controller lives on a bus thatMark Kettenis
only supports 32-bit access (hello Raspberry Pi). ok tobhe@
2020-04-19Add quitks for the SDHC controller found on the Raspberry Pi. This willMark Kettenis
give us uSD card or WiFi support (but not both) depending on the firmware configuration. ok tobhe@
2020-04-19Add support for hardware where an SDHC controller lives on a bus thatMark Kettenis
only supports 32-bit access (hello Raspberry Pi). ok tobhe@
2020-04-19Add bcmirng(4), a driver for the RNG200 random number generator found onMark Kettenis
the Raspberry Pi 4. ok deraadt@
2020-04-19Move logic to change brightness level in reasonable steps from acpivout(4)Mark Kettenis
into wsdisplay(4). This code is now exposed through wsdisplay_brightness_{step,zero,cycle} functions that can be called by any driver that handles brightnes "hotkeys". These functions take a wsdisplay(4) device pointer as their first argument, which should be provided if a clear association between events and a particular display exist. This is used in wskbd(4). Otherwise NULL can be passed and the code will direct the request at the first wsdisplay(4) that implements brightness adjustment. Tested by many. Fixes brightness keys on x395 and other thinkpads with AMD graphics. ok patrick@
2020-04-19Add bcmclock, a driver for the BCM283X CPRMAN clock controller.tobhe
Original work by Neil Ashford and dlg@ Feedback from jsg@ ok kettenis@, dlg@
2020-04-19Add bcmmbox, a driver for the VideoCore messagebox interface on BCM283X.tobhe
Original work by Neil Ashford and dlg@ Feedback from jsg@ ok kettenis@, dlg@
2020-04-19Add bcmpcie(4), a driver for the PCIe controller found on the Raspberry Pi 4.Mark Kettenis
In its current state the driver relies on the firmware for initializing the controller. Therefore it only really works when using the EDK2-based UEFI firmware. ok jsg@
2020-04-18Disable MSI for AMD Hudson2 HDA to fix random lock ups.Alexandre Ratchov
from Hemno Sapients <calomalus at airmail.cc>, thanks
2020-04-18Remove support for unused /dev/mixer device nodes.Alexandre Ratchov
ok deraadt
2020-04-18Remove useless return statement.Mark Kettenis
2020-04-18Add glue to let bse(4) attach using the FDT.Mark Kettenis
ok jsg@
2020-04-18drm/dp_mst: Fix clearing payload state on topology disableJonathan Gray
From Lyude Paul a0522bbd37d80507d118d3616e46bccde2c395a9 in linux 4.19.y/4.19.116 8732fe46b20c951493bfc4dba0ad08efdf41de81 in mainline linux
2020-04-18Revert "drm/dp_mst: Remove VCPI while disabling topology mgr"Jonathan Gray
From Sasha Levin 9a61fe235c0a653457c741d6140c6a8f8d8bfb48 in linux 4.19.y/4.19.116 a86675968e2300fb567994459da3dbc4cd1b322a in mainline linux
2020-04-17Fix an incorrect test for root in drm linux compatiblity code.Sebastian Benoit
Patch from and commited on behalf of Jonathan Gray (jsg@) ok kettenis@
2020-04-15Add support for the Armada 3720 CPU clock.Mark Kettenis
ok patrick@
2020-04-15drm_dp_mst_topology: fix broken drm_dp_sideband_parse_remote_dpcd_read()Jonathan Gray
From Hans Verkuil 329ef07f7fb83d4de62c239e376a6a0e04ff4b3c in linux 4.19.y/4.19.115 a4c30a4861c54af78c4eb8b7855524c1a96d9f80 in mainline linux
2020-04-15drm/amdgpu: fix typo for vcn1 idle checkJonathan Gray
From James Zhu 7b9d4492808eb3c3ba43f6391b138101a7e9e42e in linux 4.19.y/4.19.115 acfc62dc68770aa665cc606891f6df7d6d1e52c0 in mainline linux
2020-04-15drm/amd/display: Add link_rate quirk for Apple 15" MBP 2017Jonathan Gray
From Mario Kleiner a9049fd69bc4fdcc48ec3a638f1f470938354984 in linux 4.19.y/4.19.115 dec9de2ada523b344eb2428abfedf9d6cd0a0029 in mainline linux
2020-04-15gpiodcf(4): unbreak compilationcheloha
2020-04-15wdsc(4), ncr53c9x: timestamp LUNs with time_uptime(9), not time_second(9)cheloha
Use a monotonic clock for timestamping LUNs to avoid problems when the UTC clock jumps. ok krw@
2020-04-14Add bse(4), a driver for the Broadcom GENET v5 network interface found onMark Kettenis
the Raspberry Pi4. ok patrick@
2020-04-14Add BCM54210E support.Mark Kettenis
ok patrick@
2020-04-14Add flags to specify whether internal delays should be configured for RGMII.Mark Kettenis
ok patrick@
2020-04-14regenMark Kettenis
2020-04-14Add Broadcom BCM54210E.Mark Kettenis
ok patrick@
2020-04-14Implement acpi_getprop(), the ACPI equivalent of OF_getprop().Mark Kettenis
ok patrick@
2020-04-14Fix loop condition in sparc64-specific radeondrm_setcolor()Jeremie Courreges-Anglas
Spotted with clang -Wno-error=uninitialized. ok jsg@
2020-04-14Prevent uninitialized use of bbs and bls in the error pathJeremie Courreges-Anglas
Harmless since free(9) first checks that the pointer is not NULL. ok krw@
2020-04-13Fix a recently introduced iwn(4) problem where the link gets stuck sinceStefan Sperling
every CCMP encrypted frame is discarded by the AP as a replay. This happened because of CCMP frames with out of range PNs sent by hardware. It seems iwn firmware doesn't like it if we reset the Tx scheduler slot for a frame which is still within the firmware's block ack window, even if the frame has already been ACKed. So frames now get cleared off the Tx queue only when the block ack window has moved past them, which is good enough and seems to prevent the problem. Problem reproduced and fix tested by both myself and jca@
2020-04-12Turn those spinlock and seqlock inline functions to macrosJeremie Courreges-Anglas
They're macros on Linux because they save state in their flags parameter. Turning them to static inline functions creates a lot of -Wuninitialized warnings, so just use macros which set their flags argument. ok kettenis@
2020-04-12Add support for the _CCA method. This method indicates whether DMA isMark Kettenis
cache-coherent or not. To implement this, acpi(4) gets two bus_dma tags and passes the appropriate one when attaching devices based on _CCA. On i386/amd64, where for all practical purpose DMA is always cache-coherent, the two tags are the same. But on arm64 they are distinct. ok patrick@