summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorCaleb Connolly <[email protected]>2025-04-11 14:47:38 +0200
committerTom Rini <[email protected]>2025-05-02 08:38:02 -0600
commit993a9db918af451c68851522c8770e582b717629 (patch)
treebb2407b5b6ee6d5a263b4262506b0247ee511c30 /include
parent45acd9d2d4ec84775d09c73aab75a4fd989beb41 (diff)
event: signal when livetree has been built
OF_LIVE offers a variety of benefits, one of them being that the live tree can be modified without caring about the underlying FDT. This is particularly valuable for working around U-Boot limitations like lacking USB superspeed support on Qualcomm platforms, no runtime OTG, or peripherals like the sdcard being broken (and displaying potentially worrying error messages). Add an event to signal when the live tree has been built so that we can apply fixups to it directly before devices are bound. Signed-off-by: Caleb Connolly <[email protected]>
Diffstat (limited to 'include')
-rw-r--r--include/event.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/include/event.h b/include/event.h
index 75141a192a4..1d267f1d105 100644
--- a/include/event.h
+++ b/include/event.h
@@ -154,6 +154,15 @@ enum event_t {
EVT_MAIN_LOOP,
/**
+ * @EVT_OF_LIVE_BUILT:
+ * This event is triggered immediately after the live device tree has been
+ * built. This allows for machine specific fixups to be done to the live tree
+ * (like disabling known-unsupported devices) before it is used. This
+ * event is only available if OF_LIVE is enabled and is only used after relocation.
+ */
+ EVT_OF_LIVE_BUILT,
+
+ /**
* @EVT_COUNT:
* This constants holds the maximum event number + 1 and is used when
* looping over all event classes.
@@ -203,6 +212,15 @@ union event_data {
oftree tree;
struct bootm_headers *images;
} ft_fixup;
+
+ /**
+ * struct event_of_live_built - livetree has been built
+ *
+ * @root: The root node of the live device tree
+ */
+ struct event_of_live_built {
+ struct device_node *root;
+ } of_live_built;
};
/**