public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v2 0/29] Add additional core driver model features
@ 2014-07-09  3:37 Simon Glass
  2014-07-09  3:37 ` [U-Boot] [PATCH v2 01/29] dm: gpio: Don't use the driver model uclass for SPL Simon Glass
                   ` (28 more replies)
  0 siblings, 29 replies; 44+ messages in thread
From: Simon Glass @ 2014-07-09  3:37 UTC (permalink / raw)
  To: u-boot

This series includes a number of base driver model enhancements, mostly
targeted at pre-relocation and to enable buses to be easily implemented.

With the device tree, child nodes for buses can now be scanned to create
child devices, and bus-related information about each child can be
stored. Children can be numbered as a core driver model feature in U-Boot
(e.g. SPI bus 0 chip select 3).

Driver model now supports operation prior to relocation, assuming a
suitable malloc() implementation is available.

Several changes are added to permit driver model to be available early
after relocation, since we are unable to access any device until driver
model is ready.

This series is available at u-boot-dm.git branch 'working'.

Changes in v2:
- Remove change to board/rbc823/kbd.c, since it has been deleted
- Reformat commit message slightly
- Remove changes to deleted board/netphone/phone_console.c board/rbc823/kbd.c
- Rename struct device to struct udevice
- Update test output in doc/driver-model/README.txt
- Minor reword to comment for dm_init_and_scan()
- Return -ENODEV instead of -1 on error
- Improve wording in commit message
- Improve wording in commit message
- Expand series to include all driver-model-required changes

Simon Glass (29):
  dm: gpio: Don't use the driver model uclass for SPL
  dm: Use an explicit expect value in core tests
  stdio: Remove redundant code around stdio_register() calls
  stdio: Pass device pointer to stdio methods
  dm: Make sure that the root device is probed
  dm: Provide a way to shut down driver model
  sandbox: Remove all drivers before exit
  dm: Allow drivers to be marked 'before relocation'
  dm: Support driver model prior to relocation
  stdio: Provide functions to add/remove devices using stdio_dev
  console: Remove vprintf() optimisation for sandbox
  Add a flag indicating when the serial console is ready
  dm: Move uclass error checking/probing into a function
  fdt: Add a function to get the alias sequence of a node
  dm: Move device display into its own function
  dm: Avoid activating devices in 'dm uclass' command
  dm: Introduce device sequence numbering
  dm: Display the sequence number for each device
  dm: Allow a device to be found by its FDT offset
  dm: Avoid accessing uclasses before they are ready
  fdt: Add a function to get the node offset of an alias
  dm: Tidy up some header file comments
  dm: Provide a function to scan child FDT nodes
  dm: Add functions to access a device's children
  dm: Introduce per-child data for devices
  dm: Add child_pre_probe() and child_post_remove() methods
  dm: Improve errors and warnings in lists_bind_fdt()
  dm: Add dm_scan_other() to locate board-specific devices
  dm: Give the demo uclass a name

 arch/blackfin/cpu/jtag-console.c  |  10 +-
 arch/powerpc/cpu/mpc512x/serial.c |  10 +-
 arch/powerpc/cpu/mpc8xx/video.c   |   6 +-
 arch/sandbox/cpu/cpu.c            |   4 +
 arch/x86/lib/video.c              |   8 +-
 board/bf527-ezkit/video.c         |  10 --
 board/bf548-ezkit/video.c         |  10 --
 board/cm-bf548/video.c            |  10 --
 board/mpl/common/kbd.c            |   6 +-
 board/mpl/common/kbd.h            |   6 +-
 board/mpl/pati/pati.c             |   8 +-
 board/nokia/rx51/rx51.c           |   6 +-
 common/board_f.c                  |  16 +++
 common/board_r.c                  |  25 +---
 common/cmd_log.c                  |  11 +-
 common/console.c                  |  24 ++--
 common/lcd.c                      |  14 ++-
 common/stdio.c                    |  66 ++++++++---
 common/usb_kbd.c                  |   6 +-
 doc/driver-model/README.txt       | 216 +++++++++++++++++++++++++++++++---
 drivers/core/device.c             | 169 +++++++++++++++++++++++++-
 drivers/core/lists.c              |  22 +++-
 drivers/core/root.c               |  79 ++++++++++---
 drivers/core/uclass.c             | 135 ++++++++++++++++++++-
 drivers/demo/demo-uclass.c        |   1 +
 drivers/gpio/Makefile             |   2 +
 drivers/input/cros_ec_keyb.c      |   6 +-
 drivers/input/i8042.c             |   4 +-
 drivers/input/keyboard.c          |   6 +-
 drivers/input/tegra-kbc.c         |   6 +-
 drivers/misc/cbmem_console.c      |   6 +-
 drivers/net/netconsole.c          |  10 +-
 drivers/serial/serial.c           |  55 ++++++++-
 drivers/serial/usbtty.c           |   8 +-
 drivers/video/cfb_console.c       |   8 +-
 include/asm-generic/global_data.h |   4 +-
 include/common.h                  |   5 +
 include/configs/ELPPC.h           |   4 +-
 include/configs/MHPC.h            |   4 +-
 include/configs/jadecpu.h         |   4 +-
 include/configs/nokia_rx51.h      |   5 +-
 include/dm/device-internal.h      |   6 +-
 include/dm/device.h               | 120 ++++++++++++++++++-
 include/dm/lists.h                |   2 +-
 include/dm/platdata.h             |  10 +-
 include/dm/root.h                 |  61 +++++++++-
 include/dm/test.h                 |  22 ++++
 include/dm/uclass-id.h            |   3 +-
 include/dm/uclass-internal.h      |  23 ++++
 include/dm/uclass.h               |  49 +++++++-
 include/fdtdec.h                  |  29 +++++
 include/i8042.h                   |   6 +-
 include/stdio_dev.h               |  17 ++-
 include/video.h                   |   8 +-
 lib/fdtdec.c                      |  61 ++++++++++
 test/dm/Makefile                  |   1 +
 test/dm/bus.c                     | 242 ++++++++++++++++++++++++++++++++++++++
 test/dm/cmd_dm.c                  |  35 ++++--
 test/dm/core.c                    |  64 ++++++++--
 test/dm/test-driver.c             |  11 ++
 test/dm/test-fdt.c                | 164 ++++++++++++++++++++++----
 test/dm/test-main.c               |   4 +-
 test/dm/test.dts                  |  43 ++++++-
 63 files changed, 1714 insertions(+), 282 deletions(-)
 create mode 100644 test/dm/bus.c

-- 
2.0.0.526.g5318336

^ permalink raw reply	[flat|nested] 44+ messages in thread

end of thread, other threads:[~2014-07-19  3:22 UTC | newest]

Thread overview: 44+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-09  3:37 [U-Boot] [PATCH v2 0/29] Add additional core driver model features Simon Glass
2014-07-09  3:37 ` [U-Boot] [PATCH v2 01/29] dm: gpio: Don't use the driver model uclass for SPL Simon Glass
2014-07-09  3:37 ` [U-Boot] [PATCH v2 02/29] dm: Use an explicit expect value in core tests Simon Glass
2014-07-09  3:37 ` [U-Boot] [PATCH v2 03/29] stdio: Remove redundant code around stdio_register() calls Simon Glass
2014-07-10 23:23   ` Marek Vasut
2014-07-13 16:13     ` Simon Glass
2014-07-09  3:37 ` [U-Boot] [PATCH v2 04/29] stdio: Pass device pointer to stdio methods Simon Glass
2014-07-10 23:26   ` Marek Vasut
2014-07-11  4:29     ` Simon Glass
2014-07-09  3:37 ` [U-Boot] [PATCH v2 05/29] dm: Make sure that the root device is probed Simon Glass
2014-07-09  3:37 ` [U-Boot] [PATCH v2 06/29] dm: Provide a way to shut down driver model Simon Glass
2014-07-09  3:37 ` [U-Boot] [PATCH v2 07/29] sandbox: Remove all drivers before exit Simon Glass
2014-07-09  3:37 ` [U-Boot] [PATCH v2 08/29] dm: Allow drivers to be marked 'before relocation' Simon Glass
2014-07-10 23:29   ` Marek Vasut
2014-07-13 18:38     ` Simon Glass
2014-07-09  3:37 ` [U-Boot] [PATCH v2 09/29] dm: Support driver model prior to relocation Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 10/29] stdio: Provide functions to add/remove devices using stdio_dev Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 11/29] console: Remove vprintf() optimisation for sandbox Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 12/29] Add a flag indicating when the serial console is ready Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 13/29] dm: Move uclass error checking/probing into a function Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 14/29] fdt: Add a function to get the alias sequence of a node Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 15/29] dm: Move device display into its own function Simon Glass
2014-07-10 23:33   ` Marek Vasut
2014-07-11  4:27     ` Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 16/29] dm: Avoid activating devices in 'dm uclass' command Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 17/29] dm: Introduce device sequence numbering Simon Glass
2014-07-09 13:53   ` Jon Loeliger
2014-07-19  3:22     ` Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 18/29] dm: Display the sequence number for each device Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 19/29] dm: Allow a device to be found by its FDT offset Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 20/29] dm: Avoid accessing uclasses before they are ready Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 21/29] fdt: Add a function to get the node offset of an alias Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 22/29] dm: Tidy up some header file comments Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 23/29] dm: Provide a function to scan child FDT nodes Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 24/29] dm: Add functions to access a device's children Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 25/29] dm: Introduce per-child data for devices Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 26/29] dm: Add child_pre_probe() and child_post_remove() methods Simon Glass
2014-07-15  8:26   ` Pavel Herrmann
2014-07-17  5:41     ` Simon Glass
2014-07-17  7:09       ` Pavel Herrmann
2014-07-17 15:20         ` Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 27/29] dm: Improve errors and warnings in lists_bind_fdt() Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 28/29] dm: Add dm_scan_other() to locate board-specific devices Simon Glass
2014-07-09  3:38 ` [U-Boot] [PATCH v2 29/29] dm: Give the demo uclass a name Simon Glass

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox