summaryrefslogtreecommitdiffstats
path: root/include/asm-generic
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2014-02-26 15:59:18 -0700
committerTom Rini <trini@ti.com>2014-03-04 12:15:29 -0500
commit6494d708bfc630ac0585d5a81707442ebf578eac (patch)
tree09d66a1cd996b9843c644b8029496ddcfcdac1f5 /include/asm-generic
parent65c70539e5f1e63921a7fcb86c0ca1f838f96037 (diff)
downloadblackbird-obmc-uboot-6494d708bfc630ac0585d5a81707442ebf578eac.tar.gz
blackbird-obmc-uboot-6494d708bfc630ac0585d5a81707442ebf578eac.zip
dm: Add base driver model support
Add driver model functionality for generic board. This includes data structures and base code for registering devices and uclasses (groups of devices with the same purpose, e.g. all I2C ports will be in the same uclass). The feature is enabled with CONFIG_DM. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Pavel Herrmann <morpheus.ibis@gmail.com> Signed-off-by: Viktor Křivák <viktor.krivak@gmail.com> Signed-off-by: Tomas Hlavacek <tmshlvck@gmail.com>
Diffstat (limited to 'include/asm-generic')
-rw-r--r--include/asm-generic/global_data.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/asm-generic/global_data.h b/include/asm-generic/global_data.h
index 0de0beaa8b..707400e847 100644
--- a/include/asm-generic/global_data.h
+++ b/include/asm-generic/global_data.h
@@ -21,6 +21,8 @@
*/
#ifndef __ASSEMBLY__
+#include <linux/list.h>
+
typedef struct global_data {
bd_t *bd;
unsigned long flags;
@@ -61,6 +63,12 @@ typedef struct global_data {
unsigned long start_addr_sp; /* start_addr_stackpointer */
unsigned long reloc_off;
struct global_data *new_gd; /* relocated global data */
+
+#ifdef CONFIG_DM
+ struct device *dm_root; /* Root instance for Driver Model */
+ struct list_head uclass_root; /* Head of core tree */
+#endif
+
const void *fdt_blob; /* Our device tree, NULL if none */
void *new_fdt; /* Relocated FDT */
unsigned long fdt_size; /* Space reserved for relocated FDT */
OpenPOWER on IntegriCloud