diff --git a/CMake/pkg.cmake b/CMake/pkg.cmake index d41199d9f..1d0a7bc35 100644 --- a/CMake/pkg.cmake +++ b/CMake/pkg.cmake @@ -28,11 +28,15 @@ execute_process( OUTPUT_VARIABLE XDNA_CPACK_LINUX_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE ) -execute_process( - COMMAND bash -c "source /etc/os-release && echo \"\$ID \$ID_LIKE\"" - OUTPUT_VARIABLE XDNA_CPACK_LINUX_PKG_FLAVOR - OUTPUT_STRIP_TRAILING_WHITESPACE - ) +if (EXISTS "/etc/arch-release") + set(XDNA_CPACK_LINUX_PKG_FLAVOR "arch") +else() + execute_process( + COMMAND bash -c "source /etc/os-release && echo \"\$ID \$ID_LIKE\"" + OUTPUT_VARIABLE XDNA_CPACK_LINUX_PKG_FLAVOR + OUTPUT_STRIP_TRAILING_WHITESPACE + ) +endif() execute_process( COMMAND echo ${XRT_VERSION_STRING} COMMAND awk -F. "{print $1}" @@ -129,6 +133,8 @@ elseif("${XDNA_CPACK_LINUX_PKG_FLAVOR}" MATCHES "fedora") set(CPACK_RPM_POST_INSTALL_SCRIPT_FILE "${CMAKE_CURRENT_BINARY_DIR}/package/postinst") set(CPACK_RPM_PRE_UNINSTALL_SCRIPT_FILE "${CMAKE_CURRENT_BINARY_DIR}/package/prerm") endif() +elseif("${XDNA_CPACK_LINUX_PKG_FLAVOR}" MATCHES "arch") + set(CPACK_GENERATOR "TGZ") else("${XDNA_CPACK_LINUX_PKG_FLAVOR}" MATCHES "debian") message(WARNING "Unknown Linux package flavor: ${XDNA_CPACK_LINUX_PKG_FLAVOR}") endif("${XDNA_CPACK_LINUX_PKG_FLAVOR}" MATCHES "debian") diff --git a/src/driver/amdxdna/Makefile b/src/driver/amdxdna/Makefile index caa0d670a..1c1ee72cc 100644 --- a/src/driver/amdxdna/Makefile +++ b/src/driver/amdxdna/Makefile @@ -41,6 +41,7 @@ endif XDNA_DRIVER_VERSION ?= 2.21.0 XDNA_DATE ?= $(shell date +%Y%m%d) XDNA_HASH ?= $(shell git rev-parse HEAD) +USE_LLVM ?= $(shell zgrep "CONFIG_CC_IS_CLANG" /proc/config.gz 1>/dev/null && echo -n "LLVM=1") ifndef MODULE_VER_STR MODULE_VER_STR := $(XDNA_DRIVER_VERSION)_$(XDNA_DATE),$(XDNA_HASH) @@ -49,7 +50,7 @@ endif DEFINES += -DMODULE_VER_STR='\"$(MODULE_VER_STR)\"' modules: - $(MAKE) -C $(KERNEL_SRC) M=$(SRC_DIR) CFLAGS_MODULE="$(DEFINES)" OFT_CONFIG_AMDXDNA_PCI=$(PCI) OFT_CONFIG_AMDXDNA_OF=$(OF) modules + $(MAKE) -C $(KERNEL_SRC) M=$(SRC_DIR) CFLAGS_MODULE="$(DEFINES)" OFT_CONFIG_AMDXDNA_PCI=$(PCI) OFT_CONFIG_AMDXDNA_OF=$(OF) $(USE_LLVM) modules modules_install: $(MAKE) -C $(KERNEL_SRC) M=$(SRC_DIR) modules_install diff --git a/src/driver/amdxdna/aie2_pci.c b/src/driver/amdxdna/aie2_pci.c index e527fd752..5f7ce0f26 100644 --- a/src/driver/amdxdna/aie2_pci.c +++ b/src/driver/amdxdna/aie2_pci.c @@ -1331,6 +1331,7 @@ static int aie2_get_array_async_error(struct amdxdna_dev *xdna, struct amdxdna_d static int aie2_get_array_hwctx(struct amdxdna_client *client, struct amdxdna_drm_get_array *args) { struct amdxdna_dev *xdna = client->xdna; + struct amdxdna_drm_hwctx_entry input = {}; struct amdxdna_drm_hwctx_entry *tmp; int ctx_limit, ctx_cnt, ret; u32 buf_size; @@ -1363,8 +1364,6 @@ static int aie2_get_array_hwctx(struct amdxdna_client *client, struct amdxdna_dr break; case DRM_AMDXDNA_HW_CONTEXT_BY_ID: - struct amdxdna_drm_hwctx_entry input = {}; - ret = amdxdna_drm_copy_array_from_user(args, &input, sizeof(input), 1); if (ret) goto exit;