target: msmtitanium: Add MDTP configuration
Add MDTP eFuse and target specific parameters.
Change-Id: Id3b32cc205478e10cbcfb562d7054449efe881e2
CRs-Fixed: 973951
diff --git a/project/msmtitanium.mk b/project/msmtitanium.mk
index 5574e49..d7767ab 100644
--- a/project/msmtitanium.mk
+++ b/project/msmtitanium.mk
@@ -98,3 +98,7 @@
#Enable the external reboot functions
ENABLE_REBOOT_MODULE := 1
+
+ifeq ($(ENABLE_MDTP_SUPPORT),1)
+DEFINES += MDTP_SUPPORT=1
+endif
diff --git a/target/msmtitanium/mdtp_defs.c b/target/msmtitanium/mdtp_defs.c
new file mode 100644
index 0000000..04af8f1
--- /dev/null
+++ b/target/msmtitanium/mdtp_defs.c
@@ -0,0 +1,84 @@
+/* Copyright (c) 2015-2016, The Linux Foundation. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following
+ * disclaimer in the documentation and/or other materials provided
+ * with the distribution.
+ * * Neither the name of The Linux Foundation, Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
+ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+ * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include "mdtp_defs.h"
+
+#define MDTP_EFUSE_ADDRESS_MSM8953 0x000A4418 // QFPROM_CORR_SPARE_REG18_LSB
+#define MDTP_EFUSE_START_MSM8953 0
+
+struct mdtp_ui_defs mdtp_ui_defs_msm8953 = {
+ // Image dimensions
+ 952, // error_msg_width;
+ 143, // error_msg_height;
+ 920, // main_text_width;
+ 194, // main_text_height;
+ 120, // pin_digit_width;
+ 120, // pin_digit_height;
+ 432, // ok_button_width;
+ 106, // ok_button_height;
+ 932, // digits_instructions_width;
+ 112, // digits_instructions_height;
+ 620, // pin_instructions_width;
+ 137, // pin_instructions_height;
+
+ // Image offsets
+ 0x1000, // error_msg_offset;
+ 0x65000, // initial_delay_offset;
+ 0xE8000, // enter_pin_offset;
+ 0x16B000, // invalid_pin_offset;
+ 0x1EE000, // pin_digit_0_offset;
+ 0xB000, // pin_digits_offset;
+ 0x25C000, // pin_selected_digit_0_offset;
+ 0x2CA000, // ok_button_offset;
+ 0x2EC000, // selected_ok_button_offset;
+ 0x30E000, // digits_instructions_offset;
+ 0x35B000, // pin_instructions_offset;
+
+ //Display settings
+ 8 // digit_space;
+};
+
+struct mdtp_ui_defs mdtp_get_target_ui_defs()
+{
+ return mdtp_ui_defs_msm8953;
+}
+
+int mdtp_get_target_efuse(struct mdtp_target_efuse* target_efuse)
+{
+ if (target_efuse == NULL)
+ {
+ dprintf(CRITICAL, "mdtp: mdtp_get_target_efuse: ERROR, target_efuse is NULL\n");
+ return -1;
+ }
+
+ target_efuse->address = MDTP_EFUSE_ADDRESS_MSM8953;
+ target_efuse->start = MDTP_EFUSE_START_MSM8953;
+
+ return 0;
+}
diff --git a/target/msmtitanium/rules.mk b/target/msmtitanium/rules.mk
index fe575b6..2a9eea6 100644
--- a/target/msmtitanium/rules.mk
+++ b/target/msmtitanium/rules.mk
@@ -1,8 +1,13 @@
LOCAL_DIR := $(GET_LOCAL_DIR)
INCLUDES += -I$(LOCAL_DIR)/include -I$(LK_TOP_DIR)/platform/msm_shared
+
INCLUDES += -I$(LK_TOP_DIR)/dev/gcdb/display -I$(LK_TOP_DIR)/dev/gcdb/display/include
+ifeq ($(ENABLE_MDTP_SUPPORT),1)
+INCLUDES += -I$(LK_TOP_DIR)/app/aboot
+endif
+
PLATFORM := msmtitanium
MEMBASE := 0x8F600000 # SDRAM
@@ -32,7 +37,6 @@
BASE_ADDR=$(BASE_ADDR) \
SCRATCH_ADDR=$(SCRATCH_ADDR)
-
OBJS += \
$(LOCAL_DIR)/init.o \
$(LOCAL_DIR)/meminfo.o \
@@ -42,3 +46,8 @@
OBJS += \
$(LOCAL_DIR)/regulator.o
endif
+
+ifeq ($(ENABLE_MDTP_SUPPORT),1)
+OBJS += \
+ $(LOCAL_DIR)/mdtp_defs.o
+endif