#
334096 |
|
23-May-2018 |
emaste |
sys/modules: don't build bxe,qlxgbe if the user objects to sourceless ucode
MFC of r322682 and r322684
PR: 204747 Submitted by: Fabian Keil Obtained from: ElectroBSD
|
#
323223 |
|
06-Sep-2017 |
hselasky |
MFC r322810 and r322830: Add new mlx5ib(4) driver to the kernel source tree which supports Remote DMA over Converged Ethernet, RoCE, for the ConnectX-4 series of PCI express network cards.
There is currently no user-space support and this driver only supports kernel side non-routable RoCE V1. The krping kernel module can be used to test this driver. Full user-space support including RoCE V2 will be added as part of the ongoing upgrade to ibcore from Linux 4.9. Otherwise this driver is feature equivalent to mlx4ib(4). The mlx5ib(4) kernel module will only be built when WITH_OFED=YES is specified.
Approved by: re (marius) Sponsored by: Mellanox Technologies
|
#
318198 |
|
11-May-2017 |
marius |
MFC: r292180 (partial), r297127 (partial), r311911, r311923, r312939, r313250, r313712, r314811 (partial), r314887 (partial), r315430, r317981, r315466
o Move the DRIVER_MODULE() statements that declare mmc(4) to be a child of the various bridge drivers out of dev/mmc.c and into the bridge drivers.
o Add ACPI platform support for SDHCI driver.
o Fix some overly long lines, whitespace and other bugs according to style(9) as well as spelling etc. in mmc(4), mmcsd(4) and sdhci(4).
o In the mmc(4) bridges and sdhci(4) (bus) front-ends: - Remove redundant assignments of the default bus_generic_print_child device method, - use DEVMETHOD_END, - use NULL instead of 0 for pointers.
o Trim/adjust includes.
o Add and use a MMC_DECLARE_BRIDGE macro for declaring mmc(4) bridges as kernel drivers and their dependency onto mmc(4).
o Add support for eMMC "partitions". Besides the user data area, i. e. the default partition, eMMC v4.41 and later devices can additionally provide up to: 1 enhanced user data area partition 2 boot partitions 1 RPMB (Replay Protected Memory Block) partition 4 general purpose partitions (optionally with a enhanced or extended attribute)
Besides simply subdividing eMMC devices, some Intel NUCs having UEFI code in the boot partitions etc., another use case for the partition support is the activation of pseudo-SLC mode, which manufacturers of eMMC chips typically associate with the enhanced user data area and/ or the enhanced attribute of general purpose partitions.
CAVEAT EMPTOR: Partitioning eMMC devices is a one-time operation.
o Now that properly issuing CMD6 is crucial (so data isn't written to the wrong partition for example), make a step into the direction of correctly handling the timeout for these commands in the MMC layer. Also, do a SEND_STATUS when CMD6 is invoked with an R1B response as recommended by relevant specifications.
o Add an IOCTL interface to mmcsd(4); this is sufficiently compatible with Linux so that the GNU mmc-utils can be ported to and used with FreeBSD (note that due to the remaining deficiencies outlined above SANITIZE operations issued by/with `mmc` currently most likely will fail). These latter have been added to ports as sysutils/mmc-utils. Among others, the `mmc` tool of mmc-utils allows for partitioning eMMC devices (tested working).
o For devices following the eMMC specification v4.41 or later, year 0 is 2013 rather than 1997; so correct this for assembling the device ID string properly.
o Let mmcsd.ko depend on mmc.ko. Additionally, bump MMC_VERSION as at least for some of the above a matching pair is required.
|
#
317120 |
|
19-Apr-2017 |
davidcs |
MFC r316485 Add 25/40/100Gigabit Ethernet Driver version v1.3.0 for Cavium Inc's. Qlogic 45000 Series Adapters
|
#
309842 |
|
10-Dec-2016 |
rpokala |
MFC r309491: Build smbios.ko as a module for amd64 and i386
For whatever reason, smapi, smbios, vpd are all under the "bios" directory. smapi is only for i386, so the entire "bios" directory is only built for i386. Break smapi out, and make only it i386-specific. Then, build the "bios" directory for both amd64 and i386.
Because 'sys/modules/Makefile' was refactored after stable/10 was branched, the diff for that file is different from that of the original commit. They are functionally equivalent.
|
#
302072 |
|
21-Jun-2016 |
bdrewery |
MFC r300892,r300893,r301130,r301404,r301414,r301460:
r300892: Rename function to be less generic. r300893: Don't truncate existing error when writing the log. r301130: Enable filemon on all architectures. r301404: Support all architectures by just using sysent. r301414: Fix build after r301404. r301460: Cleanup COMPAT_FREEBSD32 support.
|
#
300661 |
|
25-May-2016 |
mav |
MFC ioat(4) driver in its present state.
|
#
293602 |
|
09-Jan-2016 |
dchagin |
MFC r283680, r283681:
Move linux64 and linux_common to it's right place and make them not depend on bhyve.
|
#
293552 |
|
09-Jan-2016 |
dchagin |
MFC r283448:
Connect linux64 module to the build.
|
#
293527 |
|
09-Jan-2016 |
dchagin |
MFC r283421:
Introduce a new module linux_common.ko which is intended for the following primary purposes:
1. Remove the dependency of linsysfs and linprocfs modules from linux.ko, which will be architecture specific on amd64.
2. Incorporate into linux_common.ko general code for platforms on which we'll support two Linuxulator modules (for both instruction set - 32 & 64 bit).
3. Move malloc(9) declaration to linux_common.ko, to enable getting memory usage statistics properly.
Currently linux_common.ko incorporates a code from linux_mib.c and linux_util.c and linprocfs, linsysfs and linux kernel modules depend on linux_common.ko.
Temporarily remove dtrace garbage from linux_mib.c and linux_util.c
|
#
291201 |
|
23-Nov-2015 |
hselasky |
MFC r291072, r291168 and r291169: Add the mlx5 and mlx5en modules to the i386 and amd64 kernel builds by default and add a manual page for mlx5en. The mlx5 module contains shared code for both infiniband and ethernet. The mlx5en module contains specific code for ethernet functionality only. A mlx5ib module is in the works for infiniband support.
Supported hardware: - ConnectX-4: 10/20/25/40/50/56/100Gb/s speeds. - ConnectX-4 LX: 10/25/40/50Gb/s speeds (low power consumption)
Refer to the mlx5en(4) manual page for a comprehensive list.
The team porting the mlx5 driver(s) to FreeBSD: - Hans Petter Selasky <hselasky@freebsd.org> - Oded Shanoon <odeds@mellanox.com> - Meny Yossefi <menyy@mellanox.com> - Shany Michaely <shanim@mellanox.com> - Shahar Klein <shahark@mellanox.com> - Daria Genzel <dariaz@mellanox.com> - Mark Bloch <markb@mellanox.com>
Differential Revision: https://reviews.freebsd.org/D4163 Sponsored by: Mellanox Technologies
|
#
285809 |
|
23-Jul-2015 |
scottl |
Merge driver for PMC Sierra's range of SAS/SATA HBAs.
Submitted by: Achim Leubner <Achim.Leubner@pmcs.com> Approved by: re
|
#
284365 |
|
14-Jun-2015 |
bryanv |
MFC r273331, r273371, r275851:
- Add vxlan interface
- Use the size of the Ethernet address, not the entire header, when copying into forwarding entry.
- Prefix all the vxlan ifconfig commands so they are unique
|
#
284094 |
|
06-Jun-2015 |
ian |
MFC r278338, r278340, r278458, r278519:
Create a module to install the Raspberry Pi dtb files.
Pull in the rpi.dts -> rpi.dtb module (dtb/rpi) and have it install rpi.dtb in /boot/dtb by default.
Add a module to build the dtb files for all supported imx6 systems.
Remove imx6s-wandboard.dts, there is no such file.
|
#
284066 |
|
06-Jun-2015 |
ae |
MFC r274246: Overhaul if_gre(4).
Split it into two modules: if_gre(4) for GRE encapsulation and if_me(4) for minimal encapsulation within IP.
gre(4) changes: * convert to if_transmit; * rework locking: protect access to softc with rmlock, protect from concurrent ioctls with sx lock; * correct interface accounting for outgoing datagramms (count only payload size); * implement generic support for using IPv6 as delivery header; * make implementation conform to the RFC 2784 and partially to RFC 2890; * add support for GRE checksums - calculate for outgoing datagramms and check for inconming datagramms; * add support for sending sequence number in GRE header; * remove support of cached routes. This fixes problem, when gre(4) doesn't work at system startup. But this also removes support for having tunnels with the same addresses for inner and outer header. * deprecate support for various GREXXX ioctls, that doesn't used in FreeBSD. Use our standard ioctls for tunnels.
me(4): * implementation conform to RFC 2004; * use if_transmit; * use the same locking model as gre(4);
PR: 164475
MFC r274289 (by bz): gcc requires variables to be initialised in two places. One of them is correctly used only under the same conditional though.
For module builds properly check if the kernel supports INET or INET6, as otherwise various mips kernels without IPv6 support would fail to build.
MFC r274964: Add ip_gre.h to ObsoleteFiles.inc.
|
#
284052 |
|
06-Jun-2015 |
np |
MFC r276480, r276485, r276498, r277225, r277226, r277227, r277230, r277637, and r283149 (by emaste@).
r276485 is the real change here, the rest deal with the fallout of mp_ring's reliance on 64b atomics.
Use the incorrectly spelled 'eigth' from struct pkthdr in this branch instead of MFC'ing r261733, which would have renamed the field of a public structure in a -STABLE branch. ---
r276480: Temporarily unplug cxgbe(4) from !amd64 builds.
r276485: cxgbe(4): major tx rework.
a) Front load as much work as possible in if_transmit, before any driver lock or software queue has to get involved.
b) Replace buf_ring with a brand new mp_ring (multiproducer ring). This is specifically for the tx multiqueue model where one of the if_transmit producer threads becomes the consumer and other producers carry on as usual. mp_ring is implemented as standalone code and it should be possible to use it in any driver with tx multiqueue. It also has: - the ability to enqueue/dequeue multiple items. This might become significant if packet batching is ever implemented. - an abdication mechanism to allow a thread to give up writing tx descriptors and have another if_transmit thread take over. A thread that's writing tx descriptors can end up doing so for an unbounded time period if a) there are other if_transmit threads continuously feeding the sofware queue, and b) the chip keeps up with whatever the thread is throwing at it. - accurate statistics about interesting events even when the stats come at the expense of additional branches/conditional code.
The NIC txq lock is uncontested on the fast path at this point. I've left it there for synchronization with the control events (interface up/down, modload/unload).
c) Add support for "type 1" coalescing work request in the normal NIC tx path. This work request is optimized for frames with a single item in the DMA gather list. These are very common when forwarding packets. Note that netmap tx in cxgbe already uses these "type 1" work requests.
d) Do not request automatic cidx updates every 32 descriptors. Instead, request updates via bits in individual work requests (still every 32 descriptors approximately). Also, request an automatic final update when the queue idles after activity. This means NIC tx reclaim is still performed lazily but it will catch up quickly as soon as the queue idles. This seems to be the best middle ground and I'll probably do something similar for netmap tx as well.
e) Implement a faster tx path for WRQs (used by TOE tx and control queues, _not_ by the normal NIC tx). Allow work requests to be written directly to the hardware descriptor ring if room is available. I will convert t4_tom and iw_cxgbe modules to this faster style gradually.
r276498: cxgbe(4): remove buf_ring specific restriction on the txq size.
r277225: Make cxgbe(4) buildable with the gcc in base.
r277226: Allow cxgbe(4) to be built on i386. Driver attach will succeed only on a subset of i386 systems.
r277227: Plug cxgbe(4) back into !powerpc && !arm builds, instead of building it on amd64 only.
r277230: Build cxgbe(4) on powerpc64 too.
r277637: Make sure the compiler flag to get cxgbe(4) to compile with gcc is used only when gcc is being used. This is what r277225 should have been.
|
#
283668 |
|
28-May-2015 |
erj |
Fix build issue and incompatibilites introduced by r283620.
- Re-introduce "device ixgbe" option for kernel configs. This allows users to continue using existing kernel configurations, while still letting if_ix and if_ixv exist to allow ifconfig magic to work. Though the amd64 GENERIC config has "device ix" and "device ixv" instead of "device ixgbe".
This is achieved by making the if_ixgbe module a stub that depends on if_ix and if_ixv.
- Replace if_baudrate assignment with if_initbaudrate() call.
Thanks to jhb@ for the stub module suggestion and pointing out the if_baudrate error.
Approved by: jfv (mentor)
|
#
283620 |
|
27-May-2015 |
erj |
MFC ixgbe commits for 10.2:
- r280182 - Split the driver into independent pf/vf loadables - r280197 - Resolve build issues - r280204 - Fix multiple same-name devclasses - r280228 - Fix i386 LINT build issues / remove unused variable - r280252 - Fix building ixgbe with gcc - r280962 - Make changes to busdma code similar to r257541 - r281772 & r281773 - Remove unused variable - partial r282280 - stats counter update (ix-only) - r282289 - Add X550 support - r282290 - Add X550 makefile updates - r282293 - Add ixgbe_x550.c to conf/files - r282299 - Fix gcc compile (extraneous extern declaration)
Finally, add ix_txrx.c to conf/files because it's required for compile in stable/10.
Approved by: jfv (mentor)
|
#
282814 |
|
12-May-2015 |
avg |
followup to r282748: remove another instance of cyclic in sys/modules/Makefile
Those lines were not present in head and thus were not removed by the original commit and its merge.
|
#
282748 |
|
11-May-2015 |
avg |
MFC r275576: remove opensolaris cyclic code, replace with high-precision callouts
|
#
282199 |
|
28-Apr-2015 |
dumbbell |
drm: Update the device-independent code to match Linux 3.8.13
This update brings few features: o Support for the setmaster/dropmaster ioctls. For instance, they are used to run multiple X servers simultaneously. o Support for minor devices. The only user-visible change is a new entry in /dev/dri but it is useless at the moment. This is a first step to support render nodes [1].
The main benefit is to greatly reduce the diff with Linux (at the expense of an unreadable commit diff). Hopefully, next upgrades will be easier.
No updates were made to the drivers, beside adapting them to API changes.
[1] https://en.wikipedia.org/wiki/Direct_Rendering_Manager#Render_nodes
r280814 is merged at the same time to avoid a short window where RANDR might be broken:
drm: Import Linux commit 9bc3cd5673d84d29272fa7181a4dfca83cbb48c1
Author: Ville Syrjälä <ville.syrjala@linux.intel.com> Date: Fri May 31 12:17:08 2013 +0000
drm: Sort connector modes based on vrefresh
Keeping the modes sorted by vrefresh before the pixel clock makes the mode list somehow more pleasing to the eye.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
PR: 198936 (r280814) Tested by: Many people MFC of: r280183, r280187 (original commit by glebius), r280814 Relnotes: yes
|
#
278558 |
|
11-Feb-2015 |
ngie |
MFC r277728:
r277728:
Add MK_AUTOFS knob for building and installing autofs(4), et al
Sponsored by: EMC / Isilon Storage Division
|
#
278557 |
|
11-Feb-2015 |
ngie |
MFC r277727:
r277727:
Add MK_BHYVE knob for building and installing bhyve(4), et al
Sponsored by: EMC / Isilon Storage Division
|
#
278555 |
|
11-Feb-2015 |
ngie |
MFC r277675,r277726,r278070:
r277675:
Add MK_ISCSI knob for building the iscsi initiator, iscsi daemon, kernel modules, etc
Sponsored by: EMC / Isilon Storage Division
r277726:
Build sbin/iscontrol again if MK_ISCSI != no
Pointyhat to: me
r278070:
Remove duplicate MK_ISCSI block and sort the conditional blocks so this error won't crop up again in the future
Reported by: gjb
|
#
270919 |
|
01-Sep-2014 |
jfv |
MFC of 270755, 270772, 270773, 270775, 270799, 270806, 270807, 270820 Enable the build of the Intel XL710 drivers, and fixes for that build.
|
#
270892 |
|
31-Aug-2014 |
trasz |
MFC r270096:
Bring in the new automounter, similar to what's provided in most other UNIX systems, eg. MacOS X and Solaris. It uses Sun-compatible map format, has proper kernel support, and LDAP integration.
There are still a few outstanding problems; they will be fixed shortly.
Reviewed by: allanjude@, emaste@, kib@, wblock@ (earlier versions) Phabric: D523 Relnotes: yes Sponsored by: The FreeBSD Foundation
|
#
270061 |
|
16-Aug-2014 |
bz |
MFC r264601,264646,265766,267918,267919,267920:
Merge if_nf10bmac(4), a driver to support an NetFPGA-10G Embedded CPU Ethernet Core.
The current version operates on a simple PIO based interface connected to a NetFPGA-10G port.
To avoid confusion: this driver operates on a CPU running on the FPGA, e.g. BERI/mips, and is not suited for the PCI host interface.
Adjust the register layout to allow for 64bit registers in the future for nf10bmac(4). Also, add support for and enable RX interrupts.
Allow switching between 32bit and 64bit bus width data access at compile time by setting NF10BMAC_64BIT and using a REGWTYPE #define to set correct variable and return value widths.
Adjust comments to indicate the 32 or 64bit register widths.
Relnotes: yes Sponsored by: DARPA/AFRL
|
#
266272 |
|
16-May-2014 |
sbruno |
MFC r264269, r264282, r264280, r264291, r264276, r264314
Merge sson's binmiscctl and image activator features to stable/10
Submitted by: sson@freebsd.org
|
#
265999 |
|
13-May-2014 |
ian |
MFC r257334, r257336, r257337, r257338, r257341, r257342, r257343, r257370, r257368, r257416
Hints-only devices should return BUS_PROBE_NOWILDCARD from their probe methods.
|
#
265937 |
|
12-May-2014 |
ian |
Revert accidental commit that tagged along with an MFC commit.
|
#
265936 |
|
12-May-2014 |
ian |
MFC r259099: Fix a small error in calculating length of DELAY().
|
#
265922 |
|
12-May-2014 |
ambrisko |
MFC 265555
dd mrsas(4) driver from LSI official support of newer MegaRAID SAS cards. LSI has been maintaining this driver outside of the FreeBSD tree. It overlaps support of ThunderBolt and Invader cards that mfi(4) supports. By default mfi(4) will attach to cards. If the tunable: hw.mfi.mrsas_enable=1 is set then mfi(4) will not probe and attach to these newer cards and allow mrsas(4) to attach. So by default this driver will not effect a FreeBSD system unless mfi(4) is removed from the kernel or the tunable is enabled.
mrsas(4) attaches disks to the CAM layer so it depends on CAM and devices show up as /dev/daX. mfiutil(8) does not work with mrsas. The FreeBSD version of MegaCli and StorCli from LSI do work with mrsas. It appears that StorCli only works with mrsas. MegaCli appears to work with mfi(4) and mrsas(4).
It would be good to add mfiutil(4) support to mrsas, emulations modes, kernel logging, device aliases to ease the transition between mfi(4) and mrsas(4).
Style issues should be resolved by LSI when they get committers approved. The plan is get this driver in FreeBSD 9.3 to improve HW support.
Thanks to LSI for developing, testing and working with FreeBSD to make this driver co-exist in FreeBSD. This improves the overall support of MegaRAID SAS.
Submitted by: Kashyap Desai <Kashyap.Desai@lsi.com> Sponsored by: LSI
|
#
265388 |
|
05-May-2014 |
ken |
MFC the mpr(4) driver for LSI's 12Gb SAS cards.
This includes r265236, r265237, r265241 and r265261:
------------------------------------------------------------------------ r265236 | ken | 2014-05-02 14:25:09 -0600 (Fri, 02 May 2014) | 51 lines
Bring in the mpr(4) driver for LSI's MPT3 12Gb SAS controllers.
This is derived from the mps(4) driver, but it supports only the 12Gb IT and IR hardware including the SAS 3004, SAS 3008 and SAS 3108.
Some notes about this driver: o The 12Gb hardware can do "FastPath" I/O, and that capability is included in this driver.
o WarpDrive functionality has been removed, since it isn't supported in the 12Gb driver interface.
o The Scatter/Gather list handling code is significantly different between the 6Gb and 12Gb hardware. The 12Gb boards support IEEE Scatter/Gather lists.
Thanks to LSI for developing and testing this driver for FreeBSD.
share/man/man4/mpr.4: mpr(4) man page.
sys/dev/mpr/*: mpr(4) driver files.
sys/modules/Makefile, sys/modules/mpr/Makefile: Add a module Makefile for the mpr(4) driver.
sys/conf/files: Add the mpr(4) driver.
sys/amd64/conf/GENERIC, sys/i386/conf/GENERIC, sys/mips/conf/OCTEON1, sys/sparc64/conf/GENERIC: Add the mpr(4) driver to all config files that currently have the mps(4) driver.
sys/ia64/conf/GENERIC: Add the mps(4) and mpr(4) drivers to the ia64 GENERIC config file.
sys/i386/conf/XEN: Exclude the mpr module from building here.
Submitted by: Steve McConnell <Stephen.McConnell@lsi.com> Tested by: Chris Reeves <chrisr@spectralogic.com> Sponsored by: LSI, Spectra Logic Relnotes: LSI 12Gb SAS driver mpr(4) added
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265237 | ken | 2014-05-02 14:36:20 -0600 (Fri, 02 May 2014) | 8 lines
Add the mpr(4) man page to the man4 Makefile.
This should have been included in r265236.
Submitted by: Steve McConnell <Stephen.McConnell@lsi.com> MFC after: 3 days Sponsored by: LSI, Spectra Logic
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265241 | brueffer | 2014-05-02 15:14:28 -0600 (Fri, 02 May 2014) | 2 lines
Use our standard SYNOPSIS wording; perform some cleanup while here.
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265261 | brueffer | 2014-05-03 05:15:28 -0600 (Sat, 03 May 2014) | 2 lines
Add a missing colon.
------------------------------------------------------------------------
Submitted by: Steve McConnell <Stephen.McConnell@lsi.com> Tested by: Chris Reeves <chrisr@spectralogic.com> Sponsored by: LSI, Spectra Logic Relnotes: LSI 12Gb SAS driver mpr(4) added
|
#
259051 |
|
06-Dec-2013 |
delphij |
MFC r258948:
Support Hyper-V on i386:
- Add 'hyperv' module into build; - Allow building Hyper-V support as part of the kernel; - Hook Hyper-V build into NOTES.
Approved by: re (rodrigc)
|
#
285809 |
|
23-Jul-2015 |
scottl |
Merge driver for PMC Sierra's range of SAS/SATA HBAs.
Submitted by: Achim Leubner <Achim.Leubner@pmcs.com> Approved by: re
|
#
284365 |
|
14-Jun-2015 |
bryanv |
MFC r273331, r273371, r275851:
- Add vxlan interface
- Use the size of the Ethernet address, not the entire header, when copying into forwarding entry.
- Prefix all the vxlan ifconfig commands so they are unique
|
#
284094 |
|
06-Jun-2015 |
ian |
MFC r278338, r278340, r278458, r278519:
Create a module to install the Raspberry Pi dtb files.
Pull in the rpi.dts -> rpi.dtb module (dtb/rpi) and have it install rpi.dtb in /boot/dtb by default.
Add a module to build the dtb files for all supported imx6 systems.
Remove imx6s-wandboard.dts, there is no such file.
|
#
284066 |
|
06-Jun-2015 |
ae |
MFC r274246: Overhaul if_gre(4).
Split it into two modules: if_gre(4) for GRE encapsulation and if_me(4) for minimal encapsulation within IP.
gre(4) changes: * convert to if_transmit; * rework locking: protect access to softc with rmlock, protect from concurrent ioctls with sx lock; * correct interface accounting for outgoing datagramms (count only payload size); * implement generic support for using IPv6 as delivery header; * make implementation conform to the RFC 2784 and partially to RFC 2890; * add support for GRE checksums - calculate for outgoing datagramms and check for inconming datagramms; * add support for sending sequence number in GRE header; * remove support of cached routes. This fixes problem, when gre(4) doesn't work at system startup. But this also removes support for having tunnels with the same addresses for inner and outer header. * deprecate support for various GREXXX ioctls, that doesn't used in FreeBSD. Use our standard ioctls for tunnels.
me(4): * implementation conform to RFC 2004; * use if_transmit; * use the same locking model as gre(4);
PR: 164475
MFC r274289 (by bz): gcc requires variables to be initialised in two places. One of them is correctly used only under the same conditional though.
For module builds properly check if the kernel supports INET or INET6, as otherwise various mips kernels without IPv6 support would fail to build.
MFC r274964: Add ip_gre.h to ObsoleteFiles.inc.
|
#
284052 |
|
06-Jun-2015 |
np |
MFC r276480, r276485, r276498, r277225, r277226, r277227, r277230, r277637, and r283149 (by emaste@).
r276485 is the real change here, the rest deal with the fallout of mp_ring's reliance on 64b atomics.
Use the incorrectly spelled 'eigth' from struct pkthdr in this branch instead of MFC'ing r261733, which would have renamed the field of a public structure in a -STABLE branch. ---
r276480: Temporarily unplug cxgbe(4) from !amd64 builds.
r276485: cxgbe(4): major tx rework.
a) Front load as much work as possible in if_transmit, before any driver lock or software queue has to get involved.
b) Replace buf_ring with a brand new mp_ring (multiproducer ring). This is specifically for the tx multiqueue model where one of the if_transmit producer threads becomes the consumer and other producers carry on as usual. mp_ring is implemented as standalone code and it should be possible to use it in any driver with tx multiqueue. It also has: - the ability to enqueue/dequeue multiple items. This might become significant if packet batching is ever implemented. - an abdication mechanism to allow a thread to give up writing tx descriptors and have another if_transmit thread take over. A thread that's writing tx descriptors can end up doing so for an unbounded time period if a) there are other if_transmit threads continuously feeding the sofware queue, and b) the chip keeps up with whatever the thread is throwing at it. - accurate statistics about interesting events even when the stats come at the expense of additional branches/conditional code.
The NIC txq lock is uncontested on the fast path at this point. I've left it there for synchronization with the control events (interface up/down, modload/unload).
c) Add support for "type 1" coalescing work request in the normal NIC tx path. This work request is optimized for frames with a single item in the DMA gather list. These are very common when forwarding packets. Note that netmap tx in cxgbe already uses these "type 1" work requests.
d) Do not request automatic cidx updates every 32 descriptors. Instead, request updates via bits in individual work requests (still every 32 descriptors approximately). Also, request an automatic final update when the queue idles after activity. This means NIC tx reclaim is still performed lazily but it will catch up quickly as soon as the queue idles. This seems to be the best middle ground and I'll probably do something similar for netmap tx as well.
e) Implement a faster tx path for WRQs (used by TOE tx and control queues, _not_ by the normal NIC tx). Allow work requests to be written directly to the hardware descriptor ring if room is available. I will convert t4_tom and iw_cxgbe modules to this faster style gradually.
r276498: cxgbe(4): remove buf_ring specific restriction on the txq size.
r277225: Make cxgbe(4) buildable with the gcc in base.
r277226: Allow cxgbe(4) to be built on i386. Driver attach will succeed only on a subset of i386 systems.
r277227: Plug cxgbe(4) back into !powerpc && !arm builds, instead of building it on amd64 only.
r277230: Build cxgbe(4) on powerpc64 too.
r277637: Make sure the compiler flag to get cxgbe(4) to compile with gcc is used only when gcc is being used. This is what r277225 should have been.
|
#
283668 |
|
28-May-2015 |
erj |
Fix build issue and incompatibilites introduced by r283620.
- Re-introduce "device ixgbe" option for kernel configs. This allows users to continue using existing kernel configurations, while still letting if_ix and if_ixv exist to allow ifconfig magic to work. Though the amd64 GENERIC config has "device ix" and "device ixv" instead of "device ixgbe".
This is achieved by making the if_ixgbe module a stub that depends on if_ix and if_ixv.
- Replace if_baudrate assignment with if_initbaudrate() call.
Thanks to jhb@ for the stub module suggestion and pointing out the if_baudrate error.
Approved by: jfv (mentor)
|
#
283620 |
|
27-May-2015 |
erj |
MFC ixgbe commits for 10.2:
- r280182 - Split the driver into independent pf/vf loadables - r280197 - Resolve build issues - r280204 - Fix multiple same-name devclasses - r280228 - Fix i386 LINT build issues / remove unused variable - r280252 - Fix building ixgbe with gcc - r280962 - Make changes to busdma code similar to r257541 - r281772 & r281773 - Remove unused variable - partial r282280 - stats counter update (ix-only) - r282289 - Add X550 support - r282290 - Add X550 makefile updates - r282293 - Add ixgbe_x550.c to conf/files - r282299 - Fix gcc compile (extraneous extern declaration)
Finally, add ix_txrx.c to conf/files because it's required for compile in stable/10.
Approved by: jfv (mentor)
|
#
282814 |
|
12-May-2015 |
avg |
followup to r282748: remove another instance of cyclic in sys/modules/Makefile
Those lines were not present in head and thus were not removed by the original commit and its merge.
|
#
282748 |
|
11-May-2015 |
avg |
MFC r275576: remove opensolaris cyclic code, replace with high-precision callouts
|
#
282199 |
|
28-Apr-2015 |
dumbbell |
drm: Update the device-independent code to match Linux 3.8.13
This update brings few features: o Support for the setmaster/dropmaster ioctls. For instance, they are used to run multiple X servers simultaneously. o Support for minor devices. The only user-visible change is a new entry in /dev/dri but it is useless at the moment. This is a first step to support render nodes [1].
The main benefit is to greatly reduce the diff with Linux (at the expense of an unreadable commit diff). Hopefully, next upgrades will be easier.
No updates were made to the drivers, beside adapting them to API changes.
[1] https://en.wikipedia.org/wiki/Direct_Rendering_Manager#Render_nodes
r280814 is merged at the same time to avoid a short window where RANDR might be broken:
drm: Import Linux commit 9bc3cd5673d84d29272fa7181a4dfca83cbb48c1
Author: Ville Syrjälä <ville.syrjala@linux.intel.com> Date: Fri May 31 12:17:08 2013 +0000
drm: Sort connector modes based on vrefresh
Keeping the modes sorted by vrefresh before the pixel clock makes the mode list somehow more pleasing to the eye.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
PR: 198936 (r280814) Tested by: Many people MFC of: r280183, r280187 (original commit by glebius), r280814 Relnotes: yes
|
#
278558 |
|
11-Feb-2015 |
ngie |
MFC r277728:
r277728:
Add MK_AUTOFS knob for building and installing autofs(4), et al
Sponsored by: EMC / Isilon Storage Division
|
#
278557 |
|
11-Feb-2015 |
ngie |
MFC r277727:
r277727:
Add MK_BHYVE knob for building and installing bhyve(4), et al
Sponsored by: EMC / Isilon Storage Division
|
#
278555 |
|
11-Feb-2015 |
ngie |
MFC r277675,r277726,r278070:
r277675:
Add MK_ISCSI knob for building the iscsi initiator, iscsi daemon, kernel modules, etc
Sponsored by: EMC / Isilon Storage Division
r277726:
Build sbin/iscontrol again if MK_ISCSI != no
Pointyhat to: me
r278070:
Remove duplicate MK_ISCSI block and sort the conditional blocks so this error won't crop up again in the future
Reported by: gjb
|
#
270919 |
|
01-Sep-2014 |
jfv |
MFC of 270755, 270772, 270773, 270775, 270799, 270806, 270807, 270820 Enable the build of the Intel XL710 drivers, and fixes for that build.
|
#
270892 |
|
31-Aug-2014 |
trasz |
MFC r270096:
Bring in the new automounter, similar to what's provided in most other UNIX systems, eg. MacOS X and Solaris. It uses Sun-compatible map format, has proper kernel support, and LDAP integration.
There are still a few outstanding problems; they will be fixed shortly.
Reviewed by: allanjude@, emaste@, kib@, wblock@ (earlier versions) Phabric: D523 Relnotes: yes Sponsored by: The FreeBSD Foundation
|
#
270061 |
|
16-Aug-2014 |
bz |
MFC r264601,264646,265766,267918,267919,267920:
Merge if_nf10bmac(4), a driver to support an NetFPGA-10G Embedded CPU Ethernet Core.
The current version operates on a simple PIO based interface connected to a NetFPGA-10G port.
To avoid confusion: this driver operates on a CPU running on the FPGA, e.g. BERI/mips, and is not suited for the PCI host interface.
Adjust the register layout to allow for 64bit registers in the future for nf10bmac(4). Also, add support for and enable RX interrupts.
Allow switching between 32bit and 64bit bus width data access at compile time by setting NF10BMAC_64BIT and using a REGWTYPE #define to set correct variable and return value widths.
Adjust comments to indicate the 32 or 64bit register widths.
Relnotes: yes Sponsored by: DARPA/AFRL
|
#
266272 |
|
16-May-2014 |
sbruno |
MFC r264269, r264282, r264280, r264291, r264276, r264314
Merge sson's binmiscctl and image activator features to stable/10
Submitted by: sson@freebsd.org
|
#
265999 |
|
13-May-2014 |
ian |
MFC r257334, r257336, r257337, r257338, r257341, r257342, r257343, r257370, r257368, r257416
Hints-only devices should return BUS_PROBE_NOWILDCARD from their probe methods.
|
#
265937 |
|
12-May-2014 |
ian |
Revert accidental commit that tagged along with an MFC commit.
|
#
265936 |
|
12-May-2014 |
ian |
MFC r259099: Fix a small error in calculating length of DELAY().
|
#
265922 |
|
12-May-2014 |
ambrisko |
MFC 265555
dd mrsas(4) driver from LSI official support of newer MegaRAID SAS cards. LSI has been maintaining this driver outside of the FreeBSD tree. It overlaps support of ThunderBolt and Invader cards that mfi(4) supports. By default mfi(4) will attach to cards. If the tunable: hw.mfi.mrsas_enable=1 is set then mfi(4) will not probe and attach to these newer cards and allow mrsas(4) to attach. So by default this driver will not effect a FreeBSD system unless mfi(4) is removed from the kernel or the tunable is enabled.
mrsas(4) attaches disks to the CAM layer so it depends on CAM and devices show up as /dev/daX. mfiutil(8) does not work with mrsas. The FreeBSD version of MegaCli and StorCli from LSI do work with mrsas. It appears that StorCli only works with mrsas. MegaCli appears to work with mfi(4) and mrsas(4).
It would be good to add mfiutil(4) support to mrsas, emulations modes, kernel logging, device aliases to ease the transition between mfi(4) and mrsas(4).
Style issues should be resolved by LSI when they get committers approved. The plan is get this driver in FreeBSD 9.3 to improve HW support.
Thanks to LSI for developing, testing and working with FreeBSD to make this driver co-exist in FreeBSD. This improves the overall support of MegaRAID SAS.
Submitted by: Kashyap Desai <Kashyap.Desai@lsi.com> Sponsored by: LSI
|
#
265388 |
|
05-May-2014 |
ken |
MFC the mpr(4) driver for LSI's 12Gb SAS cards.
This includes r265236, r265237, r265241 and r265261:
------------------------------------------------------------------------ r265236 | ken | 2014-05-02 14:25:09 -0600 (Fri, 02 May 2014) | 51 lines
Bring in the mpr(4) driver for LSI's MPT3 12Gb SAS controllers.
This is derived from the mps(4) driver, but it supports only the 12Gb IT and IR hardware including the SAS 3004, SAS 3008 and SAS 3108.
Some notes about this driver: o The 12Gb hardware can do "FastPath" I/O, and that capability is included in this driver.
o WarpDrive functionality has been removed, since it isn't supported in the 12Gb driver interface.
o The Scatter/Gather list handling code is significantly different between the 6Gb and 12Gb hardware. The 12Gb boards support IEEE Scatter/Gather lists.
Thanks to LSI for developing and testing this driver for FreeBSD.
share/man/man4/mpr.4: mpr(4) man page.
sys/dev/mpr/*: mpr(4) driver files.
sys/modules/Makefile, sys/modules/mpr/Makefile: Add a module Makefile for the mpr(4) driver.
sys/conf/files: Add the mpr(4) driver.
sys/amd64/conf/GENERIC, sys/i386/conf/GENERIC, sys/mips/conf/OCTEON1, sys/sparc64/conf/GENERIC: Add the mpr(4) driver to all config files that currently have the mps(4) driver.
sys/ia64/conf/GENERIC: Add the mps(4) and mpr(4) drivers to the ia64 GENERIC config file.
sys/i386/conf/XEN: Exclude the mpr module from building here.
Submitted by: Steve McConnell <Stephen.McConnell@lsi.com> Tested by: Chris Reeves <chrisr@spectralogic.com> Sponsored by: LSI, Spectra Logic Relnotes: LSI 12Gb SAS driver mpr(4) added
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265237 | ken | 2014-05-02 14:36:20 -0600 (Fri, 02 May 2014) | 8 lines
Add the mpr(4) man page to the man4 Makefile.
This should have been included in r265236.
Submitted by: Steve McConnell <Stephen.McConnell@lsi.com> MFC after: 3 days Sponsored by: LSI, Spectra Logic
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265241 | brueffer | 2014-05-02 15:14:28 -0600 (Fri, 02 May 2014) | 2 lines
Use our standard SYNOPSIS wording; perform some cleanup while here.
------------------------------------------------------------------------ ------------------------------------------------------------------------ r265261 | brueffer | 2014-05-03 05:15:28 -0600 (Sat, 03 May 2014) | 2 lines
Add a missing colon.
------------------------------------------------------------------------
Submitted by: Steve McConnell <Stephen.McConnell@lsi.com> Tested by: Chris Reeves <chrisr@spectralogic.com> Sponsored by: LSI, Spectra Logic Relnotes: LSI 12Gb SAS driver mpr(4) added
|
#
259051 |
|
06-Dec-2013 |
delphij |
MFC r258948:
Support Hyper-V on i386:
- Add 'hyperv' module into build; - Allow building Hyper-V support as part of the kernel; - Hook Hyper-V build into NOTES.
Approved by: re (rodrigc)
|