[PATCH] Allow configuration from the devicetree
Sascha Hauer
s.hauer at pengutronix.de
Wed Jul 10 06:51:59 EDT 2013
Currently even the devicetree enabled boards need C code to
configure where to store the environment. The following series
makes this configurable via devicetree to further reduce the
need of C code for boards.
As I often point out that the devicetree is for hardware description
rather than for configuration, the configuration is done in the
node explicitly intended for configuration: /chosen.
We add a hierarchy /chosen/barebox/ in the devicetree on which
of_platform_populate is called. This allows us to do the configuration
as regular drivers and to reuse a lot of infrastructure. Implementing
this as drivers also has the advantage that the known mechanisms can
be used to consistently change the behaviour of different boards
without breaking old boards.
Sascha
----------------------------------------------------------------
Sascha Hauer (9):
devfs: let devfs_add_partition return the new partition
of: export of_default_bus_match_table
of: partitions: factor out function to parse a single partition
cdev: introduce partition names
cdev: allow to open a struct cdev
cdev: add device_find_partition
mci: set partnames of eMMC boot partitions
Add configurability via devicetree
ARM: i.MX Datamodul edmqx6: configure environment from devicetree
Documentation/devicetree/bindings/barebox.txt | 10 ++
.../bindings/barebox/barebox,environment.txt | 24 +++
.../bindings/barebox/barebox,partition.txt | 42 +++++
arch/arm/boards/dmo-mx6-realq7/board.c | 16 --
arch/arm/configs/dmo-realq7_defconfig | 1 +
arch/arm/dts/imx6q-dmo-realq7.dts | 24 +++
arch/x86/boards/x86_generic/generic_pc.c | 6 +-
commands/partition.c | 11 +-
common/environment.c | 10 +-
common/partitions.c | 12 +-
drivers/mci/mci-core.c | 12 +-
drivers/of/Kconfig | 9 +
drivers/of/Makefile | 1 +
drivers/of/barebox.c | 191 +++++++++++++++++++++
drivers/of/of_path.c | 155 +++++++++++++++++
drivers/of/partition.c | 58 ++++---
fs/devfs-core.c | 60 +++++--
include/driver.h | 14 +-
include/of.h | 14 ++
19 files changed, 600 insertions(+), 70 deletions(-)
create mode 100644 Documentation/devicetree/bindings/barebox.txt
create mode 100644 Documentation/devicetree/bindings/barebox/barebox,environment.txt
create mode 100644 Documentation/devicetree/bindings/barebox/barebox,partition.txt
create mode 100644 drivers/of/barebox.c
create mode 100644 drivers/of/of_path.c
More information about the barebox
mailing list