diff --git a/include/openbsc/Makefile.am b/include/openbsc/Makefile.am
index f1f163b..d3be438 100644
--- a/include/openbsc/Makefile.am
+++ b/include/openbsc/Makefile.am
@@ -1,3 +1,3 @@
 noinst_HEADERS = abis_nm.h abis_rsl.h debug.h db.h gsm_04_08.h gsm_data.h \
 		 gsm_subscriber.h linuxlist.h msgb.h select.h tlv.h gsm_04_11.h \
-		 timer.h misdn.h chan_alloc.h telnet_interface.h
+		 timer.h misdn.h chan_alloc.h telnet_interface.h paging.h
diff --git a/include/openbsc/paging.h b/include/openbsc/paging.h
new file mode 100644
index 0000000..93137fc
--- /dev/null
+++ b/include/openbsc/paging.h
@@ -0,0 +1,61 @@
+/* Paging helper and manager.... */
+/* (C) 2009 by Holger Hans Peter Freyther <zecke@selfish.org>
+ * All Rights Reserved
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ */
+
+#ifndef PAGING_H
+#define PAGING_H
+
+#include <malloc.h>
+#include <string.h>
+
+#include "linuxlist.h"
+#include "gsm_data.h"
+#include "gsm_subscriber.h"
+
+/**
+ * A pending paging request 
+ */
+struct paging_request {
+	struct llist_head entry;
+	struct gsm_subscriber *subscr;
+	struct gsm_bts *bts;
+};
+
+/*
+ * struct for each bts we serve...
+ */
+struct paging_bts {
+	/* public callbacks */
+	void (*channel_allocated)(struct gsm_lchan *lchan);
+
+	/* list for each bts */
+	struct llist_head bts_list;
+
+	/* pending requests */
+	struct llist_head pending_requests;
+	struct gsm_bts *bts;
+};
+
+/* call once for every gsm_bts... */
+struct paging_bts* page_allocate(struct gsm_bts *bts);
+
+/* schedule paging request */
+void page_request(struct gsm_bts *bts, struct gsm_subscriber *subscr);
+
+#endif
