mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Andrew Lunn <andrew@lunn.ch>
To: Jijie Shao <shaojijie@huawei.com>
Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
	pabeni@redhat.com, andrew+netdev@lunn.ch, horms@kernel.org,
	shenjian15@huawei.com, wangpeiyang1@huawei.com,
	liuyonglong@huawei.com, chenhao418@huawei.com,
	sudongming1@huawei.com, xujunsheng@huawei.com,
	shiyongbang@huawei.com, libaihan@huawei.com,
	jonathan.cameron@huawei.com,
	shameerali.kolothum.thodi@huawei.com, salil.mehta@huawei.com,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH net-next 4/7] net: hibmcge: Add register dump supported in this module
Date: Thu, 24 Oct 2024 14:22:13 +0200	[thread overview]
Message-ID: <e1827d48-7aeb-4f40-9332-8ce1efc5c960@lunn.ch> (raw)
In-Reply-To: <3a9bf4e6-b764-49b3-af8b-b5fd71cc4e49@huawei.com>

> We have other considerations:
> 
> If the dump register changes in the future, we hope that
> only the kernel needs to be modified, and the ethtool does not need to be modified.
> In this case, We do not need to consider the mapping between the ethtool and driver versions.
> 
> So in ethtool, we only need to consider basic formatted printing.
> like this(not send yet):
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 
> #define HBG_REG_NAEM_MAX_LEN 32
> struct hbg_reg_info {
> 	char name[HBG_REG_NAEM_MAX_LEN];
> 	u32 offset;
> 	u32 val;
> };
> static void hibmcge_dump_reg_info(struct hbg_reg_info *info)
> {
> 	fprintf(stdout, "%-*s[0x%04x]: 0x%08x\n",
> 		HBG_REG_NAEM_MAX_LEN, info->name, info->offset, info->val);
> }
> int hibmcge_dump_regs(struct ethtool_drvinfo *info __maybe_unused,
> 		      struct ethtool_regs *regs)
> {
> 	struct hbg_reg_info *reg_info;
> 	u32 name_max_len;
> 	u32 offset = 0;
> 	if (regs->len % sizeof(*reg_info) != 0)
> 		return -EINVAL;
> 	while (offset < regs->len) {
> 		reg_info = (struct hbg_reg_info *)(regs->data + offset);
> 		hibmcge_dump_reg_info(reg_info);
> 		offset += sizeof(*reg_info);
> 	}
> 	return 0;
> }
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > 
> 
> So, In this patch, pass back hbg_reg_info(name, offset, value)

So this is different to all other drivers doing registers dumps.

1) Please explain this in the commit message, with a justification why
your driver is different.

2) What is actually specific to your driver here? Why not make this
available to all drivers? Maybe check if ethtool_regs.version ==
MAX_U32 is used by any of the other drivers, and if not, make that a
magic value to indicate your special format.

3) Maybe consider that there does not appear to be a netlink version
of this ethtool ioctl. Could this be nicely integrated into a netlink
version, where you have more flexibility with attributes?


	Andrew

  reply	other threads:[~2024-10-24 12:22 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-23 13:42 [PATCH net-next 0/7] Support some features for the HIBMCGE driver Jijie Shao
2024-10-23 13:42 ` [PATCH net-next 1/7] net: hibmcge: Add dump statistics supported in this module Jijie Shao
2024-10-23 13:42 ` [PATCH net-next 2/7] net: hibmcge: Add debugfs " Jijie Shao
2024-10-23 14:00   ` Andrew Lunn
2024-10-24  2:19     ` Jijie Shao
2024-10-24 12:05       ` Andrew Lunn
2024-10-24 14:06         ` Jijie Shao
2024-10-24 14:21           ` Andrew Lunn
2024-10-24 14:31             ` Jijie Shao
2024-10-23 13:42 ` [PATCH net-next 3/7] net: hibmcge: Add unicast frame filter " Jijie Shao
2024-10-23 14:05   ` Andrew Lunn
2024-10-24  3:09     ` Jijie Shao
2024-10-24 12:07       ` Andrew Lunn
2024-10-24 14:07         ` Jijie Shao
2024-10-23 13:42 ` [PATCH net-next 4/7] net: hibmcge: Add register dump " Jijie Shao
2024-10-23 14:13   ` Andrew Lunn
2024-10-24  3:43     ` Jijie Shao
2024-10-24 12:22       ` Andrew Lunn [this message]
2024-10-24 14:44         ` Jijie Shao
2024-10-24  4:02   ` Jijie Shao
2024-10-25  9:25   ` kernel test robot
2024-10-23 13:42 ` [PATCH net-next 5/7] net: hibmcge: Add pauseparam " Jijie Shao
2024-10-23 14:15   ` Andrew Lunn
2024-10-24  3:45     ` Jijie Shao
2024-10-23 13:42 ` [PATCH net-next 6/7] net: hibmcge: Add nway_reset " Jijie Shao
2024-10-23 14:19   ` Andrew Lunn
2024-10-23 13:42 ` [PATCH net-next 7/7] net: hibmcge: Add reset " Jijie Shao

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e1827d48-7aeb-4f40-9332-8ce1efc5c960@lunn.ch \
    --to=andrew@lunn.ch \
    --cc=andrew+netdev@lunn.ch \
    --cc=chenhao418@huawei.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=horms@kernel.org \
    --cc=jonathan.cameron@huawei.com \
    --cc=kuba@kernel.org \
    --cc=libaihan@huawei.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=liuyonglong@huawei.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=salil.mehta@huawei.com \
    --cc=shameerali.kolothum.thodi@huawei.com \
    --cc=shaojijie@huawei.com \
    --cc=shenjian15@huawei.com \
    --cc=shiyongbang@huawei.com \
    --cc=sudongming1@huawei.com \
    --cc=wangpeiyang1@huawei.com \
    --cc=xujunsheng@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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®