Kbuild 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. ifeq ($(obj),)
  2. obj := .
  3. endif
  4. DEPTH := ../..
  5. HOST_CMN_CONVG_SRC := $(DEPTH)/cmn_dev
  6. HOST_CMN_CONVG_NLINK := $(DEPTH)/cmn_dev/utils/nlink
  7. HOST_CMN_CONVG_LOGGING := $(DEPTH)/cmn_dev/utils/logging
  8. HOST_CMN_CONVG_PTT := $(DEPTH)/cmn_dev/utils/ptt
  9. HOST_QAL_SRC := $(DEPTH)/component_dev/qal
  10. include $(obj)/$(DEPTH)/os/linux/Makefile-linux.common
  11. INCS += -Iinclude/nbuf -Iinclude/net -Iinclude/os
  12. INCS += -Inbuf/linux -Inet/linux -Ios/linux
  13. INCS += -I$(WLAN_TOP)/../../include
  14. INCS += -I$(WLAN_TOP)/cmn_dev/qdf/inc
  15. INCS += -I$(WLAN_TOP)/cmn_dev/qal/inc
  16. INCS += -I$(WLAN_TOP)/cmn_dev/utils/sys
  17. INCS += -I$(WLAN_TOP)/component_dev/qal/inc
  18. INCS += -I$(WLAN_TOP)/cmn_dev/qal/linux/src
  19. INCS += -I$(WLAN_TOP)/cmn_dev/qdf/linux/src
  20. INCS += -I$(obj)/$(HOST_CMN_CONVG_PTT)/inc \
  21. -I$(obj)/$(HOST_CMN_CONVG_NLINK)/inc \
  22. -I$(obj)/$(HOST_CMN_CONVG_LOGGING)/inc \
  23. -I$(obj)/$(DEPTH)/cmn_dev/utils/host_diag_log/inc \
  24. -I$(obj)/$(DEPTH)/cmn_dev/utils/host_diag_log/src \
  25. -I$(obj)/$(DEPTH)/cmn_dev/utils/ptt/inc \
  26. -I$(obj)/$(HOST_CMN_CONVG_SRC)/ipa/core/inc \
  27. -I$(obj)/$(HOST_CMN_CONVG_SRC)/ipa/core/src \
  28. -I$(obj)/$(HOST_CMN_CONVG_SRC)/ipa/dispatcher/inc \
  29. -I$(obj)/$(HOST_CMN_CONVG_SRC)/ipa/dispatcher/src \
  30. -I$(WLAN_TOP)/pld/inc
  31. obj-m += qdf.o
  32. inc_file := $(obj)/$(DEPTH)/qdf_inc_opts
  33. inc_var := $(shell echo $(INCS) > $(inc_file))
  34. var := "@$(inc_file)"
  35. EXTRA_CFLAGS+= $(var) $(COPTS) -Wno-unused-function
  36. ifeq ($(strip ${QCA_PARTNER_MAKE_F_SUPPORT}),1)
  37. MOD_CFLAGS = -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(qdf.mod)" -D"KBUILD_MODNAME=KBUILD_STR(qdf)"
  38. endif
  39. qdf-objs := \
  40. linux/src/qdf_defer.o \
  41. linux/src/qdf_func_tracker.o \
  42. linux/src/qdf_dev.o \
  43. linux/src/qdf_event.o \
  44. linux/src/qdf_file.o \
  45. linux/src/qdf_list.o \
  46. linux/src/qdf_lock.o \
  47. linux/src/qdf_mc_timer.o \
  48. linux/src/qdf_mem.o \
  49. linux/src/qdf_crypto.o \
  50. linux/src/qdf_module.o \
  51. linux/src/qdf_net_if.o \
  52. linux/src/qdf_nbuf.o \
  53. linux/src/qdf_nbuf_frag.o \
  54. linux/src/qdf_perf.o \
  55. linux/src/qdf_status.o \
  56. linux/src/qdf_threads.o \
  57. linux/src/qdf_trace.o \
  58. linux/src/qdf_vfs.o \
  59. linux/src/qdf_delayed_work.o \
  60. src/qdf_flex_mem.o \
  61. src/qdf_parse.o \
  62. src/qdf_str.o \
  63. src/qdf_types.o \
  64. src/qdf_platform.o \
  65. $(HOST_CMN_CONVG_NLINK)/src/wlan_nlink_srv.o
  66. qal-objs := \
  67. $(HOST_QAL_SRC)/linux/src/qal_devcfg.o \
  68. $(HOST_QAL_SRC)/linux/src/qal_vbus_dev.o \
  69. $(HOST_QAL_SRC)/linux/src/qal_notifier.o \
  70. $(HOST_QAL_SRC)/linux/src/qal_devnode.o \
  71. $(HOST_QAL_SRC)/linux/src/qal_bond.o
  72. ifeq ($(DBDC_REPEATER_SUPPORT),1)
  73. qal-objs += $(HOST_QAL_SRC)/linux/src/qal_bridge.o
  74. endif
  75. #linux/src/qdf_net.o \
  76. #linux/src/qdf_net_event.o \
  77. #linux/src/qdf_net_ioctl.o
  78. #linux/src/qdf_net_wext.o
  79. ifeq ($(IPA_OFFLOAD), 1)
  80. qdf-objs += linux/src/qdf_ipa.o
  81. endif
  82. ifeq ($(MEMORY_DEBUG),1)
  83. qdf-objs += src/qdf_debug_domain.o \
  84. src/qdf_tracker.o
  85. endif
  86. ifeq ($(LOGGING_UTILS_SUPPORT),1)
  87. qdf-objs += \
  88. $(HOST_CMN_CONVG_LOGGING)/src/wlan_logging_sock_svc.o
  89. endif
  90. ifeq ($(WLAN_TRACEPOINTS),1)
  91. qdf-objs += linux/src/qdf_tracepoint.o
  92. endif
  93. ifeq ($(WLAN_DEBUGFS),1)
  94. qdf-objs += linux/src/qdf_debugfs.o
  95. endif
  96. ifeq ($(ENHANCED_OS_ABSTRACTION),1)
  97. qdf-objs += linux/src/qdf_hrtimer.o
  98. qdf-objs += linux/src/qdf_time.o
  99. endif
  100. ifeq ($(WLAN_STREAMFS),1)
  101. qdf-objs += linux/src/qdf_streamfs.o
  102. endif
  103. qdf-objs += $(qal-objs)
  104. ifeq ($(BUILD_ADF_NET_IOCTL),1)
  105. EXTRA_CFLAGS+= -DADF_NET_IOCTL_SUPPORT
  106. #adf-objs += os/linux/adf_os_netlink_pvt.o \
  107. # net/linux/adf_net_event.o \
  108. # net/linux/adf_net_wext.o \
  109. # net/linux/adf_net_ioctl.o
  110. endif
  111. ifeq ($(BUILD_ADF_DEFER_PVT),1)
  112. #adf-objs += os/linux/adf_os_defer_pvt.o
  113. endif
  114. ifeq ($(BUILD_ADF_IRQ_PVT),1)
  115. #adf-objs += os/linux/adf_os_irq_pvt.o
  116. endif
  117. ifeq ($(BUILD_ADF_PERF_PROFILING),1)
  118. #adf-objs += os/linux/adf_os_perf_pvt.o
  119. ifeq ($(BUILD_ADF_MIPS_PERF_PROFILING),1)
  120. #adf-objs += os/linux/adf_os_mips_perf_pvt.o
  121. endif
  122. endif
  123. # os/linux/adf_os_pci_pvt.o \
  124. # net/linux/adf_net_ioctl.o \
  125. # net/linux/adf_net_pseudo.o \
  126. clean-files := modules.order
  127. ifeq ($(strip ${QCA_PARTNER_MAKE_F_SUPPORT}),1)
  128. all: qdf.ko
  129. qdf.mod.o: qdf.mod.c
  130. ${CC} -c -o $@ ${EXTRA_CFLAGS} ${MOD_CFLAGS} $<
  131. adf.o: ${adf-objs}
  132. $(LD) -m elf32btsmip -r -o adf.o $(adf-objs)
  133. $(KERNELPATH)/scripts/mod/modpost qdf.o
  134. qdf.ko: qdf.o qdf.mod.o
  135. $(LD) $(LDOPTS) -o qdf.ko qdf.o qdf.mod.o
  136. %.o: %.c
  137. ${CC} -c -o $@ ${EXTRA_CFLAGS} $<
  138. endif