msm: ipa: header file to support wdi 2.4G new pipe

Header file changes that includes new 2.4G wdi tx pipe
info and it's interface.

Change-Id: I0bc77f8359152f8209ec4ef132dc6497d0875c2a
Signed-off-by: Michael Adisumarta <madisuma@codeaurora.org>
This commit is contained in:
Michael Adisumarta 2021-01-21 12:39:27 -08:00
parent b70935b9bf
commit 39665d2f22
2 changed files with 22 additions and 4 deletions

View File

@ -1,6 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2018 - 2020, The Linux Foundation. All rights reserved.
* Copyright (c) 2018 - 2021, The Linux Foundation. All rights reserved.
*/
#ifndef _IPA_WDI3_H_
@ -26,7 +26,8 @@ enum ipa_wdi_version {
};
#define IPA_WDI3_TX_DIR 1
#define IPA_WDI3_RX_DIR 2
#define IPA_WDI3_TX1_DIR 2
#define IPA_WDI3_RX_DIR 3
/**
* struct ipa_wdi_init_in_params - wdi init input parameters
@ -82,6 +83,7 @@ struct ipa_wdi_hdr_info {
* @is_meta_data_valid: if meta data is valid
* @meta_data: meta data if any
* @meta_data_mask: meta data mask
* @is_tx1_used: to indicate whether 2.4g or 5g iface
*/
struct ipa_wdi_reg_intf_in_params {
const char *netdev_name;
@ -90,6 +92,7 @@ struct ipa_wdi_reg_intf_in_params {
u8 is_meta_data_valid;
u32 meta_data;
u32 meta_data_mask;
u8 is_tx1_used;
};
/**
@ -182,6 +185,9 @@ struct ipa_wdi_pipe_setup_info_smmu {
* @tx_smmu: smmu parameters to connect TX pipe(from IPA to WLAN)
* @rx: parameters to connect RX pipe(from WLAN to IPA)
* @rx_smmu: smmu parameters to connect RX pipe(from WLAN to IPA)
* @is_tx1_used: to notify extra pipe required/not
* @tx1: parameters to connect TX1 pipe(from IPA to WLAN second pipe)
* @tx1_smmu: smmu parameters to connect TX1 pipe(from IPA to WLAN second pipe)
*/
struct ipa_wdi_conn_in_params {
ipa_notify_cb notify;
@ -197,6 +203,11 @@ struct ipa_wdi_conn_in_params {
struct ipa_wdi_pipe_setup_info rx;
struct ipa_wdi_pipe_setup_info_smmu rx_smmu;
} u_rx;
bool is_tx1_used;
union {
struct ipa_wdi_pipe_setup_info tx;
struct ipa_wdi_pipe_setup_info_smmu tx_smmu;
} u_tx1;
};
/**
@ -204,11 +215,13 @@ struct ipa_wdi_conn_in_params {
* to WLAN driver
* @tx_uc_db_pa: physical address of IPA uC doorbell for TX
* @rx_uc_db_pa: physical address of IPA uC doorbell for RX
* @tx1_uc_db_pa: physical address of IPA uC doorbell for TX1
* @is_ddr_mapped: flag set to true if address is from DDR
*/
struct ipa_wdi_conn_out_params {
phys_addr_t tx_uc_db_pa;
phys_addr_t rx_uc_db_pa;
phys_addr_t tx1_uc_db_pa;
bool is_ddr_mapped;
};

View File

@ -1,6 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/*
* Copyright (c) 2012-2020, The Linux Foundation. All rights reserved.
* Copyright (c) 2012-2021, The Linux Foundation. All rights reserved.
*/
#ifndef _UAPI_MSM_IPA_H_
@ -433,9 +433,12 @@ enum ipa_client_type {
IPA_CLIENT_ETHERNET2_PROD = 116,
IPA_CLIENT_ETHERNET2_CONS = 117,
/* RESERVED PROD = 118, */
IPA_CLIENT_WLAN2_CONS1 = 119,
};
#define IPA_CLIENT_MAX (IPA_CLIENT_ETHERNET2_CONS + 1)
#define IPA_CLIENT_MAX (IPA_CLIENT_WLAN2_CONS1 + 1)
#define IPA_CLIENT_WLAN2_PROD IPA_CLIENT_A5_WLAN_AMPDU_PROD
#define IPA_CLIENT_Q6_DL_NLO_DATA_PROD IPA_CLIENT_Q6_DL_NLO_DATA_PROD
@ -459,6 +462,7 @@ enum ipa_client_type {
#define IPA_CLIENT_AQC_ETHERNET_CONS IPA_CLIENT_AQC_ETHERNET_CONS
#define IPA_CLIENT_MHI_QDSS_CONS IPA_CLIENT_MHI_QDSS_CONS
#define IPA_CLIENT_QDSS_PROD IPA_CLIENT_QDSS_PROD
#define IPA_CLIENT_WLAN2_CONS1 IPA_CLIENT_WLAN2_CONS1
#define IPA_CLIENT_IS_APPS_CONS(client) \
((client) == IPA_CLIENT_APPS_LAN_CONS || \
@ -489,6 +493,7 @@ enum ipa_client_type {
((client) == IPA_CLIENT_WLAN1_CONS || \
(client) == IPA_CLIENT_WLAN2_CONS || \
(client) == IPA_CLIENT_WLAN3_CONS || \
(client) == IPA_CLIENT_WLAN2_CONS1 || \
(client) == IPA_CLIENT_WLAN4_CONS)
#define IPA_CLIENT_IS_ODU_CONS(client) \