This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

"invalid response length" in RIL implement on Android 4.0.3

Dear all,

     I am porting android ICS 4.0.3 on beagleboard XM rev B. I enabled telephony function via UART2. My problem:
     In reference-ril.c[void requestSignalStrength],to get signal strength, RIL used AT command "AT+CSQ", and get 2 integer number in response[2], so size of reponse is 8 (bytes). And then, in ril.cpp[int responseRilSignalStrength], wrote as below:
    

  if (responselen >= sizeof (RIL_SignalStrength_v5)), but responselen is 8 bytes and sizeof (RIL_SignalStrength_v5) is 28 bytes
 So, the function printed "invalid response length" to LOGI, cannot initialize success.

I tried edit code in reference-ril.c[void requestSignalStrength] to size of response = 28 bytes as below:
int response[7]={0,0,0,0,75,125,8};
And result log is:
D/AT      ( 1017): AT> AT+CSQ
D/AT      ( 1017): AT< +CSQ: 27,99 D/AT      ( 1017): AT< OK
  D/RILJ    ( 1225): [0211]< SIGNAL_STRENGTH {27, 99, 0, 0, 75, 125, 8}
D/RILB    ( 1225): getLteOnCdmaMode=0 curVal=-1 product_type=''lteOnCdmaProductType=''
D/RILB    ( 1225): getLteOnCdmaMode=0 curVal=-1 product_type=''lteOnCdmaProductType=''

RIL framework send AT+CSQ as soon as power off beagleboard XM.

Please help me fix this problem to can call/sms via beagleboard.

   Reagard,
Thanks,
Thanh Truong