| |
| |
| |
| |
| @@ -0,0 +1,146 @@ |
| + |
| +COMPONENT_TARGETS = $(HARDWARE_EBOX_3350DX2) |
| + |
| +NEED_ABS_PATH = true |
| + |
| +COMPONENT_IS_3PP = true |
| + |
| + |
| +include ../../../../../build-system/constants.mk |
| + |
| + |
| +SOURCE_REQUIRES = sources/hal/drivers/wireless/broadcom-wl-x86 |
| + |
| +REQUIRES = boot/kernel/ebox-3350dx2/6.0.7 |
| + |
| +# ======= __END_OF_REQUIRES__ ======= |
| + |
| + |
| +version = 6.30.223.271 |
| +kernel_version = 6.0.7 |
| +modules_version = 6.0.7 |
| +tar_xz_archive = $(SRC_PACKAGE_PATH)/hal/drivers/wireless/broadcom-wl-x86/broadcom-wl-x86-$(version).tar.xz |
| +SRC_ARCHIVE = $(tar_xz_archive) |
| +SRC_DIR = $(TARGET_BUILD_DIR)/broadcom-wl-x86-$(version) |
| +doc_dir_name = broadcom-wl-x86-driver-$(version) |
| +src_done = $(TARGET_BUILD_DIR)/.source_done |
| + |
| +kernel_sources = $(TARGET_DEST_DIR)/usr/src/linux-$(kernel_version) |
| + |
| +build_brcmwl_pkg = $(TARGET_BUILD_DIR)/.brcmwl_pkg_done |
| + |
| +modules_done = $(TARGET_BUILD_DIR)/.modules_done |
| + |
| + |
| +PATCHES = PATCHES |
| + |
| + |
| +####### Targets |
| + |
| +PKG_GROUP = boot |
| + |
| + |
| +BRCMWL_PKG_NAME = broadcom-wl |
| +BRCMWL_PKG_VERSION = 6.30.223.271 |
| +BRCMWL_PKG_ARCH = $(PKGARCH) |
| +BRCMWL_PKG_DISTRO_NAME = $(DISTRO_NAME) |
| +BRCMWL_PKG_DISTRO_VERSION = $(DISTRO_VERSION) |
| +BRCMWL_PKG_GROUP = $(PKG_GROUP) |
| +### |---handy-ruler-------------------------------| |
| +BRCMWL_PKG_SHORT_DESCRIPTION = Broadcom wireless driver for Linux kernel |
| +BRCMWL_PKG_URL = $(BUG_URL) |
| +BRCMWL_PKG_LICENSE = custom |
| +BRCMWL_PKG_DESCRIPTION_FILE = $(TARGET_BUILD_DIR)/$(BRCMWL_PKG_NAME)-pkg-description |
| +BRCMWL_PKG_DESCRIPTION_FILE_IN = $(BRCMWL_PKG_NAME)-pkg-description.in |
| +BRCMWL_PKG_INSTALL_SCRIPT = $(TARGET_BUILD_DIR)/$(BRCMWL_PKG_NAME)-pkg-install.sh |
| +BRCMWL_PKG_INSTALL_SCRIPT_IN = $(BRCMWL_PKG_NAME)-pkg-install.sh.in |
| + |
| +BRCMWL_PKG = $(CURDIR)/$(TARGET_BUILD_DIR)/$(BRCMWL_PKG_NAME)-package |
| + |
| +pkg_basename = $(BRCMWL_PKG_NAME)-$(BRCMWL_PKG_VERSION)-$(BRCMWL_PKG_ARCH)-$(BRCMWL_PKG_DISTRO_NAME)-$(BRCMWL_PKG_DISTRO_VERSION) |
| + |
| +pkg_archive = $(TARGET_BUILD_DIR)/$(PKG_GROUP)/$(pkg_basename).$(pkg_arch_suffix) |
| +pkg_certificate = $(call cert-name,$(pkg_archive)) |
| +pkg_signature = $(call sign-name,$(pkg_archive)) |
| +pkg_description = $(call desc-name,$(pkg_archive)) |
| +products = $(call pkg-files,$(pkg_archive)) |
| + |
| +BUILD_TARGETS = $(modules_done) |
| +BUILD_TARGETS += $(build_brcmwl_pkg) |
| + |
| +PRODUCT_TARGETS = $(products) |
| + |
| +ROOTFS_TARGETS = $(pkg_archive) |
| + |
| + |
| +include ../../../../../build-system/core.mk |
| + |
| + |
| +ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_I586_GLIBC)),) |
| +ARCH = x86 |
| +endif |
| + |
| +INSTALL_MOD_PATH=$(BRCMWL_PKG) |
| +KERNEL_SOURCES_DIR = $(kernel_sources) |
| + |
| +USE_TARGET_DEST_DIR_SYSROOT = no |
| + |
| + |
| +####### Dependencies |
| + |
| +$(src_done): $(SRC_ARCHIVE) $(PATCHES_DEP) |
| + $(UNPACK_SRC_ARCHIVE) |
| + $(APPLY_PATCHES) |
| + @touch $@ |
| + |
| +LMAKE := $(BUILD_ENVIRONMENT) KBUILD_NOPEDANTIC=1 \ |
| + $(MAKE) -C $(KERNEL_SOURCES_DIR) \ |
| + ARCH=$(ARCH) CROSS_COMPILE="$(CROSS_PREFIX)" \ |
| + M=$(CURDIR)/$(SRC_DIR) $(extra_build_environment) \ |
| + V=$(if $(VERBOSE),1,0) |
| + |
| +# add to LMAKE: CONFIG_DEBUG_SECTION_MISMATCH=y for more detailed log. |
| + |
| +$(modules_done): $(src_done) |
| + @+$(LMAKE) |
| + @touch $@ |
| + |
| +$(build_brcmwl_pkg): $(modules_done) |
| + @+$(LMAKE) modules_install INSTALL_MOD_PATH=$(INSTALL_MOD_PATH) |
| + # ======= Install Documentation ======= |
| + @mkdir -p $(BRCMWL_PKG)/usr/doc/$(doc_dir_name) |
| + @cp -a $(CURDIR)/doc/README* $(BRCMWL_PKG)/usr/doc/$(doc_dir_name) |
| + @mkdir -p $(BRCMWL_PKG)/usr/share/doc/$(doc_dir_name) |
| + @cp -a $(CURDIR)/doc/README* $(BRCMWL_PKG)/usr/share/doc/$(doc_dir_name) |
| + @cp -a $(SRC_DIR)/README* $(BRCMWL_PKG)/usr/share/doc/$(doc_dir_name) |
| + # ======= Install the same to $(TARGET_DEST_DIR) ======= |
| + $(call install-into-devenv, $(BRCMWL_PKG)) |
| + @touch $@ |
| + |
| +$(BRCMWL_PKG_DESCRIPTION_FILE): $(BRCMWL_PKG_DESCRIPTION_FILE_IN) |
| + @cat $< | $(SED) -e "s/@VERSION@/$(version)/g" > $@ |
| + |
| +$(BRCMWL_PKG_INSTALL_SCRIPT): $(BRCMWL_PKG_INSTALL_SCRIPT_IN) |
| + @cat $< | $(SED) -e "s/@MODULES_VERSION@/$(modules_version)/g" > $@ |
| + |
| +$(pkg_certificate) : $(pkg_archive) ; |
| +$(pkg_signature) : $(pkg_archive) ; |
| +$(pkg_description) : $(pkg_archive) ; |
| + |
| +$(pkg_archive): $(build_sgxddk_pkg) $(BRCMWL_PKG_DESCRIPTION_FILE) $(BRCMWL_PKG_INSTALL_SCRIPT) |
| + @cp $(BRCMWL_PKG_DESCRIPTION_FILE) $(BRCMWL_PKG)/.DESCRIPTION |
| + @cp $(BRCMWL_PKG_INSTALL_SCRIPT) $(BRCMWL_PKG)/.INSTALL |
| + @chmod a+x $(BRCMWL_PKG)/.INSTALL |
| + @$(BUILD_PKG_REQUIRES) $(BRCMWL_PKG)/.REQUIRES |
| + @echo "pkgname=$(BRCMWL_PKG_NAME)" > $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "pkgver=$(BRCMWL_PKG_VERSION)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "arch=$(BRCMWL_PKG_ARCH)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "distroname=$(BRCMWL_PKG_DISTRO_NAME)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "distrover=$(BRCMWL_PKG_DISTRO_VERSION)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "group=$(BRCMWL_PKG_GROUP)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "short_description=\"$(BRCMWL_PKG_SHORT_DESCRIPTION)\"" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "url=$(BRCMWL_PKG_URL)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "license=$(BRCMWL_PKG_LICENSE)" >> $(BRCMWL_PKG)/.PKGINFO |
| + @$(PSEUDO) sh -c "cd $(BRCMWL_PKG) && \ |
| + chown -R root:root . && \ |
| + $(MAKE_PACKAGE) -J --linkadd=yes $(GNUPG_OPTIONS) -m -d .. ." |
| |
| |
| |
| |
| @@ -0,0 +1,2 @@ |
| + |
| +../../../../../sources/hal/drivers/wireless/broadcom-wl-x86/patches/broadcom-wl-x86-6.30.223.271-x86.patch -p0 |
| |
| |
| |
| |
| @@ -0,0 +1,19 @@ |
| +# HOW TO EDIT THIS FILE: |
| +# The "handy ruler" below makes it easier to edit a package description. Line |
| +# up the first '|' above the ':' following the base package name, and the '|' |
| +# on the right side marks the last column you can put a character in. You must |
| +# make exactly 11 lines for the formatting to be correct. It's also |
| +# customary to leave one space after the ':'. |
| + |
| + |-----handy-ruler------------------------------------------------------| |
| +broadcom-wl: broadcom-wl @VERSION@ (Broadcom wireless driver for Linux kernel) |
| +broadcom-wl: |
| +broadcom-wl: This is the Broadcom Linux hybrid wireless driver (32-bit). |
| +broadcom-wl: |
| +broadcom-wl: |
| +broadcom-wl: Source GitHub Repository: |
| +broadcom-wl: https://github.com/antoineco/broadcom-wl.git |
| +broadcom-wl: |
| +broadcom-wl: |
| +broadcom-wl: |
| +broadcom-wl: |
| |
| |
| |
| |
| @@ -0,0 +1,79 @@ |
| +#!/bin/sh |
| + |
| +# Preserve new files |
| +install_file() { |
| + NEW="$1" |
| + OLD="`dirname $NEW`/`basename $NEW .new`" |
| + # If there's no file by that name, mv it over: |
| + if [ ! -r $OLD ]; then |
| + mv $NEW $OLD |
| + elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy |
| + rm $NEW |
| + fi |
| + # Otherwise, we leave the .new copy for the admin to consider... |
| +} |
| + |
| + |
| +# arg 1: the new package version |
| +pre_install() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +post_install() { |
| + # Notice we use an absolute path below, rather than sbin/depmod. This is because |
| + # we're testing to see if we are on the bootdisk, which will not have /sbin/depmod. |
| + # If we aren't, we will signal init to restart using the new binary. |
| + # The presence of "/etc/system-installer" is under consideration as a better test. |
| + # Also we have to check that we are not in the installer mode on the target system |
| + # ("/etc/system-installer"), and we have to be sure that we are on the working system |
| + # on the target hardware ("proc/sys/kernel/osrelease" - relative path). |
| + if [ -r proc/sys/kernel/osrelease -a ! -r /etc/system-installer -a -x /bin/uname -a -x /sbin/depmod ]; then |
| + # Determine the version of the running kernel: |
| + RELEASE=$(uname -r) |
| + ### Update module dependencies ### |
| + # If /usr is mounted and we have 'find', we can try to take a shortcut: |
| + if [ -x /usr/bin/find -a -e /lib/modules/$RELEASE/modules.dep \ |
| + -a /lib/modules/$RELEASE/modules.dep -nt /etc/modules.conf ]; then |
| + NEWMODS="$(/usr/bin/find /lib/modules/$RELEASE -mindepth 2 -type f -newer /lib/modules/$RELEASE/modules.dep)" |
| + # Only rebuild dependencies if new module(s) are found: |
| + if [ ! "" = "$NEWMODS" ]; then |
| + echo "Updating module dependencies for Linux $RELEASE:" |
| + /sbin/depmod -a |
| + else |
| + echo "Module dependencies up to date (no new kernel modules found)." |
| + fi |
| + else # we don't have find, or there is no existing modules.dep, or it is out of date. |
| + echo "Updating module dependencies for Linux $RELEASE:" |
| + /sbin/depmod -b / $RELEASE |
| + fi |
| + fi |
| +} |
| + |
| +# arg 1: the new package version |
| +# arg 2: the old package version |
| +pre_update() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +# arg 2: the old package version |
| +post_update() { |
| + post_install |
| +} |
| + |
| +# arg 1: the old package version |
| +pre_remove() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the old package version |
| +post_remove() { |
| + /bin/true |
| +} |
| + |
| + |
| +operation=$1 |
| +shift |
| + |
| +$operation $* |
| |
| Property changes on: drivers/ebox-3350dx2/broadcom-wl/6.30.223.271/broadcom-wl-pkg-install.sh.in |
| ___________________________________________________________________ |
| Added: svn:executable |
| ## -0,0 +1 ## |
| +* |
| \ No newline at end of property |
| |
| |
| |
| |
| @@ -0,0 +1,461 @@ |
| + |
| +Broadcom Linux hybrid wireless driver |
| +Release Version: 6.30.223.271 |
| +Release Date: Fri Sep 18 15:41:45 2015 |
| + |
| +DISCLAIMER |
| +---------- |
| +This is an Official Release of Broadcom's hybrid Linux driver for use with |
| +Broadcom based hardware. |
| + |
| +WHERE TO GET THE RELEASE |
| +------------------------ |
| +For General Web releases: http://www.broadcom.com/support/802.11/linux_sta.php |
| + |
| +IMPORTANT NOTE AND DISCUSSION OF HYBRID DRIVER |
| +---------------------------------------------- |
| +There are separate tarballs for 32 bit and 64 bit x86 CPU architectures. |
| +Make sure you use the appropriate tarball for your machine. |
| + |
| +Other than 32 vs 64 bit, the hybrid binary is agnostic to the specific |
| +versions (3.5.X) and distributions (Fedora, Ubuntu, SuSE, etc). It performs |
| +all interactions with the OS through OS specific files (wl_linux.c, wl_iw.c, |
| +osl_linux.c) that are shipped in source form. You compile this source on |
| +your system and link with a precompiled binary file (wlc_hybrid.o_shipped) |
| +which contains the rest of the driver. |
| + |
| +PRECOMPILED DRIVER |
| +------------------- |
| +Some distros (Ubuntu and Fedora at the least) already have a version of |
| +this driver in their repositories precompiled, tested and ready to go. |
| +You just use the package manager to install the proper package. If |
| +its available for your distro, this is usually an easier solution. See |
| +the end of this document for further discussion. |
| + |
| +ABOUT THIS RELEASE |
| +------------------- |
| +This is a rollup release. It includes and deprecates all previous releases |
| +and patches. At the time of release there are no existing patches for this |
| +release from Broadcom. |
| + |
| +SUPPORTED DEVICES |
| +----------------- |
| +The cards with the following PCI Device IDs are supported with this driver. |
| +Both Broadcom and and Dell product names are described. Cards not listed |
| +here may also work. |
| + |
| + BRCM PCI PCI Dell |
| + Product Name Vendor ID Device ID Product ID |
| + ------------- ---------- --------- ----------- |
| + 4311 2.4 Ghz 0x14e4 0x4311 Dell 1390 |
| + 4311 Dualband 0x14e4 0x4312 Dell 1490 |
| + 4311 5 Ghz 0x14e4 0x4313 |
| + 4312 2.4 Ghz 0x14e4 0x4315 Dell 1395 |
| + 4313 2.4 Ghz 0x14e4 0x4727 Dell 1501/1504 |
| + 4321 Dualband 0x14e4 0x4328 Dell 1505 |
| + 4321 Dualband 0x14e4 0x4328 Dell 1500 |
| + 4321 2.4 Ghz 0x14e4 0x4329 |
| + 4321 5 Ghz 0x14e4 0x432a |
| + 4322 Dualband 0x14e4 0x432b Dell 1510 |
| + 4322 2.4 Ghz 0x14e4 0x432c |
| + 4322 5 Ghz 0x14e4 0x432d |
| + 43142 2.4 Ghz 0x14e4 0x4365 |
| + 43224 Dualband 0x14e4 0x4353 Dell 1520 |
| + 43225 2.4 Ghz 0x14e4 0x4357 |
| + 43227 2.4 Ghz 0x14e4 0x4358 |
| + 43228 Dualband 0x14e4 0x4359 Dell 1530/1540 |
| + 4331 Dualband 0x14e4 0x4331 |
| + 4360 Dualband 0x14e4 0x43a0 |
| + 4352 Dualband 0x14e4 0x43a0 |
| + |
| +To find the Device ID's of Broadcom cards on your machines do: |
| +# lspci -n | grep 14e4 |
| + |
| +NOTABLE CHANGES |
| +--------------- |
| + Upgraded to support 3.19 kernel APIs. |
| + |
| +REQUIREMENTS |
| +------------ |
| +Building this driver requires that your machine have the proper tools, |
| +packages, header files and libraries to build a standard kernel module. |
| +This usually is done by installing the kernel developer or kernel source |
| +package and varies from distro to distro. Consult the documentation for |
| +your specific OS. |
| + |
| +If you cannot successfully build a module that comes with your distro's |
| +kernel developer or kernel source package, you will not be able to build |
| +this module either. |
| + |
| +If you try to build this module but get an error message that looks like |
| +this: |
| + |
| +make: *** /lib/modules/"release"/build: No such file or directory. Stop. |
| + |
| +Then you do not have the proper packages installed, since installing the |
| +proper packages will create /lib/modules/"release"/build on your system. |
| + |
| +On Fedora install 'kernel-devel' from |
| +Package Manager (System-> Administration-> Add/Remove Software) |
| +or |
| +yum install kernel-devel |
| +or |
| +yum install kernel-PAE-devel |
| + |
| +On Ubuntu, you will need headers and tools. Try these commands: |
| +# apt-get install build-essential linux-headers-generic |
| +# apt-get build-dep linux |
| + |
| +To check to see if you have this directory do this: |
| + |
| +# ls /lib/modules/`uname -r`/build |
| + |
| +BUILD INSTRUCTIONS |
| +------------------ |
| +1. Setup the directory by untarring the proper tarball: |
| + |
| +For 32 bit: hybrid-v35-nodebug-pcoem-portsrc.tar.gz |
| +For 64 bit: hybrid-v35_64-nodebug-pcoem-portsrc.tar.gz |
| + |
| +Example: |
| +# mkdir hybrid_wl |
| +# cd hybrid_wl |
| +# tar xzf <path>/hybrid-v35-nodebug-pcoem-portsrc.tar.gz or |
| + <path>/hybrid-v35_64-nodebug-pcoem-portsrc.tar.gz |
| + |
| +2. Build the driver as a Linux loadable kernel module (LKM): |
| + |
| +# make clean (optional) |
| +# make |
| + |
| +When the build completes, it will produce a wl.ko file in the top level |
| +directory. |
| + |
| +If your driver does not build, check to make sure you have installed the |
| +kernel package described in the requirements above. |
| + |
| +This driver uses cfg80211 API. Code for Wext API is present and can be built |
| +but we have dropped support for it. |
| +As before, the Makefile will still build the matching version for your system. |
| + |
| +# make API=CFG80211 |
| + or |
| +# make API=WEXT (deprecated) |
| + |
| +INSTALL INSTRUCTIONS |
| +-------------------- |
| + |
| +Upgrading from a previous version: |
| +--------------------------------- |
| + |
| +If you were already running a previous version of wl, you'll want to provide |
| +a clean transition from the older driver. (The path to previous driver is |
| +usually /lib/modules/<kernel-version>/kernel/net/wireless) |
| + |
| +# rmmod wl |
| +# mv <path-to-prev-driver>/wl.ko <path-to-prev-driver>/wl.ko.orig |
| +# cp wl.ko <path-to-prev-driver>/wl.ko |
| +# depmod |
| +# modprobe wl |
| + |
| +The new wl driver should now be operational and your all done. |
| + |
| +Fresh installation: |
| +------------------ |
| +1: Remove any other drivers for the Broadcom wireless device. |
| + |
| +There are several other drivers (besides this one) that can drive |
| +Broadcom 802.11 chips. These include b43, brcmsmac, bcma and ssb. They will |
| +conflict with this driver and need to be uninstalled before this driver |
| +can be installed. Any previous revisions of the wl driver also need to |
| +be removed. |
| + |
| +Note: On some systems such as Ubuntu 9.10, the ssb module may load during |
| +boot even though it is blacklisted (see note under Common Issues on how to |
| +resolve this. Nevertheless, ssb still must be removed |
| +(by hand or script) before wl is loaded. The wl driver will not function |
| +properly if ssb the module is loaded. |
| + |
| +# lsmod | grep "brcmsmac\|b43\|ssb\|bcma\|wl" |
| + |
| +If any of these are installed, remove them: |
| +# rmmod b43 |
| +# rmmod brcmsmac |
| +# rmmod ssb |
| +# rmmod bcma |
| +# rmmod wl |
| + |
| +To blacklist these drivers and prevent them from loading in the future: |
| +# echo "blacklist ssb" >> /etc/modprobe.d/blacklist.conf |
| +# echo "blacklist bcma" >> /etc/modprobe.d/blacklist.conf |
| +# echo "blacklist b43" >> /etc/modprobe.d/blacklist.conf |
| +# echo "blacklist brcmsmac" >> /etc/modprobe.d/blacklist.conf |
| + |
| +2: Insmod the driver. |
| + |
| +Otherwise, if you have not previously installed a wl driver, you'll need |
| +to add a security module before using the wl module. Most newer systems |
| +use lib80211 while others use ieee80211_crypt_tkip. See which one works for |
| +your system. |
| + |
| +# modprobe lib80211 |
| + or |
| +# modprobe ieee80211_crypt_tkip |
| + |
| +If your using the cfg80211 version of the driver, then cfg80211 needs to be |
| +loaded: |
| + |
| +# modprobe cfg80211 |
| + |
| +Then: |
| +# insmod wl.ko |
| + |
| +wl.ko is now operational. It may take several seconds for the Network |
| +Manager to notice a new network driver has been installed and show the |
| +surrounding wireless networks. |
| + |
| +If there was an error, see Common issues below. |
| + |
| +Common issues: |
| +---------------- |
| +* After the insmod you may see this message: |
| + WARNING: modpost: missing MODULE_LICENSE() |
| + It is expected, not harmful and can be ignored. |
| + |
| +* If you see this message: |
| + |
| + "insmod: error inserting 'wl.ko': -1 Unknown symbol in module" |
| + |
| + Usually this means that one of the required modules (as mentioned above) is |
| + not loaded. Try this: |
| + # modprobe lib80211 or ieee80211_crypt_tkip (depending on your os) |
| + # modprobe cfg80211 |
| + |
| + Now re-try to insmod the wl driver: |
| + # insmod wl.ko |
| + |
| +* If the wl driver loads but doesn't seem to do anything: |
| + the ssb module may be the cause. Sometimes blacklisting ssb may not |
| + be enough to prevent it from loading and it loads anyway. (This is mostly |
| + seen on Ubuntu/Debian systems). |
| + |
| + Check to see if ssb, bcma, wl or b43 is loaded: |
| + # lsmod | grep "brcmsmac\|ssb\|wl\|b43\|bcma" |
| + |
| + If any of these are installed, remove them: |
| + # rmmod brcmsmac |
| + # rmmod ssb |
| + # rmmod bcma |
| + # rmmod wl |
| + # insmod wl |
| + |
| + Back up the current boot ramfs and generate a new one: |
| + # cp /boot/initrd.img-`uname -r` somewheresafe |
| + # update-initramfs -u |
| + # reboot |
| + |
| +3: Setup to always load at boot time. |
| + |
| +The procedure to make a module load at boot time varies from distro to |
| +distro. Consult the docs for your specific distro to see how. The |
| +following seems to work for my setup on Fedora and Ubuntu. Check your |
| +docs to see the procedure for your distro. |
| + |
| +Follow these steps to have the driver load as part of the boot process: |
| + |
| +# load driver as described above |
| +# cp wl.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless |
| +# depmod -a |
| + |
| +# echo modeprobe wl >> /etc/rc.local (Fedora/SUSE) |
| + |
| +Ubuntu ships a version of wl.ko, so those need to be disabled. On my |
| +system the were several versions, so I searched and renamed the .ko's |
| +like this: |
| + |
| +# sh: for i in `find /lib /var -name wl\.ko`; do mv $i ${i}.orig; done |
| + |
| + |
| +TX POWER EXPLAINED |
| +------------------ |
| +'iwconfig eth1 txpower' & 'iwlist eth1 txpower' set and get the drivers |
| +user-requested transmit power level. This can go up to 32 dbm and allows |
| +the user to lower the tx power to levels below the regulatory limit. |
| +Internally, the actual tx power is always kept within regulatory limits |
| +no matter what the user request is set to. |
| + |
| +WHAT'S NEW IN RELEASE 6.30.223.23X |
| +--------------------------------- |
| ++ Upgraded to Support 3.11 kernels |
| ++ Added cfg80211 wowlan support for Magic Packets and Disconnect |
| + |
| +WHAT'S NEW IN RELEASE 6.30.223.126 |
| +---------------------------------- |
| ++ Upgraded to Support 3.8.x |
| ++ Added 43142 support |
| ++ Added 4352 support |
| ++ Dropped WEXT support |
| + |
| +WHAT'S NEW IN RELEASE 5.100.82.116 |
| +---------------------------------- |
| ++ Support for Linux kernels > 3.0 |
| + |
| +WHAT'S NEW IN RELEASE 5.100.82.115 |
| +---------------------------------- |
| ++ Added cfg80211 API support. The choice of API is done at compile time. If |
| +kernel version >= 2.6.32, cfg80211 is used, otherwise wireless extension |
| +is used. (End users should notice little difference.) |
| ++ Supports Linux kernel 2.6.38 |
| ++ Fix for problem with rebooting while wireless disabled via airline switch. |
| ++ Fix for PR102197 STA does not connect to hidden SSID |
| ++ Fix for PR102214: Could not get rssi (-22)" print comes in 'dmesg' output |
| ++ Supports monitor mode |
| ++ Supports hidden networks |
| ++ Supports rfkill |
| + |
| +WHAT'S NEW IN RELEASE 5.100.82.38 |
| +--------------------------------- |
| ++ Support for bcm43227 and bcm43228 |
| ++ Fix for issue where iwconfig was sometime reporting rate incorrectly |
| ++ Supports rfkill in kernels 2.6.31 to 2.6.36 |
| ++ Supports scan complete event (SIOCGIWSCAN) |
| ++ Adds EAGAIN (busy signal) to query of scan results |
| + |
| +WHAT'S NEW IN RELEASE 5.100.57.15 |
| +--------------------------------- |
| ++ Following fixes (issues introduced in 5.100.57.13) |
| + Issue #87477 - 4313: DUT is not able to associate in WPA2-PSK TKIP/AES |
| + Issue #87533 - NetworkManager: 4313: Unable to associate to APs with WPA2-PSK |
| + |
| +WHAT'S NEW IN RELEASE 5.100.57.13 |
| +--------------------------------- |
| ++ 4313 PHY fixes to improve throughput stability at different ranges |
| ++ Fix for interop issues with different APs |
| ++ Fix for hangs seen during Fn-F2 sequence |
| +- Support for rfkill in kernels 2.6.31 to 2.6.36 |
| + |
| +WHAT'S NEW IN RELEASE 5.60.246.6 |
| +-------------------------------- |
| ++ Supports rfkill in kernels 2.6.31 to 2.6.36 |
| ++ Fix for compile error with multicast list in kernel 2.6.34 |
| ++ Fix for #76743 - Ubuntu9.04: Network manager displays n/w's with radio disabled |
| + |
| +WHAT'S NEW IN RELEASE 5.60.246.2 |
| +-------------------------------- |
| ++ Supports up to linux kernel 2.6.36 (from 2.6.32) |
| ++ Fix for #86668: [Canonical] Bug #611575/617369: System will hang if |
| + you use the F2 hot key to enable/disable wireless quickly while |
| + wireless is still in the process of re-association with AP |
| + |
| +WHAT'S NEW IN RELEASE 5.60.48.36 |
| +-------------------------------- |
| ++ Supports up to linux kernel 2.6.32 |
| ++ Supports hidden networks |
| ++ Supports rfkill in kernels < 2.6.31 |
| ++ Setting power level via 'iwconfig eth1 txpower X' now operational |
| ++ Support for bcm4313 |
| ++ Additional channels in both 2.4 and 5 Ghz bands |
| ++ Fixed issue with tkip group keys that caused this message to repeat often: |
| + TKIP: RX tkey->key_idx=2 frame keyidx=1 priv=ffff8800cf80e840 |
| ++ Following fixes |
| + Issue #72216 - Ubuntu 8.04: standby/resume with WPA2 and wpa_supplicant causes |
| + a continuous assoc/disassoc loop (issue in 2.6.24 kernel) |
| + Issue #72324 - Ubuntu 8.04: cannot ping when Linux STA is IBSS creator with WEP |
| + Issue #76739 - Ubuntu 9.04: unable to connect to hidden network after stdby/resume |
| + Issue #80392 - S4 resume hang with SuSE SLED 11 and 43225 |
| + Issue #80792 - LSTA is not able to associate to AP with transit |
| + |
| + |
| +ISSUES FIXED AND WHAT'S NEW IN RECENT RELEASES |
| +------------------------------------------- |
| ++ Supports monitor mode |
| ++ Supports cfg80211 |
| ++ Supports hidden networks |
| ++ Supports rfkill |
| + |
| + |
| +KNOWN ISSUES AND LIMITATIONS |
| +---------------------------- |
| +#72238 - 20% lower throughput on channels 149, 153, 157, and 161 |
| +#72324 - Ubuntu 8.04: cannot ping when Linux STA is IBSS creator with WEP |
| +enabled |
| +#72216 - Ubuntu 8.04: standby/resume with WPA2 and wpa_supplicant causes |
| +a continuous assoc/disassoc loop (issue with wpa_supplicant, restarting |
| +wpa_supplicant fixes the issue) |
| +#76739 Ubuntu9.04: unable to connect to hidden network after stdby/resume |
| +#76793 Ubuntu9.04: STA fails to create IBSS network in 5 Ghz band |
| + |
| + |
| +KNOWN ISSUES AND LIMITATIONS IN EXTERNAL COMPONENTS |
| +--------------------------------------------------- |
| + |
| +wpa_supplicant 0.6.3 + nl80211 + WEP - (Note: This would only affect you if |
| +you are using wpa_supplicant directly from the command line and specify |
| +nl80211 interface, e.g. "wpa_supplicant -Dnl80211 -ieth1 ..". If you are using |
| +network manager GUI to connect it should work file.) |
| +wpa_supplicant 0.6.3 might have a bug that affect WEP connections created |
| +through nl80211. Upgrade to wpa_supplicant to 0.7.3 would solve this problem. |
| + |
| +Ubuntu 10.10 kernel + nl80211 + WPA/WPA2 - (Note: This would only affect you if |
| +you are using wpa_supplicant directly from the command line and specify |
| +nl80211 interface, e.g. "wpa_supplicant -Dnl80211 -ieth1 ..". If you are using |
| +network manager GUI to connect it should work file.) |
| +Some kernel versions of Ubuntu such as 2.6.35-22 (released with Ubuntu |
| +10.10) may have problems that affect WPA/WPA2 connections created through |
| +nl80211. Upgrade to 2.6.35-25 or later should solve this problem. |
| + |
| +HOW TO USE MONITOR MODE |
| +----------------------- |
| +To enable monitor mode: |
| +$ echo 1 > /proc/brcm_monitor0 => Creates a 'prism0' network interface for use by Wireshark and others. |
| +$ ifconfig prism0 up => Enable the interface |
| + |
| +To disable monitor mode: |
| +$ echo 0 > /proc/brcm_monitor0 |
| + |
| +HOW TO ENABLE WOWL |
| +----------------- |
| +$ iw phyX wowlan enable magic-packet disconnect |
| +$ iw phyX wowlan show |
| + |
| + |
| +HOW TO INSTALL A PRE-COMPILED DRIVER |
| +----------------------------------- |
| +Some of the major linux distros already supply a version of this driver, so |
| +you don't have to compile your own. Most of the distros keep this driver |
| +along with other proprietary or non-GPL drivers in a separate repository. |
| + |
| +For further information see the documentation for your specific distro. |
| + |
| +Fedora: |
| +------ |
| +su -c 'rpm -Uvh |
| +http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm |
| +http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm' |
| + |
| +su - |
| +yum update |
| +yum install kmod-wl |
| + |
| +Ubuntu: |
| +------ |
| +Go to System->Administration->Hardware Drivers |
| +Choose the Broadcom STA wireless driver |
| +Activate |
| + |
| +Sometimes the driver does not show up in the Hardware Drivers choices. In |
| +this case, try reintalling the driver from the GUI or shell like this: |
| + |
| +From the GUI: |
| +Package Manager (System>Administration>Synaptic Package Manager). Click the |
| +Reload button in the upper left corner of Synaptic to refresh your index then |
| +search for and reinstall the package named bcmwl-kernel-source. |
| + |
| +From the shell: |
| +sudo apt-get update |
| +sudo apt-get --reinstall install bcmwl-kernel-source |
| + |
| +In either GUI or text case, after reinstalling, reboot your machine. |
| + |
| +Now go back to System->Administration->Hardware Drivers |
| +and you should see the driver enabled and working. |
| |
| |
| |
| |
| |
| Property changes on: drivers/ebox-3350dx2/broadcom-wl/6.30.223.271/doc |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: drivers/ebox-3350dx2/broadcom-wl/6.30.223.271 |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: drivers/ebox-3350dx2/broadcom-wl |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: drivers/ebox-3350dx2 |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| @@ -0,0 +1,146 @@ |
| + |
| +COMPONENT_TARGETS = $(HARDWARE_INTEL_PC32) |
| + |
| +NEED_ABS_PATH = true |
| + |
| +COMPONENT_IS_3PP = true |
| + |
| + |
| +include ../../../../../build-system/constants.mk |
| + |
| + |
| +SOURCE_REQUIRES = sources/hal/drivers/wireless/broadcom-wl-x86 |
| + |
| +REQUIRES = boot/kernel/intel-pc32/6.0.7 |
| + |
| +# ======= __END_OF_REQUIRES__ ======= |
| + |
| + |
| +version = 6.30.223.271 |
| +kernel_version = 6.0.7 |
| +modules_version = 6.0.7 |
| +tar_xz_archive = $(SRC_PACKAGE_PATH)/hal/drivers/wireless/broadcom-wl-x86/broadcom-wl-x86-$(version).tar.xz |
| +SRC_ARCHIVE = $(tar_xz_archive) |
| +SRC_DIR = $(TARGET_BUILD_DIR)/broadcom-wl-x86-$(version) |
| +doc_dir_name = broadcom-wl-x86-driver-$(version) |
| +src_done = $(TARGET_BUILD_DIR)/.source_done |
| + |
| +kernel_sources = $(TARGET_DEST_DIR)/usr/src/linux-$(kernel_version) |
| + |
| +build_brcmwl_pkg = $(TARGET_BUILD_DIR)/.brcmwl_pkg_done |
| + |
| +modules_done = $(TARGET_BUILD_DIR)/.modules_done |
| + |
| + |
| +PATCHES = PATCHES |
| + |
| + |
| +####### Targets |
| + |
| +PKG_GROUP = boot |
| + |
| + |
| +BRCMWL_PKG_NAME = broadcom-wl |
| +BRCMWL_PKG_VERSION = 6.30.223.271 |
| +BRCMWL_PKG_ARCH = $(PKGARCH) |
| +BRCMWL_PKG_DISTRO_NAME = $(DISTRO_NAME) |
| +BRCMWL_PKG_DISTRO_VERSION = $(DISTRO_VERSION) |
| +BRCMWL_PKG_GROUP = $(PKG_GROUP) |
| +### |---handy-ruler-------------------------------| |
| +BRCMWL_PKG_SHORT_DESCRIPTION = Broadcom wireless driver for Linux kernel |
| +BRCMWL_PKG_URL = $(BUG_URL) |
| +BRCMWL_PKG_LICENSE = custom |
| +BRCMWL_PKG_DESCRIPTION_FILE = $(TARGET_BUILD_DIR)/$(BRCMWL_PKG_NAME)-pkg-description |
| +BRCMWL_PKG_DESCRIPTION_FILE_IN = $(BRCMWL_PKG_NAME)-pkg-description.in |
| +BRCMWL_PKG_INSTALL_SCRIPT = $(TARGET_BUILD_DIR)/$(BRCMWL_PKG_NAME)-pkg-install.sh |
| +BRCMWL_PKG_INSTALL_SCRIPT_IN = $(BRCMWL_PKG_NAME)-pkg-install.sh.in |
| + |
| +BRCMWL_PKG = $(CURDIR)/$(TARGET_BUILD_DIR)/$(BRCMWL_PKG_NAME)-package |
| + |
| +pkg_basename = $(BRCMWL_PKG_NAME)-$(BRCMWL_PKG_VERSION)-$(BRCMWL_PKG_ARCH)-$(BRCMWL_PKG_DISTRO_NAME)-$(BRCMWL_PKG_DISTRO_VERSION) |
| + |
| +pkg_archive = $(TARGET_BUILD_DIR)/$(PKG_GROUP)/$(pkg_basename).$(pkg_arch_suffix) |
| +pkg_certificate = $(call cert-name,$(pkg_archive)) |
| +pkg_signature = $(call sign-name,$(pkg_archive)) |
| +pkg_description = $(call desc-name,$(pkg_archive)) |
| +products = $(call pkg-files,$(pkg_archive)) |
| + |
| +BUILD_TARGETS = $(modules_done) |
| +BUILD_TARGETS += $(build_brcmwl_pkg) |
| + |
| +PRODUCT_TARGETS = $(products) |
| + |
| +ROOTFS_TARGETS = $(pkg_archive) |
| + |
| + |
| +include ../../../../../build-system/core.mk |
| + |
| + |
| +ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_I686_GLIBC)),) |
| +ARCH = x86 |
| +endif |
| + |
| +INSTALL_MOD_PATH=$(BRCMWL_PKG) |
| +KERNEL_SOURCES_DIR = $(kernel_sources) |
| + |
| +USE_TARGET_DEST_DIR_SYSROOT = no |
| + |
| + |
| +####### Dependencies |
| + |
| +$(src_done): $(SRC_ARCHIVE) $(PATCHES_DEP) |
| + $(UNPACK_SRC_ARCHIVE) |
| + $(APPLY_PATCHES) |
| + @touch $@ |
| + |
| +LMAKE := $(BUILD_ENVIRONMENT) KBUILD_NOPEDANTIC=1 \ |
| + $(MAKE) -C $(KERNEL_SOURCES_DIR) \ |
| + ARCH=$(ARCH) CROSS_COMPILE="$(CROSS_PREFIX)" \ |
| + M=$(CURDIR)/$(SRC_DIR) $(extra_build_environment) \ |
| + V=$(if $(VERBOSE),1,0) |
| + |
| +# add to LMAKE: CONFIG_DEBUG_SECTION_MISMATCH=y for more detailed log. |
| + |
| +$(modules_done): $(src_done) |
| + @+$(LMAKE) |
| + @touch $@ |
| + |
| +$(build_brcmwl_pkg): $(modules_done) |
| + @+$(LMAKE) modules_install INSTALL_MOD_PATH=$(INSTALL_MOD_PATH) |
| + # ======= Install Documentation ======= |
| + @mkdir -p $(BRCMWL_PKG)/usr/doc/$(doc_dir_name) |
| + @cp -a $(CURDIR)/doc/README* $(BRCMWL_PKG)/usr/doc/$(doc_dir_name) |
| + @mkdir -p $(BRCMWL_PKG)/usr/share/doc/$(doc_dir_name) |
| + @cp -a $(CURDIR)/doc/README* $(BRCMWL_PKG)/usr/share/doc/$(doc_dir_name) |
| + @cp -a $(SRC_DIR)/README* $(BRCMWL_PKG)/usr/share/doc/$(doc_dir_name) |
| + # ======= Install the same to $(TARGET_DEST_DIR) ======= |
| + $(call install-into-devenv, $(BRCMWL_PKG)) |
| + @touch $@ |
| + |
| +$(BRCMWL_PKG_DESCRIPTION_FILE): $(BRCMWL_PKG_DESCRIPTION_FILE_IN) |
| + @cat $< | $(SED) -e "s/@VERSION@/$(version)/g" > $@ |
| + |
| +$(BRCMWL_PKG_INSTALL_SCRIPT): $(BRCMWL_PKG_INSTALL_SCRIPT_IN) |
| + @cat $< | $(SED) -e "s/@MODULES_VERSION@/$(modules_version)/g" > $@ |
| + |
| +$(pkg_certificate) : $(pkg_archive) ; |
| +$(pkg_signature) : $(pkg_archive) ; |
| +$(pkg_description) : $(pkg_archive) ; |
| + |
| +$(pkg_archive): $(build_sgxddk_pkg) $(BRCMWL_PKG_DESCRIPTION_FILE) $(BRCMWL_PKG_INSTALL_SCRIPT) |
| + @cp $(BRCMWL_PKG_DESCRIPTION_FILE) $(BRCMWL_PKG)/.DESCRIPTION |
| + @cp $(BRCMWL_PKG_INSTALL_SCRIPT) $(BRCMWL_PKG)/.INSTALL |
| + @chmod a+x $(BRCMWL_PKG)/.INSTALL |
| + @$(BUILD_PKG_REQUIRES) $(BRCMWL_PKG)/.REQUIRES |
| + @echo "pkgname=$(BRCMWL_PKG_NAME)" > $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "pkgver=$(BRCMWL_PKG_VERSION)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "arch=$(BRCMWL_PKG_ARCH)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "distroname=$(BRCMWL_PKG_DISTRO_NAME)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "distrover=$(BRCMWL_PKG_DISTRO_VERSION)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "group=$(BRCMWL_PKG_GROUP)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "short_description=\"$(BRCMWL_PKG_SHORT_DESCRIPTION)\"" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "url=$(BRCMWL_PKG_URL)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "license=$(BRCMWL_PKG_LICENSE)" >> $(BRCMWL_PKG)/.PKGINFO |
| + @$(PSEUDO) sh -c "cd $(BRCMWL_PKG) && \ |
| + chown -R root:root . && \ |
| + $(MAKE_PACKAGE) -J --linkadd=yes $(GNUPG_OPTIONS) -m -d .. ." |
| |
| |
| |
| |
| @@ -0,0 +1,2 @@ |
| + |
| +../../../../../sources/hal/drivers/wireless/broadcom-wl-x86/patches/broadcom-wl-x86-6.30.223.271-x86.patch -p0 |
| |
| |
| |
| |
| @@ -0,0 +1,19 @@ |
| +# HOW TO EDIT THIS FILE: |
| +# The "handy ruler" below makes it easier to edit a package description. Line |
| +# up the first '|' above the ':' following the base package name, and the '|' |
| +# on the right side marks the last column you can put a character in. You must |
| +# make exactly 11 lines for the formatting to be correct. It's also |
| +# customary to leave one space after the ':'. |
| + |
| + |-----handy-ruler------------------------------------------------------| |
| +broadcom-wl: broadcom-wl @VERSION@ (Broadcom wireless driver for Linux kernel) |
| +broadcom-wl: |
| +broadcom-wl: This is the Broadcom Linux hybrid wireless driver (32-bit). |
| +broadcom-wl: |
| +broadcom-wl: |
| +broadcom-wl: Source GitHub Repository: |
| +broadcom-wl: https://github.com/antoineco/broadcom-wl.git |
| +broadcom-wl: |
| +broadcom-wl: |
| +broadcom-wl: |
| +broadcom-wl: |
| |
| |
| |
| |
| @@ -0,0 +1,79 @@ |
| +#!/bin/sh |
| + |
| +# Preserve new files |
| +install_file() { |
| + NEW="$1" |
| + OLD="`dirname $NEW`/`basename $NEW .new`" |
| + # If there's no file by that name, mv it over: |
| + if [ ! -r $OLD ]; then |
| + mv $NEW $OLD |
| + elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy |
| + rm $NEW |
| + fi |
| + # Otherwise, we leave the .new copy for the admin to consider... |
| +} |
| + |
| + |
| +# arg 1: the new package version |
| +pre_install() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +post_install() { |
| + # Notice we use an absolute path below, rather than sbin/depmod. This is because |
| + # we're testing to see if we are on the bootdisk, which will not have /sbin/depmod. |
| + # If we aren't, we will signal init to restart using the new binary. |
| + # The presence of "/etc/system-installer" is under consideration as a better test. |
| + # Also we have to check that we are not in the installer mode on the target system |
| + # ("/etc/system-installer"), and we have to be sure that we are on the working system |
| + # on the target hardware ("proc/sys/kernel/osrelease" - relative path). |
| + if [ -r proc/sys/kernel/osrelease -a ! -r /etc/system-installer -a -x /bin/uname -a -x /sbin/depmod ]; then |
| + # Determine the version of the running kernel: |
| + RELEASE=$(uname -r) |
| + ### Update module dependencies ### |
| + # If /usr is mounted and we have 'find', we can try to take a shortcut: |
| + if [ -x /usr/bin/find -a -e /lib/modules/$RELEASE/modules.dep \ |
| + -a /lib/modules/$RELEASE/modules.dep -nt /etc/modules.conf ]; then |
| + NEWMODS="$(/usr/bin/find /lib/modules/$RELEASE -mindepth 2 -type f -newer /lib/modules/$RELEASE/modules.dep)" |
| + # Only rebuild dependencies if new module(s) are found: |
| + if [ ! "" = "$NEWMODS" ]; then |
| + echo "Updating module dependencies for Linux $RELEASE:" |
| + /sbin/depmod -a |
| + else |
| + echo "Module dependencies up to date (no new kernel modules found)." |
| + fi |
| + else # we don't have find, or there is no existing modules.dep, or it is out of date. |
| + echo "Updating module dependencies for Linux $RELEASE:" |
| + /sbin/depmod -b / $RELEASE |
| + fi |
| + fi |
| +} |
| + |
| +# arg 1: the new package version |
| +# arg 2: the old package version |
| +pre_update() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +# arg 2: the old package version |
| +post_update() { |
| + post_install |
| +} |
| + |
| +# arg 1: the old package version |
| +pre_remove() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the old package version |
| +post_remove() { |
| + /bin/true |
| +} |
| + |
| + |
| +operation=$1 |
| +shift |
| + |
| +$operation $* |
| |
| Property changes on: drivers/intel-pc32/broadcom-wl/6.30.223.271/broadcom-wl-pkg-install.sh.in |
| ___________________________________________________________________ |
| Added: svn:executable |
| ## -0,0 +1 ## |
| +* |
| \ No newline at end of property |
| |
| |
| |
| |
| @@ -0,0 +1,461 @@ |
| + |
| +Broadcom Linux hybrid wireless driver |
| +Release Version: 6.30.223.271 |
| +Release Date: Fri Sep 18 15:41:45 2015 |
| + |
| +DISCLAIMER |
| +---------- |
| +This is an Official Release of Broadcom's hybrid Linux driver for use with |
| +Broadcom based hardware. |
| + |
| +WHERE TO GET THE RELEASE |
| +------------------------ |
| +For General Web releases: http://www.broadcom.com/support/802.11/linux_sta.php |
| + |
| +IMPORTANT NOTE AND DISCUSSION OF HYBRID DRIVER |
| +---------------------------------------------- |
| +There are separate tarballs for 32 bit and 64 bit x86 CPU architectures. |
| +Make sure you use the appropriate tarball for your machine. |
| + |
| +Other than 32 vs 64 bit, the hybrid binary is agnostic to the specific |
| +versions (3.5.X) and distributions (Fedora, Ubuntu, SuSE, etc). It performs |
| +all interactions with the OS through OS specific files (wl_linux.c, wl_iw.c, |
| +osl_linux.c) that are shipped in source form. You compile this source on |
| +your system and link with a precompiled binary file (wlc_hybrid.o_shipped) |
| +which contains the rest of the driver. |
| + |
| +PRECOMPILED DRIVER |
| +------------------- |
| +Some distros (Ubuntu and Fedora at the least) already have a version of |
| +this driver in their repositories precompiled, tested and ready to go. |
| +You just use the package manager to install the proper package. If |
| +its available for your distro, this is usually an easier solution. See |
| +the end of this document for further discussion. |
| + |
| +ABOUT THIS RELEASE |
| +------------------- |
| +This is a rollup release. It includes and deprecates all previous releases |
| +and patches. At the time of release there are no existing patches for this |
| +release from Broadcom. |
| + |
| +SUPPORTED DEVICES |
| +----------------- |
| +The cards with the following PCI Device IDs are supported with this driver. |
| +Both Broadcom and and Dell product names are described. Cards not listed |
| +here may also work. |
| + |
| + BRCM PCI PCI Dell |
| + Product Name Vendor ID Device ID Product ID |
| + ------------- ---------- --------- ----------- |
| + 4311 2.4 Ghz 0x14e4 0x4311 Dell 1390 |
| + 4311 Dualband 0x14e4 0x4312 Dell 1490 |
| + 4311 5 Ghz 0x14e4 0x4313 |
| + 4312 2.4 Ghz 0x14e4 0x4315 Dell 1395 |
| + 4313 2.4 Ghz 0x14e4 0x4727 Dell 1501/1504 |
| + 4321 Dualband 0x14e4 0x4328 Dell 1505 |
| + 4321 Dualband 0x14e4 0x4328 Dell 1500 |
| + 4321 2.4 Ghz 0x14e4 0x4329 |
| + 4321 5 Ghz 0x14e4 0x432a |
| + 4322 Dualband 0x14e4 0x432b Dell 1510 |
| + 4322 2.4 Ghz 0x14e4 0x432c |
| + 4322 5 Ghz 0x14e4 0x432d |
| + 43142 2.4 Ghz 0x14e4 0x4365 |
| + 43224 Dualband 0x14e4 0x4353 Dell 1520 |
| + 43225 2.4 Ghz 0x14e4 0x4357 |
| + 43227 2.4 Ghz 0x14e4 0x4358 |
| + 43228 Dualband 0x14e4 0x4359 Dell 1530/1540 |
| + 4331 Dualband 0x14e4 0x4331 |
| + 4360 Dualband 0x14e4 0x43a0 |
| + 4352 Dualband 0x14e4 0x43a0 |
| + |
| +To find the Device ID's of Broadcom cards on your machines do: |
| +# lspci -n | grep 14e4 |
| + |
| +NOTABLE CHANGES |
| +--------------- |
| + Upgraded to support 3.19 kernel APIs. |
| + |
| +REQUIREMENTS |
| +------------ |
| +Building this driver requires that your machine have the proper tools, |
| +packages, header files and libraries to build a standard kernel module. |
| +This usually is done by installing the kernel developer or kernel source |
| +package and varies from distro to distro. Consult the documentation for |
| +your specific OS. |
| + |
| +If you cannot successfully build a module that comes with your distro's |
| +kernel developer or kernel source package, you will not be able to build |
| +this module either. |
| + |
| +If you try to build this module but get an error message that looks like |
| +this: |
| + |
| +make: *** /lib/modules/"release"/build: No such file or directory. Stop. |
| + |
| +Then you do not have the proper packages installed, since installing the |
| +proper packages will create /lib/modules/"release"/build on your system. |
| + |
| +On Fedora install 'kernel-devel' from |
| +Package Manager (System-> Administration-> Add/Remove Software) |
| +or |
| +yum install kernel-devel |
| +or |
| +yum install kernel-PAE-devel |
| + |
| +On Ubuntu, you will need headers and tools. Try these commands: |
| +# apt-get install build-essential linux-headers-generic |
| +# apt-get build-dep linux |
| + |
| +To check to see if you have this directory do this: |
| + |
| +# ls /lib/modules/`uname -r`/build |
| + |
| +BUILD INSTRUCTIONS |
| +------------------ |
| +1. Setup the directory by untarring the proper tarball: |
| + |
| +For 32 bit: hybrid-v35-nodebug-pcoem-portsrc.tar.gz |
| +For 64 bit: hybrid-v35_64-nodebug-pcoem-portsrc.tar.gz |
| + |
| +Example: |
| +# mkdir hybrid_wl |
| +# cd hybrid_wl |
| +# tar xzf <path>/hybrid-v35-nodebug-pcoem-portsrc.tar.gz or |
| + <path>/hybrid-v35_64-nodebug-pcoem-portsrc.tar.gz |
| + |
| +2. Build the driver as a Linux loadable kernel module (LKM): |
| + |
| +# make clean (optional) |
| +# make |
| + |
| +When the build completes, it will produce a wl.ko file in the top level |
| +directory. |
| + |
| +If your driver does not build, check to make sure you have installed the |
| +kernel package described in the requirements above. |
| + |
| +This driver uses cfg80211 API. Code for Wext API is present and can be built |
| +but we have dropped support for it. |
| +As before, the Makefile will still build the matching version for your system. |
| + |
| +# make API=CFG80211 |
| + or |
| +# make API=WEXT (deprecated) |
| + |
| +INSTALL INSTRUCTIONS |
| +-------------------- |
| + |
| +Upgrading from a previous version: |
| +--------------------------------- |
| + |
| +If you were already running a previous version of wl, you'll want to provide |
| +a clean transition from the older driver. (The path to previous driver is |
| +usually /lib/modules/<kernel-version>/kernel/net/wireless) |
| + |
| +# rmmod wl |
| +# mv <path-to-prev-driver>/wl.ko <path-to-prev-driver>/wl.ko.orig |
| +# cp wl.ko <path-to-prev-driver>/wl.ko |
| +# depmod |
| +# modprobe wl |
| + |
| +The new wl driver should now be operational and your all done. |
| + |
| +Fresh installation: |
| +------------------ |
| +1: Remove any other drivers for the Broadcom wireless device. |
| + |
| +There are several other drivers (besides this one) that can drive |
| +Broadcom 802.11 chips. These include b43, brcmsmac, bcma and ssb. They will |
| +conflict with this driver and need to be uninstalled before this driver |
| +can be installed. Any previous revisions of the wl driver also need to |
| +be removed. |
| + |
| +Note: On some systems such as Ubuntu 9.10, the ssb module may load during |
| +boot even though it is blacklisted (see note under Common Issues on how to |
| +resolve this. Nevertheless, ssb still must be removed |
| +(by hand or script) before wl is loaded. The wl driver will not function |
| +properly if ssb the module is loaded. |
| + |
| +# lsmod | grep "brcmsmac\|b43\|ssb\|bcma\|wl" |
| + |
| +If any of these are installed, remove them: |
| +# rmmod b43 |
| +# rmmod brcmsmac |
| +# rmmod ssb |
| +# rmmod bcma |
| +# rmmod wl |
| + |
| +To blacklist these drivers and prevent them from loading in the future: |
| +# echo "blacklist ssb" >> /etc/modprobe.d/blacklist.conf |
| +# echo "blacklist bcma" >> /etc/modprobe.d/blacklist.conf |
| +# echo "blacklist b43" >> /etc/modprobe.d/blacklist.conf |
| +# echo "blacklist brcmsmac" >> /etc/modprobe.d/blacklist.conf |
| + |
| +2: Insmod the driver. |
| + |
| +Otherwise, if you have not previously installed a wl driver, you'll need |
| +to add a security module before using the wl module. Most newer systems |
| +use lib80211 while others use ieee80211_crypt_tkip. See which one works for |
| +your system. |
| + |
| +# modprobe lib80211 |
| + or |
| +# modprobe ieee80211_crypt_tkip |
| + |
| +If your using the cfg80211 version of the driver, then cfg80211 needs to be |
| +loaded: |
| + |
| +# modprobe cfg80211 |
| + |
| +Then: |
| +# insmod wl.ko |
| + |
| +wl.ko is now operational. It may take several seconds for the Network |
| +Manager to notice a new network driver has been installed and show the |
| +surrounding wireless networks. |
| + |
| +If there was an error, see Common issues below. |
| + |
| +Common issues: |
| +---------------- |
| +* After the insmod you may see this message: |
| + WARNING: modpost: missing MODULE_LICENSE() |
| + It is expected, not harmful and can be ignored. |
| + |
| +* If you see this message: |
| + |
| + "insmod: error inserting 'wl.ko': -1 Unknown symbol in module" |
| + |
| + Usually this means that one of the required modules (as mentioned above) is |
| + not loaded. Try this: |
| + # modprobe lib80211 or ieee80211_crypt_tkip (depending on your os) |
| + # modprobe cfg80211 |
| + |
| + Now re-try to insmod the wl driver: |
| + # insmod wl.ko |
| + |
| +* If the wl driver loads but doesn't seem to do anything: |
| + the ssb module may be the cause. Sometimes blacklisting ssb may not |
| + be enough to prevent it from loading and it loads anyway. (This is mostly |
| + seen on Ubuntu/Debian systems). |
| + |
| + Check to see if ssb, bcma, wl or b43 is loaded: |
| + # lsmod | grep "brcmsmac\|ssb\|wl\|b43\|bcma" |
| + |
| + If any of these are installed, remove them: |
| + # rmmod brcmsmac |
| + # rmmod ssb |
| + # rmmod bcma |
| + # rmmod wl |
| + # insmod wl |
| + |
| + Back up the current boot ramfs and generate a new one: |
| + # cp /boot/initrd.img-`uname -r` somewheresafe |
| + # update-initramfs -u |
| + # reboot |
| + |
| +3: Setup to always load at boot time. |
| + |
| +The procedure to make a module load at boot time varies from distro to |
| +distro. Consult the docs for your specific distro to see how. The |
| +following seems to work for my setup on Fedora and Ubuntu. Check your |
| +docs to see the procedure for your distro. |
| + |
| +Follow these steps to have the driver load as part of the boot process: |
| + |
| +# load driver as described above |
| +# cp wl.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless |
| +# depmod -a |
| + |
| +# echo modeprobe wl >> /etc/rc.local (Fedora/SUSE) |
| + |
| +Ubuntu ships a version of wl.ko, so those need to be disabled. On my |
| +system the were several versions, so I searched and renamed the .ko's |
| +like this: |
| + |
| +# sh: for i in `find /lib /var -name wl\.ko`; do mv $i ${i}.orig; done |
| + |
| + |
| +TX POWER EXPLAINED |
| +------------------ |
| +'iwconfig eth1 txpower' & 'iwlist eth1 txpower' set and get the drivers |
| +user-requested transmit power level. This can go up to 32 dbm and allows |
| +the user to lower the tx power to levels below the regulatory limit. |
| +Internally, the actual tx power is always kept within regulatory limits |
| +no matter what the user request is set to. |
| + |
| +WHAT'S NEW IN RELEASE 6.30.223.23X |
| +--------------------------------- |
| ++ Upgraded to Support 3.11 kernels |
| ++ Added cfg80211 wowlan support for Magic Packets and Disconnect |
| + |
| +WHAT'S NEW IN RELEASE 6.30.223.126 |
| +---------------------------------- |
| ++ Upgraded to Support 3.8.x |
| ++ Added 43142 support |
| ++ Added 4352 support |
| ++ Dropped WEXT support |
| + |
| +WHAT'S NEW IN RELEASE 5.100.82.116 |
| +---------------------------------- |
| ++ Support for Linux kernels > 3.0 |
| + |
| +WHAT'S NEW IN RELEASE 5.100.82.115 |
| +---------------------------------- |
| ++ Added cfg80211 API support. The choice of API is done at compile time. If |
| +kernel version >= 2.6.32, cfg80211 is used, otherwise wireless extension |
| +is used. (End users should notice little difference.) |
| ++ Supports Linux kernel 2.6.38 |
| ++ Fix for problem with rebooting while wireless disabled via airline switch. |
| ++ Fix for PR102197 STA does not connect to hidden SSID |
| ++ Fix for PR102214: Could not get rssi (-22)" print comes in 'dmesg' output |
| ++ Supports monitor mode |
| ++ Supports hidden networks |
| ++ Supports rfkill |
| + |
| +WHAT'S NEW IN RELEASE 5.100.82.38 |
| +--------------------------------- |
| ++ Support for bcm43227 and bcm43228 |
| ++ Fix for issue where iwconfig was sometime reporting rate incorrectly |
| ++ Supports rfkill in kernels 2.6.31 to 2.6.36 |
| ++ Supports scan complete event (SIOCGIWSCAN) |
| ++ Adds EAGAIN (busy signal) to query of scan results |
| + |
| +WHAT'S NEW IN RELEASE 5.100.57.15 |
| +--------------------------------- |
| ++ Following fixes (issues introduced in 5.100.57.13) |
| + Issue #87477 - 4313: DUT is not able to associate in WPA2-PSK TKIP/AES |
| + Issue #87533 - NetworkManager: 4313: Unable to associate to APs with WPA2-PSK |
| + |
| +WHAT'S NEW IN RELEASE 5.100.57.13 |
| +--------------------------------- |
| ++ 4313 PHY fixes to improve throughput stability at different ranges |
| ++ Fix for interop issues with different APs |
| ++ Fix for hangs seen during Fn-F2 sequence |
| +- Support for rfkill in kernels 2.6.31 to 2.6.36 |
| + |
| +WHAT'S NEW IN RELEASE 5.60.246.6 |
| +-------------------------------- |
| ++ Supports rfkill in kernels 2.6.31 to 2.6.36 |
| ++ Fix for compile error with multicast list in kernel 2.6.34 |
| ++ Fix for #76743 - Ubuntu9.04: Network manager displays n/w's with radio disabled |
| + |
| +WHAT'S NEW IN RELEASE 5.60.246.2 |
| +-------------------------------- |
| ++ Supports up to linux kernel 2.6.36 (from 2.6.32) |
| ++ Fix for #86668: [Canonical] Bug #611575/617369: System will hang if |
| + you use the F2 hot key to enable/disable wireless quickly while |
| + wireless is still in the process of re-association with AP |
| + |
| +WHAT'S NEW IN RELEASE 5.60.48.36 |
| +-------------------------------- |
| ++ Supports up to linux kernel 2.6.32 |
| ++ Supports hidden networks |
| ++ Supports rfkill in kernels < 2.6.31 |
| ++ Setting power level via 'iwconfig eth1 txpower X' now operational |
| ++ Support for bcm4313 |
| ++ Additional channels in both 2.4 and 5 Ghz bands |
| ++ Fixed issue with tkip group keys that caused this message to repeat often: |
| + TKIP: RX tkey->key_idx=2 frame keyidx=1 priv=ffff8800cf80e840 |
| ++ Following fixes |
| + Issue #72216 - Ubuntu 8.04: standby/resume with WPA2 and wpa_supplicant causes |
| + a continuous assoc/disassoc loop (issue in 2.6.24 kernel) |
| + Issue #72324 - Ubuntu 8.04: cannot ping when Linux STA is IBSS creator with WEP |
| + Issue #76739 - Ubuntu 9.04: unable to connect to hidden network after stdby/resume |
| + Issue #80392 - S4 resume hang with SuSE SLED 11 and 43225 |
| + Issue #80792 - LSTA is not able to associate to AP with transit |
| + |
| + |
| +ISSUES FIXED AND WHAT'S NEW IN RECENT RELEASES |
| +------------------------------------------- |
| ++ Supports monitor mode |
| ++ Supports cfg80211 |
| ++ Supports hidden networks |
| ++ Supports rfkill |
| + |
| + |
| +KNOWN ISSUES AND LIMITATIONS |
| +---------------------------- |
| +#72238 - 20% lower throughput on channels 149, 153, 157, and 161 |
| +#72324 - Ubuntu 8.04: cannot ping when Linux STA is IBSS creator with WEP |
| +enabled |
| +#72216 - Ubuntu 8.04: standby/resume with WPA2 and wpa_supplicant causes |
| +a continuous assoc/disassoc loop (issue with wpa_supplicant, restarting |
| +wpa_supplicant fixes the issue) |
| +#76739 Ubuntu9.04: unable to connect to hidden network after stdby/resume |
| +#76793 Ubuntu9.04: STA fails to create IBSS network in 5 Ghz band |
| + |
| + |
| +KNOWN ISSUES AND LIMITATIONS IN EXTERNAL COMPONENTS |
| +--------------------------------------------------- |
| + |
| +wpa_supplicant 0.6.3 + nl80211 + WEP - (Note: This would only affect you if |
| +you are using wpa_supplicant directly from the command line and specify |
| +nl80211 interface, e.g. "wpa_supplicant -Dnl80211 -ieth1 ..". If you are using |
| +network manager GUI to connect it should work file.) |
| +wpa_supplicant 0.6.3 might have a bug that affect WEP connections created |
| +through nl80211. Upgrade to wpa_supplicant to 0.7.3 would solve this problem. |
| + |
| +Ubuntu 10.10 kernel + nl80211 + WPA/WPA2 - (Note: This would only affect you if |
| +you are using wpa_supplicant directly from the command line and specify |
| +nl80211 interface, e.g. "wpa_supplicant -Dnl80211 -ieth1 ..". If you are using |
| +network manager GUI to connect it should work file.) |
| +Some kernel versions of Ubuntu such as 2.6.35-22 (released with Ubuntu |
| +10.10) may have problems that affect WPA/WPA2 connections created through |
| +nl80211. Upgrade to 2.6.35-25 or later should solve this problem. |
| + |
| +HOW TO USE MONITOR MODE |
| +----------------------- |
| +To enable monitor mode: |
| +$ echo 1 > /proc/brcm_monitor0 => Creates a 'prism0' network interface for use by Wireshark and others. |
| +$ ifconfig prism0 up => Enable the interface |
| + |
| +To disable monitor mode: |
| +$ echo 0 > /proc/brcm_monitor0 |
| + |
| +HOW TO ENABLE WOWL |
| +----------------- |
| +$ iw phyX wowlan enable magic-packet disconnect |
| +$ iw phyX wowlan show |
| + |
| + |
| +HOW TO INSTALL A PRE-COMPILED DRIVER |
| +----------------------------------- |
| +Some of the major linux distros already supply a version of this driver, so |
| +you don't have to compile your own. Most of the distros keep this driver |
| +along with other proprietary or non-GPL drivers in a separate repository. |
| + |
| +For further information see the documentation for your specific distro. |
| + |
| +Fedora: |
| +------ |
| +su -c 'rpm -Uvh |
| +http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm |
| +http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm' |
| + |
| +su - |
| +yum update |
| +yum install kmod-wl |
| + |
| +Ubuntu: |
| +------ |
| +Go to System->Administration->Hardware Drivers |
| +Choose the Broadcom STA wireless driver |
| +Activate |
| + |
| +Sometimes the driver does not show up in the Hardware Drivers choices. In |
| +this case, try reintalling the driver from the GUI or shell like this: |
| + |
| +From the GUI: |
| +Package Manager (System>Administration>Synaptic Package Manager). Click the |
| +Reload button in the upper left corner of Synaptic to refresh your index then |
| +search for and reinstall the package named bcmwl-kernel-source. |
| + |
| +From the shell: |
| +sudo apt-get update |
| +sudo apt-get --reinstall install bcmwl-kernel-source |
| + |
| +In either GUI or text case, after reinstalling, reboot your machine. |
| + |
| +Now go back to System->Administration->Hardware Drivers |
| +and you should see the driver enabled and working. |
| |
| |
| |
| |
| |
| Property changes on: drivers/intel-pc32/broadcom-wl/6.30.223.271/doc |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: drivers/intel-pc32/broadcom-wl/6.30.223.271 |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: drivers/intel-pc32/broadcom-wl |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: drivers/intel-pc32 |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| @@ -0,0 +1,146 @@ |
| + |
| +COMPONENT_TARGETS = $(HARDWARE_INTEL_PC64) |
| + |
| +NEED_ABS_PATH = true |
| + |
| +COMPONENT_IS_3PP = true |
| + |
| + |
| +include ../../../../../build-system/constants.mk |
| + |
| + |
| +SOURCE_REQUIRES = sources/hal/drivers/wireless/broadcom-wl |
| + |
| +REQUIRES = boot/kernel/intel-pc64/6.0.7 |
| + |
| +# ======= __END_OF_REQUIRES__ ======= |
| + |
| + |
| +version = 6.30.223.271 |
| +kernel_version = 6.0.7 |
| +modules_version = 6.0.7 |
| +tar_xz_archive = $(SRC_PACKAGE_PATH)/hal/drivers/wireless/broadcom-wl/broadcom-wl-$(version).tar.xz |
| +SRC_ARCHIVE = $(tar_xz_archive) |
| +SRC_DIR = $(TARGET_BUILD_DIR)/broadcom-wl-$(version) |
| +doc_dir_name = broadcom-wl-driver-$(version) |
| +src_done = $(TARGET_BUILD_DIR)/.source_done |
| + |
| +kernel_sources = $(TARGET_DEST_DIR)/usr/src/linux-$(kernel_version) |
| + |
| +build_brcmwl_pkg = $(TARGET_BUILD_DIR)/.brcmwl_pkg_done |
| + |
| +modules_done = $(TARGET_BUILD_DIR)/.modules_done |
| + |
| + |
| +PATCHES = PATCHES |
| + |
| + |
| +####### Targets |
| + |
| +PKG_GROUP = boot |
| + |
| + |
| +BRCMWL_PKG_NAME = broadcom-wl |
| +BRCMWL_PKG_VERSION = 6.30.223.271 |
| +BRCMWL_PKG_ARCH = $(PKGARCH) |
| +BRCMWL_PKG_DISTRO_NAME = $(DISTRO_NAME) |
| +BRCMWL_PKG_DISTRO_VERSION = $(DISTRO_VERSION) |
| +BRCMWL_PKG_GROUP = $(PKG_GROUP) |
| +### |---handy-ruler-------------------------------| |
| +BRCMWL_PKG_SHORT_DESCRIPTION = Broadcom wireless driver for Linux kernel |
| +BRCMWL_PKG_URL = $(BUG_URL) |
| +BRCMWL_PKG_LICENSE = custom |
| +BRCMWL_PKG_DESCRIPTION_FILE = $(TARGET_BUILD_DIR)/$(BRCMWL_PKG_NAME)-pkg-description |
| +BRCMWL_PKG_DESCRIPTION_FILE_IN = $(BRCMWL_PKG_NAME)-pkg-description.in |
| +BRCMWL_PKG_INSTALL_SCRIPT = $(TARGET_BUILD_DIR)/$(BRCMWL_PKG_NAME)-pkg-install.sh |
| +BRCMWL_PKG_INSTALL_SCRIPT_IN = $(BRCMWL_PKG_NAME)-pkg-install.sh.in |
| + |
| +BRCMWL_PKG = $(CURDIR)/$(TARGET_BUILD_DIR)/$(BRCMWL_PKG_NAME)-package |
| + |
| +pkg_basename = $(BRCMWL_PKG_NAME)-$(BRCMWL_PKG_VERSION)-$(BRCMWL_PKG_ARCH)-$(BRCMWL_PKG_DISTRO_NAME)-$(BRCMWL_PKG_DISTRO_VERSION) |
| + |
| +pkg_archive = $(TARGET_BUILD_DIR)/$(PKG_GROUP)/$(pkg_basename).$(pkg_arch_suffix) |
| +pkg_certificate = $(call cert-name,$(pkg_archive)) |
| +pkg_signature = $(call sign-name,$(pkg_archive)) |
| +pkg_description = $(call desc-name,$(pkg_archive)) |
| +products = $(call pkg-files,$(pkg_archive)) |
| + |
| +BUILD_TARGETS = $(modules_done) |
| +BUILD_TARGETS += $(build_brcmwl_pkg) |
| + |
| +PRODUCT_TARGETS = $(products) |
| + |
| +ROOTFS_TARGETS = $(pkg_archive) |
| + |
| + |
| +include ../../../../../build-system/core.mk |
| + |
| + |
| +ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_X86_64_GLIBC)),) |
| +ARCH = x86_64 |
| +endif |
| + |
| +INSTALL_MOD_PATH=$(BRCMWL_PKG) |
| +KERNEL_SOURCES_DIR = $(kernel_sources) |
| + |
| +USE_TARGET_DEST_DIR_SYSROOT = no |
| + |
| + |
| +####### Dependencies |
| + |
| +$(src_done): $(SRC_ARCHIVE) $(PATCHES_DEP) |
| + $(UNPACK_SRC_ARCHIVE) |
| + $(APPLY_PATCHES) |
| + @touch $@ |
| + |
| +LMAKE := $(BUILD_ENVIRONMENT) KBUILD_NOPEDANTIC=1 \ |
| + $(MAKE) -C $(KERNEL_SOURCES_DIR) \ |
| + ARCH=$(ARCH) CROSS_COMPILE="$(CROSS_PREFIX)" \ |
| + M=$(CURDIR)/$(SRC_DIR) $(extra_build_environment) \ |
| + V=$(if $(VERBOSE),1,0) |
| + |
| +# add to LMAKE: CONFIG_DEBUG_SECTION_MISMATCH=y for more detailed log. |
| + |
| +$(modules_done): $(src_done) |
| + @+$(LMAKE) |
| + @touch $@ |
| + |
| +$(build_brcmwl_pkg): $(modules_done) |
| + @+$(LMAKE) modules_install INSTALL_MOD_PATH=$(INSTALL_MOD_PATH) |
| + # ======= Install Documentation ======= |
| + @mkdir -p $(BRCMWL_PKG)/usr/doc/$(doc_dir_name) |
| + @cp -a $(CURDIR)/doc/README* $(BRCMWL_PKG)/usr/doc/$(doc_dir_name) |
| + @mkdir -p $(BRCMWL_PKG)/usr/share/doc/$(doc_dir_name) |
| + @cp -a $(CURDIR)/doc/README* $(BRCMWL_PKG)/usr/share/doc/$(doc_dir_name) |
| + @cp -a $(SRC_DIR)/README* $(BRCMWL_PKG)/usr/share/doc/$(doc_dir_name) |
| + # ======= Install the same to $(TARGET_DEST_DIR) ======= |
| + $(call install-into-devenv, $(BRCMWL_PKG)) |
| + @touch $@ |
| + |
| +$(BRCMWL_PKG_DESCRIPTION_FILE): $(BRCMWL_PKG_DESCRIPTION_FILE_IN) |
| + @cat $< | $(SED) -e "s/@VERSION@/$(version)/g" > $@ |
| + |
| +$(BRCMWL_PKG_INSTALL_SCRIPT): $(BRCMWL_PKG_INSTALL_SCRIPT_IN) |
| + @cat $< | $(SED) -e "s/@MODULES_VERSION@/$(modules_version)/g" > $@ |
| + |
| +$(pkg_certificate) : $(pkg_archive) ; |
| +$(pkg_signature) : $(pkg_archive) ; |
| +$(pkg_description) : $(pkg_archive) ; |
| + |
| +$(pkg_archive): $(build_sgxddk_pkg) $(BRCMWL_PKG_DESCRIPTION_FILE) $(BRCMWL_PKG_INSTALL_SCRIPT) |
| + @cp $(BRCMWL_PKG_DESCRIPTION_FILE) $(BRCMWL_PKG)/.DESCRIPTION |
| + @cp $(BRCMWL_PKG_INSTALL_SCRIPT) $(BRCMWL_PKG)/.INSTALL |
| + @chmod a+x $(BRCMWL_PKG)/.INSTALL |
| + @$(BUILD_PKG_REQUIRES) $(BRCMWL_PKG)/.REQUIRES |
| + @echo "pkgname=$(BRCMWL_PKG_NAME)" > $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "pkgver=$(BRCMWL_PKG_VERSION)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "arch=$(BRCMWL_PKG_ARCH)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "distroname=$(BRCMWL_PKG_DISTRO_NAME)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "distrover=$(BRCMWL_PKG_DISTRO_VERSION)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "group=$(BRCMWL_PKG_GROUP)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "short_description=\"$(BRCMWL_PKG_SHORT_DESCRIPTION)\"" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "url=$(BRCMWL_PKG_URL)" >> $(BRCMWL_PKG)/.PKGINFO ; \ |
| + echo "license=$(BRCMWL_PKG_LICENSE)" >> $(BRCMWL_PKG)/.PKGINFO |
| + @$(PSEUDO) sh -c "cd $(BRCMWL_PKG) && \ |
| + chown -R root:root . && \ |
| + $(MAKE_PACKAGE) -J --linkadd=yes $(GNUPG_OPTIONS) -m -d .. ." |
| |
| |
| |
| |
| |
| |
| @@ -0,0 +1,19 @@ |
| +# HOW TO EDIT THIS FILE: |
| +# The "handy ruler" below makes it easier to edit a package description. Line |
| +# up the first '|' above the ':' following the base package name, and the '|' |
| +# on the right side marks the last column you can put a character in. You must |
| +# make exactly 11 lines for the formatting to be correct. It's also |
| +# customary to leave one space after the ':'. |
| + |
| + |-----handy-ruler------------------------------------------------------| |
| +broadcom-wl: broadcom-wl @VERSION@ (Broadcom wireless driver for Linux kernel) |
| +broadcom-wl: |
| +broadcom-wl: This is the Broadcom Linux hybrid wireless driver (64-bit). |
| +broadcom-wl: |
| +broadcom-wl: |
| +broadcom-wl: Source GitHub Repository: |
| +broadcom-wl: https://github.com/antoineco/broadcom-wl.git |
| +broadcom-wl: |
| +broadcom-wl: |
| +broadcom-wl: |
| +broadcom-wl: |
| |
| |
| |
| |
| @@ -0,0 +1,79 @@ |
| +#!/bin/sh |
| + |
| +# Preserve new files |
| +install_file() { |
| + NEW="$1" |
| + OLD="`dirname $NEW`/`basename $NEW .new`" |
| + # If there's no file by that name, mv it over: |
| + if [ ! -r $OLD ]; then |
| + mv $NEW $OLD |
| + elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy |
| + rm $NEW |
| + fi |
| + # Otherwise, we leave the .new copy for the admin to consider... |
| +} |
| + |
| + |
| +# arg 1: the new package version |
| +pre_install() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +post_install() { |
| + # Notice we use an absolute path below, rather than sbin/depmod. This is because |
| + # we're testing to see if we are on the bootdisk, which will not have /sbin/depmod. |
| + # If we aren't, we will signal init to restart using the new binary. |
| + # The presence of "/etc/system-installer" is under consideration as a better test. |
| + # Also we have to check that we are not in the installer mode on the target system |
| + # ("/etc/system-installer"), and we have to be sure that we are on the working system |
| + # on the target hardware ("proc/sys/kernel/osrelease" - relative path). |
| + if [ -r proc/sys/kernel/osrelease -a ! -r /etc/system-installer -a -x /bin/uname -a -x /sbin/depmod ]; then |
| + # Determine the version of the running kernel: |
| + RELEASE=$(uname -r) |
| + ### Update module dependencies ### |
| + # If /usr is mounted and we have 'find', we can try to take a shortcut: |
| + if [ -x /usr/bin/find -a -e /lib/modules/$RELEASE/modules.dep \ |
| + -a /lib/modules/$RELEASE/modules.dep -nt /etc/modules.conf ]; then |
| + NEWMODS="$(/usr/bin/find /lib/modules/$RELEASE -mindepth 2 -type f -newer /lib/modules/$RELEASE/modules.dep)" |
| + # Only rebuild dependencies if new module(s) are found: |
| + if [ ! "" = "$NEWMODS" ]; then |
| + echo "Updating module dependencies for Linux $RELEASE:" |
| + /sbin/depmod -a |
| + else |
| + echo "Module dependencies up to date (no new kernel modules found)." |
| + fi |
| + else # we don't have find, or there is no existing modules.dep, or it is out of date. |
| + echo "Updating module dependencies for Linux $RELEASE:" |
| + /sbin/depmod -b / $RELEASE |
| + fi |
| + fi |
| +} |
| + |
| +# arg 1: the new package version |
| +# arg 2: the old package version |
| +pre_update() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +# arg 2: the old package version |
| +post_update() { |
| + post_install |
| +} |
| + |
| +# arg 1: the old package version |
| +pre_remove() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the old package version |
| +post_remove() { |
| + /bin/true |
| +} |
| + |
| + |
| +operation=$1 |
| +shift |
| + |
| +$operation $* |
| |
| Property changes on: drivers/intel-pc64/broadcom-wl/6.30.223.271/broadcom-wl-pkg-install.sh.in |
| ___________________________________________________________________ |
| Added: svn:executable |
| ## -0,0 +1 ## |
| +* |
| \ No newline at end of property |
| |
| |
| |
| |
| @@ -0,0 +1,461 @@ |
| + |
| +Broadcom Linux hybrid wireless driver |
| +Release Version: 6.30.223.271 |
| +Release Date: Fri Sep 18 15:41:45 2015 |
| + |
| +DISCLAIMER |
| +---------- |
| +This is an Official Release of Broadcom's hybrid Linux driver for use with |
| +Broadcom based hardware. |
| + |
| +WHERE TO GET THE RELEASE |
| +------------------------ |
| +For General Web releases: http://www.broadcom.com/support/802.11/linux_sta.php |
| + |
| +IMPORTANT NOTE AND DISCUSSION OF HYBRID DRIVER |
| +---------------------------------------------- |
| +There are separate tarballs for 32 bit and 64 bit x86 CPU architectures. |
| +Make sure you use the appropriate tarball for your machine. |
| + |
| +Other than 32 vs 64 bit, the hybrid binary is agnostic to the specific |
| +versions (3.5.X) and distributions (Fedora, Ubuntu, SuSE, etc). It performs |
| +all interactions with the OS through OS specific files (wl_linux.c, wl_iw.c, |
| +osl_linux.c) that are shipped in source form. You compile this source on |
| +your system and link with a precompiled binary file (wlc_hybrid.o_shipped) |
| +which contains the rest of the driver. |
| + |
| +PRECOMPILED DRIVER |
| +------------------- |
| +Some distros (Ubuntu and Fedora at the least) already have a version of |
| +this driver in their repositories precompiled, tested and ready to go. |
| +You just use the package manager to install the proper package. If |
| +its available for your distro, this is usually an easier solution. See |
| +the end of this document for further discussion. |
| + |
| +ABOUT THIS RELEASE |
| +------------------- |
| +This is a rollup release. It includes and deprecates all previous releases |
| +and patches. At the time of release there are no existing patches for this |
| +release from Broadcom. |
| + |
| +SUPPORTED DEVICES |
| +----------------- |
| +The cards with the following PCI Device IDs are supported with this driver. |
| +Both Broadcom and and Dell product names are described. Cards not listed |
| +here may also work. |
| + |
| + BRCM PCI PCI Dell |
| + Product Name Vendor ID Device ID Product ID |
| + ------------- ---------- --------- ----------- |
| + 4311 2.4 Ghz 0x14e4 0x4311 Dell 1390 |
| + 4311 Dualband 0x14e4 0x4312 Dell 1490 |
| + 4311 5 Ghz 0x14e4 0x4313 |
| + 4312 2.4 Ghz 0x14e4 0x4315 Dell 1395 |
| + 4313 2.4 Ghz 0x14e4 0x4727 Dell 1501/1504 |
| + 4321 Dualband 0x14e4 0x4328 Dell 1505 |
| + 4321 Dualband 0x14e4 0x4328 Dell 1500 |
| + 4321 2.4 Ghz 0x14e4 0x4329 |
| + 4321 5 Ghz 0x14e4 0x432a |
| + 4322 Dualband 0x14e4 0x432b Dell 1510 |
| + 4322 2.4 Ghz 0x14e4 0x432c |
| + 4322 5 Ghz 0x14e4 0x432d |
| + 43142 2.4 Ghz 0x14e4 0x4365 |
| + 43224 Dualband 0x14e4 0x4353 Dell 1520 |
| + 43225 2.4 Ghz 0x14e4 0x4357 |
| + 43227 2.4 Ghz 0x14e4 0x4358 |
| + 43228 Dualband 0x14e4 0x4359 Dell 1530/1540 |
| + 4331 Dualband 0x14e4 0x4331 |
| + 4360 Dualband 0x14e4 0x43a0 |
| + 4352 Dualband 0x14e4 0x43a0 |
| + |
| +To find the Device ID's of Broadcom cards on your machines do: |
| +# lspci -n | grep 14e4 |
| + |
| +NOTABLE CHANGES |
| +--------------- |
| + Upgraded to support 3.19 kernel APIs. |
| + |
| +REQUIREMENTS |
| +------------ |
| +Building this driver requires that your machine have the proper tools, |
| +packages, header files and libraries to build a standard kernel module. |
| +This usually is done by installing the kernel developer or kernel source |
| +package and varies from distro to distro. Consult the documentation for |
| +your specific OS. |
| + |
| +If you cannot successfully build a module that comes with your distro's |
| +kernel developer or kernel source package, you will not be able to build |
| +this module either. |
| + |
| +If you try to build this module but get an error message that looks like |
| +this: |
| + |
| +make: *** /lib/modules/"release"/build: No such file or directory. Stop. |
| + |
| +Then you do not have the proper packages installed, since installing the |
| +proper packages will create /lib/modules/"release"/build on your system. |
| + |
| +On Fedora install 'kernel-devel' from |
| +Package Manager (System-> Administration-> Add/Remove Software) |
| +or |
| +yum install kernel-devel |
| +or |
| +yum install kernel-PAE-devel |
| + |
| +On Ubuntu, you will need headers and tools. Try these commands: |
| +# apt-get install build-essential linux-headers-generic |
| +# apt-get build-dep linux |
| + |
| +To check to see if you have this directory do this: |
| + |
| +# ls /lib/modules/`uname -r`/build |
| + |
| +BUILD INSTRUCTIONS |
| +------------------ |
| +1. Setup the directory by untarring the proper tarball: |
| + |
| +For 32 bit: hybrid-v35-nodebug-pcoem-portsrc.tar.gz |
| +For 64 bit: hybrid-v35_64-nodebug-pcoem-portsrc.tar.gz |
| + |
| +Example: |
| +# mkdir hybrid_wl |
| +# cd hybrid_wl |
| +# tar xzf <path>/hybrid-v35-nodebug-pcoem-portsrc.tar.gz or |
| + <path>/hybrid-v35_64-nodebug-pcoem-portsrc.tar.gz |
| + |
| +2. Build the driver as a Linux loadable kernel module (LKM): |
| + |
| +# make clean (optional) |
| +# make |
| + |
| +When the build completes, it will produce a wl.ko file in the top level |
| +directory. |
| + |
| +If your driver does not build, check to make sure you have installed the |
| +kernel package described in the requirements above. |
| + |
| +This driver uses cfg80211 API. Code for Wext API is present and can be built |
| +but we have dropped support for it. |
| +As before, the Makefile will still build the matching version for your system. |
| + |
| +# make API=CFG80211 |
| + or |
| +# make API=WEXT (deprecated) |
| + |
| +INSTALL INSTRUCTIONS |
| +-------------------- |
| + |
| +Upgrading from a previous version: |
| +--------------------------------- |
| + |
| +If you were already running a previous version of wl, you'll want to provide |
| +a clean transition from the older driver. (The path to previous driver is |
| +usually /lib/modules/<kernel-version>/kernel/net/wireless) |
| + |
| +# rmmod wl |
| +# mv <path-to-prev-driver>/wl.ko <path-to-prev-driver>/wl.ko.orig |
| +# cp wl.ko <path-to-prev-driver>/wl.ko |
| +# depmod |
| +# modprobe wl |
| + |
| +The new wl driver should now be operational and your all done. |
| + |
| +Fresh installation: |
| +------------------ |
| +1: Remove any other drivers for the Broadcom wireless device. |
| + |
| +There are several other drivers (besides this one) that can drive |
| +Broadcom 802.11 chips. These include b43, brcmsmac, bcma and ssb. They will |
| +conflict with this driver and need to be uninstalled before this driver |
| +can be installed. Any previous revisions of the wl driver also need to |
| +be removed. |
| + |
| +Note: On some systems such as Ubuntu 9.10, the ssb module may load during |
| +boot even though it is blacklisted (see note under Common Issues on how to |
| +resolve this. Nevertheless, ssb still must be removed |
| +(by hand or script) before wl is loaded. The wl driver will not function |
| +properly if ssb the module is loaded. |
| + |
| +# lsmod | grep "brcmsmac\|b43\|ssb\|bcma\|wl" |
| + |
| +If any of these are installed, remove them: |
| +# rmmod b43 |
| +# rmmod brcmsmac |
| +# rmmod ssb |
| +# rmmod bcma |
| +# rmmod wl |
| + |
| +To blacklist these drivers and prevent them from loading in the future: |
| +# echo "blacklist ssb" >> /etc/modprobe.d/blacklist.conf |
| +# echo "blacklist bcma" >> /etc/modprobe.d/blacklist.conf |
| +# echo "blacklist b43" >> /etc/modprobe.d/blacklist.conf |
| +# echo "blacklist brcmsmac" >> /etc/modprobe.d/blacklist.conf |
| + |
| +2: Insmod the driver. |
| + |
| +Otherwise, if you have not previously installed a wl driver, you'll need |
| +to add a security module before using the wl module. Most newer systems |
| +use lib80211 while others use ieee80211_crypt_tkip. See which one works for |
| +your system. |
| + |
| +# modprobe lib80211 |
| + or |
| +# modprobe ieee80211_crypt_tkip |
| + |
| +If your using the cfg80211 version of the driver, then cfg80211 needs to be |
| +loaded: |
| + |
| +# modprobe cfg80211 |
| + |
| +Then: |
| +# insmod wl.ko |
| + |
| +wl.ko is now operational. It may take several seconds for the Network |
| +Manager to notice a new network driver has been installed and show the |
| +surrounding wireless networks. |
| + |
| +If there was an error, see Common issues below. |
| + |
| +Common issues: |
| +---------------- |
| +* After the insmod you may see this message: |
| + WARNING: modpost: missing MODULE_LICENSE() |
| + It is expected, not harmful and can be ignored. |
| + |
| +* If you see this message: |
| + |
| + "insmod: error inserting 'wl.ko': -1 Unknown symbol in module" |
| + |
| + Usually this means that one of the required modules (as mentioned above) is |
| + not loaded. Try this: |
| + # modprobe lib80211 or ieee80211_crypt_tkip (depending on your os) |
| + # modprobe cfg80211 |
| + |
| + Now re-try to insmod the wl driver: |
| + # insmod wl.ko |
| + |
| +* If the wl driver loads but doesn't seem to do anything: |
| + the ssb module may be the cause. Sometimes blacklisting ssb may not |
| + be enough to prevent it from loading and it loads anyway. (This is mostly |
| + seen on Ubuntu/Debian systems). |
| + |
| + Check to see if ssb, bcma, wl or b43 is loaded: |
| + # lsmod | grep "brcmsmac\|ssb\|wl\|b43\|bcma" |
| + |
| + If any of these are installed, remove them: |
| + # rmmod brcmsmac |
| + # rmmod ssb |
| + # rmmod bcma |
| + # rmmod wl |
| + # insmod wl |
| + |
| + Back up the current boot ramfs and generate a new one: |
| + # cp /boot/initrd.img-`uname -r` somewheresafe |
| + # update-initramfs -u |
| + # reboot |
| + |
| +3: Setup to always load at boot time. |
| + |
| +The procedure to make a module load at boot time varies from distro to |
| +distro. Consult the docs for your specific distro to see how. The |
| +following seems to work for my setup on Fedora and Ubuntu. Check your |
| +docs to see the procedure for your distro. |
| + |
| +Follow these steps to have the driver load as part of the boot process: |
| + |
| +# load driver as described above |
| +# cp wl.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless |
| +# depmod -a |
| + |
| +# echo modeprobe wl >> /etc/rc.local (Fedora/SUSE) |
| + |
| +Ubuntu ships a version of wl.ko, so those need to be disabled. On my |
| +system the were several versions, so I searched and renamed the .ko's |
| +like this: |
| + |
| +# sh: for i in `find /lib /var -name wl\.ko`; do mv $i ${i}.orig; done |
| + |
| + |
| +TX POWER EXPLAINED |
| +------------------ |
| +'iwconfig eth1 txpower' & 'iwlist eth1 txpower' set and get the drivers |
| +user-requested transmit power level. This can go up to 32 dbm and allows |
| +the user to lower the tx power to levels below the regulatory limit. |
| +Internally, the actual tx power is always kept within regulatory limits |
| +no matter what the user request is set to. |
| + |
| +WHAT'S NEW IN RELEASE 6.30.223.23X |
| +--------------------------------- |
| ++ Upgraded to Support 3.11 kernels |
| ++ Added cfg80211 wowlan support for Magic Packets and Disconnect |
| + |
| +WHAT'S NEW IN RELEASE 6.30.223.126 |
| +---------------------------------- |
| ++ Upgraded to Support 3.8.x |
| ++ Added 43142 support |
| ++ Added 4352 support |
| ++ Dropped WEXT support |
| + |
| +WHAT'S NEW IN RELEASE 5.100.82.116 |
| +---------------------------------- |
| ++ Support for Linux kernels > 3.0 |
| + |
| +WHAT'S NEW IN RELEASE 5.100.82.115 |
| +---------------------------------- |
| ++ Added cfg80211 API support. The choice of API is done at compile time. If |
| +kernel version >= 2.6.32, cfg80211 is used, otherwise wireless extension |
| +is used. (End users should notice little difference.) |
| ++ Supports Linux kernel 2.6.38 |
| ++ Fix for problem with rebooting while wireless disabled via airline switch. |
| ++ Fix for PR102197 STA does not connect to hidden SSID |
| ++ Fix for PR102214: Could not get rssi (-22)" print comes in 'dmesg' output |
| ++ Supports monitor mode |
| ++ Supports hidden networks |
| ++ Supports rfkill |
| + |
| +WHAT'S NEW IN RELEASE 5.100.82.38 |
| +--------------------------------- |
| ++ Support for bcm43227 and bcm43228 |
| ++ Fix for issue where iwconfig was sometime reporting rate incorrectly |
| ++ Supports rfkill in kernels 2.6.31 to 2.6.36 |
| ++ Supports scan complete event (SIOCGIWSCAN) |
| ++ Adds EAGAIN (busy signal) to query of scan results |
| + |
| +WHAT'S NEW IN RELEASE 5.100.57.15 |
| +--------------------------------- |
| ++ Following fixes (issues introduced in 5.100.57.13) |
| + Issue #87477 - 4313: DUT is not able to associate in WPA2-PSK TKIP/AES |
| + Issue #87533 - NetworkManager: 4313: Unable to associate to APs with WPA2-PSK |
| + |
| +WHAT'S NEW IN RELEASE 5.100.57.13 |
| +--------------------------------- |
| ++ 4313 PHY fixes to improve throughput stability at different ranges |
| ++ Fix for interop issues with different APs |
| ++ Fix for hangs seen during Fn-F2 sequence |
| +- Support for rfkill in kernels 2.6.31 to 2.6.36 |
| + |
| +WHAT'S NEW IN RELEASE 5.60.246.6 |
| +-------------------------------- |
| ++ Supports rfkill in kernels 2.6.31 to 2.6.36 |
| ++ Fix for compile error with multicast list in kernel 2.6.34 |
| ++ Fix for #76743 - Ubuntu9.04: Network manager displays n/w's with radio disabled |
| + |
| +WHAT'S NEW IN RELEASE 5.60.246.2 |
| +-------------------------------- |
| ++ Supports up to linux kernel 2.6.36 (from 2.6.32) |
| ++ Fix for #86668: [Canonical] Bug #611575/617369: System will hang if |
| + you use the F2 hot key to enable/disable wireless quickly while |
| + wireless is still in the process of re-association with AP |
| + |
| +WHAT'S NEW IN RELEASE 5.60.48.36 |
| +-------------------------------- |
| ++ Supports up to linux kernel 2.6.32 |
| ++ Supports hidden networks |
| ++ Supports rfkill in kernels < 2.6.31 |
| ++ Setting power level via 'iwconfig eth1 txpower X' now operational |
| ++ Support for bcm4313 |
| ++ Additional channels in both 2.4 and 5 Ghz bands |
| ++ Fixed issue with tkip group keys that caused this message to repeat often: |
| + TKIP: RX tkey->key_idx=2 frame keyidx=1 priv=ffff8800cf80e840 |
| ++ Following fixes |
| + Issue #72216 - Ubuntu 8.04: standby/resume with WPA2 and wpa_supplicant causes |
| + a continuous assoc/disassoc loop (issue in 2.6.24 kernel) |
| + Issue #72324 - Ubuntu 8.04: cannot ping when Linux STA is IBSS creator with WEP |
| + Issue #76739 - Ubuntu 9.04: unable to connect to hidden network after stdby/resume |
| + Issue #80392 - S4 resume hang with SuSE SLED 11 and 43225 |
| + Issue #80792 - LSTA is not able to associate to AP with transit |
| + |
| + |
| +ISSUES FIXED AND WHAT'S NEW IN RECENT RELEASES |
| +------------------------------------------- |
| ++ Supports monitor mode |
| ++ Supports cfg80211 |
| ++ Supports hidden networks |
| ++ Supports rfkill |
| + |
| + |
| +KNOWN ISSUES AND LIMITATIONS |
| +---------------------------- |
| +#72238 - 20% lower throughput on channels 149, 153, 157, and 161 |
| +#72324 - Ubuntu 8.04: cannot ping when Linux STA is IBSS creator with WEP |
| +enabled |
| +#72216 - Ubuntu 8.04: standby/resume with WPA2 and wpa_supplicant causes |
| +a continuous assoc/disassoc loop (issue with wpa_supplicant, restarting |
| +wpa_supplicant fixes the issue) |
| +#76739 Ubuntu9.04: unable to connect to hidden network after stdby/resume |
| +#76793 Ubuntu9.04: STA fails to create IBSS network in 5 Ghz band |
| + |
| + |
| +KNOWN ISSUES AND LIMITATIONS IN EXTERNAL COMPONENTS |
| +--------------------------------------------------- |
| + |
| +wpa_supplicant 0.6.3 + nl80211 + WEP - (Note: This would only affect you if |
| +you are using wpa_supplicant directly from the command line and specify |
| +nl80211 interface, e.g. "wpa_supplicant -Dnl80211 -ieth1 ..". If you are using |
| +network manager GUI to connect it should work file.) |
| +wpa_supplicant 0.6.3 might have a bug that affect WEP connections created |
| +through nl80211. Upgrade to wpa_supplicant to 0.7.3 would solve this problem. |
| + |
| +Ubuntu 10.10 kernel + nl80211 + WPA/WPA2 - (Note: This would only affect you if |
| +you are using wpa_supplicant directly from the command line and specify |
| +nl80211 interface, e.g. "wpa_supplicant -Dnl80211 -ieth1 ..". If you are using |
| +network manager GUI to connect it should work file.) |
| +Some kernel versions of Ubuntu such as 2.6.35-22 (released with Ubuntu |
| +10.10) may have problems that affect WPA/WPA2 connections created through |
| +nl80211. Upgrade to 2.6.35-25 or later should solve this problem. |
| + |
| +HOW TO USE MONITOR MODE |
| +----------------------- |
| +To enable monitor mode: |
| +$ echo 1 > /proc/brcm_monitor0 => Creates a 'prism0' network interface for use by Wireshark and others. |
| +$ ifconfig prism0 up => Enable the interface |
| + |
| +To disable monitor mode: |
| +$ echo 0 > /proc/brcm_monitor0 |
| + |
| +HOW TO ENABLE WOWL |
| +----------------- |
| +$ iw phyX wowlan enable magic-packet disconnect |
| +$ iw phyX wowlan show |
| + |
| + |
| +HOW TO INSTALL A PRE-COMPILED DRIVER |
| +----------------------------------- |
| +Some of the major linux distros already supply a version of this driver, so |
| +you don't have to compile your own. Most of the distros keep this driver |
| +along with other proprietary or non-GPL drivers in a separate repository. |
| + |
| +For further information see the documentation for your specific distro. |
| + |
| +Fedora: |
| +------ |
| +su -c 'rpm -Uvh |
| +http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm |
| +http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm' |
| + |
| +su - |
| +yum update |
| +yum install kmod-wl |
| + |
| +Ubuntu: |
| +------ |
| +Go to System->Administration->Hardware Drivers |
| +Choose the Broadcom STA wireless driver |
| +Activate |
| + |
| +Sometimes the driver does not show up in the Hardware Drivers choices. In |
| +this case, try reintalling the driver from the GUI or shell like this: |
| + |
| +From the GUI: |
| +Package Manager (System>Administration>Synaptic Package Manager). Click the |
| +Reload button in the upper left corner of Synaptic to refresh your index then |
| +search for and reinstall the package named bcmwl-kernel-source. |
| + |
| +From the shell: |
| +sudo apt-get update |
| +sudo apt-get --reinstall install bcmwl-kernel-source |
| + |
| +In either GUI or text case, after reinstalling, reboot your machine. |
| + |
| +Now go back to System->Administration->Hardware Drivers |
| +and you should see the driver enabled and working. |
| |
| |
| |
| |
| |
| Property changes on: drivers/intel-pc64/broadcom-wl/6.30.223.271/doc |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: drivers/intel-pc64/broadcom-wl/6.30.223.271 |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: drivers/intel-pc64/broadcom-wl |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: drivers/intel-pc64 |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: drivers |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| @@ -0,0 +1,193 @@ |
| + |
| +COMPONENT_TARGETS = $(HARDWARE_INTEL_PC32) |
| +COMPONENT_TARGETS += $(HARDWARE_INTEL_PC64) |
| +COMPONENT_TARGETS += $(HARDWARE_EBOX_3350DX2) |
| +COMPONENT_TARGETS += $(HARDWARE_CB1X) |
| +COMPONENT_TARGETS += $(HARDWARE_CB2X) |
| +COMPONENT_TARGETS += $(HARDWARE_CB3X) |
| +COMPONENT_TARGETS += $(HARDWARE_ORANGE_PP2E) |
| +COMPONENT_TARGETS += $(HARDWARE_NANOPI_NEO) |
| +COMPONENT_TARGETS += $(HARDWARE_ORANGE_PP) |
| +COMPONENT_TARGETS += $(HARDWARE_ORANGE_PL2) |
| +COMPONENT_TARGETS += $(HARDWARE_WECHIP_TX6) |
| +COMPONENT_TARGETS += $(HARDWARE_FFRK3288) |
| +COMPONENT_TARGETS += $(HARDWARE_POIN2) |
| +COMPONENT_TARGETS += $(HARDWARE_RK3328_CC) |
| +COMPONENT_TARGETS += $(HARDWARE_KHADAS_EDGE) |
| +COMPONENT_TARGETS += $(HARDWARE_LEEZ_P710) |
| +COMPONENT_TARGETS += $(HARDWARE_M201) |
| +COMPONENT_TARGETS += $(HARDWARE_MXV) |
| +COMPONENT_TARGETS += $(HARDWARE_P201) |
| +COMPONENT_TARGETS += $(HARDWARE_NEXBOX_A95X) |
| +COMPONENT_TARGETS += $(HARDWARE_ODROID_C2) |
| +COMPONENT_TARGETS += $(HARDWARE_P212) |
| +COMPONENT_TARGETS += $(HARDWARE_KHADAS_VIM) |
| +COMPONENT_TARGETS += $(HARDWARE_Q201) |
| +COMPONENT_TARGETS += $(HARDWARE_ENYBOX_X2) |
| +COMPONENT_TARGETS += $(HARDWARE_KHADAS_VIM2) |
| +COMPONENT_TARGETS += $(HARDWARE_NIT6Q) |
| +COMPONENT_TARGETS += $(HARDWARE_OKMX6DL_C) |
| +COMPONENT_TARGETS += $(HARDWARE_OKMX6Q_C) |
| +COMPONENT_TARGETS += $(HARDWARE_BONE_BLACK) |
| +COMPONENT_TARGETS += $(HARDWARE_OMAP5UEVM) |
| +COMPONENT_TARGETS += $(HARDWARE_DRA7XXEVM) |
| +COMPONENT_TARGETS += $(HARDWARE_CI20) |
| +COMPONENT_TARGETS += $(HARDWARE_BAIKAL_T1) |
| +COMPONENT_TARGETS += $(HARDWARE_BAIKAL_M1) |
| +COMPONENT_TARGETS += $(HARDWARE_S824L) |
| +COMPONENT_TARGETS += $(HARDWARE_VESNIN) |
| +COMPONENT_TARGETS += $(HARDWARE_S824L_LSB) |
| +COMPONENT_TARGETS += $(HARDWARE_VESNIN_LSB) |
| +COMPONENT_TARGETS += $(HARDWARE_TL2WK2) |
| +COMPONENT_TARGETS += $(HARDWARE_TL2SV2) |
| +COMPONENT_TARGETS += $(HARDWARE_TL2WK2_LSB) |
| +COMPONENT_TARGETS += $(HARDWARE_TL2SV2_LSB) |
| +COMPONENT_TARGETS += $(HARDWARE_SIFIVE_U740) |
| + |
| + |
| +NEED_ABS_PATH = true |
| +COMPONENT_IS_3PP = true |
| + |
| + |
| +include ../../../../build-system/constants.mk |
| + |
| + |
| +SOURCE_REQUIRES = sources/hal/firmware/broadcom-bt-firmware |
| +SOURCE_REQUIRES += sources/hal/firmware/armbian-firmware |
| + |
| +REQUIRES = base/radix-system |
| + |
| +# ======= __END_OF_REQUIRES__ ======= |
| + |
| + |
| +version = 12.0.1.1105.3 |
| +tar_xz_archive = $(SRC_PACKAGE_PATH)/hal/firmware/broadcom-bt-firmware/broadcom-bt-firmware-$(version).tar.xz |
| +SRC_ARCHIVE = $(tar_xz_archive) |
| +SRC_DIR = $(TARGET_BUILD_DIR)/broadcom-bt-firmware-$(version) |
| +src_dir_name = broadcom-bt-firmware-$(version) |
| +src_done = $(TARGET_BUILD_DIR)/.source_done |
| + |
| +armbian_version = 20210505 |
| +armbian_archive = $(SRC_PACKAGE_PATH)/hal/firmware/armbian-firmware/armbian-firmware-$(armbian_version).tar.xz |
| +ARMBIAN_SRC_DIR = $(TARGET_BUILD_DIR)/armbian-firmware-$(armbian_version) |
| +armbian_src_done = $(TARGET_BUILD_DIR)/.armbian-source-done |
| + |
| +PATCHES = PATCHES |
| + |
| +install_target = $(TARGET_BUILD_DIR)/.install_done |
| + |
| + |
| +####### Targets |
| + |
| +PKG_GROUP = boot |
| + |
| +# |
| +# *PKG_NAME & *PKG_VERSION shouldn't be a reference to value. |
| +# |
| +BRCM_PKG_NAME = broadcom-bt-firmware |
| +BRCM_PKG_VERSION = 12.0.1.1105.3 |
| +BRCM_PKG_ARCH = $(PKGARCH) |
| +BRCM_PKG_DISTRO_NAME = $(DISTRO_NAME) |
| +BRCM_PKG_DISTRO_VERSION = $(DISTRO_VERSION) |
| +BRCM_PKG_GROUP = $(PKG_GROUP) |
| +### |---handy-ruler-------------------------------| |
| +BRCM_PKG_SHORT_DESCRIPTION = Broadcom Bluetooth Firmware |
| +BRCM_PKG_URL = $(BUG_URL) |
| +BRCM_PKG_LICENSE = custom |
| +BRCM_PKG_DESCRIPTION_FILE = $(TARGET_BUILD_DIR)/$(BRCM_PKG_NAME)-pkg-description |
| +BRCM_PKG_DESCRIPTION_FILE_IN = $(BRCM_PKG_NAME)-pkg-description.in |
| +BRCM_PKG_INSTALL_SCRIPT = $(BRCM_PKG_NAME)-pkg-install.sh |
| + |
| +BRCM_PKG = $(CURDIR)/$(TARGET_BUILD_DIR)/$(BRCM_PKG_NAME)-package |
| + |
| +pkg_basename = $(BRCM_PKG_NAME)-$(BRCM_PKG_VERSION)-$(BRCM_PKG_ARCH)-$(BRCM_PKG_DISTRO_NAME)-$(BRCM_PKG_DISTRO_VERSION) |
| + |
| +pkg_archive = $(TARGET_BUILD_DIR)/$(PKG_GROUP)/$(pkg_basename).$(pkg_arch_suffix) |
| +pkg_certificate = $(call cert-name,$(pkg_archive)) |
| +pkg_signature = $(call sign-name,$(pkg_archive)) |
| +pkg_description = $(call desc-name,$(pkg_archive)) |
| +products = $(call pkg-files,$(pkg_archive)) |
| + |
| +BUILD_TARGETS = $(install_target) |
| + |
| +PRODUCT_TARGETS = $(products) |
| + |
| +ROOTFS_TARGETS = $(pkg_archive) |
| + |
| + |
| +include ../../../../build-system/core.mk |
| + |
| + |
| +####### Dependencies |
| + |
| +$(armbian_src_done): $(armbian_archive) |
| + @echo "Expanding $(armbian_archive)" |
| + @tar xJf $(armbian_archive) -C $(TARGET_BUILD_DIR) |
| + @touch $@ |
| + |
| +$(src_done): $(SRC_ARCHIVE) $(PATCHES_DEP) $(armbian_src_done) |
| + $(UNPACK_SRC_ARCHIVE) |
| + $(APPLY_PATCHES) |
| + @touch $@ |
| + |
| +$(install_target): $(src_done) |
| + @mkdir -p $(BRCM_PKG)/lib/firmware/brcm |
| + @( cd $(SRC_DIR)/brcm ; \ |
| + cp -a *.hcd $(BRCM_PKG)/lib/firmware/brcm ; \ |
| + ) |
| + @( cd $(ARMBIAN_SRC_DIR) ; \ |
| + for file in BCM4345C0 BCM4345C5 ; do \ |
| + chmod a-x $${file}.hcd ; cp -a $${file}.hcd $(BRCM_PKG)/lib/firmware/brcm ; \ |
| + done ; \ |
| + ) |
| + # ======= Install ap6256 firmware for leez-p710 ======= |
| + @( cd $(ARMBIAN_SRC_DIR)/brcm ; \ |
| + for file in brcmfmac43456-sdio.{bin,txt} ; do \ |
| + chmod a-x $${file} ; cp -a $${file} $(BRCM_PKG)/lib/firmware/brcm ; \ |
| + done ; \ |
| + chmod a-x brcmfmac43455-sdio.clm_blob ; \ |
| + cp -a brcmfmac43455-sdio.clm_blob \ |
| + $(BRCM_PKG)/lib/firmware/brcm/brcmfmac43456-sdio.clm_blob ; \ |
| + ) |
| + @( cd $(BRCM_PKG)/lib/firmware/brcm ; \ |
| + ln -sf brcmfmac43456-sdio.bin brcmfmac43456-sdio.leez,p710.bin ; \ |
| + ln -sf brcmfmac43456-sdio.txt brcmfmac43456-sdio.leez,p710.txt ; \ |
| + ) |
| + # ======= Install Documentation ======= |
| + @mkdir -p $(BRCM_PKG)/usr/doc/$(src_dir_name) |
| + @( cd $(SRC_DIR) ; \ |
| + cp -a LICENSE* \ |
| + $(BRCM_PKG)/usr/doc/$(src_dir_name) ; \ |
| + ) |
| + @mkdir -p $(BRCM_PKG)/usr/share/doc/$(src_dir_name) |
| + @( cd $(SRC_DIR) ; \ |
| + cp -a DEVICES* LICENSE* README* \ |
| + $(BRCM_PKG)/usr/share/doc/$(src_dir_name) ; \ |
| + ) |
| + # ======= Install the same to $(TARGET_DEST_DIR) ======= |
| + $(call install-into-devenv, $(BRCM_PKG)) |
| + @touch $@ |
| + |
| +$(BRCM_PKG_DESCRIPTION_FILE): $(BRCM_PKG_DESCRIPTION_FILE_IN) |
| + @cat $< | $(SED) -e "s/@VERSION@/$(version)/g" > $@ |
| + |
| +$(pkg_certificate) : $(pkg_archive) ; |
| +$(pkg_signature) : $(pkg_archive) ; |
| +$(pkg_description) : $(pkg_archive) ; |
| + |
| +$(pkg_archive): $(install_target) $(BRCM_PKG_DESCRIPTION_FILE) $(BRCM_PKG_INSTALL_SCRIPT) |
| + @cp $(BRCM_PKG_DESCRIPTION_FILE) $(BRCM_PKG)/.DESCRIPTION |
| + @cp $(BRCM_PKG_INSTALL_SCRIPT) $(BRCM_PKG)/.INSTALL |
| + @$(BUILD_PKG_REQUIRES) $(BRCM_PKG)/.REQUIRES |
| + @echo "pkgname=$(BRCM_PKG_NAME)" > $(BRCM_PKG)/.PKGINFO ; \ |
| + echo "pkgver=$(BRCM_PKG_VERSION)" >> $(BRCM_PKG)/.PKGINFO ; \ |
| + echo "arch=$(BRCM_PKG_ARCH)" >> $(BRCM_PKG)/.PKGINFO ; \ |
| + echo "distroname=$(BRCM_PKG_DISTRO_NAME)" >> $(BRCM_PKG)/.PKGINFO ; \ |
| + echo "distrover=$(BRCM_PKG_DISTRO_VERSION)" >> $(BRCM_PKG)/.PKGINFO ; \ |
| + echo "group=$(BRCM_PKG_GROUP)" >> $(BRCM_PKG)/.PKGINFO ; \ |
| + echo "short_description=\"$(BRCM_PKG_SHORT_DESCRIPTION)\"" >> $(BRCM_PKG)/.PKGINFO ; \ |
| + echo "url=$(BRCM_PKG_URL)" >> $(BRCM_PKG)/.PKGINFO ; \ |
| + echo "license=$(BRCM_PKG_LICENSE)" >> $(BRCM_PKG)/.PKGINFO |
| + @$(PSEUDO) sh -c "cd $(BRCM_PKG) && \ |
| + chown -R root:root . && \ |
| + $(MAKE_PACKAGE) -J --linkadd=yes $(GNUPG_OPTIONS) -m -d .. ." |
| |
| |
| |
| |
| |
| |
| @@ -0,0 +1,19 @@ |
| +# HOW TO EDIT THIS FILE: |
| +# The "handy ruler" below makes it easier to edit a package description. Line |
| +# up the first '|' above the ':' following the base package name, and the '|' |
| +# on the right side marks the last column you can put a character in. You must |
| +# make exactly 11 lines for the formatting to be correct. It's also |
| +# customary to leave one space after the ':'. |
| + |
| + |-----handy-ruler------------------------------------------------------| |
| +broadcom-bt-firmware: broadcom-bt-firmware @VERSION@ (Broadcom Bluetooth Firmware) |
| +broadcom-bt-firmware: |
| +broadcom-bt-firmware: This package intentended to provide firmware of Broadcom WIDCOMM(r) |
| +broadcom-bt-firmware: Bluetooth devices (including BCM20702, BCM20703, BCM43142 chipsets |
| +broadcom-bt-firmware: and other) for Linux kernel. |
| +broadcom-bt-firmware: |
| +broadcom-bt-firmware: |
| +broadcom-bt-firmware: GitHub: https://github.com/winterheart/broadcom-bt-firmware.git |
| +broadcom-bt-firmware: |
| +broadcom-bt-firmware: |
| +broadcom-bt-firmware: |
| |
| |
| |
| |
| @@ -0,0 +1,53 @@ |
| +#!/bin/sh |
| + |
| +# Preserve new files |
| +install_file() { |
| + NEW="$1" |
| + OLD="`dirname $NEW`/`basename $NEW .new`" |
| + # If there's no file by that name, mv it over: |
| + if [ ! -r $OLD ]; then |
| + mv $NEW $OLD |
| + elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy |
| + rm $NEW |
| + fi |
| + # Otherwise, we leave the .new copy for the admin to consider... |
| +} |
| + |
| + |
| +# arg 1: the new package version |
| +pre_install() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +post_install() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +# arg 2: the old package version |
| +pre_update() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +# arg 2: the old package version |
| +post_update() { |
| + post_install |
| +} |
| + |
| +# arg 1: the old package version |
| +pre_remove() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the old package version |
| +post_remove() { |
| + /bin/true |
| +} |
| + |
| + |
| +operation=$1 |
| +shift |
| + |
| +$operation $* |
| |
| Property changes on: firmware/broadcom-bt-firmware/12.0.1.1105.3/broadcom-bt-firmware-pkg-install.sh |
| ___________________________________________________________________ |
| Added: svn:executable |
| ## -0,0 +1 ## |
| +* |
| \ No newline at end of property |
| |
| |
| |
| |
| |
| Property changes on: firmware/broadcom-bt-firmware/12.0.1.1105.3 |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: firmware/broadcom-bt-firmware |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| @@ -0,0 +1,171 @@ |
| + |
| +COMPONENT_TARGETS = $(HARDWARE_INTEL_PC32) |
| +COMPONENT_TARGETS += $(HARDWARE_INTEL_PC64) |
| +COMPONENT_TARGETS += $(HARDWARE_EBOX_3350DX2) |
| +COMPONENT_TARGETS += $(HARDWARE_CB1X) |
| +COMPONENT_TARGETS += $(HARDWARE_CB2X) |
| +COMPONENT_TARGETS += $(HARDWARE_CB3X) |
| +COMPONENT_TARGETS += $(HARDWARE_ORANGE_PP2E) |
| +COMPONENT_TARGETS += $(HARDWARE_NANOPI_NEO) |
| +COMPONENT_TARGETS += $(HARDWARE_ORANGE_PP) |
| +COMPONENT_TARGETS += $(HARDWARE_ORANGE_PL2) |
| +COMPONENT_TARGETS += $(HARDWARE_WECHIP_TX6) |
| +COMPONENT_TARGETS += $(HARDWARE_FFRK3288) |
| +COMPONENT_TARGETS += $(HARDWARE_POIN2) |
| +COMPONENT_TARGETS += $(HARDWARE_RK3328_CC) |
| +COMPONENT_TARGETS += $(HARDWARE_KHADAS_EDGE) |
| +COMPONENT_TARGETS += $(HARDWARE_LEEZ_P710) |
| +COMPONENT_TARGETS += $(HARDWARE_M201) |
| +COMPONENT_TARGETS += $(HARDWARE_MXV) |
| +COMPONENT_TARGETS += $(HARDWARE_P201) |
| +COMPONENT_TARGETS += $(HARDWARE_NEXBOX_A95X) |
| +COMPONENT_TARGETS += $(HARDWARE_ODROID_C2) |
| +COMPONENT_TARGETS += $(HARDWARE_P212) |
| +COMPONENT_TARGETS += $(HARDWARE_KHADAS_VIM) |
| +COMPONENT_TARGETS += $(HARDWARE_Q201) |
| +COMPONENT_TARGETS += $(HARDWARE_ENYBOX_X2) |
| +COMPONENT_TARGETS += $(HARDWARE_KHADAS_VIM2) |
| +COMPONENT_TARGETS += $(HARDWARE_NIT6Q) |
| +COMPONENT_TARGETS += $(HARDWARE_OKMX6DL_C) |
| +COMPONENT_TARGETS += $(HARDWARE_OKMX6Q_C) |
| +COMPONENT_TARGETS += $(HARDWARE_BONE_BLACK) |
| +COMPONENT_TARGETS += $(HARDWARE_OMAP5UEVM) |
| +COMPONENT_TARGETS += $(HARDWARE_DRA7XXEVM) |
| +COMPONENT_TARGETS += $(HARDWARE_CI20) |
| +COMPONENT_TARGETS += $(HARDWARE_BAIKAL_T1) |
| +COMPONENT_TARGETS += $(HARDWARE_BAIKAL_M1) |
| +COMPONENT_TARGETS += $(HARDWARE_S824L) |
| +COMPONENT_TARGETS += $(HARDWARE_VESNIN) |
| +COMPONENT_TARGETS += $(HARDWARE_S824L_LSB) |
| +COMPONENT_TARGETS += $(HARDWARE_VESNIN_LSB) |
| +COMPONENT_TARGETS += $(HARDWARE_TL2WK2) |
| +COMPONENT_TARGETS += $(HARDWARE_TL2SV2) |
| +COMPONENT_TARGETS += $(HARDWARE_TL2WK2_LSB) |
| +COMPONENT_TARGETS += $(HARDWARE_TL2SV2_LSB) |
| +COMPONENT_TARGETS += $(HARDWARE_SIFIVE_U740) |
| + |
| + |
| +NEED_ABS_PATH = true |
| +COMPONENT_IS_3PP = true |
| + |
| + |
| +include ../../../../build-system/constants.mk |
| + |
| + |
| +SOURCE_REQUIRES = sources/hal/firmware/kernel-firmware |
| + |
| +REQUIRES = base/radix-system |
| + |
| +# ======= __END_OF_REQUIRES__ ======= |
| + |
| + |
| +version = 20221012 |
| +tar_xz_archive = $(SRC_PACKAGE_PATH)/hal/firmware/kernel-firmware/kernel-firmware-$(version).tar.xz |
| +SRC_ARCHIVE = $(tar_xz_archive) |
| +SRC_DIR = $(TARGET_BUILD_DIR)/kernel-firmware-$(version) |
| +src_dir_name = kernel-firmware-$(version) |
| +src_done = $(TARGET_BUILD_DIR)/.source_done |
| + |
| +PATCHES = PATCHES |
| + |
| +install_target = $(TARGET_BUILD_DIR)/.install_done |
| + |
| + |
| +####### Targets |
| + |
| +PKG_GROUP = boot |
| + |
| +# |
| +# *PKG_NAME & *PKG_VERSION shouldn't be a reference to value. |
| +# |
| +FIRMWARE_PKG_NAME = kernel-firmware |
| +FIRMWARE_PKG_VERSION = 20221012 |
| +FIRMWARE_PKG_ARCH = $(PKGARCH) |
| +FIRMWARE_PKG_DISTRO_NAME = $(DISTRO_NAME) |
| +FIRMWARE_PKG_DISTRO_VERSION = $(DISTRO_VERSION) |
| +FIRMWARE_PKG_GROUP = $(PKG_GROUP) |
| +### |---handy-ruler-------------------------------| |
| +FIRMWARE_PKG_SHORT_DESCRIPTION = Firmware for the kernel |
| +FIRMWARE_PKG_URL = $(BUG_URL) |
| +FIRMWARE_PKG_LICENSE = custom |
| +FIRMWARE_PKG_DESCRIPTION_FILE = $(TARGET_BUILD_DIR)/$(FIRMWARE_PKG_NAME)-pkg-description |
| +FIRMWARE_PKG_DESCRIPTION_FILE_IN = $(FIRMWARE_PKG_NAME)-pkg-description.in |
| +FIRMWARE_PKG_INSTALL_SCRIPT = $(FIRMWARE_PKG_NAME)-pkg-install.sh |
| + |
| +FIRMWARE_PKG = $(CURDIR)/$(TARGET_BUILD_DIR)/$(FIRMWARE_PKG_NAME)-package |
| + |
| +pkg_basename = $(FIRMWARE_PKG_NAME)-$(FIRMWARE_PKG_VERSION)-$(FIRMWARE_PKG_ARCH)-$(FIRMWARE_PKG_DISTRO_NAME)-$(FIRMWARE_PKG_DISTRO_VERSION) |
| + |
| +pkg_archive = $(TARGET_BUILD_DIR)/$(PKG_GROUP)/$(pkg_basename).$(pkg_arch_suffix) |
| +pkg_certificate = $(call cert-name,$(pkg_archive)) |
| +pkg_signature = $(call sign-name,$(pkg_archive)) |
| +pkg_description = $(call desc-name,$(pkg_archive)) |
| +products = $(call pkg-files,$(pkg_archive)) |
| + |
| +BUILD_TARGETS = $(install_target) |
| + |
| +PRODUCT_TARGETS = $(products) |
| + |
| +ROOTFS_TARGETS = $(pkg_archive) |
| + |
| + |
| +include ../../../../build-system/core.mk |
| + |
| + |
| +####### Dependencies |
| + |
| +$(src_done): $(SRC_ARCHIVE) $(PATCHES_DEP) |
| + $(UNPACK_SRC_ARCHIVE) |
| + $(APPLY_PATCHES) |
| + @touch $@ |
| + |
| +$(install_target): $(src_done) |
| + @mkdir -p $(FIRMWARE_PKG) |
| + @( cd $(SRC_DIR) ; \ |
| + $(MAKE) DESTDIR=$(FIRMWARE_PKG) install 2>/dev/null ; \ |
| + ) |
| + @( cd $(FIRMWARE_PKG)/lib/firmware ; \ |
| + if [ -d carl9170fw ]; then \ |
| + mv carl9170fw/COPYRIGHT COPYRIGHT.carl9170fw ; \ |
| + mv carl9170fw/GPL LICENSE.carl9170fw ; \ |
| + rm -rf carl9170fw ; \ |
| + fi ; \ |
| + ) |
| + # ======= Install Documentation ======= |
| + @mkdir -p $(FIRMWARE_PKG)/usr/doc/$(src_dir_name) |
| + @( cd $(SRC_DIR) ; \ |
| + cp -a GPL* LICENSE* WHENCE \ |
| + $(FIRMWARE_PKG)/usr/doc/$(src_dir_name) ; \ |
| + ) |
| + @mkdir -p $(FIRMWARE_PKG)/usr/share/doc/$(src_dir_name) |
| + @( cd $(SRC_DIR) ; \ |
| + cp -a GPL* LICENSE* README WHENCE \ |
| + $(FIRMWARE_PKG)/usr/share/doc/$(src_dir_name) ; \ |
| + ) |
| + # ======= Install the same to $(TARGET_DEST_DIR) ======= |
| + $(call install-into-devenv, $(FIRMWARE_PKG)) |
| + @touch $@ |
| + |
| +$(FIRMWARE_PKG_DESCRIPTION_FILE): $(FIRMWARE_PKG_DESCRIPTION_FILE_IN) |
| + @cat $< | $(SED) -e "s/@VERSION@/$(version)/g" > $@ |
| + |
| +$(pkg_certificate) : $(pkg_archive) ; |
| +$(pkg_signature) : $(pkg_archive) ; |
| +$(pkg_description) : $(pkg_archive) ; |
| + |
| +$(pkg_archive): $(install_target) $(FIRMWARE_PKG_DESCRIPTION_FILE) $(FIRMWARE_PKG_INSTALL_SCRIPT) |
| + @cp $(FIRMWARE_PKG_DESCRIPTION_FILE) $(FIRMWARE_PKG)/.DESCRIPTION |
| + @cp $(FIRMWARE_PKG_INSTALL_SCRIPT) $(FIRMWARE_PKG)/.INSTALL |
| + @$(BUILD_PKG_REQUIRES) $(FIRMWARE_PKG)/.REQUIRES |
| + @echo "pkgname=$(FIRMWARE_PKG_NAME)" > $(FIRMWARE_PKG)/.PKGINFO ; \ |
| + echo "pkgver=$(FIRMWARE_PKG_VERSION)" >> $(FIRMWARE_PKG)/.PKGINFO ; \ |
| + echo "arch=$(FIRMWARE_PKG_ARCH)" >> $(FIRMWARE_PKG)/.PKGINFO ; \ |
| + echo "distroname=$(FIRMWARE_PKG_DISTRO_NAME)" >> $(FIRMWARE_PKG)/.PKGINFO ; \ |
| + echo "distrover=$(FIRMWARE_PKG_DISTRO_VERSION)" >> $(FIRMWARE_PKG)/.PKGINFO ; \ |
| + echo "group=$(FIRMWARE_PKG_GROUP)" >> $(FIRMWARE_PKG)/.PKGINFO ; \ |
| + echo "short_description=\"$(FIRMWARE_PKG_SHORT_DESCRIPTION)\"" >> $(FIRMWARE_PKG)/.PKGINFO ; \ |
| + echo "url=$(FIRMWARE_PKG_URL)" >> $(FIRMWARE_PKG)/.PKGINFO ; \ |
| + echo "license=$(FIRMWARE_PKG_LICENSE)" >> $(FIRMWARE_PKG)/.PKGINFO |
| + @$(PSEUDO) sh -c "cd $(FIRMWARE_PKG) && \ |
| + chown -R root:root . && \ |
| + $(MAKE_PACKAGE) -J --linkadd=yes $(GNUPG_OPTIONS) -m -d .. ." |
| |
| |
| |
| |
| |
| |
| @@ -0,0 +1,19 @@ |
| +# HOW TO EDIT THIS FILE: |
| +# The "handy ruler" below makes it easier to edit a package description. Line |
| +# up the first '|' above the ':' following the base package name, and the '|' |
| +# on the right side marks the last column you can put a character in. You must |
| +# make exactly 11 lines for the formatting to be correct. It's also |
| +# customary to leave one space after the ':'. |
| + |
| + |-----handy-ruler------------------------------------------------------| |
| +kernel-firmware: kernel-firmware @VERSION@ (Firmware for the kernel) |
| +kernel-firmware: |
| +kernel-firmware: These are firmware files for the Linux kernel. |
| +kernel-firmware: |
| +kernel-firmware: You'll need these to use certain hardware drivers with Linux. |
| +kernel-firmware: |
| +kernel-firmware: Upstream: |
| +kernel-firmware: -------- |
| +kernel-firmware: git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git |
| +kernel-firmware: |
| +kernel-firmware: |
| |
| |
| |
| |
| @@ -0,0 +1,53 @@ |
| +#!/bin/sh |
| + |
| +# Preserve new files |
| +install_file() { |
| + NEW="$1" |
| + OLD="`dirname $NEW`/`basename $NEW .new`" |
| + # If there's no file by that name, mv it over: |
| + if [ ! -r $OLD ]; then |
| + mv $NEW $OLD |
| + elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy |
| + rm $NEW |
| + fi |
| + # Otherwise, we leave the .new copy for the admin to consider... |
| +} |
| + |
| + |
| +# arg 1: the new package version |
| +pre_install() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +post_install() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +# arg 2: the old package version |
| +pre_update() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the new package version |
| +# arg 2: the old package version |
| +post_update() { |
| + post_install |
| +} |
| + |
| +# arg 1: the old package version |
| +pre_remove() { |
| + /bin/true |
| +} |
| + |
| +# arg 1: the old package version |
| +post_remove() { |
| + /bin/true |
| +} |
| + |
| + |
| +operation=$1 |
| +shift |
| + |
| +$operation $* |
| |
| Property changes on: firmware/kernel-firmware/20221012/kernel-firmware-pkg-install.sh |
| ___________________________________________________________________ |
| Added: svn:executable |
| ## -0,0 +1 ## |
| +* |
| \ No newline at end of property |
| |
| |
| |
| |
| |
| Property changes on: firmware/kernel-firmware/20221012 |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: firmware/kernel-firmware |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: firmware |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |
| |
| |
| |
| |
| Property changes on: . |
| ___________________________________________________________________ |
| Added: svn:ignore |
| ## -0,0 +1,73 ## |
| + |
| +# install dir |
| +dist |
| + |
| +# Target build dirs |
| +.a1x-newlib |
| +.a2x-newlib |
| +.at91sam7s-newlib |
| + |
| +.build-machine |
| + |
| +.a1x-glibc |
| +.a2x-glibc |
| +.h3-glibc |
| +.h5-glibc |
| +.i586-glibc |
| +.i686-glibc |
| +.imx6-glibc |
| +.jz47xx-glibc |
| +.makefile |
| +.am335x-glibc |
| +.omap543x-glibc |
| +.p5600-glibc |
| +.power8-glibc |
| +.power8le-glibc |
| +.power9-glibc |
| +.power9le-glibc |
| +.m1000-glibc |
| +.riscv64-glibc |
| +.rk328x-glibc |
| +.rk33xx-glibc |
| +.rk339x-glibc |
| +.s8xx-glibc |
| +.s9xx-glibc |
| +.x86_64-glibc |
| + |
| +# Hidden files (each file) |
| +.makefile |
| +.dist |
| +.rootfs |
| + |
| +# src & hw requires |
| +.src_requires |
| +.src_requires_depend |
| +.requires |
| +.requires_depend |
| + |
| +# Tarballs |
| +*.gz |
| +*.bz2 |
| +*.lz |
| +*.xz |
| +*.tgz |
| +*.txz |
| + |
| +# Signatures |
| +*.asc |
| +*.sig |
| +*.sign |
| +*.sha1sum |
| + |
| +# Patches |
| +*.patch |
| + |
| +# Descriptions |
| +*.dsc |
| +*.txt |
| + |
| +# Default linux config files |
| +*.defconfig |
| + |
| +# backup copies |
| +*~ |
| |