mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 11:36:00 +00:00
Migrate broadcast radio default HAL to the new logging API.
Bug: 112540729 Test: flash and boot Change-Id: I18d8b508971cd9a9b7b2c9c221674d862ff351d6
This commit is contained in:
@@ -43,7 +43,6 @@ cc_binary {
|
||||
"libbase",
|
||||
"libhidlbase",
|
||||
"libhidltransport",
|
||||
"liblog",
|
||||
"libutils",
|
||||
],
|
||||
}
|
||||
|
||||
@@ -13,15 +13,12 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
#define LOG_TAG "BcRadioDef.module"
|
||||
#define LOG_NDEBUG 0
|
||||
|
||||
#include "BroadcastRadio.h"
|
||||
|
||||
#include <log/log.h>
|
||||
|
||||
#include "resources.h"
|
||||
|
||||
#include <android-base/logging.h>
|
||||
|
||||
namespace android {
|
||||
namespace hardware {
|
||||
namespace broadcastradio {
|
||||
@@ -66,7 +63,6 @@ BroadcastRadio::BroadcastRadio(const VirtualRadio& virtualRadio)
|
||||
mAmFmConfig(gDefaultAmFmConfig) {}
|
||||
|
||||
Return<void> BroadcastRadio::getProperties(getProperties_cb _hidl_cb) {
|
||||
ALOGV("%s", __func__);
|
||||
_hidl_cb(mProperties);
|
||||
return {};
|
||||
}
|
||||
@@ -77,8 +73,6 @@ AmFmRegionConfig BroadcastRadio::getAmFmConfig() const {
|
||||
}
|
||||
|
||||
Return<void> BroadcastRadio::getAmFmRegionConfig(bool full, getAmFmRegionConfig_cb _hidl_cb) {
|
||||
ALOGV("%s(%d)", __func__, full);
|
||||
|
||||
if (full) {
|
||||
AmFmRegionConfig config = {};
|
||||
config.ranges = hidl_vec<AmFmBandRange>({
|
||||
@@ -96,8 +90,6 @@ Return<void> BroadcastRadio::getAmFmRegionConfig(bool full, getAmFmRegionConfig_
|
||||
}
|
||||
|
||||
Return<void> BroadcastRadio::getDabRegionConfig(getDabRegionConfig_cb _hidl_cb) {
|
||||
ALOGV("%s", __func__);
|
||||
|
||||
hidl_vec<DabTableEntry> config = {
|
||||
{"5A", 174928}, {"7D", 194064}, {"8A", 195936}, {"8B", 197648}, {"9A", 202928},
|
||||
{"9B", 204640}, {"9C", 206352}, {"10B", 211648}, {"10C", 213360}, {"10D", 215072},
|
||||
@@ -111,7 +103,7 @@ Return<void> BroadcastRadio::getDabRegionConfig(getDabRegionConfig_cb _hidl_cb)
|
||||
|
||||
Return<void> BroadcastRadio::openSession(const sp<ITunerCallback>& callback,
|
||||
openSession_cb _hidl_cb) {
|
||||
ALOGV("%s", __func__);
|
||||
LOG(DEBUG) << "opening new session...";
|
||||
|
||||
/* For the needs of default implementation it's fine to instantiate new session object
|
||||
* out of the lock scope. If your implementation needs it, use reentrant lock.
|
||||
@@ -122,7 +114,7 @@ Return<void> BroadcastRadio::openSession(const sp<ITunerCallback>& callback,
|
||||
|
||||
auto oldSession = mSession.promote();
|
||||
if (oldSession != nullptr) {
|
||||
ALOGI("Closing previously opened tuner");
|
||||
LOG(INFO) << "closing previously opened tuner";
|
||||
oldSession->close();
|
||||
mSession = nullptr;
|
||||
}
|
||||
@@ -134,14 +126,14 @@ Return<void> BroadcastRadio::openSession(const sp<ITunerCallback>& callback,
|
||||
}
|
||||
|
||||
Return<void> BroadcastRadio::getImage(uint32_t id, getImage_cb _hidl_cb) {
|
||||
ALOGV("%s(%x)", __func__, id);
|
||||
LOG(DEBUG) << "fetching image " << std::hex << id;
|
||||
|
||||
if (id == resources::demoPngId) {
|
||||
_hidl_cb(std::vector<uint8_t>(resources::demoPng, std::end(resources::demoPng)));
|
||||
return {};
|
||||
}
|
||||
|
||||
ALOGI("Image %x doesn't exists", id);
|
||||
LOG(INFO) << "image " << std::hex << id << " doesn't exists";
|
||||
_hidl_cb({});
|
||||
return {};
|
||||
}
|
||||
@@ -149,7 +141,7 @@ Return<void> BroadcastRadio::getImage(uint32_t id, getImage_cb _hidl_cb) {
|
||||
Return<void> BroadcastRadio::registerAnnouncementListener(
|
||||
const hidl_vec<AnnouncementType>& enabled, const sp<IAnnouncementListener>& /* listener */,
|
||||
registerAnnouncementListener_cb _hidl_cb) {
|
||||
ALOGV("%s(%s)", __func__, toString(enabled).c_str());
|
||||
LOG(DEBUG) << "registering announcement listener for " << toString(enabled);
|
||||
|
||||
_hidl_cb(Result::NOT_SUPPORTED, nullptr);
|
||||
return {};
|
||||
|
||||
@@ -14,15 +14,12 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#define LOG_TAG "BcRadioDef.tuner"
|
||||
#define LOG_NDEBUG 0
|
||||
|
||||
#include "TunerSession.h"
|
||||
|
||||
#include "BroadcastRadio.h"
|
||||
|
||||
#include <android-base/logging.h>
|
||||
#include <broadcastradio-utils-2x/Utils.h>
|
||||
#include <log/log.h>
|
||||
|
||||
namespace android {
|
||||
namespace hardware {
|
||||
@@ -68,7 +65,7 @@ static ProgramInfo makeDummyProgramInfo(const ProgramSelector& selector) {
|
||||
}
|
||||
|
||||
void TunerSession::tuneInternalLocked(const ProgramSelector& sel) {
|
||||
ALOGV("%s(%s)", __func__, toString(sel).c_str());
|
||||
LOG(VERBOSE) << "tune (internal) to " << toString(sel);
|
||||
|
||||
VirtualProgram virtualProgram;
|
||||
ProgramInfo programInfo;
|
||||
@@ -93,17 +90,18 @@ const VirtualRadio& TunerSession::virtualRadio() const {
|
||||
}
|
||||
|
||||
Return<Result> TunerSession::tune(const ProgramSelector& sel) {
|
||||
ALOGV("%s(%s)", __func__, toString(sel).c_str());
|
||||
LOG(DEBUG) << "tune to " << toString(sel);
|
||||
|
||||
lock_guard<mutex> lk(mMut);
|
||||
if (mIsClosed) return Result::INVALID_STATE;
|
||||
|
||||
if (!utils::isSupported(module().mProperties, sel)) {
|
||||
ALOGW("Selector not supported");
|
||||
LOG(WARNING) << "selector not supported: " << toString(sel);
|
||||
return Result::NOT_SUPPORTED;
|
||||
}
|
||||
|
||||
if (!utils::isValid(sel)) {
|
||||
ALOGE("ProgramSelector is not valid");
|
||||
LOG(ERROR) << "selector is not valid: " << toString(sel);
|
||||
return Result::INVALID_ARGUMENTS;
|
||||
}
|
||||
|
||||
@@ -119,8 +117,9 @@ Return<Result> TunerSession::tune(const ProgramSelector& sel) {
|
||||
return Result::OK;
|
||||
}
|
||||
|
||||
Return<Result> TunerSession::scan(bool directionUp, bool /* skipSubChannel */) {
|
||||
ALOGV("%s", __func__);
|
||||
Return<Result> TunerSession::scan(bool directionUp, bool skipSubChannel) {
|
||||
LOG(DEBUG) << "seek up=" << directionUp << " skipSubChannel=" << skipSubChannel;
|
||||
|
||||
lock_guard<mutex> lk(mMut);
|
||||
if (mIsClosed) return Result::INVALID_STATE;
|
||||
|
||||
@@ -130,8 +129,8 @@ Return<Result> TunerSession::scan(bool directionUp, bool /* skipSubChannel */) {
|
||||
|
||||
if (list.empty()) {
|
||||
mIsTuneCompleted = false;
|
||||
auto task = [this, directionUp]() {
|
||||
ALOGI("Performing failed seek up=%d", directionUp);
|
||||
auto task = [this]() {
|
||||
LOG(DEBUG) << "program list is empty, seek couldn't stop";
|
||||
|
||||
mCallback->onTuneFailed(Result::TIMEOUT, {});
|
||||
};
|
||||
@@ -162,7 +161,7 @@ Return<Result> TunerSession::scan(bool directionUp, bool /* skipSubChannel */) {
|
||||
|
||||
mIsTuneCompleted = false;
|
||||
auto task = [this, tuneTo, directionUp]() {
|
||||
ALOGI("Performing seek up=%d", directionUp);
|
||||
LOG(VERBOSE) << "executing seek up=" << directionUp;
|
||||
|
||||
lock_guard<mutex> lk(mMut);
|
||||
tuneInternalLocked(tuneTo);
|
||||
@@ -173,21 +172,21 @@ Return<Result> TunerSession::scan(bool directionUp, bool /* skipSubChannel */) {
|
||||
}
|
||||
|
||||
Return<Result> TunerSession::step(bool directionUp) {
|
||||
ALOGV("%s", __func__);
|
||||
LOG(DEBUG) << "step up=" << directionUp;
|
||||
lock_guard<mutex> lk(mMut);
|
||||
if (mIsClosed) return Result::INVALID_STATE;
|
||||
|
||||
cancelLocked();
|
||||
|
||||
if (!utils::hasId(mCurrentProgram, IdentifierType::AMFM_FREQUENCY)) {
|
||||
ALOGE("Can't step in anything else than AM/FM");
|
||||
LOG(WARNING) << "can't step in anything else than AM/FM";
|
||||
return Result::NOT_SUPPORTED;
|
||||
}
|
||||
|
||||
auto stepTo = utils::getId(mCurrentProgram, IdentifierType::AMFM_FREQUENCY);
|
||||
auto range = getAmFmRangeLocked();
|
||||
if (!range) {
|
||||
ALOGE("Can't find current band");
|
||||
LOG(ERROR) << "can't find current band";
|
||||
return Result::INTERNAL_ERROR;
|
||||
}
|
||||
|
||||
@@ -201,7 +200,7 @@ Return<Result> TunerSession::step(bool directionUp) {
|
||||
|
||||
mIsTuneCompleted = false;
|
||||
auto task = [this, stepTo]() {
|
||||
ALOGI("Performing step to %s", std::to_string(stepTo).c_str());
|
||||
LOG(VERBOSE) << "executing step to " << stepTo;
|
||||
|
||||
lock_guard<mutex> lk(mMut);
|
||||
|
||||
@@ -213,7 +212,7 @@ Return<Result> TunerSession::step(bool directionUp) {
|
||||
}
|
||||
|
||||
void TunerSession::cancelLocked() {
|
||||
ALOGV("%s", __func__);
|
||||
LOG(VERBOSE) << "cancelling current operations...";
|
||||
|
||||
mThread.cancelAll();
|
||||
if (utils::getType(mCurrentProgram.primaryId) != IdentifierType::INVALID) {
|
||||
@@ -222,7 +221,6 @@ void TunerSession::cancelLocked() {
|
||||
}
|
||||
|
||||
Return<void> TunerSession::cancel() {
|
||||
ALOGV("%s", __func__);
|
||||
lock_guard<mutex> lk(mMut);
|
||||
if (mIsClosed) return {};
|
||||
|
||||
@@ -232,7 +230,7 @@ Return<void> TunerSession::cancel() {
|
||||
}
|
||||
|
||||
Return<Result> TunerSession::startProgramListUpdates(const ProgramFilter& filter) {
|
||||
ALOGV("%s(%s)", __func__, toString(filter).c_str());
|
||||
LOG(DEBUG) << "requested program list updates, filter=" << toString(filter);
|
||||
lock_guard<mutex> lk(mMut);
|
||||
if (mIsClosed) return Result::INVALID_STATE;
|
||||
|
||||
@@ -259,41 +257,37 @@ Return<Result> TunerSession::startProgramListUpdates(const ProgramFilter& filter
|
||||
}
|
||||
|
||||
Return<void> TunerSession::stopProgramListUpdates() {
|
||||
ALOGV("%s", __func__);
|
||||
LOG(DEBUG) << "requested program list updates to stop";
|
||||
return {};
|
||||
}
|
||||
|
||||
Return<void> TunerSession::isConfigFlagSet(ConfigFlag flag, isConfigFlagSet_cb _hidl_cb) {
|
||||
ALOGV("%s(%s)", __func__, toString(flag).c_str());
|
||||
LOG(VERBOSE) << __func__ << " " << toString(flag);
|
||||
|
||||
_hidl_cb(Result::NOT_SUPPORTED, false);
|
||||
return {};
|
||||
}
|
||||
|
||||
Return<Result> TunerSession::setConfigFlag(ConfigFlag flag, bool value) {
|
||||
ALOGV("%s(%s, %d)", __func__, toString(flag).c_str(), value);
|
||||
LOG(VERBOSE) << __func__ << " " << toString(flag) << " " << value;
|
||||
|
||||
return Result::NOT_SUPPORTED;
|
||||
}
|
||||
|
||||
Return<void> TunerSession::setParameters(const hidl_vec<VendorKeyValue>& /* parameters */,
|
||||
setParameters_cb _hidl_cb) {
|
||||
ALOGV("%s", __func__);
|
||||
|
||||
_hidl_cb({});
|
||||
return {};
|
||||
}
|
||||
|
||||
Return<void> TunerSession::getParameters(const hidl_vec<hidl_string>& /* keys */,
|
||||
getParameters_cb _hidl_cb) {
|
||||
ALOGV("%s", __func__);
|
||||
|
||||
_hidl_cb({});
|
||||
return {};
|
||||
}
|
||||
|
||||
Return<void> TunerSession::close() {
|
||||
ALOGV("%s", __func__);
|
||||
LOG(DEBUG) << "closing session...";
|
||||
lock_guard<mutex> lk(mMut);
|
||||
if (mIsClosed) return {};
|
||||
|
||||
@@ -304,7 +298,7 @@ Return<void> TunerSession::close() {
|
||||
|
||||
std::optional<AmFmBandRange> TunerSession::getAmFmRangeLocked() const {
|
||||
if (!mIsTuneCompleted) {
|
||||
ALOGW("tune operation in process");
|
||||
LOG(WARNING) << "tune operation is in process";
|
||||
return {};
|
||||
}
|
||||
if (!utils::hasId(mCurrentProgram, IdentifierType::AMFM_FREQUENCY)) return {};
|
||||
|
||||
@@ -13,15 +13,12 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
#define LOG_TAG "BcRadioDef.VirtualProgram"
|
||||
|
||||
#include "VirtualProgram.h"
|
||||
|
||||
#include "resources.h"
|
||||
|
||||
#include <android-base/logging.h>
|
||||
#include <broadcastradio-utils-2x/Utils.h>
|
||||
#include <log/log.h>
|
||||
|
||||
namespace android {
|
||||
namespace hardware {
|
||||
@@ -72,7 +69,7 @@ VirtualProgram::operator ProgramInfo() const {
|
||||
info.physicallyTunedTo = selectId(IdentifierType::SXM_CHANNEL);
|
||||
break;
|
||||
default:
|
||||
LOG(FATAL) << "Unsupported program type: " << toString(pType);
|
||||
LOG(FATAL) << "unsupported program type: " << toString(pType);
|
||||
}
|
||||
|
||||
info.infoFlags |= ProgramInfoFlags::TUNED;
|
||||
|
||||
@@ -13,13 +13,9 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
#define LOG_TAG "BcRadioDef.VirtualRadio"
|
||||
//#define LOG_NDEBUG 0
|
||||
|
||||
#include "VirtualRadio.h"
|
||||
|
||||
#include <broadcastradio-utils-2x/Utils.h>
|
||||
#include <log/log.h>
|
||||
|
||||
namespace android {
|
||||
namespace hardware {
|
||||
|
||||
@@ -13,8 +13,6 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
#define LOG_TAG "BcRadioDef.service"
|
||||
|
||||
#include <android-base/logging.h>
|
||||
#include <hidl/HidlTransportSupport.h>
|
||||
|
||||
@@ -26,7 +24,9 @@ using android::hardware::joinRpcThreadpool;
|
||||
using android::hardware::broadcastradio::V2_0::implementation::BroadcastRadio;
|
||||
using android::hardware::broadcastradio::V2_0::implementation::gAmFmRadio;
|
||||
|
||||
int main(int /* argc */, char** /* argv */) {
|
||||
int main() {
|
||||
android::base::SetDefaultTag("BcRadioDef");
|
||||
android::base::SetMinimumLogSeverity(android::base::VERBOSE);
|
||||
configureRpcThreadpool(4, true);
|
||||
|
||||
BroadcastRadio broadcastRadio(gAmFmRadio);
|
||||
|
||||
@@ -14,8 +14,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#define LOG_TAG "BcRadio.vts"
|
||||
#define LOG_NDEBUG 0
|
||||
#define EGMOCK_VERBOSE 1
|
||||
|
||||
#include <VtsHalHidlTargetTestBase.h>
|
||||
@@ -446,7 +444,7 @@ TEST_F(BroadcastRadioHalTest, FmTune) {
|
||||
EXPECT_EQ(Result::OK, result);
|
||||
EXPECT_TIMEOUT_CALL_WAIT(*mCallback, onCurrentProgramInfoChanged_, timeout::tune);
|
||||
|
||||
ALOGD("current program info: %s", toString(infoCb).c_str());
|
||||
LOG(DEBUG) << "current program info: " << toString(infoCb);
|
||||
|
||||
// it should tune exactly to what was requested
|
||||
auto freqs = utils::getAllIds(infoCb.selector, IdentifierType::AMFM_FREQUENCY);
|
||||
@@ -823,11 +821,11 @@ int main(int argc, char** argv) {
|
||||
using android::hardware::broadcastradio::V2_0::vts::gEnv;
|
||||
using android::hardware::broadcastradio::V2_0::IBroadcastRadio;
|
||||
using android::hardware::broadcastradio::vts::BroadcastRadioHidlEnvironment;
|
||||
android::base::SetDefaultTag("BcRadio.vts");
|
||||
android::base::SetMinimumLogSeverity(android::base::VERBOSE);
|
||||
gEnv = new BroadcastRadioHidlEnvironment<IBroadcastRadio>;
|
||||
::testing::AddGlobalTestEnvironment(gEnv);
|
||||
::testing::InitGoogleTest(&argc, argv);
|
||||
gEnv->init(&argc, argv);
|
||||
int status = RUN_ALL_TESTS();
|
||||
ALOGI("Test result = %d", status);
|
||||
return status;
|
||||
return RUN_ALL_TESTS();
|
||||
}
|
||||
|
||||
@@ -29,7 +29,6 @@ cc_library_static {
|
||||
export_include_dirs: ["include"],
|
||||
shared_libs: [
|
||||
"libbase",
|
||||
"liblog",
|
||||
"libutils",
|
||||
],
|
||||
}
|
||||
|
||||
@@ -14,13 +14,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#define LOG_TAG "WorkerThread"
|
||||
//#define LOG_NDEBUG 0
|
||||
|
||||
#include <broadcastradio-utils/WorkerThread.h>
|
||||
|
||||
#include <log/log.h>
|
||||
|
||||
namespace android {
|
||||
|
||||
using std::chrono::milliseconds;
|
||||
@@ -39,7 +34,6 @@ bool operator<(const WorkerThread::Task& lhs, const WorkerThread::Task& rhs) {
|
||||
WorkerThread::WorkerThread() : mIsTerminating(false), mThread(&WorkerThread::threadLoop, this) {}
|
||||
|
||||
WorkerThread::~WorkerThread() {
|
||||
ALOGV("%s", __func__);
|
||||
{
|
||||
lock_guard<mutex> lk(mMut);
|
||||
mIsTerminating = true;
|
||||
@@ -49,8 +43,6 @@ WorkerThread::~WorkerThread() {
|
||||
}
|
||||
|
||||
void WorkerThread::schedule(function<void()> task, milliseconds delay) {
|
||||
ALOGV("%s", __func__);
|
||||
|
||||
auto when = steady_clock::now() + delay;
|
||||
|
||||
lock_guard<mutex> lk(mMut);
|
||||
@@ -59,14 +51,11 @@ void WorkerThread::schedule(function<void()> task, milliseconds delay) {
|
||||
}
|
||||
|
||||
void WorkerThread::cancelAll() {
|
||||
ALOGV("%s", __func__);
|
||||
|
||||
lock_guard<mutex> lk(mMut);
|
||||
priority_queue<Task>().swap(mTasks); // empty queue
|
||||
}
|
||||
|
||||
void WorkerThread::threadLoop() {
|
||||
ALOGV("%s", __func__);
|
||||
while (!mIsTerminating) {
|
||||
unique_lock<mutex> lk(mMut);
|
||||
if (mTasks.empty()) {
|
||||
|
||||
@@ -14,12 +14,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
#define LOG_TAG "BcRadioDef.utils"
|
||||
//#define LOG_NDEBUG 0
|
||||
|
||||
#include <broadcastradio-utils-2x/Utils.h>
|
||||
|
||||
#include <android-base/logging.h>
|
||||
#include <log/log.h>
|
||||
|
||||
namespace android {
|
||||
namespace hardware {
|
||||
@@ -130,7 +128,7 @@ bool tunesTo(const ProgramSelector& a, const ProgramSelector& b) {
|
||||
case IdentifierType::SXM_SERVICE_ID:
|
||||
return haveEqualIds(a, b, IdentifierType::SXM_SERVICE_ID);
|
||||
default: // includes all vendor types
|
||||
ALOGW("Unsupported program type: %s", toString(type).c_str());
|
||||
LOG(WARNING) << "unsupported program type: " << toString(type);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -166,7 +164,7 @@ uint64_t getId(const ProgramSelector& sel, const IdentifierType type) {
|
||||
return val;
|
||||
}
|
||||
|
||||
ALOGW("Identifier %s not found", toString(type).c_str());
|
||||
LOG(WARNING) << "identifier not found: " << toString(type);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -205,7 +203,7 @@ bool isValid(const ProgramIdentifier& id) {
|
||||
auto expect = [&valid](bool condition, std::string message) {
|
||||
if (!condition) {
|
||||
valid = false;
|
||||
ALOGE("Identifier not valid, expected %s", message.c_str());
|
||||
LOG(ERROR) << "identifier not valid, expected " << message;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
* INTERNAL IMPLEMENTATION - don't use in user code.
|
||||
*/
|
||||
#if EGMOCK_VERBOSE
|
||||
#define EGMOCK_LOG_(...) ALOGV("egmock: " __VA_ARGS__)
|
||||
#define EGMOCK_LOG_(...) LOG(VERBOSE) << "egmock: " << __VA_ARGS__
|
||||
#else
|
||||
#define EGMOCK_LOG_(...)
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user