From nobody Sun Dec 14 06:39:54 2025 Received: from mail-ej1-f52.google.com (mail-ej1-f52.google.com [209.85.218.52]) (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 5EB883019CB for ; Wed, 10 Dec 2025 08:31:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765355517; cv=none; b=bkk/S4cAE69a2t5rX6x8Cs2cx3iyVQ/r4ZeN3pMRS1+FrB9Eu5AYfCJ96kaFV40oiT6hHmrdtYwYnPx1shzSncY1gKAwh5XMge1aJqo1mysgk0cW0PgnNhY4qWmtwpjKNBXBr6fkT75VFeY3dXfKtFVSSSEpVGX9JNkJvp724bw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765355517; c=relaxed/simple; bh=LrLdovRzSzdNxTBUY5bVyUTgTkSb9V8DwRHPPe0GO8o=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=PnDtJSQTUDUlSDTrzMZ0g2OjTLD7ArH5mV64daDclIz0RdXS14iPeNj5tPpAUElxfbNQ3wOCXA1tiMhmkPAzD3su/s+5EyBe4KSmNpABx8H48awMuHNIqSJj/w4NPNJIIGj1bQbiUR48SJ/VYZsnywMiyF4ssmVS+jfeJh3m9uI= 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=o7dt1r9s; arc=none smtp.client-ip=209.85.218.52 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="o7dt1r9s" Received: by mail-ej1-f52.google.com with SMTP id a640c23a62f3a-b735e278fa1so1166150466b.0 for ; Wed, 10 Dec 2025 00:31:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1765355511; x=1765960311; 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=WSlXOGUPyH2wmzlmXTP6V9Rk2E/YQBY/7/JUKnpIt0k=; b=o7dt1r9sZBHpQ7xP2PEScnWRDP/FPWGQ7XIa9QIppo/K7Dkl1fGw7QydGHGsRbCjvx kbRwrdGW2uiAa3SJUrOHFz3y/oGiHcKewabSCW/nmo/RYn+JRaI/D6P5Pt5glowPwr00 Su2UVe4Aw5wJYLQZfboi59s1EaVkYZo+SBODgvULY6Jb1epa91W/y9Vwqhx8K5NPHev8 bqoX1ViROgSPf/PwOaQ3/+SYjrSi9ef8+PNq8gA3mPJSxpHzsHp0ZaCo+gRQk0NZynD3 e7lnMMvqSw3g02Q3GSqsVgMv6IHR0mL5Rk1A0/74xFxoZq8wbNE31pWZKNRh8CFxXcKH 9UEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765355511; x=1765960311; 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=WSlXOGUPyH2wmzlmXTP6V9Rk2E/YQBY/7/JUKnpIt0k=; b=eOoXjeWU7vp40jSfQFUeEexLf2nQtXCv66fZEg8tg1iMXzJjW7eZcD/93eAFE8pOZQ feTGQb1UtiXr4dmQ0cwxpBDkgZp+vOUez1DaAS5KofR7yELMY56BMUnYA2a2n63cenzf vYNqlM5wEKngKh6vasC84bnhLYSBu48ZKaVU/aU01h5ibfuAAxS24jaaKP8JiAW4V62v T7VPF++OP36gKpiWQqHnLuv0wFxwmSLCm9Vv9lAz5ChKOKFxJN7zekVqGmTlTQeUIWkx QWp473ZR6GMA/+iKVfjfpl+Pdy9t2gLpo7Ovw2cjhN0pl2mFcV3JsS5hjsZ3eIIuGJmy mcrw== X-Forwarded-Encrypted: i=1; AJvYcCWwQ6sfRl2ySEc/O9DaISllFrtemtWvaDdk0xctcVFMzJNDUojXnMDYWx7FxmW6Z+J4aeHoEQqtorbpUgs=@vger.kernel.org X-Gm-Message-State: AOJu0Yz0yISgei4Y82lHFxY3nItII0mtKlHcc5ytg0PqAGeAwO8FwCkR 2P/SCsmaA4yIfFc8hrZiy5jY3EOkRq9mc7wykjNuYkDQ4xaNcWRaEuRhToFu5nvxVas= X-Gm-Gg: AY/fxX6gpbXXyAKN5yUr+TpqFr9zFkfOi3KEUHIH/lshI9sH8BAozncBEDzOpE8dwOm ej9TwaRdzkR9Uyz/DF6f4qB6OaEgHoP1tpBjTESmBbOGmDooRtzGBg1cirMj45BcmP+FVX1izDA 4qOXaHkLM+nlMoYg1+iTKS2I5Jlkt5NbLZ1UbuuqbN9HqBXjRAtA7Qwi0ueKH23exZOLbQOp1Ne WoP1Z0h/7LjmlcDseDl9IiNIN/gVNadoYgyuQEqFf4ybRZKo5SmwoYyW552zJgGxYTkVfiM2AdB 5S1ccHjpkvOwqpaSWqnfB+farDI3xDXZRcuEhPirm4sTBliABFyQVhfbTjfFsJ/wGT/7SwwnMHM PTFDKjz8uEF2h2WQDe2PIksvdCH9EoWAumBeLzRg4qYcuJyzqaCJbdlgg5R8W84GnoDqFBKcvz7 03LD8F2S9RyWlL+v3K X-Google-Smtp-Source: AGHT+IFDU3NgK94e2I43lGVaae/zTSx8SJWvAB4zEAII7VlEYPowkYq2MDr2f3QvhM1SFljKSS7JEQ== X-Received: by 2002:a17:907:86a6:b0:b7a:21d5:15eb with SMTP id a640c23a62f3a-b7ce844ed2cmr161725666b.52.1765355511508; Wed, 10 Dec 2025 00:31:51 -0800 (PST) Received: from localhost ([2a02:8071:b783:6940:1d24:d58d:2b65:c291]) by smtp.gmail.com with UTF8SMTPSA id 4fb4d7f45d1cf-647b4121f07sm16450153a12.28.2025.12.10.00.31.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 10 Dec 2025 00:31:51 -0800 (PST) From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Akhil R , Herbert Xu , "David S. Miller" , Thierry Reding , Jonathan Hunter , Mikko Perttunen , David Airlie , Simona Vetter , Sowjanya Komatineni , Luca Ceresoli , Mauro Carvalho Chehab , Greg Kroah-Hartman Cc: linux-crypto@vger.kernel.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-media@vger.kernel.org, linux-staging@lists.linux.dev Subject: [PATCH 1/2] host1x: Make remove callback return void Date: Wed, 10 Dec 2025 09:31:37 +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=3660; i=u.kleine-koenig@baylibre.com; h=from:subject:message-id; bh=LrLdovRzSzdNxTBUY5bVyUTgTkSb9V8DwRHPPe0GO8o=; b=owEBbQGS/pANAwAKAY+A+1h9Ev5OAcsmYgBpOS/sRGieJNY6eEBd+rKCwW3UfWy+0G4cTvst6 vX4NaiKjOaJATMEAAEKAB0WIQQ/gaxpOnoeWYmt/tOPgPtYfRL+TgUCaTkv7AAKCRCPgPtYfRL+ ToEUCACCotR1zED66IhienYTk2oEwO+g1mqbvB0PBHiZ7kpG+Kt+FBF7T1RKGnWK6WehDqyRHzM LmmgMZ0GhkSc/r8NFSihIQ7xR9UHh0VtcZmTCGjd/V+1XQJ//+axPc6/9xNaWlRikHwzmJCpk0s Zn3UGsasK2k7ECE8T6ylyGqtRmxW3d0glZQHu1Nr48U662jtsLpWZTEqu0fSg6jfVexpG95q63a KmF1OmNjtm+iHmWbYbtWuMwvE/va59+K8qESdRpTmtGEhbPfoSDzB9Z5AKF0leNgBVwwbtrYrSm 9Gn4FQA7UH5CuZuJt9nktkL/UscIvvFIeQ5hP0bslc+tW4tc X-Developer-Key: i=u.kleine-koenig@baylibre.com; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable The return value of struct device_driver::remove is ignored by the core (see device_remove() in drivers/base/dd.c). So it doesn't make sense to let the host1x remove callback return an int just to ignore it later. So make the callback return void. All current implementors return 0, so they are easily converted. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/crypto/tegra/tegra-se-main.c | 4 +--- drivers/gpu/drm/tegra/drm.c | 4 +--- drivers/gpu/host1x/bus.c | 2 +- drivers/staging/media/tegra-video/video.c | 4 +--- include/linux/host1x.h | 2 +- 5 files changed, 5 insertions(+), 11 deletions(-) diff --git a/drivers/crypto/tegra/tegra-se-main.c b/drivers/crypto/tegra/te= gra-se-main.c index 7237f14eaf5a..4e7115b247e7 100644 --- a/drivers/crypto/tegra/tegra-se-main.c +++ b/drivers/crypto/tegra/tegra-se-main.c @@ -401,11 +401,9 @@ static int tegra_se_host1x_probe(struct host1x_device = *dev) return host1x_device_init(dev); } =20 -static int tegra_se_host1x_remove(struct host1x_device *dev) +static void tegra_se_host1x_remove(struct host1x_device *dev) { host1x_device_exit(dev); - - return 0; } =20 static struct host1x_driver tegra_se_host1x_driver =3D { diff --git a/drivers/gpu/drm/tegra/drm.c b/drivers/gpu/drm/tegra/drm.c index 4596073fe28f..bd0646eae555 100644 --- a/drivers/gpu/drm/tegra/drm.c +++ b/drivers/gpu/drm/tegra/drm.c @@ -1300,7 +1300,7 @@ static int host1x_drm_probe(struct host1x_device *dev) return err; } =20 -static int host1x_drm_remove(struct host1x_device *dev) +static void host1x_drm_remove(struct host1x_device *dev) { struct drm_device *drm =3D dev_get_drvdata(&dev->dev); struct tegra_drm *tegra =3D drm->dev_private; @@ -1329,8 +1329,6 @@ static int host1x_drm_remove(struct host1x_device *de= v) =20 kfree(tegra); drm_dev_put(drm); - - return 0; } =20 static void host1x_drm_shutdown(struct host1x_device *dev) diff --git a/drivers/gpu/host1x/bus.c b/drivers/gpu/host1x/bus.c index 344cc9e741c1..fd89512d4488 100644 --- a/drivers/gpu/host1x/bus.c +++ b/drivers/gpu/host1x/bus.c @@ -628,7 +628,7 @@ static int host1x_device_remove(struct device *dev) struct host1x_device *device =3D to_host1x_device(dev); =20 if (driver->remove) - return driver->remove(device); + driver->remove(device); =20 return 0; } diff --git a/drivers/staging/media/tegra-video/video.c b/drivers/staging/me= dia/tegra-video/video.c index 074ad0dc56ca..68783d5ffeb1 100644 --- a/drivers/staging/media/tegra-video/video.c +++ b/drivers/staging/media/tegra-video/video.c @@ -107,7 +107,7 @@ static int host1x_video_probe(struct host1x_device *dev) return ret; } =20 -static int host1x_video_remove(struct host1x_device *dev) +static void host1x_video_remove(struct host1x_device *dev) { struct tegra_video_device *vid =3D dev_get_drvdata(&dev->dev); =20 @@ -118,8 +118,6 @@ static int host1x_video_remove(struct host1x_device *de= v) =20 /* This calls v4l2_dev release callback on last reference */ v4l2_device_put(&vid->v4l2_dev); - - return 0; } =20 static const struct of_device_id host1x_video_subdevs[] =3D { diff --git a/include/linux/host1x.h b/include/linux/host1x.h index 9fa9c30a34e6..5e7a63143a4a 100644 --- a/include/linux/host1x.h +++ b/include/linux/host1x.h @@ -380,7 +380,7 @@ struct host1x_driver { struct list_head list; =20 int (*probe)(struct host1x_device *device); - int (*remove)(struct host1x_device *device); + void (*remove)(struct host1x_device *device); void (*shutdown)(struct host1x_device *device); }; =20 --=20 2.47.3 From nobody Sun Dec 14 06:39:54 2025 Received: from mail-ej1-f49.google.com (mail-ej1-f49.google.com [209.85.218.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 6418F30216F for ; Wed, 10 Dec 2025 08:31:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765355519; cv=none; b=T1f19Pj3shSyFtlFnTKbue2KvOsqouAiu8o2yh9qhPoTDrN2XYvTSFvDNLIYPhCAkgp7ILNLrXzBfTBympxBW1sK1beVH2P6ffVoLUtJrpgGsaGNzZhFIJEi+o/FamrBDk0AWS/3Rp20NdQ+fOlL4MWEIeEe6LNlp4KrE303H4o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765355519; c=relaxed/simple; bh=FFNspWcgr6JBh3jF6KiuWIJwLT9QVchWO/Z3r4hqr+s=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=h1CiRMRYAYMhObZeKf78uq/5XVSV+egpFC1wUWiscA4u1LEAOWidWzaLZZBlgdrp8XlPQINasRdCKQecsGxvLZPVoOjkroRDFl1cp6LPJJbr1b79y9/InpDXBiW+RhZttJ61NGavmHHYGsPU9fuAJLapcWQDGCp1mOWKHA0BboY= 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=cF0BEjQb; arc=none smtp.client-ip=209.85.218.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="cF0BEjQb" Received: by mail-ej1-f49.google.com with SMTP id a640c23a62f3a-b75c7cb722aso1054876766b.1 for ; Wed, 10 Dec 2025 00:31:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20230601.gappssmtp.com; s=20230601; t=1765355513; x=1765960313; 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=lSMdgZiYQlpcrCoz/a1I+Tk8d9M7yHxRNKGn/fSx/9c=; b=cF0BEjQb+pTEHhzIg1eJMLMIX8DydObzAgCGq3MbMZONR3gBxvoTVTn18tW/DtS+BF YJ6SQThIszXytIBMVK0xujqHuocRfFhNrvlRDYJ3kC8MGLNiuoJcpdms29NkFgK42wfy EXdBwa8XRxpdmSkzApbEZHa+Dnumu5vnxFDxkCx3P2hxaU1dgtgUOxNuxb14HoP8VizS TyvA6l24P4XBbHeNwdBnYvZjOBGzCb+vD5izgNO8JrFY0Ez7q6YpEcLzHrCKPlMHsWcw z2koF1GtH3nj9p2fxVwViw0C2MmHAC6ZnuB+UOPQDbE89avAbYCLBkKd1sIOqSgFtRYf cVgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765355513; x=1765960313; 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=lSMdgZiYQlpcrCoz/a1I+Tk8d9M7yHxRNKGn/fSx/9c=; b=BcaDeztTP+Ap/YyGsG6acSmR/eExgKRH1i1F411YCl668n44fhiDts1qXWO3+oEdZ4 W9Gn8VHtZMVG1i1u8Ua7esmQ43FCUmGD6r9SSwdZF7RxiF0KbHt6hRbfpJS65jij2Hxz i8LmjV4rGC9E+/nRJ47kTjwQwKRhmWarCgQOdC0LaZjchvDpGX+l1miSon7toNasfx6R 5PwkCim8R9ms6QgyxE6sLEP2hz2XbD8evXRiG3nfpjiLO/iWbfJHFH336FD+ZiCo/K05 RAx/EqR4n6+KRLstyIuaTfpj/j90gm9nVGe9IO4a07yMiQhqPzVDQxgIe+6xHmXxpsPE MEUg== X-Forwarded-Encrypted: i=1; AJvYcCXpHCwjsfT8YFP44IjeZMb3BcxjalNY1/Y4QrRF3Ayp76ZyAMB+l5k1c+8wueW3JB7ccYFbqdbiM2A4ig0=@vger.kernel.org X-Gm-Message-State: AOJu0Yy2r3ZEGIY/0mGdLdSBi6mbaK7RXbWvX4A10LEpnweNDU0hb/f+ xRkRcbjzuke0ae3llfdPzO/kj7oYOtLfWjWRHuB9PSBUkqEYCSZ5zA85t4ld29DVhd4= X-Gm-Gg: AY/fxX4UekfvsNTG5vYSqSrOeRA+bkkbt4mXxhOWS57KyZiX0rqc09USya8oU0KAhMg ifs44/rz6nwwUY4RMtSwcIlfo4evzI42pyHQuyiRcGRkpiCqA+pCFlJBm8DZ5i8sdoWo+hyCiLE qmdMTTgrfdMczR7EzHHTpvnN1wAXpDItck6531OEuELjbEM9XHP18UgQph06jle7ATFHDuZ8W+Q DyhkTsEA0IOiJfm/NaXg0ssro21G7yn4s6/grCYGPeaJG4APGc9oqTdZAJILJBwd8gpgseiP7Yb mOhwu8zj1Z/sFjzOC0E0b0570JITWWwXcrw+JjyzoAxzihH51cWmziFySpY74clzzOuc8L7kget Z+d4H/MQlJYVvKiO8erFWMM3LFMymWVNPsWqdrneCzQqqjiDnW/1rWV19XuLmCRci9QqM1Lnlcv bo5dqnJiadHH+/Ig3K X-Google-Smtp-Source: AGHT+IFYDRtX5PoiZPxafkMiANC8Xf6Bj78BEbFQEysHNafXsqKHXNdBL6htv855tq3hOMwvxyT2DQ== X-Received: by 2002:a17:906:dc89:b0:b7a:1b3:5e52 with SMTP id a640c23a62f3a-b7ce8245e92mr181408966b.17.1765355513484; Wed, 10 Dec 2025 00:31:53 -0800 (PST) Received: from localhost ([2a02:8071:b783:6940:1d24:d58d:2b65:c291]) by smtp.gmail.com with UTF8SMTPSA id a640c23a62f3a-b79f4975c56sm1602897366b.33.2025.12.10.00.31.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 10 Dec 2025 00:31:53 -0800 (PST) From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= To: Akhil R , Herbert Xu , "David S. Miller" , Thierry Reding , Jonathan Hunter , Mikko Perttunen , David Airlie , Simona Vetter , Sowjanya Komatineni , Luca Ceresoli , Mauro Carvalho Chehab , Greg Kroah-Hartman Cc: linux-crypto@vger.kernel.org, linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-media@vger.kernel.org, linux-staging@lists.linux.dev Subject: [PATCH 2/2] host1x: Convert to bus methods Date: Wed, 10 Dec 2025 09:31:38 +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=3411; i=u.kleine-koenig@baylibre.com; h=from:subject:message-id; bh=FFNspWcgr6JBh3jF6KiuWIJwLT9QVchWO/Z3r4hqr+s=; b=owGbwMvMwMXY3/A7olbonx/jabUkhkxL/XeniljWpVlqZprUz387O3yFDZsen0Dv82P2G2Sm3 TlnKlbUyWjMwsDIxSArpshi37gm06pKLrJz7b/LMINYmUCmMHBxCsBEVC3Y/zu/fWz+PrXm6LS0 dE5ho5k693/XWU84d3BxsdDGBK8J1dxsNlGXf78pl87kPVPNdPVFGHN/poPqz/XF2R+y4+P+1Pm uF4y9sNcp+StnnJ+woIjkh4kejO9X8ru5rza4Jv51C38E74xrNc+9+s/5tdZ2eKV8MPe/cbB8iu cJA8ud7316C22vnJ8Va705o+iMduCiwGk7jKrzVOL++s14Lv+wt93cRPTHzfK2Ob1enG0Va8y73 AR/zb+W8Z1zSvTLS2YKRjzB/H1W97rMXDljNyk1tquedzktlBzCnO2smc3YUKHdeTDPcUruiQf6 sUVfGVMl1taKv/g0yShu35X6slxd4de/9vOe3K3QXAYA X-Developer-Key: i=u.kleine-koenig@baylibre.com; a=openpgp; fpr=0D2511F322BFAB1C1580266BE2DCDD9132669BD6 Content-Transfer-Encoding: quoted-printable The callbacks .probe(), .remove() and .shutdown() for device_drivers should go away. So migrate to bus methods. There are two differences that need addressing: - The bus remove callback returns void while the driver remove callback returns int (the actual value is ignored by the core). - The bus shutdown callback is also called for unbound devices, so an additional check for dev->driver !=3D NULL is needed. Signed-off-by: Uwe Kleine-K=C3=B6nig --- drivers/gpu/host1x/bus.c | 67 ++++++++++++++++++++-------------------- 1 file changed, 33 insertions(+), 34 deletions(-) diff --git a/drivers/gpu/host1x/bus.c b/drivers/gpu/host1x/bus.c index fd89512d4488..c0d7a9b5f07a 100644 --- a/drivers/gpu/host1x/bus.c +++ b/drivers/gpu/host1x/bus.c @@ -346,6 +346,36 @@ static int host1x_device_uevent(const struct device *d= ev, return 0; } =20 +static int host1x_device_probe(struct device *dev) +{ + struct host1x_driver *driver =3D to_host1x_driver(dev->driver); + struct host1x_device *device =3D to_host1x_device(dev); + + if (driver->probe) + return driver->probe(device); + + return 0; +} + +static void host1x_device_remove(struct device *dev) +{ + struct host1x_driver *driver =3D to_host1x_driver(dev->driver); + struct host1x_device *device =3D to_host1x_device(dev); + + if (driver->remove) + driver->remove(device); +} + +static void host1x_device_shutdown(struct device *dev) +{ + struct host1x_driver *driver =3D to_host1x_driver(dev->driver); + struct host1x_device *device =3D to_host1x_device(dev); + + if (dev->driver && driver->shutdown) + driver->shutdown(device); +} + + static const struct dev_pm_ops host1x_device_pm_ops =3D { .suspend =3D pm_generic_suspend, .resume =3D pm_generic_resume, @@ -359,6 +389,9 @@ const struct bus_type host1x_bus_type =3D { .name =3D "host1x", .match =3D host1x_device_match, .uevent =3D host1x_device_uevent, + .probe =3D host1x_device_probe, + .remove =3D host1x_device_remove, + .shutdown =3D host1x_device_shutdown, .pm =3D &host1x_device_pm_ops, }; =20 @@ -611,37 +644,6 @@ int host1x_unregister(struct host1x *host1x) return 0; } =20 -static int host1x_device_probe(struct device *dev) -{ - struct host1x_driver *driver =3D to_host1x_driver(dev->driver); - struct host1x_device *device =3D to_host1x_device(dev); - - if (driver->probe) - return driver->probe(device); - - return 0; -} - -static int host1x_device_remove(struct device *dev) -{ - struct host1x_driver *driver =3D to_host1x_driver(dev->driver); - struct host1x_device *device =3D to_host1x_device(dev); - - if (driver->remove) - driver->remove(device); - - return 0; -} - -static void host1x_device_shutdown(struct device *dev) -{ - struct host1x_driver *driver =3D to_host1x_driver(dev->driver); - struct host1x_device *device =3D to_host1x_device(dev); - - if (driver->shutdown) - driver->shutdown(device); -} - /** * host1x_driver_register_full() - register a host1x driver * @driver: host1x driver @@ -672,9 +674,6 @@ int host1x_driver_register_full(struct host1x_driver *d= river, =20 driver->driver.bus =3D &host1x_bus_type; driver->driver.owner =3D owner; - driver->driver.probe =3D host1x_device_probe; - driver->driver.remove =3D host1x_device_remove; - driver->driver.shutdown =3D host1x_device_shutdown; =20 return driver_register(&driver->driver); } --=20 2.47.3