--- /dev/null
+Package/brcmfmac-firmware-pcie = $(call Package/firmware-default,Broadcom BCM43xx fullmac PCIe firmware)
+define Package/brcmfmac-firmware-pcie/install
+ $(INSTALL_DIR) $(1)/lib/firmware/brcm
+ $(INSTALL_DATA) \
+ $(PKG_BUILD_DIR)/brcm/brcmfmac43602-pcie.ap.bin \
+ $(1)/lib/firmware/brcm/brcmfmac43602-pcie.bin
+endef
+$(eval $(call BuildPackage,brcmfmac-firmware-pcie))
+
+Package/brcmfmac-firmware-sdio = $(call Package/firmware-default,Broadcom BCM43xx fullmac SDIO firmware)
+define Package/brcmfmac-firmware-sdio/install
+ $(INSTALL_DIR) $(1)/lib/firmware/brcm
+ $(INSTALL_DATA) \
+ $(PKG_BUILD_DIR)/brcm/brcmfmac4329-sdio.bin \
+ $(1)/lib/firmware/brcm/brcmfmac4329-sdio.bin
+ $(INSTALL_DATA) \
+ $(PKG_BUILD_DIR)/brcm/brcmfmac43362-sdio.bin \
+ $(1)/lib/firmware/brcm/brcmfmac43362-sdio.bin
+endef
+$(eval $(call BuildPackage,brcmfmac-firmware-sdio))
+
+Package/brcmfmac-firmware-usb = $(call Package/firmware-default,Broadcom BCM43xx fullmac USB firmware)
+define Package/brcmfmac-firmware-usb/install
+ $(INSTALL_DIR) $(1)/lib/firmware/brcm
+ $(INSTALL_DATA) \
+ $(PKG_BUILD_DIR)/brcm/brcmfmac43236b.bin \
+ $(1)/lib/firmware/brcm/
+ $(INSTALL_DATA) \
+ $(PKG_BUILD_DIR)/brcm/brcmfmac43143.bin \
+ $(1)/lib/firmware/brcm/
+endef
+$(eval $(call BuildPackage,brcmfmac-firmware-usb))
+
+Package/brcmsmac-firmware = $(call Package/firmware-default,Broadcom BCM43xx softmac PCIe firmware)
+define Package/brcmsmac-firmware/install
+ $(INSTALL_DIR) $(1)/lib/firmware/brcm
+ $(INSTALL_DATA) \
+ $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx-0.fw \
+ $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx_hdr-0.fw \
+ $(1)/lib/firmware/brcm/
+endef
+$(eval $(call BuildPackage,brcmsmac-firmware))