path: root/openbsc
AgeCommit message (Collapse)AuthorFilesLines
2009-08-06re-enable config file handling of vty layerHarald Welte1-9/+4
2009-08-06add function for performing 'CONNECT MULTI-DROP LINK" as per GSM 12.21Harald Welte2-0/+32
don't be confused, BS-11 does not need this. But since I wrote the code before knowing that, I can just as well commit it.
2009-08-06add more ip.access attribute TLV definitionsHarald Welte1-4/+33
2009-08-06introduce '-2' commandline option for second BS-11Harald Welte1-4/+27
Using this option, you can use two BS-11 connected to the same E1 link. The first BS-11 needs to have BPORT0 and BPORT1 objects created with E1 Line Configuration attribute "multi-drop". The second BS-11 is configured with only BPORT0 in star configuration, and needs to have the OML signalling on TS6 instead of TS1. Also, a kernel patch providing a second virtual E1 interface is needed.
2009-08-06shut down the OML (and thus the BTS) when bsc_hack is terminated with ctrl+cHarald Welte1-2/+6
2009-08-06only set BCCH INFO on first TRX (C0) of BTSHarald Welte1-4/+6
2009-08-06use HARDCODED_BTSn_TS defines from bsc_hack.cHarald Welte1-19/+36
2009-08-06add HARDCODED_BTSn_TS to define the base TS for each BTSHarald Welte2-5/+10
2009-08-06use talloc_free() rather than free()Harald Welte1-2/+2
Fix two bugs in OML software download code where we allocate data structures using talloc, but free() them using the system memory allocator. Spotted by dexter.
2009-08-04e1_config now supports up to three BTSHarald Welte1-22/+39
Each BTS gets its own E1 line data structure. They are meant to bind each to their own (virtual?) mISDN device. BTS0 uses TS01 (siganlling) and TS02/03 (TRX0), TS04/05(TRX1) BTS1 uses TS11 (siganlling) and TS12/13 (TRX0), TS14/15(TRX1) BTS2 uses TS21 (siganlling) and TS22/23 (TRX0), TS24/25(TRX1)
2009-08-04prepare mISDN driver for multiple lines/instancesHarald Welte1-12/+6
In order to use multiple mISDN cards, we need to: 1) move driver initialization out of line initialization 2) make sure we allow partial (virtual) E1 cards with < 30 B-channels
2009-08-04fix \n at end of line of certain RSL debug messagesHarald Welte1-7/+5
2009-08-04alter initial MS RF power to 100mWHarald Welte1-1/+2
2009-08-04parse and decode Siemens specific T_MSRFPCI messageHarald Welte2-0/+2
2009-08-04fix initialization of TRX1 / TS0Harald Welte1-5/+5
also fix a minor error when printing BTS/TRX number
2009-08-01add ip.access specific channel combinationsHarald Welte1-0/+6
2009-07-29make channel allocator policy multi-TRX awareHarald Welte1-14/+28
For now, we assume that TRX1 (and higher) all have a TCH/F configuration on all of their timeslots
2009-07-29complete TRX1 support for BS11Harald Welte2-34/+118
* remove old HAVE_TRX1 definition, replace it with '-1' commandline argument * make sure we actually configure the OML TRX attributes with a different ARFCN than TRX0 * make sure we configure timeslot 0 of TRX1 also in TCH/F mode This code is untested, but if you have a dual-trx BS-11, and the second TRX is activated, you should be able to run bsc_hack with the -1 option to enable and use the second trx. It works like this: * TRX1 shares E1 timeslot 0 for signalling * TRX1 RSL link uses TEI2 (TRX0 uses 1) * TRX1 on ARFCN+2, i.e. if you have TRX0 on 122, TRX1 will be 124
2009-07-29generalize channel activation / channel mode modifyHarald Welte5-88/+93
* we only need one piece of code to calculate rsl_ie_chan_mode from our run-time data structures (gsm_lchan) * add some more channel modes for TCH/H and data * use enum's to make the compiler warn us about unhandled enum values * make sure the caller determines the (signalling,speech,data) mode
2009-07-29actually derive the ip.access speech mode from tch_modeHarald Welte1-18/+16
also make sure we always print the speech_mode on IPAC_BIND and IPAC_CONNECT.
2009-07-29postpone IPAC_BIND until we do a LCHAN_MODIFYHarald Welte1-7/+18
only after the LCHAN_MODIFY we know the final mode of the channel, so we have to postpone our IPAC_BIND until then to make sure we set the correct speech codec.
2009-07-29comments about the bearer_capability structureHarald Welte1-6/+7
2009-07-29bearer capability definitionsHarald Welte1-0/+28
2009-07-29add support for more RSL channel modesHarald Welte1-1/+20
2009-07-29Merge commit 'origin/master'Harald Welte3-7/+8
2009-07-29fix typo when using sizeof() to determine the size of the RTCP headerHarald Welte1-1/+1
This was spotted by zecke, thanks.
2009-07-29rtp_proxy.c: Spelling fix, kook -> lookHolger Hans Peter Freyther1-1/+1
2009-07-29db_test.c: Make it compile againHolger Hans Peter Freyther1-6/+6
2009-07-29vty/command.c: Fix compile warning by including gsm_subsriber.hHolger Hans Peter Freyther1-0/+1
2009-07-28add RTP proxy mode for ip.accessHarald Welte6-37/+296
Up until now, we only supported direct RTP streams between ip.access BTS. With this commit, the user can specify '-P' to the command line to enable a RTP/RTCP proxy inside OpenBSC. The nanoBTS will then send all their voice data to OpenBSC, which will relay it to the respective destination BTS (which can be the same BTS). The default behaviour remains unchanged. Without '-P' on the command line, RTP/RTCP is exchanged directly.
2009-07-28improve ip-access BIND/CONNECT RTP supportHarald Welte1-7/+51
* explicitly set the "ip speech mode" IE during BIND and CONNECT messages, depending on the speech codec used by the voice call * more verbose debug messages regarding IPAC_BIND and IPAC_CONNECT * do not always blindly specify RTP payload type, but use the value returned by BIND_ACK, _if_ it is present.
2009-07-28send a [new] signal in case of IPAC_DISCONNECT_INDicationHarald Welte2-0/+3
2009-07-28implement human-readable RSL cause printingHarald Welte2-20/+74
2009-07-28enable select.c handler to support removal of two consecutive fd'sHarald Welte1-0/+9
2009-07-28Merge branch 'master' into rtp_proxyHarald Welte11-53/+64
2009-07-28move allocation of talloc contexts into link-time constructorHarald Welte11-53/+64
This is much more optimal than checking if the context exists every time we allocate the respective object.
2009-07-28add new rtp_proxy code, but not use it yetHarald Welte2-0/+352
The rtp_proxy.[ch] code is intended to be used as a transparent RTP/RTCP proxy, relaying the media streams from one ip.access BTS to another. In an 'ideal' network, this is obviously not needed, since the BTS's can send those streams directly between each other. However, for debugging, 'lawful interception', transcoding or interfacing a TRAU/E1 based BTS, we actually need to process those RTP streams ourselves.
2009-07-23move allocating new transaction_ids to transaction.cHarald Welte3-19/+18
2009-07-23add missing files to gitHarald Welte2-0/+150
2009-07-23trans->transaction_id now reflects the actual (unshifted) valueHarald Welte1-9/+9
2009-07-23centralize the code that needs to deal with transaction_idHarald Welte2-80/+43
There were many places in the code where we had to explicitly reference the transaction_id and put it into a packet. By introducing and optional gsm_trans parameter to gsm48_sendmsg(), we can implement this code once rather than dozens of time.
2009-07-23make sure subscr->net is always setHarald Welte7-29/+52
since a subscriber is an element of the gsm_network, we have to ensure subscr->net is always set correctly. We do this by using gsm_network as an argument to all functions that resolve or create a subscriber.
2009-07-23remove bogus 'network' member of 'struct gsm_transaction'Harald Welte2-33/+35
Since a transaction is associated to a gsm_subscriber, and the subsciber is part of a network, we don't need to have a dedicated transaction->network pointer.
2009-07-23gms_transactions data model reorganizationHarald Welte4-130/+91
This changeset factors out gsm_transaction as something independent of call control in preparation to re-use the code from SMS. A transaction is uniquely identified by either its callref, or by a tuple of (transaction_id, protocol, subscriber).
2009-07-21allow user to set BSIC and TSC from command lineHarald Welte1-4/+19
2009-07-21use actual bts->tsc rather than hard-coded valueHarald Welte1-1/+1
2009-07-21use the TSC that is configured in bts->tsc rather than hardcoded valueHarald Welte1-1/+1
2009-07-19send DEACTIVATE SACCH when sending RR CHANEL RELEASEHarald Welte3-1/+25
As per specification, we first send the RR CHANNEL RELEASE to the MS, and then tell the BTS to disable the SACCH on that channel.
2009-07-19fix copy+paste mistake in ecnoding short net name in mm infoHarald Welte1-1/+1
2009-07-18some more comments for BS11 attributesHarald Welte1-35/+36