diff --git a/src/gprs_mac.h b/src/gprs_mac.h
new file mode 100644
index 0000000..3149351
--- /dev/null
+++ b/src/gprs_mac.h
@@ -0,0 +1,147 @@
+#include <stdint.h>
+
+enum gprs_mac_mode {
+	NULL_MODE,
+	IDLE_MODE,
+	TRANSFER_MODE,
+};
+
+enum gprs_mac_null_substates {
+	NULL_INACTIVE,
+	NULL_GPRS_51_ACTIVE,
+	NULL_SUSPENDED,
+	NULL_SUSPEND_RESEL,
+	NULL_UPLINK_TBF_ESTAB,
+	NULL_UPLINK_SB_ESTAB,
+	NULL_DOWNLINK_SB_ESTAB,
+	NULL_UPLINK_TBF_ACCESS,
+	NULL_DL_TBF_EST,
+	NULL_DTM_CONNECT_PENDING,
+	NULL_DTM_GTTP_UL_CON,
+	NULL_RESET,
+};
+
+enum gprs_mac_idle_substates {
+	IDLE_PASSIVE,
+	IDLE_UL_PACKET_ACCESS,
+	IDLE_UL_ACCESS_QUEUED,
+	IDLE_UL_ACCESS_REJECT,
+	IDLE_UL_1PHASE_ASS,
+	IDLE_UL_2PHASE_ASS,
+	IDLE_UL_1PHASE_CONT_RES,
+	IDLE_DL_ASS,
+};
+
+enum gprs_mac_transfer_substates {
+	TRANSFER_INACTIVE,
+	TRANSFER_DL,
+	TRANSFER_DL_REASSIGN,
+	TRANSFER_DL_WITH_DYNAMIC_ALLOC,
+	TRANSFER_DL_REASSIGN_DYNAMIC_ALLOC,
+	TRANSFER_UL_DYNAMIC,
+	TRANSFER_UL_DYNAMIC_REALLOC,
+	TRANSFER_UL_DYNAMIC_DL_ASSIGN,
+	TRANSFER_UL_DYNAMIC_REALLOC_DL_ASSIGN,
+	TRANSFER_CONCURRENT_DYNAMIC_TRANSFER,
+	TRANSFER_CONCURRENT_DYNAMIC_DL_REASSIGN,
+	TRANSFER_CONCURRENT_DYNAMIC_REALLOC,
+	TRANSFER_CONCURRENT_DL_REASSIGN_DYNAMIC_REALLOC,
+};
+
+/* LOG_GPRS_MAC_STATE_C */
+struct gprs_mac_state_change {
+	uint8_t mac_mode;
+	uint8_t mac_null_fsm_state;
+	uint8_t mac_idle_fsm_state;
+	uint8_t mac_transfer_fsm_state;
+} __attribute__((packed));
+
+/* LOG_GPRS_MAC_SIGNALLING_MESSAGE_C */
+struct gprs_mac_signalling_msg {
+	uint8_t chan_type;
+	uint8_t msg_type;
+	uint8_t msg_len;
+	uint8_t msg[0];
+} __attribute__((packed));
+
+/* LOG_GPRS_MAC_DL_TBF_ESTABLISH_C */
+struct gprs_mac_dl_tbf_est {
+	uint8_t dl_tfi;
+	uint8_t rlc_mode;
+	uint8_t dl_ts_bmap;
+	uint8_t is_egprs_tbf;
+	uint16_t egprs_win_size;
+	uint8_t egprs_link_qual_mode;
+	uint8_t bep_period2;
+} __attribute__((packed));
+
+/* LOG_GPRS_MAC_UL_TBF_ESTABLISH_C */
+struct gprs_mcc_ul_tbf_est {
+	uint8_t tbf_req_cause;
+	uint8_t acc_granted;
+	uint8_t radio_prio;
+	uint8_t peak_tput;
+	uint8_t ul_tfi;
+	uint8_t rlc_mode;
+	uint8_t ul_ts_bmap;
+
+	uint8_t is_egprs_tbf;
+	uint16_t egprs_win_size;
+	uint8_t resegment;
+	uint8_t bep_period2;
+} __attribute__ ((packed));
+
+/* LOG_EGPRS_MAC_DL_ACKNACK_C */
+struct gprs_mac_dl_acknack {
+	uint8_t is_egprs;
+	uint8_t dl_acknack[0];
+} __attribute__ ((packed));
+
+/* LOG_EGPRS_MAC_UL_ACKNACK_C */
+struct gprs_mac_ul_acknack {
+	uint8_t ul_acknack[0];
+} __attribute__ ((packed));
+
+/* identical for LOG_GPRS_MAC_UL_TBF_RELEASE_C and
+ * LOG_GPRS_MAC_DL_TBF_RELEASE_C */
+struct gprs_mac_tbf_release {
+	uint8_t tfi;
+	uint8_t fail_cause;
+} __attribute__ ((packed));
+
+
+/* EVENT_GPRS_MAC_MSG_RECEIVED / EVENT_GPRS_MAC_MSG_SENT */
+enum gprs_mac_chan_type {
+	PRACH_11BIT_CHANNEL	= 0x01,
+	PRACH_8BIT_CHANNEL	= 0x02,
+	PACCH_RRBP_CHANNEL	= 0x03,
+	UL_PACCH_CHANNEL	= 0x04,
+	PCCCH_CHANNEL		= 0x81,
+	PBCCH_CHANNEL		= 0x82,
+	DL_PACCH_CHANNEL	= 0x83,
+};
+
+enum gprs_mac_msg_type {
+	PACKET_CELL_CHANGE_FAILURE		= 0x00,
+	PACKET_CONTROL_ACKNOWLEDGE		= 0x01,
+	PACKET_DOWNLINK_ACK_NACK		= 0x02,
+	PACKET_UPLK_DUMMY_CNTRL_BLK		= 0x03,
+	PACKET_MEASUREMENT_REPORT		= 0x04,
+	PACKET_RESOURCE_REQUEST			= 0x05,
+	PACKET_MOBILE_TBF_STATUS		= 0x06,
+	PACKET_PSI_STATUS			= 0x07,
+	EGPRS_PACKET_DOWNLINK_ACK_NACK		= 0x08,
+	PACKET_PAUSE				= 0x09,
+	PACKET_ENHANCED_MEASUREMENT_REPORT	= 0x0a,
+	ADDITIONAL_MS_RAC			= 0x0b,
+	PACKET_CELL_CHANGE_NOTIFICATION		= 0x0c,
+	PACKET_SI_STATUS			= 0x0d,
+	PACKET_CS_REQUEST			= 0x0e,
+	PACKET_CHANNEL_REQUEST			= 0x20,
+};
+
+struct evt_gprs_mac_msg {
+	uint8_t msg_type;
+	uint8_t prot_disc;
+	uint8_t chan_type;
+} __attribute__ ((packed));
