summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Reding <treding@nvidia.com>2017-10-12 19:07:54 +0200
committerThierry Reding <treding@nvidia.com>2017-12-13 13:42:08 +0100
commitd92e600998d83569cc0955a63c5f036867336343 (patch)
tree264085768ecef11624bd80bdbc4363beb5f1936b
parent1d60047dd6fcd8bb840f3652ce25ab478a69c7ef (diff)
downloadop-kernel-dev-d92e600998d83569cc0955a63c5f036867336343.zip
op-kernel-dev-d92e600998d83569cc0955a63c5f036867336343.tar.gz
drm/tegra: sor: Root debugfs files at the connector
Rather create new files within the top-level DRM device's debugfs node, add the SOR specific files to the connector's debugfs node. This avoids the need to come up with subdirectory names and is also more intuitive. Signed-off-by: Thierry Reding <treding@nvidia.com>
-rw-r--r--drivers/gpu/drm/tegra/sor.c17
1 files changed, 6 insertions, 11 deletions
diff --git a/drivers/gpu/drm/tegra/sor.c b/drivers/gpu/drm/tegra/sor.c
index 75b21db..f40fc98 100644
--- a/drivers/gpu/drm/tegra/sor.c
+++ b/drivers/gpu/drm/tegra/sor.c
@@ -184,7 +184,6 @@ struct tegra_sor {
struct drm_info_list *debugfs_files;
struct drm_minor *minor;
- struct dentry *debugfs;
const struct tegra_sor_ops *ops;
@@ -1260,14 +1259,10 @@ static const struct drm_info_list debugfs_files[] = {
static int tegra_sor_debugfs_init(struct tegra_sor *sor,
struct drm_minor *minor)
{
- const char *name = sor->soc->supports_dp ? "sor1" : "sor";
+ struct dentry *root = sor->output.connector.debugfs_entry;
unsigned int i;
int err;
- sor->debugfs = debugfs_create_dir(name, minor->debugfs_root);
- if (!sor->debugfs)
- return -ENOMEM;
-
sor->debugfs_files = kmemdup(debugfs_files, sizeof(debugfs_files),
GFP_KERNEL);
if (!sor->debugfs_files) {
@@ -1280,7 +1275,7 @@ static int tegra_sor_debugfs_init(struct tegra_sor *sor,
err = drm_debugfs_create_files(sor->debugfs_files,
ARRAY_SIZE(debugfs_files),
- sor->debugfs, minor);
+ root, minor);
if (err < 0)
goto free;
@@ -1292,13 +1287,14 @@ free:
kfree(sor->debugfs_files);
sor->debugfs_files = NULL;
remove:
- debugfs_remove_recursive(sor->debugfs);
- sor->debugfs = NULL;
+ debugfs_remove_recursive(root);
return err;
}
static void tegra_sor_debugfs_exit(struct tegra_sor *sor)
{
+ struct dentry *root = sor->output.connector.debugfs_entry;
+
drm_debugfs_remove_files(sor->debugfs_files, ARRAY_SIZE(debugfs_files),
sor->minor);
sor->minor = NULL;
@@ -1306,8 +1302,7 @@ static void tegra_sor_debugfs_exit(struct tegra_sor *sor)
kfree(sor->debugfs_files);
sor->debugfs_files = NULL;
- debugfs_remove_recursive(sor->debugfs);
- sor->debugfs = NULL;
+ debugfs_remove_recursive(root);
}
static void tegra_sor_connector_reset(struct drm_connector *connector)
OpenPOWER on IntegriCloud