[PATCH v3 0/7] support overlays to the barebox live tree
Sascha Hauer
sha at pengutronix.de
Thu Mar 16 01:58:38 PDT 2023
On Wed, Mar 15, 2023 at 05:09:47PM +0100, Michael Riesch wrote:
> Hi Sascha,
>
> On 3/10/23 10:42, Sascha Hauer wrote:
> > Support for applying a device tree overlay to the barebox live tree
> > is already present. This series adds a few missing pieces:
> >
> > - add support for applying overlays to the live tree from the command
> > line
> > - add support for adding new I2C/SPI devices via overlays
> > - add Makefile magic to build dtbo files and dtbo.o files to include
> > into the barebox binary from dtso files
> >
> > Changes since v2:
> > - Don't build compressed dtbo files
> > - Do not build overlays for PBL
> > - rename symbols to __dtbo_ to avoid possible name clashes
> >
> > Changes since v1:
> > - add a device_rescan() static inline wrapper
> > - add missing call to of_i2c_register_devices() in i2c_add_numbered_adapter()
> > - replace device_detect with device_rescan in of_device_create_on_demand()
> >
> > Sascha Hauer (7):
> > kbuild: Add target to build dtb overlay files
> > driver: Add rescan hook to struct device
> > i2c: implement rescan
> > spi: Directly register SPI device
> > spi: reduce scope of 'chip'
> > spi: implement rescan
> > of_overlay: Add option to apply overlay to live tree
> >
> > commands/of_overlay.c | 38 ++++++++++++++++++++++++++++++++++----
> > drivers/i2c/i2c.c | 24 +++++++++---------------
> > drivers/of/platform.c | 12 +++++-------
> > drivers/spi/spi.c | 29 ++++++++++++++++++++++++-----
> > include/driver.h | 6 ++++++
> > scripts/Makefile.build | 2 ++
> > scripts/Makefile.lib | 10 +++++++++-
> > scripts/gen-dtbo-s | 14 ++++++++++++++
> > 8 files changed, 103 insertions(+), 32 deletions(-)
> > create mode 100755 scripts/gen-dtbo-s
> >
>
> With this series I can apply a device tree overlay, but a node with a
> "fixed-clock" does not lead to a corresponding clock showing up in clk_dump.
>
> Any idea what went wrong here?
The fixed-clock is initialized with CLK_OF_DECLARE which results in a
linker list which is iterated over in of_clk_init() which is called
in an initcall during barebox startup.
The clocks registered via CLK_OF_DECLARE do not have a device associated
with them. The clocks also do not have a link to the device node they
provide the clock for, also the device node doesn't have a link to the
clock. This means we currently have no idea whether there already is
a clock registered for a particular node or if the node has just been
added by an overlay. There seems to be some work necessary to get this
working.
Sascha
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the barebox
mailing list