diff options
Diffstat (limited to 'drivers/mxc/gpu-viv/Kbuild')
-rw-r--r-- | drivers/mxc/gpu-viv/Kbuild | 215 |
1 files changed, 215 insertions, 0 deletions
diff --git a/drivers/mxc/gpu-viv/Kbuild b/drivers/mxc/gpu-viv/Kbuild new file mode 100644 index 000000000000..13fd9b4e408c --- /dev/null +++ b/drivers/mxc/gpu-viv/Kbuild @@ -0,0 +1,215 @@ +############################################################################## +# +# Copyright (C) 2005 - 2011 by Vivante Corp. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the license, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# +############################################################################## + + +# +# Linux build file for kernel HAL driver. +# + +AQROOT := $(srctree)/drivers/mxc/gpu-viv +AQARCH := $(AQROOT)/arch/XAQ2 +AQVGARCH := $(AQROOT)/arch/GC350 + +include $(AQROOT)/config + +KERNEL_DIR ?= $(TOOL_DIR)/kernel + +OS_KERNEL_DIR := hal/os/linux/kernel +ARCH_KERNEL_DIR := arch/$(notdir $(AQARCH))/hal/kernel +ARCH_VG_KERNEL_DIR := arch/$(notdir $(AQVGARCH))/hal/kernel +HAL_KERNEL_DIR := hal/kernel + +EXTRA_CFLAGS += -Werror + +OBJS := $(OS_KERNEL_DIR)/gc_hal_kernel_device.o \ + $(OS_KERNEL_DIR)/gc_hal_kernel_driver.o \ + $(OS_KERNEL_DIR)/gc_hal_kernel_linux.o \ + $(OS_KERNEL_DIR)/gc_hal_kernel_math.o \ + $(OS_KERNEL_DIR)/gc_hal_kernel_os.o + +ifeq ($(USE_3D_VG), 1) + +OBJS += $(HAL_KERNEL_DIR)/gc_hal_kernel.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_command.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_db.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_debug.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_event.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_heap.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_mmu.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_video_memory.o + +OBJS += $(ARCH_KERNEL_DIR)/gc_hal_kernel_context.o \ + $(ARCH_KERNEL_DIR)/gc_hal_kernel_hardware.o + +ifeq ($(VIVANTE_ENABLE_VG), 1) +OBJS +=\ + $(HAL_KERNEL_DIR)/gc_hal_kernel_vg.o\ + $(HAL_KERNEL_DIR)/gc_hal_kernel_command_vg.o\ + $(HAL_KERNEL_DIR)/gc_hal_kernel_interrupt_vg.o\ + $(HAL_KERNEL_DIR)/gc_hal_kernel_mmu_vg.o\ + $(ARCH_VG_KERNEL_DIR)/gc_hal_kernel_hardware_command_vg.o\ + $(ARCH_VG_KERNEL_DIR)/gc_hal_kernel_hardware_vg.o +endif +else + +OBJS += $(HAL_KERNEL_DIR)/gc_hal_kernel.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_command.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_heap.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_interrupt.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_mmu.o \ + $(HAL_KERNEL_DIR)/gc_hal_kernel_video_memory.o \ + $(OS_KERNEL_DIR)/gc_hal_kernel_debug.o + +OBJS += $(ARCH_KERNEL_DIR)/gc_hal_kernel_hardware.o \ + $(ARCH_KERNEL_DIR)/gc_hal_kernel_hardware_command.o + +endif + +ifeq ($(KERNELRELEASE), ) + +.PHONY: all clean install + +# Define targets. +all: + @make V=$(V) ARCH=$(ARCH_TYPE) -C $(KERNEL_DIR) SUBDIRS=`pwd` modules + +clean: + @rm -rf $(OBJS) + @rm -rf modules.order Module.symvers + @find $(AQROOT) -name ".gc_*.cmd" | xargs rm -f + +install: all + @mkdir -p $(SDK_DIR)/drivers + +else + + +EXTRA_CFLAGS += -DLINUX -DDRIVER + +ifeq ($(ENUM_WORKAROUND), 1) +EXTRA_CFLAGS += -DENUM_WORKAROUND=1 +else +EXTRA_CFLAGS += -DENUM_WORKAROUND=0 +endif + +ifeq ($(FLAREON),1) +EXTRA_CFLAGS += -DFLAREON +endif + +ifeq ($(DEBUG), 1) +EXTRA_CFLAGS += -DDBG=1 -DDEBUG -D_DEBUG +else +EXTRA_CFLAGS += -DDBG=0 +endif + +ifeq ($(NO_DMA_COHERENT), 1) +EXTRA_CFLAGS += -DNO_DMA_COHERENT +endif + +ifeq ($(CONFIG_DOVE_GPU), 1) +EXTRA_CFLAGS += -DCONFIG_DOVE_GPU=1 +endif + +ifeq ($(USE_POWER_MANAGEMENT), 1) +EXTRA_CFLAGS += -DgcdPOWER_MANAGEMENT=1 +else +EXTRA_CFLAGS += -DgcdPOWER_MANAGEMENT=0 +endif + +ifneq ($(USE_PLATFORM_DRIVER), 0) +EXTRA_CFLAGS += -DUSE_PLATFORM_DRIVER=1 +else +EXTRA_CFLAGS += -DUSE_PLATFORM_DRIVER=0 +endif + +ifeq ($(USE_PROFILER), 1) +EXTRA_CFLAGS += -DVIVANTE_PROFILER=1 +else +EXTRA_CFLAGS += -DVIVANTE_PROFILER=0 +endif + +ifeq ($(ANDROID), 1) +EXTRA_CFLAGS += -DANDROID=1 +endif + +ifeq ($(ENABLE_GPU_CLOCK_BY_DRIVER), 1) +EXTRA_CFLAGS += -DENABLE_GPU_CLOCK_BY_DRIVER=1 +else +EXTRA_CFLAGS += -DENABLE_GPU_CLOCK_BY_DRIVER=0 +endif + +ifeq ($(USE_NEW_LINUX_SIGNAL), 1) +EXTRA_CFLAGS += -DUSE_NEW_LINUX_SIGNAL=1 +else +EXTRA_CFLAGS += -DUSE_NEW_LINUX_SIGNAL=0 +endif + +ifeq ($(NO_USER_DIRECT_ACCESS_FROM_KERNEL), 1) +EXTRA_CFLAGS += -DNO_USER_DIRECT_ACCESS_FROM_KERNEL=1 +else +EXTRA_CFLAGS += -DNO_USER_DIRECT_ACCESS_FROM_KERNEL=0 +endif + +ifeq ($(ENABLE_CACHED_VIDEO_MEMORY), 1) +EXTRA_CFLAGS += -DgcdPAGED_MEMORY_CACHEABLE=1 +else +EXTRA_CFLAGS += -DgcdPAGED_MEMORY_CACHEABLE=0 +endif + +ifeq ($(NONPAGED_MEMORY_CACHEABLE), 1) +EXTRA_CFLAGS += -DgcdNONPAGED_MEMORY_CACHEABLE=1 +else +EXTRA_CFLAGS += -DgcdNONPAGED_MEMORY_CACHEABLE=0 +endif + +ifeq ($(NONPAGED_MEMORY_BUFFERABLE), 1) +EXTRA_CFLAGS += -DgcdNONPAGED_MEMORY_BUFFERABLE=1 +else +EXTRA_CFLAGS += -DgcdNONPAGED_MEMORY_BUFFERABLE=0 +endif + +ifeq ($(CACHE_FUNCTION_UNIMPLEMENTED), 1) +EXTRA_CFLAGS += -DgcdCACHE_FUNCTION_UNIMPLEMENTED=1 +else +EXTRA_CFLAGS += -DgcdCACHE_FUNCTION_UNIMPLEMENTED=0 +endif + +ifeq ($(VIVANTE_ENABLE_VG), 1) +EXTRA_CFLAGS += -DgcdENABLE_VG=1 +else +EXTRA_CFLAGS += -DgcdENABLE_VG=0 +endif + + + +EXTRA_CFLAGS += -I$(AQROOT)/hal/kernel/inc +EXTRA_CFLAGS += -I$(AQROOT)/hal/kernel +EXTRA_CFLAGS += -I$(AQARCH)/hal/kernel +EXTRA_CFLAGS += -I$(AQROOT)/hal/os/linux/kernel + +ifeq ($(VIVANTE_ENABLE_VG), 1) +EXTRA_CFLAGS += -I$(AQVGARCH)/hal/kernel +endif + +obj-$(CONFIG_MXC_GPU_VIV) += galcore.o + +galcore-objs := $(OBJS) + +endif |