[PATCH v8] Add optimized Makefile support for SoCFPGA handoff
Chee, Tien Fong
tienfong.chee at altera.com
Mon Dec 1 08:54:06 CET 2025
Hi Brian,
On 27/11/2025 11:18 am, Chee, Tien Fong wrote:
>
> On 19/11/2025 7:16 pm, Brian Sune wrote:
>> [CAUTION: This email is from outside your organization. Unless you
>> trust the sender, do not click on links or open attachments as it may
>> be a fraudulent email attempting to steal your information and/or
>> compromise your computer.]
>>
>> Add optimized Makefile support for SoCFPGA handoff
>>
>> - Introduce socfpga_g5_handoff_prepare target in U-Boot
>> arch/arm/mach-socfpga/config.mk
>> - Users can convert the handoff via make prepare.
>> - Detects Altera/Intel SoCFPGA boards from .config
>> - Combines vendor/board extraction into a single shell call
>> - Checks for hps_isw_handoff folder and .hiof files
>> - Uses ls -d instead of find for faster folder detection
>> - Runs BSP generator script only if files exist
>> - Non-blocking: continues if handoff folder or files are missing
>> - HANDOFF_PATH user define allows overriding auto-detected folder
>> - Minimizes subshells and other slow constructs for faster CI
>>
>> Signed-off-by: Brian Sune <briansune at gmail.com>
>> ---
>> arch/arm/mach-socfpga/config.mk | 50 +++++++++++++++++++++++++++++++++
>> 1 file changed, 50 insertions(+)
>> create mode 100644 arch/arm/mach-socfpga/config.mk
>>
>> diff --git a/arch/arm/mach-socfpga/config.mk
>> b/arch/arm/mach-socfpga/config.mk
>> new file mode 100644
>> index 00000000000..df1eb909129
>> --- /dev/null
>> +++ b/arch/arm/mach-socfpga/config.mk
>> @@ -0,0 +1,50 @@
>> +# SPDX-License-Identifier: GPL-2.0+
>> +#
>> +# Brian Sune <briansune at gmail.com>
>> +
>> +ifeq ($(CONFIG_TARGET_SOCFPGA_CYCLONE5),y)
>> +archprepare: socfpga_g5_handoff_prepare
>> +else ifeq ($(CONFIG_TARGET_SOCFPGA_ARRIA5),y)
>> +archprepare: socfpga_g5_handoff_prepare
>> +endif
>> +
>> +socfpga_g5_handoff_prepare:
>> + @SOCFAMILY="$(SOCFAMILY)"; \
>> + if [ -z "$$SOCFAMILY" ]; then \
>> + exit 0; \
>> + fi; \
>> + echo "[INFO] SOC family detected: $$SOCFAMILY";
>> + @set -- $$(awk -F'"' ' \
>> + /^CONFIG_SYS_VENDOR=/ {v=$$2} \
>> + /^CONFIG_SYS_BOARD=/ {b=$$2} \
>> + END {print v, b}' .config); \
>> + VENDOR=$$1; \
>> + BOARD=$$2; \
>> + if [ -z "$$VENDOR" ] || [ -z "$$BOARD" ]; then \
>> + exit 0; \
>> + fi; \
>> + BOARD_DIR=$(src)/board/$$VENDOR/$$BOARD; \
>> + if [ "$$HANDOFF_PATH" ]; then \
>> + echo "[INFO] Using manually specified handoff
>> folder: $$HANDOFF_PATH"; \
>> + else \
>> + HANDOFF_BASE=$$BOARD_DIR/hps_isw_handoff; \
>> + if [ ! -d "$$HANDOFF_BASE" ]; then \
>> + exit 0; \
>> + fi; \
>> + HANDOFF_PATH=$$(ls -d "$$HANDOFF_BASE"/*/
>> 2>/dev/null | head -n1); \
>> + if [ -z "$$HANDOFF_PATH" ]; then \
>> + exit 0; \
>> + fi; \
>> + echo "[INFO] Auto-detected handoff folder:
>> $$HANDOFF_PATH"; \
>> + fi; \
>> + HIOF_FILE=$$HANDOFF_PATH/$$(basename
>> $$HANDOFF_PATH).hiof; \
>> + if [ ! -f "$$HIOF_FILE" ]; then \
>> + echo "[WARN] No .hiof file found in
>> $$HANDOFF_PATH, skipping BSP generation."; \
>> + exit 0; \
>> + fi; \
>> + echo "[INFO] Found hiof file: $$HIOF_FILE"; \
>> + echo "[INFO] Running BSP generator..."; \
>> + python3
>> $(src)/tools/cv_bsp_generator/cv_bsp_generator.py -i "$$HANDOFF_PATH"
>> -o "$$BOARD_DIR/qts" || echo "[WARN] BSP generator failed,
>> continuing..."; \
>> + echo "[DONE] SoCFPGA QTS handoff conversion complete."
I tried applying it onto the latest main branch using:
git am -3 < v8-Add-optimized-Makefile-support-for-SoCFPGA-handoff.patch
However, the application fails with :
Applying: Add optimized Makefile support for SoCFPGA handoff
error: corrupt patch at line 61
error: could not build fake ancestor
Patch failed at 0001 Add optimized Makefile support for SoCFPGA handoff
It looks like the patch file may have been corrupted during generation
or transmission (possibly formatting or mbox header issues).
Could you please resend the patch in clean git format-patch (mbox)
format so that I can apply and submit for PR.
Thanks.
Tien Fong
More information about the U-Boot
mailing list