From ca3c20e9a7dc272539ed79f0769b6928fd2b56c3 Mon Sep 17 00:00:00 2001 From: Pooja Kumari Date: Thu, 1 Jul 2021 13:54:53 +0530 Subject: [PATCH 1/2] msm: ipa3: add v2x ethernet pipes Add cv2x ethernet endpoint configuration changes. Change-Id: I6d1ac9cb5a282a871722e56f51c7c027b24b6b55 Signed-off-by: Pooja Kumari --- include/linux/ipa_uc_offload.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/include/linux/ipa_uc_offload.h b/include/linux/ipa_uc_offload.h index 095fcb048ada..9d80c752c40b 100644 --- a/include/linux/ipa_uc_offload.h +++ b/include/linux/ipa_uc_offload.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: GPL-2.0-only */ /* - * Copyright (c) 2016-2020, The Linux Foundation. All rights reserved. + * Copyright (c) 2016-2021, The Linux Foundation. All rights reserved. */ #ifndef _IPA_UC_OFFLOAD_H_ @@ -19,6 +19,7 @@ enum ipa_uc_offload_proto { IPA_UC_INVALID = 0, IPA_UC_WDI = 1, IPA_UC_NTN = 2, + IPA_UC_NTN_V2X = 3, IPA_UC_MAX_PROT_SIZE }; @@ -89,6 +90,7 @@ struct ntn_buff_smmu_map { * @num_buffers: Rx/Tx buffer pool size (in terms of elements) * @data_buff_size: size of the each data buffer allocated in DDR * @ntn_reg_base_ptr_pa: physical address of the Tx/Rx NTN Ring's + * @u8 db_mode: 0 means irq mode, 1 means db mode * tail pointer */ struct ipa_ntn_setup_info { @@ -111,6 +113,8 @@ struct ipa_ntn_setup_info { u32 data_buff_size; phys_addr_t ntn_reg_base_ptr_pa; + + u8 db_mode; }; /** @@ -176,10 +180,12 @@ struct ipa_uc_offload_conn_out_params { * struct ipa_perf_profile - To set BandWidth profile * * @client: type of "client" (IPA_CLIENT_ODU#_PROD/CONS) + * @proto: uC offload protocol type * @max_supported_bw_mbps: maximum bandwidth needed (in Mbps) */ struct ipa_perf_profile { enum ipa_client_type client; + enum ipa_uc_offload_proto proto; u32 max_supported_bw_mbps; }; From 4350ddc2c4ae5e86a3b84ca71972247d217e56e2 Mon Sep 17 00:00:00 2001 From: Pooja Kumari Date: Thu, 1 Jul 2021 14:35:56 +0530 Subject: [PATCH 2/2] msm: ipa3: add v2x ethernet support Add the v2x ethernet pipe connect support for offloading v2x traffic. Change-Id: I5e84f7e1d07722eeb5a7b9fbfbccb69451c72934 Signed-off-by: Pooja Kumari --- include/linux/ipa_uc_offload.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/include/linux/ipa_uc_offload.h b/include/linux/ipa_uc_offload.h index 9d80c752c40b..2f7474ea7e43 100644 --- a/include/linux/ipa_uc_offload.h +++ b/include/linux/ipa_uc_offload.h @@ -143,10 +143,14 @@ struct ipa_ntn_conn_in_params { * @ul_uc_db_pa: physical address of IPA uc doorbell for UL * @dl_uc_db_pa: physical address of IPA uc doorbell for DL * @clnt_hdl: opaque handle assigned to offload client + * @ul_uc_db_iomem: iomem address of IPA uc doorbell for UL + * @dl_uc_db_iomem: iomem address of IPA uc doorbell for DL */ struct ipa_ntn_conn_out_params { phys_addr_t ul_uc_db_pa; phys_addr_t dl_uc_db_pa; + void __iomem *ul_uc_db_iomem; + void __iomem *dl_uc_db_iomem; }; /**