Lines Matching defs:firmware
3 * Raspberry Pi driver for firmware controlled clocks
6 * the system clocks we've had to factor out 'pllb' as the firmware 'owns' it.
8 * over-temperature and under-voltage protections provided by the firmware.
19 #include <soc/bcm2835/raspberrypi-firmware.h>
46 struct rpi_firmware *firmware;
92 * HDMI connector, the firmware will skip the HSM
130 * Structure of the message passed to Raspberry Pi's firmware in order to
136 * use the firmware interface as the firmware ultimately takes care of
140 * For more information on the firmware interface check:
141 * https://github.com/raspberrypi/firmware/wiki/Mailbox-property-interface
149 static int raspberrypi_clock_property(struct rpi_firmware *firmware,
160 ret = rpi_firmware_property(firmware, tag, &msg, sizeof(msg));
177 ret = raspberrypi_clock_property(rpi->firmware, data,
195 ret = raspberrypi_clock_property(rpi->firmware, data,
212 ret = raspberrypi_clock_property(rpi->firmware, data,
229 * The firmware will do the rounding but that isn't part of
230 * the interface with the firmware, so we just do our best
279 ret = raspberrypi_clock_property(rpi->firmware, data,
288 ret = raspberrypi_clock_property(rpi->firmware, data,
340 * The firmware doesn't guarantee that the last element of
350 ret = rpi_firmware_property(rpi->firmware, RPI_FIRMWARE_GET_CLOCKS,
389 struct rpi_firmware *firmware;
396 * child of the firmware node. Handle both cases.
402 "raspberrypi,bcm2835-firmware");
404 dev_err(dev, "Missing firmware node\n");
408 firmware = devm_rpi_firmware_get(&pdev->dev, firmware_node);
410 if (!firmware)
418 rpi->firmware = firmware;
450 { .compatible = "raspberrypi,firmware-clocks" },
466 MODULE_DESCRIPTION("Raspberry Pi firmware clock driver");