1 /* 2 * Copyright (c) 2021, 2023 Qualcomm Innovation Center, Inc. All rights reserved. 3 * 4 * Permission to use, copy, modify, and/or distribute this software for any 5 * purpose with or without fee is hereby granted, provided that the above 6 * copyright notice and this permission notice appear in all copies. 7 * 8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15 */ 16 17 /** 18 * DOC: osif_vdev_mgr_util.h 19 * 20 * This header file maintains declarations of osif APIs corresponding to vdev 21 * manager. 22 */ 23 24 #ifndef __OSIF_VDEV_MGR_UTIL_H 25 #define __OSIF_VDEV_MGR_UTIL_H 26 /** 27 * struct osif_vdev_mgr_ops - VDEV mgr legacy callbacks 28 * @osif_vdev_mgr_set_mac_addr_response: Callback to indicate set MAC address 29 * response from FW 30 * @osif_vdev_mgr_send_scan_done_complete_cb: send scan done indication to 31 * upper layer 32 */ 33 struct osif_vdev_mgr_ops { 34 #ifdef WLAN_FEATURE_DYNAMIC_MAC_ADDR_UPDATE 35 void (*osif_vdev_mgr_set_mac_addr_response)(uint8_t vdev_id, 36 uint8_t resp_status); 37 #endif 38 void (*osif_vdev_mgr_send_scan_done_complete_cb)(uint8_t vdev_id); 39 }; 40 41 /** 42 * osif_vdev_mgr_set_legacy_cb() - Sets legacy callbacks to osif 43 * @osif_legacy_ops: Function pointer to legacy ops structure 44 * 45 * API to set legacy callbacks to osif 46 * Context: Any context. 47 * 48 * Return: void 49 */ 50 void osif_vdev_mgr_set_legacy_cb(struct osif_vdev_mgr_ops *osif_legacy_ops); 51 52 /** 53 * osif_vdev_mgr_reset_legacy_cb() - Resets legacy callbacks to osif 54 * 55 * API to reset legacy callbacks to osif 56 * Context: Any context. 57 * 58 * Return: void 59 */ 60 void osif_vdev_mgr_reset_legacy_cb(void); 61 62 /** 63 * osif_vdev_mgr_register_cb() - Register VDEV manager legacy callbacks 64 * 65 * API to register legavy VDEV manager callbacks 66 * 67 * Return: QDF_STATUS 68 */ 69 QDF_STATUS osif_vdev_mgr_register_cb(void); 70 #endif /* __OSIF_CM_UTIL_H */ 71