1 /* 2 * Copyright (c) 2017-2019 The Linux Foundation. All rights reserved. 3 * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. 4 * 5 * Permission to use, copy, modify, and/or distribute this software for 6 * any purpose with or without fee is hereby granted, provided that the 7 * above copyright notice and this permission notice appear in all 8 * copies. 9 * 10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL 11 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED 12 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE 13 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL 14 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR 15 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER 16 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 17 * PERFORMANCE OF THIS SOFTWARE. 18 */ 19 /** 20 * DOC: Declare various struct, macros which shall be used in 21 * pmo arp offload feature. 22 * 23 * Note: This file shall not contain public API's prototype/declarations. 24 * 25 */ 26 27 #ifndef _WLAN_PMO_ARP_PUBLIC_STRUCT_H_ 28 #define _WLAN_PMO_ARP_PUBLIC_STRUCT_H_ 29 30 #include "wlan_pmo_common_public_struct.h" 31 32 /** 33 * struct pmo_arp_req - pmo arp request 34 * @psoc: objmgr psoc 35 * @vdev_id: vdev id on which arp offload needed 36 * @ipv4_addr: ipv4 address for the interface 37 * @trigger: context from where arp offload triggered 38 */ 39 struct pmo_arp_req { 40 struct wlan_objmgr_psoc *psoc; 41 uint8_t vdev_id; 42 uint32_t ipv4_addr; 43 enum pmo_offload_trigger trigger; 44 }; 45 46 /** 47 * struct pmo_arp_offload_params - pmo arp offload param for target interface 48 * @enable: true when arp offload is enabled else false 49 * @host_ipv4_addr: host interface ipv4 address 50 * @bssid: peer ap address 51 * @is_offload_applied: Has offload been applied to the target 52 */ 53 struct pmo_arp_offload_params { 54 uint8_t enable; 55 uint8_t host_ipv4_addr[QDF_IPV4_ADDR_SIZE]; 56 struct qdf_mac_addr bssid; 57 bool is_offload_applied; 58 }; 59 60 #endif /* end of _WLAN_PMO_ARP_PUBLIC_STRUCT_H_ */ 61