From 602cf22ac7f287d898c81fae3dd72d27b8c12877 Mon Sep 17 00:00:00 2001 From: AI Dev Date: Sat, 7 Nov 2026 07:38:00 +0000 Subject: [PATCH] ambarella-osdrv-s3l: log the microcode version at boot load_ambarella sent load_ucode's output to /dev/null, so nothing recorded which microcode a camera booted with. Cameras in the field run many builds of it, and reading the version back took a separate tool on the IP4M-1026E (#2782). --- .../ambarella-osdrv-s3l/files/script/load_ambarella | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/general/package/legacy/ambarella-osdrv-s3l/files/script/load_ambarella b/general/package/legacy/ambarella-osdrv-s3l/files/script/load_ambarella index 9e5799fad..aa18894c8 100755 --- a/general/package/legacy/ambarella-osdrv-s3l/files/script/load_ambarella +++ b/general/package/legacy/ambarella-osdrv-s3l/files/script/load_ambarella @@ -135,7 +135,15 @@ load_microcode() { return 1 fi - load_ucode "${ucode_dir}" >/dev/null || log_vendor "load_ucode failed" + # The version is the first thing to compare when the DSP misbehaves: cameras + # in the field run many different builds of this microcode (#2767). + if output=$(load_ucode "${ucode_dir}"); then + # load_ucode succeeds without this line when only the version ioctl fails. + version=$(echo "${output}" | grep '^ucode version') + log_vendor "${version:-Microcode loaded, version unknown}" + else + log_vendor "load_ucode failed" + fi } insert_ko() {