Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2 checksum mismatch #358

Open
vzaliva opened this issue Mar 7, 2023 · 4 comments
Open

Comments

@vzaliva
Copy link
Member

vzaliva commented Mar 7, 2023

Trying to install morello-scp-firmware and it fails:

$  ./cheribuild.py morello-scp-firmware -d
Checking /home/lord/.config/cheribuild.json since /home/lord/src/cheribuild/cheribuild.json doesn't exist
Note: Configuration file /home/lord/.config/cheribuild.json does not exist, using only command line arguments.
Sources will be stored in /home/lord/cheri
Build artifacts will be stored in /home/lord/cheri/output
cd /home/lord/src/cheribuild && git fetch
Failed to check for updates: Command '['git', 'fetch']' died with <Signals.SIGKILL: 9>.
Could not find `gmake` command, assuming `make` is GNU make
wget https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2020q2/gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2 -O /home/lord/cheri/build/gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2
--2023-03-06 19:00:16--  https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2020q2/gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2
Resolving developer.arm.com (developer.arm.com)... 104.84.79.59
Connecting to developer.arm.com (developer.arm.com)|104.84.79.59|:443... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/9-2020q2/gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2 [following]
--2023-03-06 19:00:18--  https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/9-2020q2/gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2
Resolving armkeil.blob.core.windows.net (armkeil.blob.core.windows.net)... 52.239.137.100
Connecting to armkeil.blob.core.windows.net (armkeil.blob.core.windows.net)|52.239.137.100|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 140360119 (134M) [application/octet-stream]
Saving to: ‘/home/lord/cheri/build/gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2’

/home/lord/cheri/build/gcc-arm-none-eabi-9 100%[========================================================================================>] 133.86M   966KB/s    in 69s     

2023-03-06 19:01:29 (1.93 MB/s) - ‘/home/lord/cheri/build/gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2’ saved [140360119/140360119]

Warning: Downloaded file SHA256 hash 5adc2ee03904571c2de79d5cfc0f7fe2a5c5f54f44da5b645c17ee57b217f11f does not match expected SHA256 -O
Continue with unexpected file? y/[N] 
@vzaliva vzaliva changed the title morello-scp-firmware checksum mismatch gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2 checksum mismatch Mar 7, 2023
@vzaliva
Copy link
Member Author

vzaliva commented Mar 7, 2023

Ignoring the SHA mismatch and proceeding with installation will install arm-none-eabi-toolchain, but the subsequent morello-scp-firmware build fails.

@jrtc27
Copy link
Member

jrtc27 commented Mar 7, 2023

Ok, so the toolchain one looks to be that we don't provide an expected hash and something there has regressed, which needs fixing (but we probably should provide the expected hash too).

As for the build failure, no clue, and if you don't provide the error then I have no hope of helping you.

But why are you building the firmware yourself anyway? Morello boards have pre-built firmware available from Arm, and we distribute pre-built firmware for the FVP if you really want to endure using that rather than CHERI QEMU.

@vzaliva
Copy link
Member Author

vzaliva commented Mar 7, 2023

I did not include error messages for morello-scp-firmware because I suspect arm-none-eabi-toolchain built with the wrong hash, was likely the root cause. As to prebuilt firmware for FVP, are these installed via the morello-firmware target? If so, they are missing, for example, scp_fw.bin mentioned here and here.

@jrtc27
Copy link
Member

jrtc27 commented Mar 7, 2023

% curl -sL 'https://morello-dist.cl.cam.ac.uk/releases/2020.10/arm64.aarch64c/morello-fvp-firmware-2020.10.tar.xz' | tar tJ
./morello-fvp/
./morello-fvp/morello-fvp.dtb
./morello-fvp/mcp_romfw.bin
./morello-fvp/mcp_ramfw_fvp.elf
./morello-fvp/mcp_image.bin
./morello-fvp/tf-bl31.bin
./morello-fvp/scp_ramfw_fvp.bin
./morello-fvp/scp_romfw.elf
./morello-fvp/scp_ap_image.bin
./morello-fvp/uefi.bin
./morello-fvp/scp_romfw.bin
./morello-fvp/scp_ramfw_fvp.elf
./morello-fvp/mcp_romfw.elf
./morello-fvp/mcp_ramfw_fvp.bin

I think scp_ap_image.bin is what you're looking for (perhaps it got renamed, or varies between FVP and board?); I see cheribuild pass -C soc.scp_qspi_loader.fname=$HOME/cheri/output/morello-sdk/firmware/morello-fvp/scp_ap_image.bin -C soc.mcp_qspi_loader.fname=$HOME/cheri/output/morello-sdk/firmware/morello-fvp/mcp_image.bin to the FVP.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants