Re: [PATCH v3] mfd: intel-lpss: Fix DebugFS initialization
From: Lee Jones
Date: Tue Sep 15 2026 - 07:06:03 EST
On Sun, 13 Sep 2026, Maria Lisina via B4 Relay wrote:
> From: Maria Lisina <sekoohaka.sarisan@xxxxxxxxx>
>
> The original code defers DebugFS check with unnecessary warning message
> which also appears when DebugFS is simply disabled.
>
> Therefore it spams dmesg with these messages:
>
> intel-lpss 0000:00:15.0: Failed to create debugfs entries
> intel-lpss 0000:00:15.3: Failed to create debugfs entries
> intel-lpss 0000:00:1e.0: Failed to create debugfs entries
> intel-lpss 0000:00:1e.2: Failed to create debugfs entries
>
> This patch adds proper checks to intel_lpss_init() and
> intel_lpss_debugfs_add() functions and removes warning message.
>
> Signed-off-by: Maria Lisina <sekoohaka.sarisan@xxxxxxxxx>
> ---
> Changes in v3:
> - Fixed commit name and description.
> - Link to v2: https://lore.kernel.org/r/20260913-intel-lpss-debugfs-v2-1-a1a4faf5cc63@xxxxxxxxx
>
> Changes in v2:
> - Fixed function name in comment section.
> - Link to v1: https://lore.kernel.org/r/20260913-intel-lpss-debugfs-v1-1-833cbb6fffc9@xxxxxxxxx
> ---
> drivers/mfd/intel-lpss.c | 19 +++++++++++++------
> 1 file changed, 13 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/mfd/intel-lpss.c b/drivers/mfd/intel-lpss.c
> index 63d6694f71457b2e09d238af0a9bfb897a169a64..c2cb58c0f98a996d5a2718956092e74139f2a286 100644
> --- a/drivers/mfd/intel-lpss.c
> +++ b/drivers/mfd/intel-lpss.c
> @@ -146,9 +146,12 @@ static int intel_lpss_debugfs_add(struct intel_lpss *lpss)
> {
> struct dentry *dir;
>
> + if (!intel_lpss_debugfs) {
> + lpss->debugfs = NULL;
> + return 0;
> + }
> +
> dir = debugfs_create_dir(dev_name(lpss->dev), intel_lpss_debugfs);
> - if (IS_ERR(dir))
> - return PTR_ERR(dir);
>
> /* Cache the values into lpss structure */
> intel_lpss_cache_ltr(lpss);
> @@ -432,10 +435,7 @@ int intel_lpss_probe(struct device *dev,
> goto err_clk_register;
>
> intel_lpss_ltr_expose(lpss);
> -
> - ret = intel_lpss_debugfs_add(lpss);
> - if (ret)
> - dev_warn(dev, "Failed to create debugfs entries\n");
> + intel_lpss_debugfs_add(lpss);
>
> if (intel_lpss_has_idma(lpss)) {
> ret = mfd_add_devices(dev, lpss->devid, &intel_lpss_idma64_cell,
> @@ -539,6 +539,13 @@ EXPORT_NS_GPL_DEV_PM_OPS(intel_lpss_pm_ops, INTEL_LPSS) = {
> static int __init intel_lpss_init(void)
> {
> intel_lpss_debugfs = debugfs_create_dir("intel_lpss", NULL);
Why not move this and everything else debugfs related to
intel_lpss_debugfs_add()? Then we can get rid of the awful global
variable, have everything nicely compartmentalised and ensure that we
handle each fault gracefully?
> +
> + /* Ensure intel_lpss_debugfs stays NULL on error,
> + * so intel_lpss_debugfs_add() exits properly.
> + */
> + if (IS_ERR(intel_lpss_debugfs))
> + intel_lpss_debugfs = NULL;
> +
> return 0;
> }
> module_init(intel_lpss_init);
>
> ---
> base-commit: 2f0c1cf72f4682178506f513bbf015e591b1aa4a
> change-id: 20260913-intel-lpss-debugfs-eff3580d1295
>
> Best regards,
> --
> Maria Lisina <sekoohaka.sarisan@xxxxxxxxx>
>
>
--
Lee Jones