blob: 1454e42d94fa0c219504a9f95677220204ef5a61 [file] [log] [blame]
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001# Android makefile for the WLAN Module
2
3# Assume no targets will be supported
4WLAN_CHIPSET :=
5
6ifeq ($(BOARD_HAS_QCOM_WLAN), true)
7
8# Build/Package options for 8084/8092/8960/8992/8994 target
Prakash Dhavali08abad62016-04-11 23:41:47 -07009ifeq ($(call is-board-platform-in-list, msm8994 msm8996 msm8998 msmcobalt),true)
Satish Singhfbb9b372015-11-25 19:57:38 -080010 WLAN_CHIPSET := qca_cld3
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080011 WLAN_SELECT := CONFIG_QCA_CLD_WLAN=m
12endif # platform
13
14# Build/Package only in case of supported target
15ifneq ($(WLAN_CHIPSET),)
16
Yue Madecd7af2016-03-21 16:45:05 -070017# If TARGET_KERNEL_VERSION is not defined, using default kernel path,
18# otherwise kernel path should come from top level Android makefiles.
19ifeq ($(TARGET_KERNEL_VERSION),)
20$(info "WLAN: TARGET_KERNEL_VERSION not defined, assuming default")
21TARGET_KERNEL_SOURCE := kernel
22KERNEL_TO_BUILD_ROOT_OFFSET := ../
23endif
24
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080025LOCAL_PATH := $(call my-dir)
26
27# This makefile is only for DLKM
28ifneq ($(findstring vendor,$(LOCAL_PATH)),)
29
30ifneq ($(findstring opensource,$(LOCAL_PATH)),)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080031 WLAN_BLD_DIR := vendor/qcom/opensource/wlan
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080032endif # opensource
33
34# DLKM_DIR was moved for JELLY_BEAN (PLATFORM_SDK 16)
35ifeq ($(call is-platform-sdk-version-at-least,16),true)
36 DLKM_DIR := $(TOP)/device/qcom/common/dlkm
37else
38 DLKM_DIR := build/dlkm
39endif # platform-sdk-version
40
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080041# Build wlan.ko as $(WLAN_CHIPSET)_wlan.ko
42###########################################################
43# This is set once per LOCAL_PATH, not per (kernel) module
Yue Madecd7af2016-03-21 16:45:05 -070044KBUILD_OPTIONS := WLAN_ROOT=$(KERNEL_TO_BUILD_ROOT_OFFSET)$(WLAN_BLD_DIR)/qcacld-3.0
Yue Ma188f59a2016-04-20 12:46:03 -070045KBUILD_OPTIONS += WLAN_COMMON_ROOT=../qca-wifi-host-cmn
46KBUILD_OPTIONS += WLAN_COMMON_INC=$(KERNEL_TO_BUILD_ROOT_OFFSET)$(WLAN_BLD_DIR)/qca-wifi-host-cmn
Prakash Dhavali08abad62016-04-11 23:41:47 -070047
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080048# We are actually building wlan.ko here, as per the
49# requirement we are specifying <chipset>_wlan.ko as LOCAL_MODULE.
50# This means we need to rename the module to <chipset>_wlan.ko
51# after wlan.ko is built.
52KBUILD_OPTIONS += MODNAME=wlan
53KBUILD_OPTIONS += BOARD_PLATFORM=$(TARGET_BOARD_PLATFORM)
54KBUILD_OPTIONS += $(WLAN_SELECT)
55
56include $(CLEAR_VARS)
Prakash Dhavali08abad62016-04-11 23:41:47 -070057LOCAL_MODULE := $(WLAN_CHIPSET)_wlan.ko
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080058LOCAL_MODULE_KBUILD_NAME := wlan.ko
59LOCAL_MODULE_TAGS := debug
60LOCAL_MODULE_DEBUG_ENABLE := true
61LOCAL_MODULE_PATH := $(TARGET_OUT)/lib/modules/$(WLAN_CHIPSET)
62include $(DLKM_DIR)/AndroidKernelModule.mk
63###########################################################
64
65# Create Symbolic link
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080066$(shell ln -sf /persist/wlan_mac.bin $(TARGET_OUT_ETC)/firmware/wlan/qca_cld/wlan_mac.bin)
67
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080068endif # DLKM check
69
70endif # supported target check
71endif # WLAN enabled check