summaryrefslogtreecommitdiffstats
path: root/sys/dev
AgeCommit message (Collapse)AuthorFilesLines
2015-11-09Allocate a currently unused vendor ID for our vmm's pchb.mlarkin1-1/+5
discussed with deraadt
2015-11-09rework the start routines to avoid IF_PREPEND.dlg4-124/+74
IF_PREPEND assumes the underlying send queue is priq, while hfsc may be enabled on it. the previous code pattern to DEQUEUE, try and encap the mbuf on the ring, and if that failed cos there was no space it would PREPEND it. now it checks for space on the ring before it attempts to DEQUEUE. failure to encap means the mbuf is now unconditionally dropped.
2015-11-09rework the code to avoid IF_PREPEND.dlg1-58/+43
IF_PREPEND assumes the underlying send queue is using priq, so if you're using hfsc things dont work well. part of this shuffle moved the defragmentation of the mbuf to using m_defrag instead of hand rolled code. tested by several people on tech@
2015-11-08Merge NetBSD 1.145:miod1-1/+5
When issuing a non-dma command, make sure to set the "remaining length of command to be transfered via dma" (sc_cmdlen) to zero upfront, otherwise we might get confused on command completition interrupt (no dma active but still data left to transfer).
2015-11-08Always claim to support sector mode for eMMC. Allows BeagleBone Blackjsg2-2/+7
boards with Micron eMMC to work. The Micron eMMC seems to adhere to the spec which states: "If there is no indication by a host to a memory that the host is capable of handling sector type of addressing the higher than 2GB of density of memory will change its state to Inactive (similarly to a sit- uation in which there is no common voltage range to work with)" From Ian Sutton with feedback from uwe@
2015-11-07Spell `unused' correctly.miod1-2/+2
2015-11-05explicitly say that we use uio for our crypto operations; ok mikeb@naddy1-1/+2
2015-11-05for mice with wheels, check for W direction at AC Pan input used injcs1-2/+9
some newer mice ok miod
2015-11-04allow km(4) to match the temperature sensor in GX-412TC SOC (as used on APU2)sthen1-2/+3
tested by nothingness at citycable.ch, ok bmercer@
2015-11-04use if_enqueue() rather than doing a poor inline version of it.dlg1-13/+2
ok mpi@
2015-11-04replace the ifqueues in net80211 with mbuf_queues.dlg28-78/+74
the specific queues are ic_mgtq, ic_pwrsaveq, and ni_savedq. rtw had its own queue for beacons. tested by mpi@ and jmc@ ok mpi@
2015-11-04replace while (ml_dequeue()) m_freem(); with ml_purge();dlg1-3/+2
2015-11-04use IFQ_IS_EMPTY to see if if_snd is empty, not IF_IS_EMPTYdlg1-3/+3
2015-11-04replace the ifqueues used for tulip_txq and _rxq with mbuf_lists.dlg2-16/+18
2015-11-02Delay root hub interrupt processing to the soft-interrupt path in ordermpi3-10/+15
to mark ehci_intr() as IPL_MPSAFE. Earlier version tested by ratchov@, ok visa@
2015-11-02Mark xhci_intr() as IPL_MPSAFE since it only schedules a soft-interrupt.mpi2-7/+3
ok visa@
2015-11-02regenjsg2-2/+27
2015-11-02add some "Broadwell H" ids and another asmedia xhcijsg1-1/+6
2015-11-02later variants of these chips can support bigger rx and tx rings. thisdlg2-40/+64
diff expands them so devices that need more packets per interrupt can use them. this is all from brad@ tested by jim smith and benjamin perrault on APUs tested by me on 8139s (which dont support bit rings) on landisk, and 8169s
2015-11-01Bring in some commits from Rodrigo Vivi in linux to correctjsg1-3/+3
the IS_BDW_ULT macro. drm/i915: BDW Fix Halo PCI IDs marked as ULT. 6b96d705f3cf435b0b8835b12c9742513c77fed6 in mainline linux This will prevent the desktop "Iris Pro Graphics 6200" from being misidentified as ULT. drm/i915/bdw: PCI IDs ending in 0xb are ULT. 0dc6f20b9803f09726bbb682649d35cda8ef5b5d in mainline linux This will make the mobile "Iris Graphics 6100" be correctly identified as being a ULT part.
2015-11-01drm/i915/bdw: enable eDRAM.jsg1-2/+2
From Ben Widawsky 1d2866baf71e222308345ec745c20cbdb279f325 in mainline linux
2015-11-01drm/i915: Fix and clean BDW PCH identificationjsg1-11/+5
From Rodrigo Vivi a35cc9d0c0118fb18f7c5dd7a44adb454868a679 in mainline linux This removes some warnings that incorrectly trigger on desktop broadwell.
2015-10-30Fix interaction between inteldrm(4) and efifb(4). If we were booted by UEFIkettenis1-11/+29
firmware and the efifb(4) framebuffer address matches one of the BARs associated with the inteldrm(4) device, make inteldrm(4) the console and prevent efifb(4) from attaching. Make sure that we do a full clear of the framebuffer when inteldrm(4) attaches to prevent the contents of the old framebuffer from showing up. Based on an earlier diff from yasuoka@ ok yasuoka@
2015-10-29enable keyboard backlight led earlier to avoid racejung1-9/+12
2015-10-29Make inteldrm(4) attach to pci(4) instead of vga(4) just like radeondrm(4).kettenis7-261/+120
This is needed for machines where Intel graphics isn't the primary graphics device and on systems with UEFI firmware that put the device in non-VGA mode. ok jsg@
2015-10-29regenjsg2-2/+67
2015-10-29add some amd family 16h model 30h-3fh, mullins/bolton idsjsg1-1/+14
2015-10-29fix newlines on an error messagejsg1-2/+2
2015-10-27Sync chacha_ivsetup to the version in ssh so that we couldmikeb1-5/+5
specify custom counter value when setting up Chacha context. ok reyk djm
2015-10-25refactor to use a taskq and postpone the long running initial sensor probing,jung1-246/+262
also avoid excessive tsleep()s for updates within the sensor task, moreover this should fix some seldom seen 'comm collision' errors
2015-10-25arp_ifinit() is no longer needed and almost dead.mpi10-89/+16
2015-10-25arp_ifinit() is no longer needed.mpi45-218/+48
2015-10-25arp_ifinit() is no longer needed.mpi30-179/+35
2015-10-25arp_ifinit() is no longer needed.mpi25-125/+25
2015-10-24Wait a short while between setting a USB device's address and reloadingstsp1-1/+4
its descriptor. Fixes flaky attach of USB devices (most importantly the detachable keyboard) on the Thinkpad Helix 2, and perhaps elsewhere. Problem diagnosed by mpi; ok mpi@
2015-10-23Fix uvm_object reference counting. While these reference counts aren't reaalykettenis2-3/+5
used (ttm bo's have their own reference counts), we can't let the reference count go negative as this will freak out the upper uvm layers. Since the uvm_object reference count is still a useful debugging tool (ddb will display it for example), adjust it such that the uvm_object reference count represents the number of references held by the uvm layer. tested by matthieu@ ok jsg@
2015-10-23replace pointer arithmetic and casts with offsetofjsg1-5/+5
ok dlg@ krw@
2015-10-22remove some horrible iwm typedefsjsg2-9/+6
ok stsp@
2015-10-20Fix 802.1p VLAN priority code points for VLAN_HWTAGGING.chrisz2-5/+16
Our in-kernel ether-vtag has a different layout to the vr TXSTAT register. ok sthen@
2015-10-19Enable some code that does power management magic.kettenis1-5/+1
2015-10-19Properly restore the prefetchable memory window upon resume.kettenis1-2/+2
ok deraadt@
2015-10-19Revert transfer submission to r1.85. Seems to make okan@'s scannermpi1-30/+15
work properly.
2015-10-19Move bge rxeof and txeof outside the kernel lock.jmatthew2-117/+95
To make rxeof safe, use a separate ring refill timeout for each ring. We activate the refill timeout for a ring when it's too empty to receive packets, which ensures we won't attempt to refill it from interrupt context. To make txeof safe, remove the list of dma maps and just allocate maps based on the ring slots occupied by the packet, and use atomic operations to adjust bge_txcnt. Rework some parts of the txeof and start loops so that we only adjust bge_txcnt after exiting the loop, and only take actions such as setting or clearing OACTIVE based on the final value. tested on 5703, 5714, 5721 by me, 5753 by semarie@, 5761 by naddy@, and also in snapshots for a while ok mpi@, dlg@
2015-10-18The change of 5.7's sys/arch/i386/i386/bus_space.c anduaa1-2/+14
sys/arch/i386/include/bus.h invokes the kernel crash at boot when ignored (disabled) channel is detected. In all ATA controllers, ignored (disabled) channel is still set cp->hwok = 1. And pciide_mapregs_native() is not called, wdc_cp->cmd_iot is 0. 5.6 and before, cmd_iot = 0 is treated as I386_BUS_SPACE_IO, so there is no problem to call bus_space_read_1() in wdcintr(). 5.7 and after, cmd_iot is used as function pointer. We have to initialize it with pciide_mapregs_native() or something, otherwise set cp->hwok = 0 to prevent calling wdcintr(). When ignored (disabled) channel is found, default_chip_map() should set cp->hwok = 0. So all controllers do same thing. ok by deraadt@
2015-10-18Backport another Broadwell fix from Linux 3.15kettenis1-3/+11
Ben Widawsky drm/i915: Provide PDP updates via MMIO e178f7057b81c87a7ceaae0ca204487b6f7eedcf Doesn't make resume work, but at least it prevents the machine from hanging and/or resetting.
2015-10-17Fix the code that sets up the MCH BAR on systems where the (buggy) BIOSkettenis4-48/+50
doesn't do this for us. The code was poking registers on the wrong PCI device. We were just lucky that it worked on most systems. This should fix machines such as the Asus EeePC 701 and get rid of the error: [drm:pid0:i915_gem_detect_bit_6_swizzle] *ERROR* Couldn't read from MC HBAR. Disabling tiling. messages on that machine.
2015-10-16Put some iwm(4) debug code into #ifdef IWM_DEBUG.stsp1-3/+3
ok mpi@
2015-10-16Clean up iwm(4) scanning logic a bit: Reset sc_scanband in callers ofstsp1-9/+7
iwm_mvm_scan_request() and always call ieee80211_end_scan() when done. ok mpi@
2015-10-16Oops, committed old version of previous diff with a typo in it: NLL -> NULLstsp1-2/+2
2015-10-16In iwm(4), correctly size and map the mbuf used for large firmware commands.stsp2-19/+28
Fixes occasional firmware errors while bringing the interface up or scanning. ok phessler@