[PATCH v2 3/4] firmware: raspberrypi: Add reboot mode support
Gregor Herburger
gregor.herburger at linutronix.de
Thu Jul 2 00:50:28 PDT 2026
Hi Stefan,
On Tue, Jun 30, 2026 at 11:57:49PM +0200, Stefan Wahren wrote:
> Hi Gregor,
>
> Am 30.06.26 um 22:59 schrieb Gregor Herburger:
> > +static int rpi_firmware_reboot_mode_write(struct reboot_mode_driver *reboot,
> > + unsigned int magic)
> > +{
> > + struct rpi_firmware *fw = container_of(reboot, struct rpi_firmware,
> > + reboot_mode);
> > + int ret = 0;
> > +
> > + if (magic)
> > + ret = rpi_firmware_property(fw, RPI_FIRMWARE_SET_REBOOT_FLAGS,
> > + &magic, sizeof(magic));
> I think it's more elegant to check for !magic and return 0 directly. So we
> can drop "ret".
> > +
> > + return ret;
> > +}
> > +
> > static int rpi_firmware_probe(struct platform_device *pdev)
> > {
> > struct device *dev = &pdev->dev;
> > struct rpi_firmware *fw;
> > + int ret;
> > /*
> > * Memory will be freed by rpi_firmware_delete() once all users have
> > @@ -306,6 +323,12 @@ static int rpi_firmware_probe(struct platform_device *pdev)
> > rpi_register_hwmon_driver(dev, fw);
> > rpi_register_clk_driver(dev);
> > + fw->reboot_mode.dev = dev;
> > + fw->reboot_mode.write = rpi_firmware_reboot_mode_write;
> > + ret = devm_reboot_mode_register(dev, &fw->reboot_mode);
> > + if (ret)
> > + dev_err(dev, "Failed to register reboot mode: %d\n", ret);
> I suggest to move all of this code into a function called
> rpi_register_reboot_mode() ?
>
Ok, will do. Will wait a bit for more feedback and add this to the next version.
--
Gregor Herburger
Linutronix GmbH | Bahnhofstrasse 3 | D-88690 Uhldingen-Mühlhofen
Phone: +49 7556 25 999 35; Fax.: +49 7556 25 999 99
Hinweise zum Datenschutz finden Sie hier (Informations on data privacy
can be found here): https://linutronix.de/legal/data-protection.php
Linutronix GmbH | Firmensitz (Registered Office): Uhldingen-Mühlhofen |
Registergericht (Registration Court): Amtsgericht Freiburg i.Br., HRB700
806 | Geschäftsführer (Managing Directors): Dr. Wilfried Wessner,
Katharina Kopp, Alexander Gieringer
More information about the linux-arm-kernel
mailing list