From e27c3f3f17009eae5f1d6585dc46b38575110591 Mon Sep 17 00:00:00 2001 From: Florian Kaltenberger Date: Mon, 12 Aug 2013 08:51:59 +0000 Subject: [PATCH] Commiting compiled firmware for new bitstream. Backwards compatibility with older bitstreams is ensured. git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4070 818b1a75-f10b-46b9-bf7c-635c3b92a50f --- .../USERSPACE/OAI_FW_INIT/sdr_expressmimo2_v9 | Bin 0 -> 226368 bytes targets/RTAI/USER/init_exmimo2.sh | 34 +++++++-- targets/RTAI/USER/lte-softmodem.c | 69 +++++++++++------- 3 files changed, 70 insertions(+), 33 deletions(-) create mode 100755 targets/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/sdr_expressmimo2_v9 diff --git a/targets/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/sdr_expressmimo2_v9 b/targets/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/sdr_expressmimo2_v9 new file mode 100755 index 0000000000000000000000000000000000000000..72956d4866edfa5a514a5ed409eb0f12332168bc GIT binary patch literal 226368 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%0DZ7`XUnb`$~LPkw0TbDCDVPB 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 AFaQ7m literal 0 HcmV?d00001 diff --git a/targets/RTAI/USER/init_exmimo2.sh b/targets/RTAI/USER/init_exmimo2.sh index e2dddcabcd..b98f6a7394 100644 --- a/targets/RTAI/USER/init_exmimo2.sh +++ b/targets/RTAI/USER/init_exmimo2.sh @@ -1,22 +1,44 @@ +#!/bin/bash + +PCI=`lspci -m | grep Xilinx` +if [ -z "$PCI" ]; then + echo "No card found. Stopping!" + retur +fi + sudo rmmod openair_rf sudo insmod $OPENAIR_TARGETS/ARCH/EXMIMO/DRIVER/eurecom/openair_rf.ko -sudo mknod /dev/openair0 c 127 0 -sudo chmod a+rw /dev/openair0 sleep 1 -#$OPENAIR_TARGETS/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/updatefw -s 0x43fffff0 -b -f $OPENAIR0_DIR/express-mimo/software/sdr/exmimo2/sdr_expressmimo2 +if [ ! -e /dev/openair0 ]; then + sudo mknod /dev/openair0 c 127 0 + sudo chmod a+rw /dev/openair0 +fi -$OPENAIR_TARGETS/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/updatefw -s 0x43fffff0 -b -f $OPENAIR_TARGETS/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/sdr_expressmimo2 +DEVICE=`echo $PCI | awk -F\" '{print $(NF-1)}' | awk '{print $2}'` +if [ $(($DEVICE%100)) == 8 ]; then + echo "Using firmware version 8" + $OPENAIR_TARGETS/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/updatefw -s 0x43fffff0 -b -f $OPENAIR_TARGETS/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/sdr_expressmimo2 +else + if [ $(($DEVICE%100)) == 9 ]; then + echo "Using firmware version 9" + #$OPENAIR_TARGETS/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/updatefw -s 0x43fffff0 -b -f $OPENAIR0_DIR/express-mimo/software/sdr/exmimo2/sdr_expressmimo2 + $OPENAIR_TARGETS/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/updatefw -s 0x43fffff0 -b -f $OPENAIR_TARGETS/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/sdr_expressmimo2_v9 + else + echo 'No corresponding firmware found' + return + fi +fi sudo rmmod nasmesh sudo insmod $OPENAIR2_DIR/NAS/DRIVER/MESH/nasmesh.ko -if [ $1 = "eNB" ]; then +if [ "$1" = "eNB" ]; then echo "bring up oai0 interface for enb" sudo ifconfig oai0 10.0.1.1 netmask 255.255.255.0 broadcast 10.0.1.255 $OPENAIR2_DIR/NAS/DRIVER/MESH/RB_TOOL/rb_tool -a -c0 -i0 -z0 -s 10.0.1.1 -t 10.0.1.9 -r 3 else - if [ $1 = "UE" ]; then + if [ "$1" = "UE" ]; then echo "bring up oai0 interface for UE" sudo ifconfig oai0 10.0.1.9 netmask 255.255.255.0 broadcast 10.0.1.255 $OPENAIR2_DIR/NAS/DRIVER/MESH/RB_TOOL/rb_tool -a -c0 -i0 -z0 -s 10.0.1.9 -t 10.0.1.1 -r 3 diff --git a/targets/RTAI/USER/lte-softmodem.c b/targets/RTAI/USER/lte-softmodem.c index f966ba7086..7c333719b9 100644 --- a/targets/RTAI/USER/lte-softmodem.c +++ b/targets/RTAI/USER/lte-softmodem.c @@ -897,8 +897,8 @@ int main(int argc, char **argv) { u32 rf_mode_byp[4] = {22991,22991,22991,22991}; */ u32 my_rf_mode = RXEN + TXEN + TXLPFNORM + TXLPFEN + TXLPF25 + RXLPFNORM + RXLPFEN + RXLPF25 + LNA1ON +LNAMax + RFBBNORM + DMAMODE_RX + DMAMODE_TX; - u32 my_rf_mode2 = RXEN + TXLPFNORM + TXLPFEN + TXLPF25 + RXLPFNORM + RXLPFEN + RXLPF25 + LNA1ON +LNAMax + RFBBNORM + DMAMODE_RX; - u32 rf_mode[4] = {my_rf_mode,my_rf_mode2,0,0}; + u32 rf_mode_base = TXLPFNORM + TXLPFEN + TXLPF25 + RXLPFNORM + RXLPFEN + RXLPF25 + LNA1ON +LNAMax + RFBBNORM; + u32 rf_mode[4] = {my_rf_mode,0,0,0}; u32 rf_local[4] = {8255000,8255000,8255000,8255000}; // UE zepto //{8254617, 8254617, 8254617, 8254617}; //eNB khalifa //{8255067,8254810,8257340,8257340}; // eNB PETRONAS @@ -1096,9 +1096,28 @@ int main(int argc, char **argv) { frame_parms->Ncp_UL = 0; frame_parms->Nid_cell = Nid_cell; frame_parms->nushift = 0; - frame_parms->nb_antennas_tx_eNB = 1; //initial value overwritten by initial sync later - frame_parms->nb_antennas_tx = (UE_flag==0) ? 1 : 1; - frame_parms->nb_antennas_rx = (UE_flag==0) ? 1 : 1; + if (UE_flag==0) { + switch (transmission_mode) { + case 1: + frame_parms->nb_antennas_tx = 1; + frame_parms->nb_antennas_rx = 1; + break; + case 2: + case 5: + case 6: + frame_parms->nb_antennas_tx = 2; + frame_parms->nb_antennas_rx = 1; + break; + default: + printf("Unsupported transmission mode %d\n",transmission_mode); + exit(-1); + } + } + else { //UE_flag==1 + frame_parms->nb_antennas_tx = 1; + frame_parms->nb_antennas_rx = 1; + } + frame_parms->nb_antennas_tx_eNB = (transmission_mode == 1) ? 1 : 2; //initial value overwritten by initial sync later frame_parms->mode1_flag = (transmission_mode == 1) ? 1 : 0; frame_parms->frame_type = 1; frame_parms->tdd_config = 3; @@ -1269,7 +1288,7 @@ int main(int argc, char **argv) { openair_daq_vars.ue_dl_rb_alloc=0x1fff; openair_daq_vars.target_ue_dl_mcs=20; openair_daq_vars.ue_ul_nb_rb=6; - openair_daq_vars.target_ue_ul_mcs=11; + openair_daq_vars.target_ue_ul_mcs=12; // if AGC is off, the following values will be used // for (i=0;i<4;i++) @@ -1309,13 +1328,24 @@ int main(int argc, char **argv) { printf("Card %d: ExpressMIMO %d, HW Rev %d, SW Rev 0x%d\n", card, p_exmimo_id->board_exmimoversion, p_exmimo_id->board_hwrev, p_exmimo_id->board_swrev); - p_exmimo_config->framing.eNB_flag = !UE_flag; - p_exmimo_config->framing.tdd_config = 0; + if (p_exmimo_id->board_swrev>=BOARD_SWREV_CNTL2) + p_exmimo_config->framing.eNB_flag = 0; + else + p_exmimo_config->framing.eNB_flag = !UE_flag; + p_exmimo_config->framing.tdd_config = DUPLEXMODE_FDD + TXRXSWITCH_LSB; p_exmimo_config->framing.resampling_factor = 2; + + for (ant=0;antnb_antennas_tx,frame_parms->nb_antennas_rx);ant++) + p_exmimo_config->rf.rf_mode[ant] = rf_mode_base; + for (ant=0;antnb_antennas_tx;ant++) + p_exmimo_config->rf.rf_mode[ant] += (TXEN + DMAMODE_TX); + for (ant=0;antnb_antennas_rx;ant++) + p_exmimo_config->rf.rf_mode[ant] += (RXEN + DMAMODE_RX); + for (ant=max(frame_parms->nb_antennas_tx,frame_parms->nb_antennas_rx);ant<4;ant++) { + p_exmimo_config->rf.rf_mode[ant] = 0; + carrier_freq[ant] = 0; //this turns off all other LIMEs + } - carrier_freq[1] = 0; //don't use this LIME for card 1 - carrier_freq[2] = 0; //don't use this LIME for card 1 - carrier_freq[3] = 0; //don't use this LIME for card 1 for (ant = 0; ant<4; ant++) { p_exmimo_config->rf.do_autocal[ant] = 1; p_exmimo_config->rf.rf_freq_rx[ant] = carrier_freq[ant]; @@ -1340,21 +1370,6 @@ int main(int argc, char **argv) { p_exmimo_config->rf.rffe_gain_rxfinal[ant] = 63; p_exmimo_config->rf.rffe_gain_rxlow[ant] = 63; } - if (UE_flag) { - p_exmimo_config->rf.rf_mode[0] = my_rf_mode; - p_exmimo_config->rf.rf_mode[1] = 0; - //p_exmimo_config->rf.rf_mode[1] = my_rf_mode; - p_exmimo_config->rf.rf_mode[2] = 0; - p_exmimo_config->rf.rf_mode[3] = 0; - } - else { - p_exmimo_config->rf.rf_mode[0] = my_rf_mode; - p_exmimo_config->rf.rf_mode[1] = 0; - //p_exmimo_config->rf.rf_mode[1] = my_rf_mode; - p_exmimo_config->rf.rf_mode[2] = 0; - p_exmimo_config->rf.rf_mode[3] = 0; - } - dump_frame_parms(frame_parms); @@ -1410,7 +1425,7 @@ int main(int argc, char **argv) { for (aa=0; aanb_antennas_tx; aa++) PHY_vars_UE_g[0]->lte_ue_common_vars.txdata[aa][i] = 0x00010001; - p_exmimo_config->framing.tdd_config = TXRXSWITCH_TESTRX; + //p_exmimo_config->framing.tdd_config = TXRXSWITCH_TESTRX; } else { setup_eNB_buffers(PHY_vars_eNB_g[0],frame_parms,0);