On Thu, 2020-11-12 at 18:25 +0100, Bartosz Golaszewski wrote:
On Thu, Nov 12, 2020 at 5:44 PM Nicolas Saenz Julienne
[off-list ref] wrote:
quoted
Itroduce devm_rpi_firmware_get(), it'll simplify the firmware handling
for most consumers.
Suggested-by: Bartosz Golaszewski <redacted>
Signed-off-by: Nicolas Saenz Julienne <redacted>
---
Changes since v2:
- Introduce devm_rpi_firmware_get()
drivers/firmware/raspberrypi.c | 31 +++++++++++++++++++++-
include/soc/bcm2835/raspberrypi-firmware.h | 8 ++++++
2 files changed, 38 insertions(+), 1 deletion(-)
diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c
index 438e17074a97..4ab2dfdc82ad 100644
--- a/drivers/firmware/raspberrypi.c
+++ b/drivers/firmware/raspberrypi.c
@@ -237,10 +237,17 @@ static void rpi_firmware_delete(struct kref *kref)
kfree(fw);
}
-void rpi_firmware_put(struct rpi_firmware *fw)
+static void __rpi_firmware_put(void *data)
{
The '__' prefix is very vague and usually used for unlocked variants
of functions. The casting to void * in rpi_firmware_put() is also
unneeded. I would much prefer that the devres release callback be
called devm_rpi_firmware_put() and that it call rpi_firmware_put()
which would then call kref_put().
Yes, that's better. I'll change it.
Regards,
Nicolas