diff options
author | Ramjee Singh <ramjee@codeaurora.org> | 2018-07-26 14:19:01 +0530 |
---|---|---|
committer | Ramjee Singh <ramjee@codeaurora.org> | 2018-08-07 14:57:09 +0530 |
commit | f5482fcef5108e7f0ec53e05092da402e3715ff0 (patch) | |
tree | 4c33ce7313fb6cdc59aae97c6a317995bb7d8db0 /audio/common/all-versions/default/service/service.cpp | |
parent | eef2062aaee81ad0a0dc2f9aef8e86daf21eadc6 (diff) |
audio_hal: Optimize binder buffer allocation.
Optimize binder buffer allocation based on maximum page size
observed during peak usage.
CRs-Fixed: 2290589
Change-Id: I308f3eaff5ada787426526e1efcc787cd4f12409
Diffstat (limited to 'audio/common/all-versions/default/service/service.cpp')
-rw-r--r-- | audio/common/all-versions/default/service/service.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/audio/common/all-versions/default/service/service.cpp b/audio/common/all-versions/default/service/service.cpp index d4a5a4d62d..7648bc527d 100644 --- a/audio/common/all-versions/default/service/service.cpp +++ b/audio/common/all-versions/default/service/service.cpp @@ -27,12 +27,30 @@ #include <hidl/HidlTransportSupport.h> #include <hidl/LegacySupport.h> #include <com/qualcomm/qti/bluetooth_audio/1.0/IBluetoothAudio.h> +#include <hwbinder/ProcessState.h> +#include <cutils/properties.h> using namespace android::hardware; using com::qualcomm::qti::bluetooth_audio::V1_0::IBluetoothAudio; using android::OK; + +#ifdef ARCH_ARM_32 +//default h/w binder memsize is 1 MB +#define DEFAULT_HW_BINDER_MEM_SIZE_KB 1024 + +size_t getHWBinderMmapSize(){ + int32_t value = DEFAULT_HW_BINDER_MEM_SIZE_KB; + value = property_get_int32("persist.vendor.audio.hw.binder.size_kbyte", value); + ALOGD("Init hw binder with mem size = %d ", value); + return 1024 * value; +} +#endif + int main(int /* argc */, char* /* argv */ []) { +#ifdef ARCH_ARM_32 + android::hardware::ProcessState::initWithMmapSize(getHWBinderMmapSize()); +#endif android::ProcessState::initWithDriver("/dev/vndbinder"); // start a threadpool for vndbinder interactions android::ProcessState::self()->startThreadPool(); |