zte's code,first commit
Change-Id: I9a04da59e459a9bc0d67f101f700d9d7dc8d681b
diff --git a/cp/ps/driver/inc/cfg/drvs_int_internal.h b/cp/ps/driver/inc/cfg/drvs_int_internal.h
new file mode 100644
index 0000000..bcc9e14
--- /dev/null
+++ b/cp/ps/driver/inc/cfg/drvs_int_internal.h
@@ -0,0 +1,143 @@
+/*******************************************************************************
+ * Copyright (C) 2014, ZTE Corporation.
+ *
+ * File Name: hal_int_internal.h
+ * File Mark:
+ * Description: describe functions and related macros and types used by
+ * other driver modules
+ * Others:
+ * Version: 1.0
+ * Author: xuzhiguo
+ * Date: 2014-05-05
+ * History 1:
+ * Date:
+ * Version:
+ * Author:
+ * Modification:
+ * History 2:
+ ********************************************************************************/
+
+#ifndef _DRVS_INT_INTERNAL_H
+#define _DRVS_INT_INTERNAL_H
+
+/****************************************************************************
+* Include files
+****************************************************************************/
+#include "drvs_general.h"
+#include "drvs_int.h"
+
+/****************************************************************************
+* Macros
+****************************************************************************/
+
+/****************************************************************************
+* Types
+****************************************************************************/
+typedef enum _T_Int_State
+{
+ INT_UNINSTALL,
+ INT_PENDING,
+ INT_ACTIVE,
+} T_Int_State;
+
+/*
+* this struct presents the operation method
+* and state of interrupt controller chip
+*/
+typedef struct _T_Int_Chip
+{
+ VOID (*pMaskIrq)( UINT32 line );
+ VOID (*pUnmaskIrq)( UINT32 line );
+ VOID (*pSetLineLevel)(UINT32 line, T_zDrvIntLineLevel level);
+ VOID (*pSetLinePri)(UINT32 line, UINT32 pri);
+} T_Int_Chip;
+
+typedef VOID (*IsrFunc)(VOID);
+
+/**************************************************************************
+ * Global Variable
+ **************************************************************************/
+
+/**************************************************************************
+ * Function Prototypes
+ **************************************************************************/
+ /*******************************************************************************
+ * Function: zDrvInt_SetMaskRam
+ * Description: an inline function to set g_IntDev.MaskRegInRam
+ * Parameters:
+ * Input:
+ * index: which member in array MaskRegInRam
+ * value: be writen
+ *
+ * Output:
+ *
+ * Returns:
+ *
+ * Others:
+ ********************************************************************************/
+ VOID zDrvInt_SetMaskRam(UINT32 index, UINT32 value);
+
+/*******************************************************************************
+ * Function: zDrvInt_GetMaskRam
+ * Description: an inline function to get g_IntDev.MaskRegInRam
+ * Parameters:
+ * Input:
+ * index: which member in array MaskRegInRam
+ *
+ * Output:
+ *
+ * Returns:
+ * member's value in array MaskRegInRam
+ *
+ * Others:
+ ********************************************************************************/
+ UINT32 zDrvInt_GetMaskRam(UINT32 index);
+
+/*******************************************************************************
+ * Function: zDrvInt_GetExtraIsr
+ * Description: get a isr according to ex8in1 int and gpio int
+ * Parameters:
+ * Input:
+ * line: interrupt line
+ *
+ * Output:
+ *
+ * Returns:
+ * isr for ex8in1 int and gpio int
+ * Others:
+ ********************************************************************************/
+ VOID* zDrvInt_GetExtraIsr(UINT32 line);
+
+/*******************************************************************************
+ * Function: zDrvInt_GetIntState
+ * Description: an inline function to get g_IntDev.IntState
+ * Parameters:
+ * Input:
+ * line: interrupt line to be disabled 0--INT_LINES_NUM
+ *
+ * Output:
+ *
+ * Returns:
+ * member's value in array IntState
+ *
+ * Others:
+ ********************************************************************************/
+ T_Int_State zDrvInt_GetIntState(UINT32 line);
+
+/*******************************************************************************
+ * Function: zDrvInt_SetChipHandler
+ * Description:
+ * Parameters:
+ * Input:
+ * line: which member in array IntChipHandler, according to interrupt line
+ * pChip: point to struct T_Int_Chip to be set
+ *
+ * Output:
+ *
+ * Returns:
+ *
+ * Others:
+ ********************************************************************************/
+ VOID zDrvInt_SetChipHandler(UINT32 line, T_Int_Chip *pChip);
+
+ #endif