
On Tue, 19 Mar 2024 at 20:15, Caleb Connolly caleb.connolly@linaro.org wrote:
Hi Sumit,
On 19/03/2024 13:49, Sumit Garg wrote:
Hi Caleb,
On Tue, 19 Mar 2024 at 17:52, Caleb Connolly caleb.connolly@linaro.org wrote:
We don't support USB super-speed in U-Boot yet, we lack the SS PHY drivers, however from my testing even with a PHY driver there seem to be other issues when talking to super-speed peripherals.
In pursuit of maintaining upstream DT compatibility,
I can understand the reasoning behind this but since we enable these fixups for every Qcom platform it may turn out to be counter productive. There can be embedded use-cases where bootup times have stringent requirements. Also, depending upon CPU speed/freq the add-on times due to these can be significant.
I have measured this on a few different boards:
On DB410c, the slowest board we currently support
- of_live_build took 7228us
- Fixing up USB nodes took 131us
- Fixing up power domains took 88us
On RB1 (the slowest new platform with a QCM2290 SoC)
- of_live_build took 2078us
- Fixing up USB nodes took 39us
- Fixing up power domains took 27us
The time taken initially to build the livetree is likely made back as it is much much faster to query than the flat tree (as you can see, walking every single node takes <100us on db410c). I took some rough measurements of the boot-to-console time on sdm845 (see the "enable livetree" patch) and basically concluded that the delta between live and flat trees is within the margin of error.
If a specific board for whatever reason wants to avoid using OF_LIVE then I'm fine with that, db410c isn't using it for example.
Okay that's fair. Let's try this approach and see if it pans out well.
-Sumit