From b203540adfe3d2a55d02d085e700cde402980999 Mon Sep 17 00:00:00 2001 From: Javier Viguera Date: Thu, 25 Jun 2015 18:45:52 +0200 Subject: [PATCH] module-atheros: add calibration for wireless no bluetooth variants Some CC6 variants have wireless but not bluetooth. Those variants need a different calibration file. Signed-off-by: Javier Viguera (cherry picked from commit a74363cf4a9b239edf9d628f84fe7e88002c0f5c) --- .../kernel-module-atheros.bb | 11 +++++--- .../kernel-module-atheros/atheros-pre-up | 25 +++++++++++++----- .../ccimx6/Digi_6203_2_ANT-US.bin | Bin 0 -> 2048 bytes .../ccimx6/Digi_6203_2_ANT-World.bin | Bin 0 -> 2048 bytes 4 files changed, 25 insertions(+), 11 deletions(-) create mode 100644 meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros/ccimx6/Digi_6203_2_ANT-US.bin create mode 100644 meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros/ccimx6/Digi_6203_2_ANT-World.bin 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 index 20e4f2129..d7f6c0c36 100644 --- 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 @@ -26,6 +26,8 @@ SRC_URI += " \ # MX6 wireless calibration file and post-down script SRC_URI_append_ccimx6 = " \ + file://Digi_6203_2_ANT-US.bin \ + file://Digi_6203_2_ANT-World.bin \ file://Digi_6203-6233-US.bin \ file://atheros-post-down \ " @@ -38,10 +40,6 @@ do_configure_prepend() { cp ${WORKDIR}/Makefile ${S}/ } -do_configure_prepend_ccimx6() { - cp ${WORKDIR}/Digi_6203-6233-US.bin ${S}/Firmware_Package/target/AR6003/hw2.1.1/ -} - do_install_append() { install -d ${D}${sysconfdir}/network/if-pre-up.d install -m 0755 ${WORKDIR}/atheros-pre-up ${D}${sysconfdir}/network/if-pre-up.d/atheros @@ -55,6 +53,11 @@ do_install_append() { do_install_append_ccimx6() { install -d ${D}${sysconfdir}/network/if-post-down.d install -m 0755 ${WORKDIR}/atheros-post-down ${D}${sysconfdir}/network/if-post-down.d/atheros + install -m 0644 \ + ${WORKDIR}/Digi_6203_2_ANT-US.bin \ + ${WORKDIR}/Digi_6203_2_ANT-World.bin \ + ${WORKDIR}/Digi_6203-6233-US.bin \ + ${D}/lib/firmware/ath6k/AR6003/hw2.1.1/ } FILES_${PN} += " \ diff --git a/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros/atheros-pre-up b/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros/atheros-pre-up index 3323f89fd..6685d7dab 100644 --- a/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros/atheros-pre-up +++ b/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros/atheros-pre-up @@ -88,16 +88,27 @@ rm -f ${TMP_MACFILE} # MACHINE="$(cat /proc/device-tree/digi,machine,name 2>/dev/null || \ cat /sys/kernel/machine/name)" +MOD_VARIANT="$(cat /proc/device-tree/digi,hwid,variant 2>/dev/null)" REGION_CODE="$(cat /proc/device-tree/digi,hwid,cert 2>/dev/null || \ cat /sys/kernel/${MACHINE}/mod_cert)" + +# 'ccimx6sbc' variants 0x05, 0x07 and 0x0a do not have bluetooth +# and use a different calibration file US_CODE="0x0" -BDATA_SOURCE="Digi_6203-6233-World.bin" -if [ -n "${REGION_CODE}" -a "${US_CODE}" = "${REGION_CODE}" ]; then - BDATA_SOURCE="Digi_6203-6233-US.bin" - logger -t atheros "Setting US wireless region." -else - logger -t atheros "Setting non-US (world) wireless region." -fi +case "${MACHINE}:${MOD_VARIANT}:${REGION_CODE}" in + ccimx6sbc:0x05:${US_CODE}|ccimx6sbc:0x07:${US_CODE}|ccimx6sbc:0x0a:${US_CODE}) + BDATA_SOURCE="Digi_6203_2_ANT-US.bin" + logger -t atheros "Setting US wireless region (no bluetooth)";; + ccimx6sbc:0x05:*|ccimx6sbc:0x07:*|ccimx6sbc:0x0a:*) + BDATA_SOURCE="Digi_6203_2_ANT-World.bin" + logger -t atheros "Setting non-US (world) wireless region (no bluetooth)";; + *:*:${US_CODE}) + BDATA_SOURCE="Digi_6203-6233-US.bin" + logger -t atheros "Setting US wireless region";; + *:*:*) + BDATA_SOURCE="Digi_6203-6233-World.bin" + logger -t atheros "Setting non-US (world) wireless region";; +esac # We don't want to rewrite NAND every time we boot so only # change the link if it is wrong. diff --git a/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros/ccimx6/Digi_6203_2_ANT-US.bin b/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros/ccimx6/Digi_6203_2_ANT-US.bin new file mode 100644 index 0000000000000000000000000000000000000000..885ee80cf870cb2b0735390b02f756aab59bd611 GIT binary patch literal 2048 zcmeHFL1@!Z82-CE9s=SnJGzsi9)=e|koaEH)~Hh={U zpjZSD+N({!ADa!aunBE6O?w{!bhTM(6OG?NOg2x$LMoG%(gAt)!rWY>Q3pt5i{;?d z)a==*#HHBW;?hJSaiw#sufM(v=c^9^j`aX+B&*%wVVvKG8)p7<0DFD^4p7YxNy2$v z5C%qgokK0w`ydGA= zlqqwJgIecUhSoXSP8noG;W*Cgb~%{@0eFVVnt;WFl@9CDFz~pYw4;mxOWQkOod6eY zx9OD*)d7mn=OaFJf`E#T39wHUFd7ELhbm)W`Viox?VuCjplp!C7sIcSf|1X6hm;a2 z6~XIuyK#%>3BYX=>>&Zey1Sh{y`kuMSQbx>9UnP4TDd6&sVIwzNJC}x0_mukPos+{ zgObl8myA2@xmzx1f z#qICTPh5WISE{GA>dohG`n_7HlGSu$kCj_4?NGlJQo#)aqER^}N5V!vHT2zpSTr^f zi-dpVQ}J!gq=*~|1;6IgAD$X88IPZvjLI#+{~HH#1D^_+;9bKZ&CEom$JNh;Oxu0q zP?dejXP&JX-Lg6(spIN_9B<#DIXKg6dv6D;lFSyh@*5rSAH1vUySKYa|A_Dt5ENBx literal 0 HcmV?d00001 diff --git a/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros/ccimx6/Digi_6203_2_ANT-World.bin b/meta-digi-arm/recipes-kernel/kernel-module-atheros/kernel-module-atheros/ccimx6/Digi_6203_2_ANT-World.bin new file mode 100644 index 0000000000000000000000000000000000000000..5b4a7eef65988064016a9342e0b718b1f98a6d77 GIT binary patch literal 2048 zcmeHFPiWIn9R79dMpkN;)hz2mU1OGc7#qY{-B74oo3z_Z*WjEhIB;`a?ad;1kw=T* zMJV&2hn*zuYVl&xA&BgvcnFBQ?C4JZJq#~`Ao0DVtG07f*kK2KAur$e`+mRgdxQrR zz|{|}vyGr!xeNfpJirSX8VgM~-aEU?1=EpG=$NcrltV*A`IMB+RBW3(7)Bojf-+6|HH2RJK?S zClZsV6R8XFsk!;lRO(X8MrW|vh4c0M07u#Z)@CZz{(hX_i3?8tQvgr3zXnwDhZX6p zC`sJ|q9`6r_e}rNQ@FXj66_Ww@?upA9u}pRjYBwfZ_5Ob*BEa@>0QRW>#=wC1P-P4p9|C-|2TTIIlpAsZyjIAD5zpTuTZwG8 z;P0%gBPQ=TH1PDxf=PsX8%^^JZ}3)_grDekHV0)g8XoZ2{pw-7L^- zx4%0-arvEJshYN3uRnj?_1Z?YtYKQatlVO$M*Uhyhu18K#niYOjad0~?>7tLvG`~_ z8u^}2k8NV6MAhhU_)C7_-D3;J$HvZ#$JA}X{|o!_2R;@u;oFv1NhYHcBl@R8rs1x2 zpu#@qGf$SRHdRk5`iQc9@+%YY4c^i9&FdYde?<5JfdW)e literal 0 HcmV?d00001