1# Copyright (C) 2021 HiSilicon (Shanghai) Technologies CO., LIMITED. 2# 3# This program is free software; you can redistribute it and/or 4# modify it under the terms of the GNU General Public License 5# as published by the Free Software Foundation; either version 2 6# of the License, or (at your option) any later version. 7# 8# This program is distributed in the hope that it will be useful, 9# but WITHOUT ANY WARRANTY; without even the implied warranty of 10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11# GNU General Public License for more details. 12# 13# You should have received a copy of the GNU General Public License 14# along with this program; if not, write to the Free Software 15# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 16 17ifeq ($(PARAM_FILE), ) 18 PARAM_FILE:=../../../mpp/Makefile.param 19 include $(PARAM_FILE) 20endif 21 22TARGET := hi_mipi_rx 23#************************************************************************* 24# all source file in this module 25SRCS := mipi_rx.c \ 26 mipi_rx_hal.c \ 27 ../init/$(OSTYPE)/mipi_rx_init.c 28#************************************************************************* 29EXTRA_CFLAGS += $(DRV_CFLAGS) 30EXTRA_CFLAGS += -I./ 31EXTRA_CFLAGS += -I$(REL_INC) 32EXTRA_CFLAGS += -I$(OSAL_ROOT)/include 33EXTRA_CFLAGS += -D$(HI_FPGA) 34EXTRA_CFLAGS += -I$(CBB_ROOT)/include 35ifeq ($(OSTYPE), liteos) 36EXTRA_CFLAGS += $(CFLAGS) 37endif 38 39.PHONY: all clean 40all: $(OSTYPE)_build 41clean: $(OSTYPE)_clean 42 43############################################# 44$(TARGET)-objs = $(SRCS:%.c=%.o) 45ifneq ($(KERNELRELEASE),) 46 obj-m += $(TARGET).o 47endif 48 49linux_build: 50 @echo -e "\e[0;32;1m--Compiling '$(TARGET)'... Configs as follow:\e[0;36;1m" 51 @echo ---- CROSS=$(CROSS) 52 @echo ---- HIARCH=$(HIARCH), HICHIP=$(HICHIP), CVER=$(CVER), DBG=$(HIDBG), HI_FPGA=$(HI_FPGA) 53 @echo ---- CPU_TYPE=$(CPU_TYPE) 54 @echo ---- MPP_CFLAGS=$(MPP_CFLAGS) 55 @echo "EXTRA_CFLAGS=$(EXTRA_CFLAGS)" 56 @echo ---- SDK_PATH=$(SDK_PATH) , PARAM_FILE=$(PARAM_FILE) 57 @echo ---- KERNEL_ROOT=$(KERNEL_ROOT) 58 @echo ---- ARCH_ROOT=$(ARCH_ROOT), ARCH_HAL=$(ARCH_HAL) 59 @@echo -e "\e[0m" 60 @mkdir -p $(REL_INC) && cp -f hi_mipi.h $(REL_INC)/ 61 @$(MAKE) -C $(KERNEL_ROOT) M=$(PWD) $(COMPILER_TRIPLE) modules 62 @mkdir -p $(REL_KO) && cp $(TARGET).ko $(REL_KO) 63 64linux_clean: 65 @rm -f *.o *.ko *.mod.c .*.cmd *.mod 66 @rm -f *.symvers *.order 67 @rm -rf .*.ko.cmd .*.o.cmd .tmp_versions 68 @rm -f $(REL_KO)/$(TARGET).ko 69 @rm -f $(REL_INC)/hi_mipi.h 70 @rm -f *mipi_init.o.cmd 71 @rm -f ../init/linux/mipi_rx_init.o 72 73############################################# 74OBJS = $(SRCS:%.c=%.o) 75LIB := lib$(TARGET).a 76 77liteos_build: $(OBJS) $(LIB) 78 @echo -e "\e[0;32;1m--Compiling '$(TARGET)'...\e[0;36;1m" 79 @echo ---- CROSS=$(CROSS) 80 @echo ---- HIARCH=$(HIARCH), HICHIP=$(HICHIP), CVER=$(CVER), DBG=$(HIDBG), HI_FPGA=$(HI_FPGA) 81 @echo ---- CPU_TYPE=$(CPU_TYPE) 82 @echo ---- MPP_CFLAGS=$(MPP_CFLAGS) 83 @echo ---- SDK_PATH=$(SDK_PATH) , PARAM_FILE=$(PARAM_FILE) 84 @@echo -e "\e[0m" 85 @mkdir -p $(REL_KO) && cp -rf $(LIB) $(REL_KO)/ 86 @mkdir -p $(REL_INC) && cp -f hi_mipi.h $(REL_INC)/ 87 88liteos_clean: 89 @rm -f $(OBJS) $(LIB) 90 @rm -f $(REL_KO)/$(LIB) 91 92$(OBJS): %.o : %.c 93 @$(CC) $(EXTRA_CFLAGS) -c $< -o $@ 94 95$(LIB): $(OBJS) 96 @$(AR) $(ARFLAGS) $@ $(OBJS) 97#============================================ 98