Commit Graph

205 Commits

Author SHA1 Message Date
Holger Hans Peter Freyther 6d1f116338 misc: u_intX -> uintX in the host directory
Use C99 stdint.h for the inttypes.
2011-11-06 21:55:40 +01:00
Andreas Eversberg c9927c72ea [mobile] Using socket application interface with mobile application
Use "-m" with mobile app, to use it in conjunction with LCR or other
applications.
2011-09-04 10:02:43 +02:00
Andreas Eversberg 5c8b76e74e [mobile] Adding socket application interface code from OpenBSC. 2011-09-04 09:57:51 +02:00
Andreas Eversberg 210de12ec4 Fix of wong Classmark 2 when doing CM Service Request.
Same reason as the commit below... (3b2b3b09a)

Thanx again to Dieter for pointing this out.
2011-08-06 17:56:06 +02:00
Andreas.Eversberg 1a5461fb2b layer23: Add mobile support for sending / receiving voice frame through MNCC
Support GSM FR codec only so far.

Written-by: Andreas Eversberg <jolly@eversberg.eu>
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-07-28 21:30:51 +02:00
Andreas Eversberg 051dedd235 [layer23] Added special return value for invalid MCC/MNC input
This way an MNC of 000 can be entered.
2011-07-17 12:15:04 +02:00
Andreas Eversberg ff42943fe7 [layer23] Fixes and improvements of system information decoding 2011-07-17 12:12:18 +02:00
Andreas Eversberg 9548ac0a41 [layer23/mobile] Improvement and fixes of idle mode process
This patch introduces cell re-relection. When camping on a cell, it
scanns neighbour cells. If a 'better' cell is found, the cell is selected.
If the cell is in a different location area, a location upating is
performed under certain conditions.

The 'better' cell depends on various informations that are broadcasted on
the BCCH of a neihbour cell and of course the RX level. Most operators
don't set these informations, so the 'better' cell depend on a better
RX level for the same location area, or a much better RX level (6 dBm)
at a different location area.

There were many issues at the idle mode process that has been fixed.
Expecially when moving, the state machines got stuck, so no more cell search
was possible, or no further calls / location updating was possible.

In order to see the process of cell selection, enter the VTY interface and
enable the network monitor:

enable
monitor network 1  (where '1' is the instance of the MS)

In order to see the current state of the processes, enter:

show ms
2011-07-17 11:12:15 +02:00
Andreas Eversberg af06f00219 [layer23] Adding "neighbour cell" logging category: DNB 2011-07-17 10:03:34 +02:00
Andreas Eversberg 87c597abf6 [layer23] Adding neighbour cell measurement to L1CTL interface. 2011-07-17 09:36:49 +02:00
Andreas Eversberg e91dfa950e [layer23] Fixed handling of channel 0 in certain loops
The ARFC counts from 1 to 1023, and then to 0. The index of these loops
count from 1 to 1024. The index 1024 stands for ARFCN 0.

This also reverses commit eb77945e16.
2011-07-17 09:09:32 +02:00
Harald Welte 48db968916 settings.h: IMSI is 15 bytes +1 \0 maximum
If we use a larger field to store the IMSI, we can create overflows when
copying the imsi to other structures that are only 16 bytes in size.

Detected by Smatch:
src/host/layer23/src/mobile/subscriber.c +195 gsm_subscr_testcard(39) error: strcpy() 'set->test_imsi' too large for 'subscr->imsi' (20 vs 16)
2011-07-16 17:41:02 +02:00
Harald Welte eb77945e16 sysinfo.h: ARFCN can be 0..1024, so we need an array of 1025 entries
Detected by Smatch:
src/host/layer23/src/mobile/gsm48_rr.c +1658 gsm48_new_sysinfo(23) warn: buffer overflow 's->freq' 1024 <= 1024
2011-07-16 17:38:19 +02:00
Harald Welte 7506e29c61 lapdm: introduce a new lapdm_phsap_dequeue_prim()
This function can be called by a TDMA-driven L1 which will never actually want
to receive unsolicited/asynchronous PH-DATA.req primitives, but who will simply
directly poll the LAPDm transmit queue by calling the abovementioned function
2011-06-24 22:05:46 +02:00
Harald Welte ec71711ebf introduce LAPDM entity flags for PH-EMPTY_FRAME.req and pollling
polling means that we never try to proactively generate a PH-DATA.req
unless there was a PH-RTS.ind first.
2011-06-24 13:56:48 +02:00
Harald Welte 04190eabd3 lapdm: Introduce LAPDM_MODE_{BTS,MS} to run on both sides
We also introduce some related functions like
	lapdm_{entity,channel}_set_mode()
	lapdm_{entity,channel}_reset()

This is all in preparation for the Osmo-BTS Work.
2011-06-24 12:23:17 +02:00
Harald Welte 68d03b86f4 lapdm: implement RSL CHAN RQD generation from PH-RA.ind 2011-06-24 00:42:01 +02:00
Harald Welte 3538c38835 further decouple lapdm code from osmocom_ms and l1ctl
we introduce a new primitive layer betwen PH and DL, enabling the
use of the LAPDm code in applications that are not based on L1CTL
2011-06-23 23:55:20 +02:00
Harald Welte f36e4fe86c remove l1ctl data structure form l2_ph_chan_conf()
This brings us one step closer to de-couple LAPDm from L1CTL
2011-06-22 23:04:20 +02:00
Harald Welte 4d5f74375a remove l1ctl data structure from l2_ph_data_ind() 2011-06-22 23:01:18 +02:00
Harald Welte 7ad100b94e layer23: make LAPDm code mostly independent of 'struct osmocom_ms'
This is one step in the direction of re-using the lapdm code in osmo-bts.
2011-06-21 19:51:01 +02:00
Harald Welte ddb20b8b4e remove osmocom_ms reference from lapdm_init()
... yet another step in making lapdm code independent of osmocom_ms
2011-06-21 19:48:20 +02:00
Harald Welte a2f615e522 remove 'osmocom_ms' from struct lapdm_enetity
and replace it with more general l1_ctx nad l3_ctx.
2011-06-21 19:47:34 +02:00
Andreas.Eversberg 58ac7e0e98 [layer23] Adding Quadband support and GSM 4x0 support
This makes it possible to use GSM 850 and PCS 1900 bands, as used in the
US. The support relies on the phone hardware.

Each band (900, DCS, 850, PCS, 480 and 450) can be enabled and
disabled individually for each setting.
2011-05-29 19:51:54 +02:00
Pablo Neira Ayuso 0e6cea9b51 src: use namespace prefix osmo_wqueue*
Summary of changes:

s/struct write_queue/struct osmo_wqueue/g
s/write_queue_init/osmo_wqueue_init/g
s/write_queue_clear/osmo_wqueue_clear/g
s/write_queue_enqueue/osmo_wqueue_enqueue/g
s/write_queue_bfd_cb/osmo_wqueue_bfd_cb/g
2011-05-15 17:33:23 +02:00
Pablo Neira Ayuso d3ba2f6037 src: use namespace prefix osmo_timer*
Summary of changes:

s/struct timer_list/struct osmo_timer_list/g
s/bsc_add_timer/osmo_timer_add/g
s/bsc_schedule_timer/osmo_timer_schedule/g
s/bsc_del_timer/osmo_timer_del/g
s/bsc_timer_pending/osmo_timer_pending/g
s/bsc_nearest_timer/osmo_timers_nearest/g
s/bsc_prepare_timers/osmo_timers_prepare/g
s/bsc_update_timers/osmo_timers_update/g
s/bsc_timer_check/osmo_timers_check/g
2011-05-15 14:39:30 +02:00
Pablo Neira Ayuso ade79a0083 src: use new libosmogsm and include/osmocom/[gsm|core] path to headers
This patch changes include paths to get osmocom-bb working with
the current libosmocore tree.

Among all these renames, you can notice several tweaks that I
added on purpose, and that require some explanation, they are:

* hexdump() in osmocon.c and osmoload.c has been renamed to avoid
clashing with hexdump() defined in libosmocore.

* gsmmap now depends on libosmogsm. Actually I had to cleanup
Makefile.am because I was experiencing weird linking problems,
probably due to a bug in the autotools. With the change included
in this patch, I got it compiled and linked here correctly.

This patch has been tested with the phone Motorola C123 and the
following images files:

* firmware/board/compal_e88/hello_world.compalram.bin
* firmware/board/compal_e88/layer1.compalram.bin

Using the osmocon, bcch_scan and mobile tools.

Signed-off-by: Pablo Neira Ayuso <pablo@gnumonks.org>
2011-04-26 02:55:30 +02:00
Dario Lombardo aa2f2fdfa1 [PATCH] Added runtime selection of gps device. 2011-03-09 16:27:20 +00:00
Harald Welte cde3f7d2c6 mobile: Store N.ba files in same directory as config file
This should remove the last dependency to hard-coded system-wide /etc/osmocom
2011-03-02 11:00:59 +01:00
Dario Lombardo b7a4d8d912 Added gpsd support. 2011-02-16 15:15:12 +01:00
Dario Lombardo 26ff2ee880 Renamed gps_* functions to osmo_gps_* functions to avoid overlap with libgps functions. 2011-02-16 15:15:07 +01:00
Holger Hans Peter Freyther ace267cfc2 layer23: Enable combining the long options
Combine the long options from the base and the application. Provide
the long option for the cell log application.
2010-12-27 19:01:37 +01:00
Holger Hans Peter Freyther 63c0e6d199 layer23: Make the logfile configurable with cell_log
Be able to add extra (short) options from the 'applet' to
the main application. Use this to print the help mentioning
app specific options, pass the getopt string and handle the
command line parsing for it.

Change cell_log to keep the logname in the app_cell_log.c
and then access it from the cell_log.c implementation.
2010-12-27 19:01:37 +01:00
Holger Hans Peter Freyther 738f9d892a layer23: Not every application supports every option add enum
Allow each application to specify the options it is supporting.
2010-12-27 19:01:37 +01:00
Holger Hans Peter Freyther 2934d0a4f4 layer23: Create an l23_app_info for various information and cb's
Make it possible that each l23 app can inject the copyright string,
also prepare to have callbacks for the config handling and other
places. This will be useful to add app specific config options.
2010-12-27 19:01:37 +01:00
Andreas.Eversberg f72baf40d5 [layer23] Adding LAC and TMSI (both optional) to test card (rplmn) 2010-11-20 08:32:32 +00:00
Andreas.Eversberg f8903f06d1 [layer23] Cleanup of mobile application
All functions for handling mobile instances and mobile relevant parts are
moved to mobile/app_mobile.c, the mobile/main.c and mobile/mncc.c become a
simple out-of-the-box mobile application. (making calls)

The mobile/main.c can be replaced easily by a different application now.
this application may have it's own call control implementation (layer 4).
Full configurations via VTY is still possible and required in this case.
2010-11-14 11:52:57 +00:00
Andreas.Eversberg 6f2b172780 [layer23] Added support for multiple MS instances
To create another instance: 'ms <name> create'

To remove an instance: 'no ms <name>'

If no instance exists, 'ms 1' is created automatically on startup.

Each instance can be enabled / disabled by using 'shutdown' or
'no shutdown'. Multiple instances may share the same layer2 socket (same
phone hardware), but in this case only one instance can be enabled at the
same time. This makes it much easier to select different settings without
modifying them.

A 'shutdown' initiates the IMSI detach procedure before shutdown is
completed. A 'shutdown force' will immidiately shutdown.

There is no need to restart the software anymore, if fundamental settings
are changed. In this case, a 'shutdown' followed by a 'no shutdown' will
do the job.

If you already have an old osmocom.cfg, you need to "no shutdown" it.
Everything else behaves as before.
2010-11-13 18:45:09 +00:00
Andreas.Eversberg a0246e07ff layer23: Use the new rach_req format in l1ctl and update l23 apps to use it
This removes an old hack

Written-by: Andreas Eversberg <jolly@eversberg.eu>
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-10-30 17:32:09 +02:00
Steve Markgraf 8f007baced layer23/mobile: Add configuration option for automatically answering calls
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2010-10-27 20:30:13 +02:00
Andreas.Eversberg 462015a91e [layer23] Adding application to scan/receive and log SYSTEM INFORMATIONS 2010-10-24 13:39:37 +00:00
Andreas.Eversberg 4d211a27b8 [layer23] Moving sysinfo.c and gps.c (.h) to liblayer23
This makes sense, since multiple applications use it.
2010-10-24 13:30:17 +00:00
Andreas.Eversberg 1ac1852ffc [layer23] Moving decoding of SYSTEM INFORMATION to sysinfo.c
This way the decoding can be re-used by other applications.
2010-10-24 12:30:37 +00:00
Andreas.Eversberg e7f6f749c4 [layer23] Fix of GPS states 2010-10-24 12:20:08 +00:00
Andreas.Eversberg f181a04121 [layer23] Completed GPS reading process
This includes "double" values of logitude and latitude, as well as time
stamp, and if the values are valid or not (GPS fix).
2010-10-20 18:09:31 +00:00
Andreas.Eversberg adf65e29fd [layer23] DTMF support 2010-10-15 18:54:57 +00:00
Andreas.Eversberg 1dd14c0b26 [layer23] Adding abbreviated dialing to VTY
It is possible to store phone numbers with abbreviations now. Dialing these
abbreviation makes testing of mobile originated calls much easier too.
2010-10-14 07:37:52 +00:00
Andreas.Eversberg 6d4915b91b [layer23] Implementation of signal loss criteria as defined in TS 05.08
There are two criterions for lossing a signal, idle mode and dedicated mode.
A counter counts down when a frame is dropped, and counts up when a valid
frame is received on  certain channel. The loss criterion is reached, if the
counter reaches 0. The values added to / removed from the counter and the
limits depend on the process.
2010-10-12 08:26:48 +00:00
Andreas.Eversberg f0c807a682 [layer23] Rework of "support"-features, features can be disabled now
Supported features of hardware (support.c) can be disabled by config.
This way the full featured mobile can be downgraded to indicate less
features to the network, like disabling speech support or crypto support.
2010-10-03 10:51:31 +00:00
Andreas.Eversberg 66ff1cb347 [layer23] Minimum RX-level is now a configuratio option
The default (if config not yet created/updated), is still taken from
settings.c.
2010-10-01 19:24:34 +00:00
Andreas.Eversberg f867cd2077 [layer23] Remove obsolete function from header file 2010-10-01 19:22:31 +00:00
Sylvain Munaut 9257fe53bf l1ctl: Add initial tch_mode value in DM_EST_REQ
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-09-28 08:04:18 +02:00
Andreas.Eversberg e97b7c418c [layer23] Alter simulated-delay via VTY on the fly (active channel) 2010-09-27 18:53:03 +00:00
Andreas.Eversberg b0336cd484 [layer23] Speech codec selection and negotiation with network 2010-09-26 17:08:10 +00:00
Andreas.Eversberg 602dcf4d0d [layer23] Added support for changing TCH mode via L1CTL messages 2010-09-26 17:06:06 +00:00
Andreas.Eversberg 4ed601ae4e [layer23] Adding application generated measurement report
The cell provides SYSTEM INFORMATION 5* and 6. These are used to create a
list of neighbor cells to monitor. Because there is no neighbor cell
monitoring supported by layer1, the list has no valid results yet.

Currently the average RX level of received frames are used to generate a new
report every second. The report is transmitted to layer1 and used there
whenever a measurement report has to be transmitted.

The timing advance and the current transmit power (as requested by network),
is included with every report.
2010-09-26 10:35:46 +00:00
Andreas.Eversberg 5e1cf12d67 [layer23] Fixed and completed SIM's PIN handling
Use VTY to handle PIN:

enable
sim pin 1 xxxx
sim change-pin 1 xxxx yyyy
sim disable-pin 1 xxxx
sim enable-pin 1 xxxx
sim unlock-pin 1 uuuuuuuu yyyy

1 = mobile station "1"
xxxx = current PIN
yyyy = new PIN
uuuuuuuu = unlock key (PuK)
2010-09-19 10:52:42 +00:00
Andreas.Eversberg 0856c8a6a5 [layer23] SIM client completion
The SIM client is now complete. Because it usefull for multiple
applications, i moved it to the layer23/src/common directory.

The SIM reader works together with mobile process. Fixes were made.
Thanx to all for testing, finding bugs, and making it work as it is
supposed to do.

The current version uses special L1CTL messages to send and receive APDUs.
This will change in the future, when BTSAP interface is completed.

Please note that this client will not work until the layer1 SIM reader
fixes and extensions are committed.
2010-09-18 19:15:15 +00:00
Andreas.Eversberg df05c6ca94 [layer23] Added BTSAP socket interface to layer23 2010-09-18 14:02:07 +00:00
Andreas.Eversberg 3816242118 [layer23] Added BTSAP socket interface to layer23 2010-09-18 13:59:52 +00:00
Andreas.Eversberg 7b3e80f64b [layer23] Added XOR and COMP128 encryption to test SIM
To define/change a key for the test SIM, use the following sequence:

conf t
ms 1
test-sim
ki comp128 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx
end
write

or use:
ki xor xx xx xx xx xx xx xx xx xx xx xx xx
2010-09-17 15:51:23 +00:00
Andreas.Eversberg b349e38838 [layer23] CM service is now accepted when ciphering has started
Sylvain pointed out that CM SERVICE ACCEPT message is not requred, if
ciphering has been completed. In this case, an RR_SYNC_IND is sent
to mobility management, and treated there as CM SERVICE ACCEPT.
2010-09-17 09:07:29 +00:00
Sylvain Munaut 02c4650af1 layer23: Move app logic in layer3.c with state struct.
It's far from perfect but at least it's not split in two file and
makes it easier to expand the logic.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-09-14 21:21:42 +02:00
Andreas.Eversberg fa686fd4c9 [layer23 / layer1] Added interface for changing crypto mode of DSP
The layer23 will now set crypto mode and key when CIPHERING MODE COMMAND is
received. After crypto mode has been set, CIPHERING MODE COMPLETE is sent.

NOTE: Layer1 implements only the interface, there is no functionality to it
yet.
2010-09-11 12:10:31 +00:00
Andreas.Eversberg 1198f35283 [layer23] SIM client accepts status code 61xx as a positive result 2010-08-30 11:43:16 +00:00
Andreas.Eversberg b0efeb81eb [layer23] "show cell 1 <arfcn>" gives better overview of cell allocation 2010-08-29 21:08:08 +00:00
Andreas.Eversberg 0d9a3b91c1 [layer23] Fixed security issue
Authentication must not be performed using SIM client, if different IMSI is
used, to protect identity of caller.
2010-08-29 11:05:07 +00:00
Andreas.Eversberg f20a1c3de8 [layer23] Layer 3 now uses SIM client to request and update SIM data
The SIM reader can be selected via VTY, but because it is not yet
implemented in layer1, nothing happens when selecting it.
2010-08-28 09:46:36 +00:00
Andreas.Eversberg 4931b324e5 [layer23] Adding SIM client
The SIM client is not the SIM reader. It is used to process higher layer
requests. One request may be: "read the IMSI file" or "unlock SIM card, here
is the key". It then selects the right file of SIM card and processes the
request by exchanging APDUs with the SIM reader.

NOTE: Because the reader inside layer 1 is not yet finished, the SIM client
will not work and cannot be tested yet.
2010-08-28 09:36:07 +00:00
Andreas.Eversberg c6a423392e [layer23] Radio ressource protocol completed except for handover, meas.
Assignment command is now complete as well as frequency redifinition.
The handover process is partly complete. Further functionality depends
on layer1 capabilites. The measurement report is also incomplete.
2010-08-21 15:10:30 +00:00
Andreas.Eversberg da65f02580 [layer23] Header file for last commit 2010-08-21 15:09:48 +00:00
Andreas.Eversberg 4337d3bb2e [layer23] Added (incomplete) ASSIGNMENT COMMAND handling
This commit features handling of ASSIGNMENT COMMAND. Currently only channel
descriptions "after time" are processed, which is mostly the case.
The ASSIGNMENT COMMAND is essential, because public networks assign an
SDCCH4/8 before actually assigning a TCH.
2010-08-14 17:10:26 +00:00
Andreas.Eversberg a5b023cd98 [layer23] Paging response depends on the supported channels: SDCCH, TCH/F, and TCH/H 2010-08-11 16:11:28 +00:00
Andreas.Eversberg cb73be0d0c Added support for NMEA GPS receiver
This early support does not use the received postion, it just dumps it.

Later it can be used to set clock of the phone. Also it can be used
to calculate the location of a BTS.
2010-08-10 19:56:59 +00:00
Andreas.Eversberg 6439e4f279 Added sequence number to L3 messages (see GSM 04.08 Clause 3.1.4.3)
This is required to detect duplicated messages during assignment or
handover. Each PDISC uses its own sequence number, but MM+CC+SS share the
same. The sequence number is only required in uplink direction.

Dieter: Please check, if your tester eats it now. Also try to trace if the
sequence number is set correctly.
2010-08-10 19:31:07 +00:00
Harald Welte 72523a02a6 [layer23] use gsm48_decode_freq_list() which has been moved into libosmocore 2010-08-04 12:53:52 +02:00
Andreas.Eversberg 85253cf06d [layer23] Correctly release a call, if not yet acknowledged by the network 2010-08-01 10:42:11 +00:00
Sylvain Munaut ef0377b11c layer23: Fix Makefile.am noinst_HEADERS for vty.h
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-07-30 01:40:03 +02:00
Sylvain Munaut 0cbd5d0139 layer23: Unify the prefix of l1ctl TX functions
Some had tx_ph_XX, others l1ctl_tx_XXX and some l1ctl_tx_ph_XXX

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-07-27 20:51:52 +02:00
Sylvain Munaut c382fbf943 include: Rename l1a_l23_interface.h to l1ctl_proto.h
The interface between l1 and upper layer is called by several
name. IMHO l1ctl is shorted and sounds good so try to unify
using that.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-07-27 20:51:29 +02:00
Sylvain Munaut 9e9f99c0a0 layer23: Split [2/2] -> The header files
This split the headers and adapt the source.

We use osmocom/bb as a prefix because libosomore also
uses osmocom and generic names such as misc & common could
conflict in the future.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-07-27 20:49:27 +02:00
Sylvain Munaut 603b8f8680 layer23/include: Remove eXecutable permission bit from gsm322.h
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-07-25 10:19:34 +02:00
Sylvain Munaut 66c3ca0527 layer23: Switch to using gsmtap_util from libosmocom
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2010-07-25 10:19:34 +02:00
Andreas.Eversberg 82fbc17d4b [layer23] Re-structured the VTY commands for SIM insert/remove
Now the commands are "sim testcard <ms> [<mcc> <mnc>] " or "sim remove <ms>"
2010-07-22 16:11:28 +00:00
Andreas.Eversberg 1f1e867edc [layer23] Several minor changes and minor fixes 2010-07-20 10:43:12 +00:00
Andreas.Eversberg 7ea81070fa [layer23] Fixed "return to IDLE" after cell re-selection.
Also remove forbidden PLMN from list when choosing cell manually.
2010-07-19 09:37:57 +00:00
Andreas.Eversberg 0f184d1dfe [layer23] Option "no location-updating" to disabled location updating
The mobile will not transmit for location updating. All networks will be
marked as "roaming not allowed", so search process continues.
2010-07-17 12:43:53 +00:00
Andreas.Eversberg 07b0abd4b3 [layer23] After location updating, the last cell is selected without search 2010-07-17 09:37:58 +00:00
Andreas.Eversberg 6aa923f003 [layer23] Added simple network monitor. Use "monitor network 1" to enable. 2010-07-16 10:52:38 +00:00
Andreas.Eversberg a806bb015a [layer23] Changed the rxlev values in gsm322.c to GSM format 2010-07-15 17:11:36 +00:00
Andreas.Eversberg 0a18f742d4 [layer23] WAIT for IDLE and layer 1 reset before power off after IMSI detach 2010-07-14 10:21:35 +00:00
Andreas.Eversberg c36cca355d [layer23] Removed the osmocom/file.h 2010-07-13 14:54:55 +00:00
Andreas.Eversberg 6ba18aeb03 [layer23] Rework of channel request process and control of TA and TX-power
The radio ressource layer uses RSL messages to perform RACH requests now.

TX power and timing advance is controlled before RACH request, after IMM.ASS,
and during dedicated mode. (Note that TX power control is not yet supported
by layer 1.)
2010-07-13 14:21:52 +00:00
Andreas.Eversberg 65df98d930 [layer23] Correcting an attribute name in sysinfo.h. 2010-07-13 14:14:54 +00:00
Andreas.Eversberg f7c137660a [layer23] Updating l1ctl.c to current L1<->L2 API. 2010-07-13 14:12:54 +00:00
Andreas.Eversberg f2b1e55c1e [layer23] Updated layer23 to current L1 support and forthcomming hopping. 2010-06-28 13:33:14 +00:00
Andreas.Eversberg 77c53d1e66 [layer23] Committed missing vty.h of last commit. 2010-06-26 16:38:07 +00:00
Andreas.Eversberg d6b1a9b10e [layer23] Removed cloned VTY and replaced it by libosmovty. 2010-06-26 14:00:29 +00:00
Andreas.Eversberg 7b84cf805b [lapdm] Added flow control between L1 and L2, so DM mode does not crash.
In dedicated mode a frame is sent to layer 1. Subsequent frames are queued
inside lapdm.c until a confirm from layer 1 is received. Since not all
pending frames are sent rapidly at once, the layer 1 does not crash anymore.

Also included in this commit: handling of reset confirm (maybe required
in the future after dedicated mode)
2010-06-26 11:12:25 +00:00
Andreas.Eversberg 4e03d6f822 [layer23] Fixed DM est./release for current supported channel types.
Now layer23 supports selecting TS 0-4 with SDCCH/8 channels.
But some tests showed me that it doesn't work. Please help debugging.

Added DM release function to l1ctl.c and gsm48_rr.c.
2010-06-26 09:35:27 +00:00