Loading threadnetwork/aidl/default/thread_chip.cpp +10 −13 Original line number Original line Diff line number Diff line Loading @@ -32,23 +32,19 @@ namespace hardware { namespace threadnetwork { namespace threadnetwork { ThreadChip::ThreadChip(char* url) : mUrl(), mRxFrameBuffer(), mCallback(nullptr) { ThreadChip::ThreadChip(char* url) : mUrl(), mRxFrameBuffer(), mCallback(nullptr) { static const char kHdlcProtocol[] = "spinel+hdlc"; const char* interfaceName; static const char kSpiProtocol[] = "spinel+spi"; const char* protocol; CHECK_EQ(mUrl.Init(url), 0); CHECK_EQ(mUrl.Init(url), 0); protocol = mUrl.GetProtocol(); interfaceName = mUrl.GetProtocol(); CHECK_NE(protocol, nullptr); CHECK_NE(interfaceName, nullptr); if (memcmp(protocol, kSpiProtocol, strlen(kSpiProtocol)) == 0) { if (ot::Posix::SpiInterface::IsInterfaceNameMatch(interfaceName)) { mSpinelInterface = std::make_shared<ot::Posix::SpiInterface>(handleReceivedFrameJump, this, mSpinelInterface = std::make_shared<ot::Posix::SpiInterface>(mUrl); mRxFrameBuffer); } else if (ot::Posix::HdlcInterface::IsInterfaceNameMatch(interfaceName)) { } else if (memcmp(protocol, kHdlcProtocol, strlen(kHdlcProtocol)) == 0) { mSpinelInterface = std::make_shared<ot::Posix::HdlcInterface>(mUrl); mSpinelInterface = std::make_shared<ot::Posix::HdlcInterface>(handleReceivedFrameJump, this, mRxFrameBuffer); } else { } else { ALOGE("The protocol \"%s\" is not supported", protocol); ALOGE("The interface \"%s\" is not supported", interfaceName); exit(EXIT_FAILURE); exit(EXIT_FAILURE); } } Loading Loading @@ -106,7 +102,8 @@ ndk::ScopedAStatus ThreadChip::initChip(const std::shared_ptr<IThreadChipCallbac if (in_callback == nullptr) { if (in_callback == nullptr) { return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT); return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT); } else if (mCallback == nullptr) { } else if (mCallback == nullptr) { if (mSpinelInterface->Init(mUrl) != OT_ERROR_NONE) { if (mSpinelInterface->Init(handleReceivedFrameJump, this, mRxFrameBuffer) != OT_ERROR_NONE) { return errorStatus(ERROR_FAILED, "Failed to initialize the interface"); return errorStatus(ERROR_FAILED, "Failed to initialize the interface"); } } Loading threadnetwork/aidl/default/thread_chip.hpp +1 −0 Original line number Original line Diff line number Diff line Loading @@ -20,6 +20,7 @@ #include <aidl/android/hardware/threadnetwork/IThreadChipCallback.h> #include <aidl/android/hardware/threadnetwork/IThreadChipCallback.h> #include "lib/spinel/spinel_interface.hpp" #include "lib/spinel/spinel_interface.hpp" #include "lib/url/url.hpp" #include "mainloop.hpp" #include "mainloop.hpp" #include <android/binder_auto_utils.h> #include <android/binder_auto_utils.h> Loading Loading
threadnetwork/aidl/default/thread_chip.cpp +10 −13 Original line number Original line Diff line number Diff line Loading @@ -32,23 +32,19 @@ namespace hardware { namespace threadnetwork { namespace threadnetwork { ThreadChip::ThreadChip(char* url) : mUrl(), mRxFrameBuffer(), mCallback(nullptr) { ThreadChip::ThreadChip(char* url) : mUrl(), mRxFrameBuffer(), mCallback(nullptr) { static const char kHdlcProtocol[] = "spinel+hdlc"; const char* interfaceName; static const char kSpiProtocol[] = "spinel+spi"; const char* protocol; CHECK_EQ(mUrl.Init(url), 0); CHECK_EQ(mUrl.Init(url), 0); protocol = mUrl.GetProtocol(); interfaceName = mUrl.GetProtocol(); CHECK_NE(protocol, nullptr); CHECK_NE(interfaceName, nullptr); if (memcmp(protocol, kSpiProtocol, strlen(kSpiProtocol)) == 0) { if (ot::Posix::SpiInterface::IsInterfaceNameMatch(interfaceName)) { mSpinelInterface = std::make_shared<ot::Posix::SpiInterface>(handleReceivedFrameJump, this, mSpinelInterface = std::make_shared<ot::Posix::SpiInterface>(mUrl); mRxFrameBuffer); } else if (ot::Posix::HdlcInterface::IsInterfaceNameMatch(interfaceName)) { } else if (memcmp(protocol, kHdlcProtocol, strlen(kHdlcProtocol)) == 0) { mSpinelInterface = std::make_shared<ot::Posix::HdlcInterface>(mUrl); mSpinelInterface = std::make_shared<ot::Posix::HdlcInterface>(handleReceivedFrameJump, this, mRxFrameBuffer); } else { } else { ALOGE("The protocol \"%s\" is not supported", protocol); ALOGE("The interface \"%s\" is not supported", interfaceName); exit(EXIT_FAILURE); exit(EXIT_FAILURE); } } Loading Loading @@ -106,7 +102,8 @@ ndk::ScopedAStatus ThreadChip::initChip(const std::shared_ptr<IThreadChipCallbac if (in_callback == nullptr) { if (in_callback == nullptr) { return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT); return ndk::ScopedAStatus::fromExceptionCode(EX_ILLEGAL_ARGUMENT); } else if (mCallback == nullptr) { } else if (mCallback == nullptr) { if (mSpinelInterface->Init(mUrl) != OT_ERROR_NONE) { if (mSpinelInterface->Init(handleReceivedFrameJump, this, mRxFrameBuffer) != OT_ERROR_NONE) { return errorStatus(ERROR_FAILED, "Failed to initialize the interface"); return errorStatus(ERROR_FAILED, "Failed to initialize the interface"); } } Loading
threadnetwork/aidl/default/thread_chip.hpp +1 −0 Original line number Original line Diff line number Diff line Loading @@ -20,6 +20,7 @@ #include <aidl/android/hardware/threadnetwork/IThreadChipCallback.h> #include <aidl/android/hardware/threadnetwork/IThreadChipCallback.h> #include "lib/spinel/spinel_interface.hpp" #include "lib/spinel/spinel_interface.hpp" #include "lib/url/url.hpp" #include "mainloop.hpp" #include "mainloop.hpp" #include <android/binder_auto_utils.h> #include <android/binder_auto_utils.h> Loading