Re: [PATCH v4 5/5] firmware: tegra: bpmp: Add MBWT sysfs interface

From: Thierry Reding

Date: Tue Sep 15 2026 - 10:24:31 EST


On Thu, Sep 10, 2026 at 08:59:19AM +0000, Aniruddha Rao wrote:
[...]
> diff --git a/drivers/firmware/tegra/bpmp-sysfs.c b/drivers/firmware/tegra/bpmp-sysfs.c
> new file mode 100644
> index 000000000000..f56836fa3314
> --- /dev/null
> +++ b/drivers/firmware/tegra/bpmp-sysfs.c
> @@ -0,0 +1,205 @@
> +// SPDX-License-Identifier: GPL-2.0-only
> +/*
> + * Copyright (c) 2026, NVIDIA CORPORATION.
> + */
> +
> +#include <linux/device.h>
> +#include <linux/kobject.h>
> +#include <linux/kstrtox.h>
> +#include <linux/mutex.h>
> +#include <linux/slab.h>
> +#include <linux/sysfs.h>
> +
> +#include <soc/tegra/bpmp.h>
> +#include <soc/tegra/bpmp-abi.h>
> +
> +#include "bpmp-private.h"
> +
> +#define TEGRA_BPMP_MBWT_NUM_GROUPS 6
> +#define TEGRA_BPMP_MBWT_NUM_VCS 3
> +
> +struct tegra_bpmp_mbwt_attr {
> + struct kobj_attribute attr;
> + struct tegra_bpmp_mbwt_sysfs *mbwt;
> + unsigned int instance;
> + unsigned int vc_type;
> +};
> +
> +struct tegra_bpmp_mbwt_sysfs {
> + struct tegra_bpmp *bpmp;
> + struct kobject *root;
> + struct kobject *group[TEGRA_BPMP_MBWT_NUM_GROUPS];
> + struct kobject *vc[TEGRA_BPMP_MBWT_NUM_GROUPS]
> + [TEGRA_BPMP_MBWT_NUM_VCS];
> + struct tegra_bpmp_mbwt_attr attrs[TEGRA_BPMP_MBWT_NUM_GROUPS]
> + [TEGRA_BPMP_MBWT_NUM_VCS];

Should these be dynamically allocated? If there's a remote chance that
we'll see other sets of groups and VCs, this should probably be
parameterized by some SoC-specific data.

Thierry

Attachment: signature.asc
Description: PGP signature