From 276b775f4dc7ddfa8a3210edb8b0783fe750f185 Mon Sep 17 00:00:00 2001 From: Ankit Kumar Date: Fri, 3 Jan 2020 09:23:02 +0530 Subject: [PATCH] qcacmn: Hw vlan config wmi interface declaration Hw vlan configuration wmi interface declaration for sending command to fw to configure hw vlan configuration. Change-Id: I11f78c7d5a0782ebaeef6aa43016600a345711b6 CRs-Fixed: 2596298 --- wmi/inc/wmi_unified_param.h | 34 +++++++++++++++++++++++++++++++++- wmi/inc/wmi_unified_priv.h | 6 +++++- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/wmi/inc/wmi_unified_param.h b/wmi/inc/wmi_unified_param.h index 79f75bcc0dcd..d4e539a8b9af 100644 --- a/wmi/inc/wmi_unified_param.h +++ b/wmi/inc/wmi_unified_param.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016-2019 The Linux Foundation. All rights reserved. + * Copyright (c) 2016-2020 The Linux Foundation. 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 @@ -7680,6 +7680,38 @@ struct vap_tidmap_prec_params { uint32_t vdev_id; uint32_t map_precedence; }; + +/** + * struct peer_vlan_config_param - peer vlan config command + * @tx_cmd: Tx command + * @rx_cmd: Rx command + * @tx_strip_insert: Strip or Insert vlan in Tx[0:Strip, 1: Insert] + * @tx_strip_insert_inner: Enable tx_strip_insert operation for inner vlan tag. + * @tx_strip_insert_outer: Enable tx_strip_insert operation for outer vlan tag. + * @rx_strip_c_tag: Strip c_tag + * @rx_strip_s_tag: Strip s_tag + * @rx_insert_c_tag: Insert c_tag + * @rx_insert_s_tag: Insert s_tag + * + * @insert_vlan_inner_tci: Vlan inner tci + * @insert_vlan_inner_tci: Vlan outer tci + * + * @vdev_id: vdev id corresponding to peer. + */ +struct peer_vlan_config_param { + uint16_t tx_cmd:1, + rx_cmd:1, + tx_strip_insert:1, + tx_strip_insert_inner:1, + tx_strip_insert_outer:1, + rx_strip_c_tag:1, + rx_strip_s_tag:1, + rx_insert_c_tag:1, + rx_insert_s_tag:1; + uint16_t insert_vlan_inner_tci; + uint16_t insert_vlan_outer_tci; + uint8_t vdev_id; +}; #endif /** diff --git a/wmi/inc/wmi_unified_priv.h b/wmi/inc/wmi_unified_priv.h index 4713a5e8c7f6..2b47c442af05 100644 --- a/wmi/inc/wmi_unified_priv.h +++ b/wmi/inc/wmi_unified_priv.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013-2019 The Linux Foundation. All rights reserved. + * Copyright (c) 2013-2020 The Linux Foundation. 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 @@ -2067,6 +2067,10 @@ QDF_STATUS (*send_vdev_tidmap_prec_cmd)(wmi_unified_t wmi_handle, QDF_STATUS (*send_peer_ft_roam_cmd)(wmi_unified_t wmi_handle, uint8_t peer_addr[QDF_MAC_ADDR_SIZE], uint8_t vdev_id); +QDF_STATUS (*send_peer_vlan_config_cmd)(wmi_unified_t wmi, + uint8_t peer_addr[QDF_MAC_ADDR_SIZE], + struct peer_vlan_config_param *param); + #endif QDF_STATUS (*send_mws_coex_status_req_cmd)(wmi_unified_t wmi_handle, uint32_t vdev_id, uint32_t cmd_id);