Tim is holidaying now. Can you please try with the method(if CID format is DTMF)?
/etc/asterisk/chan_dahdi.conf
usecallerid=yes
callerid=asreceived
hidecallerid=no
cidsignalling=dtmf
cidstart=polarity
/etc/modprobe.conf
options opvxa1200 cidbeforering=1 cidbuflen=2780 fixedtimepolarity=16
Perform "service dahdi restart " to have it worked.
Thanks for the help. Now I am receving the CID in my FXO line. I edited the buflen=1 and I am getting the CID. Earlier with buflen=2780 I got only 1 digit.