Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 35 additions & 8 deletions config/boards/rock-5b.conf
Original file line number Diff line number Diff line change
Expand Up @@ -27,16 +27,39 @@ function post_family_tweaks__rock5b_naming_audios() {
return 0
}

# Mainline u-boot or Kwiboo's tree
# Mainline u-boot tree
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's better idea to add function without branch notation and use if-return in order to avoid code duplication

function post_family_config_branch_edge__rock-5b_use_mainline_uboot() {
display_alert "$BOARD" "mainline (next branch) u-boot overrides for $BOARD / $BRANCH" "info"

declare -g BOOTCONFIG="rock5b-rk3588_defconfig" # override the default for the board/family
declare -g BOOTDELAY=1 # Wait for UART interrupt to enter UMS/RockUSB mode etc
declare -g BOOTSOURCE="https://github.com/Kwiboo/u-boot-rockchip.git" # We ❤️ Kwiboo's tree
declare -g BOOTBRANCH="branch:rk3xxx-2024.04" # commit:31522fe7b3c7733313e1c5eb4e340487f6000196 as of 2024-04-01
declare -g BOOTPATCHDIR="v2024.04-rock5b-radxa" # empty; defconfig changes are done in hook below
declare -g BOOTDIR="u-boot-${BOARD}" # do not share u-boot directory
declare -g BOOTCONFIG="rock5b-rk3588_defconfig" # override the default for the board/family
declare -g BOOTDELAY=1 # Wait for UART interrupt to enter UMS/RockUSB mode etc
declare -g BOOTSOURCE="https://github.com/u-boot/u-boot.git" # We ❤️ Mainline tree
declare -g BOOTBRANCH="tag:v2024.10-rc3" # commit:d11a60610e17373331ad17b6c5c31735cf9fffa8 as of 2024-08-20
declare -g BOOTPATCHDIR="v2024.10-rock5b-radxa" # empty; defconfig changes are done in hook below
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can use BOOTPATCHDIR="v2024.10", since $BOOTBRANCH/board_$BOARD gets applied automatically by the patcher for the specific $BOARD ( in this case "v2024.10/board_rock-5b")

declare -g BOOTDIR="u-boot-${BOARD}" # do not share u-boot directory
declare -g UBOOT_TARGET_MAP="BL31=${RKBIN_DIR}/${BL31_BLOB} ROCKCHIP_TPL=${RKBIN_DIR}/${DDR_BLOB};;u-boot-rockchip.bin u-boot-rockchip-spi.bin"
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already

# Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
function write_uboot_platform() {
dd "if=$1/u-boot-rockchip.bin" "of=$2" bs=32k seek=1 conv=notrunc status=none
}

function write_uboot_platform_mtd() {
flashcp -v -p "$1/u-boot-rockchip-spi.bin" /dev/mtd0
}
}

# Mainline u-boot tree
function post_family_config_branch_current__rock-5b_use_mainline_uboot() {
display_alert "$BOARD" "mainline (next branch) u-boot overrides for $BOARD / $BRANCH" "info"

declare -g BOOTCONFIG="rock5b-rk3588_defconfig" # override the default for the board/family
declare -g BOOTDELAY=1 # Wait for UART interrupt to enter UMS/RockUSB mode etc
declare -g BOOTSOURCE="https://github.com/u-boot/u-boot.git" # We ❤️ ainline tree
declare -g BOOTBRANCH="tag:v2024.10-rc3" # commit:d11a60610e17373331ad17b6c5c31735cf9fffa8 as of 2024-08-20
declare -g BOOTPATCHDIR="v2024.10-rock5b-radxa" # empty; defconfig changes are done in hook below
declare -g BOOTDIR="u-boot-${BOARD}" # do not share u-boot directory
declare -g UBOOT_TARGET_MAP="BL31=${RKBIN_DIR}/${BL31_BLOB} ROCKCHIP_TPL=${RKBIN_DIR}/${DDR_BLOB};;u-boot-rockchip.bin u-boot-rockchip-spi.bin"
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already

Expand All @@ -51,7 +74,7 @@ function post_family_config_branch_edge__rock-5b_use_mainline_uboot() {
}

function post_config_uboot_target__extra_configs_for_rock5b_mainline_environment_in_spi() {
[[ "${BRANCH}" != "edge" ]] && return 0
[[ "${BRANCH}" != "edge" && "${BRANCH}" != "current" ]] && return 0

display_alert "$BOARD" "u-boot configs for ${BOOTBRANCH} u-boot config BRANCH=${BRANCH}" "info"
run_host_command_logged scripts/config --set-val CONFIG_ENV_IS_NOWHERE "n"
Expand All @@ -60,6 +83,10 @@ function post_config_uboot_target__extra_configs_for_rock5b_mainline_environment
run_host_command_logged scripts/config --set-val CONFIG_ENV_OVERWRITE "y"
run_host_command_logged scripts/config --set-val CONFIG_ENV_SIZE "0x20000"
run_host_command_logged scripts/config --set-val CONFIG_ENV_OFFSET "0xc00000"
run_host_command_logged scripts/config --set-val CONFIG_BOARD_RNG_SEED "y"
run_host_command_logged scripts/config --set-val ARMV8_CRYPTO "n" #broken as per 2024.10-rc3
run_host_command_logged scripts/config --set-val ARMV8_CE_SHA1 "n" #broken as per 2024.10-rc3
run_host_command_logged scripts/config --set-val ARMV8_CE_SHA256 "n" #broken as per 2024.10-rc3
Comment on lines +86 to +89
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

CONFIG_ prefix missing; broken toggles for ARMV8 crypto/SHA options.

scripts/config expects CONFIG_* symbols. As-is, these options won’t be changed, defeating the objective to disable ARMV8 crypto in 2024.10-rc3.

Apply this diff:

-	run_host_command_logged scripts/config --set-val ARMV8_CRYPTO "n" #broken as per 2024.10-rc3
-	run_host_command_logged scripts/config --set-val ARMV8_CE_SHA1 "n" #broken as per 2024.10-rc3
-	run_host_command_logged scripts/config --set-val ARMV8_CE_SHA256 "n" #broken as per 2024.10-rc3
+	run_host_command_logged scripts/config --set-val CONFIG_ARMV8_CRYPTO "n" # broken as per 2024.10-rc3
+	run_host_command_logged scripts/config --set-val CONFIG_ARMV8_CE_SHA1 "n" # broken as per 2024.10-rc3
+	run_host_command_logged scripts/config --set-val CONFIG_ARMV8_CE_SHA256 "n" # broken as per 2024.10-rc3
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
run_host_command_logged scripts/config --set-val CONFIG_BOARD_RNG_SEED "y"
run_host_command_logged scripts/config --set-val ARMV8_CRYPTO "n" #broken as per 2024.10-rc3
run_host_command_logged scripts/config --set-val ARMV8_CE_SHA1 "n" #broken as per 2024.10-rc3
run_host_command_logged scripts/config --set-val ARMV8_CE_SHA256 "n" #broken as per 2024.10-rc3
run_host_command_logged scripts/config --set-val CONFIG_BOARD_RNG_SEED "y"
- run_host_command_logged scripts/config --set-val ARMV8_CRYPTO "n" #broken as per 2024.10-rc3
- run_host_command_logged scripts/config --set-val ARMV8_CE_SHA1 "n" #broken as per 2024.10-rc3
run_host_command_logged scripts/config --set-val CONFIG_ARMV8_CRYPTO "n" # broken as per 2024.10-rc3
run_host_command_logged scripts/config --set-val CONFIG_ARMV8_CE_SHA1 "n" # broken as per 2024.10-rc3
run_host_command_logged scripts/config --set-val CONFIG_ARMV8_CE_SHA256 "n" # broken as per 2024.10-rc3
🤖 Prompt for AI Agents
In config/boards/rock-5b.conf around lines 86 to 89 the scripts/config calls for
ARMV8_CRYPTO, ARMV8_CE_SHA1 and ARMV8_CE_SHA256 are missing the required CONFIG_
prefix, so those toggles are not applied; update those three lines to use
CONFIG_ARMV8_CRYPTO, CONFIG_ARMV8_CE_SHA1 and CONFIG_ARMV8_CE_SHA256 (keeping
the same values and comments) so scripts/config will correctly set the options.

}

# Include fw_setenv, configured to point to the correct spot on the SPI Flash
Expand Down