bcmdhd wifi driver: support custom mac address
authorhwg <hwg@rock-chips.com>
Wed, 15 Apr 2015 01:35:46 +0000 (09:35 +0800)
committerhwg <hwg@rock-chips.com>
Wed, 15 Apr 2015 01:35:46 +0000 (09:35 +0800)
drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/Makefile
drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_linux_platdev.c

index a8e75aa0950f7bb5097c1261e3c5d75b6a9f27f0..ac6f7c2625ad205e736dd608169e1512e26dd0dd 100755 (executable)
@@ -38,7 +38,7 @@ DHDOFILES += bcmsdh.o bcmsdh_linux.o bcmsdh_sdmmc.o bcmsdh_sdmmc_linux.o \
 $(MODULE_NAME)-y += $(DHDOFILES)
 
 DHDOFILES += dhd_gpio.o
-DHDCFLAGS += -DCUSTOMER_HW -DDHD_OF_SUPPORT
+DHDCFLAGS += -DCUSTOMER_HW -DDHD_OF_SUPPORT -DGET_CUSTOM_MAC_ENABLE
 #DHDCFLAGS += -DBCMWAPI_WPI -DBCMWAPI_WAI
 
 ifeq ($(CONFIG_BCMDHD_OOB),y)
index 6690e6e972a6997c89142260f10d3c4ff939d053..9641dabaf6144c8f25a248880aa767a8f3fc0ea5 100755 (executable)
@@ -206,11 +206,18 @@ int wifi_platform_bus_enumerate(wifi_adapter_info_t *adapter, bool device_presen
 
 }
 
+#if defined(CUSTOMER_HW)
+int rockchip_wifi_mac_addr(unsigned char *buf);
+#endif
 int wifi_platform_get_mac_addr(wifi_adapter_info_t *adapter, unsigned char *buf)
 {
-       struct wifi_platform_data *plat_data;
+       //struct wifi_platform_data *plat_data;
 
        DHD_ERROR(("%s\n", __FUNCTION__));
+
+#if defined(CUSTOMER_HW)
+        return rockchip_wifi_mac_addr(buf);
+#else
        if (!buf || !adapter || !adapter->wifi_plat_data)
                return -EINVAL;
        plat_data = adapter->wifi_plat_data;
@@ -218,6 +225,7 @@ int wifi_platform_get_mac_addr(wifi_adapter_info_t *adapter, unsigned char *buf)
                return plat_data->get_mac_addr(buf);
        }
        return -EOPNOTSUPP;
+#endif
 }
 
 void *wifi_platform_get_country_code(wifi_adapter_info_t *adapter, char *ccode)