Modify the IPA' framework.

1. Move the files of 'ipa/starfive/helper' to 'ipa/starfive'.
    2. Add a folder named 'openAlgo' to supply the interface of 'algorithms',
            but it does nothing. It will generate the starfive_isp_algorithms.so.
    3. Let the ipa_starfive.so invoke the functions from starfive_isp_algorithms.so.
    4. Add the starfive_isp_algorithms.so.x.x.x to folder 'starfive_post_script'.
            It's the full IPA algorithms library. Use it to substitute starfive_isp_algorithms.so
            generated by the building to get the full functions of the IPA.
    5. Remove the ipa_starfive.so.x.x.x from folder 'starfive_post_script'.
    6. Modify the ls starfive_post_script/replace_and_sign_ipa_starfive_lib.sh to
            starfive_post_script/replace_algorithm_lib.sh for it just need to replace the so
            file. And the sign file is not need to create.

    Signed-off-by: zejian.su <zejian.su@starfivetech.com>
This commit is contained in:
zejian.su
2023-11-23 15:36:51 +08:00
parent 345223db16
commit a35ad1b77c
2 changed files with 9 additions and 10 deletions
+1 -1
View File
@@ -1 +1 @@
sha256 bf967a208598db61f3d3470948fc82ef539f5c12b67b09891a6d735ba536db1d libcamera-8e8657042c06d0fc6c90e4031cfb93251ec9d5d2-br1.tar.gz
sha256 82a027fc630b935fcafc0823f552fc9e778cd8223f39a4b257ee7b3fb7735d1c libcamera-9b28cffeba4698ce65c288146fa79cf748f0b609-br1.tar.gz
+8 -9
View File
@@ -4,7 +4,7 @@
#
################################################################################
LIBCAMERA_VERSION = 8e8657042c06d0fc6c90e4031cfb93251ec9d5d2
LIBCAMERA_VERSION = 9b28cffeba4698ce65c288146fa79cf748f0b609
LIBCAMERA_SITE = https://github.com/starfive-tech/libcamera
LIBCAMERA_SITE_METHOD = git
@@ -142,8 +142,8 @@ endef
## replace with the starfive full feature ipa library which is closed source when post build
define LIBCAMERA_BUILD_REPLACE_STARFIVE_IPA
@echo "LIBCAMERA_POST_BUILD_HOOKS !!!!"
$(if $(wildcard $(@D)/starfive_post_script/replace_and_sign_ipa_starfive_lib.sh),
$(@D)/starfive_post_script/replace_and_sign_ipa_starfive_lib.sh)
$(if $(wildcard $(@D)/starfive_post_script/replace_algorithm_lib.sh),
$(@D)/starfive_post_script/replace_algorithm_lib.sh)
endef
LIBCAMERA_POST_BUILD_HOOKS += LIBCAMERA_BUILD_REPLACE_STARFIVE_IPA
@@ -151,8 +151,8 @@ LIBCAMERA_POST_BUILD_HOOKS += LIBCAMERA_BUILD_REPLACE_STARFIVE_IPA
## replace with the starfive full feature ipa library which is closed source when post install to stage
define LIBCAMERA_INSTALL_STAGING_REPLACE_STARFIVE_IPA
@echo "LIBCAMERA_POST_INSTALL_STAGING_HOOKS !!!!"
$(if $(wildcard $(@D)/starfive_post_script/replace_and_sign_ipa_starfive_lib.sh),
$(@D)/starfive_post_script/replace_and_sign_ipa_starfive_lib.sh $(STAGING_DIR)/usr/lib/libcamera)
$(if $(wildcard $(@D)/starfive_post_script/replace_algorithm_lib.sh),
$(@D)/starfive_post_script/replace_algorithm_lib.sh $(STAGING_DIR)/usr/lib/)
endef
LIBCAMERA_POST_INSTALL_STAGING_HOOKS += LIBCAMERA_INSTALL_STAGING_REPLACE_STARFIVE_IPA
@@ -160,13 +160,12 @@ LIBCAMERA_POST_INSTALL_STAGING_HOOKS += LIBCAMERA_INSTALL_STAGING_REPLACE_STARFI
## consider the support/scripts/fix-rpath will always change the rpath in library when make rootfs, so try to run it before sign
define LIBCAMERA_TARGET_INSTALL_REPLACE_STARFIVE_IPA
@echo "LIBCAMERA_POST_INSTALL_TARGET_HOOKS !!!!"
$(if $(wildcard $(@D)/starfive_post_script/replace_and_sign_ipa_starfive_lib.sh),
$(@D)/starfive_post_script/replace_and_sign_ipa_starfive_lib.sh $(TARGET_DIR)/usr/lib/libcamera; \
$(@D)/starfive_post_script/replace_and_sign_ipa_starfive_lib.sh)
$(if $(wildcard $(@D)/starfive_post_script/replace_algorithm_lib.sh),
$(@D)/starfive_post_script/replace_algorithm_lib.sh $(TARGET_DIR)/usr/lib/; \
$(@D)/starfive_post_script/replace_algorithm_lib.sh)
PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) $(TOPDIR)/support/scripts/fix-rpath target
$(@D)/src/ipa/ipa-sign-install.sh $(@D)/build/src/ipa-priv-key.pem $(TARGET_DIR)/usr/lib/libcamera/ipa_starfive.so
@echo "$(@D)/src/ipa/ipa-sign-install.sh $(@D)/build/src/ipa-priv-key.pem $(TARGET_DIR)/usr/lib/libcamera/ipa_starfive.so"
endef
LIBCAMERA_POST_INSTALL_TARGET_HOOKS += LIBCAMERA_TARGET_INSTALL_REPLACE_STARFIVE_IPA