git: d5aa8022da56 - main - ixl: Route suspend and resume through iflib

From: Kevin Bowling <kbowling_at_FreeBSD.org>
Date: Thu, 03 Sep 2026 03:37:51 UTC
The branch main has been updated by kbowling:

URL: https://cgit.FreeBSD.org/src/commit/?id=d5aa8022da56c5188e9f2c7068d95009ff2019be

commit d5aa8022da56c5188e9f2c7068d95009ff2019be
Author:     Kevin Bowling <kbowling@FreeBSD.org>
AuthorDate: 2026-09-03 03:32:14 +0000
Commit:     Kevin Bowling <kbowling@FreeBSD.org>
CommitDate: 2026-09-03 03:37:04 +0000

    ixl: Route suspend and resume through iflib
    
    Register the iflib device suspend and resume methods.  Remove the
    direct initialization from the driver resume callback because
    iflib_device_resume() performs the datapath restart after the callback
    returns.
    
    MFC after:      2 weeks
    Sponsored by:   BBOX.io
---
 sys/dev/ixl/if_ixl.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/sys/dev/ixl/if_ixl.c b/sys/dev/ixl/if_ixl.c
index 886a4e52303c..2bddcc605869 100644
--- a/sys/dev/ixl/if_ixl.c
+++ b/sys/dev/ixl/if_ixl.c
@@ -144,6 +144,8 @@ static device_method_t ixl_methods[] = {
 	DEVMETHOD(device_attach, iflib_device_attach),
 	DEVMETHOD(device_detach, iflib_device_detach),
 	DEVMETHOD(device_shutdown, iflib_device_shutdown),
+	DEVMETHOD(device_suspend, iflib_device_suspend),
+	DEVMETHOD(device_resume, iflib_device_resume),
 #ifdef PCI_IOV
 	DEVMETHOD(pci_iov_init, iflib_device_iov_init),
 	DEVMETHOD(pci_iov_uninit, iflib_device_iov_uninit),
@@ -940,16 +942,10 @@ ixl_if_suspend(if_ctx_t ctx)
 static int
 ixl_if_resume(if_ctx_t ctx)
 {
-	if_t ifp = iflib_get_ifp(ctx);
-
 	INIT_DEBUGOUT("ixl_if_resume: begin");
 
 	/* Read & clear wake-up registers */
 
-	/* Required after D3->D0 transition */
-	if (if_getflags(ifp) & IFF_UP)
-		ixl_if_init(ctx);
-
 	return (0);
 }