Files
hardware_interfaces/graphics/mapper/2.0/default/passthrough.cpp
Chia-I Wu 6d189b71a2 graphics: improve preloading for IMapper default impl
When GraphicBufferMapper::preloadHal dlopens the default impl, make sure
the gralloc module is also dlopen'ed.

Bug: 269664560
Test: android.view.cts.PixelCopyTest#testVideoProducer on grunt

Change-Id: I57418338d5212fb9a2c1ea82eba63d855f69ff32
2023-02-27 14:19:12 -08:00

33 lines
1.2 KiB
C++

/*
* Copyright 2016 The Android Open Source Project
* * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <android/hardware/graphics/mapper/2.0/IMapper.h>
#include <mapper-passthrough/2.0/GrallocLoader.h>
using android::hardware::graphics::mapper::V2_0::IMapper;
using android::hardware::graphics::mapper::V2_0::passthrough::GrallocLoader;
// Preload the gralloc module such that GraphicBufferMapper::preloadHal is
// meaningful
class GrallocPreloader {
public:
GrallocPreloader() { GrallocLoader::loadModule(); }
};
static GrallocPreloader sGrallocPreloader;
extern "C" IMapper* HIDL_FETCH_IMapper(const char* /*name*/) {
return GrallocLoader::load();
}