galaxys2-common: fake GET_RADIO_CAPABILITY response
Samsung's RIL doesn't support this, but doesn't error on it either. Change-Id: I5a470c55fecf85183e9c7b4b37aef3b3cbffaf90
This commit is contained in:
parent
ebb9e69395
commit
0645c2e2ac
@ -28,6 +28,18 @@
|
|||||||
static RIL_RadioFunctions const *mRealRadioFuncs;
|
static RIL_RadioFunctions const *mRealRadioFuncs;
|
||||||
static const struct RIL_Env *mEnv;
|
static const struct RIL_Env *mEnv;
|
||||||
|
|
||||||
|
static void rilOnRequest(int request, void *data, size_t datalen, RIL_Token t)
|
||||||
|
{
|
||||||
|
switch (request) {
|
||||||
|
case RIL_REQUEST_GET_RADIO_CAPABILITY:
|
||||||
|
RLOGW("Returning NOT_SUPPORTED on GET_RADIO_CAPABILITY");
|
||||||
|
mEnv->OnRequestComplete(t, RIL_E_REQUEST_NOT_SUPPORTED, NULL, 0);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
mRealRadioFuncs->onRequest(request, data, datalen, t);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const RIL_RadioFunctions* RIL_Init(const struct RIL_Env *env, int argc, char **argv)
|
const RIL_RadioFunctions* RIL_Init(const struct RIL_Env *env, int argc, char **argv)
|
||||||
{
|
{
|
||||||
RIL_RadioFunctions const* (*fRealRilInit)(const struct RIL_Env *env, int argc, char **argv);
|
RIL_RadioFunctions const* (*fRealRilInit)(const struct RIL_Env *env, int argc, char **argv);
|
||||||
@ -74,6 +86,7 @@ const RIL_RadioFunctions* RIL_Init(const struct RIL_Env *env, int argc, char **a
|
|||||||
|
|
||||||
//copy the real RIL's info struct, then replace the onRequest pointer with our own
|
//copy the real RIL's info struct, then replace the onRequest pointer with our own
|
||||||
rilInfo = *mRealRadioFuncs;
|
rilInfo = *mRealRadioFuncs;
|
||||||
|
rilInfo.onRequest = rilOnRequest;
|
||||||
|
|
||||||
RLOGD("Wrapped RIL version is '%s'\n", mRealRadioFuncs->getVersion());
|
RLOGD("Wrapped RIL version is '%s'\n", mRealRadioFuncs->getVersion());
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user