123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254 |
- /*
- * Copyright (c) 2012-2019 The Linux Foundation. All rights reserved.
- * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. 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
- * above copyright notice and this permission notice appear in all
- * copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
- * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
- * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
- * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
- * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
- */
- /**
- * DOC: This file contains definitions of Data Path configuration.
- */
- #ifndef _CFG_IPA_H_
- #define _CFG_IPA_H_
- #include "cfg_define.h"
- /* DP INI Declarations */
- /*
- * IPA Offload configuration - Each bit enables a feature
- * bit0 - IPA Enable
- * bit1 - IPA Pre filter enable
- * bit2 - IPv6 enable
- * bit3 - IPA Resource Manager (RM) enable
- * bit4 - IPA Clock scaling enable
- * bit5 - IPA UC enable
- * bit6 - IPA UC STA enable
- * bit8 - IPA real time debugging
- * bit9 - IPA Optional wifi dp enable
- */
- /*
- * <ini>
- * gIPAConfig - IPA configuration
- * @Min: 0
- * @Max: 0xFFFFFFFF
- * @Default: 0
- *
- * This ini specifies the IPA configuration
- *
- * Related: N/A
- *
- * Supported Feature: IPA
- *
- * Usage: Internal
- *
- * </ini>
- */
- #define CFG_DP_IPA_OFFLOAD_CONFIG \
- CFG_INI_UINT("gIPAConfig", \
- 0, \
- 0xFFFFFFFF, \
- 0, \
- CFG_VALUE_OR_DEFAULT, "IPA offload configuration")
- /*
- * <ini>
- * gIPADescSize - IPA descriptor size
- * @Min: 800
- * @Max: 8000
- * @Default: 800
- *
- * This ini specifies the IPA descriptor size
- *
- * Related: N/A
- *
- * Supported Feature: IPA
- *
- * Usage: Internal
- *
- * </ini>
- */
- #define CFG_DP_IPA_DESC_SIZE \
- CFG_INI_UINT("gIPADescSize", \
- 800, \
- 8000, \
- 800, \
- CFG_VALUE_OR_DEFAULT, "IPA DESC SIZE")
- /*
- * <ini>
- * gIPAHighBandwidthMbps - IPA high bw threshold
- * @Min: 200
- * @Max: 4294967295UL
- * @Default: 400
- *
- * This ini specifies the IPA high bw threshold
- *
- * Related: N/A
- *
- * Supported Feature: IPA
- *
- * Usage: Internal
- *
- * </ini>
- */
- #define CFG_DP_IPA_HIGH_BANDWIDTH_MBPS \
- CFG_INI_UINT("gIPAHighBandwidthMbps", \
- 200, \
- 4294967295UL, \
- 400, \
- CFG_VALUE_OR_DEFAULT, "IPA high bw threshold")
- /*
- * <ini>
- * gIPAMediumBandwidthMbps - IPA medium bw threshold
- * @Min: 100
- * @Max: 4294967295UL
- * @Default: 200
- *
- * This ini specifies the IPA medium bw threshold
- *
- * Related: N/A
- *
- * Supported Feature: IPA
- *
- * Usage: Internal
- *
- * </ini>
- */
- #define CFG_DP_IPA_MEDIUM_BANDWIDTH_MBPS \
- CFG_INI_UINT("gIPAMediumBandwidthMbps", \
- 100, \
- 4294967295UL, \
- 200, \
- CFG_VALUE_OR_DEFAULT, "IPA medium bw threshold")
- /*
- * <ini>
- * gIPALowBandwidthMbps - IPA low bw threshold
- * @Min: 0
- * @Max: 4294967295UL
- * @Default: 100
- *
- * This ini specifies the IPA low bw threshold
- *
- * Related: N/A
- *
- * Supported Feature: IPA
- *
- * Usage: Internal
- *
- * </ini>
- */
- #define CFG_DP_IPA_LOW_BANDWIDTH_MBPS \
- CFG_INI_UINT("gIPALowBandwidthMbps", \
- 0, \
- 4294967295UL, \
- 100, \
- CFG_VALUE_OR_DEFAULT, "IPA low bw threshold")
- /*
- * <ini>
- * gIPAForceVotingEnable - IPA force voting enable
- * @Default: false
- *
- * This ini specifies to enable IPA force voting
- *
- * Related: N/A
- *
- * Supported Feature: IPA
- *
- * Usage: Internal
- *
- * </ini>
- */
- #define CFG_DP_IPA_ENABLE_FORCE_VOTING \
- CFG_INI_BOOL("gIPAForceVotingEnable", \
- false, "Ctrl to enable force voting")
- /*
- * <ini>
- * IpaUcTxBufCount - IPA tx buffer count
- * @Min: 0
- * @Max: 2048
- * @Default: 512
- *
- * This ini specifies the IPA tx buffer count
- *
- * Related: N/A
- *
- * Supported Feature: IPA
- *
- * Usage: Internal
- *
- * </ini>
- */
- #define CFG_DP_IPA_UC_TX_BUF_COUNT \
- CFG_INI_UINT("IpaUcTxBufCount", \
- 0, \
- 2048, \
- 512, \
- CFG_VALUE_OR_DEFAULT, "IPA tx buffer count")
- /*
- * <ini>
- * gIPAWds - IPA WDS Enable
- * @Default: false
- *
- * This ini specifies to enable WDS for IPA
- *
- * Related: N/A
- *
- * Supported Feature: IPA
- *
- * Usage: Internal
- *
- * </ini>
- */
- #define CFG_DP_IPA_WDS_STATUS \
- CFG_INI_BOOL("gIPAWds", \
- false, "Ctrl to enable WDS for EasyMesh")
- /*
- * <ini>
- * gIPAVlanEnable - IPA vlan support enable
- * @Default: false
- *
- * This ini specifies to enable IPA vlan support
- *
- * Related: N/A
- *
- * Supported Feature: IPA
- *
- * Usage: Internal
- *
- * </ini>
- */
- #define CFG_DP_IPA_ENABLE_VLAN_SUPPORT \
- CFG_INI_BOOL("gIPAVlanEnable", \
- false, "Ctrl to enable vlan support with IPA Offload")
- #define CFG_IPA \
- CFG(CFG_DP_IPA_OFFLOAD_CONFIG) \
- CFG(CFG_DP_IPA_DESC_SIZE) \
- CFG(CFG_DP_IPA_HIGH_BANDWIDTH_MBPS) \
- CFG(CFG_DP_IPA_MEDIUM_BANDWIDTH_MBPS) \
- CFG(CFG_DP_IPA_LOW_BANDWIDTH_MBPS) \
- CFG(CFG_DP_IPA_ENABLE_FORCE_VOTING) \
- CFG(CFG_DP_IPA_UC_TX_BUF_COUNT) \
- CFG(CFG_DP_IPA_WDS_STATUS) \
- CFG(CFG_DP_IPA_ENABLE_VLAN_SUPPORT)
- #endif /* _CFG_IPA_H_ */
|