eth: fbnic: add basic debugfs structure
Add the usual debugfs structure:
fbnic/
$pci-id/
device-fileA
device-fileB
This patch only adds the directories, subsequent changes
will add files.
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>
Link: https://patch.msgid.link/20241115015344.757567-4-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
@@ -8,6 +8,7 @@
|
|||||||
obj-$(CONFIG_FBNIC) += fbnic.o
|
obj-$(CONFIG_FBNIC) += fbnic.o
|
||||||
|
|
||||||
fbnic-y := fbnic_csr.o \
|
fbnic-y := fbnic_csr.o \
|
||||||
|
fbnic_debugfs.o \
|
||||||
fbnic_devlink.o \
|
fbnic_devlink.o \
|
||||||
fbnic_ethtool.o \
|
fbnic_ethtool.o \
|
||||||
fbnic_fw.o \
|
fbnic_fw.o \
|
||||||
|
|||||||
@@ -19,6 +19,7 @@
|
|||||||
struct fbnic_dev {
|
struct fbnic_dev {
|
||||||
struct device *dev;
|
struct device *dev;
|
||||||
struct net_device *netdev;
|
struct net_device *netdev;
|
||||||
|
struct dentry *dbg_fbd;
|
||||||
struct device *hwmon;
|
struct device *hwmon;
|
||||||
|
|
||||||
u32 __iomem *uc_addr0;
|
u32 __iomem *uc_addr0;
|
||||||
@@ -156,6 +157,11 @@ int fbnic_alloc_irqs(struct fbnic_dev *fbd);
|
|||||||
void fbnic_get_fw_ver_commit_str(struct fbnic_dev *fbd, char *fw_version,
|
void fbnic_get_fw_ver_commit_str(struct fbnic_dev *fbd, char *fw_version,
|
||||||
const size_t str_sz);
|
const size_t str_sz);
|
||||||
|
|
||||||
|
void fbnic_dbg_fbd_init(struct fbnic_dev *fbd);
|
||||||
|
void fbnic_dbg_fbd_exit(struct fbnic_dev *fbd);
|
||||||
|
void fbnic_dbg_init(void);
|
||||||
|
void fbnic_dbg_exit(void);
|
||||||
|
|
||||||
void fbnic_csr_get_regs(struct fbnic_dev *fbd, u32 *data, u32 *regs_version);
|
void fbnic_csr_get_regs(struct fbnic_dev *fbd, u32 *data, u32 *regs_version);
|
||||||
int fbnic_csr_regs_len(struct fbnic_dev *fbd);
|
int fbnic_csr_regs_len(struct fbnic_dev *fbd);
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,34 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0
|
||||||
|
/* Copyright (c) Meta Platforms, Inc. and affiliates. */
|
||||||
|
|
||||||
|
#include <linux/debugfs.h>
|
||||||
|
#include <linux/pci.h>
|
||||||
|
|
||||||
|
#include "fbnic.h"
|
||||||
|
|
||||||
|
static struct dentry *fbnic_dbg_root;
|
||||||
|
|
||||||
|
void fbnic_dbg_fbd_init(struct fbnic_dev *fbd)
|
||||||
|
{
|
||||||
|
struct pci_dev *pdev = to_pci_dev(fbd->dev);
|
||||||
|
const char *name = pci_name(pdev);
|
||||||
|
|
||||||
|
fbd->dbg_fbd = debugfs_create_dir(name, fbnic_dbg_root);
|
||||||
|
}
|
||||||
|
|
||||||
|
void fbnic_dbg_fbd_exit(struct fbnic_dev *fbd)
|
||||||
|
{
|
||||||
|
debugfs_remove_recursive(fbd->dbg_fbd);
|
||||||
|
fbd->dbg_fbd = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
void fbnic_dbg_init(void)
|
||||||
|
{
|
||||||
|
fbnic_dbg_root = debugfs_create_dir(fbnic_driver_name, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
void fbnic_dbg_exit(void)
|
||||||
|
{
|
||||||
|
debugfs_remove_recursive(fbnic_dbg_root);
|
||||||
|
fbnic_dbg_root = NULL;
|
||||||
|
}
|
||||||
@@ -288,6 +288,7 @@ static int fbnic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|||||||
}
|
}
|
||||||
|
|
||||||
fbnic_devlink_register(fbd);
|
fbnic_devlink_register(fbd);
|
||||||
|
fbnic_dbg_fbd_init(fbd);
|
||||||
|
|
||||||
fbnic_hwmon_register(fbd);
|
fbnic_hwmon_register(fbd);
|
||||||
|
|
||||||
@@ -355,6 +356,7 @@ static void fbnic_remove(struct pci_dev *pdev)
|
|||||||
}
|
}
|
||||||
|
|
||||||
fbnic_hwmon_unregister(fbd);
|
fbnic_hwmon_unregister(fbd);
|
||||||
|
fbnic_dbg_fbd_exit(fbd);
|
||||||
fbnic_devlink_unregister(fbd);
|
fbnic_devlink_unregister(fbd);
|
||||||
fbnic_fw_disable_mbx(fbd);
|
fbnic_fw_disable_mbx(fbd);
|
||||||
fbnic_free_irqs(fbd);
|
fbnic_free_irqs(fbd);
|
||||||
@@ -552,9 +554,13 @@ static int __init fbnic_init_module(void)
|
|||||||
{
|
{
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
|
fbnic_dbg_init();
|
||||||
|
|
||||||
err = pci_register_driver(&fbnic_driver);
|
err = pci_register_driver(&fbnic_driver);
|
||||||
if (err)
|
if (err) {
|
||||||
|
fbnic_dbg_exit();
|
||||||
goto out;
|
goto out;
|
||||||
|
}
|
||||||
|
|
||||||
pr_info(DRV_SUMMARY " (%s)", fbnic_driver.name);
|
pr_info(DRV_SUMMARY " (%s)", fbnic_driver.name);
|
||||||
out:
|
out:
|
||||||
@@ -570,5 +576,7 @@ module_init(fbnic_init_module);
|
|||||||
static void __exit fbnic_exit_module(void)
|
static void __exit fbnic_exit_module(void)
|
||||||
{
|
{
|
||||||
pci_unregister_driver(&fbnic_driver);
|
pci_unregister_driver(&fbnic_driver);
|
||||||
|
|
||||||
|
fbnic_dbg_exit();
|
||||||
}
|
}
|
||||||
module_exit(fbnic_exit_module);
|
module_exit(fbnic_exit_module);
|
||||||
|
|||||||
Reference in New Issue
Block a user