From 8859780327382983e2ec594e6e1f12fbf9df8f1b Mon Sep 17 00:00:00 2001 From: Vaibhav Jindal Date: Tue, 21 Jul 2026 14:35:02 +0530 Subject: [PATCH] Added extra files for monaco (needs to be properly placed post refactoring code based on soc info) Updated quickboot-apps-installer to incorporate removal of cam-sensors properly Accordingly update the positioning of sensor removal file --- extra-files/monaco-display-modules.conf | 24 ++++ extra-files/monaco-first-boot-cam-setup.sh | 123 ++++++++++++++++++ quickboot-apps-installer.sh | 18 ++- .../iq9075-first-boot-cam-setup.sh | 2 +- 4 files changed, 165 insertions(+), 2 deletions(-) create mode 100644 extra-files/monaco-display-modules.conf create mode 100644 extra-files/monaco-first-boot-cam-setup.sh rename quickboot-camera/files/{ => iq9075}/iq9075-first-boot-cam-setup.sh (99%) diff --git a/extra-files/monaco-display-modules.conf b/extra-files/monaco-display-modules.conf new file mode 100644 index 0000000..6d05341 --- /dev/null +++ b/extra-files/monaco-display-modules.conf @@ -0,0 +1,24 @@ +# List of Qualcomm and generic display/GPU kernel modules. +# Loaded early via systemd-modules-load to accelerate display bring-up. + +mdt_loader +drm_kms_helper +drm_core_init +socinfo +display_connector +gpucc_sa8775p +dispcc1_sa8775p +llcc_qcom +gpi +dispcc0_sa8775p +drm_dp_aux_bus +drm_display_helper +gpu_sched +ocmem +msm_kgsl +msm +typec +phy_qcom_edp +lontium_lt8713sx +i2c_qcom_geni +hd3ss3220 diff --git a/extra-files/monaco-first-boot-cam-setup.sh b/extra-files/monaco-first-boot-cam-setup.sh new file mode 100644 index 0000000..00dd026 --- /dev/null +++ b/extra-files/monaco-first-boot-cam-setup.sh @@ -0,0 +1,123 @@ +#!/bin/bash +# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. +# SPDX-License-Identifier: BSD-3-Clause-Clear + +# ============================================================================== +# DESCRIPTION: +# This script must be executed manually by the user during the first boot. +# It is designed specifically for the IQ-9075 EVK device to optimize camera +# initialization and reduce boot time. +# +# Functions performed: +# 1. Initializes the required EFI variable settings for the camera +# (VendorDtbOverlays). +# 2. Reduces camera server init time by relocating unnecessary camera sensor +# module binaries that are not required for the IQ-9075 EVK to a backup folder. +# +# USAGE: +# Run this script once on the device via the terminal: +# /usr/bin/iq9075-first-boot-cam-setup.sh +# ============================================================================== + +echo -n "camx" > /var/data +efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -w -f /var/data +efivar -n 882f8c2b-9646-435f-8de5-f208ff80c1bd-VendorDtbOverlays -p + +mkdir /data/sensors-to-remove +cd /usr/lib/camx/lemans/camera/ +mv com.qti.sensormodule.cmk_imx577_rb8_csi0.bin /data/sensors-to-remove +mv com.qti.sensormodule.cmk_imx577_rb8_csi2.bin /data/sensors-to-remove +mv com.qti.sensormodule.cmk_imx577_rb8_csi3.bin /data/sensors-to-remove +mv com.qti.sensormodule.cmk_ov9282_rb4_cam0.bin /data/sensors-to-remove +mv com.qti.sensormodule.cmk_ov9282_rb4_cam1.bin /data/sensors-to-remove +mv com.qti.sensormodule.cmk_ov9282_rb4_cam2.bin /data/sensors-to-remove +mv com.qti.sensormodule.cmk_ov9282_rb8_cam0a.bin /data/sensors-to-remove +mv com.qti.sensormodule.cmk_ov9282_rb8_cam0b.bin /data/sensors-to-remove +mv com.qti.sensormodule.cmk_ov9282_rb8_cam1.bin /data/sensors-to-remove +mv com.qti.sensormodule.cmk_ov9282_rb8_cam2.bin /data/sensors-to-remove +mv com.qti.sensormodule.cmk_ov9282_rb8_cam3.bin /data/sensors-to-remove +mv com.qti.sensormodule.cust_ov13858_rb8_cam0.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_gmsl00.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_gmsl01.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_gmsl02.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_gmsl03.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_gmsl0f_bcast.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_gmsl10.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_gmsl30.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_gmsl00.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_gmsl01.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_gmsl02.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_gmsl03.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_yuv_gmsl10.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_yuv_gmsl11.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_yuv_gmsl12.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_yuv_gmsl13.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_yuv_gmsl20.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_yuv_gmsl21.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_yuv_gmsl22.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_monaco_yuv_gmsl23.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_gmsl00.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_gmsl01.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_gmsl02.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_gmsl03.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_gmsl_dphy00.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_gmsl_dphy01.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_gmsl_dphy02.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_yuv_gmsl10.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_yuv_gmsl11.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_yuv_gmsl12.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_yuv_gmsl13.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_yuv_gmsl20.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_yuv_gmsl21.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_yuv_gmsl22.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb4_yuv_gmsl23.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_gmsl00.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_gmsl01.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_gmsl02.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_gmsl03.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_gmsl0f_bcast.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_gmsl_dphy00.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_gmsl_dphy01.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_gmsl_dphy02.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_gmsl_dphy03.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl10.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl11.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl12.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl13.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl1f_bcast.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl20.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl21.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl22.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl23.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl2f_bcast.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl30.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl31.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl32.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl33.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_rb8_yuv_gmsl3f_bcast.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl10.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl11.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl12.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl13.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl1f_bcast.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl20.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl21.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl22.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl23.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl2f_bcast.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl30.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl31.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl32.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl33.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox03f10_yuv_gmsl3f_bcast.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox08d10_gmsl.bin /data/sensors-to-remove +mv com.qti.sensormodule.leopard_max96724_ox08d10_monaco_gmsl.bin /data/sensors-to-remove +mv com.qti.sensormodule.qti_tpg0_rb4.bin /data/sensors-to-remove +mv com.qti.sensormodule.qti_tpg0_rb8.bin /data/sensors-to-remove +mv com.qti.sensormodule.qti_tpg1_rb4.bin /data/sensors-to-remove +mv com.qti.sensormodule.qti_tpg1_rb8.bin /data/sensors-to-remove +mv com.qti.sensormodule.qti_tpg2_rb4.bin /data/sensors-to-remove +mv com.qti.sensormodule.qti_tpg2_rb8.bin /data/sensors-to-remove +mv com.qti.sensormodule.rhodes_ov13858_rb8_cam1.bin /data/sensors-to-remove +mv libmctf_cl_program.bin /data/sensors-to-remove +sync diff --git a/quickboot-apps-installer.sh b/quickboot-apps-installer.sh index 91a8ae9..b75ec4b 100644 --- a/quickboot-apps-installer.sh +++ b/quickboot-apps-installer.sh @@ -86,7 +86,23 @@ for COMPONENT_DIR in "$SCRIPT_DIR"/quickboot-*/files; do if ls "$COMPONENT_DIR"/*.wav 1> /dev/null 2>&1; then cp -v "$COMPONENT_DIR"/*.wav /usr/share/sounds/ fi - + + # 7. Process Subdirectories (run scripts inside folders) + for SUB_DIR in "$COMPONENT_DIR"/*/; do + if [ -d "$SUB_DIR" ]; then + echo "=> Processing subdirectory: $(basename "$SUB_DIR")" + + # Check if it has any .sh scripts + if ls "$SUB_DIR"/*.sh 1> /dev/null 2>&1; then + for script in "$SUB_DIR"/*.sh; do + echo " Running script: $script" + chmod +x "$script" + "$script" + done + fi + fi + done + echo "" fi done diff --git a/quickboot-camera/files/iq9075-first-boot-cam-setup.sh b/quickboot-camera/files/iq9075/iq9075-first-boot-cam-setup.sh similarity index 99% rename from quickboot-camera/files/iq9075-first-boot-cam-setup.sh rename to quickboot-camera/files/iq9075/iq9075-first-boot-cam-setup.sh index 275eebe..f55dc7c 100644 --- a/quickboot-camera/files/iq9075-first-boot-cam-setup.sh +++ b/quickboot-camera/files/iq9075/iq9075-first-boot-cam-setup.sh @@ -28,7 +28,7 @@ cd /usr/lib/camx/lemans/camera/ mv com.qti.sensormodule.cmk_imx577_rb4_csi0.bin /data/sensors-to-remove mv com.qti.sensormodule.cmk_imx577_rb4_csi1.bin /data/sensors-to-remove mv com.qti.sensormodule.cmk_imx577_rb4_csi2.bin /data/sensors-to-remove -mv com.qti.sensormodule.cmk_imx577_rb8_csi0.bin /data/sensors-to-remove +mv com.qti.sensormodule.cmk_imx577_rb8_csi1.bin /data/sensors-to-remove mv com.qti.sensormodule.cmk_imx577_rb8_csi2.bin /data/sensors-to-remove mv com.qti.sensormodule.cmk_imx577_rb8_csi3.bin /data/sensors-to-remove mv com.qti.sensormodule.cmk_ov9282_rb4_cam0.bin /data/sensors-to-remove