summaryrefslogtreecommitdiff
path: root/drivers/input/touchscreen/msg2233/mstar_drv_ic_fw_porting_layer.h
diff options
context:
space:
mode:
authorYuval Adam <_@yuv.al>2017-08-30 08:25:59 +0000
committerYuval Adam <_@yuv.al>2017-08-30 08:25:59 +0000
commit8e4bff4cab0ddac6060645b0715210484d02ff40 (patch)
tree3a5c3024371a04692a3a6d9974d001cdff8ebf84 /drivers/input/touchscreen/msg2233/mstar_drv_ic_fw_porting_layer.h
Initial file dump from open source releaseHEADmaster
Diffstat (limited to 'drivers/input/touchscreen/msg2233/mstar_drv_ic_fw_porting_layer.h')
-rw-r--r--drivers/input/touchscreen/msg2233/mstar_drv_ic_fw_porting_layer.h119
1 files changed, 119 insertions, 0 deletions
diff --git a/drivers/input/touchscreen/msg2233/mstar_drv_ic_fw_porting_layer.h b/drivers/input/touchscreen/msg2233/mstar_drv_ic_fw_porting_layer.h
new file mode 100644
index 00000000..75508ad1
--- /dev/null
+++ b/drivers/input/touchscreen/msg2233/mstar_drv_ic_fw_porting_layer.h
@@ -0,0 +1,119 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// Copyright (c) 2006-2014 MStar Semiconductor, Inc.
+// All rights reserved.
+//
+// Unless otherwise stipulated in writing, any and all information contained
+// herein regardless in any format shall remain the sole proprietary of
+// MStar Semiconductor Inc. and be kept in strict confidence
+// (??MStar Confidential Information??) by the recipient.
+// Any unauthorized act including without limitation unauthorized disclosure,
+// copying, use, reproduction, sale, distribution, modification, disassembling,
+// reverse engineering and compiling of the contents of MStar Confidential
+// Information is unlawful and strictly prohibited. MStar hereby reserves the
+// rights to any and all damages, losses, costs and expenses resulting therefrom.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+/**
+ *
+ * @file mstar_drv_ic_fw_porting_layer.h
+ *
+ * @brief This file defines the interface of touch screen
+ *
+ *
+ */
+
+#ifndef __MSTAR_DRV_IC_FW_PORTING_LAYER_H__
+#define __MSTAR_DRV_IC_FW_PORTING_LAYER_H__
+
+/*--------------------------------------------------------------------------*/
+/* INCLUDE FILE */
+/*--------------------------------------------------------------------------*/
+
+#include "mstar_drv_common.h"
+#if defined(CONFIG_ENABLE_TOUCH_DRIVER_FOR_MUTUAL_IC)
+#include "mstar_drv_mutual_fw_control.h"
+#ifdef CONFIG_ENABLE_ITO_MP_TEST
+#include "mstar_drv_mutual_mp_test.h"
+#endif //CONFIG_ENABLE_ITO_MP_TEST
+#elif defined(CONFIG_ENABLE_TOUCH_DRIVER_FOR_SELF_IC)
+#include "mstar_drv_self_fw_control.h"
+#ifdef CONFIG_ENABLE_ITO_MP_TEST
+#include "mstar_drv_self_mp_test.h"
+#endif //CONFIG_ENABLE_ITO_MP_TEST
+#endif
+
+/*--------------------------------------------------------------------------*/
+/* PREPROCESSOR CONSTANT DEFINITION */
+/*--------------------------------------------------------------------------*/
+
+
+/*--------------------------------------------------------------------------*/
+/* GLOBAL FUNCTION DECLARATION */
+/*--------------------------------------------------------------------------*/
+
+#ifdef CONFIG_ENABLE_GESTURE_WAKEUP
+extern void DrvIcFwLyrOpenGestureWakeup(u32 *pWakeupMode);
+extern void DrvIcFwLyrCloseGestureWakeup(void);
+
+#ifdef CONFIG_ENABLE_GESTURE_DEBUG_MODE
+extern void DrvIcFwLyrOpenGestureDebugMode(u8 nGestureFlag);
+extern void DrvIcFwLyrCloseGestureDebugMode(void);
+#endif //CONFIG_ENABLE_GESTURE_DEBUG_MODE
+
+#endif //CONFIG_ENABLE_GESTURE_WAKEUP
+
+extern u32 DrvIcFwLyrReadDQMemValue(u16 nAddr);
+extern void DrvIcFwLyrWriteDQMemValue(u16 nAddr, u32 nData);
+
+extern u16 DrvIcFwLyrChangeFirmwareMode(u16 nMode);
+extern void DrvIcFwLyrGetFirmwareInfo(FirmwareInfo_t *pInfo);
+#if defined(CONFIG_ENABLE_TOUCH_DRIVER_FOR_MUTUAL_IC) // use for MSG26XXM only
+extern u16 DrvIcFwLyrGetFirmwareMode(void);
+#endif //CONFIG_ENABLE_TOUCH_DRIVER_FOR_MUTUAL_IC
+extern void DrvIcFwLyrRestoreFirmwareModeToLogDataMode(void);
+
+#ifdef CONFIG_UPDATE_FIRMWARE_BY_SW_ID
+extern void DrvIcFwLyrCheckFirmwareUpdateBySwId(void);
+#endif //CONFIG_UPDATE_FIRMWARE_BY_SW_ID
+
+extern void DrvIcFwLyrVariableInitialize(void);
+extern void DrvIcFwLyrOptimizeCurrentConsumption(void);
+extern u8 DrvIcFwLyrGetChipType(void);
+extern void DrvIcFwLyrGetCustomerFirmwareVersion(u16 *pMajor, u16 *pMinor, u8 **ppVersion);
+extern void DrvIcFwLyrGetPlatformFirmwareVersion(u8 **ppVersion);
+extern void DrvIcFwLyrHandleFingerTouch(u8 *pPacket, u16 nLength);
+extern u32 DrvIcFwLyrIsRegisterFingerTouchInterruptHandler(void);
+extern s32 DrvIcFwLyrUpdateFirmware(u8 szFwData[][1024], EmemType_e eEmemType);
+extern s32 DrvIcFwLyrUpdateFirmwareBySdCard(const char *pFilePath);
+
+#ifdef CONFIG_ENABLE_ITO_MP_TEST
+extern void DrvIcFwLyrCreateMpTestWorkQueue(void);
+extern void DrvIcFwLyrScheduleMpTestWork(ItoTestMode_e eItoTestMode);
+extern void DrvIcFwLyrGetMpTestDataLog(ItoTestMode_e eItoTestMode, u8 *pDataLog, u32 *pLength);
+extern void DrvIcFwLyrGetMpTestFailChannel(ItoTestMode_e eItoTestMode, u8 *pFailChannel, u32 *pFailChannelCount);
+extern s32 DrvIcFwLyrGetMpTestResult(void);
+#if defined(CONFIG_ENABLE_TOUCH_DRIVER_FOR_MUTUAL_IC)
+extern void DrvIcFwLyrGetMpTestScope(TestScopeInfo_t *pInfo);
+#endif //CONFIG_ENABLE_TOUCH_DRIVER_FOR_MUTUAL_IC
+#endif //CONFIG_ENABLE_ITO_MP_TEST
+
+#ifdef CONFIG_ENABLE_SEGMENT_READ_FINGER_TOUCH_DATA
+#if defined(CONFIG_ENABLE_TOUCH_DRIVER_FOR_MUTUAL_IC)
+extern void DrvIcFwLyrGetTouchPacketAddress(u16 *pDataAddress, u16 *pFlagAddress);
+#endif //CONFIG_ENABLE_TOUCH_DRIVER_FOR_MUTUAL_IC
+#endif //CONFIG_ENABLE_SEGMENT_READ_FINGER_TOUCH_DATA
+
+#ifdef CONFIG_ENABLE_PROXIMITY_DETECTION
+extern s32 DrvIcFwLyrEnableProximity(void);
+extern s32 DrvIcFwLyrDisableProximity(void);
+#endif //CONFIG_ENABLE_PROXIMITY_DETECTION
+
+#ifdef CONFIG_ENABLE_GLOVE_MODE
+extern void DrvIcFwLyrOpenGloveMode(void);
+extern void DrvIcFwLyrCloseGloveMode(void);
+extern void DrvIcFwLyrGetGloveInfo(u8 *pGloveMode);
+#endif //CONFIG_ENABLE_GLOVE_MODE
+
+#endif /* __MSTAR_DRV_IC_FW_PORTING_LAYER_H__ */