LOCAL_PATH := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))

LOCAL_NAME := $(LOCAL_ARCH)_$(LOCAL_UUID)_blowfish_gp_tee
_gpapi_include_dirs := ../../include/gp-mb log_utils $(LOCAL_PATH)/prop/tee
LOCAL_SRC_C := tee/blowfish/tees_log.c tee/blowfish/tees_mem.c log_utils/log_utils.c

#RPMB FLAGS which is were found by empirical way for exynos9820 chip.
#For other chips RPMB API implenentation may be switched on only after investigation.
#Stubs are used by default for other chips.
ifneq (,$(filter $(LOCAL_CHIP),exynos9820 exynos9830))
    LOCAL_SRC_C += tee/blowfish/tees_rpmb.c
else
    LOCAL_SRC_C += tee/stubs/tees_rpmb.c
endif

LOCAL_CFLAGS += -DRPMB_BLOCK_SIZE=256 \
                -DRPMB_MIN_PARTITION_ID=0 \
                -DRPMB_MAX_PARTITION_ID=32

ifneq ($(filter $(LOCAL_CHIP),exynos9830),)
    LOCAL_CFLAGS += -DRPMB_MAX_ADDRESS_NUM=510 \
                    -DRPMB_MAX_BLOCK_NUM=32
endif

ifneq ($(filter $(LOCAL_CHIP),exynos9820),)
    LOCAL_CFLAGS += -DRPMB_MAX_ADDRESS_NUM=509 \
                    -DRPMB_MAX_BLOCK_NUM=32
endif

# gp-api properties
include $(_sdk_dir)/uuid-utils.mk
TA_UUID_STRUCT = $(strip $(call get-local-uuid-as-struct,$(LOCAL_UUID)))
TA_GROUP_ID = $(LOCAL_GROUP_ID)
LOCAL_CFLAGS += -DYOUR_TA_UUID='$(TA_UUID_STRUCT)' -DYOUR_GROUP_ID=\"$(TA_GROUP_ID)\" -DTA_UUID=\"$(LOCAL_UUID)\"

_import_include_dirs := $(LOCAL_INCLUDE_DIRS)
LOCAL_INCLUDE_DIRS := $(_gpapi_include_dirs) $(_import_include_dirs)

include $(BUILD_BLOWFISH_LIBRARY)
