diff --git a/include/osmocom/gsm/protocol/gsm_12_21.h b/include/osmocom/gsm/protocol/gsm_12_21.h
index 6a37392..deca2df 100644
--- a/include/osmocom/gsm/protocol/gsm_12_21.h
+++ b/include/osmocom/gsm/protocol/gsm_12_21.h
@@ -45,6 +45,9 @@
 	uint8_t	data[0];
 } __attribute__ ((packed));
 
+#define ABIS_NM_MSG_SIZE	1024
+#define ABIS_NM_MSG_HEADROOM	128
+
 /*! \brief Message Discriminator for Formatted Object Messages */
 #define ABIS_OM_MDISC_FOM		0x80
 /*! \brief Message Discriminator for Man Machine Interface */
@@ -781,4 +784,8 @@
 	IPAC_BINF_CELL_ALLOC		= (1 << 2),
 };
 
+struct msgb *abis_nm_fail_evt_rep(enum abis_nm_event_type t,
+				  enum abis_nm_severity s,
+				  enum abis_nm_pcause_type ct,
+				  uint16_t cause_value, const char *fmt, ...);
 /*! @} */
diff --git a/src/gsm/abis_nm.c b/src/gsm/abis_nm.c
index 87d05ab..2de4941 100644
--- a/src/gsm/abis_nm.c
+++ b/src/gsm/abis_nm.c
@@ -517,6 +517,44 @@
 	/* FIXME: bounds check */
 };
 
+/*! \brief Pack 3GPP TS 12.21 § 8.8.2 Failure Event Report into msgb */
+struct msgb *abis_nm_fail_evt_rep(enum abis_nm_event_type t,
+				  enum abis_nm_severity s,
+				  enum abis_nm_pcause_type ct,
+				  uint16_t cause_value, const char *fmt, ...)
+{
+	uint8_t cause[3];
+	int len;
+	va_list ap;
+	char add_text[ABIS_NM_MSG_HEADROOM];
+	struct msgb *nmsg = msgb_alloc_headroom(ABIS_NM_MSG_SIZE,
+						ABIS_NM_MSG_HEADROOM,
+						"OML FAIL EV. REP.");
+	if (!nmsg)
+		return NULL;
+
+	msgb_tv_put(nmsg, NM_ATT_EVENT_TYPE, t);
+	msgb_tv_put(nmsg, NM_ATT_SEVERITY, s);
+
+	cause[0] = ct;
+	osmo_store16be(cause_value, cause + 1);
+
+	msgb_tv_fixed_put(nmsg, NM_ATT_PROB_CAUSE, 3, cause);
+
+	va_start(ap, fmt);
+	len = vsnprintf(add_text, ABIS_NM_MSG_HEADROOM, fmt, ap);
+	va_end(ap);
+
+	if (len < 0) {
+		msgb_free(nmsg);
+		return NULL;
+	}
+	if (len)
+		msgb_tl16v_put(nmsg, NM_ATT_ADD_TEXT, len, add_text);
+
+	return nmsg;
+}
+
 /*! \brief Obtain OML Channel Combination for phnsical channel config */
 int abis_nm_chcomb4pchan(enum gsm_phys_chan_config pchan)
 {
diff --git a/src/gsm/libosmogsm.map b/src/gsm/libosmogsm.map
index c876d2b..0c37d1c 100644
--- a/src/gsm/libosmogsm.map
+++ b/src/gsm/libosmogsm.map
@@ -4,6 +4,7 @@
 abis_nm_adm_state_names;
 abis_nm_att_settable;
 abis_nm_avail_name;
+abis_nm_fail_evt_rep;
 abis_nm_chcomb4pchan;
 abis_nm_debugp_foh;
 abis_nm_event_type_name;
