/*! \file gprs_rlc.h */

#pragma once

#include <stdint.h>

/*! Structure for CPS coding and puncturing scheme (TS 04.60 10.4.8a) */
struct egprs_cps {
	uint8_t bits;
	uint8_t mcs;
	uint8_t p[2];
};

/*! CPS puncturing table selection (TS 04.60 10.4.8a) */
enum egprs_cps_punc {
	EGPRS_CPS_P1,
	EGPRS_CPS_P2,
	EGPRS_CPS_P3,
	EGPRS_CPS_NONE = -1,
};

/*! EGPRS header types (TS 04.60 10.0a.2) */
enum egprs_hdr_type {
        EGPRS_HDR_TYPE1,
        EGPRS_HDR_TYPE2,
        EGPRS_HDR_TYPE3,
};

int egprs_get_cps(struct egprs_cps *cps, uint8_t type, uint8_t bits);
