qcacmn: CFR: Abstract retrieval of netdevice name
Since netdevice name retrieval is tied to OS, move it to qdf OS layer instead of doing it inside CFR ucfg layer. Change-Id: Ia9dcbdf56bcb36a1f0788be9964ea87fdf5beb3f CRs-Fixed: 2643682
This commit is contained in:

committed by
nshrivas

parent
0c314d439d
commit
be65ea9002
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2016-2017 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2016-2017,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
|
||||
@@ -20,6 +20,8 @@
|
||||
#ifndef _WLAN_OSIF_PRIV_H_
|
||||
#define _WLAN_OSIF_PRIV_H_
|
||||
|
||||
#include "qdf_net_if.h"
|
||||
|
||||
struct osif_scan_pdev;
|
||||
struct osif_tdls_vdev;
|
||||
|
||||
@@ -28,11 +30,13 @@ struct osif_tdls_vdev;
|
||||
* @wiphy: wiphy handle
|
||||
* @legacy_osif_priv: legacy osif private handle
|
||||
* @scan_priv: Scan related data used by cfg80211 scan
|
||||
* @nif: pdev net device
|
||||
*/
|
||||
struct pdev_osif_priv {
|
||||
struct wiphy *wiphy;
|
||||
void *legacy_osif_priv;
|
||||
struct osif_scan_pdev *osif_scan;
|
||||
struct qdf_net_if *nif;
|
||||
};
|
||||
|
||||
/**
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2014-2019 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2014-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
|
||||
@@ -48,4 +48,12 @@ qdf_net_if_create_dummy_if(struct qdf_net_if *nif)
|
||||
return __qdf_net_if_create_dummy_if(nif);
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* qdf_net_if_get_devname() - Retrieve netdevice name
|
||||
* @nif: Abstraction of netdevice
|
||||
*
|
||||
* Return: netdevice name
|
||||
*/
|
||||
char *qdf_net_if_get_devname(struct qdf_net_if *nif);
|
||||
#endif /* __QDF_NET_IF_H */
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2018 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2018,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
|
||||
@@ -41,3 +41,19 @@ qdf_net_if_create_dummy_if(struct qdf_net_if *nif)
|
||||
}
|
||||
|
||||
qdf_export_symbol(qdf_net_if_create_dummy_if);
|
||||
|
||||
/**
|
||||
* qdf_net_if_get_devname() - Retrieve netdevice name
|
||||
* @nif: Abstraction of netdevice
|
||||
*
|
||||
* Return: netdevice name
|
||||
*/
|
||||
char *qdf_net_if_get_devname(struct qdf_net_if *nif)
|
||||
{
|
||||
if (!nif)
|
||||
return NULL;
|
||||
|
||||
return (((struct net_device *)nif)->name);
|
||||
}
|
||||
|
||||
qdf_export_symbol(qdf_net_if_get_devname);
|
||||
|
@@ -24,10 +24,7 @@
|
||||
#include <wlan_cfr_tgt_api.h>
|
||||
#include <qdf_streamfs.h>
|
||||
#include <target_if.h>
|
||||
#ifndef CFR_USE_FIXED_FOLDER
|
||||
#include <os_if_athvar.h>
|
||||
#endif
|
||||
|
||||
#include <wlan_osif_priv.h>
|
||||
|
||||
QDF_STATUS
|
||||
wlan_cfr_psoc_obj_create_handler(struct wlan_objmgr_psoc *psoc, void *arg)
|
||||
@@ -172,44 +169,44 @@ wlan_cfr_peer_obj_destroy_handler(struct wlan_objmgr_peer *peer, void *arg)
|
||||
}
|
||||
|
||||
#ifdef CFR_USE_FIXED_FOLDER
|
||||
static const char *cfr_get_dev_name(struct wlan_objmgr_pdev *pdev)
|
||||
static char *cfr_get_dev_name(struct wlan_objmgr_pdev *pdev)
|
||||
{
|
||||
const char *default_name = "wlan";
|
||||
char *default_name = "wlan";
|
||||
|
||||
return default_name;
|
||||
}
|
||||
#else
|
||||
static const char *cfr_get_dev_name(struct wlan_objmgr_pdev *pdev)
|
||||
/**
|
||||
* cfr_get_dev_name() - Get net device name from pdev
|
||||
* @pdev: objmgr pdev
|
||||
*
|
||||
* Return: netdev name
|
||||
*/
|
||||
static char *cfr_get_dev_name(struct wlan_objmgr_pdev *pdev)
|
||||
{
|
||||
struct pdev_cfr *pa = NULL;
|
||||
char folder[32];
|
||||
struct net_device *pdev_netdev;
|
||||
struct ol_ath_softc_net80211 *scn;
|
||||
struct target_pdev_info *tgt_hdl;
|
||||
const char *default_name = "wlan";
|
||||
struct pdev_osif_priv *pdev_ospriv;
|
||||
struct qdf_net_if *nif;
|
||||
|
||||
if (!pdev) {
|
||||
cfr_err("PDEV is NULL\n");
|
||||
return default_name;
|
||||
pdev_ospriv = wlan_pdev_get_ospriv(pdev);
|
||||
if (!pdev_ospriv) {
|
||||
cfr_err("pdev_ospriv is NULL\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
tgt_hdl = wlan_pdev_get_tgt_if_handle(pdev);
|
||||
|
||||
if (!tgt_hdl) {
|
||||
cfr_err("target_pdev_info is NULL\n");
|
||||
return default_name;
|
||||
nif = pdev_ospriv->nif;
|
||||
if (!nif) {
|
||||
cfr_err("pdev nif is NULL\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
scn = target_pdev_get_feature_ptr(tgt_hdl);
|
||||
pdev_netdev = scn->netdev;
|
||||
|
||||
return pdev_netdev->name;
|
||||
return qdf_net_if_get_devname(nif);
|
||||
}
|
||||
#endif
|
||||
|
||||
QDF_STATUS cfr_streamfs_init(struct wlan_objmgr_pdev *pdev)
|
||||
{
|
||||
struct pdev_cfr *pa = NULL;
|
||||
char *devname;
|
||||
char folder[32];
|
||||
|
||||
if (!pdev) {
|
||||
@@ -229,7 +226,13 @@ QDF_STATUS cfr_streamfs_init(struct wlan_objmgr_pdev *pdev)
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
snprintf(folder, sizeof(folder), "cfr%s", cfr_get_dev_name(pdev));
|
||||
devname = cfr_get_dev_name(pdev);
|
||||
if (!devname) {
|
||||
cfr_err("devname is NULL\n");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
|
||||
snprintf(folder, sizeof(folder), "cfr%s", devname);
|
||||
|
||||
pa->dir_ptr = qdf_streamfs_create_dir((const char *)folder, NULL);
|
||||
|
||||
|
Reference in New Issue
Block a user