blob: ac8f2d12effb57c7a350ad01d1f70bb105283345 [file] [log] [blame]
Ivan Kluchnikov8ee60512012-03-05 19:24:57 +04001/* gprs_rlcmac.cpp
2 *
3 * Copyright (C) 2012 Ivan Klyuchnikov
Andreas Eversberg5dac2f02012-06-27 15:52:04 +02004 * Copyright (C) 2012 Andreas Eversberg <jolly@eversberg.eu>
Holger Hans Peter Freytherd6bd91e2013-08-24 21:16:55 +02005 * Copyright (C) 2013 by Holger Hans Peter Freyther
Ivan Kluchnikov8ee60512012-03-05 19:24:57 +04006 *
7 * This program is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation; either version 2
10 * of the License, or (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20 */
21
22#include <gprs_bssgp_pcu.h>
23#include <pcu_l1_if.h>
Ivan Kluchnikov8ee60512012-03-05 19:24:57 +040024#include <gprs_rlcmac.h>
Holger Hans Peter Freyther67ed34e2013-10-17 17:01:54 +020025#include <bts.h>
Holger Hans Peter Freyther63f29d62013-10-19 19:04:03 +020026#include <encoding.h>
Holger Hans Peter Freyther099535a2013-10-16 17:42:31 +020027#include <tbf.h>
Ivan Kluchnikov8ee60512012-03-05 19:24:57 +040028
Andreas Eversberg53f47252012-07-15 07:10:10 +020029
Andreas Eversberg6681bb82012-07-25 08:48:44 +020030extern void *tall_pcu_ctx;
Ivan Kluchnikov8ee60512012-03-05 19:24:57 +040031
Andreas Eversberg8c3680d2012-10-08 12:30:56 +020032int gprs_rlcmac_paging_request(uint8_t *ptmsi, uint16_t ptmsi_len,
33 const char *imsi)
34{
35 LOGP(DRLCMAC, LOGL_NOTICE, "TX: [PCU -> BTS] Paging Request (CCCH)\n");
36 bitvec *paging_request = bitvec_alloc(23);
37 bitvec_unhex(paging_request, "2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b");
Holger Hans Peter Freyther63f29d62013-10-19 19:04:03 +020038 int plen = Encoding::write_paging_request(paging_request, ptmsi, ptmsi_len);
Andreas Eversberg8c3680d2012-10-08 12:30:56 +020039 pcu_l1if_tx_pch(paging_request, plen, (char *)imsi);
40 bitvec_free(paging_request);
41
42 return 0;
43}
Andreas Eversberga004e6a2013-05-13 16:45:21 +020044
45