From 1061489a6220d8cf20d4a186a645693767f04646 Mon Sep 17 00:00:00 2001 From: Javier Viguera Date: Tue, 16 Apr 2013 17:24:02 +0200 Subject: [PATCH] atheros: update to GPL driver v3.4p4 This version of the driver can be redistributed, so remove the build-from-objects part of the recipes. https://jira.digi.com/browse/DEL-412 Signed-off-by: Javier Viguera --- .../files/{Makefile.git => Makefile} | 38 ++------ .../kernel-module-atheros/files/Makefile.obj | 45 --------- .../kernel-module-atheros.bb | 68 ++++++++++++++ .../kernel-module-atheros_git.bb | 92 ------------------- 4 files changed, 77 insertions(+), 166 deletions(-) rename meta-digi-arm/recipes-kernel/kernel-module-atheros/files/{Makefile.git => Makefile} (50%) delete mode 100644 meta-digi-arm/recipes-kernel/kernel-module-atheros/files/Makefile.obj create mode 100644 meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros.bb delete mode 100644 meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros_git.bb diff --git a/meta-digi-arm/recipes-kernel/kernel-module-atheros/files/Makefile.git b/meta-digi-arm/recipes-kernel/kernel-module-atheros/files/Makefile similarity index 50% rename from meta-digi-arm/recipes-kernel/kernel-module-atheros/files/Makefile.git rename to meta-digi-arm/recipes-kernel/kernel-module-atheros/files/Makefile index b27f0f02a..93dfd19b1 100644 --- a/meta-digi-arm/recipes-kernel/kernel-module-atheros/files/Makefile.git +++ b/meta-digi-arm/recipes-kernel/kernel-module-atheros/files/Makefile @@ -1,5 +1,5 @@ -ATH_DRV_BASEDIR := Ath6kl_LinuxRelease/Generic_Packages/compat-wireless -ATH_FIR_BASEDIR := Ath6kl_LinuxRelease/Firmware_Package/target/AR6003/hw2.1.1 +ATH_DRV_BASEDIR := compat-wireless +ATH_FIR_BASEDIR := Firmware_Package/target/AR6003/hw2.1.1 ifneq ($(KERNELRELEASE),) @@ -29,22 +29,18 @@ obj-y += $(ATH_DRV_BASEDIR)/drivers/net/wireless/ath/ath6kl/ else #ifneq ($(KERNELRELEASE),) ## Firmware files -FIRMWARE := $(ATH_FIR_BASEDIR)/ath6kl_fw_concurrency/athtcmd_ram.bin -FIRMWARE += $(ATH_FIR_BASEDIR)/ath6kl_fw_concurrency/athwlan.bin +FIRMWARE := $(ATH_FIR_BASEDIR)/fw_tablet_dongle/athtcmd_ram.bin +FIRMWARE += $(ATH_FIR_BASEDIR)/fw_tablet_dongle/athwlan.bin +FIRMWARE += $(ATH_FIR_BASEDIR)/fw_tablet_dongle/fw-4.bin +FIRMWARE += $(ATH_FIR_BASEDIR)/fw_tablet_dongle/nullTestFlow.bin +FIRMWARE += $(ATH_FIR_BASEDIR)/fw_tablet_dongle/utf.bin FIRMWARE += $(ATH_FIR_BASEDIR)/Digi_6203-6233-US.bin FIRMWARE += $(ATH_FIR_BASEDIR)/Digi_6203-6233-World.bin -FIRMWARE += $(ATH_FIR_BASEDIR)/ath6kl_fw_concurrency/fw-4.bin -FIRMWARE += $(ATH_FIR_BASEDIR)/ath6kl_fw_concurrency/nullTestFlow.bin -FIRMWARE += $(ATH_FIR_BASEDIR)/ath6kl_fw_concurrency/utf.bin ifeq ("$(DEL_PLATFORM)","cpx2") FIRMWARE += $(ATH_FIR_BASEDIR)/calData_AR6103_Digi_X2e_B.bin FIRMWARE += $(ATH_FIR_BASEDIR)/calData_AR6103_Digi_X2e_B_world.bin endif -COMPAT_OBJS = $(filter-out $(addprefix $(ATH_DRV_BASEDIR)/compat/,built-in.o compat.mod.o compat.o), $(wildcard $(ATH_DRV_BASEDIR)/compat/*.o)) -CFG802_OBJS = $(filter-out $(addprefix $(ATH_DRV_BASEDIR)/net/wireless/,built-in.o cfg80211.mod.o cfg80211.o), $(wildcard $(ATH_DRV_BASEDIR)/net/wireless/*.o)) -ATH6KL_OBJS = $(filter-out $(addprefix $(ATH_DRV_BASEDIR)/drivers/net/wireless/ath/ath6kl/,built-in.o ath6kl_sdio.mod.o ath6kl_sdio.o), $(wildcard $(ATH_DRV_BASEDIR)/drivers/net/wireless/ath/ath6kl/*.o)) - SRC := $(shell pwd) all: @@ -53,27 +49,11 @@ all: modules_install: $(MAKE) -C $(KERNEL_SRC) M=$(SRC) modules_install # Fix installation directory of the modules. - find $(INSTALL_MOD_PATH)/lib/modules/$(KERNEL_VERSION)/extra/Ath6kl_LinuxRelease -type f -name '*.ko' | \ + find $(INSTALL_MOD_PATH)/lib/modules/$(KERNEL_VERSION)/extra/$(ATH_DRV_BASEDIR) -type f -name '*.ko' | \ xargs -I modfile mv -f modfile $(INSTALL_MOD_PATH)/lib/modules/$(KERNEL_VERSION)/extra/ - rm -rf $(INSTALL_MOD_PATH)/lib/modules/*/extra/Ath6kl_LinuxRelease + rm -rf $(INSTALL_MOD_PATH)/lib/modules/*/extra/$(ATH_DRV_BASEDIR) # Install firmware mkdir -p $(INSTALL_MOD_PATH)/lib/firmware/ath6k/AR6003/hw2.1.1/ install -m 0644 $(FIRMWARE) $(INSTALL_MOD_PATH)/lib/firmware/ath6k/AR6003/hw2.1.1/ -tarball: TAR_DIR = $(SRC)/_tarball -tarball: - for i in $(COMPAT_OBJS) $(CFG802_OBJS) $(ATH6KL_OBJS); do \ - mkdir -p $(TAR_DIR)/$$(dirname $${i}); \ - install -m 0644 $${i} $(TAR_DIR)/$$(dirname $${i})/$$(basename $${i})_shipped; \ - done - for i in $(FIRMWARE); do \ - mkdir -p $(TAR_DIR)/$$(dirname $${i}); \ - install -m 0644 $${i} $(TAR_DIR)/$$(dirname $${i})/; \ - done - REV="$$(git rev-parse --short --verify HEAD)"; \ - rm -f atheros-$(DEL_PLATFORM)-$${REV}.tar.gz && \ - tar cz --transform 's,\(^[^/]\+/\),\1$(DEL_PLATFORM)/,' \ - --numeric-owner --owner 0 --group 0 -f atheros-$(DEL_PLATFORM)-$${REV}.tar.gz -C $(TAR_DIR) . - -rm -rf $(TAR_DIR) - endif #ifneq ($(KERNELRELEASE),) diff --git a/meta-digi-arm/recipes-kernel/kernel-module-atheros/files/Makefile.obj b/meta-digi-arm/recipes-kernel/kernel-module-atheros/files/Makefile.obj deleted file mode 100644 index 7d2ce7429..000000000 --- a/meta-digi-arm/recipes-kernel/kernel-module-atheros/files/Makefile.obj +++ /dev/null @@ -1,45 +0,0 @@ -ATH_DRV_BASEDIR := Ath6kl_LinuxRelease/Generic_Packages/compat-wireless -ATH_FIR_BASEDIR := Ath6kl_LinuxRelease/Firmware_Package/target/AR6003/hw2.1.1 - -ifneq ($(KERNELRELEASE),) - -COMPAT_OBJS_SHIPPED := $(wildcard $(src)/$(ATH_DRV_BASEDIR)/compat/*.o_shipped) -CFG802_OBJS_SHIPPED := $(wildcard $(src)/$(ATH_DRV_BASEDIR)/net/wireless/*.o_shipped) -ATH6KL_OBJS_SHIPPED := $(wildcard $(src)/$(ATH_DRV_BASEDIR)/drivers/net/wireless/ath/ath6kl/*.o_shipped) - -COMPAT_OBJS := $(subst $(src)/,,$(COMPAT_OBJS_SHIPPED:.o_shipped=.o)) -CFG802_OBJS := $(subst $(src)/,,$(CFG802_OBJS_SHIPPED:.o_shipped=.o)) -ATH6KL_OBJS := $(subst $(src)/,,$(ATH6KL_OBJS_SHIPPED:.o_shipped=.o)) - -obj-m := compat.o cfg80211.o ath6kl_sdio.o -compat-y := $(COMPAT_OBJS) -cfg80211-y := $(CFG802_OBJS) -ath6kl_sdio-y := $(ATH6KL_OBJS) - -else #ifneq ($(KERNELRELEASE),) - -## Firmware files -FIRMWARE := $(ATH_FIR_BASEDIR)/ath6kl_fw_concurrency/athtcmd_ram.bin -FIRMWARE += $(ATH_FIR_BASEDIR)/ath6kl_fw_concurrency/athwlan.bin -FIRMWARE += $(ATH_FIR_BASEDIR)/Digi_6203-6233-US.bin -FIRMWARE += $(ATH_FIR_BASEDIR)/Digi_6203-6233-World.bin -FIRMWARE += $(ATH_FIR_BASEDIR)/ath6kl_fw_concurrency/fw-4.bin -FIRMWARE += $(ATH_FIR_BASEDIR)/ath6kl_fw_concurrency/nullTestFlow.bin -FIRMWARE += $(ATH_FIR_BASEDIR)/ath6kl_fw_concurrency/utf.bin -ifeq ("$(DEL_PLATFORM)","cpx2") -FIRMWARE += $(ATH_FIR_BASEDIR)/calData_AR6103_Digi_X2e_B.bin -FIRMWARE += $(ATH_FIR_BASEDIR)/calData_AR6103_Digi_X2e_B_world.bin -endif - -SRC := $(shell pwd) - -all: - $(MAKE) -C $(KERNEL_SRC) M=$(SRC) - -modules_install: - $(MAKE) -C $(KERNEL_SRC) M=$(SRC) modules_install - # Install firmware - mkdir -p $(INSTALL_MOD_PATH)/lib/firmware/ath6k/AR6003/hw2.1.1/ - install -m 0644 $(FIRMWARE) $(INSTALL_MOD_PATH)/lib/firmware/ath6k/AR6003/hw2.1.1/ - -endif #ifneq ($(KERNELRELEASE),) diff --git a/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros.bb b/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros.bb new file mode 100644 index 000000000..e9e73714c --- /dev/null +++ b/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros.bb @@ -0,0 +1,68 @@ +# Copyright (C) 2013 Digi International. + +DESCRIPTION = "Atheros's wireless driver" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/ISC;md5=f3b90e78ea0cffb20bf5cca7947a896d" + +inherit module + +PR = "r0" + +# Uncomment to build the driver from GIT repository (internal use only) +# ATHEROS_BUILD_FROM_GIT ?= "1" + +SRCREV = "993df85975a76ce17cadc9d35327d79b0c1c6c09" +SRCREV_SHORT = "${@'${SRCREV}'[:7]}" + +# Checksums for 'atheros-${SRCREV_SHORT}.tar.gz' tarball +TARBALL_MD5 = "5105958c4af3012639a19164c062f058" +TARBALL_SHA256 = "10f1da779f45b3fca14b7c9c087aff1dd7f7a1a5a49b2fc63b6214de6856e004" + +SRC_URI_git = "${DIGI_LOG_GIT}linux-modules/atheros.git;protocol=git" +SRC_URI_tar = "${DIGI_MIRROR}/atheros-${SRCREV_SHORT}.tar.gz;md5sum=${TARBALL_MD5};sha256sum=${TARBALL_SHA256}" + +SRC_URI = "${@base_conditional('ATHEROS_BUILD_FROM_GIT', '1' , '${SRC_URI_git}', '${SRC_URI_tar}', d)}" +SRC_URI += " \ + file://50-firmware.rules \ + file://atheros \ + file://atheros.conf \ + file://firmware.sh \ + file://Makefile \ + " + +S = "${@base_conditional('ATHEROS_BUILD_FROM_GIT', '1' , '${WORKDIR}/git', '${WORKDIR}/atheros-${SRCREV_SHORT}', d)}" + +EXTRA_OEMAKE = "DEL_PLATFORM=${MACHINE} KLIB_BUILD=${STAGING_KERNEL_DIR}" + +do_configure_prepend() { + cp ${WORKDIR}/Makefile ${S}/Makefile +} + +do_install_append() { + install -d ${D}${sysconfdir}/network/if-pre-up.d + install -m 0755 ${WORKDIR}/atheros ${D}${sysconfdir}/network/if-pre-up.d/ + install -d ${D}${sysconfdir}/modprobe.d + install -m 0644 ${WORKDIR}/atheros.conf ${D}${sysconfdir}/modprobe.d/ + install -d ${D}${sysconfdir}/udev/rules.d + install -m 0644 ${WORKDIR}/50-firmware.rules ${D}${sysconfdir}/udev/rules.d/ + install -d ${D}${base_libdir}/udev + install -m 0755 ${WORKDIR}/firmware.sh ${D}${base_libdir}/udev/ +} + +FILES_${PN} += " \ + /lib/firmware/ath6k/AR6003/hw2.1.1/athtcmd_ram.bin \ + /lib/firmware/ath6k/AR6003/hw2.1.1/athwlan.bin \ + /lib/firmware/ath6k/AR6003/hw2.1.1/Digi_6203-6233-US.bin \ + /lib/firmware/ath6k/AR6003/hw2.1.1/Digi_6203-6233-World.bin \ + /lib/firmware/ath6k/AR6003/hw2.1.1/fw-4.bin \ + /lib/firmware/ath6k/AR6003/hw2.1.1/nullTestFlow.bin \ + /lib/firmware/ath6k/AR6003/hw2.1.1/utf.bin \ + /lib/udev/firmware.sh \ + " +FILES_${PN}_append_cpx2 = " \ + /lib/firmware/ath6k/AR6003/hw2.1.1/calData_AR6103_Digi_X2e_B.bin \ + /lib/firmware/ath6k/AR6003/hw2.1.1/calData_AR6103_Digi_X2e_B_world.bin \ + " + +PACKAGE_ARCH = "${MACHINE_ARCH}" +COMPATIBLE_MACHINE = "(ccardimx28js|cpx2)" diff --git a/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros_git.bb b/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros_git.bb deleted file mode 100644 index eaee7ba9a..000000000 --- a/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros_git.bb +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright (C) 2013 Digi International. - -DESCRIPTION = "Atheros's wireless driver" -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD;md5=3775480a712fc46a69647678acb234cb" - -inherit module - -PR = "r0" - -# Uncomment to build the driver from sources (internal use only) -# ATHEROS_BUILD_SRC ?= "1" - -SRCREV = "e135bedca602cdcf25f4f48a6aafeb7311f7c700" - -# Checksums for 'atheros-${MACHINE}-${SRCREV_SHORT}.tar.gz' tarballs -TARBALL_MD5_ccardimx28js = "75d1ee875ca686927f62cb004a26911b" -TARBALL_SHA256_ccardimx28js = "b975ede2f28e5a54433e25fd9ea35556d7ddc1382d26805f33af068110a18395" -TARBALL_MD5_cpx2 = "" -TARBALL_SHA256_cpx2 = "" - -SRC_URI_git = " \ - ${DIGI_LOG_GIT}linux-modules/atheros.git;protocol=git \ - file://Makefile.git \ - " -SRCREV_SHORT = "${@'${SRCREV}'[:7]}" -SRC_URI_obj = " \ - ${DIGI_MIRROR}/atheros-${MACHINE}-${SRCREV_SHORT}.tar.gz;md5sum=${TARBALL_MD5};sha256sum=${TARBALL_SHA256} \ - file://Makefile.obj \ - " - -SRC_URI = "${@base_conditional('ATHEROS_BUILD_SRC', '1' , '${SRC_URI_git}', '${SRC_URI_obj}', d)}" -SRC_URI += " \ - file://atheros \ - file://atheros.conf \ - file://50-firmware.rules \ - file://firmware.sh \ - " - -S = "${@base_conditional('ATHEROS_BUILD_SRC', '1' , '${WORKDIR}/git', '${WORKDIR}/${MACHINE}', d)}" - -EXTRA_OEMAKE = "DEL_PLATFORM=${MACHINE} KLIB_BUILD=${STAGING_KERNEL_DIR}" - -do_configure_prepend() { - [ "${ATHEROS_BUILD_SRC}" = "1" ] && MK_SUFFIX=".git" || MK_SUFFIX=".obj" - cp ${WORKDIR}/Makefile${MK_SUFFIX} ${S}/Makefile -} - -do_install_append() { - install -d ${D}${sysconfdir}/network/if-pre-up.d - install -m 0755 ${WORKDIR}/atheros ${D}${sysconfdir}/network/if-pre-up.d/ - install -d ${D}${sysconfdir}/modprobe.d - install -m 0644 ${WORKDIR}/atheros.conf ${D}${sysconfdir}/modprobe.d/ - install -d ${D}${sysconfdir}/udev/rules.d - install -m 0644 ${WORKDIR}/50-firmware.rules ${D}${sysconfdir}/udev/rules.d/ - install -d ${D}${base_libdir}/udev - install -m 0755 ${WORKDIR}/firmware.sh ${D}${base_libdir}/udev/ -} - -FILES_${PN} += " \ - /lib/firmware/ath6k/AR6003/hw2.1.1/athtcmd_ram.bin \ - /lib/firmware/ath6k/AR6003/hw2.1.1/athwlan.bin \ - /lib/firmware/ath6k/AR6003/hw2.1.1/Digi_6203-6233-US.bin \ - /lib/firmware/ath6k/AR6003/hw2.1.1/Digi_6203-6233-World.bin \ - /lib/firmware/ath6k/AR6003/hw2.1.1/fw-4.bin \ - /lib/firmware/ath6k/AR6003/hw2.1.1/nullTestFlow.bin \ - /lib/firmware/ath6k/AR6003/hw2.1.1/utf.bin \ - /lib/udev/firmware.sh \ - " -FILES_${PN}_append_cpx2 = " \ - /lib/firmware/ath6k/AR6003/hw2.1.1/calData_AR6103_Digi_X2e_B.bin \ - /lib/firmware/ath6k/AR6003/hw2.1.1/calData_AR6103_Digi_X2e_B_world.bin \ - " - -# Deploy objects tarball if building from sources -do_deploy() { - if [ "${ATHEROS_BUILD_SRC}" = "1" ]; then - oe_runmake tarball - install -d ${DEPLOY_DIR_IMAGE} - if [ -f "${S}/atheros-${MACHINE}-${SRCREV_SHORT}.tar.gz" ]; then - cp ${S}/atheros-${MACHINE}-${SRCREV_SHORT}.tar.gz ${DEPLOY_DIR_IMAGE}/ - else - bberror "Objects tarball not found: ${S}/atheros-${MACHINE}-${SRCREV_SHORT}.tar.gz" - exit 1 - fi - fi -} - -addtask deploy before do_build after do_install - -PACKAGE_ARCH = "${MACHINE_ARCH}" -COMPATIBLE_MACHINE = "(ccardimx28js|cpx2)"