ASoC: SOF: loader: Use the generic ops for region debugfs handling
authorPeter Ujfalusi <peter.ujfalusi@linux.intel.com>
Wed, 15 Sep 2021 12:21:15 +0000 (15:21 +0300)
committerMark Brown <broonie@kernel.org>
Wed, 15 Sep 2021 15:25:08 +0000 (16:25 +0100)
Do not access the sdev->bar[] directly to make the code generic, use the
new generic ops for handing the regions for debugfs.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-12-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/loader.c

index c076fc3..0317e01 100644 (file)
@@ -362,7 +362,6 @@ static int snd_sof_fw_ext_man_parse(struct snd_sof_dev *sdev,
  */
 static void sof_get_windows(struct snd_sof_dev *sdev)
 {
-       int bar = snd_sof_dsp_get_bar_index(sdev, SOF_FW_BLK_TYPE_SRAM);
        struct sof_ipc_window_elem *elem;
        u32 outbox_offset = 0;
        u32 stream_offset = 0;
@@ -394,64 +393,53 @@ static void sof_get_windows(struct snd_sof_dev *sdev)
                case SOF_IPC_REGION_UPBOX:
                        inbox_offset = window_offset + elem->offset;
                        inbox_size = elem->size;
-                       snd_sof_debugfs_io_item(sdev,
-                                               sdev->bar[bar] +
-                                               inbox_offset,
-                                               elem->size, "inbox",
-                                               SOF_DEBUGFS_ACCESS_D0_ONLY);
+                       snd_sof_debugfs_add_region_item(sdev, SOF_FW_BLK_TYPE_SRAM,
+                                                       inbox_offset,
+                                                       elem->size, "inbox",
+                                                       SOF_DEBUGFS_ACCESS_D0_ONLY);
                        break;
                case SOF_IPC_REGION_DOWNBOX:
                        outbox_offset = window_offset + elem->offset;
                        outbox_size = elem->size;
-                       snd_sof_debugfs_io_item(sdev,
-                                               sdev->bar[bar] +
-                                               outbox_offset,
-                                               elem->size, "outbox",
-                                               SOF_DEBUGFS_ACCESS_D0_ONLY);
+                       snd_sof_debugfs_add_region_item(sdev, SOF_FW_BLK_TYPE_SRAM,
+                                                       outbox_offset,
+                                                       elem->size, "outbox",
+                                                       SOF_DEBUGFS_ACCESS_D0_ONLY);
                        break;
                case SOF_IPC_REGION_TRACE:
-                       snd_sof_debugfs_io_item(sdev,
-                                               sdev->bar[bar] +
-                                               window_offset +
-                                               elem->offset,
-                                               elem->size, "etrace",
-                                               SOF_DEBUGFS_ACCESS_D0_ONLY);
+                       snd_sof_debugfs_add_region_item(sdev, SOF_FW_BLK_TYPE_SRAM,
+                                                       window_offset + elem->offset,
+                                                       elem->size, "etrace",
+                                                       SOF_DEBUGFS_ACCESS_D0_ONLY);
                        break;
                case SOF_IPC_REGION_DEBUG:
                        debug_offset = window_offset + elem->offset;
                        debug_size = elem->size;
-                       snd_sof_debugfs_io_item(sdev,
-                                               sdev->bar[bar] +
-                                               window_offset +
-                                               elem->offset,
-                                               elem->size, "debug",
-                                               SOF_DEBUGFS_ACCESS_D0_ONLY);
+                       snd_sof_debugfs_add_region_item(sdev, SOF_FW_BLK_TYPE_SRAM,
+                                                       window_offset + elem->offset,
+                                                       elem->size, "debug",
+                                                       SOF_DEBUGFS_ACCESS_D0_ONLY);
                        break;
                case SOF_IPC_REGION_STREAM:
                        stream_offset = window_offset + elem->offset;
                        stream_size = elem->size;
-                       snd_sof_debugfs_io_item(sdev,
-                                               sdev->bar[bar] +
-                                               stream_offset,
-                                               elem->size, "stream",
-                                               SOF_DEBUGFS_ACCESS_D0_ONLY);
+                       snd_sof_debugfs_add_region_item(sdev, SOF_FW_BLK_TYPE_SRAM,
+                                                       stream_offset,
+                                                       elem->size, "stream",
+                                                       SOF_DEBUGFS_ACCESS_D0_ONLY);
                        break;
                case SOF_IPC_REGION_REGS:
-                       snd_sof_debugfs_io_item(sdev,
-                                               sdev->bar[bar] +
-                                               window_offset +
-                                               elem->offset,
-                                               elem->size, "regs",
-                                               SOF_DEBUGFS_ACCESS_D0_ONLY);
+                       snd_sof_debugfs_add_region_item(sdev, SOF_FW_BLK_TYPE_SRAM,
+                                                       window_offset + elem->offset,
+                                                       elem->size, "regs",
+                                                       SOF_DEBUGFS_ACCESS_D0_ONLY);
                        break;
                case SOF_IPC_REGION_EXCEPTION:
                        sdev->dsp_oops_offset = window_offset + elem->offset;
-                       snd_sof_debugfs_io_item(sdev,
-                                               sdev->bar[bar] +
-                                               window_offset +
-                                               elem->offset,
-                                               elem->size, "exception",
-                                               SOF_DEBUGFS_ACCESS_D0_ONLY);
+                       snd_sof_debugfs_add_region_item(sdev, SOF_FW_BLK_TYPE_SRAM,
+                                                       window_offset + elem->offset,
+                                                       elem->size, "exception",
+                                                       SOF_DEBUGFS_ACCESS_D0_ONLY);
                        break;
                default:
                        dev_err(sdev->dev, "error: get illegal window info\n");