mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] firmware: tegra: bpmp: Allow BPMP debugfs population to be skipped
@ 2026-10-01  5:07 Aniruddha Rao
  2026-10-02  7:51 ` Thierry Reding
  0 siblings, 1 reply; 2+ messages in thread
From: Aniruddha Rao @ 2026-10-01  5:07 UTC (permalink / raw)
  To: thierry.reding, jonathanh; +Cc: linux-tegra, linux-kernel, Aniruddha Rao

Populating the BPMP firmware debugfs requires a sequence of synchronous
firmware transactions during BPMP probe, which impacts the overall boot
time. Currently, the only way to avoid populating the BPMP debugfs is to
disable CONFIG_DEBUG_FS completely.

Add a tegra_bpmp.debugfs module parameter so systems can skip populating
the BPMP debugfs with tegra_bpmp.debugfs=0. Keep it enabled by default to
preserve existing behavior. The parameter is defined in bpmp-debugfs.c,
so it is available only when CONFIG_DEBUG_FS is enabled.

Signed-off-by: Aniruddha Rao <anrao@nvidia.com>
---
 drivers/firmware/tegra/bpmp-debugfs.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/firmware/tegra/bpmp-debugfs.c b/drivers/firmware/tegra/bpmp-debugfs.c
index 33c6300af964..2efc48b522ac 100644
--- a/drivers/firmware/tegra/bpmp-debugfs.c
+++ b/drivers/firmware/tegra/bpmp-debugfs.c
@@ -6,6 +6,7 @@
 #include <linux/cleanup.h>
 #include <linux/debugfs.h>
 #include <linux/dma-mapping.h>
+#include <linux/moduleparam.h>
 #include <linux/slab.h>
 #include <linux/uaccess.h>
 
@@ -773,6 +774,11 @@ static int bpmp_populate_debugfs_shmem(struct tegra_bpmp *bpmp)
 
 static DEFINE_MUTEX(bpmp_debugfs_root_lock);
 static struct dentry *bpmp_debugfs_root;
+static bool bpmp_debugfs_enabled = true;
+
+module_param_named(debugfs, bpmp_debugfs_enabled, bool, 0444);
+MODULE_PARM_DESC(debugfs,
+		 "Populate the BPMP firmware debugfs (default: enabled)");
 
 static struct dentry *bpmp_debugfs_get_root(void)
 {
@@ -789,6 +795,9 @@ int tegra_bpmp_init_debugfs(struct tegra_bpmp *bpmp)
 	bool inband;
 	int err;
 
+	if (!bpmp_debugfs_enabled)
+		return 0;
+
 	inband = tegra_bpmp_mrq_is_supported(bpmp, MRQ_DEBUG);
 
 	if (!inband && !tegra_bpmp_mrq_is_supported(bpmp, MRQ_DEBUGFS))
-- 
2.43.0


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] firmware: tegra: bpmp: Allow BPMP debugfs population to be skipped
  2026-10-01  5:07 [PATCH] firmware: tegra: bpmp: Allow BPMP debugfs population to be skipped Aniruddha Rao
@ 2026-10-02  7:51 ` Thierry Reding
  0 siblings, 0 replies; 2+ messages in thread
From: Thierry Reding @ 2026-10-02  7:51 UTC (permalink / raw)
  To: Aniruddha Rao; +Cc: jonathanh, linux-tegra, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 806 bytes --]

On Thu, Oct 01, 2026 at 05:07:16AM +0000, Aniruddha Rao wrote:
> Populating the BPMP firmware debugfs requires a sequence of synchronous
> firmware transactions during BPMP probe, which impacts the overall boot
> time. Currently, the only way to avoid populating the BPMP debugfs is to
> disable CONFIG_DEBUG_FS completely.
> 
> Add a tegra_bpmp.debugfs module parameter so systems can skip populating
> the BPMP debugfs with tegra_bpmp.debugfs=0. Keep it enabled by default to
> preserve existing behavior. The parameter is defined in bpmp-debugfs.c,
> so it is available only when CONFIG_DEBUG_FS is enabled.
> 
> Signed-off-by: Aniruddha Rao <anrao@nvidia.com>
> ---
>  drivers/firmware/tegra/bpmp-debugfs.c | 9 +++++++++
>  1 file changed, 9 insertions(+)

Applied, thanks.

Thierry

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-10-02  7:51 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-01  5:07 [PATCH] firmware: tegra: bpmp: Allow BPMP debugfs population to be skipped Aniruddha Rao
2026-10-02  7:51 ` Thierry Reding

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®