l1ctl: Add definition for TRAFFIC_{REQ,CONF,IND}
[osmocom-bb.git] / include / l1ctl_proto.h
index 9adadfd..3970588 100644 (file)
@@ -51,6 +51,11 @@ enum {
        L1CTL_SIM_CONF,
        L1CTL_TCH_MODE_REQ,
        L1CTL_TCH_MODE_CONF,
+       L1CTL_NEIGH_PM_REQ,
+       L1CTL_NEIGH_PM_IND,
+       L1CTL_TRAFFIC_REQ,
+       L1CTL_TRAFFIC_CONF,
+       L1CTL_TRAFFIC_IND,
 };
 
 enum ccch_mode {
@@ -59,6 +64,14 @@ enum ccch_mode {
        CCCH_MODE_COMBINED,
 };
 
+enum neigh_mode {
+       NEIGH_MODE_NONE = 0,
+       NEIGH_MODE_PM,
+       NEIGH_MODE_SB,
+};
+
+#define TRAFFIC_DATA_LEN       40
+
 /*
  * NOTE: struct size. We do add manual padding out of the believe
  * that it will avoid some unaligned access.
@@ -120,6 +133,11 @@ struct l1ctl_data_ind {
        uint8_t data[23];
 } __attribute__((packed));
 
+/* traffic from the network */
+struct l1ctl_traffic_ind {
+       uint8_t data[TRAFFIC_DATA_LEN];
+} __attribute__((packed));
+
 /*
  * uplink info
  */
@@ -255,4 +273,21 @@ struct l1ctl_reset {
        uint8_t pad[3];
 } __attribute__((packed));
 
+struct l1ctl_neigh_pm_req {
+       uint8_t n;
+       uint8_t padding[1];
+       uint16_t band_arfcn[64];
+} __attribute__((packed));
+
+/* neighbour cell measurement results */
+struct l1ctl_neigh_pm_ind {
+       uint16_t band_arfcn;
+       uint8_t pm[2];
+} __attribute__((packed));
+
+/* traffic data to network */
+struct l1ctl_traffic_req {
+       uint8_t data[TRAFFIC_DATA_LEN];
+} __attribute__((packed));
+
 #endif /* __L1CTL_PROTO_H__ */