From nobody Wed Jan 21 19:53:06 2026 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxFH65Brhz6Pf2s for ; Wed, 21 Jan 2026 19:53:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxFH61gxPz3KLh for ; Wed, 21 Jan 2026 19:53:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769025186; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CiaQTKIe7jiFma1YTB1tT/ejF92cUyiUWTfv5POvSxg=; b=whziNduUChr55lV5T16enKMZl9sLqenxOQgkUR6WHj/VaqM67xnFpN/sVEb4+WyIFqkwhZ X1BATblBXaohaMtJbu9G814z6YaLh15x/D00r5oMmXN4A/ZpaX3qTFr9o+wTwetwaAbGSd MXwBSJkw8yvB3lnINIlIADxT6bINM2BE8QNjA3daW5c7QXVQRNODvfltWVYARIwXDCZND3 BRNhY7C+CoGfxDezWIOEOnTzhyMvhEGX8yQz9y75X5BzSGZ18VX/o/SpLcC4KTJtwri9rP /KrGn+TIp1VLDT+f6OBmrKbqIJUqia1yInJoCHuetQjhCjLStkxCZxE7egfRKw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769025186; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CiaQTKIe7jiFma1YTB1tT/ejF92cUyiUWTfv5POvSxg=; b=CXPCxVJ4RU8HhfQHQYkYcfvl/uq0X48kKo+CUeNxcKIBvOA5Oc9MtfDzF5ar12/Lx2taHo iGjOIBfPV44aWWwWzCWezrx9ttaep9WCmrgOvPlc28Y0uYTFMv6zpMgX9ViyYEyKSbjmFQ 4AHnGOSC9YCkSxRDPncc/X1/ueKWwF4yDxUSTrKKobGi6zXdlU3OSVTMpO1wjcoxoI+NsG zNvX77ciaWT0ieKdlEbfFSPibA9opiJ21F9XQYK3vJy5b3v+6BNi59gr5OA1SGyz6XtzGT xJ5DC9npZQtX8tk9BPTHlTNjJDS/wBzwkl123VruasX8W2LlU3P/TTCjV9/9yQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769025186; a=rsa-sha256; cv=none; b=rSQNFeFGeCR2kFzPxMjseJk/VbVR7lLJqN994kq13K12ufBIcJp/1h3VWc8CAmkUTtYupH 9l9rDvvIkl7saY3m2B3n2Y/yseVOAtcusqrL9Dv0MLHuj44q5rA+z5dYok4uwUrn/ctODL hfYtCc6f7m91FqjkQU4qkDJjLkt3vPhDIyRmceOIbF4knGJaU9do0/bRN/OSW0H+gGjh8Z 5VZO8J9PZo2vX3tWp7BPYG3YlkPYktImeo6frg56iSuMgRKsZidrIyc42bD3Q5rajgDhfq bT95IEao/NLroAHo+LYzbmWnATYUWvG4qvpyzirAtvuDJew5AUzYOWOZ/cNt1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dxFH61Fpvz11X0 for ; Wed, 21 Jan 2026 19:53:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id bec1 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 19:53:06 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 97f7fb06b9e1 - stable/15 - dwc: add transmit checksum offload for IPv6 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 97f7fb06b9e1730c8c6183f7da55f6764e6dc54c Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 19:53:06 +0000 Message-Id: <69712ea2.bec1.219ec02b@gitrepo.freebsd.org> The branch stable/15 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=97f7fb06b9e1730c8c6183f7da55f6764e6dc54c commit 97f7fb06b9e1730c8c6183f7da55f6764e6dc54c Author: Michael Tuexen AuthorDate: 2026-01-17 20:01:54 +0000 Commit: Michael Tuexen CommitDate: 2026-01-21 19:52:46 +0000 dwc: add transmit checksum offload for IPv6 This patch adds support for transmit checksum offload for TCP/IPv6 and UDP/IPv6. Reviewed by: Timo Völker Differential Revision: https://reviews.freebsd.org/D54754 (cherry picked from commit aca67c37a5215448828a2974a2ff44e75e9159bc) --- sys/dev/dwc/dwc1000_dma.c | 2 +- sys/dev/dwc/if_dwc.c | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/sys/dev/dwc/dwc1000_dma.c b/sys/dev/dwc/dwc1000_dma.c index 8cc145216c2d..a2a6fbc84e58 100644 --- a/sys/dev/dwc/dwc1000_dma.c +++ b/sys/dev/dwc/dwc1000_dma.c @@ -276,7 +276,7 @@ dma1000_setup_txbuf(struct dwc_softc *sc, int idx, struct mbuf **mp) m = *mp; - if ((m->m_pkthdr.csum_flags & CSUM_DELAY_DATA) != 0) + if ((m->m_pkthdr.csum_flags & (CSUM_DELAY_DATA | CSUM_DELAY_DATA_IPV6)) != 0) flags = sc->dma_ext_desc ? ETDESC0_CIC_SEG : NTDESC1_CIC_SEG; else if ((m->m_pkthdr.csum_flags & CSUM_IP) != 0) flags = sc->dma_ext_desc ? ETDESC0_CIC_HDR : NTDESC1_CIC_HDR; diff --git a/sys/dev/dwc/if_dwc.c b/sys/dev/dwc/if_dwc.c index 458ee01536ef..ac6e440cf95c 100644 --- a/sys/dev/dwc/if_dwc.c +++ b/sys/dev/dwc/if_dwc.c @@ -271,6 +271,12 @@ dwc_ioctl(if_t ifp, u_long cmd, caddr_t data) if_sethwassistbits(ifp, CSUM_IP | CSUM_DELAY_DATA, 0); else if_sethwassistbits(ifp, 0, CSUM_IP | CSUM_DELAY_DATA); + if (mask & IFCAP_TXCSUM_IPV6) + if_togglecapenable(ifp, IFCAP_TXCSUM_IPV6); + if ((if_getcapenable(ifp) & IFCAP_TXCSUM_IPV6) != 0) + if_sethwassistbits(ifp, CSUM_DELAY_DATA_IPV6, 0); + else + if_sethwassistbits(ifp, 0, CSUM_DELAY_DATA_IPV6); if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { DWC_LOCK(sc); @@ -607,8 +613,8 @@ dwc_attach(device_t dev) if_setinitfn(ifp, dwc_init); if_setsendqlen(ifp, TX_MAP_COUNT - 1); if_setsendqready(sc->ifp); - if_sethwassist(sc->ifp, CSUM_IP | CSUM_DELAY_DATA); - if_setcapabilities(sc->ifp, IFCAP_VLAN_MTU | IFCAP_HWCSUM); + if_sethwassist(sc->ifp, CSUM_IP | CSUM_DELAY_DATA | CSUM_DELAY_DATA_IPV6); + if_setcapabilities(sc->ifp, IFCAP_VLAN_MTU | IFCAP_HWCSUM | IFCAP_TXCSUM_IPV6); if_setcapenable(sc->ifp, if_getcapabilities(sc->ifp)); /* Attach the mii driver. */