#***********************************************************************
# Ȩ (C)2001,ͨѶɷ޹˾
# 
# ļƣ makefile
# ļʶ dal lib
# ժҪ 
#
# ޸     汾     ޸ı     ޸	     ޸      
# ---------------------------------------------------------------------
# 2008/11/17	V1.0	               huji       create
#***********************************************************************/

include $(PRJ_PATH)/config/project.mk
include $(DRV_PATH)/ws/drv_cfg.mk


#===============================================
#
#===============================================
_SUBSYS_NAME = chip

_SUBSYS_LIB_PATH = $(DRV_LIB_PATH)

export CHIP_SRC_PATH = $(CHIP_PATH)/src
export CHIP_INC_PATH = $(CHIP_PATH)/inc -I$(DRV_INC_PATH) 
export CHIP_OBJ_PATH = $(DRV_OBJ_PATH)

#===============================================
# bsp
#===============================================
ifeq ($(USE_BSP),yes)
bsp:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/bsp/$(CHIP_BSP) 
bspclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/bsp/$(CHIP_BSP) clean
ifeq ($(USE_BSP_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += bsp
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/bsp/*.o)
endif
else
_ALL_MDLS += bsp
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/bsp/*.o)
endif
endif

#===============================================
# int
#===============================================
ifeq ($(USE_INT),yes)
int:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/int/$(CHIP_INT) 
intclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/int/$(CHIP_INT) clean
ifeq ($(USE_INT_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += int
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/int/*.o)
endif
else
_ALL_MDLS += int
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/int/*.o)
endif 
endif

#===============================================
# timer
#===============================================
ifeq ($(USE_TIMER),yes)
timer:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/timer/$(CHIP_TIMER) 
timerclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/timer/$(CHIP_TIMER) clean
ifeq ($(USE_TIMER_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += timer
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/timer/*.o)
endif
else
_ALL_MDLS += timer
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/timer/*.o)
endif 
endif

#===============================================
# sys
#===============================================
ifeq ($(USE_SYS),yes)
sys:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/sys/$(CHIP_SYS) 
sysclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/sys/$(CHIP_SYS) clean
	
ifeq ($(USE_SYS_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += sys
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/sys/*.o)
endif
else
_ALL_MDLS += sys
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/sys/*.o) 
endif
endif

#===============================================
# icp
#===============================================
ifeq ($(USE_ICP),yes)
icp:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/icp/$(CHIP_ICP)  
icpclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/icp/$(CHIP_ICP) clean

ifeq ($(USE_ICP_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += icp
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/icp/*.o)
endif
else
_ALL_MDLS += icp
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/icp/*.o)
endif
endif

#===============================================
# lpm
#===============================================
ifeq ($(USE_LPM),yes)
lpm:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/lpm/$(CHIP_LPM)  
lpmclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/lpm/$(CHIP_LPM) clean

ifeq ($(USE_LPM_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)	
_ALL_MDLS_SDK += lpm
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/lpm/*.o)
endif
else
_ALL_MDLS += lpm
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/lpm/*.o)
endif
endif

#===============================================
# gpio
#===============================================
ifeq ($(USE_GPIO),yes)
gpio:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/gpio/$(CHIP_GPIO) 
gpioclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/gpio/$(CHIP_GPIO) clean
	
ifeq ($(USE_GPIO_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += gpio
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/gpio/*.o)
endif
else
_ALL_MDLS += gpio
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/gpio/*.o)
endif
endif

#===============================================
# spi
#===============================================

ifeq ($(USE_SPI),yes)
spi:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/spi/$(CHIP_SPI) 
spiclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/spi/$(CHIP_SPI) clean
	
ifeq ($(USE_SPI_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += spi
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/spi/*.o)
endif
else
_ALL_MDLS += spi
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/spi/*.o)
endif
endif

#===============================================
# spicc
#===============================================

ifeq ($(USE_SPICC),yes)
spicc:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/spicc/$(CHIP_SPICC) 
spiccclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/spicc/$(CHIP_SPICC) clean
	
ifeq ($(USE_SPICC_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += spicc
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/spicc/*.o)
endif
else
_ALL_MDLS += spicc
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/spicc/*.o)
endif
endif

#===============================================
# vou
#===============================================

ifeq ($(USE_VOU),yes)
vou:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/vou/$(CHIP_VOU) 
vouclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/vou/$(CHIP_VOU) clean 
	
ifeq ($(USE_VOU_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += vou	
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/vou/*.o)
endif
else
_ALL_MDLS += vou
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/vou/*.o)
endif
endif

#===============================================
# camera
#===============================================

ifeq ($(USE_CAMERA),yes)
camera:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/camera
cameraclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/camera clean
	
ifeq ($(USE_CAMERA_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += camera	
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/camera/*.o)
endif
else
_ALL_MDLS += camera
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/camera/*.o)
endif
endif
#===============================================
# mmc
#===============================================
ifeq ($(USE_MMC_HOST),yes)
mmcHost:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/mmc/$(CHIP_MMC_HOST)/ws 
mmcHostclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/mmc/$(CHIP_MMC_HOST)/ws clean
	
ifeq ($(USE_MMC_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += mmcHost
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/mmc/*.o)
endif
else
_ALL_MDLS += mmcHost
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/mmc/*.o)
endif
endif

ifeq ($(USE_MMC_SLAVE),yes)
mmcSlave:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/mmc/$(CHIP_MMC_SLAVE)/ws 
mmcSlaveclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/mmc/$(CHIP_MMC_SLAVE)/ws clean
	
ifeq ($(USE_MMC_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += mmcSlave
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/mmc/*.o)
endif
else
_ALL_MDLS += mmcSlave
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/mmc/*.o)
endif
endif

#===============================================
# uart
#===============================================
ifeq ($(USE_UART),yes)
uart:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/uart/$(CHIP_UART) 
uartclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/uart/$(CHIP_UART) clean
	
ifeq ($(USE_UART_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += uart
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/uart/*.o)
endif
else
_ALL_MDLS += uart
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/uart/*.o)
endif

endif

#===============================================
# rtc
#===============================================

ifeq ($(USE_RTC),yes)
rtc:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/rtc/$(CHIP_RTC) 
rtcclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/rtc/$(CHIP_RTC) clean
	
ifeq ($(USE_RTC_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += rtc
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/rtc/*.o)
endif
else
_ALL_MDLS += rtc
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/rtc/*.o)
endif
endif


#===============================================
# dma
#===============================================

ifeq ($(USE_DMA),yes)
dma:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/dma/$(CHIP_DMA) 
dmaclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/dma/$(CHIP_DMA) clean
	
ifeq ($(USE_DMA_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += dma
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/dma/*.o)
endif
else
_ALL_MDLS += dma
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/dma/*.o)
endif
endif

#===============================================
# edcp
#===============================================

ifeq ($(USE_EDCP),yes)
edcp:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/edcp/$(CHIP_EDCP) 
edcpclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/edcp/$(CHIP_EDCP) clean
	
ifeq ($(USE_EDCP_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)	
_ALL_MDLS_SDK += edcp
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/edcp/*.o)
endif
else
_ALL_MDLS += edcp
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/edcp/*.o)
endif
endif

#===============================================
# uicc
#===============================================

ifeq ($(USE_UICC),yes)
uicc:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/uicc/$(CHIP_UICC) 
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/uicc/DD
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/uicc/agent
uiccclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/uicc/$(CHIP_UICC) clean
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/uicc/DD clean
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/uicc/agent clean
	
ifeq ($(USE_UICC_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += uicc
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/uicc/*.o)
endif
else
_ALL_MDLS += uicc
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/uicc/*.o)
endif
endif

#===============================================
# dpram
#===============================================

ifeq ($(USE_DPRAM),yes)
dpram:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/dpram/$(CHIP_DPRAM) 
dpramclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/dpram/$(CHIP_DPRAM) clean

ifeq ($(USE_DPRAM_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += dpram
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/dpram/*.o)
endif
else
_ALL_MDLS += dpram
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/dpram/*.o)
endif
endif


#===============================================
# pow
#===============================================

ifeq ($(USE_POW),yes)
pow:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/pow/$(CHIP_POW)/Ws
powclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/pow/$(CHIP_POW)/Ws clean

ifeq ($(USE_POW_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)	
_ALL_MDLS_SDK += pow
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/pow/*.o)
endif
else
_ALL_MDLS += pow
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/pow/*.o)
endif
endif

#===============================================
# cipher
#===============================================

ifeq ($(USE_CIPHER),yes)
cipher:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/cipher/$(CHIP_CIPHER) 
cipherclean:

	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/cipher/$(CHIP_CIPHER) clean
	
ifeq ($(USE_CIPHER_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)
_ALL_MDLS_SDK += cipher
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/cipher/*.o)
endif
else
_ALL_MDLS += cipher
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/cipher/*.o)
endif
endif



#===============================================
# dsp
#===============================================

#ifeq ($(USE_DSP),yes)
#dsp:
#	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/dsp/$(CHIP_DSP) 
#dspclean:
#	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/dsp/$(CHIP_DSP) clean
#	
#_ALL_MDLS += dsp
#_ALL_OBJECTS += $(wildcard $(OBJ_PATH)/drv/hal/dsp/*.o)

#endif


#===============================================
# i2c
#===============================================

ifeq ($(USE_I2C),yes)
i2c:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/i2c/$(CHIP_I2C) 
i2cclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/i2c/$(CHIP_I2C) clean
	
ifeq ($(USE_I2C_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += i2c
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/i2c/*.o)
endif
else
_ALL_MDLS += i2c
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/i2c/*.o)
endif
endif

#===============================================
# efuse
#===============================================

ifeq ($(USE_EFUSE),yes)
efuse:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/efuse/$(CHIP_EFUSE) 
efuseclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/efuse/$(CHIP_EFUSE) clean
	
ifeq ($(USE_EFUSE_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += efuse
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/efuse/*.o)
endif
else
_ALL_MDLS += efuse
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/efuse/*.o)
endif
endif

#===============================================
# watchdog
#===============================================
ifeq ($(USE_WDT),yes)
wdt:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/wdt/$(CHIP_WDT)
wdtclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/wdt/$(CHIP_WDT)  clean
	
ifeq ($(USE_WDT_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += wdt
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/wdt/*.o)
endif
else
_ALL_MDLS += wdt
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/wdt/*.o)
endif
endif

#===============================================
# common
#===============================================
ifeq ($(USE_COMM),yes)
comm:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/comm
commclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/comm  clean
	
ifeq ($(USE_COMM_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += comm
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/comm/*.o)
endif
else
_ALL_MDLS += comm
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/comm/*.o)
endif
endif


#===============================================
# disk
#===============================================
ifeq ($(USE_DISK),yes)
disk:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/disk
diskclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/disk clean

ifeq ($(USE_DISK_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += disk
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/disk/*.o)
endif
else
_ALL_MDLS += disk
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/disk/*.o)
endif
endif


#===============================================
# ddrnet
#===============================================
ifeq ($(USE_DDRNET),yes)
ddrnet:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/ddrnet
ddrnetclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/ddrnet clean
	
ifeq ($(USE_DDRNET_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += ddrnet
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/ddrnet/*.o)
endif
else
_ALL_MDLS += ddrnet
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/ddrnet/*.o)
endif
endif
#===============================================
# pmic
#===============================================

ifeq ($(USE_PMIC),yes)
pmic:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/pmic/$(CHIP_PMIC)
#	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/pmic/$(CHIP_PM)
pmicclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/pmic/$(CHIP_PMIC) clean
#	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/pmic/$(CHIP_PM)  clean

ifeq ($(USE_PMIC_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += pmic
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/pmic/*.o)
endif
else
_ALL_MDLS += pmic
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/pmic/*.o)
endif
endif


ifeq ($(USE_USBHOST),yes)
usbhost:
	@$(ECHO) "---Usb Host Drv"
#	@$(GNUMAKE) --no-print-directory -C $(CHIP_SRC_PATH)/usb/host/core
#	@$(GNUMAKE) --no-print-directory -C $(CHIP_SRC_PATH)/usb/host/serial
#	@$(GNUMAKE) --no-print-directory -C $(CHIP_SRC_PATH)/usb/host/hal/$(CHIP_USBHOST)
	@$(GNUMAKE) --no-print-directory -C $(CHIP_SRC_PATH)/usb/host/ws
usbhostclean:
#	@$(GNUMAKE) --no-print-directory -C $(CHIP_SRC_PATH)/usb/host/core clean
#	@$(GNUMAKE) --no-print-directory -C $(CHIP_SRC_PATH)/usb/host/serial clean
#	@$(GNUMAKE) --no-print-directory -C $(CHIP_SRC_PATH)/usb/host/hal/$(CHIP_USBHOST) clean
	@$(GNUMAKE) --no-print-directory -C $(CHIP_SRC_PATH)/usb/host/ws clean
	
ifeq ($(USE_USBHOST_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += usbhost
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/usbhost/*.o)
endif
else
_ALL_MDLS += usbhost
#_ALL_OBJECTS += $(wildcard $(OBJ_PATH)/drv/hal/usb/host/core/*.o)
#_ALL_OBJECTS += $(wildcard $(OBJ_PATH)/drv/hal/usb/host/serial/*.o)
#_ALL_OBJECTS += $(wildcard $(OBJ_PATH)/drv/hal/usb/host/hal/$(CHIP_USBHOST)/*.o)
_ALL_OBJECTS += $(wildcard $(OBJ_PATH)/drv/hal/usb/host/*.o)
endif
endif

#===============================================
# tsc
#===============================================

ifeq ($(USE_TSC),yes)
tsc:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/tsc/$(CHIP_TSC)
#	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/pmic/$(CHIP_PM)
tscclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/tsc/$(CHIP_TSC) clean
#	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/pmic/$(CHIP_PM)  clean

ifeq ($(USE_TSC_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += tsc
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/tsc/*.o)
endif
else
_ALL_MDLS += tsc
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/tsc/*.o)
endif
endif

#===============================================
# aud base
#===============================================
ifeq ($(USE_AUDIO_BASE),yes)
audio_base:
	#$(ECHO) audio_base $(USE_AUDIO_BASE) 
	#$(ECHO) use_amt $(USE_AMT)
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/audio_base/ws lib
audio_baseclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/audio_base/ws clean 
	
ifeq ($(USE_AUDIO_BASE_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += audio_base
endif
else
_ALL_MDLS += audio_base
endif
endif

#===============================================
# charger
#===============================================

ifeq ($(USE_CHG),yes)
charger:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/charger/$(CHIP_CHG)
chargerclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/charger/$(CHIP_CHG) clean

ifeq ($(USE_CHG_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += charger
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/charger/*.o)
endif
else
_ALL_MDLS += charger
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/charger/*.o)
endif
endif

#===============================================
# LCD
#===============================================

ifeq ($(USE_LCD),yes)
lcd:
	$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/lcd/$(CHIP_LCD)
lcdclean:
	$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/lcd/$(CHIP_LCD) clean

ifeq ($(USE_LCD_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += lcd
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/lcd/*.o)
endif
else
_ALL_MDLS += lcd
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/lcd/*.o)
endif
endif

#===============================================
# LED
#===============================================

ifeq ($(USE_LED),yes)
led:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/led/$(CHIP_LED)
ledclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/led/$(CHIP_LED) clean

ifeq ($(USE_LED_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += led
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/led/*.o)
endif
else
_ALL_MDLS += led
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/led/*.o)
endif
endif

#===============================================
# KPD
#===============================================

ifeq ($(USE_KPD),yes)
kpd:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/kpd/$(CHIP_KPD)
kpdclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/kpd/$(CHIP_KPD) clean

ifeq ($(USE_KPD_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += kpd
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/kpd/*.o)
endif
else
_ALL_MDLS += kpd
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/kpd/*.o)
endif
endif

#===============================================
# FM
#===============================================

ifeq ($(USE_FM),yes)
fm:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/fm/$(CHIP_FM)
fmclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/fm/$(CHIP_FM) clean

ifeq ($(USE_FM_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += fm
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/fm/*.o)
endif
else
_ALL_MDLS += fm
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/fm/*.o)
endif
endif

#===============================================
# Flashlight
#===============================================

ifeq ($(USE_FLASHLIGHT),yes)
flashlight:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/flashlight/$(CHIP_FLASHLIGHT)
flashlightclean:
	@$(GNUMAKE) --no-print-directory $(MAKEOPTS) -C $(CHIP_SRC_PATH)/flashlight/$(CHIP_FLASHLIGHT) clean

ifeq ($(USE_FLASHLIGHT_SDK),yes)
ifeq ($(USE_SDK_COMPILE),yes)		
_ALL_MDLS_SDK += flashlight
_ALL_OBJECTS_SDK += $(wildcard $(CHIP_OBJ_PATH)/flashlight/*.o)
endif
else
_ALL_MDLS += flashlight
_ALL_OBJECTS += $(wildcard $(CHIP_OBJ_PATH)/flashlight/*.o)
endif
endif
#============================================
# 
#============================================
include $(FRAME_PATH)/rules/lib_rules.mk

#============================================
# sdk 
#============================================
_SUBSYS_SDK_NAME = drv_sdk
_SUBSYS_SDK_LIB_PATH = $(DRV_LIB_PATH)
include $(DRV_PATH)/ws/drv_sdk_lib_rules.mk
#============================================
# sdk ģ
#============================================
#_SUBSYS_SDK_MODULE_NAME = drv_module_sdk
#include $(DRV_PATH)/ws/drv_sdk_module_lib_rules.mk
