Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e68293d4 authored by Yixiao Luo's avatar Yixiao Luo
Browse files

Fix refactor tuner resource handle from 32bit to 64bit

Use int64_t type to ensure the resource handle is 64 bit

Test: atest TunerReosourceManagerServicetest
Bug: b/384883905, b/388066527, b/319372054
Flag: EXEMPT bugfix
Change-Id: I6c2ddbadff7bd529f9d10fe738449a5fb14d6c0e
parent 0e179cb4
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -101,7 +101,7 @@ void TunerHelper::updateTunerResources(const vector<TunerFrontendInfo>& feInfos,
}

// TODO: create a map between resource id and handles.
int TunerHelper::getResourceIdFromHandle(long resourceHandle, int /*type*/) {
int TunerHelper::getResourceIdFromHandle(int64_t resourceHandle, int /*type*/) {
    return (int)((resourceHandle >> RESOURCE_ID_SHIFT) & RESOURCE_ID_MASK);
}

@@ -112,7 +112,7 @@ int TunerHelper::getResourceIdFromHandle(long resourceHandle, int /*type*/) {
 *   32 bits - id
 *   24 bits - resourceRequestCount
 */
long TunerHelper::getResourceHandleFromId(int id, int resourceType) {
int64_t TunerHelper::getResourceHandleFromId(int id, int resourceType) {
    // TODO: build up randomly generated id to handle mapping
    return static_cast<int64_t>(resourceType & RESOURCE_TYPE_MASK) << RESOURCE_TYPE_SHIFT |
           static_cast<int64_t>(id & RESOURCE_ID_MASK) << RESOURCE_ID_SHIFT |
+2 −2
Original line number Diff line number Diff line
@@ -62,8 +62,8 @@ public:
                                     const vector<TunerDemuxInfo>& demuxInfos,
                                     const vector<int64_t>& lnbHandles);
    // TODO: create a map between resource id and handles.
    static int getResourceIdFromHandle(long resourceHandle, int type);
    static long getResourceHandleFromId(int id, int resourceType);
    static int getResourceIdFromHandle(int64_t resourceHandle, int type);
    static int64_t getResourceHandleFromId(int id, int resourceType);

private:
    static int32_t sResourceRequestCount;