* [PATCH 1/2] accel/ivpu: Update debugfs to latest changes in DRM
@ 2023-09-07 7:26 Stanislaw Gruszka
2023-09-07 7:26 ` [PATCH 2/2] accel/ivpu: Compile ivpu_debugfs.c conditionally Stanislaw Gruszka
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Stanislaw Gruszka @ 2023-09-07 7:26 UTC (permalink / raw)
To: dri-devel; +Cc: Stanislaw Gruszka, Oded Gabbay, Jeffrey Hugo, Jacek Lawrynowicz
Use new drm debugfs helpers. This is needed after changes from
commit 78346ebf9f94 ("drm/debugfs: drop debugfs_init() for the render
and accel node v2").
Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
---
drivers/accel/ivpu/ivpu_debugfs.c | 50 +++++++++++++++----------------
drivers/accel/ivpu/ivpu_debugfs.h | 4 +--
drivers/accel/ivpu/ivpu_drv.c | 8 ++---
3 files changed, 30 insertions(+), 32 deletions(-)
diff --git a/drivers/accel/ivpu/ivpu_debugfs.c b/drivers/accel/ivpu/ivpu_debugfs.c
index 5e5996fd4f9f..9163bc6bd3ef 100644
--- a/drivers/accel/ivpu/ivpu_debugfs.c
+++ b/drivers/accel/ivpu/ivpu_debugfs.c
@@ -17,20 +17,26 @@
#include "ivpu_jsm_msg.h"
#include "ivpu_pm.h"
+static inline struct ivpu_device *seq_to_ivpu(struct seq_file *s)
+{
+ struct drm_debugfs_entry *entry = s->private;
+
+ return to_ivpu_device(entry->dev);
+}
+
static int bo_list_show(struct seq_file *s, void *v)
{
- struct drm_info_node *node = (struct drm_info_node *)s->private;
struct drm_printer p = drm_seq_file_printer(s);
+ struct ivpu_device *vdev = seq_to_ivpu(s);
- ivpu_bo_list(node->minor->dev, &p);
+ ivpu_bo_list(&vdev->drm, &p);
return 0;
}
static int fw_name_show(struct seq_file *s, void *v)
{
- struct drm_info_node *node = (struct drm_info_node *)s->private;
- struct ivpu_device *vdev = to_ivpu_device(node->minor->dev);
+ struct ivpu_device *vdev = seq_to_ivpu(s);
seq_printf(s, "%s\n", vdev->fw->name);
return 0;
@@ -38,8 +44,7 @@ static int fw_name_show(struct seq_file *s, void *v)
static int fw_trace_capability_show(struct seq_file *s, void *v)
{
- struct drm_info_node *node = (struct drm_info_node *)s->private;
- struct ivpu_device *vdev = to_ivpu_device(node->minor->dev);
+ struct ivpu_device *vdev = seq_to_ivpu(s);
u64 trace_hw_component_mask;
u32 trace_destination_mask;
int ret;
@@ -57,8 +62,7 @@ static int fw_trace_capability_show(struct seq_file *s, void *v)
static int fw_trace_config_show(struct seq_file *s, void *v)
{
- struct drm_info_node *node = (struct drm_info_node *)s->private;
- struct ivpu_device *vdev = to_ivpu_device(node->minor->dev);
+ struct ivpu_device *vdev = seq_to_ivpu(s);
/**
* WA: VPU_JSM_MSG_TRACE_GET_CONFIG command is not working yet,
* so we use values from vdev->fw instead of calling ivpu_jsm_trace_get_config()
@@ -78,8 +82,7 @@ static int fw_trace_config_show(struct seq_file *s, void *v)
static int last_bootmode_show(struct seq_file *s, void *v)
{
- struct drm_info_node *node = (struct drm_info_node *)s->private;
- struct ivpu_device *vdev = to_ivpu_device(node->minor->dev);
+ struct ivpu_device *vdev = seq_to_ivpu(s);
seq_printf(s, "%s\n", (vdev->pm->is_warmboot) ? "warmboot" : "coldboot");
@@ -88,8 +91,7 @@ static int last_bootmode_show(struct seq_file *s, void *v)
static int reset_counter_show(struct seq_file *s, void *v)
{
- struct drm_info_node *node = (struct drm_info_node *)s->private;
- struct ivpu_device *vdev = to_ivpu_device(node->minor->dev);
+ struct ivpu_device *vdev = seq_to_ivpu(s);
seq_printf(s, "%d\n", atomic_read(&vdev->pm->reset_counter));
return 0;
@@ -97,14 +99,13 @@ static int reset_counter_show(struct seq_file *s, void *v)
static int reset_pending_show(struct seq_file *s, void *v)
{
- struct drm_info_node *node = (struct drm_info_node *)s->private;
- struct ivpu_device *vdev = to_ivpu_device(node->minor->dev);
+ struct ivpu_device *vdev = seq_to_ivpu(s);
seq_printf(s, "%d\n", atomic_read(&vdev->pm->in_reset));
return 0;
}
-static const struct drm_info_list vdev_debugfs_list[] = {
+static const struct drm_debugfs_info vdev_debugfs_list[] = {
{"bo_list", bo_list_show, 0},
{"fw_name", fw_name_show, 0},
{"fw_trace_capability", fw_trace_capability_show, 0},
@@ -270,25 +271,22 @@ static const struct file_operations ivpu_reset_engine_fops = {
.write = ivpu_reset_engine_fn,
};
-void ivpu_debugfs_init(struct drm_minor *minor)
+void ivpu_debugfs_init(struct ivpu_device *vdev)
{
- struct ivpu_device *vdev = to_ivpu_device(minor->dev);
-
- drm_debugfs_create_files(vdev_debugfs_list, ARRAY_SIZE(vdev_debugfs_list),
- minor->debugfs_root, minor);
+ drm_debugfs_add_files(&vdev->drm, vdev_debugfs_list, ARRAY_SIZE(vdev_debugfs_list));
- debugfs_create_file("force_recovery", 0200, minor->debugfs_root, vdev,
+ debugfs_create_file("force_recovery", 0200, vdev->drm.debugfs_root, vdev,
&ivpu_force_recovery_fops);
- debugfs_create_file("fw_log", 0644, minor->debugfs_root, vdev,
+ debugfs_create_file("fw_log", 0644, vdev->drm.debugfs_root, vdev,
&fw_log_fops);
- debugfs_create_file("fw_trace_destination_mask", 0200, minor->debugfs_root, vdev,
+ debugfs_create_file("fw_trace_destination_mask", 0200, vdev->drm.debugfs_root, vdev,
&fw_trace_destination_mask_fops);
- debugfs_create_file("fw_trace_hw_comp_mask", 0200, minor->debugfs_root, vdev,
+ debugfs_create_file("fw_trace_hw_comp_mask", 0200, vdev->drm.debugfs_root, vdev,
&fw_trace_hw_comp_mask_fops);
- debugfs_create_file("fw_trace_level", 0200, minor->debugfs_root, vdev,
+ debugfs_create_file("fw_trace_level", 0200, vdev->drm.debugfs_root, vdev,
&fw_trace_level_fops);
- debugfs_create_file("reset_engine", 0200, minor->debugfs_root, vdev,
+ debugfs_create_file("reset_engine", 0200, vdev->drm.debugfs_root, vdev,
&ivpu_reset_engine_fops);
}
diff --git a/drivers/accel/ivpu/ivpu_debugfs.h b/drivers/accel/ivpu/ivpu_debugfs.h
index 78f80c1e00e4..76dbce139772 100644
--- a/drivers/accel/ivpu/ivpu_debugfs.h
+++ b/drivers/accel/ivpu/ivpu_debugfs.h
@@ -6,8 +6,8 @@
#ifndef __IVPU_DEBUGFS_H__
#define __IVPU_DEBUGFS_H__
-struct drm_minor;
+struct ivpu_device;
-void ivpu_debugfs_init(struct drm_minor *minor);
+void ivpu_debugfs_init(struct ivpu_device *vdev);
#endif /* __IVPU_DEBUGFS_H__ */
diff --git a/drivers/accel/ivpu/ivpu_drv.c b/drivers/accel/ivpu/ivpu_drv.c
index fa0680ba9340..b6aaf9811355 100644
--- a/drivers/accel/ivpu/ivpu_drv.c
+++ b/drivers/accel/ivpu/ivpu_drv.c
@@ -395,10 +395,6 @@ static const struct drm_driver driver = {
.postclose = ivpu_postclose,
.gem_prime_import = ivpu_gem_prime_import,
-#if defined(CONFIG_DEBUG_FS)
- .debugfs_init = ivpu_debugfs_init,
-#endif
-
.ioctls = ivpu_drm_ioctls,
.num_ioctls = ARRAY_SIZE(ivpu_drm_ioctls),
.fops = &ivpu_fops,
@@ -631,6 +627,10 @@ static int ivpu_probe(struct pci_dev *pdev, const struct pci_device_id *id)
if (ret)
return ret;
+#if defined(CONFIG_DEBUG_FS)
+ ivpu_debugfs_init(vdev);
+#endif
+
ret = drm_dev_register(&vdev->drm, 0);
if (ret) {
dev_err(&pdev->dev, "Failed to register DRM device: %d\n", ret);
--
2.25.1
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 2/2] accel/ivpu: Compile ivpu_debugfs.c conditionally
2023-09-07 7:26 [PATCH 1/2] accel/ivpu: Update debugfs to latest changes in DRM Stanislaw Gruszka
@ 2023-09-07 7:26 ` Stanislaw Gruszka
2023-09-11 15:35 ` Jeffrey Hugo
2023-09-26 5:26 ` [PATCH 3/2] accel/ivpu: Use local variable for debugfs root Stanislaw Gruszka
2023-09-11 15:34 ` [PATCH 1/2] accel/ivpu: Update debugfs to latest changes in DRM Jeffrey Hugo
2023-09-27 11:16 ` Stanislaw Gruszka
2 siblings, 2 replies; 7+ messages in thread
From: Stanislaw Gruszka @ 2023-09-07 7:26 UTC (permalink / raw)
To: dri-devel; +Cc: Stanislaw Gruszka, Oded Gabbay, Jeffrey Hugo, Jacek Lawrynowicz
Only compile ivpu_debugfs.c file with CONFIG_DEBUG_FS.
Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
---
drivers/accel/ivpu/Makefile | 3 ++-
drivers/accel/ivpu/ivpu_debugfs.h | 4 ++++
drivers/accel/ivpu/ivpu_drv.c | 2 --
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/accel/ivpu/Makefile b/drivers/accel/ivpu/Makefile
index e4328b430564..95ff7ad16338 100644
--- a/drivers/accel/ivpu/Makefile
+++ b/drivers/accel/ivpu/Makefile
@@ -2,7 +2,6 @@
# Copyright (C) 2023 Intel Corporation
intel_vpu-y := \
- ivpu_debugfs.o \
ivpu_drv.o \
ivpu_fw.o \
ivpu_fw_log.o \
@@ -16,4 +15,6 @@ intel_vpu-y := \
ivpu_mmu_context.o \
ivpu_pm.o
+intel_vpu-$(CONFIG_DEBUG_FS) += ivpu_debugfs.o
+
obj-$(CONFIG_DRM_ACCEL_IVPU) += intel_vpu.o
diff --git a/drivers/accel/ivpu/ivpu_debugfs.h b/drivers/accel/ivpu/ivpu_debugfs.h
index 76dbce139772..49ae9ea78287 100644
--- a/drivers/accel/ivpu/ivpu_debugfs.h
+++ b/drivers/accel/ivpu/ivpu_debugfs.h
@@ -8,6 +8,10 @@
struct ivpu_device;
+#if defined(CONFIG_DEBUG_FS)
void ivpu_debugfs_init(struct ivpu_device *vdev);
+#else
+static inline void ivpu_debugfs_init(struct ivpu_device *vdev) { }
+#endif
#endif /* __IVPU_DEBUGFS_H__ */
diff --git a/drivers/accel/ivpu/ivpu_drv.c b/drivers/accel/ivpu/ivpu_drv.c
index b6aaf9811355..7851ff7773ca 100644
--- a/drivers/accel/ivpu/ivpu_drv.c
+++ b/drivers/accel/ivpu/ivpu_drv.c
@@ -627,9 +627,7 @@ static int ivpu_probe(struct pci_dev *pdev, const struct pci_device_id *id)
if (ret)
return ret;
-#if defined(CONFIG_DEBUG_FS)
ivpu_debugfs_init(vdev);
-#endif
ret = drm_dev_register(&vdev->drm, 0);
if (ret) {
--
2.25.1
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH 2/2] accel/ivpu: Compile ivpu_debugfs.c conditionally
2023-09-07 7:26 ` [PATCH 2/2] accel/ivpu: Compile ivpu_debugfs.c conditionally Stanislaw Gruszka
@ 2023-09-11 15:35 ` Jeffrey Hugo
2023-09-26 5:26 ` [PATCH 3/2] accel/ivpu: Use local variable for debugfs root Stanislaw Gruszka
1 sibling, 0 replies; 7+ messages in thread
From: Jeffrey Hugo @ 2023-09-11 15:35 UTC (permalink / raw)
To: Stanislaw Gruszka, dri-devel; +Cc: Oded Gabbay, Jacek Lawrynowicz
On 9/7/2023 1:26 AM, Stanislaw Gruszka wrote:
> Only compile ivpu_debugfs.c file with CONFIG_DEBUG_FS.
>
> Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 3/2] accel/ivpu: Use local variable for debugfs root
2023-09-07 7:26 ` [PATCH 2/2] accel/ivpu: Compile ivpu_debugfs.c conditionally Stanislaw Gruszka
2023-09-11 15:35 ` Jeffrey Hugo
@ 2023-09-26 5:26 ` Stanislaw Gruszka
2023-09-26 15:57 ` Jeffrey Hugo
1 sibling, 1 reply; 7+ messages in thread
From: Stanislaw Gruszka @ 2023-09-26 5:26 UTC (permalink / raw)
To: dri-devel; +Cc: Oded Gabbay, Jeffrey Hugo, Jacek Lawrynowicz
Use local variable for debugfs root, just to make further changes
easier.
Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
---
I'll squash that patch into patch 1
drivers/accel/ivpu/ivpu_debugfs.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/drivers/accel/ivpu/ivpu_debugfs.c b/drivers/accel/ivpu/ivpu_debugfs.c
index 9163bc6bd3ef..ea453b985b49 100644
--- a/drivers/accel/ivpu/ivpu_debugfs.c
+++ b/drivers/accel/ivpu/ivpu_debugfs.c
@@ -273,20 +273,22 @@ static const struct file_operations ivpu_reset_engine_fops = {
void ivpu_debugfs_init(struct ivpu_device *vdev)
{
+ struct dentry *debugfs_root = vdev->drm.debugfs_root;
+
drm_debugfs_add_files(&vdev->drm, vdev_debugfs_list, ARRAY_SIZE(vdev_debugfs_list));
- debugfs_create_file("force_recovery", 0200, vdev->drm.debugfs_root, vdev,
+ debugfs_create_file("force_recovery", 0200, debugfs_root, vdev,
&ivpu_force_recovery_fops);
- debugfs_create_file("fw_log", 0644, vdev->drm.debugfs_root, vdev,
+ debugfs_create_file("fw_log", 0644, debugfs_root, vdev,
&fw_log_fops);
- debugfs_create_file("fw_trace_destination_mask", 0200, vdev->drm.debugfs_root, vdev,
+ debugfs_create_file("fw_trace_destination_mask", 0200, debugfs_root, vdev,
&fw_trace_destination_mask_fops);
- debugfs_create_file("fw_trace_hw_comp_mask", 0200, vdev->drm.debugfs_root, vdev,
+ debugfs_create_file("fw_trace_hw_comp_mask", 0200, debugfs_root, vdev,
&fw_trace_hw_comp_mask_fops);
- debugfs_create_file("fw_trace_level", 0200, vdev->drm.debugfs_root, vdev,
+ debugfs_create_file("fw_trace_level", 0200, debugfs_root, vdev,
&fw_trace_level_fops);
- debugfs_create_file("reset_engine", 0200, vdev->drm.debugfs_root, vdev,
+ debugfs_create_file("reset_engine", 0200, debugfs_root, vdev,
&ivpu_reset_engine_fops);
}
--
2.25.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 1/2] accel/ivpu: Update debugfs to latest changes in DRM
2023-09-07 7:26 [PATCH 1/2] accel/ivpu: Update debugfs to latest changes in DRM Stanislaw Gruszka
2023-09-07 7:26 ` [PATCH 2/2] accel/ivpu: Compile ivpu_debugfs.c conditionally Stanislaw Gruszka
@ 2023-09-11 15:34 ` Jeffrey Hugo
2023-09-27 11:16 ` Stanislaw Gruszka
2 siblings, 0 replies; 7+ messages in thread
From: Jeffrey Hugo @ 2023-09-11 15:34 UTC (permalink / raw)
To: Stanislaw Gruszka, dri-devel; +Cc: Oded Gabbay, Jacek Lawrynowicz
On 9/7/2023 1:26 AM, Stanislaw Gruszka wrote:
> Use new drm debugfs helpers. This is needed after changes from
> commit 78346ebf9f94 ("drm/debugfs: drop debugfs_init() for the render
> and accel node v2").
>
> Signed-off-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
Reviewed-by: Jeffrey Hugo <quic_jhugo@quicinc.com>
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: [PATCH 1/2] accel/ivpu: Update debugfs to latest changes in DRM
2023-09-07 7:26 [PATCH 1/2] accel/ivpu: Update debugfs to latest changes in DRM Stanislaw Gruszka
2023-09-07 7:26 ` [PATCH 2/2] accel/ivpu: Compile ivpu_debugfs.c conditionally Stanislaw Gruszka
2023-09-11 15:34 ` [PATCH 1/2] accel/ivpu: Update debugfs to latest changes in DRM Jeffrey Hugo
@ 2023-09-27 11:16 ` Stanislaw Gruszka
2 siblings, 0 replies; 7+ messages in thread
From: Stanislaw Gruszka @ 2023-09-27 11:16 UTC (permalink / raw)
To: dri-devel; +Cc: Oded Gabbay, Jeffrey Hugo, Jacek Lawrynowicz
On Thu, Sep 07, 2023 at 09:26:09AM +0200, Stanislaw Gruszka wrote:
> Use new drm debugfs helpers. This is needed after changes from
> commit 78346ebf9f94 ("drm/debugfs: drop debugfs_init() for the render
> and accel node v2").
Applied to drm-misc-next
Thanks
Stanislaw
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2023-09-27 11:16 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-07 7:26 [PATCH 1/2] accel/ivpu: Update debugfs to latest changes in DRM Stanislaw Gruszka
2023-09-07 7:26 ` [PATCH 2/2] accel/ivpu: Compile ivpu_debugfs.c conditionally Stanislaw Gruszka
2023-09-11 15:35 ` Jeffrey Hugo
2023-09-26 5:26 ` [PATCH 3/2] accel/ivpu: Use local variable for debugfs root Stanislaw Gruszka
2023-09-26 15:57 ` Jeffrey Hugo
2023-09-11 15:34 ` [PATCH 1/2] accel/ivpu: Update debugfs to latest changes in DRM Jeffrey Hugo
2023-09-27 11:16 ` Stanislaw Gruszka
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.