Add toolchain and mbtk source
Change-Id: Ie12546301367ea59240bf23d5e184ad7e36e40b3
diff --git a/mbtk/include/ql/ql_at.h b/mbtk/include/ql/ql_at.h
new file mode 100755
index 0000000..9cd6e8f
--- /dev/null
+++ b/mbtk/include/ql/ql_at.h
@@ -0,0 +1,91 @@
+
+#ifndef __QL_AT_H__
+#define __QL_AT_H__
+
+//#include <stdint.h>
+#include <string.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define TRUE 1
+#define FALSE 0
+
+#define BUF_LEN 1024
+
+#define MAX_URC_EVENT_HANDLER_ARRAY_SIZE 10
+
+//typedef unsigned int size_t;
+typedef int URC_EVENT_HANDLE;
+typedef void (*ql_urc_event_handle_func_t)(const char* urc_content);
+
+typedef struct
+{
+ char* urc_event;
+ ql_urc_event_handle_func_t pfun;
+} st_urc_handle_node;
+
+//--------------------------------------------------------------------------------------------------
+/**
+ * Standard result codes.
+ *
+ * @note All error codes are negative integers. They allow functions with signed
+ * integers to return non-negative values when successful or standard error codes on failure.
+ * @deprecated the result code LE_NOT_POSSIBLE is scheduled to be removed.
+ */
+//--------------------------------------------------------------------------------------------------
+typedef enum
+{
+ E_QL_OK = 0, ///< Successful.
+ E_QL_NOT_FOUND = -1, ///< Referenced item does not exist or could not be found.
+ E_QL_NOT_POSSIBLE = -2, ///< @deprecated It is not possible to perform the requested action.
+ E_QL_OUT_OF_RANGE = -3, ///< An index or other value is out of range.
+ E_QL_NO_MEMORY = -4, ///< Insufficient memory is available.
+ E_QL_NOT_PERMITTED = -5, ///< Current user does not have permission to perform requested action.
+ E_QL_FAULT = -6, ///< Unspecified internal error.
+ E_QL_COMM_ERROR = -7, ///< Communications error.
+ E_QL_TIMEOUT = -8, ///< A time-out occurred.
+ E_QL_OVERFLOW = -9, ///< An overflow occurred or would have occurred.
+ E_QL_UNDERFLOW = -10, ///< An underflow occurred or would have occurred.
+ E_QL_WOULD_BLOCK = -11, ///< Would have blocked if non-blocking behaviour was not requested.
+ E_QL_DEADLOCK = -12, ///< Would have caused a deadlock.
+ E_QL_FORMAT_ERROR = -13, ///< Format error.
+ E_QL_DUPLICATE = -14, ///< Duplicate entry found or operation already performed.
+ E_QL_BAD_PARAMETER = -15, ///< Parameter is invalid.
+ E_QL_CLOSED = -16, ///< The resource is closed.
+ E_QL_BUSY = -17, ///< The resource is busy.
+ E_QL_UNSUPPORTED = -18, ///< The underlying resource does not support this operation.
+ E_QL_IO_ERROR = -19, ///< An IO operation failed.
+ E_QL_NOT_IMPLEMENTED = -20, ///< Unimplemented functionality.
+ E_QL_UNAVAILABLE = -21, ///< A transient or temporary loss of a service or resource.
+ E_QL_TERMINATED = -22, ///< The process, operation, data stream, session, etc. has stopped.
+}E_QL_RESULT;
+
+extern const char strDelimit[];
+
+extern st_urc_handle_node g_urc_handler[];
+
+/*
+ Specify the AT port name used for sending/receiving AT cmd.
+*/
+extern int QL_AT_PortInit(char *device_path);
+
+extern void QL_AT_PortDeinit(void);
+
+/*
+ register the URC event call back, such as "+CMT: ;+CDS: ;+CBM: ;+CMTI: ;" seperated by ";" for sms.
+*/
+extern URC_EVENT_HANDLE register_urc_callback_func(const char* urc_event, ql_urc_event_handle_func_t pfun);
+
+/*
+ unregister the URC event call back.
+*/
+extern void unregister_urc_callback_func(URC_EVENT_HANDLE h_handle);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif //__QL_AT_H__