camus has quit [Read error: Connection reset by peer]
camus1 is now known as camus
coldspark29 has quit [Ping timeout: 252 seconds]
coldspark29 has joined #u-boot
persmule has joined #u-boot
persmule has quit [Ping timeout: 276 seconds]
persmule has joined #u-boot
persmule has quit [Ping timeout: 276 seconds]
sdfgsdfg has joined #u-boot
persmule has joined #u-boot
camus1 has joined #u-boot
camus has quit [Ping timeout: 256 seconds]
camus1 is now known as camus
vagrantc has quit [Quit: leaving]
GNUtoo has quit [Remote host closed the connection]
GNUtoo has joined #u-boot
camus1 has joined #u-boot
camus has quit [Ping timeout: 256 seconds]
camus1 is now known as camus
camus has quit [Ping timeout: 268 seconds]
camus has joined #u-boot
fdanis_away is now known as fdanis
camus1 has joined #u-boot
camus has quit [Ping timeout: 256 seconds]
camus1 is now known as camus
mckoan|away is now known as mckoan
agust has joined #u-boot
michalkotyla_ has joined #u-boot
<michalkotyla_>
Forty-Bot: thanks
guillaume_g has joined #u-boot
camus has quit [Ping timeout: 256 seconds]
camus has joined #u-boot
lucaceresoli has joined #u-boot
mmu_man has joined #u-boot
GNUtoo has quit [Remote host closed the connection]
GNUtoo has joined #u-boot
zaungast has joined #u-boot
sdfgsdfg has quit [Quit: ZzzZ]
apritzel_ has joined #u-boot
thopiekar has joined #u-boot
<thopiekar>
Hey! I'm using version 2021.10+dfsg-1 and noticing the following issues with two different SD cards. When powering my Odroid U3 I get the following errors: https://pastebin.com/sJ6zmGx3 When researching the problem I came to different reasons like broken SD card or too low power on the interface. However, "mmc dev 2; mmc part" gives me a partition list, so why is "ext2ls mmc 2:1" not working? Any ideas?
<thopiekar>
Finally tested with my emmc module. Now it works to read the ext2 fs without any error. Should be a hardware issue then. Would be nice if someone could help by giving hints at least :)
persmule has quit [Ping timeout: 276 seconds]
persmule has joined #u-boot
persmule has quit [Ping timeout: 276 seconds]
persmule has joined #u-boot
persmule has quit [Ping timeout: 276 seconds]
camus has quit [Read error: Connection reset by peer]
camus1 has joined #u-boot
camus1 is now known as camus
pgreco has quit [Ping timeout: 250 seconds]
persmule has joined #u-boot
persmule has quit [Ping timeout: 276 seconds]
camus has quit [Ping timeout: 240 seconds]
camus has joined #u-boot
persmule has joined #u-boot
camus1 has joined #u-boot
camus has quit [Ping timeout: 260 seconds]
camus1 is now known as camus
Daulity has joined #u-boot
<Daulity>
hey all
<Daulity>
I am thinking is it possible to load a small program into ram with u-boot (thinking of an arm processor target) and then execute it?
<Daulity>
nothing ambitious just something like a Hello, World
torez has joined #u-boot
camus1 has joined #u-boot
camus has quit [Ping timeout: 240 seconds]
camus1 is now known as camus
<apritzel_>
Daulity: are you looking for the "go" command? In cmd/boot.c
apritzel_ is now known as apritzel
<rfs613>
Daulity: yes this is possible, there is "hello world" example include in u-boot source code
<rfs613>
there are further details in the main README file, seach for "Hello World"
<Daulity>
i was thinking of compiling some kind of making a little hello world program and loading it with u-boot instead of like the linux kernel
<Daulity>
just wanted to play around on the bare metal environment :)
<Daulity>
rfs613: thanks that will be very usefull!
<Daulity>
oh is that like standalone as in it will still has access to u-boot functionallity i see it use like printf and things :)
<rfs613>
Daulity: it's up to you if you want to use u-boot functions (or not). You can also start poking your UART registers directly, to produce output.
<Daulity>
that is true
<rfs613>
more importantly, u-boot has already done a whole pile of things for you, like turning on clocks, making DDR usable, etc. So if you reall want "bare metal" you'd need to consider what happens from power-on. On most chips these days, there is a *lot* of tedious stuff before you can even get a byte out of the UART.
<Daulity>
rfs613: i wasn't thinking of going that much bare metal xD
<rfs613>
Daulity: good call :-)
<Daulity>
that is why i wanted u-boot to load my program so that i can have the ram and other things already nicely configured :) but i wasn't sure about like extra functionality like printf's and things
<Daulity>
but i guess that is up to me
<apritzel>
Daulity: just load you program, converted into a binary, into RAM, then use "go <entrypoint>"
<Daulity>
can i just compile say a function like main and just go to that or do i need to do more like setup heap and stack or is that already correct due to u-boot
<Daulity>
like on a bare micro controller for example all that has to be setup before going into main :)
<apritzel>
as rfs613 said: depends on how much bare metal you want to go. You could just choose to ignore U-Boot, and just rely on it having done the platform setup already
<rfs613>
the stack is setup (inherited from u-boot, you could of course set it up differently). The code & data segments are included in your binary file, so they're taken care of. The BSS needs to be cleared (or your globals won't be zero'd), see function app_startup() which is the first thing hello_world calls.
<rfs613>
s/won't/may not/
<apritzel>
rfs613: Murphy's law dictates that BSS is accidentally already zeroed just in your own testing, not when you actually want to run the program for real ;-)
<rfs613>
precisely! :P
<rfs613>
Daulity: for comparison, when u-boot loads a linux kernel, it doesn't use any u-boot functions. The (usually compressed) kernel binary is put in RAM, and u-boot jumps to it (basically the same "go" command). The only difference being a device tree and maybe initrd are also in memory, and their addresses are passed in registers. The linux kernel binary begins to execute, decompresses itself, sets up its own
<rfs613>
stack, initializes uarts, etc.,.. and eventually you see it print "Linux version ..."
<Daulity>
thanks that makes sense :)
Daulity has quit [Quit: leaving]
persmule has quit [Ping timeout: 276 seconds]
stefanro has quit [Ping timeout: 240 seconds]
persmule has joined #u-boot
stefanro has joined #u-boot
blmaier has quit [Quit: ZNC 1.7.5+deb4 - https://znc.in]
blmaier has joined #u-boot
fdanis is now known as fdanis_away
lucaceresoli has quit [Quit: Leaving]
vagrantc has joined #u-boot
guillaume_g has quit [Ping timeout: 240 seconds]
mckoan is now known as mckoan|away
<thopiekar>
Did some further investigations. I've tried with my emmc module also and it works both ways. Once connected directly to the board and also using sd card adapter attached to the same socket. I don't see why real SD cards won't work here.
apritzel has quit [Ping timeout: 268 seconds]
torez has quit [Remote host closed the connection]