qcacmn: Add INI support for packet log buffer size

Add INI parameter "PacketLogBufSize" to populate
packet log buffer size.

Change-Id: Ic9b963a88a6f6d884d5fa3a63b4fed6768ba2fc4
CRs-Fixed: 2611409
This commit is contained in:
Alok Kumar
2020-01-24 16:59:58 +05:30
کامیت شده توسط nshrivas
والد 61df09450e
کامیت 0265d7917a
4فایلهای تغییر یافته به همراه32 افزوده شده و 7 حذف شده

مشاهده پرونده

@@ -585,10 +585,14 @@ static void pktlog_callback_registration(uint8_t callback_type)
}
#endif
#define ONE_MEGABYTE (1024 * 1024)
void pktlog_init(struct hif_opaque_softc *scn)
{
struct pktlog_dev_t *pl_dev = get_pktlog_handle();
struct ath_pktlog_info *pl_info;
void *soc = cds_get_context(QDF_MODULE_ID_SOC);
uint32_t buff_size;
if (!pl_dev || !pl_dev->pl_info) {
qdf_print("pl_dev or pl_info is invalid");
@@ -601,7 +605,9 @@ void pktlog_init(struct hif_opaque_softc *scn)
PKTLOG_LOCK_INIT(pl_info);
mutex_init(&pl_info->pktlog_mutex);
pl_info->buf_size = PKTLOG_DEFAULT_BUFSIZE;
buff_size = cdp_cfg_get(soc, cfg_dp_pktlog_buffer_size) * ONE_MEGABYTE;
pl_info->buf_size = (buff_size ? buff_size : ONE_MEGABYTE);
pl_info->buf = NULL;
pl_info->log_state = 0;
pl_info->init_saved_state = 0;
@@ -780,14 +786,14 @@ int pktlog_enable(struct hif_opaque_softc *scn, int32_t log_state,
return err;
}
#define ONE_MEGABYTE (1024 * 1024)
#define MAX_ALLOWED_PKTLOG_SIZE (64 * ONE_MEGABYTE)
static int __pktlog_setsize(struct hif_opaque_softc *scn, int32_t size)
{
struct pktlog_dev_t *pl_dev;
struct ath_pktlog_info *pl_info;
uint8_t pdev_id = WMI_PDEV_ID_SOC;
void *soc = cds_get_context(QDF_MODULE_ID_SOC);
uint32_t buff_size;
uint32_t max_allowed_buff_size;
pl_dev = get_pktlog_handle();
@@ -815,10 +821,13 @@ static int __pktlog_setsize(struct hif_opaque_softc *scn, int32_t size)
pl_info->curr_pkt_state = PKTLOG_OPR_IN_PROGRESS;
if (size < ONE_MEGABYTE || size > MAX_ALLOWED_PKTLOG_SIZE) {
buff_size = cdp_cfg_get(soc, cfg_dp_pktlog_buffer_size) * ONE_MEGABYTE;
max_allowed_buff_size = (buff_size ? buff_size : ONE_MEGABYTE);
if (size < ONE_MEGABYTE || size > max_allowed_buff_size) {
qdf_print("%s: Cannot Set Pktlog Buffer size of %d bytes.Min required is %d MB and Max allowed is %d MB.",
__func__, size, (ONE_MEGABYTE / ONE_MEGABYTE),
(MAX_ALLOWED_PKTLOG_SIZE / ONE_MEGABYTE));
(max_allowed_buff_size / ONE_MEGABYTE));
pl_info->curr_pkt_state = PKTLOG_OPR_NOT_IN_PROGRESS;
qdf_print("%s: Invalid requested buff size", __func__);
return -EINVAL;