Add toolchain and mbtk source

Change-Id: Ie12546301367ea59240bf23d5e184ad7e36e40b3
diff --git a/mbtk/include/lynq/lynq_gnss.h b/mbtk/include/lynq/lynq_gnss.h
new file mode 100755
index 0000000..679039b
--- /dev/null
+++ b/mbtk/include/lynq/lynq_gnss.h
@@ -0,0 +1,121 @@
+#ifndef __MBTK_LYNQ_GNSS_H__
+#define __MBTK_LYNQ_GNSS_H__
+
+typedef enum
+{
+    E_LYNQ_LOC_MSG_ID_STATUS_INFO = 0,
+    E_LYNQ_LOC_MSG_ID_LOCATION_INFO,
+    E_LYNQ_LOC_MSG_ID_SV_INFO,
+    E_LYNQ_LOC_MSG_ID_NMEA_INFO,
+    E_LYNQ_LOC_MSG_ID_CAPABILITIES_INFO,
+    E_LYNQ_LOC_MSG_ID_AGPS_STATUS,
+    E_LYNQ_LOC_MSG_ID_NI_NOTIFICATION,
+    E_LYNQ_LOC_MSG_ID_XTRA_REPORT_SERVER,
+}E_LYNQ_LOC_MSG_ID_T;
+
+#define LYNQ_LOC_NMEA_MAX_LENGTH  255                 /**  NMEA string maximum length. */
+typedef struct
+{
+    int64_t     timestamp;                          /**<   System Timestamp, marked for when got the nmea data */
+    int         length;                             /**<   NMEA string length. */
+    char        nmea[LYNQ_LOC_NMEA_MAX_LENGTH + 1];   /**<   NMEA string.*/
+}LYNQ_LOC_NMEA_INFO_T;  /* Message */
+
+/* callback function register to lynq_gnss_rx_ind_msg_handler
+   e_msg_id: which kind of msg can be received depend on the bit_mask set in QL_LOC_Set_Indications;
+   pv_data: depend on the e_msg_id type.
+*/
+typedef void (*lynq_gnss_rx_ind_msg_handler_t)
+(
+    uint32  h_loc,
+    E_LYNQ_LOC_MSG_ID_T   e_msg_id,
+    void                    *pv_data,
+    void                    *contextPtr
+);
+
+/**
+ * @brief      function description
+ *
+ * @details    detailed description
+ *
+ * @param      param
+ *
+ * @return     return type
+ */
+int lynq_gnss_init(void);
+/**
+ * @brief      function description
+ *
+ * @details    detailed description
+ *
+ * @param      param
+ *
+ * @return     return type
+ */
+int lynq_gnss_deinit(void);
+
+/**
+ * @brief      function description
+ *
+ * @details    detailed description
+ *
+ * @param      param
+ *
+ * @return     return type
+ */
+int lynq_gnss_callback_reg(lynq_gnss_rx_ind_msg_handler_t handlerPtr);
+
+/**
+ * @brief      function description
+ *
+ * @details    detailed description
+ *
+ * @param      param
+ *
+ * @return     return type
+ */
+int lynq_gnss_start(void);
+/**
+ * @brief      function description
+ *
+ * @details    detailed description
+ *
+ * @param      param
+ *
+ * @return     return type
+ */
+int lynq_gnss_stop(void);
+
+/**
+ * @brief      function description
+ *
+ * @details    detailed description
+ *
+ * @param      param
+ *
+ * @return     return type
+ */
+int lynq_gnss_agps_dataconnopen(void);
+/**
+ * @brief      function description
+ *
+ * @details    detailed description
+ *
+ * @param      param
+ *
+ * @return     return type
+ */
+int lynq_gnss_dev_reset(void);
+
+/**
+ * @brief      function description
+ *
+ * @details    detailed description
+ *
+ * @param      param
+ *
+ * @return     return type
+ */
+int lynq_gnss_enable_glonass(void);
+
+#endif