Repository navigation
ci, docs: build, smoke-test and release openipc-allwinner - #66
Conversation
build-allwinner.yml is build-anyka.yml for the new openipc-allwinner branch: one leg per SoC through its build.sh, which makes u-boot-<soc>-nor.bin and u-boot-<soc>-mmc.bin (the same layout with an SPL that loads U-Boot from an SD card, for unbricking); the 256 KiB check for both; a two-boot smoke test per SoC and kind in qemu-bench's v831/v833 machines -- the -nor image from an 8 MiB flash, the -mmc one from a 64 MiB card with the flash erased -- where the second boot must load the environment the first saved; release to the `allwinner` tag and publish to OpenIPC/firmware latest. The build legs also install xz-utils (U-Boot is LZMA-packed to fit the boot partition). The -mmc legs need qemu-bench's boot ROM stand-in to boot from the card (qemu-bench u-boot#204). The smoke step was run locally against all four images and passed. README and CLAUDE.md describe the family.
PR Summary by QodoAdd Allwinner V831/V833 build, smoke-test, and release workflow
AI Description
Diagram
High-Level Assessment
Files changed (3)
|
Code Review by Qodo
1.
|
- The hold on both SoCs was meant to go before the push (qemu-bench has had the v831/v833 machines since u-boot#203) and did not: the artifacts were named hold-u-boot-*, so release and publish would have found nothing. Both SoCs are now released like the other families; the smoke legs are a hard gate. - The smoke test now also fails if the first boot does not report saving the environment, so the second boot's CRC check is known to test a saved one (the OpenIPC helper saves the default environment when it finds the area erased). - README: the SD card block had landed in the novatek section; it is in the allwinner one, which also names the -mmc images. The smoke step, extracted from the workflow, passes for v831/v833 x nor/mmc on qemu-bench master plus u-boot#204.
CI for the new
openipc-allwinnerbranch (U-Boot for Allwinner V831/V833, #65).build-allwinner.ymlisbuild-anyka.ymlwith this family's settings:build.sh, which makesu-boot-<soc>-nor.binandu-boot-<soc>-mmc.bin(the SD card image, for unbricking). Both get the 256 KiB partition check.xz-utils: U-Boot is LZMA-packed to fit the boot partition.v831/v833machines. The second boot must load the environment the first saved.-nor: from an 8 MiB flash holding only the image.-mmc: from a 64 MiB card with the image at 8 KiB and the flash erased.releaseto theallwinnertag, andpublishto OpenIPC/firmwarelatestwith auboot-allwinner-…build id. The names don't overlap with OpenIPC/u-boot-allwinner'su-boot-v851s-nor.bin.The README and CLAUDE.md describe the family, the card boot and the workflow.
Dependencies:
-mmclegs need allwinner-v83x: boot from the SD card first, and say so in boot_media qemu-bench#204, the boot ROM stand-in booting from the SD card. Until it lands they fail; the-norlegs don't need it.ci.ymlonopenipc-allwinner(in allwinner: add U-Boot for V831 and V833 #65) calls this workflow, so it has to land here for that branch's CI to run.publish,build-allwinner.ymlmust be allowlisted in OpenIPC/website (service/internal/builds/verify.go).Checked: the smoke step, extracted from this file, was run locally against all four images on qemu-bench master plus u-boot#204. All four pass.