[PATCH 00/18] Barebox Deep-Probe
Marco Felsch
m.felsch at pengutronix.de
Mon Sep 28 11:50:23 EDT 2020
Hi all,
this series is our approach to address the EPROBE_DEFER and initcall
shifting problem. I skip the deep-probe explanation here and instead
refer to the detailed commit message of patch 15.
Patche 1-11:
- Fixes and cleanups I found during the development of deep-probe
Patch 12-14:
- Preliminary for the deep-probe mechanism
Patch 15:
- The interesting part of this series. This patch implements the
deep-probe mechanism and adds helpers to make your board deep-probe
aware.
Patch 16-17:
- Adds STM32MP1 and i.MX architecture specific deep-probe code. For
those architectures this means that we need to populate the
memory-controller.
Patch 18:
- Convert the sabrelite board to use the deep_probe mechanism. This can
be used as example for others :)
Comments & testers are welcome :)
PS:
This series is based on Sascha's commit
http://lists.infradead.org/pipermail/barebox/2020-September/033979.html.
You need to apply this one before applying this series.
Regards,
Marco
Lucas Stach (1):
of: base: move memory init from DT to initcall
Marco Felsch (17):
video: ssd1307fb: fix VBAT supply id
ARM: boards: mx6-sabrelite: [cosmetic] make use of IMX_GPIO_NR
drivers: gpio: treewide: [cosmetic] use register_driver_macros
ARM: mx6-sabrelite: remove obsolete sabrelite_mem_init()
spi: core: don't ignore register_device failures
regulator: improve of_regulator_register error handling
regulator: test of_regulator_register input before accessing it
regulator: stpmic1: fix registering missed regulators
regulator: add device reference to regulator_dev
regulator: treewide: drop local device_d reference
of: platform: fix of_amba_device_create stub return value
of: base: move clock init from of_probe() to barebox_register_of()
initcall: add of_populate_initcall
common: add initial barebox deep-probe support
ARM: i.MX: esdctl: add deep-probe support
ARM: stm32mp: ddrctrl: add deep-probe support
ARM: boards: mx6-sabrelite: add deep-probe support
.../boards/freescale-mx6-sabrelite/board.c | 56 +++++-----
arch/arm/mach-imx/esdctl.c | 16 ++-
arch/arm/mach-stm32mp/ddrctrl.c | 15 ++-
common/Makefile | 1 +
common/deep-probe.c | 39 +++++++
drivers/base/driver.c | 11 +-
drivers/clk/clk.c | 5 +
drivers/gpio/gpio-ath79.c | 7 +-
drivers/gpio/gpio-davinci.c | 7 +-
drivers/gpio/gpio-digic.c | 7 +-
drivers/gpio/gpio-dw.c | 7 +-
drivers/gpio/gpio-generic.c | 7 +-
drivers/gpio/gpio-imx.c | 8 +-
drivers/gpio/gpio-jz4740.c | 7 +-
drivers/gpio/gpio-malta-fpga-i2c.c | 7 +-
drivers/gpio/gpio-mpc8xxx.c | 7 +-
drivers/gpio/gpio-mxs.c | 8 +-
drivers/gpio/gpio-omap.c | 7 +-
drivers/gpio/gpio-stmpe.c | 7 +-
drivers/gpio/gpio-tegra.c | 7 +-
drivers/gpio/gpio-vf610.c | 7 +-
drivers/i2c/i2c.c | 6 +
drivers/of/base.c | 28 ++++-
drivers/of/platform.c | 103 +++++++++++++++++-
drivers/regulator/anatop-regulator.c | 1 +
drivers/regulator/bcm2835.c | 24 ++--
drivers/regulator/core.c | 12 ++
drivers/regulator/fixed.c | 1 +
drivers/regulator/stm32-pwr.c | 7 +-
drivers/regulator/stpmic1_regulator.c | 8 +-
drivers/reset/core.c | 5 +
drivers/spi/spi.c | 6 +-
drivers/video/ssd1307fb.c | 2 +-
include/asm-generic/barebox.lds.h | 1 +
include/deep-probe.h | 17 +++
include/init.h | 10 +-
include/of.h | 37 ++++++-
include/regulator.h | 2 +
38 files changed, 357 insertions(+), 156 deletions(-)
create mode 100644 common/deep-probe.c
create mode 100644 include/deep-probe.h
--
2.20.1
More information about the barebox
mailing list