<baltazar>
hi! I've been toying around with an odroid n2 (plus), which involves signing the bootloader. doc/board/amlogic/odroid-n2.rst does provide info on how to do that, but I think those instructions are wrong somehow.
<baltazar>
if I follow them, the resulting signed image is unreasonably large (1.6M for u-boot.bin.sd.bin) which makes using it quite annoying as it doesn't fit in a standard mbr gap
<baltazar>
so I inspected how upstream's makefiles do it, and created my own script which creates correctly sized images: http://0x0.st/8rB6.sh
<baltazar>
do you guys want to have this in the u-boot source (probably works for other odroid variants too but that would need testing) or update the docs?
persmule has quit [Remote host closed the connection]
mrnuke has quit [Ping timeout: 244 seconds]
naoki has quit [Quit: naoki]
mrnuke has joined #u-boot
naoki has joined #u-boot
persmule has joined #u-boot
warpme has joined #u-boot
warpme has quit [Client Quit]
joeskb7 has quit [Remote host closed the connection]
joeskb7 has joined #u-boot
rvalue has quit [Read error: Connection reset by peer]
rvalue has joined #u-boot
mmu_man has quit [Ping timeout: 252 seconds]
GNUtoo has quit [Ping timeout: 244 seconds]
GNUtoo has joined #u-boot
vardhan has joined #u-boot
vardhan_ has joined #u-boot
vardhan_ has quit [Quit: Leaving]
macromorgan has quit [Ping timeout: 264 seconds]
macromorgan has joined #u-boot
warpme has joined #u-boot
warpme has quit [Client Quit]
goliath has joined #u-boot
persmule has quit [Ping timeout: 264 seconds]
persmule has joined #u-boot
ikarso has joined #u-boot
prabhakalad has joined #u-boot
eballetbo has joined #u-boot
la_mettrie has joined #u-boot
<la_mettrie>
what's the quickest way to disable u-boot USB driver from loading? the u-boot is installed to microsd
alpernebbi has quit [Ping timeout: 265 seconds]
alpernebbi has joined #u-boot
vardhan has quit [Read error: Connection reset by peer]
vardhan_ has joined #u-boot
vardhan_ has quit [Read error: Connection reset by peer]
vardhan_ has joined #u-boot
vardhan_ has quit [Max SendQ exceeded]
warpme has joined #u-boot
warpme has quit [Client Quit]
prabhakalad has quit [Ping timeout: 248 seconds]
prabhakalad has joined #u-boot
prabhakalad has quit [Ping timeout: 244 seconds]
prabhakalad has joined #u-boot
mmu_man has joined #u-boot
prabhakalad has quit [Ping timeout: 264 seconds]
prabhakalad has joined #u-boot
rvalue- has joined #u-boot
rvalue has quit [Ping timeout: 248 seconds]
slobodan has joined #u-boot
rvalue- is now known as rvalue
dsimic has quit [Ping timeout: 248 seconds]
dsimic has joined #u-boot
goliath has quit [Quit: SIGSEGV]
prabhakalad has quit [Quit: Konversation terminated!]
prabhakalad has joined #u-boot
naoki has quit [Ping timeout: 276 seconds]
warpme has joined #u-boot
warpme has quit [Client Quit]
rvalue- has joined #u-boot
rvalue has quit [Ping timeout: 252 seconds]
goliath has joined #u-boot
rvalue- is now known as rvalue
___nick___ has joined #u-boot
___nick___ has quit [Client Quit]
___nick___ has joined #u-boot
Hypfer6 has quit [Ping timeout: 246 seconds]
Hypfer6 has joined #u-boot
prabhakalad has quit [Ping timeout: 252 seconds]
prabhakalad has joined #u-boot
<marex>
la_mettrie: do not run 'usb reset' or 'usb start'
<marex>
it might be in some boot script, check those, use 'printenv'
warpme has joined #u-boot
warpme has quit [Client Quit]
warpme has joined #u-boot
warpme has quit [Client Quit]
<la_mettrie>
marex: can that boot script be modified after u-boot has been installed to microSD?
warpme has joined #u-boot
warpme has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
warpme has joined #u-boot
<marex>
la_mettrie: it depends on the way the system is set up ... try printenv, check the environment and see what it does
<marex>
either preboot or bootcmd is the first script that is going to be executed on your system, check what it does
<marex>
you can set environment variables and scripts with 'setenv foo bar...'
<marex>
you can make changes persistent using 'saveenv'
prabhakalad has quit [Quit: Konversation terminated!]
vagrantc has joined #u-boot
rojin has joined #u-boot
warpme has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<baltazar>
marex: should I just change the docs? also it currently mentions using a different external repo with prebuilt binaries, which also produces large bootloaders. should I leave that in (first)?
<baltazar>
I guess I could submit a pr to that repo too
slobodan_ has joined #u-boot
Perflosopher0 has joined #u-boot
slobodan has quit [Remote host closed the connection]
Perflosopher has quit [Quit: Ping timeout (120 seconds)]
cbmuser has quit [Ping timeout: 265 seconds]
Perflosopher0 is now known as Perflosopher
pericycle has quit [Ping timeout: 265 seconds]
eballetbo has quit [Quit: Connection closed for inactivity]
<rojin>
I am trying to get USB boot working on the beaglebone black. From various sources I've read that the process is as follows.
<rojin>
The full system works as follow:
<rojin>
1. The AM335x ROM when in USB boot mode exposes a RNDIS interface to the PC and waits to TFTP a binary blob that it executes. That binary blob is the SPL.
<rojin>
2. Once the SPL runs it applies the same proceure as thI am trying to get USB boot working on the beaglebone black. From various sources I've read that the process is as follows.
<rojin>
The full system works as follow:
<rojin>
1. The AM335x ROM when in USB boot mode exposI am trying to get USB boot working on the beaglebone black. From various sources I've read that the process is as follows.
<rojin>
The full system works as follow:
<rojin>
1. The AM335x ROM when in USB boot mode exposes a RNDIS interface to the PC and waits to TFTP a binary blob that it executes. That binary blob is the SPL.
<rojin>
2. Once the SPL runs it applies the same proceure as the ROM and TFTPs U-Boot.
<rojin>
3. Again U-Boot applies the same thinking and TFTPs a FIT(flatten image tree) which includes a Kernel, Ramdisk and the DTB.
<rojin>
4. U-Boot runs this FIT and boots the Kernel.
<rojin>
5. When the kernel starts the init script exports the eMMC using the g_mass_storage kernel module as an USB stick to the Linux so it can be flashed
<rojin>
I am able to upload the SPL to the AM335x ROM using BOOTP and TFTP protocol(I am using dhcpd and tftpd for this). I have verified this by logging the BOOTP and TFTP packets on wireshark.
<rojin>
Upon further applying the same logic, I dont see any further network activity on wireshark. I am not sure if the SPL is actually running on the device.
<rojin>
Upon power cycling the BBB runs the debian XFCE image that was previously uploaded to the internal (eMMC) flash.
<rojin>
I am using the git master branch of uboot. I am also unsure if the master branch has support for USB network boot.es a RNDIS interface to the PC and waits to TFTP a binary blob that it executes. That binary blob is the SPL.
<rojin>
2. Once the SPL runs it applies the same proceure as the ROM and TFTPs U-Boot.
<rojin>
3. Again U-Boot applies the same thinking and TFTPs a FIT(flatten image tree) which includes a Kernel, Ramdisk and the DTB.
<rojin>
I am using the git master branch of uboot. I am also unsure if the master branch has support for USB network boot.
<rojin>
Any directions would be appreciated.
cbmuser has joined #u-boot
pericycle has joined #u-boot
<marex>
baltazar: is the problem you are seeing even in mainline u-boot or do you use downstream fork ?
<marex>
rojin: do you see any enumeration/reenumeration in dmesg -w on your hostpc after the SPL started ?
<baltazar>
marex: I'm using mainline u-boot, but the issue is only with the docs (since mainline u-boot doesn't provide a method for signing the bootloader, just mentions some methods in the docs)
<baltazar>
it would be nice if signing was included in the regular build process but that currently requires prebuilt binaries included in hardkernel's u-boot fork
<rojin>
Hmm, there is some network timeout in Host PC dmesg
<rojin>
[ 5549.152695] rndis_host 1-1.3:1.0 enp0s29u1u3: NETDEV WATCHDOG: CPU: 1: transmit queue 0 timed out 5120 ms
<rojin>
[ 5559.904546] rndis_host 1-1.3:1.0 enp0s29u1u3: NETDEV WATCHDOG: CPU: 2: transmit queue 0 timed out 5698 ms
<rojin>
[ 5568.864511] rndis_host 1-1.3:1.0 enp0s29u1u3: NETDEV WATCHDOG: CPU: 2: transmit queue 0 timed out 5056 ms
<rojin>
[ 5576.864443] rndis_host 1-1.3:1.0 enp0s29u1u3: NETDEV WATCHDOG: CPU: 2: transmit queue 0 timed out 5632 ms
<rojin>
[ 5633.887911] rndis_host 1-1.3:1.0 enp0s29u1u3: NETDEV WATCHDOG: CPU: 2: transmit queue 0 timed out 5056 ms
<rojin>
[ 5761.886747] rndis_host 1-1.3:1.0 enp0s29u1u3: NETDEV WATCHDOG: CPU: 2: transmit queue 0 timed out 5056 ms
<rojin>
Also
ikarso has quit [Quit: Connection closed for inactivity]
<rojin>
At the end of the TFTP transfer, the host PC is sending Data packet, block 230 for which the BBB isnt responding with an acknowledgement.
rojin has quit [Quit: Client closed]
mmu_man has quit [Ping timeout: 264 seconds]
pericycle has quit [Ping timeout: 265 seconds]
<marex>
baltazar: then yes please , send an update to the docs
<marex>
baltazar: the signing in mainline would be possible using binman I think, check with sjg1
mmu_man has joined #u-boot
rojin has joined #u-boot
<rojin>
I need to get some sleep. Tomorrow I need to try with a fresh build of master. I think the spl image that I have is too big to be uploaded into the BBB ROM. Thanks marex
naoki has joined #u-boot
rojin has quit [Quit: Client closed]
pericycle has joined #u-boot
<baltazar>
marex: how would that work? would that download the binaries from somewhere or would you include them in the uboot repo?
___nick___ has quit [Ping timeout: 248 seconds]
<marex>
baltazar: more like download and cache them on first use with binman, similar to the way it does so with toolchains
<baltazar>
cool, I'll look into it
<baltazar>
though it also currently uses a prebuilt x64 executable to do the signing. wouldn't that be a problem?
pericycle has quit [Ping timeout: 264 seconds]
mmu_man has quit [Ping timeout: 265 seconds]
vagrantc has quit [Quit: leaving]
pericycle has joined #u-boot
<marex>
baltazar: you could use qemu to run foreign architecture executables natively
<baltazar>
fair
mmu_man has joined #u-boot
rvalue has quit [Ping timeout: 252 seconds]
sbach has quit [Remote host closed the connection]
sbach has joined #u-boot
sally has quit [Quit: sally]
sally has joined #u-boot
slobodan_ has quit [Ping timeout: 248 seconds]
<Tartarus>
So, FYI for anyone else. I used https://github.com/mohankumarpaluru/oracle-freetier-instance-creation and it did take about 4 weeks, but it also did snag me an arm64 instance in the end which is fast enough for everything in CI except the full sandbox and world build jobs. Happy to help with the "now add gitlab runner for everyone else" side of things if anyone else wants to grab one
<marex>
Tartarus: free arm64 CI runner ?
<Tartarus>
arm64 and "all", yes
<Tartarus>
(ie all the qemu jobs, and static checks)