################################################################################
|
#
|
# rkwifibt
|
#
|
################################################################################
|
|
RKWIFIBT_VERSION = 1.0.0
|
RKWIFIBT_SITE_METHOD = local
|
RKWIFIBT_SITE = $(TOPDIR)/../external/rkwifibt
|
RKWIFIBT_LICENSE = Apache V2.0
|
RKWIFIBT_LICENSE_FILES = NOTICE
|
|
RKWIFIBT_DEPENDENCIES = wpa_supplicant
|
|
BT_TTY_DEV = $(call qstrip,$(BR2_PACKAGE_RKWIFIBT_BTUART))
|
SXLOAD_WIFI = "S36load_wifi_modules"
|
FIRMWARE_DIR = system
|
|
ifeq ($(call qstrip,$(BR2_ARCH)),aarch64)
|
RKWIFIBT_ARCH=arm64
|
else ifeq ($(call qstrip,$(BR2_ARCH)),arm)
|
RKWIFIBT_ARCH=arm
|
endif
|
|
BT_DRIVER_ARCH = $(shell grep -o "arm[^ ]*" $(TOPDIR)/../kernel/.config)
|
ifeq ($(call qstrip,$(BT_DRIVER_ARCH)),arm64)
|
BT_DRIVER_ARCH = arm64
|
else
|
BT_DRIVER_ARCH = arm
|
endif
|
|
ifeq ($(BR2_PACKAGE_RV1126_RV1109),y)
|
SXLOAD_WIFI = "S36load_rv1109_wifi_modules"
|
RK_WIFI_CHIP_NAME1 = AP6256
|
RK_WIFI_CHIP_NAME2 = AP6255
|
endif
|
|
ifeq (y,$(BR2_PACKAGE_RKWIFIBT_AMPAKALL))
|
SXLOAD_WIFI = "S36load_ampakall_wifi_modules"
|
endif
|
|
define RKWIFIBT_INSTALL_COMMON
|
mkdir -p $(TARGET_DIR)/lib/firmware $(TARGET_DIR)/usr/lib/modules $(TARGET_DIR)/$(FIRMWARE_DIR)/etc/firmware $(TARGET_DIR)/lib/firmware/rtlbt
|
$(INSTALL) -D -m 0755 $(@D)/wpa_supplicant.conf $(TARGET_DIR)/etc/
|
$(INSTALL) -D -m 0755 $(@D)/dnsmasq.conf $(TARGET_DIR)/etc/
|
$(INSTALL) -D -m 0755 $(@D)/wifi_start.sh $(TARGET_DIR)/usr/bin/
|
$(INSTALL) -D -m 0755 $(@D)/wifi_ap6xxx_rftest.sh $(TARGET_DIR)/usr/bin/
|
$(INSTALL) -D -m 0755 $(@D)/src/rk_wifi_init $(TARGET_DIR)/usr/bin/
|
$(SED) 's/WIFI_KO/\/$(FIRMWARE_DIR)\/lib\/modules\/$(BR2_PACKAGE_RKWIFIBT_WIFI_KO)/g' $(@D)/$(SXLOAD_WIFI)
|
$(SED) 's/BT_TTY_DEV/\/dev\/$(BT_TTY_DEV)/g' $(@D)/$(SXLOAD_WIFI)
|
-$(INSTALL) -D -m 0755 $(@D)/$(SXLOAD_WIFI) $(TARGET_DIR)/etc/init.d/
|
endef
|
|
define RKWIFIBT_TB_INSTALL
|
mkdir -p $(TARGET_DIR)/$(FIRMWARE_DIR)/etc/firmware
|
$(INSTALL) -D -m 0755 $(@D)/wpa_supplicant.conf $(TARGET_DIR)/etc/
|
$(INSTALL) -D -m 0644 $(@D)/firmware/broadcom/$(BR2_PACKAGE_RKWIFIBT_CHIPNAME)/wifi/* $(TARGET_DIR)/$(FIRMWARE_DIR)/etc/firmware/
|
$(INSTALL) -D -m 0755 $(@D)/tb_start_wifi.sh $(TARGET_DIR)/usr/bin/
|
$(INSTALL) -D -m 0755 $(@D)/brcm_tools/dhd_priv $(TARGET_DIR)/usr/bin/
|
$(INSTALL) -D -m 0755 $(@D)/src/CY_WL_API/keepalive $(TARGET_DIR)/usr/bin/
|
$(INSTALL) -D -m 0755 $(@D)/bin/$(RKWIFIBT_ARCH)/* $(TARGET_DIR)/usr/bin/
|
|
$(INSTALL) -D -m 0644 $(TOPDIR)/../kernel/drivers/net/wireless/rockchip_wlan/rkwifi/rk_wifi_config.ko $(TARGET_DIR)/$(FIRMWARE_DIR)/lib/modules/
|
$(INSTALL) -D -m 0644 $(TOPDIR)/../kernel/net/rfkill/rfkill.ko $(TARGET_DIR)/$(FIRMWARE_DIR)/lib/modules/
|
$(INSTALL) -D -m 0644 $(TOPDIR)/../kernel/net/rfkill/rfkill-rk.ko $(TARGET_DIR)/$(FIRMWARE_DIR)/lib/modules/
|
$(INSTALL) -D -m 0644 $(TOPDIR)/../kernel/net/wireless/cfg80211.ko $(TARGET_DIR)/$(FIRMWARE_DIR)/lib/modules/
|
$(INSTALL) -D -m 0644 $(TOPDIR)/../kernel/net/mac80211/mac80211.ko $(TARGET_DIR)/$(FIRMWARE_DIR)/lib/modules/
|
-$(TARGET_STRIP) $(STRIP_STRIP_DEBUG) $(TARGET_DIR)/$(FIRMWARE_DIR)/lib/modules/*.ko
|
endef
|
|
define RKWIFIBT_BROADCOM_INSTALL
|
$(INSTALL) -D -m 0644 $(@D)/firmware/broadcom/$(BR2_PACKAGE_RKWIFIBT_CHIPNAME)/wifi/* $(TARGET_DIR)/$(FIRMWARE_DIR)/etc/firmware/
|
-$(INSTALL) -D -m 0644 $(@D)/firmware/broadcom/$(RK_WIFI_CHIP_NAME1)/wifi/* $(TARGET_DIR)/$(FIRMWARE_DIR)/etc/firmware/
|
-$(INSTALL) -D -m 0644 $(@D)/firmware/broadcom/$(RK_WIFI_CHIP_NAME2)/wifi/* $(TARGET_DIR)/$(FIRMWARE_DIR)/etc/firmware/
|
$(INSTALL) -D -m 0755 $(@D)/brcm_tools/brcm_patchram_plus1 $(TARGET_DIR)/usr/bin/
|
$(INSTALL) -D -m 0755 $(@D)/brcm_tools/dhd_priv $(TARGET_DIR)/usr/bin/
|
$(INSTALL) -D -m 0755 $(@D)/bin/$(RKWIFIBT_ARCH)/* $(TARGET_DIR)/usr/bin/
|
$(INSTALL) -D -m 0644 $(@D)/firmware/broadcom/$(BR2_PACKAGE_RKWIFIBT_CHIPNAME)/bt/* $(TARGET_DIR)/$(FIRMWARE_DIR)/etc/firmware/
|
$(INSTALL) -D -m 0755 $(@D)/bt_load_broadcom_firmware $(TARGET_DIR)/usr/bin/
|
$(SED) 's/BTFIRMWARE_PATH/\/$(FIRMWARE_DIR)\/etc\/firmware\/$(BR2_PACKAGE_RKWIFIBT_BT_FW)/g' $(TARGET_DIR)/usr/bin/bt_load_broadcom_firmware
|
$(SED) 's/BT_TTY_DEV/\/dev\/$(BT_TTY_DEV)/g' $(TARGET_DIR)/usr/bin/bt_load_broadcom_firmware
|
$(INSTALL) -D -m 0755 $(TARGET_DIR)/usr/bin/bt_load_broadcom_firmware $(TARGET_DIR)/usr/bin/bt_pcba_test
|
$(INSTALL) -D -m 0755 $(TARGET_DIR)/usr/bin/bt_load_broadcom_firmware $(TARGET_DIR)/usr/bin/bt_init.sh
|
endef
|
|
define RKWIFIBT_REALTEK_WIFI_INSTALL
|
$(INSTALL) -D -m 0755 $(@D)/bin/$(RKWIFIBT_ARCH)/rtwpriv $(TARGET_DIR)/usr/bin/
|
$(INSTALL) -D -m 0755 $(@D)/$(SXLOAD_WIFI) $(TARGET_DIR)/etc/init.d/
|
endef
|
|
define RKWIFIBT_REALTEK_BT_INSTALL
|
$(INSTALL) -D -m 0755 $(@D)/realtek/rtk_hciattach/rtk_hciattach $(TARGET_DIR)/usr/bin/rtk_hciattach
|
$(INSTALL) -D -m 0755 $(@D)/bin/$(RKWIFIBT_ARCH)/* $(TARGET_DIR)/usr/bin/
|
$(INSTALL) -D -m 0644 $(@D)/realtek/$(BR2_PACKAGE_RKWIFIBT_CHIPNAME)/* $(TARGET_DIR)/lib/firmware/rtlbt/
|
-$(INSTALL) -D -m 0644 $(@D)/realtek/$(BR2_PACKAGE_RKWIFIBT_CHIPNAME)/mp_* $(TARGET_DIR)/lib/firmware/rtlbt/
|
-$(INSTALL) -D -m 0644 $(@D)/realtek/$(BR2_PACKAGE_RKWIFIBT_CHIPNAME)/mp_* $(TARGET_DIR)/lib/firmware/
|
$(INSTALL) -D -m 0755 $(@D)/bt_realtek* $(TARGET_DIR)/usr/bin/
|
-$(INSTALL) -D -m 0644 $(@D)/realtek/bluetooth_uart_driver/hci_uart.ko $(TARGET_DIR)/usr/lib/modules/hci_uart.ko
|
$(INSTALL) -D -m 0755 $(@D)/bt_load_rtk_firmware $(TARGET_DIR)/usr/bin/
|
$(SED) 's/BT_TTY_DEV/\/dev\/$(BT_TTY_DEV)/g' $(TARGET_DIR)/usr/bin/bt_load_rtk_firmware
|
$(INSTALL) -D -m 0755 $(TARGET_DIR)/usr/bin/bt_load_rtk_firmware $(TARGET_DIR)/usr/bin/bt_pcba_test
|
$(INSTALL) -D -m 0755 $(TARGET_DIR)/usr/bin/bt_load_rtk_firmware $(TARGET_DIR)/usr/bin/bt_init.sh
|
endef
|
|
ifeq ($(BR2_PACKAGE_RKWIFIBT_CHIPNAME), "RK915")
|
define RKWIFIBT_ROCKCHIP_INSTALL
|
$(SED) 's/BT_TTY_DEV/\/dev\/$(BT_TTY_DEV)/g' $(@D)/$(SXLOAD_WIFI)
|
$(SED) 's/WIFI_KO/\/$(FIRMWARE_DIR)\/lib\/modules\/$(BR2_PACKAGE_RKWIFIBT_WIFI_KO)/g' $(@D)/$(SXLOAD_WIFI)
|
$(INSTALL) -D -m 0755 $(@D)/$(SXLOAD_WIFI) $(TARGET_DIR)/etc/init.d/
|
$(INSTALL) -D -m 0644 $(@D)/firmware/rockchip/WIFI_FIRMWARE/rk915* $(TARGET_DIR)/system/etc/firmware/
|
endef
|
else
|
define RKWIFIBT_ROCKCHIP_INSTALL
|
$(INSTALL) -D -m 0644 $(@D)/firmware/rockchip/WIFI_FIRMWARE/rk912* $(TARGET_DIR)/lib/firmware/
|
$(INSTALL) -D -m 0755 $(@D)/S36load_wifi_rk912_modules $(TARGET_DIR)/etc/init.d/
|
endef
|
endif
|
|
define RKWIFIBT_BUILD_CMDS
|
ln -sf $(FIRMWARE_DIR) $(TARGET_DIR)/vendor
|
mkdir -p $(TARGET_DIR)/$(FIRMWARE_DIR)/lib/modules/
|
-$(TOPDIR)/../build.sh modules
|
find $(TOPDIR)/../kernel/drivers/net/wireless/rockchip_wlan/* -name $(BR2_PACKAGE_RKWIFIBT_WIFI_KO) | xargs -n1 -i cp {} $(TARGET_DIR)/$(FIRMWARE_DIR)/lib/modules/
|
-$(TARGET_STRIP) $(STRIP_STRIP_DEBUG) $(TARGET_DIR)/$(FIRMWARE_DIR)/lib/modules/*.ko
|
$(TARGET_CC) -o $(@D)/brcm_tools/brcm_patchram_plus1 $(@D)/brcm_tools/brcm_patchram_plus1.c
|
$(TARGET_CC) -o $(@D)/brcm_tools/dhd_priv $(@D)/brcm_tools/dhd_priv.c
|
$(TARGET_CC) -o $(@D)/src/rk_wifi_init $(@D)/src/rk_wifi_init.c
|
$(MAKE) -C $(@D)/realtek/rtk_hciattach/ CC=$(TARGET_CC)
|
$(MAKE) -C $(@D)/src/CY_WL_API/ CC=$(TARGET_CC)
|
-$(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(TOPDIR)/../kernel/ M=$(@D)/realtek/bluetooth_uart_driver ARCH=$(BT_DRIVER_ARCH)
|
endef
|
|
ifneq ($(BR2_PACKAGE_THUNDERBOOT), y)
|
|
ifeq ($(BR2_PACKAGE_RKWIFIBT_VENDOR), "BROADCOM")
|
define RKWIFIBT_INSTALL_TARGET_CMDS
|
$(RKWIFIBT_INSTALL_COMMON)
|
$(RKWIFIBT_BROADCOM_INSTALL)
|
endef
|
endif
|
|
ifeq ($(BR2_PACKAGE_RKWIFIBT_VENDOR), "CYPRESS")
|
define RKWIFIBT_INSTALL_TARGET_CMDS
|
$(RKWIFIBT_INSTALL_COMMON)
|
$(RKWIFIBT_BROADCOM_INSTALL)
|
endef
|
endif
|
|
else
|
|
define RKWIFIBT_INSTALL_TARGET_CMDS
|
$(RKWIFIBT_TB_INSTALL)
|
endef
|
|
endif #THUNDERBOOT
|
|
ifeq ($(BR2_PACKAGE_RKWIFIBT_VENDOR), "REALTEK")
|
|
ifeq ($(BR2_PACKAGE_RKWIFIBT_BT_EN), "ENABLE")
|
define RKWIFIBT_INSTALL_TARGET_CMDS
|
$(RKWIFIBT_INSTALL_COMMON)
|
$(RKWIFIBT_REALTEK_WIFI_INSTALL)
|
$(RKWIFIBT_REALTEK_BT_INSTALL)
|
endef
|
else
|
define RKWIFIBT_INSTALL_TARGET_CMDS
|
$(RKWIFIBT_INSTALL_COMMON)
|
$(RKWIFIBT_REALTEK_WIFI_INSTALL)
|
endef
|
endif
|
|
endif
|
|
ifeq ($(BR2_PACKAGE_RKWIFIBT_VENDOR), "ROCKCHIP")
|
define RKWIFIBT_INSTALL_TARGET_CMDS
|
$(RKWIFIBT_INSTALL_COMMON)
|
$(RKWIFIBT_ROCKCHIP_INSTALL)
|
endef
|
endif
|
|
define RKWIFIBT_POST_INSTALL_TARGET_HOOKS_CMDS
|
-rm -f $(@D)/$(SXLOAD_WIFI)
|
endef
|
|
RKWIFIBT_POST_INSTALL_TARGET_HOOKS += RKWIFIBT_POST_INSTALL_TARGET_HOOKS_CMDS
|
|
$(eval $(generic-package))
|