From 6948172c6f889d2a2bfacd0cc7a372f8f82fc744 Mon Sep 17 00:00:00 2001 From: Eugene Krasnikov Date: Wed, 30 Oct 2013 08:23:33 +0000 Subject: [PATCH] wcn36xx: move all documentation to one place Now all information about wcn36xx is concentrated in one place: http://wireless.kernel.org/en/users/Drivers/wcn36xx Signed-off-by: Eugene Krasnikov --- README.md | 45 ++-------------------- backports/README-backports | 76 -------------------------------------- 2 files changed, 3 insertions(+), 118 deletions(-) delete mode 100644 backports/README-backports diff --git a/README.md b/README.md index 6b3e78a..e02f613 100644 --- a/README.md +++ b/README.md @@ -1,46 +1,7 @@ +Documentation: http://wireless.kernel.org/en/users/Drivers/wcn36xx -Build Instructions for CyanogenMod+Mint - -1) Follow instructions (http://wiki.cyanogenmod.org/w/Build_for_mint) - do download and build CM sources. - -2) In case of build error "No such file or directory: - 'vendor/sony/blue-common/proprietary/boot/RPM.bin'" download file - RPM.bin from https://github.com/TheMuppets/proprietary_vendor_sony - and put it to the folder 'vendor/sony/blue-common/proprietary/boot' - -3) Flash built image to the phone as described here - http://www.xperiablog.net/2012/12/04/how-to-install-cyanogenmod-10-on-your-sony-xperia-t-guide/ - -4) Download wcn36xx sources from https://github.com/KrasnikovEugene/wcn36xx - -5) cd wcn36xx - -6) make - -Build Instructions for CyanogenMod+Mako - -1) Follow instructions (http://wiki.cyanogenmod.org/w/Build_for_mako) - do download and build CM sources. - -3) Flash the built image to the phone - -4) Download wcn36xx sources from https://github.com/KrasnikovEugene/wcn36xx - -5) cd wcn36xx - -6) Run make (must happen in the same session where breakfast is run) - -Hardcoding makefile paths - -If you don't want to use Android build scripts to set the build -environment variables you can hardcode them in the .config file: - -ANDROID_BUILD_TOP=/home/foo/mako/cm-10.1 -CM_BUILD=mako - -ARM_EABI_TOOLCHAIN=$(ANDROID_BUILD_TOP)/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin -ANDROID_PRODUCT_OUT=$(ANDROID_BUILD_TOP)/out/target/product/$(CM_BUILD) +IRC: #wcn36xx at Freenode Mailing list: wcn36xx@lists.infradead.org + Subscription: http://lists.infradead.org/mailman/listinfo/wcn36xx diff --git a/backports/README-backports b/backports/README-backports deleted file mode 100644 index 113ed6e..0000000 --- a/backports/README-backports +++ /dev/null @@ -1,76 +0,0 @@ -This file describes how to build wcn36xx with backports -It assumes you have a prepared cyanogenmod built somewhere already - -1) Open up a terminal -2) Change to a directory where you'll keep your git repositories like ~/git/ -3) Checkout backports - # git clone git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/backports.git - -4 Checkout linux-next - # git clone --no-checkout git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git - The --no-checkout is there to save space since backports will pickout the relevant stuff anyway. - -5) Checkout wcn36xx from upstream or your own branch - # git clone git@github.com:KrasnikovEugene/wcn36xx.git - -6) Prepare backports - # cd backports - # cp ../wcn36xx/backports/0001-wcn36xx-backports-config.patch . - # git am 0001-wcn36xx-backports-config.patch - -7) Generate a build tree - Stay in the backports folder and do a git log - Find the first commit that says something like: - "This puts us in sync with next-20130618" - Then execute the command: - # ./gentree.py --verbose --clean --git-revision next-20130618 --copy-list copy-list.mac80211 --extra-driver ../ copy-list.wcn36xx ../linux-next/ ../backport-wcn - - This command will create the folder ../backport-wcn where it will put all the necessary linux stuff from linux-next. - It will also apply a number of patches, if any of these fail you must sort it out otherwise the build folder will - not be ready. - -8) # cd ../backport-wcn - -9) Time to build! - - # export CM_BUILD=mako - # export CM_ROOT=~/mako/cm-10.1 - This sets up some links to your cm build - - # make KLIB=$CM_ROOT/out/target/product/$CM_BUILD/obj/KERNEL_OBJ \ - KLIB_BUILD=$CM_ROOT/out/target/product/$CM_BUILD/obj/KERNEL_OBJ \ - ARCH=arm \ - CROSS_COMPILE=$CM_ROOT/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi- \ - defconfig-wcn36xx - - This executes the defconfig for the environment - - - # make KLIB=$CM_ROOT/out/target/product/$CM_BUILD/obj/KERNEL_OBJ \ - KLIB_BUILD=$CM_ROOT/out/target/product/$CM_BUILD/obj/KERNEL_OBJ \ - ARCH=arm \ - CROSS_COMPILE=$CM_ROOT/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi- - - Builds the module and all necessary compat/cfg80211/mac80211 modules as well. - -10) Symlink wcn36xx driver to your own repository - - The gentree.py command will copy the driver from the place you pointed out. - In this case '../'. However, if you want to work on it I recommend replacing the - folder with a symlink to where you have your repo for wcn36xx. - # rm -rf drivers/net/wireless/ath/wcn36xx - # ln -s ~/git/wcn36xx drivers/net/wireless/ath/wcn36xx - -NOTES FOR OSX: -To make this run on OSX (Mountain Lion) I had to do some changes. -1) The make commands shall not use the same path for the CROSS_COMPILE option. "linux-x86" must be replaced with "darwin-x86". - -2) The Makefile in backport-wcn must be modified. - The comment on line 101 looking like this: - # RHEL as well, sadly we need to grep for it ;\ - It must be remove or else you will get a bash error. - -3) You must modify the kconf/Makefile - To the first line in this file (beginning with CFLAGS) add -DKBUILD_NO_NLS to the end. - Otherwise you will get a lkc.h error when building. -