Skip to content

Commit

Permalink
Bluetooth: Convert Marvell driver to use per adapter debugfs
Browse files Browse the repository at this point in the history
The debugfs support of the Marvell driver is buggy. It is limited to one
controller per system. Fix this by using the controller specific debugfs
directory as parent.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
  • Loading branch information
Marcel Holtmann committed Feb 27, 2010
1 parent ca325f6 commit b914a25
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions drivers/bluetooth/btmrvl_debugfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@
#include "btmrvl_drv.h"

struct btmrvl_debugfs_data {
struct dentry *root_dir, *config_dir, *status_dir;
struct dentry *config_dir;
struct dentry *status_dir;

/* config */
struct dentry *psmode;
Expand Down Expand Up @@ -363,6 +364,9 @@ void btmrvl_debugfs_init(struct hci_dev *hdev)
struct btmrvl_private *priv = hdev->driver_data;
struct btmrvl_debugfs_data *dbg;

if (!hdev->debugfs)
return;

dbg = kzalloc(sizeof(*dbg), GFP_KERNEL);
priv->debugfs_data = dbg;

Expand All @@ -371,9 +375,7 @@ void btmrvl_debugfs_init(struct hci_dev *hdev)
return;
}

dbg->root_dir = debugfs_create_dir("btmrvl", NULL);

dbg->config_dir = debugfs_create_dir("config", dbg->root_dir);
dbg->config_dir = debugfs_create_dir("config", hdev->debugfs);

dbg->psmode = debugfs_create_file("psmode", 0644, dbg->config_dir,
hdev->driver_data, &btmrvl_psmode_fops);
Expand All @@ -388,7 +390,7 @@ void btmrvl_debugfs_init(struct hci_dev *hdev)
dbg->hscfgcmd = debugfs_create_file("hscfgcmd", 0644, dbg->config_dir,
hdev->driver_data, &btmrvl_hscfgcmd_fops);

dbg->status_dir = debugfs_create_dir("status", dbg->root_dir);
dbg->status_dir = debugfs_create_dir("status", hdev->debugfs);
dbg->curpsmode = debugfs_create_file("curpsmode", 0444,
dbg->status_dir,
hdev->driver_data,
Expand Down Expand Up @@ -425,7 +427,5 @@ void btmrvl_debugfs_remove(struct hci_dev *hdev)
debugfs_remove(dbg->txdnldready);
debugfs_remove(dbg->status_dir);

debugfs_remove(dbg->root_dir);

kfree(dbg);
}

0 comments on commit b914a25

Please sign in to comment.