From nobody Wed Feb 11 05:04:54 2026 Received: from mail-ed1-f54.google.com (mail-ed1-f54.google.com [209.85.208.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0939F33C188 for ; Wed, 17 Dec 2025 11:09:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765969787; cv=none; b=QS0yeLYMj5hbjfQ0b694jxVPrjS2LhZdgAHT4nIwvPTg6gsE/4J4XOjQQPSveWWOpH5wB8GyT/2RYUwwWdHcx4WKGNQiWl6qR2XuMZ5C9JKq5Rz2ZXWM8EwSHhoEx3+bjDyF8BaZjpHbkms9zlsWP2H2UuFyoz4iC4MX8DHyGTU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765969787; c=relaxed/simple; bh=xWvN8DVqDcWBo/v4eE8MagMMQU8shW2qXTVYsch0jko=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=KxFW627U23RqOMyfcB/RZrKcwQtgKASf3WM/KnwGWHTz3QbXW2LbBggW/xXfNCqwYqkw8LzTJDacranu7KwXpzxPUUFIhuzmjJGqOvkQ/lWppeIGqZVviMRy3XOEILUFnY8Kfo2cp9ZWTl2b7Swu9rwokTwQd+Lpv+ACbsZLUXQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com; spf=pass smtp.mailfrom=baylibre.com; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b=FJ46O2+P; arc=none smtp.client-ip=209.85.208.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=baylibre.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b="FJ46O2+P" Received: by mail-ed1-f54.google.com with SMTP id 4fb4d7f45d1cf-6492e7925d2so6678186a12.3 for ; Wed, 17 Dec 2025 03:09:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1765969782; x=1766574582; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=SFxo7q8Upg9sDha34TIZTJlyln1hXfyfUaUuvCwVFgI=; b=FJ46O2+PUpl1Pf1OePIA8SU7wqH9JmlPolOZJ2NoZHmhExC9+9M+3oc/QSmaWBMHHe LPEWkRyB56jUdyXRHzAr95W2fRMMK4BRe+bqdjMh2eULAwYKXEshdqCfBYUkHjo/StXM UDM0SMmEO2+ghldW0xBUZaROYO9PP+uuMUOmknQHkh7SykP8DkI64b0/QFDgbV8UEl1g NKL9fWvBrhCLSOTDjBr5SJ6ZXM64UQFBvwTlweoB8IjEVAb2WKmB9VHJRpKE1XflrEiv i85nRAXlkdJb7M1N0kOSXFgWLkGljS/VU2BGO4oXmHbro6w3kfWvpPAhTCwQthxaCbE6 rvtg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765969782; x=1766574582; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=SFxo7q8Upg9sDha34TIZTJlyln1hXfyfUaUuvCwVFgI=; b=fNTm1USaBZxPLGrQsNyEiV52WzuB+uG43FnfSmZzDsu3SKn8sFpuxUjpWtplYD7gQR UK8fhaqvvLsAbqnmFBxpLo2sRPVLLom5VJaRUQjpmHrEVBOY7+B9wte5H7tbYkykXKMp wTueZ9DAQVwmH3WhSoQTHtZVvUL6TF1ls9jqs1xnRpslz3eBcOAIvhAk9l7B3M0DiwCL sHhj8qbVKqvIz6qPXKqVMmshUEA7rIg8bEnoxC4sf0lYwKnPy79HwgtDWlnHp5uojlLh ydERkToSsIdelYb9xNqmSvi6ZX8Tm+zhduIOfnMfZI/FXE+G4ZQG+JVOpySiK49mGLJW RhUQ== X-Forwarded-Encrypted: i=1; AJvYcCUIXzhyz885gm5CArAFKiiWbdIHl/WKgF59zYhIjDQsUxC96242Vi46Ww1KH+SJSixXgNQtZ/TlCJ15T9A=@vger.kernel.org X-Gm-Message-State: AOJu0YzAqmhPjKwgD+2AkcHvZrwp+fSPqISwJmLqDkwvPUeRLEoEHK9L U7flEooo61sWBUIJq7DKlyQlHGn9Im8OtCw/ehCzhUBWKuBcyoAdgpNPGO9/b7ga2oY= X-Gm-Gg: AY/fxX6kZBr1AE3dcN+P0aHj7Z3tslG5eWY5NLrOfBNMo3no8EI1xUJ14nsdGmc6/5z tfA6cY9+8TzUAuS5PfaA6oHlEcLnrRI6CaUuZzYSyyH4HvAxFzTQOeMQp4KArbQ05ay6qWwio4+ rzwYkV2jYZK+8TTRGzCshkH+bHNvTYHHGytR6OkS5gJsfWjijXnmSagWIOmnneUiehQXWjRItKh Ikyw5OLIESSIO5BfsQVNcgQJl/coxHSv/zrmEM47UV9lstrcdSz20Z8rnNsK7KHHY7C296MDGHx Y9+h78Rq0G/1R7Ww65SicS1otabvt2rL6AvkWHX/RzgFbnq4c+zVdHkW3BQcbtXezisV1o+AJjn trTguZgiGK4P6yItUSVQN3ExCGR8Q6XXwJS/i6T9Zqko715icKj5tRYhwcHJmqjaKoqRYw9ftAJ 4tA/vi/YPMci8D3rMptGZM+Rv6Vgw= X-Google-Smtp-Source: AGHT+IF5iq7R0NeDYU0B0g78afNST/PVuQQcOsPbPhKkJsVqaTqu+qAJudf/rYk8PgPcpCjGsUxSiw== X-Received: by 2002:a05:6402:4311:b0:637:f07d:e80f with SMTP id 4fb4d7f45d1cf-6499b041413mr17015368a12.0.1765969782271; Wed, 17 Dec 2025 03:09:42 -0800 (PST) Received: from localhost ([2a02:8071:b783:6940:1d24:d58d:2b65:c291]) by smtp.gmail.com with UTF8SMTPSA id 4fb4d7f45d1cf-64b3f56b3e4sm2343875a12.28.2025.12.17.03.09.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 17 Dec 2025 03:09:41 -0800 (PST) From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Ulf Hansson Cc: linux-mmc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v1 1/4] sdio: Provide a bustype shutdown function Date: Wed, 17 Dec 2025 12:09:23 +0100 Message-ID: <397f45c2818f6632151f92b70e547262f373c3b6.1765968841.git.ukleinek@kernel.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=2714; i=u.kleine-koenig@baylibre.com; h=from:subject:message-id; bh=xWvN8DVqDcWBo/v4eE8MagMMQU8shW2qXTVYsch0jko=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBpQo9l8isJBrlUSpFk4tQ0feWeQ7zFVLKRysli4 R9Ml9XWx2mJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCaUKPZQAKCRCPgPtYfRL+ TnerB/9g1J2vhIOAmHJHDhB6LU86vr01CcpgtvQPD/axm5i5BKeBqXK9PIVWLgQQrQ5qGmzZDw+ sG6by5hal3OT837Bkz1/HKKlCwd+dfBQHtr6tGK6ylR8iL/odnQ3Mv3rIjMLzrGMVRVH9la95ra T1mXPXWls00Ho0fTXyAyBOgA1IkSdk2C9TN+m4f9p7JvbMjpA2U8yFS9x8mrteEPCY1t9op4xJ+ Kh5a5HsnFDdFIv+7EbSsUDL7vk8lSR9RUpaY+WJmhncbe/uNmLDb4G5Na/JRExU4sCQfcXrV/oJ CxRqpa0952m7NZSFhPk0yEQgt6VndtKsB3Tgm7Ml/LXPq86T X-Developer-Key: i=u.kleine-koenig@baylibre.com; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable To prepare sdio drivers to migrate away from struct device_driver::shutdown (and then eventually remove that callback) create a serdev driver shutdown callback and migration code to keep the existing behaviour. Note this introduces a warning for each driver that isn't converted yet to that callback at register time. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/mmc/core/sdio_bus.c | 25 +++++++++++++++++++++++++ include/linux/mmc/sdio_func.h | 1 + 2 files changed, 26 insertions(+) diff --git a/drivers/mmc/core/sdio_bus.c b/drivers/mmc/core/sdio_bus.c index 10799772494a..6e5bdc2f0cc8 100644 --- a/drivers/mmc/core/sdio_bus.c +++ b/drivers/mmc/core/sdio_bus.c @@ -232,6 +232,15 @@ static void sdio_bus_remove(struct device *dev) pm_runtime_put_sync(dev); } =20 +static void sdio_bus_shutdown(struct device *dev) +{ + struct sdio_driver *drv =3D to_sdio_driver(dev->driver); + struct sdio_func *func =3D dev_to_sdio_func(dev); + + if (dev->driver && drv->shutdown) + drv->shutdown(func); +} + static const struct dev_pm_ops sdio_bus_pm_ops =3D { SET_SYSTEM_SLEEP_PM_OPS(pm_generic_suspend, pm_generic_resume) SET_RUNTIME_PM_OPS( @@ -248,6 +257,7 @@ static const struct bus_type sdio_bus_type =3D { .uevent =3D sdio_bus_uevent, .probe =3D sdio_bus_probe, .remove =3D sdio_bus_remove, + .shutdown =3D sdio_bus_shutdown, .pm =3D &sdio_bus_pm_ops, }; =20 @@ -261,6 +271,14 @@ void sdio_unregister_bus(void) bus_unregister(&sdio_bus_type); } =20 +static void sdio_legacy_shutdown(struct sdio_func *func) +{ + struct device *dev =3D &func->dev; + struct device_driver *driver =3D dev->driver; + + driver->shutdown(dev); +} + /** * __sdio_register_driver - register a function driver * @drv: SDIO function driver @@ -272,6 +290,13 @@ int __sdio_register_driver(struct sdio_driver *drv, st= ruct module *owner) drv->drv.bus =3D &sdio_bus_type; drv->drv.owner =3D owner; =20 + /* + * This driver needs updating. Note that driver_register() warns about + * this, so we're not adding another warning here. + */ + if (!drv->shutdown && drv->drv.shutdown) + drv->shutdown =3D sdio_legacy_shutdown; + return driver_register(&drv->drv); } EXPORT_SYMBOL_GPL(__sdio_register_driver); diff --git a/include/linux/mmc/sdio_func.h b/include/linux/mmc/sdio_func.h index fed1f5f4a8d3..4534bf462aac 100644 --- a/include/linux/mmc/sdio_func.h +++ b/include/linux/mmc/sdio_func.h @@ -78,6 +78,7 @@ struct sdio_driver { =20 int (*probe)(struct sdio_func *, const struct sdio_device_id *); void (*remove)(struct sdio_func *); + void (*shutdown)(struct sdio_func *); =20 struct device_driver drv; }; --=20 2.47.3 From nobody Wed Feb 11 05:04:54 2026 Received: from mail-ed1-f49.google.com (mail-ed1-f49.google.com [209.85.208.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 95300343D84 for ; Wed, 17 Dec 2025 11:09:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765969789; cv=none; b=oG/Gh8dP0GHghSLQxf+YlHGfNKEuNdtlyapoJ6OSxm9ZzuNUmXTQ4n7iWHQ4pxAScW3VphHuEz9HwpCBod3tTAiQO0k45OlfLwV5Dzff/BvjrWv+E0zo7OsnzyONp5AGLrpBAyK7lF2agBhZVoRivaVJExUYHGe7X+uD6bMwC8w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765969789; c=relaxed/simple; bh=dkyXLuLg+7eYiSQma7cNLg4NKd9rhkvKdGkZMgOE4QY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=eWui3USpJ+zWu9Th/K6jrgKsKJe0l6acB2DpwzeZvcLc+kwDU2eJlQRU0wI1YTYHz1t4QgoqP91hMEx8Vdzal6wSbD0B8jdeO19PPDMG8OfvqUMekoxs3+CS4Ua1XJ0LOW4jrh5oQFAhkOHlu01C+E5D3bn2yBLk3CDhLBcbPUo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com; spf=pass smtp.mailfrom=baylibre.com; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b=zhYbuAzs; arc=none smtp.client-ip=209.85.208.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=baylibre.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b="zhYbuAzs" Received: by mail-ed1-f49.google.com with SMTP id 4fb4d7f45d1cf-647a3bca834so8406990a12.2 for ; Wed, 17 Dec 2025 03:09:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1765969784; x=1766574584; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=QVXfFEnyomZ7n1+faa+96lpi1G7Z02nuAcgJTrKE1/w=; b=zhYbuAzs8SLIplAIzXqbO80XdbI7uy37F61fvSV158Hz1N7WuU3ldMFFLjpFl+Rpmc jHf2V90JExRXfgc/xK561V/76sin0QVkQ9iMlVKkThl60scEC6sgkyx7YEoTEwjolBwo tl2VouMR6+6y+akf4SO7MdbE98VEG7akylLXOw3WLAebMbIzWXA0SRRqaJw6+Xxvp9LU Nn/aGQQwOETn0o3d1rOKfKCxnvIujTaUPOh33dmrRVN4s8zCWZnKcDlry+6jZz5paaHb xg0kNRNhhaWnn3U9z8fFnjQh9me2DUGN7ufmQZTkoKQkIFOjEHx+ssePHuHcI+REamvt +9VQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765969784; x=1766574584; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=QVXfFEnyomZ7n1+faa+96lpi1G7Z02nuAcgJTrKE1/w=; b=Nl0KzWjBPhOmYcVGm52J2uDY5t+sfESgy++UgvDL7jE8cAHEjyXtRTGRSTxz6teccl ZvMusiAfhGkwcsrN3LEhAAGC4GfJkupU5gFGNasNX/YxiwEjNghbBJKogfXGVzZ3UwmA A/o3lvA6ZuaQ7K2Y0v+mlYuTJp2TVfXNGry9TQdCdWkqB9OGBBdWP1Rl5vZnVYQCPw6v JHkRtAgN2I/awPYfN/5qqh/9NpHzVtTedFFzO5ZSvbwlMEE0Ta2Xq9xqrKF67QO9T7Mr QNMMHiaF5XxalDDgkFyHsK0JYr6l2FkznKVUapBkDue8FF51+nBaCdx2MNGtOsdRhi0N rdow== X-Forwarded-Encrypted: i=1; AJvYcCXx6TS8EN0kFgYLvwJywHucHEFWr7I730lBhNYZhdb7u4Wr0+5nP4nIw6BZRlRvYGwTz9rq1aNp4DirRKE=@vger.kernel.org X-Gm-Message-State: AOJu0YzEqvkqSun/JwbNUKx46jo2gsAifFiJAw8C+xvs+HHcQ1acIoAq 5Y63dFzYXQ/w/v/vwT1nd85gLMPAGsWJlLSU15vCx4DN22LzqgmQRbUdiiGHh5Tbd+4= X-Gm-Gg: AY/fxX6By+BKk1+9u58kJpYlHH9lIRc2YqU0nP3j1NVgbuE3FXwvcelj+lxPkv7aODB SYe69uEwsQBXwQwvYftUgyS4kw/ZMkujs0bq/fQOG/68EtJzOwn7kbjj1Ywq9qrSVHWUjOk7nYm vxxhnTF2ILhJBiIZyvtU0Vj+BMH6n5kHWKBxo1s44JfZTmoPH5g0lEcDPKviOM6RRztxOdYPHcq GepfuzFf5kr/46Sxiq4ACcJtR+KqC3yAAOpAb8g6BkenvWKFwEpbfSRo4fEOpm8WXJtEC+1W3sw yhnms7Aif9PDQUHkKW2llTYSw1B/xg9HmoGaILTJ2ULA2/EbMWi3YoNIhGmcW/u+Qrh9X67wh2I E67LRV42rIr4LD8mMd3dUXbINM6zL4PIoDjml68K0MFxl0rD9cJiQCX4Xhs/w4AkAhGVYN7uJlE 1s4CPvWyk1/8tX5mi6 X-Google-Smtp-Source: AGHT+IG02+mlmUp75Y8aN15AB3fqyEtjlYTbsKkWc4VXMQLd8E1R2A0XY8IFh9I/XNFQRNEDDaYuBw== X-Received: by 2002:a17:907:6e9f:b0:b73:6c97:af49 with SMTP id a640c23a62f3a-b7d23a972c5mr1808467566b.30.1765969783886; Wed, 17 Dec 2025 03:09:43 -0800 (PST) Received: from localhost ([2a02:8071:b783:6940:1d24:d58d:2b65:c291]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-b7cfa2ebafcsm1939736266b.28.2025.12.17.03.09.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 17 Dec 2025 03:09:43 -0800 (PST) From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Ulf Hansson Cc: linux-mmc@vger.kernel.org, linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v1 2/4] wifi: rsi: sdio: Reduce use of #ifdef for CONFIG_PM Date: Wed, 17 Dec 2025 12:09:24 +0100 Message-ID: X-Mailer: git-send-email 2.47.3 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1529; i=u.kleine-koenig@baylibre.com; h=from:subject:message-id; bh=dkyXLuLg+7eYiSQma7cNLg4NKd9rhkvKdGkZMgOE4QY=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBpQo9nGdmxPZIIu7N/pwilj9mRvyvv5BXVkckRa 2AS6RJGwcKJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCaUKPZwAKCRCPgPtYfRL+ Tj7vB/4h44YpCoZWZ3nsb90FGI3e04zfgPviKqmXaBoofMxTHX8kvhuiVW6F5dF0uaw1lqnOOeP +FFPqthr5lT396O8SnCeY2/m9Po3sMCQc8L8z42wwrWi4+1xzhvGZIvFrpCJBJuQ4TC1o7KplNu Lk2D+CWBFdTnjn+cJAk4YK7y3Tkp+CF9V+kkvtgUlGkY0qdK53shaKTQ/D/B4ngV2g1FAlm9FKY T9ZwZD2mYwEZ4v9Zu7/KBVznsaIOrY+76NGS3SBqWPyLzviCui/APNfw5bEj0/6roQUECMWMHzC w61S+QQ/YpQ77CdfBgm3FPFPPx5KKNGUJoB4/OLbHuIKOWAF X-Developer-Key: i=u.kleine-koenig@baylibre.com; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable This drops two #ifdefs (which is good because they are ugly) without changing semantics. This also improves compile coverage because all the code in the first #ifdef block is now compiled even for configurations without CONFIG_PM (and then thrown away). Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/net/wireless/rsi/rsi_91x_sdio.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/net/wireless/rsi/rsi_91x_sdio.c b/drivers/net/wireless= /rsi/rsi_91x_sdio.c index 1e578533e473..c2b2d09b616f 100644 --- a/drivers/net/wireless/rsi/rsi_91x_sdio.c +++ b/drivers/net/wireless/rsi/rsi_91x_sdio.c @@ -1243,7 +1243,6 @@ static void rsi_disconnect(struct sdio_func *pfunctio= n) =20 } =20 -#ifdef CONFIG_PM static int rsi_set_sdio_pm_caps(struct rsi_hw *adapter) { struct rsi_91x_sdiodev *dev =3D adapter->rsi_dev; @@ -1499,7 +1498,6 @@ static const struct dev_pm_ops rsi_pm_ops =3D { .thaw =3D rsi_thaw, .restore =3D rsi_restore, }; -#endif =20 static const struct sdio_device_id rsi_dev_table[] =3D { { SDIO_DEVICE(SDIO_VENDOR_ID_RSI, SDIO_DEVICE_ID_RSI_9113) }, @@ -1512,12 +1510,10 @@ static struct sdio_driver rsi_driver =3D { .probe =3D rsi_probe, .remove =3D rsi_disconnect, .id_table =3D rsi_dev_table, -#ifdef CONFIG_PM .drv =3D { - .pm =3D &rsi_pm_ops, - .shutdown =3D rsi_shutdown, + .pm =3D pm_ptr(&rsi_pm_ops), + .shutdown =3D pm_ptr(rsi_shutdown), } -#endif }; module_sdio_driver(rsi_driver); =20 --=20 2.47.3 From nobody Wed Feb 11 05:04:54 2026 Received: from mail-ed1-f42.google.com (mail-ed1-f42.google.com [209.85.208.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 39524344045 for ; Wed, 17 Dec 2025 11:09:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765969789; cv=none; b=LHjv/x2VWtLfiFX4Uc9qJBTiJK4QvBE1ITtIIJXk6wG5z+OVqkRIjADAa1XlpLNuvY+FDaMsFMt0FFHoAssNeEMBs3GtOpSJyLK049wvT6ZSWF3SUoKuNIxNbhyz+pxe+/F6OMO8RVqHAkGP9WASVfuCB1upiSYn3oDYgTGASHI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765969789; c=relaxed/simple; bh=nVg8/dPMXpd837fVnH+nSt0ymYJC3P/GUTRjjIQmYt4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=PoLFhPyZXxuRPPi58b9XTPOzy0Br3+fvTGhu32hrDA+0KfWutYkrmsceLmdk5kEyLXmvHpiAvcbSz3lJkQm/qQScWcRqK7r6WH7lscXosQb3jCXn4dCRju+HJ08OfHuIq4wxVDwlzr9qm4ulm9NMc/RC+FHNr7170WxbdWlLtLU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com; spf=pass smtp.mailfrom=baylibre.com; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b=oQzQ6cNJ; arc=none smtp.client-ip=209.85.208.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=baylibre.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b="oQzQ6cNJ" Received: by mail-ed1-f42.google.com with SMTP id 4fb4d7f45d1cf-6498850d3f6so7267494a12.0 for ; Wed, 17 Dec 2025 03:09:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1765969785; x=1766574585; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=p2SwmfjF77+ak5KfsorzokdI/DV+t+DAcXlk3P8v6RY=; b=oQzQ6cNJ1SSixAVxQ0zuOHOKeR+QiTCMfvlUtxNQs7eYV3gjFFxxNxj327I3V9iAdc mWAOu1xfqKiUxJRncTsz6NbwvKxXHfMoSmwAJOT0vkrK1ewneUmsrPp7Q72n2eLYKJ0L 46aALrm0d1i3RGOulqFdrZ/MpRKetN6bOqtOMgyESxtxzERlTJegwYaaTAz9aEAESm+m PJ86L/zyuAB3G3ZRabrN9oN883VGgxZJ6fs+ukA3icPn+aqHuK7MROwfm5IXvNn9o9Cq Bti7mAth70NntrqiTAuxqSPRjVoQOj2VpJYILkdNbbKkjyxcuXkvIY3qEv/skU5Lt7dK ektg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765969785; x=1766574585; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=p2SwmfjF77+ak5KfsorzokdI/DV+t+DAcXlk3P8v6RY=; b=kf0eiKMeV62zEZ0vyaWbfV8bcPdOvNCaCyY2utV9QDHMLkUkMW/Vn9aOti73TMQJsc Xqa2zVxGY6bqyZxakQ5+udi0jIc3rq3lYq1jgxn5nYhHkuGmOkNvqOH8R59NXqfPVnBg P9oho0LqZTZKC6ZhICmKbFPIxyjAMi4PDf2IKd9YNEJYeZs5aJeBbV5ghchHyixa6JCa pdxqHsJ1vdbh+3w0YNTuIOcGm+lWi8Yyh1bAuewEW3mTdnO7WdOpdEaG6OIFTM9SmanF iPeO7VYuC3q/ivtVJkV8GTSMXHfBjRlZmvej4CO2DPIObW8ies4aAucT/1iNL2d6+c/s m7gA== X-Forwarded-Encrypted: i=1; AJvYcCW1cknl1ZyUx9tsilEXr9O6AxgH22/B5fmpbuo5oSA3ck3NzLYVvwXJqKqLrnyJkUTl57YcNFIHoSo5UzM=@vger.kernel.org X-Gm-Message-State: AOJu0YxYDSgyAhJoWyeJDnve4Cg/3r4KAwyOTfBwYmJpGmC9qOv/bze8 Gpo+gPvbqzmiot0zU0dbk6DRv1Val3F8bCMc7wzvhfidS8G1QTAF7eiXNK/KkuxOr3Q= X-Gm-Gg: AY/fxX6Y43myzMYZhoww7VdBFE3MtjDoJAHlVFtuPMDR/qG8Dq4Apy9oLP+XW/MWnhP 6SozZgG62dha3G7FdoQEw7tJLtawQNHWmPyzn6N+dvqqvsKrC+LJqK3gUSO6beV/nmts8MFP2d0 MnhnrePnfTU4bAANRNsRekdpBZx4ULQRPCIIiICkKC2rq8CW3c4uD5QNUcM5M0hl6eM3Yf07e6/ PH0Su7ORxu7/s1nDmwCYCaL17qJCxkvNm/P1lzske46NMyRLQK93yuzrudxs58NimD4BmNvYFvy CxHBrDPlJyWXk6Uf75eGTDK6X+M4sXv6NlJkAN77zzaUQEf8av0XmGww3rrfRPbDJ4wB431bgdA iY4X+zO6tCB8oK+l7uHv/E3mqdWdNcgAotE9poWxtr2T8jn4JWtHgsOgrZ+ZjB8Of7jH4g76MO7 70UKAT6gvxalOeVU9h X-Google-Smtp-Source: AGHT+IFplUWO89lh2aiL5iam7o05siy3yB+bol9YYYWazAW0/qp1x2HCivhkkPaRZ9Jt16WUujSU5w== X-Received: by 2002:a17:907:3f88:b0:b73:870f:fa37 with SMTP id a640c23a62f3a-b7d2376d4abmr1839041166b.17.1765969785523; Wed, 17 Dec 2025 03:09:45 -0800 (PST) Received: from localhost ([2a02:8071:b783:6940:1d24:d58d:2b65:c291]) by smtp.gmail.com with UTF8SMTPSA id 4fb4d7f45d1cf-64b3f4ea67esm2187104a12.7.2025.12.17.03.09.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 17 Dec 2025 03:09:45 -0800 (PST) From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Ulf Hansson Cc: linux-mmc@vger.kernel.org, linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v1 3/4] wifi: rsi: sdio: Migrate to use sdio specific shutdown function Date: Wed, 17 Dec 2025 12:09:25 +0100 Message-ID: <53a46d554faed2f28ac0c0e981ae12badf020cab.1765968841.git.ukleinek@kernel.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=1313; i=u.kleine-koenig@baylibre.com; h=from:subject:message-id; bh=nVg8/dPMXpd837fVnH+nSt0ymYJC3P/GUTRjjIQmYt4=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBpQo9p2+yijRwC6XFA9QuHYJCtpCFALJmLX5G9w /koL3Kvs9qJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCaUKPaQAKCRCPgPtYfRL+ ThenB/9LkYKkq3huDqcvTI5BmhmEVUvbrvh56Hn+9R8lMBNooYjjmlGSqUVH9MicnLk1HUj/pun iq1NhUx18isDq9UrUdoMs0lDPJYBoneQlAp6Yrk6tf0bgAJ+q6GwvZgbwsCcM2e9L+Tl3unSfvx 6qnbfs6OOI3YJkJ8YYCralNhNIDSXVqXcMmgxmwNaQla+SCC/BfybpkDszHfuUkfCEioI0LYyUk 7p7I15Udpx2NBk1IVUQ215tRcW/ef38DHV5NWV7hCob+CtmUN8MtWRKLyL6GmRlNKGlc6/I4OYy 6BSKzrkSnsaIPLSoDfp6+I5yPTRtEapHphn1RVVpN7/w5Rmx X-Developer-Key: i=u.kleine-koenig@baylibre.com; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable This saves a cast in the driver. The motivation is stop using the callback .shutdown in rsi_driver.drv to make it possible to drop that. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/net/wireless/rsi/rsi_91x_sdio.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/net/wireless/rsi/rsi_91x_sdio.c b/drivers/net/wireless= /rsi/rsi_91x_sdio.c index c2b2d09b616f..a1376847ac85 100644 --- a/drivers/net/wireless/rsi/rsi_91x_sdio.c +++ b/drivers/net/wireless/rsi/rsi_91x_sdio.c @@ -1442,9 +1442,8 @@ static int rsi_thaw(struct device *dev) return 0; } =20 -static void rsi_shutdown(struct device *dev) +static void rsi_shutdown(struct sdio_func *pfunction) { - struct sdio_func *pfunction =3D dev_to_sdio_func(dev); struct rsi_hw *adapter =3D sdio_get_drvdata(pfunction); struct rsi_91x_sdiodev *sdev =3D adapter->rsi_dev; struct ieee80211_hw *hw =3D adapter->hw; @@ -1509,10 +1508,10 @@ static struct sdio_driver rsi_driver =3D { .name =3D "RSI-SDIO WLAN", .probe =3D rsi_probe, .remove =3D rsi_disconnect, + .shutdown =3D pm_ptr(rsi_shutdown), .id_table =3D rsi_dev_table, .drv =3D { .pm =3D pm_ptr(&rsi_pm_ops), - .shutdown =3D pm_ptr(rsi_shutdown), } }; module_sdio_driver(rsi_driver); --=20 2.47.3 From nobody Wed Feb 11 05:04:54 2026 Received: from mail-ed1-f46.google.com (mail-ed1-f46.google.com [209.85.208.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CAD143491E8 for ; Wed, 17 Dec 2025 11:09:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765969793; cv=none; b=j2nElOKh7T2uqg/gnEQRwAo0c9kLWGrQFdpS2lmWXXf/cQPB0oEQOZ02OnlFAExIXQ3X33r/M/r1Cb3HO9gr9CKMRrGLvsxwHl22Kdu2WmTJYiWPTMtpis9qfApHDwcZNuadrWt3acx0TJYMZIB0RuRRU1gAnc4i3eIWtXLy/wY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765969793; c=relaxed/simple; bh=SkcAEzo7i/6i/n+AriKV4xHUsY6KE3N6pRVzU1yP/iM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=bWUYurAxovd+SXi/7sFgaTgK2BoDY0kE76AdJfH/ZJN8coSwyM9pQVD4InkR4ernRCc6zo3/k0T041S6yuhaosPoVOLZIx3mIVVroLWyxR/tvOkPVtxkZ1m7LCpE+j7Oj/0ko9MZGXbfRjiDqbtQO6Ah1fqY4Q7bDT5g6ikzrY8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com; spf=pass smtp.mailfrom=baylibre.com; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b=QmQtolJU; arc=none smtp.client-ip=209.85.208.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=baylibre.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=baylibre.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=baylibre-com.20230601.gappssmtp.com header.i=@baylibre-com.20230601.gappssmtp.com header.b="QmQtolJU" Received: by mail-ed1-f46.google.com with SMTP id 4fb4d7f45d1cf-64175dfc338so8316244a12.0 for ; Wed, 17 Dec 2025 03:09:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1765969787; x=1766574587; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=uJ5P43t34Lz1EY6AFSYYgZN1NN5lPCazHIAbk5Krusg=; b=QmQtolJUuW/qCucTk88jQSAs+EewoXKM64Eir2LcHEslPF9RvPYviN8PVwvt9pP1r9 3et2hEc4Hwjf/KokfTF60BPnymf4y1N6ZSYyRqJktnsBW5E0v+exMuqzspgXWtHccaWd aEQXixQ88FwiUHeLaI78Cu8Ti1v/VW2+m72EuvJRQH2+u38j+ghPkDhLDqwnrPukQ9LS NawMoa58rPKeb9DyC8KuJ2tAr/5KgvvP2BYI5ni+ezFsqlK8UpmaHg+8aWKEkV8v/nOn d+t5kJGwhXmjyqzlZ5gVtOuar4SgvIlKI35yDvN6USz3a+lfnFK1a3oSP6XNJFyc9y81 bYiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765969787; x=1766574587; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=uJ5P43t34Lz1EY6AFSYYgZN1NN5lPCazHIAbk5Krusg=; b=XD+SNFNxlxWv/Mh4Yp1tpSjMBzUKDAyvIKnwp9ntIg5UFSkpgQ1PS9QgpauzYEqs4t IKp1anGWW5Lj7oRgxeFkH/wuUxgG5z5Vy7cgquR6icPEbUpBOxQo42x8FLpQATSnoXbW TUCpY9HkcFOyaFOnZNEOOZKjc4C7xTECgpaDwSTK6D9GlSgbp/mTNrlKu6C+a/gWfqch jFS7rgZmjHkqvhRG3ALO5ag6zishF69528TTtug+rIXcgvhYJq9ppOXrnR0FhlR/RSIK h4ER4DFH3EyB0tWZH39rFGF84afz8A8tt7ktZpWrjJtfbmkEND3ntTTNZH4jlU9MTeGz WKiA== X-Forwarded-Encrypted: i=1; AJvYcCXqRXCfhE9Q1VgKYnOckpyoOLhkoGv2gu+dxqlgR/cwbUylZ5+AsaqtIr4PwLQSAK9qb6CVQoQ4VjtqjKU=@vger.kernel.org X-Gm-Message-State: AOJu0Yx3Y4jdpnPNuP9MnZxmu69/h7Jd41BKXktWyraGBETn5ZpmkLBM XBUrkXp9E0PUX/1o2vz56Y2bfuv4VNUmq859uW7AibozTfRT1253sH1aRUke/Z6UnEE= X-Gm-Gg: AY/fxX52f3ZqDHuR2239KXzFAa6J3wntd2IVhjG02bBGdzZSEJyVQ5VwDrMfkfIXIZX +oy6LC98CY2i44cnbBx+90ER0sdKotGjCFPy25hdv6xCDDNyYXNC6/lPLHEGAwXpHNDGGAedwYo nkPpJUN0ArUrKaY6lGQPVj2FyeBF1rvWjrcY01W9uuTKhxmac0AdigHJm/gYCbNLvjtVld7Qelb LxrusVLJ33uoOFxnnN3iZQooKjBvkBWwJCZKK+IMmasifmBhMZOFizhdPSnQ+u10FDeC8Yea393 tnffE6tNl0tXuUUqsthuX4p+29SiBvVhSjsJk6X2bygwqtSxEW1dI3UvGjfoaJxnQO5zSSKt0WF VaizjxJew1fyvPdUlNxkqKeAsy74gSGg0FRAM+fTLxDQEeRRbhSskwy7gt/Zr8VcRTPRunm1PtB IZuCnWJTqrH2aF34Lo X-Google-Smtp-Source: AGHT+IFvzs7gbTYqNv/IrH+Io0Hb2O1HvOFutj73wppNa2IfoOa9tOxTbg/zFDsIuwFGVu6mAhmfDA== X-Received: by 2002:a17:907:3e08:b0:b7c:e758:a79d with SMTP id a640c23a62f3a-b7d238fa0cemr1785176866b.37.1765969786896; Wed, 17 Dec 2025 03:09:46 -0800 (PST) Received: from localhost ([2a02:8071:b783:6940:1d24:d58d:2b65:c291]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-b7cfa5c8e59sm1971004466b.62.2025.12.17.03.09.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 17 Dec 2025 03:09:46 -0800 (PST) From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Ulf Hansson , Ping-Ke Shih Cc: linux-mmc@vger.kernel.org, linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v1 4/4] wifi: rtw88: sdio: Migrate to use sdio specific shutdown function Date: Wed, 17 Dec 2025 12:09:26 +0100 Message-ID: X-Mailer: git-send-email 2.47.3 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Developer-Signature: v=1; a=openpgp-sha256; l=4923; i=u.kleine-koenig@baylibre.com; h=from:subject:message-id; bh=SkcAEzo7i/6i/n+AriKV4xHUsY6KE3N6pRVzU1yP/iM=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBpQo9sOPlvqvTSgB0Q3DAfkaqL3uclOe0t2At8i JEhuGlvagCJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCaUKPbAAKCRCPgPtYfRL+ Tv8hB/93CYUMggD8g4pqmoGjAUQVzbPT4ksM0WDss7kaMLvVS0XImkhyFkgEbWW6KFn2F2FQanb QmUjimhEXuk5lYyJzHZ0k5cYaVHr1/RuqItYa9ApNf0Jypi9px3vIuimCyc2W4BS5VL8kktRgSP 0U2CLhl63nX6Mb141tWWp83k2SY8fquzEY96jXtq7/mM2yGVf1gx9whJLhjBmKJpaqwShFh0zFU WIvZ7HzM9pUDmSvs4f6KHIXrIs+YSPU6XJinKn3sQu76t9LYN5aKbzgQXjJ+EV8x71O296GnuV7 HIAiHU/uy8Vt73PfImZRzg4o7zYiBdYGMecyOE/2AIJn80xd X-Developer-Key: i=u.kleine-koenig@baylibre.com; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable This saves a cast in the driver. The motivation is stop using the callback .shutdown in rsi_driver.drv to make it possible to drop that. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/net/wireless/realtek/rtw88/rtw8723cs.c | 2 +- drivers/net/wireless/realtek/rtw88/rtw8723ds.c | 2 +- drivers/net/wireless/realtek/rtw88/rtw8821cs.c | 2 +- drivers/net/wireless/realtek/rtw88/rtw8822bs.c | 2 +- drivers/net/wireless/realtek/rtw88/rtw8822cs.c | 2 +- drivers/net/wireless/realtek/rtw88/sdio.c | 3 +-- drivers/net/wireless/realtek/rtw88/sdio.h | 2 +- 7 files changed, 7 insertions(+), 8 deletions(-) diff --git a/drivers/net/wireless/realtek/rtw88/rtw8723cs.c b/drivers/net/w= ireless/realtek/rtw88/rtw8723cs.c index 1f98d35a8dd1..2018c9d76dd1 100644 --- a/drivers/net/wireless/realtek/rtw88/rtw8723cs.c +++ b/drivers/net/wireless/realtek/rtw88/rtw8723cs.c @@ -23,9 +23,9 @@ static struct sdio_driver rtw_8723cs_driver =3D { .id_table =3D rtw_8723cs_id_table, .probe =3D rtw_sdio_probe, .remove =3D rtw_sdio_remove, + .shutdown =3D rtw_sdio_shutdown, .drv =3D { .pm =3D &rtw_sdio_pm_ops, - .shutdown =3D rtw_sdio_shutdown }}; module_sdio_driver(rtw_8723cs_driver); =20 diff --git a/drivers/net/wireless/realtek/rtw88/rtw8723ds.c b/drivers/net/w= ireless/realtek/rtw88/rtw8723ds.c index 206b77e5b98e..e38c90b769a2 100644 --- a/drivers/net/wireless/realtek/rtw88/rtw8723ds.c +++ b/drivers/net/wireless/realtek/rtw88/rtw8723ds.c @@ -28,10 +28,10 @@ static struct sdio_driver rtw_8723ds_driver =3D { .name =3D KBUILD_MODNAME, .probe =3D rtw_sdio_probe, .remove =3D rtw_sdio_remove, + .shutdown =3D rtw_sdio_shutdown, .id_table =3D rtw_8723ds_id_table, .drv =3D { .pm =3D &rtw_sdio_pm_ops, - .shutdown =3D rtw_sdio_shutdown, } }; module_sdio_driver(rtw_8723ds_driver); diff --git a/drivers/net/wireless/realtek/rtw88/rtw8821cs.c b/drivers/net/w= ireless/realtek/rtw88/rtw8821cs.c index 6d94162213c6..58e0ef219cdc 100644 --- a/drivers/net/wireless/realtek/rtw88/rtw8821cs.c +++ b/drivers/net/wireless/realtek/rtw88/rtw8821cs.c @@ -23,10 +23,10 @@ static struct sdio_driver rtw_8821cs_driver =3D { .name =3D KBUILD_MODNAME, .probe =3D rtw_sdio_probe, .remove =3D rtw_sdio_remove, + .shutdown =3D rtw_sdio_shutdown, .id_table =3D rtw_8821cs_id_table, .drv =3D { .pm =3D &rtw_sdio_pm_ops, - .shutdown =3D rtw_sdio_shutdown, } }; module_sdio_driver(rtw_8821cs_driver); diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822bs.c b/drivers/net/w= ireless/realtek/rtw88/rtw8822bs.c index 744781dcb419..2de9b11540c5 100644 --- a/drivers/net/wireless/realtek/rtw88/rtw8822bs.c +++ b/drivers/net/wireless/realtek/rtw88/rtw8822bs.c @@ -23,10 +23,10 @@ static struct sdio_driver rtw_8822bs_driver =3D { .name =3D KBUILD_MODNAME, .probe =3D rtw_sdio_probe, .remove =3D rtw_sdio_remove, + .shutdown =3D rtw_sdio_shutdown, .id_table =3D rtw_8822bs_id_table, .drv =3D { .pm =3D &rtw_sdio_pm_ops, - .shutdown =3D rtw_sdio_shutdown, } }; module_sdio_driver(rtw_8822bs_driver); diff --git a/drivers/net/wireless/realtek/rtw88/rtw8822cs.c b/drivers/net/w= ireless/realtek/rtw88/rtw8822cs.c index 322281e07eb8..b00ef4173962 100644 --- a/drivers/net/wireless/realtek/rtw88/rtw8822cs.c +++ b/drivers/net/wireless/realtek/rtw88/rtw8822cs.c @@ -23,10 +23,10 @@ static struct sdio_driver rtw_8822cs_driver =3D { .name =3D KBUILD_MODNAME, .probe =3D rtw_sdio_probe, .remove =3D rtw_sdio_remove, + .shutdown =3D rtw_sdio_shutdown, .id_table =3D rtw_8822cs_id_table, .drv =3D { .pm =3D &rtw_sdio_pm_ops, - .shutdown =3D rtw_sdio_shutdown, } }; module_sdio_driver(rtw_8822cs_driver); diff --git a/drivers/net/wireless/realtek/rtw88/sdio.c b/drivers/net/wirele= ss/realtek/rtw88/sdio.c index 99d7c629eac6..ebd7636e2408 100644 --- a/drivers/net/wireless/realtek/rtw88/sdio.c +++ b/drivers/net/wireless/realtek/rtw88/sdio.c @@ -1412,9 +1412,8 @@ void rtw_sdio_remove(struct sdio_func *sdio_func) } EXPORT_SYMBOL(rtw_sdio_remove); =20 -void rtw_sdio_shutdown(struct device *dev) +void rtw_sdio_shutdown(struct sdio_func *sdio_func) { - struct sdio_func *sdio_func =3D dev_to_sdio_func(dev); const struct rtw_chip_info *chip; struct ieee80211_hw *hw; struct rtw_dev *rtwdev; diff --git a/drivers/net/wireless/realtek/rtw88/sdio.h b/drivers/net/wirele= ss/realtek/rtw88/sdio.h index 3c659ed180f0..457e8b02380e 100644 --- a/drivers/net/wireless/realtek/rtw88/sdio.h +++ b/drivers/net/wireless/realtek/rtw88/sdio.h @@ -166,7 +166,7 @@ extern const struct dev_pm_ops rtw_sdio_pm_ops; int rtw_sdio_probe(struct sdio_func *sdio_func, const struct sdio_device_id *id); void rtw_sdio_remove(struct sdio_func *sdio_func); -void rtw_sdio_shutdown(struct device *dev); +void rtw_sdio_shutdown(struct sdio_func *sdio_func); =20 static inline bool rtw_sdio_is_sdio30_supported(struct rtw_dev *rtwdev) { --=20 2.47.3