diff --git a/configure.ac b/configure.ac
index 7d88eb4..92cba96 100644
--- a/configure.ac
+++ b/configure.ac
@@ -33,15 +33,7 @@
 PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 0.3.0)
 PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty >= 0.3.0)
 PKG_CHECK_MODULES(LIBOSMOGSM, libosmogsm >= 0.3.10)
-PKG_CHECK_MODULES([ORTP], [ortp >= 0.13.1],
-	[
-		PKG_CHECK_MODULES([ORTP_VERSION], [ortp >= 0.21],
-				  [AC_DEFINE(HAVE_ORTP_021, 1,
-				   	     [libortp >= 0.21])],
-				  [AC_DEFINE(HAVE_ORTP_021, 0,
-				   	     [libortp < 0.21])])
-	]
-)
+PKG_CHECK_MODULES(ORTP, ortp >= 0.22.0)
 
 AC_CHECK_HEADERS(dahdi/user.h,,AC_MSG_WARN(DAHDI input driver will not be built))
 
diff --git a/src/trau/osmo_ortp.c b/src/trau/osmo_ortp.c
index 0bb1197..5441337 100644
--- a/src/trau/osmo_ortp.c
+++ b/src/trau/osmo_ortp.c
@@ -357,13 +357,9 @@
  */
 int osmo_rtp_socket_bind(struct osmo_rtp_socket *rs, const char *ip, int port)
 {
-	int rc;
-#if HAVE_ORTP_021
-	int rtcp = (-1 != port) ? port + 1 : -1;
+	int rc, rtcp = (-1 != port) ? port + 1 : -1;
 	rc = rtp_session_set_local_addr(rs->sess, ip, port, rtcp);
-#else
-	rc = rtp_session_set_local_addr(rs->sess, ip, port);
-#endif
+
 	if (rc < 0)
 		return rc;
 
@@ -600,11 +596,9 @@
 		*recv_lost = stats->cum_packet_loss;
 	}
 
-#if HAVE_ORTP_021
 	const jitter_stats_t *jitter;
 
 	jitter = rtp_session_get_jitter_stats(rs->sess);
 	if (jitter)
 		*last_jitter = jitter->jitter;
-#endif
 }
