I'm submitting hereby the initial code for the driver model. This is a RFC patch, please give it a spin and scream :-)
The GPIO api should now use the new approach on the sandbox target. There's also "dm" command, that allows dumping the driver tree. Marek Vasut (5): dm: sandbox: Add necessary linker sections dm: sandbox: Add necessary GD sections dm: REMOVE: sandbox binding experiment dm: gpio: Add draft GPIO core and convert sandbox to use it dm: Add "dm dump" command Pavel Herrmann (2): dm: Add skeleton support for cores and drivers dm: add dummy demo driver and core Makefile | 3 + arch/sandbox/cpu/u-boot.lds | 35 ++- arch/sandbox/include/asm/global_data.h | 9 + arch/sandbox/lib/board.c | 25 ++ common/dm/Makefile | 40 ++++ common/dm/core.c | 150 ++++++++++++ common/dm/debug.c | 106 +++++++++ common/dm/driver.c | 404 ++++++++++++++++++++++++++++++++ common/dm/lists.c | 138 +++++++++++ common/dm/root.c | 103 ++++++++ common/dm/tree.c | 164 +++++++++++++ common/dm/tree.h | 31 +++ drivers/demo/Makefile | 42 ++++ drivers/demo/core.c | 236 +++++++++++++++++++ drivers/demo/demo.c | 67 ++++++ drivers/gpio/Makefile | 2 + drivers/gpio/core.c | 365 +++++++++++++++++++++++++++++ drivers/gpio/sandbox.c | 58 ++++- include/asm-generic/gpio.h | 19 ++ include/configs/sandbox.h | 2 + include/dm/core_numbering.h | 35 +++ include/dm/debug.h | 33 +++ include/dm/demo.h | 37 +++ include/dm/manager.h | 57 +++++ include/dm/options.h | 46 ++++ include/dm/structures.h | 154 ++++++++++++ 26 files changed, 2352 insertions(+), 9 deletions(-) create mode 100644 common/dm/Makefile create mode 100644 common/dm/core.c create mode 100644 common/dm/debug.c create mode 100644 common/dm/driver.c create mode 100644 common/dm/lists.c create mode 100644 common/dm/root.c create mode 100644 common/dm/tree.c create mode 100644 common/dm/tree.h create mode 100644 drivers/demo/Makefile create mode 100644 drivers/demo/core.c create mode 100644 drivers/demo/demo.c create mode 100644 drivers/gpio/core.c create mode 100644 include/dm/core_numbering.h create mode 100644 include/dm/debug.h create mode 100644 include/dm/demo.h create mode 100644 include/dm/manager.h create mode 100644 include/dm/options.h create mode 100644 include/dm/structures.h -- 1.7.10.4 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot