mbox series

[0/3] Add interconnect debugfs client

Message ID 20230725012859.18474-1-quic_mdtipton@quicinc.com
Headers show
Series Add interconnect debugfs client | expand

Message

Mike Tipton July 25, 2023, 1:28 a.m. UTC
This series introduces interconnect debugfs files that support voting
for any path the framework supports.

We've historically relied on an out-of-tree module for this, which used
the old icc_get() that was recently removed in [0]. The old icc_get()
took integer endpoint IDs, which made identifying paths in our old
implementation non-intuitive. The logical node names typically don't
change much chip-to-chip, but the raw integer IDs do. Take this
opportunity to introduce an icc_get() that uses string names instead,
which allows for a more intuitive and generic debugfs interface.

We rely on this support for debug, test, and verification. Hopefully
it'll be useful for other vendors as well.

[0] commit 7dcdad6f32c9 ("interconnect: drop unused icc_get() interface")

Mike Tipton (3):
  debugfs: Add write support to debugfs_create_str()
  interconnect: Reintroduce icc_get()
  interconnect: Add debugfs test client

 drivers/interconnect/Makefile         |   2 +-
 drivers/interconnect/core.c           |  67 +++++++++++
 drivers/interconnect/debugfs-client.c | 156 ++++++++++++++++++++++++++
 drivers/interconnect/internal.h       |   2 +
 fs/debugfs/file.c                     |  48 +++++++-
 include/linux/interconnect.h          |   6 +
 6 files changed, 278 insertions(+), 3 deletions(-)
 create mode 100644 drivers/interconnect/debugfs-client.c

Comments

Pavan Kondeti July 25, 2023, 5:30 a.m. UTC | #1
On Mon, Jul 24, 2023 at 06:28:56PM -0700, Mike Tipton wrote:
> This series introduces interconnect debugfs files that support voting
> for any path the framework supports.
> 
> We've historically relied on an out-of-tree module for this, which used
> the old icc_get() that was recently removed in [0]. The old icc_get()
> took integer endpoint IDs, which made identifying paths in our old
> implementation non-intuitive. The logical node names typically don't
> change much chip-to-chip, but the raw integer IDs do. Take this
> opportunity to introduce an icc_get() that uses string names instead,
> which allows for a more intuitive and generic debugfs interface.
> 
> We rely on this support for debug, test, and verification. Hopefully
> it'll be useful for other vendors as well.

Thanks Mike for working on this series. The downstream driver has been
helpful in quickly pushing NOCs to max during throughput issues
debugging. I have tested this series on v6.4 + revert mentioned here on
SM8550 MTP and it works as advertised.

Thanks,
Pavan