encoding: implement handing of hopping parameters

The following test cases verify coding of the hopping parameters:

  + (RR) Immediate Assignment
    - TC_pcuif_fh_imm_ass_ul_egprs,
    - TC_pcuif_fh_imm_ass_ul,
    - TC_pcuif_fh_imm_ass_dl,

  + (RLC/MAC) Packet Uplink/Downlink Assignment:
    - TC_pcuif_fh_pkt_ass_ul,
    - TC_pcuif_fh_pkt_ass_dl,

all of them pass with this (and the upcoming) change applied.

Change-Id: I8adc0cdb1b05a87b4df5d4bc196f6d381283a06f
Related: SYS#4868, OS#4547
diff --git a/src/pdch.h b/src/pdch.h
index e1e3688..1c0993f 100644
--- a/src/pdch.h
+++ b/src/pdch.h
@@ -106,6 +106,18 @@
 	void update_ta(uint8_t tai, uint8_t ta);
 #endif
 
+	/* Frequency hopping parameters */
+	struct {
+		bool enabled;
+		/* 3GPP TS 45.002 HSN / MAIO (6 bit each) */
+		uint8_t hsn;
+		uint8_t maio;
+		/* 3GPP TS 44.018, 10.5.2.21 "Mobile Allocation" */
+		uint8_t ma_oct_len;
+		uint8_t ma_bit_len;
+		uint8_t ma[8];
+	} fh;
+
 	/* back pointers */
 	struct gprs_rlcmac_trx *trx;
 	uint8_t ts_no;