aboutsummaryrefslogtreecommitdiff
path: root/include/dm
diff options
context:
space:
mode:
authorSimon Glass2021-03-15 17:25:36 +1300
committerSimon Glass2021-03-26 17:03:09 +1300
commitab933d802643ca51d276f0f449921a047126f8a1 (patch)
treed984baab5d4daa7057bdfc281cb693db6468500d /include/dm
parent95a5825f3134ff47f1e0cf37b4014b5c2e2027b5 (diff)
dm: core: Create a struct for device runtime info
At present when driver model needs to change a device it simply updates the struct udevice structure. But with of-platdata-inst most of the fields are not modified at runtime. In fact, typically only the flags need to change. For systems running SPL from read-only memory it is convenient to separate out the runtime information, so that the devices don't need to be copied before being used. Create a new udevice_rt table, similar to the existing driver_rt. For now it just holds the flags, although they are not used in this patch. Add a new Kconfig for the driver_rt data, since this is not needed when of-platdata-inst is used. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/dm')
-rw-r--r--include/dm/device.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/include/dm/device.h b/include/dm/device.h
index 9183356468f..8e16f2ea497 100644
--- a/include/dm/device.h
+++ b/include/dm/device.h
@@ -190,6 +190,21 @@ struct udevice {
#endif
};
+/**
+ * udevice_rt - runtime information set up by U-Boot
+ *
+ * This is only used with OF_PLATDATA_RT
+ *
+ * There is one of these for every udevice in the linker list, indexed by
+ * the udevice_info idx value.
+ *
+ * @flags_: Flags for this device DM_FLAG_... (do not access outside driver
+ * model)
+ */
+struct udevice_rt {
+ u32 flags_;
+};
+
/* Maximum sequence number supported */
#define DM_MAX_SEQ 999