sdk_qbman: Only create debugfs entries when QBMan is part of device tree
Only create debugfs entries if the QBMan nodes exist in the device tree. Signed-off-by: Roy Pledge <roy.pledge@nxp.com> Acked-by: Madalin Bucur <madalin.bucur@nxp.com> Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com> (cherry picked from commit 68db373cc5721a31e604604fefeaa66b71204da5)5.4-rM2-2.2.x-imx-squashed
parent
603554005b
commit
444f9e85d6
|
@ -33,6 +33,7 @@
|
||||||
#include <linux/debugfs.h>
|
#include <linux/debugfs.h>
|
||||||
#include <linux/seq_file.h>
|
#include <linux/seq_file.h>
|
||||||
#include <linux/uaccess.h>
|
#include <linux/uaccess.h>
|
||||||
|
#include <linux/of.h>
|
||||||
|
|
||||||
static struct dentry *dfs_root; /* debugfs root directory */
|
static struct dentry *dfs_root; /* debugfs root directory */
|
||||||
|
|
||||||
|
@ -83,9 +84,14 @@ static int __init bman_debugfs_module_init(void)
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
struct dentry *d;
|
struct dentry *d;
|
||||||
|
struct device_node *dn;
|
||||||
|
|
||||||
|
dn = of_find_compatible_node(NULL, NULL, "fsl,bman");
|
||||||
|
if (!dn) {
|
||||||
|
pr_debug("No fsl,bman node\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
dfs_root = debugfs_create_dir("bman", NULL);
|
dfs_root = debugfs_create_dir("bman", NULL);
|
||||||
|
|
||||||
if (dfs_root == NULL) {
|
if (dfs_root == NULL) {
|
||||||
ret = -ENOMEM;
|
ret = -ENOMEM;
|
||||||
pr_err("Cannot create bman debugfs dir\n");
|
pr_err("Cannot create bman debugfs dir\n");
|
||||||
|
|
|
@ -1457,13 +1457,16 @@ static int __init qman_debugfs_module_init(void)
|
||||||
|
|
||||||
fqid_max = 0;
|
fqid_max = 0;
|
||||||
init_ccsrmempeek();
|
init_ccsrmempeek();
|
||||||
if (qman_ccsr_start) {
|
if (!qman_ccsr_start) {
|
||||||
if (!qman_ccsrmempeek(®, QM_FQD_AR)) {
|
/* No QMan node found in device tree */
|
||||||
/* extract the size of the FQD window */
|
return 0;
|
||||||
reg = reg & 0x3f;
|
}
|
||||||
/* calculate valid frame queue descriptor range */
|
|
||||||
fqid_max = (1 << (reg + 1)) / QM_FQD_BLOCK_SIZE;
|
if (!qman_ccsrmempeek(®, QM_FQD_AR)) {
|
||||||
}
|
/* extract the size of the FQD window */
|
||||||
|
reg = reg & 0x3f;
|
||||||
|
/* calculate valid frame queue descriptor range */
|
||||||
|
fqid_max = (1 << (reg + 1)) / QM_FQD_BLOCK_SIZE;
|
||||||
}
|
}
|
||||||
dfs_root = debugfs_create_dir("qman", NULL);
|
dfs_root = debugfs_create_dir("qman", NULL);
|
||||||
fqd_root = debugfs_create_dir("fqd", dfs_root);
|
fqd_root = debugfs_create_dir("fqd", dfs_root);
|
||||||
|
|
Loading…
Reference in New Issue