matthewcroughan7 has quit [Write error: Connection reset by peer]
davlefou has joined #u-boot
davlefou_ has joined #u-boot
Hypfer6 has quit [Ping timeout: 260 seconds]
<marex>
matthewcroughan: maybe the timer does start from 0 when the SoC powers ON ?
<marex>
you can always try and dump the timer, then trigger soft reset, dump the timer again after reset and see if the timer did reset or only incremented by some meaningful value
<marex>
in either case, you could use that timer to figure out what is taking long, right ?
<clever>
marex: i also think the timer starts at 0
Hypfer6 has joined #u-boot
<marex>
clever: it may or may not survive reset though
<clever>
i'm pretty sure timer_get_boot_us() is just converting the timer to usec and printing it, and the numbers are basically the same for every test matthewcroughan did
<marex>
clever: I am pretty sure you could confirm or refute this hypothesis by checking the sources ... you can also directly read the timer registers ...
<clever>
yeah, its just reading cntpct_el0 and doing some fixed-point math to scale it
<clever>
matthewcroughan: i need to go get some sleep, we can continue things later
<matthewcroughan>
zzz
<matthewcroughan>
thanks :#
mmu_man has quit [Ping timeout: 272 seconds]
jclsn has quit [Ping timeout: 272 seconds]
dhruvag2000 has joined #u-boot
jclsn has joined #u-boot
KREYREN_ has joined #u-boot
umbramalison has joined #u-boot
umbramalison_alt has quit [Ping timeout: 244 seconds]
LeSpocky has quit [Ping timeout: 248 seconds]
LeSpocky has joined #u-boot
persmule has joined #u-boot
matthewcroughan has quit [Ping timeout: 240 seconds]
kevery has joined #u-boot
dhruvag2000 has quit [Quit: Connection closed for inactivity]
clamor has joined #u-boot
clamor has quit [Ping timeout: 252 seconds]
clamor has joined #u-boot
monstr has joined #u-boot
monstr has quit [Ping timeout: 252 seconds]
goliath has joined #u-boot
frieder has joined #u-boot
<sjg1>
Tartarus: Oh, sorry, yes. Fixed now. I need to move it to a proper directory instead of my devel one
mckoan|away is now known as mckoan
enok has joined #u-boot
prabhakalad has quit [Ping timeout: 244 seconds]
prabhakalad has joined #u-boot
swiftgeek has quit [Read error: Connection reset by peer]
mmu_man has joined #u-boot
enok has quit [Ping timeout: 252 seconds]
jmasson has left #u-boot [#u-boot]
sszy has joined #u-boot
derRichard has quit [Quit: Lost terminal]
mmu_man has quit [Ping timeout: 265 seconds]
<f_>
\o clever :)
prabhakalad has quit [Quit: Konversation terminated!]
enok has joined #u-boot
prabhakalad has joined #u-boot
dhruvag2000 has joined #u-boot
enok has quit [Ping timeout: 252 seconds]
wooosaiiii has quit [Remote host closed the connection]
wooosaiiii has joined #u-boot
enok has joined #u-boot
wooosaiiii has quit [Remote host closed the connection]
wooosaiiii has joined #u-boot
mmu_man has joined #u-boot
clamor has quit [Read error: Connection reset by peer]
clamor has joined #u-boot
enok71 has joined #u-boot
enok has quit [Read error: Connection reset by peer]
enok has joined #u-boot
enok71 has quit [Ping timeout: 244 seconds]
swiftgeek has joined #u-boot
rvalue has quit [Read error: Connection reset by peer]
rvalue has joined #u-boot
KREYREN_ has quit [Ping timeout: 264 seconds]
haritz has joined #u-boot
haritz has joined #u-boot
frieder has quit [Quit: Leaving]
<clever>
f_: *waves*
enok has quit [Ping timeout: 252 seconds]
enok has joined #u-boot
zsoltiv__ has quit [Ping timeout: 272 seconds]
monstr has joined #u-boot
jmasson has joined #u-boot
dhruvag2000 has quit [Quit: Connection closed for inactivity]
enok has quit [Ping timeout: 252 seconds]
<Kwiboo>
matthewcroughan: clever: your bootstage report for TPL (dram init) and SPL looks as expected for a rk3588, around 200ms for TPL and similar for SPL, what board/defconfig are you using? with generic-rk3588_defconfig on my rock-5b u-boot proper take around 680ms to cli: see https://gist.github.com/Kwiboo/60247e79caf2e73e567535d8a233ff44
<Kwiboo>
with uart pinctrl skipped in u-boot pre-reloc phase (https://patchwork.ozlabs.org/patch/1968958/), boot time is reduced by around 150ms, fdt_parent_offset() and bind/probe of pinctrl is very timeconsuming tasks in pre-reloc phase, try using similar debug printing to see what probe/bind is taking time during your boot
<Kwiboo>
for optimal boot time you should look into using falcon boot, i.e. boot linux directly from SPL (after TF-A) and fully skip U-Boot proper
jmasson has left #u-boot [#u-boot]
enok has joined #u-boot
zsoltiv_ has joined #u-boot
Stalevar has quit [Read error: Connection reset by peer]
enok has quit [Quit: enok]
enok has joined #u-boot
enok has quit [Read error: Connection reset by peer]
Stalevar has joined #u-boot
KREYREN_ has joined #u-boot
naoki has quit [Quit: naoki]
KREYREN_ has quit [Ping timeout: 264 seconds]
<Tartarus>
Sigh, coverity scan no longer emails the details on a new scan, just an HTML mail with the numbers, it looks like
wooosaiiii has quit [Remote host closed the connection]
KREYREN_ has joined #u-boot
wooosaiiii has joined #u-boot
frieder has joined #u-boot
wooosaiiii has quit [Remote host closed the connection]
wooosaiiii has joined #u-boot
Net147_ has quit [Quit: Quit]
Net147 has joined #u-boot
Net147 has quit [Changing host]
Net147 has joined #u-boot
<Tartarus>
And I really wish we had an email'able report, there's two places in the video damage series that swap {x,y},{height,width} but the rest of the code does not, so maybe it's intentional and just not glaringly obvious from the comments
<apalos>
agraf: is still in the channel Tartarus perhaps he remembers ;)
<Tartarus>
Maybe :)
<Tartarus>
And, looks like I need to maybe try out the report generator tools and start with the tutorial, sigh
goliath has quit [Quit: SIGSEGV]
matthewcroughan has joined #u-boot
<matthewcroughan>
Kwiboo: I'm using a radxa-cm5 which doesn't actually have a proper dts in u-boot yet, which I was going to try to help with at some point when I have the things I wanted to get done with this board, done
<matthewcroughan>
though I think naoki (who I see sometimes join the channel) might already have a dts for this board that isn't published yet
<matthewcroughan>
either way I'm using the rock-5c-rk3588s_defconfig modified to turn as much as possible off, and I keep trying to find more to turn off, though your messages are enlightening
<matthewcroughan>
This defconfig/dts is enough to get the SOC working with a single USB type-c
<matthewcroughan>
I wanted to try falcon mode, but I didn't get anywhere with it. I enabled falcon mode with `CONFIG_SPL_OS_BOOT` enabled, I got the message in SPL "SPL: Please implement spl_start_uboot() for your board". So I did, and then this message went away, but u-boot proper still starts running.
<matthewcroughan>
I tried putting the implementation both in arch/arm/mach-rockchip/spl.c and arch/arm/mach-rockchip/spl_common.c, both places avoid the error message suggesting to implement it, but u-boot proper still continues
<marex>
matthewcroughan: did you return 0 in spl_start_uboot() ?
<marex>
or did you return 1 ?
<marex>
look at common/spl/spl*c for the details of OS_BOOT
<matthewcroughan>
I returned 0
<matthewcroughan>
int spl_start_uboot(void) { return 0; }
KREYREN_ has quit [Remote host closed the connection]
KREYREN_ has joined #u-boot
<matthewcroughan>
Ah, "If a valid uImage is not found at the defined location, U-Boot will be booted instead." maybe that's what I'm running into
KREYREN_ has quit [Ping timeout: 264 seconds]
dsimic has quit [Ping timeout: 252 seconds]
dsimic has joined #u-boot
matthewcroughan has quit [Ping timeout: 240 seconds]
matthewcroughan has joined #u-boot
<matthewcroughan>
In order to use SPL I need to produce a fit image right?
<marex>
matthewcroughan: not necessarily, but it is the recommended format to bundle multiple components together
goliath has joined #u-boot
<matthewcroughan>
marex ah, when I try to use spl export on traditional components individually, it tells me it's not in a suitable format for bootm
<matthewcroughan>
do I have to store the results of `spl export` persistently somewhere? if so how do I do that, it's not in the doc
<matthewcroughan>
Does SPL actually support using MMC?
goliath has quit [Quit: SIGSEGV]
blackbox has quit [Ping timeout: 245 seconds]
<cambrian_invader>
yes
blackbox has joined #u-boot
<matthewcroughan>
Can anyone tell me if my understanding of falcon mode is correct
enok has joined #u-boot
<matthewcroughan>
My understanding so far is that all I have to do is get `spl export` to write to MMC (or any persistent location), and then inform SPL about this, so that it `bootm`s it on the next boot?
slobodan has quit [Read error: Connection reset by peer]
slobodan has joined #u-boot
darkxst_ has quit [Quit: ZNC 1.9.0+deb2build3 - https://znc.in]
darkxst_ has joined #u-boot
<matthewcroughan>
Where does `spl export` even write to?
<matthewcroughan>
"The spl export command does not write to a storage media. The user is responsible to transfer the gathered information (assembled ATAGS list or prepared FDT) from temporary storage in RAM into persistent storage after each run of spl export." says the docs, but where does it export to in memory?
ja_02 has quit [Read error: Connection reset by peer]
ja_02 has joined #u-boot
jfsimon1981 has joined #u-boot
ja_02 has quit [Ping timeout: 244 seconds]
blackbox has quit [Read error: Connection reset by peer]
<matthewcroughan>
"It is equivalent to go through "bootm" step-by-step until device tree fixup is
<matthewcroughan>
done."
<matthewcroughan>
What is not explained is the next part, where it says "to save this image to SD/eMMC at the location pointed by macro CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR"
<matthewcroughan>
Is "OS File" a kernel, or is it the device-tree?
<matthewcroughan>
all spl export seems to do is make a patched device-tree, so does that mean SPL is capable of loading the kernel directly?
<Tartarus>
kernel
<Tartarus>
and yes, spl export patches up the dtb
<Tartarus>
because OS_BOOT just loads stuff to memory and runs
blackbox has joined #u-boot
<matthewcroughan>
is there a way to do what spl export does but outside of u-boot and the device itself?
<Tartarus>
I mean, if you write the dts to include everything and compile it to a dtb, that's that.
ja_02 has joined #u-boot
<matthewcroughan>
Tartarus: so is it a good summary to say that the difference between SPL and Proper is 1. More hardware init, 2. device-tree patching
<matthewcroughan>
And that SPL can boot the kernel provided it has the DT/Kernel/Initrd/Cmdline just like anything else
<Tartarus>
I mean, there's a lot of features in "proper" not in SPL
<matthewcroughan>
Yes, but specifically all SPL needs to boot the kernel is DT/Image/Initrd
<Tartarus>
But yes, SPL_OS aka Falcon mode can be configured to just boot the OS directly
<matthewcroughan>
the only difference is that you pass this in via U-Boot config at compile time, instead of in scripts at runtime
<Tartarus>
An extreme simplification, yeah
<matthewcroughan>
The thing that has distracted me for so long is what spl export is doing. Which as far as I can tell is just getting that patched device-tree
<matthewcroughan>
which then has to be extracted after this one-time operation, stored to persistent storage with `mmc write`
blackbox has quit [Ping timeout: 252 seconds]
<Tartarus>
Yeah, that's basically it
<Tartarus>
Since, and especially for older device trees, some run-time fixups were expected / required
enok has quit [Ping timeout: 248 seconds]
<Tartarus>
ie in arm32 land tons of boards don't set their memory size and have U-Boot set that at run time