+ if (count > size - pos)
+ count = size - pos;
max() / min()
ok
+ /* intermediate buffer size must be u32 multiple */
+ size = (count + 3) & ~3;
Hmm, don't we have something like round_up()?
yes, round_up (count, 4) would work.
+ dfse->dfsentry = debugfs_create_file(name, 0444, sdev->debugfs_root,
+ dfse, &sof_dfs_fops);
+ if (!dfse->dfsentry) {
+ dev_err(sdev->dev, "error: cannot create debugfs entry.\n");
+ return -ENODEV;
+ }
We shouldn't rely on debugfs files.
Thus, error checking needs to be removed.
Something like
void ()
{
struct dentry *d;
d = debugfs_...();
if (!d)
dev_err();
}
You lost me on this one. The main purpose of this return -ENODEV is to
avoid adding more entries if one item failed. It's not different from
what our estimeed colleagues did in skl-debug.c
+ dfse->dfsentry = debugfs_create_file(name, 0444, sdev->debugfs_root,
+ dfse, &sof_dfs_fops);
+ if (!dfse->dfsentry) {
+ dev_err(sdev->dev, "error: cannot create debugfs entry.\n");
+ return -ENODEV;
+ }
Ditto.
+ sdev->debugfs_root = debugfs_create_dir("sof", NULL);
+ if (IS_ERR_OR_NULL(sdev->debugfs_root)) {
+ dev_err(sdev->dev, "error: failed to create debugfs directory\n");
+ return -EINVAL;
+ }
+
+ /* create debugFS files for platform specific MMIO/DSP memories */
+ for (i = 0; i < ops->debug_map_count; i++) {
+ map = &ops->debug_map[i];
+
+ err = snd_sof_debugfs_io_create_item(sdev, sdev->bar[map->bar] +
+ map->offset, map->size,
+ map->name);
+ if (err < 0)
+ dev_err(sdev->dev, "error: cannot create debugfs for %s\n",
+ map->name);
Ditto (error message dups above).
+ }
+
+ return err;
or maybe that's the issue, we shouldn't return an error on the init
proper, but I see nothing wrong in stopping when things go south.
+}
+EXPORT_SYMBOL(snd_sof_dbg_init);
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel