include $(TOPDIR)/config.mk

OTTO_PLAT_DIR    := $(TOPDIR)/../src/platform/APro_MP/
OTTO_OSC_H       := $(TOPDIR)/include/asm/arch/osc.h
OTTO_MISC_SET_H  := $(TOPDIR)/include/asm/arch/misc_setting.h
OTTO_CG_FREQ_H   := $(TOPDIR)/arch/otto/include/asm/otto_cg_dev_freq.h
OTTO_CPU_H       := $(TOPDIR)/arch/otto/include/asm/arch/cpu.h

LIB	= $(obj)lib$(BOARD).o
COBJS := $(BOARD).o board_cmd.o bus_traffic_generator.o
SOBJS :=

ifdef CONFIG_CMD_DRAM_TEST
COBJS += memctl_dram.o
endif

ifdef CONFIG_CMD_FLASH_TEST
COBJS += memctl_flash.o
CFLAGS += '-DFLASHBASE=0x94000000'
endif

#COBJS-$(CONFIG_CMD_SNAF_TEST) += mem_snaf_test.o
ifdef CONFIG_CMD_SNAF_TEST
COBJS += mem_snaf_test.o
endif

ifdef CONFIG_CMD_ONFI_TEST
COBJS += mem_onfi_test.o
endif

ifdef CONFIG_MP_UTILS
COBJS += mpcntl_proj_env.o
SOBJS += slave_5281.o
endif

.PHONY : $(subdir) board_sync

SRCS	:= $(SOBJS:.o=.S) $(COBJS:.o=.c)
OBJS	:= $(addprefix $(obj),$(LIBOBJS) $(COBJS))
SOBJS	:= $(addprefix $(obj),$(SOBJS))

all:	$(subdir) $(LIB)

$(LIB):	$(OBJS) $(SOBJS)
	$(call cmd_link_o_target, $(OBJS) $(SOBJS))

$(subdir):
	$(MAKE) -C $@ all

header_sync:
	@$(call get_otto_file, $(OTTO_OSC_H), $(OTTO_PLAT_DIR)/misc/osc.h)
	@$(call get_otto_file, $(OTTO_MISC_SET_H), $(OTTO_PLAT_DIR)/misc/misc_setting.h)
	@$(call get_otto_file, $(OTTO_CG_FREQ_H), $(OTTO_PLAT_DIR)/cg/cg_dev_freq.h)
	@$(call get_otto_file, $(OTTO_CPU_H), $(OTTO_RELEASE_DIR)/../src/soc/cpu/mipsIA/cpu.h)


#########################################################################

# defines $(obj).depend target
include $(SRCTREE)/rules.mk

sinclude $(obj).depend

#########################################################################
