firmware: tegra: Changes for v6.13-rc1

This contains a revert for a patch that I had modified before applying
 and the author didn't agree with the change.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmcbscAACgkQ3SOs138+
 s6G9WQ//Q9AOWvA30lYYoR4ZZdWjAiMBl2+fcPrDUL2q65clSrsSAMWWiGUQM+6n
 i29fcNNQcfS4cAmJeVe0xnGZbHhxNt4QNMjcuRl/WwnYUJnqK0WZjVl0o0ZSRcI9
 qUQ7pU91M1fwsoR7NwfoTCCwbGvLzy3X9Rp9kxeu5NPsFdBuvgg/XTV5MvTiUd4u
 26jhsGIVujuo8EbkeTr3XNfUgkBgzNSxmyla/c0hHV3imUiWkLPsDwxu/6RYyUkl
 zYTrVRfuPsJHqvAcDf3gohPWBxyl8cVurQcTAjAGKNSug9Z0Lpb6hTYRIBq6Rw6x
 fp1sY2MpAbs5CNV23WZO7jU7th9KZHyK+zwgcWDlWqcs6cndo1m6W/h2iO0y3bXa
 ZBBaz+lpPuUCqFOJ6c9wZKQO6Iw41y43PQQRNhAeO4zmyNTh/8mkQhSs5FNtm3/i
 gB1X9a8Q47oygZGIw0WxqHfqrAgHtUE5GWtG5g7yExPCnUmhR0h+mptWoAlJz5BV
 TOrG04SKTLz3fvQkK3eMQkz1K2rGt9YnvxJ3AFbzHGYQN7nziwa8UZ1Lvv7mtHbK
 Gl+WFWKtUSXUVot2ThWrD2lrvMf9c3kPDKSC9VKYHk/IUBdWD0DkmwBKWTtsqI6Z
 oPciokvPS80xYX/RwOK4o2eY2f0b+eCUEM3E7aqtXy/EwHdAruo=
 =mwM+
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmck/g0ACgkQYKtH/8kJ
 UifwdQ/9HMWb3IRTwnU53Qehqzsbp0e9FZrnX8H0MZPUNCCVR4W/vY8WkoT8x4BB
 LGbQZ6bKrc0QJPhycSZxD70skT2Zdc0FwqCBWt+qjHQRwPddV8Wmv+akfQKhpWoD
 14enawRtxHGgpXE2aI0oV0lTwAi4gceyd5lkUfWqa0eaj8uo31QlnVfx6Flw5Emy
 thWu5HHOC7snW2Bx1Eu9jPmfSUUujGw+27XrOXNfhyn/Urf3Q13MpNCbPh6/J0d9
 dRJeLsQtbEKyffp6vpD0IxsIeEy/tNeN/N37Hpei5qBpejJfwLq5hiAZglE6jWT9
 X9pXA6kKTHsslh++f3RYotYt26lHdy/r55O9Tn3DyVVcDk5LAoIyIUtEdQKQfSHa
 te3d53bzTaA/MrZfd1XnY20YDcFNX4ZzjVWup9VBFYryLLGIpusEda0Fr/fWKd4G
 xCwqxPaJJE/MBv6b/PKIgo/45KeCOTW/c2jXPL0LzO3Pa5sSuuUaR5xJjw1RcCgX
 LxHQlYhQUqpibWEFhEkaP0eqCQLcwIitRVjtapbNO29JySVSI/rB0+tPf7AjVWoX
 OchKUsZ48HKCNAutRjC+NGnjDNe/J6ch5zR3/t0anA0lQ6O74mN8r8i1B7WiZOai
 ptoktmg9yjDiecTaIsrftkUyzsquJFcCcSX/3ek0R5vmc6MKShI=
 =b7ib
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-6.13-firmware' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/drivers

firmware: tegra: Changes for v6.13-rc1

This contains a revert for a patch that I had modified before applying
and the author didn't agree with the change.

* tag 'tegra-for-6.13-firmware' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  Revert "firmware: tegra: bpmp: Use scoped device node handling to simplify error paths"

Link: https://lore.kernel.org/r/20241025150555.2558582-1-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2024-11-01 17:13:00 +01:00
commit 2570a24494

View File

@ -3,7 +3,6 @@
* Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved.
*/
#include <linux/cleanup.h>
#include <linux/clk/tegra.h>
#include <linux/genalloc.h>
#include <linux/mailbox_client.h>
@ -35,24 +34,29 @@ channel_to_ops(struct tegra_bpmp_channel *channel)
struct tegra_bpmp *tegra_bpmp_get(struct device *dev)
{
struct device_node *np __free(device_node);
struct platform_device *pdev;
struct tegra_bpmp *bpmp;
struct device_node *np;
np = of_parse_phandle(dev->of_node, "nvidia,bpmp", 0);
if (!np)
return ERR_PTR(-ENOENT);
pdev = of_find_device_by_node(np);
if (!pdev)
return ERR_PTR(-ENODEV);
if (!pdev) {
bpmp = ERR_PTR(-ENODEV);
goto put;
}
bpmp = platform_get_drvdata(pdev);
if (!bpmp) {
bpmp = ERR_PTR(-EPROBE_DEFER);
put_device(&pdev->dev);
return ERR_PTR(-EPROBE_DEFER);
goto put;
}
put:
of_node_put(np);
return bpmp;
}
EXPORT_SYMBOL_GPL(tegra_bpmp_get);