pinebuds/platform/drivers/ana/Makefile

201 lines
3.9 KiB
Makefile

cur_dir := $(dir $(lastword $(MAKEFILE_LIST)))
obj-y := $(patsubst $(cur_dir)%,%,$(wildcard $(cur_dir)*.c $(cur_dir)*.S))
obj-y := $(obj-y:.c=.o)
obj-y := $(obj-y:.S=.o)
obj-y += $(CHIP)/
subdir-ccflags-y += -Iplatform/drivers/ana
# PMU settings
export PMU_CFG_FLAGS :=
# ANALOG settings
export ANA_CFG_FLAGS :=
# USBPHY settings
export USBPHY_CFG_FLAGS :=
export PMU_DCDC_CALIB ?= 1
ifeq ($(PMU_DCDC_CALIB),1)
PMU_CFG_FLAGS += -DPMU_DCDC_CALIB
endif
ifeq ($(PMU_FULL_INIT),1)
PMU_CFG_FLAGS += -DPMU_FULL_INIT
PMU_INIT := 1
endif
ifeq ($(PMU_INIT),1)
PMU_CFG_FLAGS += -DPMU_INIT
endif
ifeq ($(NO_SLEEP),1)
PMU_CFG_FLAGS += -DNO_SLEEP
endif
ifeq ($(MCU_HIGH_PERFORMANCE_MODE),1)
PMU_CFG_FLAGS += -DMCU_HIGH_PERFORMANCE_MODE
endif
ifneq ($(CHIP),best1000)
ifneq ($(PROGRAMMER),1)
VCRYSTAL_OFF ?= 1
endif
endif
ifeq ($(VCRYSTAL_OFF),1)
PMU_CFG_FLAGS += -DVCRYSTAL_OFF
endif
ifeq ($(VMEM_ON),1)
PMU_CFG_FLAGS += -DVMEM_ON
endif
ifeq ($(VUSB_ON),1)
PMU_CFG_FLAGS += -DVUSB_ON
endif
ifeq ($(ULTRA_LOW_POWER),1)
PMU_CFG_FLAGS += -DULTRA_LOW_POWER
endif
ifeq ($(DIGMIC_HIGH_VOLT),1)
PMU_CFG_FLAGS += -DDIGMIC_HIGH_VOLT
endif
ifeq ($(ANA_26M_X4_ENABLE),1)
PMU_CFG_FLAGS += -DANA_26M_X4_ENABLE
endif
ifeq ($(OSC_26M_X4_AUD2BB),1)
PMU_CFG_FLAGS += -DOSC_26M_X4_AUD2BB
endif
ifeq ($(DIG_OSC_X4_ENABLE),1)
PMU_CFG_FLAGS += -DDIG_OSC_X4_ENABLE
endif
ifeq ($(RTC_ENABLE),1)
PMU_CFG_FLAGS += -DRTC_ENABLE
endif
ifeq ($(CLK_32K_FROM_OSC),1)
PMU_CFG_FLAGS += -DCLK_32K_FROM_OSC
endif
ifeq ($(CHIP_HAS_DCO),1)
PMU_CFG_FLAGS += -DCHIP_HAS_DCO
ANA_CFG_FLAGS += -DCHIP_HAS_DCO
endif
ifeq ($(USB_HIGH_SPEED),1)
PMU_CFG_FLAGS += -DUSB_HIGH_SPEED
USBPHY_CFG_FLAGS += -DUSB_HIGH_SPEED
endif
ifeq ($(CHIP_HAS_USBPHY),1)
USBPHY_CFG_FLAGS += -DCHIP_HAS_USBPHY
ifeq ($(CHIP_HAS_SPIPHY),1)
USBPHY_CFG_FLAGS += -DCHIP_HAS_SPIPHY
PMU_CFG_FLAGS += -DCHIP_HAS_SPIPHY
endif
endif
ifeq ($(USB_HS_LOOPBACK_TEST),1)
USBPHY_CFG_FLAGS += -DUSB_HS_LOOPBACK_TEST
endif
export PLL_CFG_FLAGS :=
ifeq ($(CHIP_HAS_SPIPHY),1)
PLL_CFG_FLAGS += -DCHIP_HAS_SPIPHY
endif
ifeq ($(POWER_MODE),LDO)
PMU_CFG_FLAGS += -DLDO_MODE
else
ifeq ($(POWER_MODE),DIG_DCDC)
PMU_CFG_FLAGS += -DDIG_DCDC_MODE
else
ifeq ($(POWER_MODE),ANA_DCDC)
PMU_CFG_FLAGS += -DANA_DCDC_MODE
else
ifneq ($(POWER_MODE),)
$(error Invalid POWER_MODE: $(POWER_MODE))
endif
endif
endif
endif
ifeq ($(MTEST_ENABLED),1)
PMU_CFG_FLAGS +=-DMTEST_ENABLED
ifneq ($(MTEST_CLK_MHZ),)
PMU_CFG_FLAGS +=-DMTEST_CLK_MHZ=$(MTEST_CLK_MHZ)
endif # MTEST_CLK_MHZ
ifneq ($(MTEST_VOLT),)
VCORE_STEM :=$(subst .,_,$(MTEST_VOLT))
ifeq ($(POWER_MODE),LDO)
PMU_CFG_FLAGS += -DMTEST_VOLT=PMU_VDIG_$(VCORE_STEM)
else
PMU_CFG_FLAGS += -DMTEST_VOLT=PMU_DCDC_DIG_$(VCORE_STEM)
endif
endif # MTEST_VOLT
endif # MTEST_ENABLED
ANA_CFG_FLAGS += $(MAX_DAC_OUTPUT_FLAGS)
ifeq ($(AUDIO_INPUT_CAPLESSMODE),1)
ANA_CFG_FLAGS += -D_MIC_CAPLESSMODE_
endif
ifeq ($(AUDIO_INPUT_LARGEGAIN),1)
ANA_CFG_FLAGS += -D_MIC_LARGEGAIN_
endif
ifeq ($(AUDIO_OUTPUT_DIFF),1)
ANA_CFG_FLAGS += -DAUDIO_OUTPUT_DIFF
PMU_CFG_FLAGS += -DAUDIO_OUTPUT_DIFF
endif
ifeq ($(AUDIO_OUTPUT_DC_CALIB),1)
ANA_CFG_FLAGS += -DAUDIO_OUTPUT_DC_CALIB
endif
ifeq ($(AUDIO_OUTPUT_DC_CALIB_ANA),1)
ANA_CFG_FLAGS += -DAUDIO_OUTPUT_DC_CALIB_ANA
endif
ifeq ($(CODEC_HIGH_QUALITY),1)
ANA_CFG_FLAGS += -DCODEC_HIGH_QUALITY
PMU_CFG_FLAGS += -DCODEC_HIGH_QUALITY
endif
ifeq ($(AUDIO_RESAMPLE),1)
ANA_CFG_FLAGS += -D__AUDIO_RESAMPLE__
PMU_CFG_FLAGS += -D__AUDIO_RESAMPLE__
endif
ifeq ($(ANC_APP),1)
ANA_CFG_FLAGS += -DANC_APP
PMU_CFG_FLAGS += -DANC_APP
endif
ifeq ($(ANC_INIT_SPEEDUP),1)
ANA_CFG_FLAGS += -DANC_INIT_SPEEDUP
endif
ifeq ($(ANC_FF_ENABLED),1)
ANA_CFG_FLAGS += -DANC_FF_ENABLED
endif
ifeq ($(ANC_FB_ENABLED),1)
ANA_CFG_FLAGS += -DANC_FB_ENABLED
endif
ifneq ($(ANA_DC_CALIB_L),)
ANA_CFG_FLAGS += -DANA_DC_CALIB_L=$(ANA_DC_CALIB_L)
endif
ifneq ($(ANA_DC_CALIB_R),)
ANA_CFG_FLAGS += -DANA_DC_CALIB_R=$(ANA_DC_CALIB_R)
endif
ifeq ($(DYN_ADC_GAIN),1)
ANA_CFG_FLAGS += -DDYN_ADC_GAIN
endif