FreeCalypso > hg > freecalypso-sw
changeset 665:39bacc7d5c49
gsm-fw: starting to compile comlib
author | Michael Spacefalcon <msokolov@ivan.Harhan.ORG> |
---|---|
date | Sun, 28 Sep 2014 05:42:46 +0000 |
parents | d36f647c2432 |
children | 8f9389e59ca2 |
files | gsm-fw/comlib/Makefile gsm-fw/comlib/cl_des.c gsm-fw/include/condat/cl_des.h gsm-fw/include/fixedconf.h |
diffstat | 4 files changed, 50 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gsm-fw/comlib/Makefile Sun Sep 28 05:42:46 2014 +0000 @@ -0,0 +1,17 @@ +CC= arm-elf-gcc +AR= arm-elf-ar +RANLIB= arm-elf-ranlib + +CFLAGS= -O2 -fno-builtin -mthumb-interwork -mthumb +CPPFLAGS=-I../include -I../include/condat -I../gpf/inc -I../cdginc + +OBJS= cl_des.o cl_imei.o cl_list.o cl_md5.o cl_ribu.o cl_rlcmac.o cl_shrd.o + +all: comlib.a + +comlib.a: ${OBJS} + ${AR} cru $@ ${OBJS} + ${RANLIB} $@ + +clean: + rm -f *.[oa] *errs
--- a/gsm-fw/comlib/cl_des.c Sun Sep 28 05:09:53 2014 +0000 +++ b/gsm-fw/comlib/cl_des.c Sun Sep 28 05:42:46 2014 +0000 @@ -33,11 +33,6 @@ #ifndef CL_DES_C #define CL_DES_C -/* - * DES routine is used only on Calypso platform - */ -#if defined(CL_IMEI_CALYPSO_PLATFORM) && defined(FF_PROTECTED_IMEI) - #include <string.h> #include "typedefs.h" #include "cl_des.h" @@ -50,26 +45,34 @@ static UBYTE rnew[64] , xorres[64] , scale[32] , perm[32] , rl[64] , encpt[64]; /* 64+16+48+64+48+32+64+8*66 = 864 bytes */ +static const UBYTE shtamt[16] = {1,1,2,2,2,2,2,2,1,2,2,2,2,2,2,1}; +static const UBYTE iporder[64] = {58,50,42,34,26,18,10,2,60,52,44,36,28,20,12,4,62,54, 46,38,30,22,14,6,64,56,48,40,32,24,16,8,57,49,41,33, 25,17,9,1,59,51,43,35,27,19,11,3,61,53,45,37,29,21, 13,5,63,55,47,39,31,23,15,7}; +static const UBYTE pc1[64] = {57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43, 35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54, 46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4}; +static const UBYTE pc2[48] = {14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8, 16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33, 48,44,49,39,56,34,53,46,42,50,36,29,32}; +static const UBYTE e[48] = {32,1,2,3,4,5,4,5,6,7,8,9,8,9,10,11,12,13,12,13,14,15, 16,17,16,17,18,19,20,21,20,21,22,23,24,25,24,25,26,27, 28,29,28, 29,30,31,32,1}; +static const UBYTE sp[32] = {16,7,20,21,29,12,28,17,1,15,23,26,5,18,31,10, 2,8,24,14,32,27,3,9,19,13,30,6,22,11,4,25}; +static const UBYTE ipinv[64] = {40,8,48,16,56,24,64,32,39,7,47,15,55,23,63,31,38,6,46, 14,54,22,62,30,37,5,45,13,53,21,61,29,36,4,44,12,52, 20,60,28,35,3,43,11,51,19,59,27,34,2,42,10,50,18,58, 26,33,1,41,9,49,17,57,25}; +static const UBYTE s[8][66] = {{14,4,13,1,2,15,11,8,3,10,6,12,5,9,0,7,0,15,7,4,14,2,13, 1,10,6,12,11,9,5,3,8,4,1,14,8,13,6,2,11,15,12,9,7,3,10, 5,0,15,12,8,2,4,9,1,7,5,11,3,14,10,0,6,13}, @@ -364,5 +367,4 @@ outMsgPtr[z] = des_bin2hex(&encpt[8 * z]); } } -#endif /* CL_IMEI_CALYPSO_PLATFORM */ -#endif /* CL_DES_C */ \ No newline at end of file +#endif /* CL_DES_C */
--- a/gsm-fw/include/condat/cl_des.h Sun Sep 28 05:09:53 2014 +0000 +++ b/gsm-fw/include/condat/cl_des.h Sun Sep 28 05:42:46 2014 +0000 @@ -34,8 +34,6 @@ #define CL_DES_ENCRYPTION 1 #define CL_DES_DECRYPTION 2 -#if defined(CL_IMEI_CALYPSO_PLATFORM) && defined(FF_PROTECTED_IMEI) - /* +------------------------------------------------------------------------------ | Function : cl_des @@ -54,5 +52,4 @@ /**********************************************************************************/ -#endif #endif /* CL_DES_H */
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gsm-fw/include/fixedconf.h Sun Sep 28 05:42:46 2014 +0000 @@ -0,0 +1,24 @@ +/* + * This header file is a FreeCalypso addition, and it is intended to serve + * as a workaround for TI's habit of requiring a ton of -D options to be + * supplied on the compilation line for every single module. + * + * I am just now beginning to integrate the G23 protocol stack. L1, GPF and + * CCD have already been integrated, and thus predate the addition of this + * header file. However, I expect that all G23 code that uses the headers + * under include/condat (which used to be g23m/condat/com/include) will need + * to include this FreeCalypso header as well, starting with comlib. + * + * The definitions set here have been taken from TCS211 pdt_*.mak makefiles. + * They are given as -D options when compiling every module in the group + * just described, and are obviously constant, as in independent of any + * possible target or feature configuration. + */ + +#define _TARGET_ 1 +#define ALR 1 +#define CCDTABLES_EXTERN 1 +#define NEW_ENTITY 1 +#define NEW_FRAME 1 +#define OPTION_MULTITHREAD 1 +#define SHARED_VSI 1