*update target and ASN1 readmes *update oai test cases git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4513 818b1a75-f10b-46b9-bf7c-635c3b92a50f
46 lines
2.6 KiB
Plaintext
46 lines
2.6 KiB
Plaintext
This directory contains the necessary scripts and Makefiles to generate all the LTE configuration data structures based on the ASN.1 RRC
|
|
source code from the 36.331 RRC specifications. These structures are used by MAC and PHY for configuration purposes.
|
|
|
|
It contains the following files
|
|
|
|
README.txt : This file
|
|
Makefile.inc : Makefile to be included by OpenAir compilation scripts for LTE Data structures
|
|
asn1c : Directory to place asn1c package
|
|
asn1c/ASN1_files/36331-860.txt : Text file containing 36.331-860 specifications used to generate ASN1 source
|
|
asn1c/ASN1_files/extract_asn1_from_spec.pl : Pearl script to extract ASN.1 source from 36311-860.txt
|
|
asn1c/ASN1_files/EUTRA-RRC-Definitions.asn : First ASN.1 source (generated from above .txt file)
|
|
asn1c/ASN1_files/EUTRA-InterNodeDefinitions.asn .asn : Second ASN.1 source (generated from above .txt file)
|
|
asn1c/ASN1_files/EUTRA-UE-Variables.asn : Third ASN.1 source (generated from above .txt file)
|
|
|
|
Instructions to build data structures from ASN1 sources
|
|
|
|
The three files have already been built using the extract_asn1_from_spec.pl Pearl script. This should be used again if a newer version
|
|
of the RRC spec is used to synthesize the data structures and encoding/decoding routines. To do this:
|
|
1. use Microsoft WORD to generate a text version of the 3GPP 36.331 document
|
|
2. run the script on the text file to generate the three files.
|
|
|
|
Now download the asn1c utility (version 0.9.22) from
|
|
|
|
http://lionet.info/asn1c/blog/
|
|
|
|
or via svn from sourceforge (version 0.9.22)
|
|
|
|
For version 0.9.2:
|
|
svn co https://asn1c.svn.sourceforge.net/svnroot/asn1c/trunk asn1c
|
|
For the latest version:
|
|
svn co https://github.com/vlm/asn1c/trunk asn1c
|
|
|
|
and put it in the asn1c directory (you should have a second asn1c directory now). Compile it and install it locally
|
|
(or make sure your $PATH can find the asn1c executable) according to the instructions given (see INSTALL file)
|
|
by the author. We have validated that 0.9.22 works on Linux and Cygwin. To generate the data structures do the following from the
|
|
current directory
|
|
|
|
asn1c -gen-PER -fcompound-names -fnative-types -fskeletons-copy ./asn1c/ASN1_files/EUTRA-RRC-Definitions.asn
|
|
|
|
Note this only uses one of the three files from 36.331 (the core of the RRC). After this step you should have many .c and .h files
|
|
and one new Makefile, the latter of which is not used.
|
|
|
|
If you want to compile the ASN1 sources as a kernel module you need to apply the patch asn1_patch
|
|
|
|
patch -p1 < asn1_patch
|