<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/modules, branch main</title>
<subtitle>FreeBSD source tree</subtitle>
<id>http://cgit.freebsd.org/src/atom?h=main</id>
<link rel='self' href='http://cgit.freebsd.org/src/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<updated>2026-08-09T16:57:07Z</updated>
<entry>
<title>fwcam: convert to video(4) framework</title>
<updated>2026-08-09T16:57:07Z</updated>
<author>
<name>Abdelkader Boudih</name>
<email>freebsd@seuros.com</email>
</author>
<published>2026-08-09T16:57:05Z</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=f5dc2263ab1be8a35a7e27e82103f9ccd41ae584'/>
<id>urn:sha1:f5dc2263ab1be8a35a7e27e82103f9ccd41ae584</id>
<content type='text'>
Replaced the monolithic cdevsw implementation with the video(4)
framework.

Reviewed by:	adrian
Differential Revision:	https://reviews.freebsd.org/D58369
</content>
</entry>
<entry>
<title>uvideo: convert to video(4) framework</title>
<updated>2026-08-09T16:54:00Z</updated>
<author>
<name>Abdelkader Boudih</name>
<email>freebsd@seuros.com</email>
</author>
<published>2026-08-09T16:53:58Z</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=8cdcf4b27c7b9e0266d3d37c83566016d71582b4'/>
<id>urn:sha1:8cdcf4b27c7b9e0266d3d37c83566016d71582b4</id>
<content type='text'>
Replaced the monolithic cdevsw implementation with the video(4)
framework.

Reviewed by:	adrian
Differential Revision:	https://reviews.freebsd.org/D58368
</content>
</entry>
<entry>
<title>video: add generic video(4) capture framework</title>
<updated>2026-08-09T16:48:22Z</updated>
<author>
<name>Abdelkader Boudih</name>
<email>freebsd@seuros.com</email>
</author>
<published>2026-08-09T16:48:13Z</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=9c9428825f4c55e3cb37412c661bb9d385db4c68'/>
<id>urn:sha1:9c9428825f4c55e3cb37412c661bb9d385db4c68</id>
<content type='text'>
Add a new video(4) framework that provides /dev/videoN, buffer
management, mmap lifetime, and V4L2 ioctl dispatch for video capture
drivers. Hardware drivers implement struct video_hw_ops callbacks
and use video_buf_acquire/write/done to deliver frames.

Reviewed by:	adrian
Differential Revision:	https://reviews.freebsd.org/D58367
</content>
</entry>
<entry>
<title>gpio: add Intel Tiger Lake-H GPIO driver</title>
<updated>2026-08-06T06:42:08Z</updated>
<author>
<name>YannickV</name>
<email>Y.Vossen@beckhoff.com</email>
</author>
<published>2026-04-29T13:03:23Z</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=c2bd655dc3f9c09e3063321e160cb3d367ef2c79'/>
<id>urn:sha1:c2bd655dc3f9c09e3063321e160cb3d367ef2c79</id>
<content type='text'>
Add a GPIO driver for the Intel Tiger Lake-H platform based on the generic
intelgpio framework. The driver defines five GPIO communities with pad groups
GPP_A through GPP_K, vGPIO and JTAG, and matches ACPI hardware ID INT34C6.
The kernel module build infrastructure and the wiring into files.x86 are
included.

Reviewed by:		vexeduxr
MFC after:		1 week
Sponsored by:		Beckhoff Automation GmbH &amp; Co. KG
Pull Request:		https://github.com/freebsd/freebsd-src/pull/2205
</content>
</entry>
<entry>
<title>gpio: add Intel Alder Lake-N GPIO driver</title>
<updated>2026-08-06T06:41:54Z</updated>
<author>
<name>YannickV</name>
<email>Y.Vossen@beckhoff.com</email>
</author>
<published>2026-04-29T13:02:08Z</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=8c7a3ccf54f93330830ef9ffd20e71d5834936ed'/>
<id>urn:sha1:8c7a3ccf54f93330830ef9ffd20e71d5834936ed</id>
<content type='text'>
Add a GPIO driver for the Intel Alder Lake-N platform based on the generic
intelgpio framework. The driver provides pad group definitions for four GPIO
communities covering groups GPP_A through GPP_T, vGPIO and HVCMOS, and matches
ACPI hardware IDs INTC1056, INTC1057 and INTC1085. The kernel module build
infrastructure and the wiring into files.x86 are included.

Reviewed by:		vexeduxr
MFC after:		1 week
Sponsored by:		Beckhoff Automation GmbH &amp; Co. KG
Pull Request:		https://github.com/freebsd/freebsd-src/pull/2205
</content>
</entry>
<entry>
<title>igbv: Isolate VF policy and validate its registers</title>
<updated>2026-07-30T04:52:39Z</updated>
<author>
<name>Kevin Bowling</name>
<email>kbowling@FreeBSD.org</email>
</author>
<published>2026-07-30T04:05:47Z</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=316f6f2f7fa613d13316ea966a34ee5285b987ec'/>
<id>urn:sha1:316f6f2f7fa613d13316ea966a34ee5285b987ec</id>
<content type='text'>
Give igb virtual functions a separate ifdi method table and move
VF-specific attach, reset, queue, interrupt, and diagnostic policy to
if_igbv.c. Keep shared descriptor-ring mechanisms in if_em.c.

Derive VF identity from IFLIB_IS_VF and assert that hardware
identification agrees. Under INVARIANTS, validate normal VF CSR
accesses against the sparse 82576 and I350 VF register maps.

Stop shared setup from accessing PF-only controls. Require MSI-X and
defer VF sysctls until attach succeeds so failed attachment cannot
leave handlers pointing at freed driver state.

Advertise only VF capabilities, run adaptive moderation without the
PF receive-buffer guard, enable SRRCTL.DROP_EN, and provide a VF-safe
diagnostic register view.

The moved implementation is the existing FreeBSD code. Register model
was cross-checked against the Intel datasheets and other Intel drivers.

Sponsored by:	BBOX.io
</content>
</entry>
<entry>
<title>igb: Add SR-IOV PF support for 82576 and I350</title>
<updated>2026-07-30T03:06:46Z</updated>
<author>
<name>Kevin Bowling</name>
<email>kbowling@FreeBSD.org</email>
</author>
<published>2026-07-28T21:56:33Z</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a2ed165f0049595f2e52ec545095240e362f27c7'/>
<id>urn:sha1:a2ed165f0049595f2e52ec545095240e362f27c7</id>
<content type='text'>
Add the PCI IOV schema and PF control plane for up to seven VFs with
one hardware queue per pool. Implement VF mailbox handling, MAC and
VLAN assignment, multicast filtering, promiscuity policy,
anti-spoofing, malicious-driver recovery, reset replay, and queue
lifecycle management.

The basic SR-IOV and VMDq PF implementation follows DPDK Intel e1000
code, including PF pool selection, one queue per pool, mailbox
dispatch, and VF enablement. Intel FreeBSD igb-2.5.31 supplies the
older driver baseline. Linux igb and the Intel SDMs clear up lifecycle,
isolation, reset, and family-specific details absent from DPDK.

Enabling IOV requires the PF to attach with one TX and RX queue.
Systems whose defaults select RSS queues must set the documented iflib
queue override tunables before attach.

Only 82576 and I350 support SR-IOV in silicon.  The series has been
extensively tested on I350, including thowing boundaries at the PCI BAR
that shipping drivers will never.  Still, think carefully before
reaching for this in critical environments.

Relnotes:	yes
Sponsored by:	BBOX.io
</content>
</entry>
<entry>
<title>igbv: Split 82576 and I350 VF registration off igb</title>
<updated>2026-07-30T01:47:10Z</updated>
<author>
<name>Kevin Bowling</name>
<email>kbowling@FreeBSD.org</email>
</author>
<published>2026-07-29T00:03:08Z</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=e6b9ce25ec062b45038a37c88d193fa438f5ef58'/>
<id>urn:sha1:e6b9ce25ec062b45038a37c88d193fa438f5ef58</id>
<content type='text'>
Register the 82576 and I350 VF PCI IDs under a separate igbv driver
while continuing to share the igb datapath implementation.

Follow the ixv driver split and give the VF context IFLIB_IS_VF so
iflib does not apply the PF SR-IOV detach guard to a child VF. Program
VTIVAR_MISC in the VF low byte so mailbox and reset notifications reach
the VF admin vector.

The split will become increasingly obvious as bug fixes land, trying to
bias everything with if (sc-&gt;vf_ifp) everywhere is error prone in two
directions.

This breaks existing naming/configurations and cannot be MFCed as-is.
I have no plans of adapting it to prior branches at the moment but it
may be possible.

Relnotes:	yes
Sponsored by:	BBOX.io
</content>
</entry>
<entry>
<title>coreboot: Add coreboot firmware table driver</title>
<updated>2026-07-29T19:12:41Z</updated>
<author>
<name>Abdelkader Boudih</name>
<email>freebsd@seuros.com</email>
</author>
<published>2026-07-29T19:11:55Z</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=5f74217c05a99f38a31a6e4950220964595d4ac8'/>
<id>urn:sha1:5f74217c05a99f38a31a6e4950220964595d4ac8</id>
<content type='text'>
Nexus-attached driver that discovers and parses coreboot's LBIO tables
from physical memory. Exposes firmware metadata (version, build info,
mainboard, serial config, TSC frequency, CBMEM entries) via sysctl
hw.coreboot.*, the firmware console ring buffer via /dev/coreboot_console,
and structured CBMEM entry access via /dev/cbmem ioctl interface.

Tested on:
- Qotom Q535G6 (Kabylake)
- Intel NUC D54250WYK (Haswell)
- Intel NUC D33217GKE (Ivy Bridge)
- Dell 3100 2-in-1 (Gabbiter)
- Dell 3100 (Fleex)
- Lenovo IdeaPad 320s
- Lenovo ThinkPad T480
- HP Chromebook 11 G4
- HP Chromebook 11 G5
- HP Chromebook 11 G6 EE
- HP Chromebook 14 G4
- HP Chromebook 14 G5
- HP Chromebook x360 11 G1 EE
- HP Chromebook x360 11 G2 EE
- HP Chromebook x360 14 G1
- Acer C720
- Acer Chromebook 11
- Lenovo N22

Reviewed by:	ngie, kib, adrian
Differential Revision:	https://reviews.freebsd.org/D55649
</content>
</entry>
<entry>
<title>hwpmc: add RAPL energy-counter class (AMD + Intel)</title>
<updated>2026-07-28T14:54:21Z</updated>
<author>
<name>Andre Silva</name>
<email>andasilv@amd.com</email>
</author>
<published>2026-07-28T14:50:54Z</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a99d04f39dab0eac88eb4f5af425aceaf9238207'/>
<id>urn:sha1:a99d04f39dab0eac88eb4f5af425aceaf9238207</id>
<content type='text'>
Add hwpmc_rapl.c/.h implementing PMC_CLASS_RAPL, a read-only
system-scope class modeled on TSC and wired into x86 AMD and Intel MD
init. A per-vendor MSR table covers AMD/Hygon and Intel; energy is
reported in microjoules, with the Intel server 2^-16 J DRAM unit
handled and 32-bit wraps recovered into a 64-bit accumulator.

The overflow guard follows the PMC lifetime: armed on the first
allocated PMC, callout_drain()d on the last release, and each tick only
rendezvouses CPUs holding one. Per-CPU spin locks guard the accumulator
against torn reads on i386. PMC_CAP_DOMWIDE lets pmcstat(8) allocate
one counter per NUMA domain instead of per CPU.

Reviewed by:	mhorne, Ali Mashtizadeh &lt;ali@mashtizadeh.com&gt;
Sponsored by:	AMD
Differential Revision:	https://reviews.freebsd.org/D58028
</content>
</entry>
</feed>
