On 4/1/21 2:24 AM, Vinod Koul wrote:
On 31-03-21, 09:13, Bard Liao wrote:
From: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com
We sometimes discard -ENODATA when reporting errors and lose all traces of issues in the console log, add a macro to add use dev_dbg() in such cases.
Signed-off-by: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com Reviewed-by: Rander Wang rander.wang@intel.com Reviewed-by: Guennadi Liakhovetski guennadi.liakhovetski@linux.intel.com Signed-off-by: Bard Liao yung-chuan.liao@linux.intel.com
drivers/soundwire/bus.h | 8 ++++++++ 1 file changed, 8 insertions(+)
diff --git a/drivers/soundwire/bus.h b/drivers/soundwire/bus.h index 40354469860a..8370216f95d4 100644 --- a/drivers/soundwire/bus.h +++ b/drivers/soundwire/bus.h @@ -227,4 +227,12 @@ int sdw_bwrite_no_pm_unlocked(struct sdw_bus *bus, u16 dev_num, u32 addr, u8 val void sdw_clear_slave_status(struct sdw_bus *bus, u32 request); int sdw_slave_modalias(const struct sdw_slave *slave, char *buf, size_t size);
+#define sdw_dev_dbg_or_err(dev, is_err, fmt, ...) \
- do { \
if (is_err) \
dev_err(dev, fmt, __VA_ARGS__); \
else \
dev_dbg(dev, fmt, __VA_ARGS__); \
- } while (0)
I see a variant in sof code and now here, why not add in a dev_dbg_or_err() and use everywhere?
Good point, I hesitated back and forth on specific v. generic macro.
The main reason why I added this macro for SoundWire is that quite a few subsystems have their own debug functions (DRM, ACPI, etc), and I wasn't sure if there was any appetite to add more options in include/linux/dev_printk.h. SOF also uses a different format due to history.
If at the end of the day SoundWire and SOF are the only users the value of a common macro is limited.
But it's true that the macro could be used by others.
I really have no opinion here and will follow the consensus.