[alsa-devel] [PATCH v3 07/14] ASoC: SOF: Add DSP firmware logger support

Takashi Iwai tiwai at suse.de
Wed Dec 12 07:44:35 CET 2018


On Wed, 12 Dec 2018 00:43:26 +0100,
Pierre-Louis Bossart wrote:
> 
> 
> On 12/11/18 5:21 PM, Andy Shevchenko wrote:
> > On Tue, Dec 11, 2018 at 03:23:11PM -0600, Pierre-Louis Bossart wrote:
> >> From: Liam Girdwood <liam.r.girdwood at linux.intel.com>
> >>
> >> This patch adds support for real-time DSP logging (timestamped events
> >> and bespoke binary data) for firmware debug. The current solution
> >> relies on DMA transfers to system memory that is then accessed by
> >> userspace tools such as sof-logger. For Intel platforms, two types of
> >> DMAs are currently used (GP-DMA for Baytrail/CherryTrail and HDaudio
> >> DMA for SKL+)
> >>
> >> Due to historical reasons, the driver code follows the DSP firmware
> >> conventions and refers to 'traces', but it is currently unrelated to
> >> the Linux trace subsystem. Future solutions will include support for
> >> more advanced hardware (e.g. MIPI Sys-T), additional formats and the
> >> ability to enable/disable specific traces dynamically.
> >> +	if (count > buffer_size - lpos)
> >> +		count = buffer_size - lpos;
> > min() / max() ?
> >
> >> +	/* make sure count is <= avail */
> >> +	count = avail > count ? count : avail;
> > ditto.
> > Check entire series for such.
> yep.
> >
> >> +	dfse->dfsentry = debugfs_create_file("trace", 0444, sdev->debugfs_root,
> >> +					     dfse, &sof_dfs_trace_fops);
> >> +	if (!dfse->dfsentry) {
> >> +		dev_err(sdev->dev,
> >> +			"error: cannot create debugfs entry for trace\n");
> >> +		kfree(dfse);
> >> +		return -ENODEV;
> > Should not return an error. We must be fine w/o debugfs files.
> 
> Not sure I fully agree with the 'must'.
> 
> yes execution should proceed, but without debugfs we cannot, well,
> debug, so this is a real show-stopper

So the caller would ignore the error from this function?

Note that debugfs is a pure optional matter, and you can build a
kernel without CONFIG_DEBUGFS, too.  Then you'll always get this
error...


thanks,

Takashi


More information about the Alsa-devel mailing list