vpu/jpu: support automatic building and loading VPU/JPU ko driver
install the vdec.ko, venc.ko, jpu.ko to /lib/modules/5.15.0/extra/ and remove the loading script, support insmod,modprobe,rmmod Signed-off-by: Andy Hu <andy.hu@starfivetech.com>
This commit is contained in:
@@ -3,7 +3,6 @@
|
||||
# codaj12
|
||||
#
|
||||
################################################################################
|
||||
|
||||
# CODAJ12_VERSION:=1.0.0
|
||||
CODAJ12_SITE=$(TOPDIR)/../soft_3rdpart/codaj12
|
||||
CODAJ12_SITE_METHOD=local
|
||||
@@ -13,7 +12,6 @@ export KERNELDIR=$(TOPDIR)/../work/linux
|
||||
|
||||
define CODAJ12_BUILD_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) -f $(@D)/codaj12_buildroot.mak
|
||||
# $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) -f $(@D)/codaj12Driver_buildroot.mak
|
||||
endef
|
||||
|
||||
define CODAJ12_CLEAN_CMDS
|
||||
@@ -21,13 +19,9 @@ define CODAJ12_CLEAN_CMDS
|
||||
endef
|
||||
|
||||
define CODAJ12_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0777 $(@D)/jdi/linux/driver/load.sh $(TARGET_DIR)/root/codaj12/load.sh
|
||||
$(INSTALL) -D -m 0777 $(@D)/jdi/linux/driver/unload.sh $(TARGET_DIR)/root/codaj12/unload.sh
|
||||
$(INSTALL) -D -m 0644 $(@D)/libcodadec.so $(TARGET_DIR)/usr/lib/libcodadec.so
|
||||
# $(INSTALL) -D -m 0644 $(@D)/jdi/linux/driver/jpu.ko $(TARGET_DIR)/root/codaj12/jpu.ko
|
||||
endef
|
||||
|
||||
|
||||
define CODAJ12_INSTALL_STAGING_CMDS
|
||||
mkdir -p $(STAGING_DIR)/usr/include/codaj12
|
||||
$(INSTALL) -D -m 0644 $(@D)/jpuapi/jpuapi.h $(STAGING_DIR)/usr/include/codaj12/jpuapi/jpuapi.h
|
||||
@@ -51,16 +45,14 @@ define CODAJ12_INSTALL_STAGING_CMDS
|
||||
endef
|
||||
|
||||
define CODAJ12_UNINSTALL_TARGET_CMDS
|
||||
rm -rf $(TARGET_DIR)/root/codaj12/jpu.ko
|
||||
rm -rf $(TARGET_DIR)/root/codaj12/load.sh
|
||||
rm -rf $(TARGET_DIR)/root/codaj12/unload.sh
|
||||
|
||||
endef
|
||||
|
||||
codaj12_WORK_DIR := $(TARGET_DIR)/../build/codaj12
|
||||
codaj12driver:
|
||||
ifneq ($(wildcard $(codaj12_WORK_DIR)/codaj12Driver_buildroot.mak),)
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(codaj12_WORK_DIR) -f $(codaj12_WORK_DIR)/codaj12Driver_buildroot.mak
|
||||
$(INSTALL) -D -m 0644 $(codaj12_WORK_DIR)/jdi/linux/driver/jpu.ko $(TARGET_DIR)/root/codaj12/jpu.ko
|
||||
$(TARGET_MAKE_ENV) INSTALL_MOD_PATH=$(INSTALL_MOD_PATH) \
|
||||
$(MAKE) -C $(codaj12_WORK_DIR) -f $(codaj12_WORK_DIR)/codaj12Driver_buildroot.mak
|
||||
endif
|
||||
|
||||
$(eval $(generic-package))
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
# WAVE420L
|
||||
#
|
||||
################################################################################
|
||||
|
||||
WAVE420L_VERSION:=1.0.0
|
||||
WAVE420L_SITE=$(TOPDIR)/../soft_3rdpart/wave420l/code
|
||||
WAVE420L_SITE_METHOD=local
|
||||
@@ -13,7 +12,6 @@ export KERNELDIR=$(TOPDIR)/../work/linux
|
||||
|
||||
define WAVE420L_BUILD_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) -f $(@D)/WaveEncoder_buildroot.mak
|
||||
# $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) -f $(@D)/WaveEncDriver_buildroot.mak
|
||||
endef
|
||||
|
||||
define WAVE420L_CLEAN_CMDS
|
||||
@@ -21,8 +19,6 @@ define WAVE420L_CLEAN_CMDS
|
||||
endef
|
||||
|
||||
define WAVE420L_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0777 $(@D)/vdi/linux/driver/load.sh $(TARGET_DIR)/root/wave420l/venc_load.sh
|
||||
$(INSTALL) -D -m 0777 $(@D)/vdi/linux/driver/unload.sh $(TARGET_DIR)/root/wave420l/venc_unload.sh
|
||||
$(INSTALL) -D -m 0644 $(@D)/libsfenc.so $(TARGET_DIR)/usr/lib/libsfenc.so
|
||||
$(INSTALL) -D -m 0644 $(WAVE420L_SITE)/../firmware/monet.bin $(TARGET_DIR)/lib/firmware/monet.bin
|
||||
$(INSTALL) -D -m 0644 $(@D)/cfg/encoder_defconfig.cfg $(TARGET_DIR)/lib/firmware/encoder_defconfig.cfg
|
||||
@@ -67,16 +63,14 @@ define WAVE420L_INSTALL_STAGING_CMDS
|
||||
endef
|
||||
|
||||
define WAVE420L_UNINSTALL_TARGET_CMDS
|
||||
rm -rf $(TARGET_DIR)/root/venc.ko
|
||||
rm -rf $(TARGET_DIR)/root/venc_load.sh
|
||||
rm -rf $(TARGET_DIR)/root/venc_unload.sh
|
||||
|
||||
endef
|
||||
|
||||
WAVE420L_WORK_DIR := $(TARGET_DIR)/../build/wave420l-$(WAVE420L_VERSION)
|
||||
wave420ldriver:
|
||||
ifneq ($(wildcard $(WAVE420L_WORK_DIR)/WaveEncDriver_buildroot.mak),)
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(WAVE420L_WORK_DIR) -f $(WAVE420L_WORK_DIR)/WaveEncDriver_buildroot.mak
|
||||
$(INSTALL) -D -m 0644 $(WAVE420L_WORK_DIR)/vdi/linux/driver/venc.ko $(TARGET_DIR)/root/wave420l/venc.ko
|
||||
$(TARGET_MAKE_ENV) INSTALL_MOD_PATH=$(INSTALL_MOD_PATH) \
|
||||
$(MAKE) -C $(WAVE420L_WORK_DIR) -f $(WAVE420L_WORK_DIR)/WaveEncDriver_buildroot.mak
|
||||
endif
|
||||
|
||||
$(eval $(generic-package))
|
||||
|
||||
@@ -3,8 +3,6 @@
|
||||
# wave511
|
||||
#
|
||||
################################################################################
|
||||
|
||||
|
||||
WAVE511_SITE=$(TOPDIR)/../soft_3rdpart/wave511/code
|
||||
WAVE511_SITE_METHOD=local
|
||||
WAVE511_INSTALL_STAGING = YES
|
||||
@@ -13,7 +11,6 @@ export KERNELDIR=$(TOPDIR)/../work/linux
|
||||
|
||||
define WAVE511_BUILD_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) -f $(@D)/WaveDecode_buildroot.mak
|
||||
# $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) -f $(@D)/WaveDecDriver_buildroot.mak
|
||||
endef
|
||||
|
||||
define WAVE511_CLEAN_CMDS
|
||||
@@ -21,13 +18,10 @@ define WAVE511_CLEAN_CMDS
|
||||
endef
|
||||
|
||||
define WAVE511_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0777 $(@D)/vdi/linux/driver/load.sh $(TARGET_DIR)/root/wave511/vdec_load.sh
|
||||
$(INSTALL) -D -m 0777 $(@D)/vdi/linux/driver/unload.sh $(TARGET_DIR)/root/wave511/vdec_unload.sh
|
||||
$(INSTALL) -D -m 0644 $(@D)/libsfdec.so $(TARGET_DIR)/usr/lib/libsfdec.so
|
||||
$(INSTALL) -D -m 0644 $(WAVE511_SITE)/../firmware/chagall.bin $(TARGET_DIR)/lib/firmware/chagall.bin
|
||||
endef
|
||||
|
||||
|
||||
define WAVE511_INSTALL_STAGING_CMDS
|
||||
mkdir -p $(STAGING_DIR)/usr/include/wave511
|
||||
$(INSTALL) -D -m 0644 $(@D)/sample_v2/component_list_decoder.h $(STAGING_DIR)/usr/include/wave511/sample_v2/component_list_decoder.h
|
||||
@@ -65,16 +59,14 @@ define WAVE511_INSTALL_STAGING_CMDS
|
||||
endef
|
||||
|
||||
define WAVE511_UNINSTALL_TARGET_CMDS
|
||||
rm -rf $(TARGET_DIR)/root/vdec.ko
|
||||
rm -rf $(TARGET_DIR)/root/vdec_load.sh
|
||||
rm -rf $(TARGET_DIR)/root/vdec_unload.sh
|
||||
|
||||
endef
|
||||
|
||||
wave511_WORK_DIR := $(TARGET_DIR)/../build/wave511
|
||||
wave511driver:
|
||||
ifneq ($(wildcard $(wave511_WORK_DIR)/WaveDecDriver_buildroot.mak),)
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(wave511_WORK_DIR) -f $(wave511_WORK_DIR)/WaveDecDriver_buildroot.mak
|
||||
$(INSTALL) -D -m 0644 $(wave511_WORK_DIR)/vdi/linux/driver/vdec.ko $(TARGET_DIR)/root/wave511/vdec.ko
|
||||
$(TARGET_MAKE_ENV) INSTALL_MOD_PATH=$(INSTALL_MOD_PATH) \
|
||||
$(MAKE) -C $(wave511_WORK_DIR) -f $(wave511_WORK_DIR)/WaveDecDriver_buildroot.mak
|
||||
endif
|
||||
|
||||
$(eval $(generic-package))
|
||||
|
||||
Reference in New Issue
Block a user