Merge "target: msm8994: read mdtp eFuse in runtime"
diff --git a/project/msm8994.mk b/project/msm8994.mk
index b6a4539..89a9a65 100644
--- a/project/msm8994.mk
+++ b/project/msm8994.mk
@@ -65,8 +65,6 @@
ifeq ($(ENABLE_MDTP_SUPPORT),1)
DEFINES += MDTP_SUPPORT=1
-DEFINES += MDTP_EFUSE_ADDRESS=0xFC4B81F8 # QFPROM_RAW_SPARE_REG19_LSB
-DEFINES += MDTP_EFUSE_START=17
endif
# Turn on Werror
diff --git a/target/msm8994/mdtp_defs.c b/target/msm8994/mdtp_defs.c
new file mode 100644
index 0000000..65fb596
--- /dev/null
+++ b/target/msm8994/mdtp_defs.c
@@ -0,0 +1,84 @@
+/* Copyright (c) 2015, 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_MSM8994 0xFC4BC1F8 // QFPROM_CORR_SPARE_REG19_LSB_ADDR
+#define MDTP_EFUSE_START_MSM8994 16
+
+struct mdtp_ui_defs mdtp_ui_defs_msm8994 = {
+ // Image dimensions
+ 1412, // error_msg_width;
+ 212, // error_msg_height;
+ 1364, // main_text_width;
+ 288, // main_text_height;
+ 180, // pin_digit_width;
+ 180, // pin_digit_height;
+ 644, // ok_button_width;
+ 158, // ok_button_height;
+ 1384, // digits_instructions_width;
+ 166, // digits_instructions_height;
+ 920, // pin_instructions_width;
+ 204, // pin_instructions_height;
+
+ // Image offsets
+ 0x1000, // error_msg_offset;
+ 0xDD000, // initial_delay_offset;
+ 0x1FD000, // enter_pin_offset;
+ 0x31D000, // invalid_pin_offset;
+ 0x43D000, // pin_digit_0_offset;
+ 0x18000, // pin_digits_offset;
+ 0x52D000, // pin_selected_digit_0_offset;
+ 0x61D000, // ok_button_offset;
+ 0x668000, // selected_ok_button_offset;
+ 0x6B3000, // digits_instructions_offset;
+ 0x75C000, // pin_instructions_offset;
+
+ //Display settings
+ 12 // digit_space;
+};
+
+struct mdtp_ui_defs mdtp_get_target_ui_defs()
+{
+ return mdtp_ui_defs_msm8994;
+}
+
+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_MSM8994;
+ target_efuse->start = MDTP_EFUSE_START_MSM8994;
+
+ return 0;
+}
diff --git a/target/msm8994/rules.mk b/target/msm8994/rules.mk
index 16fd384..4ac3ff1 100644
--- a/target/msm8994/rules.mk
+++ b/target/msm8994/rules.mk
@@ -2,6 +2,9 @@
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 := msm8994
@@ -50,3 +53,8 @@
OBJS += \
$(LOCAL_DIR)/regulator.o
endif
+
+ifeq ($(ENABLE_MDTP_SUPPORT),1)
+OBJS += \
+ $(LOCAL_DIR)/mdtp_defs.o
+endif