From 2cd36266abaaf8b79ebb0441e6ed2ec3847cf3ca Mon Sep 17 00:00:00 2001 From: Li Cao Date: Thu, 11 Feb 2021 10:29:36 +0800 Subject: [PATCH] [low-power] fix csl code wrapper (#6149) This commit updates the wrapper for CSL code, updating most occurrences !OPENTHREAD_MTD to OPENTHREAD_FTD. We used !OPENTHREAD_MTD because we think both FTD and RCP need that code. But that actually means host side of RCP (posix) need that code and posix host is always FTD. The radio part itself don't need those code. The radio part doesn't even contain most of those source files that has CSL logic (except for sub_mac.cpp). This commit also adds missing initialization for data field in Mac. --- src/core/common/instance.hpp | 2 +- src/core/mac/data_poll_handler.hpp | 2 +- src/core/mac/mac.cpp | 39 +++++++++++++++------------- src/core/mac/mac.hpp | 14 +++++----- src/core/mac/mac_links.hpp | 2 +- src/core/thread/csl_tx_scheduler.cpp | 4 +-- src/core/thread/csl_tx_scheduler.hpp | 4 +-- src/core/thread/indirect_sender.cpp | 16 ++++++------ src/core/thread/indirect_sender.hpp | 4 +-- src/core/thread/mle.hpp | 4 +-- src/core/thread/mle_router.cpp | 8 +++--- src/core/thread/mle_tlvs.hpp | 4 +-- src/core/thread/topology.cpp | 2 +- src/core/thread/topology.hpp | 2 +- 14 files changed, 55 insertions(+), 52 deletions(-) diff --git a/src/core/common/instance.hpp b/src/core/common/instance.hpp index 1c6bde8bb..bb7e391ee 100644 --- a/src/core/common/instance.hpp +++ b/src/core/common/instance.hpp @@ -544,7 +544,7 @@ template <> inline DataPollHandler &Instance::Get(void) return mThreadNetif.mMeshForwarder.mIndirectSender.mDataPollHandler; } -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE template <> inline CslTxScheduler &Instance::Get(void) { return mThreadNetif.mMeshForwarder.mIndirectSender.mCslTxScheduler; diff --git a/src/core/mac/data_poll_handler.hpp b/src/core/mac/data_poll_handler.hpp index 6d6285330..43f973bb6 100644 --- a/src/core/mac/data_poll_handler.hpp +++ b/src/core/mac/data_poll_handler.hpp @@ -90,7 +90,7 @@ public: class ChildInfo { friend class DataPollHandler; -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE friend class CslTxScheduler; #endif diff --git a/src/core/mac/mac.cpp b/src/core/mac/mac.cpp index eb767c7ee..d401891d8 100644 --- a/src/core/mac/mac.cpp +++ b/src/core/mac/mac.cpp @@ -82,6 +82,9 @@ Mac::Mac(Instance &aInstance) , mPendingTransmitDataDirect(false) #if OPENTHREAD_FTD , mPendingTransmitDataIndirect(false) +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE + , mPendingTransmitDataCsl(false) +#endif #endif , mPendingTransmitPoll(false) , mPendingTransmitOobFrame(false) @@ -108,9 +111,9 @@ Mac::Mac(Instance &aInstance) , mMaxFrameRetriesDirect(kDefaultMaxFrameRetriesDirect) #if OPENTHREAD_FTD , mMaxFrameRetriesIndirect(kDefaultMaxFrameRetriesIndirect) -#endif -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE , mCslTxFireTime(TimeMilli::kMaxDuration) +#endif #endif , mActiveScanHandler(nullptr) // Initialize `mActiveScanHandler` and `mEnergyScanHandler` union , mScanHandlerContext(nullptr) @@ -207,7 +210,7 @@ bool Mac::IsInTransmitState(void) const case kOperationTransmitDataDirect: #if OPENTHREAD_FTD case kOperationTransmitDataIndirect: -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE case kOperationTransmitDataCsl: #endif #endif @@ -581,7 +584,7 @@ exit: return; } -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE void Mac::RequestCslFrameTransmission(uint32_t aDelay) { VerifyOrExit(mEnabled); @@ -655,7 +658,7 @@ void Mac::UpdateIdleMode(void) } #endif } -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE else if (mPendingTransmitDataCsl) { mTimer.FireAt(mCslTxFireTime); @@ -727,7 +730,7 @@ void Mac::StartOperation(Operation aOperation) mPendingTransmitDataIndirect = true; break; -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE case kOperationTransmitDataCsl: mPendingTransmitDataCsl = true; break; @@ -772,7 +775,7 @@ void Mac::PerformNextOperation(void) mPendingTransmitDataDirect = false; #if OPENTHREAD_FTD mPendingTransmitDataIndirect = false; -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE mPendingTransmitDataCsl = false; #endif #endif @@ -793,7 +796,7 @@ void Mac::PerformNextOperation(void) mPendingWaitingForData = false; mOperation = kOperationWaitingForData; } -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE else if (mPendingTransmitDataCsl && TimerMilli::GetNow() >= mCslTxFireTime) { mPendingTransmitDataCsl = false; @@ -870,7 +873,7 @@ void Mac::PerformNextOperation(void) case kOperationTransmitDataDirect: #if OPENTHREAD_FTD case kOperationTransmitDataIndirect: -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE case kOperationTransmitDataCsl: #endif #endif @@ -1198,7 +1201,7 @@ void Mac::BeginTransmit(void) } break; -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE case kOperationTransmitDataCsl: txFrames.SetMaxCsmaBackoffs(kMaxCsmaBackoffsCsl); txFrames.SetMaxFrameRetries(kMaxFrameRetriesCsl); @@ -1423,7 +1426,7 @@ void Mac::RecordFrameTransmitStatus(const TxFrame &aFrame, #if OPENTHREAD_FTD if (aAckFrame->GetVersion() == Frame::kFcfFrameVersion2015) { -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE ProcessCsl(*aAckFrame, dstAddr); #endif } @@ -1630,7 +1633,7 @@ void Mac::HandleTransmitDone(TxFrame &aFrame, RxFrame *aAckFrame, otError aError break; #if OPENTHREAD_FTD -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE case kOperationTransmitDataCsl: mCounters.mTxData++; @@ -1711,7 +1714,7 @@ void Mac::HandleTimer(void) } #endif } -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE else if (mPendingTransmitDataCsl) { PerformNextOperation(); @@ -2093,7 +2096,7 @@ void Mac::HandleReceivedFrame(RxFrame *aFrame, otError aError) ExitNow(); } -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE if (aFrame->GetVersion() == Frame::kFcfFrameVersion2015) { ProcessCsl(*aFrame, srcaddr); @@ -2393,7 +2396,7 @@ const char *Mac::OperationToString(Operation aOperation) retval = "TransmitDataIndirect"; break; -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE case kOperationTransmitDataCsl: retval = "TransmitDataCsl"; break; @@ -2559,7 +2562,7 @@ bool Mac::IsCslEnabled(void) const #endif // OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE void Mac::ProcessCsl(const RxFrame &aFrame, const Address &aSrcAddr) { const uint8_t *cur = aFrame.GetHeaderIe(Frame::kHeaderIeCsl); @@ -2585,7 +2588,7 @@ void Mac::ProcessCsl(const RxFrame &aFrame, const Address &aSrcAddr) exit: return; } -#endif // !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#endif // OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE #if OPENTHREAD_CONFIG_MLE_LINK_METRICS_ENABLE void Mac::ProcessEnhAckProbing(const RxFrame &aFrame, const Neighbor &aNeighbor) @@ -2695,7 +2698,7 @@ void Mac::UpdateFrameControlField(const Neighbor *aNeighbor, bool aIsTimeSync, u } else #endif -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE if (aNeighbor != nullptr && !Mle::MleRouter::IsActiveRouter(aNeighbor->GetRloc16()) && static_cast(aNeighbor)->IsCslSynchronized()) { diff --git a/src/core/mac/mac.hpp b/src/core/mac/mac.hpp index 511565163..9ab8926b7 100644 --- a/src/core/mac/mac.hpp +++ b/src/core/mac/mac.hpp @@ -221,7 +221,7 @@ public: */ void RequestIndirectFrameTransmission(void); -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE /** * This method requests `Mac` to start a CSL tx operation after a delay of @p aDelay time. * @@ -792,7 +792,7 @@ private: kOperationTransmitDataDirect, #if OPENTHREAD_FTD kOperationTransmitDataIndirect, -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE kOperationTransmitDataCsl, #endif #endif @@ -862,7 +862,7 @@ private: uint8_t GetTimeIeOffset(const Frame &aFrame); #endif -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE void ProcessCsl(const RxFrame &aFrame, const Address &aSrcAddr); #endif #if OPENTHREAD_CONFIG_MLE_LINK_METRICS_ENABLE @@ -883,9 +883,9 @@ private: bool mPendingTransmitDataDirect : 1; #if OPENTHREAD_FTD bool mPendingTransmitDataIndirect : 1; -#endif -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE bool mPendingTransmitDataCsl : 1; +#endif #endif bool mPendingTransmitPoll : 1; bool mPendingTransmitOobFrame : 1; @@ -919,9 +919,9 @@ private: uint8_t mMaxFrameRetriesDirect; #if OPENTHREAD_FTD uint8_t mMaxFrameRetriesIndirect; -#endif -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE TimeMilli mCslTxFireTime; +#endif #endif union diff --git a/src/core/mac/mac_links.hpp b/src/core/mac/mac_links.hpp index 4ae1fd257..498e05b09 100644 --- a/src/core/mac/mac_links.hpp +++ b/src/core/mac/mac_links.hpp @@ -180,7 +180,7 @@ public: mTxFrame802154.SetIsARetransmission(false); mTxFrame802154.SetIsSecurityProcessed(false); mTxFrame802154.SetCsmaCaEnabled(true); // Set to true by default, only set to `false` for CSL transmission -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE mTxFrame802154.SetTxDelay(0); mTxFrame802154.SetTxDelayBaseTime(0); #endif diff --git a/src/core/thread/csl_tx_scheduler.cpp b/src/core/thread/csl_tx_scheduler.cpp index 8b8f0e763..0a5400ad0 100644 --- a/src/core/thread/csl_tx_scheduler.cpp +++ b/src/core/thread/csl_tx_scheduler.cpp @@ -28,7 +28,7 @@ #include "csl_tx_scheduler.hpp" -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE #include "common/locator-getters.hpp" #include "common/logging.hpp" @@ -296,4 +296,4 @@ exit: } // namespace ot -#endif // !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#endif // OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE diff --git a/src/core/thread/csl_tx_scheduler.hpp b/src/core/thread/csl_tx_scheduler.hpp index 645315c63..f9f342398 100644 --- a/src/core/thread/csl_tx_scheduler.hpp +++ b/src/core/thread/csl_tx_scheduler.hpp @@ -50,7 +50,7 @@ namespace ot { * @{ */ -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE class Child; @@ -208,7 +208,7 @@ private: Callbacks mCallbacks; }; -#endif // !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#endif // OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE /** * @} diff --git a/src/core/thread/indirect_sender.cpp b/src/core/thread/indirect_sender.cpp index 1ad113c32..dd0375433 100644 --- a/src/core/thread/indirect_sender.cpp +++ b/src/core/thread/indirect_sender.cpp @@ -65,7 +65,7 @@ IndirectSender::IndirectSender(Instance &aInstance) , mEnabled(false) , mSourceMatchController(aInstance) , mDataPollHandler(aInstance) -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE , mCslTxScheduler(aInstance) #endif { @@ -82,7 +82,7 @@ void IndirectSender::Stop(void) } mDataPollHandler.Clear(); -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE mCslTxScheduler.Clear(); #endif @@ -163,7 +163,7 @@ void IndirectSender::ClearAllMessagesForSleepyChild(Child &aChild) mSourceMatchController.ResetMessageCount(aChild); mDataPollHandler.RequestFrameChange(DataPollHandler::kPurgeFrame, aChild); -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE mCslTxScheduler.Update(); #endif @@ -208,7 +208,7 @@ void IndirectSender::HandleChildModeChange(Child &aChild, Mle::DeviceMode aOldMo mSourceMatchController.ResetMessageCount(aChild); mDataPollHandler.RequestFrameChange(DataPollHandler::kPurgeFrame, aChild); -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE mCslTxScheduler.Update(); #endif } @@ -263,7 +263,7 @@ void IndirectSender::RequestMessageUpdate(Child &aChild) aChild.SetWaitingForMessageUpdate(true); mDataPollHandler.RequestFrameChange(DataPollHandler::kPurgeFrame, aChild); -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE mCslTxScheduler.Update(); #endif @@ -295,7 +295,7 @@ void IndirectSender::RequestMessageUpdate(Child &aChild) aChild.SetWaitingForMessageUpdate(true); mDataPollHandler.RequestFrameChange(DataPollHandler::kReplaceFrame, aChild); -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE mCslTxScheduler.Update(); #endif @@ -321,7 +321,7 @@ void IndirectSender::UpdateIndirectMessage(Child &aChild) aChild.SetIndirectFragmentOffset(0); aChild.SetIndirectTxSuccess(true); -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE mCslTxScheduler.Update(); #endif @@ -463,7 +463,7 @@ void IndirectSender::HandleSentFrameToChild(const Mac::TxFrame &aFrame, { aChild.SetIndirectFragmentOffset(nextOffset); mDataPollHandler.HandleNewFrame(aChild); -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE mCslTxScheduler.Update(); #endif ExitNow(); diff --git a/src/core/thread/indirect_sender.hpp b/src/core/thread/indirect_sender.hpp index f0bca7620..af19936a4 100644 --- a/src/core/thread/indirect_sender.hpp +++ b/src/core/thread/indirect_sender.hpp @@ -67,7 +67,7 @@ class IndirectSender : public InstanceLocator, public IndirectSenderBase, privat { friend class Instance; friend class DataPollHandler::Callbacks; -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE friend class CslTxScheduler::Callbacks; #endif @@ -228,7 +228,7 @@ private: bool mEnabled; SourceMatchController mSourceMatchController; DataPollHandler mDataPollHandler; -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE CslTxScheduler mCslTxScheduler; #endif }; diff --git a/src/core/thread/mle.hpp b/src/core/thread/mle.hpp index 95b54741a..5f3e488d9 100644 --- a/src/core/thread/mle.hpp +++ b/src/core/thread/mle.hpp @@ -1241,7 +1241,7 @@ protected: otError AppendXtalAccuracy(Message &aMessage); #endif // OPENTHREAD_CONFIG_TIME_SYNC_ENABLE -#if (!OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE) || OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE +#if (OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE) || OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE /** * This method appends a CSL Channel TLV to a message. * @@ -1263,7 +1263,7 @@ protected: * */ otError AppendCslTimeout(Message &aMessage); -#endif // (!OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE) || OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE +#endif // (OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE) || OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE /** * This method appends a Active Timestamp TLV to a message. diff --git a/src/core/thread/mle_router.cpp b/src/core/thread/mle_router.cpp index cedd8f2cf..bc425f15f 100644 --- a/src/core/thread/mle_router.cpp +++ b/src/core/thread/mle_router.cpp @@ -1789,7 +1789,7 @@ void MleRouter::HandleTimeTick(void) OT_UNREACHABLE_CODE(break); } -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE if (child.IsCslSynchronized() && TimerMilli::GetNow() - child.GetCslLastHeard() >= Time::SecToMsec(child.GetCslTimeout())) { @@ -2449,7 +2449,7 @@ void MleRouter::HandleChildUpdateRequest(const Message & aMessage, ExitNow(error = OT_ERROR_PARSE); } -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE if (child->IsCslSynchronized()) { CslChannelTlv cslChannel; @@ -2470,7 +2470,7 @@ void MleRouter::HandleChildUpdateRequest(const Message & aMessage, child->SetCslChannel(0); } } -#endif // !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#endif // OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE child->SetLastHeard(TimerMilli::GetNow()); @@ -2481,7 +2481,7 @@ void MleRouter::HandleChildUpdateRequest(const Message & aMessage, childDidChange = true; -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE if (child->IsRxOnWhenIdle()) { // Clear CSL synchronization state diff --git a/src/core/thread/mle_tlvs.hpp b/src/core/thread/mle_tlvs.hpp index a70c3a12f..4da6c306f 100644 --- a/src/core/thread/mle_tlvs.hpp +++ b/src/core/thread/mle_tlvs.hpp @@ -1265,7 +1265,7 @@ public: bool IsValid(void) const { return GetLength() >= sizeof(*this) - sizeof(Tlv); } } OT_TOOL_PACKED_END; -#if OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE || (!OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE) +#if OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE || (OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE) /** * This class implements CSL Channel TLV generation and parsing. * @@ -1330,7 +1330,7 @@ private: uint16_t mChannel; } OT_TOOL_PACKED_END; -#endif // OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE || (!OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE) +#endif // OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE || (OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE) /** * @} diff --git a/src/core/thread/topology.cpp b/src/core/thread/topology.cpp index da00b2c9f..9d9868679 100644 --- a/src/core/thread/topology.cpp +++ b/src/core/thread/topology.cpp @@ -234,7 +234,7 @@ void Child::Info::SetFrom(const Child &aChild) mFullThreadDevice = aChild.IsFullThreadDevice(); mFullNetworkData = aChild.IsFullNetworkData(); mIsStateRestoring = aChild.IsStateRestoring(); -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE mIsCslSynced = aChild.IsCslSynchronized(); #else mIsCslSynced = false; diff --git a/src/core/thread/topology.hpp b/src/core/thread/topology.hpp index dd066e599..128262889 100644 --- a/src/core/thread/topology.hpp +++ b/src/core/thread/topology.hpp @@ -821,7 +821,7 @@ private: class Child : public Neighbor, public IndirectSender::ChildInfo, public DataPollHandler::ChildInfo -#if !OPENTHREAD_MTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE +#if OPENTHREAD_FTD && OPENTHREAD_CONFIG_MAC_CSL_TRANSMITTER_ENABLE , public CslTxScheduler::ChildInfo #endif