IABSD.fr/src/sys/dev

Branch :


Log

Author Commit Date CI Message
0a3861fc 2017-07-06 10:09:26 sync the list of pci devices which don't require aperture ok kettenis@
e12511f5 2017-07-05 20:30:13 Fix native/raw backlight support in inteldrm(4).
b98ddde8 2017-07-05 12:43:32 regen
784b66df 2017-07-05 12:43:10 Add Intel Braswell Sensor Hub device.
e4dbbea0 2017-07-04 22:27:23 Ignore entries with specific PCI subvendor/subdevice such that we don't inadvertedly match the Intel HD Graphics P4000 as a "Quanta transcode" device. Thanks to Joe Gidi for figuring out that I inadvertedly brought this back. Hopefully fixing it this way prevents it from happening again.
76ead70e 2017-07-03 23:27:53 blacklist MSI on intel m.2 optane parts. it just doesnt work there. discovered by jmatthew@ tweaks and ok jsg@ kettenis@
50cc059d 2017-07-03 13:26:04 merge error, revealed by clang; ok kettenis@
8443256d 2017-07-03 09:21:09 Replace slot time durations with macros. ok stsp@
c2fbad6e 2017-07-03 06:33:24 regen
7704e1c4 2017-07-03 06:32:54 intel optanes are a thing
1a8d1b18 2017-07-02 20:58:55 Enable MIPI/DSI support for inteldrm(4). Makes the display on my ASUS Transformer Book T100HA work (with some ugly error/warning messages).
e198220f 2017-07-02 14:48:19 Add the definition of IEEE80211_DUR_DS_SHSLOT. From IEEE Std. 802.11-2016, Table 18-5 "ERP characteristics", p. 2332: aSlotTime characteristic: If dont11OperatingClassesRequired is false: Long = 20 us Short = 9 us ok stsp@
3253c27b 2017-07-01 16:14:10 Update inteldrm(4) to code based on Linux 4.4.70. This brings us support for Skylake and Cherryview and better support for Broadwell and Valleyview. Also adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it working with the updated generic DRM code needed for inteldrm(4). Tested by many.
4e5201e3 2017-07-01 16:12:03 Update inteldrm(4) to code based on Linux 4.4.70. This brings us support for Skylake and Cherryview and better support for Broadwell and Valleyview. Also adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it working with the updated generic DRM code needed for inteldrm(4). Tested by many.
e0b53cee 2017-07-01 16:00:25 Update inteldrm(4) to code based on Linux 4.4.70. This brings us support for Skylake and Cherryview and better support for Broadwell and Valleyview. Also adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it working with the updated generic DRM code needed for inteldrm(4). Tested by many.
5fb81a6c 2017-07-01 15:56:11 - Avoid possible use of uninitialized variable; noticed by jsg@ - Only set value in R92C_FAST_EDCA_CTRL register if the device is combo WiFi/Bluetooth; confirmed by Yan-Hsuan Chuan from Realtek - There's no need to set the default value for the R92C_PIFS since default value is 0x1c; confirmed by Yan-Hsuan Chuan from Realtek - Disable usb Rx aggregation mode for rtl8188cu/rtl8192cu; vendor drivers use DMA Rx aggregation mode for rtl8188cu/rtl8192cu/rtl8188eu and use USB Rx aggregation mode for later chipsets. Tested by stsp and me. ok stsp@
a796f3c8 2017-06-30 06:25:29 Fix a format string specifier error in a debug printf. Noticed and reported by Fasse: fasse dot f2 at gmail dot com Thanks.
6b1c7616 2017-06-29 17:36:16 kill RCSID macros; discussed with millert
8ad1e6fc 2017-06-29 03:48:44 set c.c_maxrxlen to something. apparently lost a line somewhere. maybe it works now? :) from Colin Stolley via Paul B. Henson
d16b5843 2017-06-27 13:56:15 Provide a handler stub for the "channel rescind" message
f2643dce 2017-06-27 12:04:26 Avoid testing an uninitialised variable in the SCSI_BUSY/SCSI_QUEUE_FULL paths of hvs_scsi_cmd_done(). ok mikeb@
f62d7836 2017-06-26 20:12:14 Minor cleanup; when polling delay before calling the interrupt handler
398942c6 2017-06-26 18:42:23 Rework the deferred interrupt loop By performing a task_add an interrupt handler can rely on the taskq_thread to invoke it again with an additional benefit of being able to sched_pause when required. In the long run more than 99.8% of calls do not require an additional iteration.
c14d8484 2017-06-26 07:02:16 Factor a variable assignment in audiopoll(). From Michael Bombardieri, thanks.
6ab8fabf 2017-06-23 19:09:21 Event interrupt handler should call hv_channel_schedule now
f1ed34a9 2017-06-23 19:07:13 Request deferred interrupt processing
8f767439 2017-06-23 19:05:42 Introduce deferred interrupt processing capability Hyper-V interrupts seem to be sometimes delivered before the message becomes available on the channel ring. This is reproducible on hvs(4) under load. This change is modelled on the workaround found in the Linux driver.
c2027333 2017-06-23 18:54:44 s/membar_sync/virtio_membar_sync/
c16b4e2e 2017-06-23 18:51:28 Finish up minor changes in the output and clear the BATCHED channel flag
08300c66 2017-06-23 14:41:54 - Fix Tx queues to USB endpoints mapping and merge urtwn_r92c_dma_init() and urtwn_r88e_dma_init() into one; from FreeBSD r291902. - Change the way the number of pages for public queue is calculated; Based on the vendor driver's _InitQueueReservedPage(), the formula for calculation of the number of pages for public priority queue is as follows: if the device has 3 endpoints: PUBQ = total number of Tx pages - HQ - LQ - NQ if the device has 2 endpoints (i.e. has high and normal priority queues): PUBQ = total number of Tx pages - HQ - NQ - Don't write MCS8..MCS15 Tx power if the WNIC is a 1-stream Tx; - Set R88E_TX_PAGE_COUNT to a correct value; - Minimal enhancement in urtwn_open_pipes() for upcoming rtl8192eu chipset support; Tested with USB-N10 Nano (rtl8188cu), DWA-131 rev B (rtl8192cu), and TL-WN725N v2 (rtl8188eu) on amd64. ok stsp@
8d8f7df7 2017-06-22 06:21:12 Add a hypervisor-specific function pointer in pvbus(4) that gets called during cpu_hatch() on each cpu, allowing initialization of per-cpu features on each cpu as it starts up. input from reyk@ and mikeb@ ok mikeb@
31de4d1e 2017-06-22 05:32:47 Fix another ;; in sys/dev
114e9c63 2017-06-22 02:44:37 double ;;. xhci one found by geoffhill
4f93181d 2017-06-21 18:18:08 Don't confuse SCSI command status and transfer error code. While here, make SCSI command completion routine more robust.
f16a32e7 2017-06-21 16:37:48 Return early from NVS command submission if no response is required
c099a505 2017-06-21 11:35:11 Include the request id in the I/O debug output
bd38a9bd 2017-06-20 15:49:00 Check the validity of the `qtd' pointer after each interrupt case and bail out if the pointer has become invalid. This prevents use-after-free memory accesses that corrupted the dwc2qtd pool. This fix improves stability on the Raspberry Pi 3. From Linux commit dc8730846948e517169f630826cd2c97615f5ee8 OK kettenis@
53de56e5 2017-06-20 13:52:40 Remove the IWM_FLAG_HW_INITED flag from iwm(4). This flag was redundant. The IFF_RUNNING flag in struct ifnet serves the same purpose. ok mpi@ kettenis@ deraadt@
8c3115d8 2017-06-19 11:03:30 Add a handler for the WSDISPLAYIO_GINFO ioctl in radeondrm, allowing to retrieve basic information about a framebuffer display. OK visa@, deraadt@
08624e9e 2017-06-19 11:00:18 Add a handler for the WSDISPLAYIO_GINFO ioctl in inteldrm, allowing to retrieve basic information about a framebuffer display. OK visa@, tedu@
acc71172 2017-06-19 09:36:27 Do not call txeof nor rxeof in the watchdog routine. They cannot be serialized with the interrupt routine and are useless because the driver is reinitialized right after. Pointed by and ok mikeb@
995fbf01 2017-06-18 13:34:03 pms/alps: configure compat mode
ec55cf64 2017-06-18 13:21:48 Remove remnants of old versions.
b172cb7a 2017-06-17 19:20:30 The fonts we are looping through in vga_selectfont() are the builtin font which is using the IBM encoding, and some potentially loaded fonts which are either IBM or ISO encoded. Therefore the condition checked by vga_valid_font() is always true, and we can remove it. Thanks to miod@ for pointing this out. OK tb@
34a2cade 2017-06-16 14:57:51 - Fix incorrect values in the computation of transmit power for the rtl8188eu chipset. - Small code refactoring: - replace hardcoded rate indexes with their name, like athn(4). - replace fields offsets with the structure; from FreeBSD r294198. - be compliant with definitions of the efuse in vendor hal_pg.h and rename struct r92c_rom member names: s/channel_plan/reserved5/, s/xtal_calib/channel_plan. - no need to disable HWPDN twice in urtwn_r88e_power_on(). Tested by stsp@ and myself with RTL8188CUS, RTL8192CU, RTL8188EU, and RTL8188CE devices. ok stsp@
5ae9823c 2017-06-16 08:45:34 In iwm_init() save the generation counter once before looping over tsleep(9), instead of saving it during every iteration.
175c85ce 2017-06-15 20:12:12 Don't defer attaching PV devices Now that both hvn(4) and hvs(4) can perform VMBus channel operations during autoconf, it's no longer necessary to defer their attachment.
5328d3b1 2017-06-15 20:08:56 Make sure we can free GPA handles when cold
b6117676 2017-06-15 20:06:13 Support executing NVSP and RNDIS commands during autoconf
2bedbdd7 2017-06-15 18:21:08 Provide storage for the response message in each CCB
559d9ea0 2017-06-15 18:05:52 Remove the structure definition for an old (pre Win8) I/O request type since the new one is backwards compatible and the correct length of the request can be specified w/o an actual definition.
332f60c2 2017-06-15 18:00:26 Put back copying of the response message into the polling callback The response message is allocated on the stack of hvs_intr and its content is valid during a single message processing loop iteration. Due to the fact that polled transfers finish completion in a callee context, the cached pointer to the response message becomes stale very quickly. To avoid this situation the poll completion callback needs to make sure the content of the response is provided to the next completion routine.
d917c196 2017-06-15 15:01:28 Correct the number of targets vs number of LUNs jsg@ has found out that the number of targets wasn't correct and it turns out that the device supports up to 2 targets and 1 or 64 LUNs depending on whether it's taking over an IDE device or is a virtual SCSI. While here make sure the command response is copied back only for synchronous commands that are issued during initialization phase.
96ea3eb5 2017-06-15 11:48:49 We do not support iso7 nor pcvt encoding, so remove macro definitions and commented entries. OK mlarkin@
ae828fe0 2017-06-14 22:24:11 Borrow some of dlg's smarts to make this look like a real SCSI driver
8ce927c3 2017-06-14 16:58:28 Currently, iwm(4) uses only one phy context, so stop sending commands to the firmware for unused ones. This should be refactored further, but for now this change is good enough to reduce the amount of commands we throw at the firmware. ok deraadt@
31bde467 2017-06-14 16:57:47 When a task in iwm(4) obtains an rwlock(9), bail out if the device was reset while the task was asleep waiting for the lock. ok deraadt@
90e46a7b 2017-06-14 16:56:50 Make the iwm(4) ioctl handler wait until the transition to SCAN has completed when bringing the interface up. Otherwise we get racy behaviour when running ifconfig commands which issue several ioctls in quick succession. Should fix the occasional "could not initiate scan" errors. ok deraadt@
626e1a05 2017-06-14 16:56:04 Make iwm(4) wait for the PHY calibration result notification during HW init. Code inspection revealed that Linux does this, and so should we. ok deraadt@
77269c59 2017-06-14 12:28:41 Special handling for request 0 clashes with CCB 0
01903976 2017-06-14 12:05:37 Increase the maximum amount of requests and do some cleanup
7f9668fd 2017-06-14 10:25:40 Hookup hvs(4)
3ae168bd 2017-06-14 10:24:51 Hyper-V storage driver Based on the FreeBSD driver, attaches only to emulated SCSI controllers.
1f3992c0 2017-06-14 09:47:37 Add another type of a scatter-gather list operation used by StorVSC Obtained from FreeBSD.
13e4c7ef 2017-06-13 08:00:24 Increase WSFONT_NAME_SIZE size, this will allow storing longer font names in wsdisplay_font structures. OK deraadt@
4fe5a5de 2017-06-12 16:39:51 Limit the maximum size of softraid crypto volumes that can be created to the size that is currently supported (a data area of 16TB, or 2^32 * 32 + 528 blocks including the softraid metadata/boot area), rather than successfully creating the volume and then failing during resource allocation (without properly reporting why it failed). Found the hard way by sharon s. <mymlact at gmx dot com>
67b01768 2017-06-12 15:43:25 Upon failure, only return zero from the softraid ioctl handler when there is at least one bio status message. It is a much nicer user experience when we properly report failures, however in the case that we fail to do this, getting an errno back from the ioctl is somewhat better than simply printing "unknown error" from bioctl(8).
f6a8865d 2017-06-12 15:15:08 Fix another long standing softraid crypto bug where if all 32 keys are in use, when freeing crypto sessions we run straight off the end of the array and start blatting memory - clearly no one has a softraid crypto volume that exceeds 15.5TB in size...
2dc30802 2017-06-12 15:09:07 Factor out and reuse the code that frees the crypto sessions, instead of duplicating it.
b436e181 2017-06-12 14:46:00 Fix a long standing off-by-one bug in the softraid crypto number of keys calculation - we allow one key per 0.5TB, which should allow up to 16TB disks, however the disk size was treated like a block offset and shifted. This meant that the maximum size was actually 16TB minus one block. While here also calculate the number of keys as an absolute value, rather than as the upper inclusive bound - adjust the logic in the associated for and if statements to match. ok krw@ tb@
56bd49a9 2017-06-12 13:45:39 specify free() size from the old allocation, not new allocation. fix from C Turt
44ac566c 2017-06-12 12:35:07 ifq_start does OACTIVE and RUNNING checks for the driver Reminded by dlg@.
7f0b5f10 2017-06-12 04:57:42 typo; from bryan vyhmeister
56bdc47d 2017-06-12 03:00:26 From FreeBSD (r227593, r307982): More and more RealTek controllers started to implement EEE feature. Vendor driver seems to load a kind of firmware for EEE with additional PHY fixups. It is known that the EEE feature may need ASPM support. Unfortunately there is no documentation for EEE of the controller so enabling ASPM may cause more problems. The Realtek vendor drivers for FreeBSD and Linux also disable ASPM and clock request. While here, add a define for the ECPM (Enable Clock Power Management) bit. Tested by stsp@ and myself. ok stsp@
921381e4 2017-06-11 02:06:36 integer overflow for two range checks fix from C Turt, ok miod
d5bd7054 2017-06-10 12:58:37 Pass M_CANFAIL to malloc(9) calls which use M_WAITOK but are tested for failure. ok armani@
088d0fa3 2017-06-09 20:38:48 Fill RX ring during init and bail early on send if OACTIVE is set or IFF_RUNNING is not.
1d4f8416 2017-06-09 14:36:43 Remove a WAITOK that has sneaked in
a24f5c54 2017-06-09 14:34:10 Convert to ifq_dequeue and perform m_defrag if the mbuf doesn't fit With suggestions from and OK dlg
5a92a6a8 2017-06-09 13:47:26 Introduce iwm_nic_assert_locked() to verify that the driver has correctly requested MAC access before accessing certain registers, as required by the hardware. Use it to assert that hardware is still in an accessible state before reading or writing such a register. For now, panic if that check fails. The long term goal is to make this a non-fatal error and handle it properly in all code paths that end up reading or writing such a register. Fix a missing NIC lock on 8000 hardware, found by this new assertion. Also, grab the NIC lock early during hardware init and keep it until init is done. The previous code relinquished and reacquired the NIC lock several times during the init sequence. It seems this is what was causing some random errors when the interface was brought up, such as "could not enable Tx queue", "could not add aux station", and "could not add phy context". For some reason, bsd.rd kernels were suffering particularly hard from such problems, to the point where some machines could not be upgraded over iwm(4). This change does not eliminate such problems entirely but is a step forward. Prodded by deraadt@ This change has already been in snaps for a while.
e334da63 2017-06-09 13:46:15 Fix the resume code path in iwm(4) to no longer call iwm_stop() before initializing the hardware. Prevents "acquiring device failed" messages during resume. Also, start the hardware up in DVACT_RESUME already and verify that it has started by the time we reach DVACT_WAKEUP, before scheduling the iwm_init_task which loads firmware etc. With help from deraadt@ test & ok tb@
bf196442 2017-06-08 01:34:00 make the gem tx path MPSAFE. this mostly follows the pattern in ifq.h ok jmatthew@
a338ceb4 2017-06-07 15:49:21 Acquire submit queue mutex only once per xbf_complete_cmd invocation and remove some leftover assertions.
bc260131 2017-06-06 21:53:07 Set the weak variant of hysteresis as default.
705639a4 2017-06-06 21:12:01 Rewrite the driver to handle 64kb transfers Although several codepaths in the kernel such as coredump and buffercache read-ahead feature assume that underlying hardware is capable of handling 64kb transfers without any issues, xbf was setup to rely on a single descriptor per transfer which limited the maximum size of an individual transfer to 11 4k segments amounting to 44k bytes. To avoid overbooking, a metadata object is allocated for each transfer to keep track of associated descriptors limiting the maximum amount of outstanding transfers to half the ring size. The issue was reported by Dan Cross <crossd at gmail.com>, thanks!
9aecda2c 2017-06-06 20:33:28 Call xbf_intr for polled transfers that can't sleep
31a33b6e 2017-06-06 19:47:22 Add support for tap gestures.
5396f3b8 2017-06-06 19:01:27 Provide sufficient info in error messages to identify softraid volume and backing disk when i/o errors occur. Original issue reported by Paul de Weerd. Suggestions from jsing@. ok deraadt@ mikeb@
42000b0b 2017-06-06 01:02:18 Regen.
0e67be84 2017-06-06 00:52:02 Sort DLINK section and add USB device ID of D-Link DWA-131 rev E1. ok stsp@
91637d79 2017-06-05 04:57:37 use byte swapping loads and stores. shrinks the code a bit on sparc64. ok jmatthew@
e0047aae 2017-06-04 20:28:05 fix a bungled logical/bitwise expression pointed out by clang; ok deraadt@
a86c5d82 2017-06-04 19:23:20 Remove unused function, as pointed out by clang. ok deraadt@ kettenis@
37bc6d24 2017-06-04 15:06:22 Switch the radeondrm(4) driver over to TTM using the new DRM VMA manager. ok jsg@
beea9bb1 2017-06-04 14:02:24 Switch the TTM code over to the generic DRM VMA manager. ok jsg@
6aba050a 2017-06-04 05:04:24 update link to Ken Kato's vmware backdoor protocol documentation from Seth Jackson
35debf69 2017-06-04 04:29:23 use htolem32 and lemtoh32 instead of htole32 and letoh32. saves about half a k on sparc64.
a28b3ce1 2017-06-03 08:50:38 vioblk/virtio: Re-arrange some struct members This reduces holes/padding and makes the structs smaller.
c929981a 2017-06-02 20:25:50 Perform grant table page allocation outside of the table mutex witness(4) has found that km_alloc will trigger an rw_enter via uvm_map and vm_map_lock. While rw_enter is called with RW_SLEEPFAIL, there's also an msleep in there, so it's easier to avoid getting in the middle of that.
04c31ef2 2017-06-02 16:04:36 regen