123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- /*
- * Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
- *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
- #ifndef _CDP_TXRX_MLO_H_
- #define _CDP_TXRX_MLO_H_
- #include "cdp_txrx_ops.h"
- struct cdp_mlo_ctxt;
- /**
- * cdp_ctrl_mlo_mgr - opaque handle for mlo manager context
- */
- struct cdp_ctrl_mlo_mgr;
- struct
- cdp_mlo_ctxt *dp_mlo_ctxt_attach_wifi3(struct cdp_ctrl_mlo_mgr *ctrl_ctxt);
- void dp_mlo_ctxt_detach_wifi3(struct cdp_mlo_ctxt *ml_ctxt);
- static inline
- struct cdp_mlo_ctxt *cdp_mlo_ctxt_attach(struct cdp_ctrl_mlo_mgr *ctrl_ctxt)
- {
- return dp_mlo_ctxt_attach_wifi3(ctrl_ctxt);
- }
- static inline
- void cdp_mlo_ctxt_detach(struct cdp_mlo_ctxt *ml_ctxt)
- {
- dp_mlo_ctxt_detach_wifi3(ml_ctxt);
- }
- static inline void cdp_soc_mlo_soc_setup(ol_txrx_soc_handle soc,
- struct cdp_mlo_ctxt *mlo_ctx)
- {
- if (!soc || !soc->ops) {
- QDF_BUG(0);
- return;
- }
- if (!soc->ops->mlo_ops ||
- !soc->ops->mlo_ops->mlo_soc_setup)
- return;
- soc->ops->mlo_ops->mlo_soc_setup(soc, mlo_ctx);
- }
- static inline void cdp_soc_mlo_soc_teardown(ol_txrx_soc_handle soc,
- struct cdp_mlo_ctxt *mlo_ctx)
- {
- if (!soc || !soc->ops) {
- QDF_BUG(0);
- return;
- }
- if (!soc->ops->mlo_ops ||
- !soc->ops->mlo_ops->mlo_soc_teardown)
- return;
- soc->ops->mlo_ops->mlo_soc_teardown(soc, mlo_ctx);
- }
- #endif /*_CDP_TXRX_MLO_H_*/
|