2012年6月26日火曜日

a very rough overview of all the ril functions.

this is a very rough overview of all the ril functions.
the ril functions are in ril.dll, ril.dll opens the device "RIL1:", which is handled by rilgsm.dll.
rilgsm.dll opens COM2: and COM9: which are handled by serial2.dll and serial3.dll

The headerfile (ril.h) describing ril can be found here

here is a wiki page with the same information.

a file demonstrating how to use the RIL api: RilClass.cpp

"; -" means I did not find any obvious at commands related to it, maybe the function is not implemented
"?" means I did not see this ioctl implemented

ril function rilgsm ioctl paramsize at commands
0x03000000 ?
IOCTL_RIL_REGISTERWITHCPM 0x03000004 ; -
IOCTL_RIL_EMERGENCYSTATUS 0x03000008 ; -
0x0300000c ?
IOCTL_RIL_INITNOTIFICATIONS 0x03000010 ; "%s%x"
IOCTL_RIL_GETNEXTNOTIFICATION 0x03000014 ; -
RIL_GetSerialPortStatistics IOCTL_RIL_GETSERIALPORTSTATISTICS 0x03000018 0x0010 ; -
RIL_GetSubscriberNumbers IOCTL_RIL_GETSUBSCRIBERNUMBERS 0x0300001c ; "AT+CNUM\r"
RIL_GetOperatorList IOCTL_RIL_GETOPERATORLIST 0x03000020 ; "AT+COPS=?\r"
RIL_GetPreferredOperatorList IOCTL_RIL_GETPREFERREDOPERATORLIST 0x03000024 ; "AT+CPOL=,%u;+CPOL?\r"
RIL_AddPreferredOperator IOCTL_RIL_ADDPREFERREDOPERATOR 0x03000028 0x004c ; "AT+CPOL=," ; "AT+CPOL=%u,"
RIL_RemovePreferredOperator IOCTL_RIL_REMOVEPREFERREDOPERATOR 0x0300002c 0x0004 ; "AT+CPOL=%u\r"
RIL_GetCurrentOperator IOCTL_RIL_GETCURRENTOPERATOR 0x03000030 ; "AT+COPS=3,%u;+COPS?\r"
RIL_RegisterOnNetwork IOCTL_RIL_REGISTERONNETWORK 0x03000034 0x004c ; "AT+COPS=%u"
RIL_UnregisterFromNetwork IOCTL_RIL_UNREGISTERFROMNETWORK 0x03000038 ; "AT+COPS=2\r"
RIL_GetRegistrationStatus IOCTL_RIL_GETREGISTRATIONSTATUS 0x0300003c ; "AT+CREG?\r"
0x03000040 ?
RIL_GetCallerIdSettings IOCTL_RIL_GETCALLERIDSETTINGS 0x03000044 ; "AT+CLIP?\r"
RIL_SetCallerIdStatus IOCTL_RIL_SETCALLERIDSTATUS 0x03000048 0x0004 ; "AT+CLIP=%d\r"
RIL_GetHideIdSettings IOCTL_RIL_GETHIDEIDSETTINGS 0x0300004c ; "AT+CLIR?\r"
RIL_SetHideIdStatus IOCTL_RIL_SETHIDEIDSTATUS 0x03000050 ; "AT+CLIR=%u\r"
RIL_GetDialedIdSettings IOCTL_RIL_GETDIALEDIDSETTINGS 0x03000054 ; "AT+COLP?\r"
RIL_SetDialedIdStatus IOCTL_RIL_SETDIALEDIDSTATUS 0x03000058 0x0004 ; "AT+COLP=%d\r"
RIL_GetClosedGroupSettings IOCTL_RIL_GETCLOSEDGROUPSETTINGS 0x0300005c ; "AT+CCUG?\r"
RIL_SetClosedGroupSettings IOCTL_RIL_SETCLOSEDGROUPSETTINGS 0x03000060 0x0014 ; "AT+CCUG=%u"
RIL_GetCallForwardingSettings IOCTL_RIL_GETCALLFORWARDINGSETTINGS 0x03000064 0x0008 ; "AT" ; "D##%s" ; "D*#%s" ; "D*%s" ; "%s**%u#" ; "D#%s" ; "%s#"
RIL_AddCallForwarding IOCTL_RIL_ADDCALLFORWARDING 0x03000068 0x0434 ; "AT" "AT" ; "+CCFC=%u,3,\"%s\",%u,%u"
RIL_RemoveCallForwarding IOCTL_RIL_REMOVECALLFORWARDING 0x0300006c 0x0008 ; "AT" ; "D##%s" ; "D*#%s" ; "D*%s" ; "%s**%u#" ; "D#%s" ; "%s#"
RIL_SetCallForwardingStatus IOCTL_RIL_SETCALLFORWARDINGSTATUS 0x03000070 0x000c ; "AT" "AT" ; "+CCFC=%u,%u,,,%u"
RIL_GetCallWaitingSettings IOCTL_RIL_GETCALLWAITINGSETTINGS 0x03000074 0x0004 ; "AT+CCWA=1,2\r" ; "AT+CCWA=1,2,%u\r"
RIL_SetCallWaitingStatus IOCTL_RIL_SETCALLWAITINGSTATUS 0x03000078 0x0008 ; "ATD%c43#" ; "ATD%c43*%u#"
RIL_SendSupServiceData IOCTL_RIL_SENDSUPSERVICEDATA 0x0300007c ? ; "ATD%s\r"
RIL_CancelSupServiceDataSession IOCTL_RIL_CANCELSUPSERVICEDATASESSION 0x03000080 ; "AT+CUSD=2\r"
RIL_Dial IOCTL_RIL_DIAL 0x03000084 0x0108 ; "AT+CBST=%u,%u,%u\r" ; "AT+CBST=71,0,1\r" ; "ATA\r" ; "AT+CBST=7,0,1\r"
RIL_Answer IOCTL_RIL_ANSWER 0x03000088 ; "ATA\r"
RIL_Hangup IOCTL_RIL_HANGUP 0x0300008c ; "at%%talk=%d,%x\r" ; "ATH\r"
RIL_SendDTMF IOCTL_RIL_SENDDTMF 0x03000090 0x0104 ; "AT" ; "\r" ; "+VTS=%c;"
RIL_SetDTMFMonitoring IOCTL_RIL_SETDTMFMONITORING 0x03000094 0x0004 ; -
0x03000098 ?
0x0300009c ?
RIL_GetCallList IOCTL_RIL_GETCALLLIST 0x030000a0 ; "AT+CLCC\r"
RIL_ManageCalls IOCTL_RIL_MANAGECALLS 0x030000a4 0x0008 ; "AT+CHLD=0\r" ; "AT+CHLD=1\r" ; "AT\r" ; "AT+CHLD=1%u\r" ; "AT+CHLD=2\r" ; "AT+CHLD=2%u\r" ; "AT+CHLD=3\r" ; "AT+CHLD=4\r" ; "AT+CHLD=5\r"
RIL_TransferCall IOCTL_RIL_TRANSFERCALL 0x030000a8 0x0420 ; "AT+CTFR=\"%s\",%u"
RIL_GetLineStatus IOCTL_RIL_GETLINESTATUS 0x030000ac ; "AT+CPAS\r"
RIL_GetAudioGain IOCTL_RIL_GETAUDIOGAIN 0x030000b0 ; "AT\r"
RIL_SetAudioGain IOCTL_RIL_SETAUDIOGAIN 0x030000b4 ; "$AU=%u" ; "$AD=%u" ; "AT"
RIL_GetAudioDevices IOCTL_RIL_GETAUDIODEVICES 0x030000b8 ; -
RIL_SetAudioDevices IOCTL_RIL_SETAUDIODEVICES 0x030000bc 0x0010 ; DeviceIoControl("WAV1:", 0x001d000c, {0, 0x65, 0, ?1, 0}, 0x14}, 0x14, sp+0x18, 0x14, sp+0x10, 0)
RIL_GetAudioMuting IOCTL_RIL_GETAUDIOMUTING 0x030000c0 ; "AT+CMUT?\r"
RIL_SetAudioMuting IOCTL_RIL_SETAUDIOMUTING 0x030000c4 0x0004 ; "AT+CMUT=%u\r"
RIL_GetHSCSDOptions IOCTL_RIL_GETHSCSDOPTIONS 0x030000c8 ; "AT+CHST?;+CHSN?;+CHSU?\r"
RIL_SetHSCSDOptions IOCTL_RIL_SETHSCSDOPTIONS 0x030000cc 0x0024 ; "AT+CHST=" ; ";+CHSU=%u" ; ";+CHSN="
RIL_GetHSCSDCallSettings IOCTL_RIL_GETHSCSDCALLSETTINGS 0x030000d0 ; "AT+CHSC\r"
RIL_GetDataCompression IOCTL_RIL_GETDATACOMPRESSION 0x030000d4 ; "AT+DS?\r"
RIL_SetDataCompression IOCTL_RIL_SETDATACOMPRESSION 0x030000d8 0x0000 ; "AT+DS="
RIL_GetErrorCorrection IOCTL_RIL_GETERRORCORRECTION 0x030000dc ; "AT+ES?\r"
RIL_SetErrorCorrection IOCTL_RIL_SETERRORCORRECTION 0x030000e0 0x0014 ; "AT+ES="
RIL_GetBearerServiceOptions IOCTL_RIL_GETBEARERSERVICEOPTIONS 0x030000e4 ; "AT+CBST?\r"
RIL_SetBearerServiceOptions IOCTL_RIL_SETBEARERSERVICEOPTIONS 0x030000e8 0x0014 ; "AT+CBST="
RIL_GetRLPOptions IOCTL_RIL_GETRLPOPTIONS 0x030000ec ; "AT+CRLP?\r"
RIL_SetRLPOptions IOCTL_RIL_SETRLPOPTIONS 0x030000f0 ; "AT+CRLP="
RIL_GetMsgServiceOptions IOCTL_RIL_GETMSGSERVICEOPTIONS 0x030000f4 ; "AT+CSMS?;+CPMS?\r"
RIL_SetMsgServiceOptions IOCTL_RIL_SETMSGSERVICEOPTIONS 0x030000f8 0x0034 ; "+CPMS=" ; "+CSMS=%u" ; "AT"
RIL_GetMsgConfig IOCTL_RIL_GETMSGCONFIG 0x030000fc ; "AT+CSCA?\r"
RIL_SetMsgConfig IOCTL_RIL_SETMSGCONFIG 0x03000100 0x0218 ; ";+CSAS\r" ; "+CSCA=\"%s\",%u" ; "AT"
0x03000104 ?
0x03000108 ?
0x0300010c ?
RIL_ReadMsg IOCTL_RIL_READMSG 0x03000110 0x0004 ; "AT+CMGR=%u\r"
RIL_DeleteMsg IOCTL_RIL_DELETEMSG 0x03000114 0x0004 ; "AT+CMGD=%u\r"
RIL_WriteMsg IOCTL_RIL_WRITEMSG 0x03000118 0x0688 ; "AT+CMGW=%u,%u\r%s"
RIL_SendMsg IOCTL_RIL_SENDMSG 0x0300011c 0x0688 ; "CMGC" ; "AT+CMMS=1;+%s=%u\r%s" ; "CMGS" ; "AT+%s=%u\r%s"
RIL_SendStoredMsg IOCTL_RIL_SENDSTOREDMSG 0x03000120 0x0008 ; "AT+CMSS=%u\r" ; "AT+CMMS=1;+CMSS=%u\r"
RIL_SendMsgAcknowledgement IOCTL_RIL_SENDMSGACKNOWLEDGEMENT 0x03000124 0x0004 ; "AT+CNMA=%u\r"
RIL_GetUserIdentity IOCTL_RIL_GETUSERIDENTITY 0x03000128 ; "AT+CIMI\r"
RIL_GetPhoneLockedState IOCTL_RIL_GETPHONELOCKEDSTATE 0x0300012c ; "AT+CPIN?\r"
RIL_UnlockPhone IOCTL_RIL_UNLOCKPHONE 0x03000130 0x0204 ; "AT+CPIN=\"%s\""
RIL_GetLockingStatus IOCTL_RIL_GETLOCKINGSTATUS 0x03000134 0x0108 ; "AT+CLCK=\"%s\",2,\"%s\"\r" ; "AT+CLCK=\"%s\",2\r"
RIL_SetLockingStatus IOCTL_RIL_SETLOCKINGSTATUS 0x03000138 0x010c ; "AT+CLCK=\"%s\",%u,\"%s\"\r" ; "AT+CLCK=\"%s\",%u\r"
RIL_ChangeLockingPassword IOCTL_RIL_CHANGELOCKINGPASSWORD 0x0300013c 0x0208 ; "AT+CPWD=\"%s\",\"%s\",\"%s\"\r" ; "ATD**05%s*%s*%s*%s#\r"
RIL_GetCallBarringStatus IOCTL_RIL_GETCALLBARRINGSTATUS 0x03000140 0x010c ; "ATD*#%u" ; "ATD*%u" ; "%s*%u#" ; "%s*%s" ; "ATD#%u" ; "%s#" ; "AT+CLCK=\"%s\",2"
RIL_SetCallBarringStatus IOCTL_RIL_SETCALLBARRINGSTATUS 0x03000144 0x0110 ; "ATD*#%u" ; "ATD*%u" ; "%s*%u#" ; "%s*%s" ; "ATD#%u" ; "%s#" ; "AT+CLCK=\"%s\",%u"
RIL_ChangeCallBarringPassword IOCTL_RIL_CHANGECALLBARRINGPASSWORD 0x03000148 0x0204 ; "ATD*03*330*%s*%s*%s#\r" ; "AT+CPWD=\"%s\",\"%s\",\"%s\"\r"
RIL_GetEquipmentInfo IOCTL_RIL_GETEQUIPMENTINFO 0x0300014c ; "AT%CGMI;%CGMN;%CGMR;%CGSN\r"
RIL_GetEquipmentState IOCTL_RIL_GETEQUIPMENTSTATE 0x03000150 ; "AT+CFUN?\r"
RIL_SetEquipmentState IOCTL_RIL_SETEQUIPMENTSTATE 0x03000154 ; "AT%%SATC=1,FFFFFF7F00000010;+CFUN=%u\r" ; "AT+CFUN=%u\r"
RIL_GetPhonebookOptions IOCTL_RIL_GETPHONEBOOKOPTIONS 0x03000158 ; "AT+CPBS?\r"
RIL_SetPhonebookOptions IOCTL_RIL_SETPHONEBOOKOPTIONS 0x0300015c 0x0014 ; "AT+CPBS=\"%s\"\r"
RIL_ReadPhonebookEntries IOCTL_RIL_READPHONEBOOKENTRIES 0x03000160 0x0008 ; "AT+CPBR=%u,%u\r"
RIL_WritePhonebookEntry IOCTL_RIL_WRITEPHONEBOOKENTRY 0x03000164 0x041c ; "AT+CPBW=,\"%s\",%u" ; "AT+CPBW=%u,\"%s\",%u"
RIL_DeletePhonebookEntry IOCTL_RIL_DELETEPHONEBOOKENTRY 0x03000168 0x0004 ; "AT+CPBW=%u\r"
0x0300016c ?
RIL_SendSimCmd IOCTL_RIL_SENDSIMCMD 0x03000170 ? ; -
RIL_SendRestrictedSimCmd IOCTL_RIL_SENDRESTRICTEDSIMCMD 0x03000174 ? ; "AT+CRSM=%u"
RIL_GetSimRecordStatus IOCTL_RIL_GETSIMRECORDSTATUS 0x03000178 0x0004 ; "AT+CRSM=%u"
RIL_GetSimToolkitProfile IOCTL_RIL_GETSIMTOOLKITPROFILE 0x0300017c ; "AT%SATC?\r"
RIL_SetSimToolkitProfile IOCTL_RIL_SETSIMTOOLKITPROFILE 0x03000180 ? ; ";+CFUN=1\r" ; "AT%SATC=1,"
RIL_SendSimToolkitEnvelopeCmd IOCTL_RIL_SENDSIMTOOLKITENVELOPECMD 0x03000184 ? ; "AT%SATE="
RIL_FetchSimToolkitCmd IOCTL_RIL_FETCHSIMTOOLKITCMD 0x03000188 ; -
RIL_SendSimToolkitCmdResponse IOCTL_RIL_SENDSIMTOOLKITCMDRESPONSE 0x0300018c ? ; "AT%SATR="
RIL_TerminateSimToolkitSession IOCTL_RIL_TERMINATESIMTOOLKITSESSION 0x03000190 0x0004 ; "AT%%SATT=%u\r"
RIL_GetCostInfo IOCTL_RIL_GETCOSTINFO 0x03000194 ; "AT+CAOC=0;+CACM?;+CAMM?;+CPUC?\r"
RIL_SetCostInfo IOCTL_RIL_SETCOSTINFO 0x03000198 0x031c ; "+CPUC=\"%s\",\"%u.%.4u\"" ; "+CAMM=%u" ; "+CACM=" ; "AT"
RIL_GetSignalQuality IOCTL_RIL_GETSIGNALQUALITY 0x0300019c ; "AT\r" ; "AT+CSQ\r"
RIL_GetCellTowerInfo IOCTL_RIL_GETCELLTOWERINFO 0x030001a0 ; -
RIL_DevSpecific IOCTL_RIL_DEVSPECIFIC 0x030001a4 ; "AT$V0\r" ; "AT%SIDCNT\r" ; "AT%SIDCLN\r" ; "AT%%SID=%u\r" ; "AT%SIDCHK\r" ; "AT%%SID?%u\r" ; "AT%SIDLCK?\r" ; "AT%%SIDLCK=0,%s\r" ; "AT%%SIDLCK=1,%s\r" ; "AT%%talk?%u\r" ; "AT%%CHGDUAL\r" ; "AT%%CHG1900\r" ; "AT%%CHG900\r" ; "AT%BAND\r" ; "AT%EMINIT\r" ; "AT%EMEXIT\r" ; "AT%EMREAD\r" ; "AT%%CPRIM=\"CST\",\"CONFIG L1_PARAMS=<0,%X"... ; "AT%%L1T=1\r" ; "CellBroadCastMessageRoute" ; "AT%%CGPPP=%u\r" ; "AT%CNTGID\r" ; "AT%CLNGID\r" ; "AT%%GID=%s\r" ; "AT%%CHKGID?%s\r" ; "AT%%GID?%u\r" ; "AT%LCKGID?\r" ; "AT%%LCKGID=0,%s\r" ; "AT%%LCKGID=1,%s\r" ; "AT%LCKGID=?\r"
RIL_GetDevCaps IOCTL_RIL_GETDEVCAPS 0x030001a8 0x0004 ; "AT+VTD=?\r" ; "AT+CHLD=?\r" ; "AT+CBST=?\r" ; "AT+CRLP=?\r" ; "AT+CFUN=?\r" ; "AT+CPBS=?\r" ; "AT+CPBR=?\r" ; "AT+CPBF=?\r" ; "AT+CSMS=?\r" ; "AT+CPMS=?\r" ; "AT+CMGL=?\r" ; "AT+CPOL=?\r" ; "AT+CLCK=?\r" ; "AT+CPWD=?\r" ; "AT+CCFC=?\r" ; "AT+CHSD;+CHSN=?\r" ; "AT+CGCLASS=?\r" ; "AT+CGDCONT=?\r" ; "AT+CGQREQ=?\r" ; "AT+CGQMIN=?\r" ; "AT+CGSMS=?\r" ; "AT+DS=?\r" ; "AT+ES=?\r"
RIL_GetHideConnectedIdSettings IOCTL_RIL_GETHIDECONNECTEDIDSETTINGS 0x030001ac ; -
RIL_SetHideConnectedIdStatus IOCTL_RIL_SETHIDECONNECTEDIDSTATUS 0x030001b0 ; -
0x030001b4 ?
0x030001b8 ?
0x030001bc ?
0x030001c0 ?
RIL_GetCCBSStatus IOCTL_RIL_GETCCBSSTATUS 0x030001c4 0x0004 ; -
RIL_ClearCCBSRegistration IOCTL_RIL_CLEARCCBSREGISTRATION 0x030001c8 0x0004 ; -
RIL_GetSystemTime IOCTL_RIL_GETSYSTEMTIME 0x030001cc ; -
RIL_GetGPRSContextList IOCTL_RIL_GETGPRSCONTEXTLIST 0x030001d0 ; "AT+CGDCONT?\r"
RIL_SetGPRSContext IOCTL_RIL_SETGPRSCONTEXT 0x030001d4 ? ; "AT+CGDCONT=%u,"
RIL_DeleteGPRSContext IOCTL_RIL_DELETEGPRSCONTEXT 0x030001d8 0x0004 ; "AT+CGDCONT=%u\r"
RIL_GetRequestedQualityOfServiceList IOCTL_RIL_GETREQUESTEDQUALITYOFSERVICELIST 0x030001dc ; "AT+CGQREQ?\r"
RIL_SetRequestedQualityOfService IOCTL_RIL_SETREQUESTEDQUALITYOFSERVICE 0x030001e0 0x0020 ; "AT%s=%u," ; "+CGQREQ"
RIL_DeleteRequestedQualityOfService IOCTL_RIL_DELETEREQUESTEDQUALITYOFSERVICE 0x030001e4 0x0004 ; "AT%s=%u\r" ; "+CGQREQ"
RIL_GetMinimumQualityOfServiceList IOCTL_RIL_GETMINIMUMQUALITYOFSERVICELIST 0x030001e8 ; "AT+CGQMIN?\r"
RIL_SetMinimumQualityOfService IOCTL_RIL_SETMINIMUMQUALITYOFSERVICE 0x030001ec 0x0020 ; "AT%s=%u," ; "+CGQMIN"
RIL_DeleteMinimumQualityOfService IOCTL_RIL_DELETEMINIMUMQUALITYOFSERVICE 0x030001f0 0x0004 ; "AT%s=%u\r" ; "+CGQMIN"
RIL_SetGPRSAttached IOCTL_RIL_SETGPRSATTACHED 0x030001f4 0x0004 ; "AT+CGATT=%u\r"
RIL_GetGPRSAttached IOCTL_RIL_GETGPRSATTACHED 0x030001f8 ; "AT+CGATT?\r"
RIL_SetGPRSContextActivated IOCTL_RIL_SETGPRSCONTEXTACTIVATED 0x030001fc 0x0008 ; "AT+CGACT=%u,%u\r"
RIL_GetGPRSContextActivatedList IOCTL_RIL_GETGPRSCONTEXTACTIVATEDLIST 0x03000200 ; "AT+CGACT?\r"
RIL_EnterGPRSDataMode IOCTL_RIL_ENTERGPRSDATAMODE 0x03000204 ? ; "ATD*99#\r"
RIL_GetGPRSAddress IOCTL_RIL_GETGPRSADDRESS 0x03000208 0x0004 ; "AT+CGPADDR=%u\r"
RIL_GPRSAnswer IOCTL_RIL_GPRSANSWER 0x0300020c ? ; "AT+CGANS=%u,"
RIL_GetGPRSRegistrationStatus IOCTL_RIL_GETGPRSREGISTRATIONSTATUS 0x03000210 ; "AT+CGREG?\r"
RIL_GetGPRSClass IOCTL_RIL_GETGPRSCLASS 0x03000214 ; "AT+CGCLASS?\r"
RIL_SetGPRSClass IOCTL_RIL_SETGPRSCLASS 0x03000218 0x0004 ; "AT+CGCLASS=\"%s\"\r"
RIL_GetMOSMSService IOCTL_RIL_GETMOSMSSERVICE 0x0300021c ; "AT+CGSMS?\r"
RIL_SetMOSMSService IOCTL_RIL_SETMOSMSSERVICE 0x03000220 ; "AT+CGSMS=%u\r"
RIL_GetDriverVersion IOCTL_RIL_GETDRIVERVERSION 0x03000224 0x0004 ; -
RIL_GetCellBroadcastMsgConfig IOCTL_RIL_GETCBMSGCONFIG 0x03000228 ; "AT+CSCB?\r"
RIL_SetCellBroadcastMsgConfig IOCTL_RIL_SETCBMSGCONFIG 0x0300022c ? ; "AT+CNMI=2,2,2,1,0\r" ; ";+CSAS\r" ; "AT+CSCB=%d"
RIL_GetCurrentAddressId IOCTL_RIL_GETCURRENTADDRESSID 0x03000230 ; "AT%ALS?\r"
RIL_SetCurrentAddressId IOCTL_RIL_SETCURRENTADDRESSID 0x03000234 0x0004 ; "AT%%ALS=%u\r"
IOCTL_RIL_GETLASTERROR 0x03000238
IOCTL_RIL_GETPACKETBYTECOUNT 0x0300023c
IOCTL_RIL_RESETPACKETBYTECOUNT 0x03000240
IOCTL_RIL_GETCURRENTSYSTEMTYPE 0x03000248
IOCTL_RIL_SENDFLASH 0x0300024c
IOCTL_RIL_GETROAMINGMODE 0x03000250
IOCTL_RIL_SETROAMINGMODE 0x03000254
IOCTL_RIL_GETPREFERREDPRIVACYMODE 0x03000258
IOCTL_RIL_SETPREFERREDPRIVACYMODE 0x0300025c
IOCTL_RIL_GETCURRENTPRIVACYSTATUS 0x03000260
IOCTL_RIL_SENDAKEY 0x03000264
IOCTL_RIL_GETALLOPERATORSLIST 0x03000268
IOCTL_RIL_REGISTER_AT_LOGGING 0x0300026c
IOCTL_RIL_ATCOMMAND_LOGFILE 0x03000270
IOCTL_RIL_NDIS_RECEIVEPACKETDONE 0x03000274
IOCTL_RIL_NDIS_SENDPACKET 0x03000278
IOCTL_RIL_NDIS_SETGPRSCONTEXTACTIVATED 0x0300027c
IOCTL_RIL_GETCURRENTLOCATIONSTATUS 0x03000280
IOCTL_RIL_GETCURRENTROAMINGSTATUS 0x03000284
IOCTL_RIL_GETATR 0x03000288
IOCTL_RIL_SENDSIMTOOLKITEVENTDOWNLOAD 0x0300028c
IOCTL_RIL_GETSERIALPORTHANDLEFROMCONTEXTID 0x03000290
0x03000900 ; "AT#%02X%s%02X\r" ; "%s%02X"
the ioctl names were taken from the ril.dll from the htc universal ... which has a qualcomm based gsm stack, instead of a condat gsm stack.

RIL_DevSpecific commands:

1- at$v0  0,2-9 - nothing  10 at%sidcnt  11- at%sidcln  12- at%sid=<number>  13- at%sidchk  14- at%sid?<number>  15- at%sidlck?  16- at%sidlck=<0|1>,<number>  17- at%talk?<number>  18- at%chgdual | at%chg1900 | at%chg900  19- at%band  20- at%eminit  21- at%emexit  22- at%emread  23- at%l1t + at%cprim="CST","CONFIG L1_PARAMS=<0,number>  24- CellBroadCastMessageRoute=1  25- CellBroadCastMessageRoute=0  26- at+creg=2  27- at+creg=1  28- at%cgppp=<number>  29- at%gid=<number>  30- at%chkgid?<number>  31- at%gid?<number>  32- at%lckgid?  33- AT%LCKGID=<0|1>,<number>  34- at%cntgid  35- at%clngid  36- at%lckgid=?  

downloads

ril.h C/C++ declarations of all ril functions and structs
ril.lib this file is easily created by running lib /def:ril.def /out:ril.lib /machine:arm
RIL.DEF defines all exports for ril.dll, used to create .lib file

Programming with RIL

you normally interface with ril via ril.dll. #include "ril.h" in order to get all the definitions needed. and link your program with ril.lib, to import the ril functions from ril.dll 

0 件のコメント:

コメントを投稿