From: Khang D Nguyen <khangng@amperemail.onmicrosoft.com>
To: Jeremy Kerr <jk@codeconstruct.com.au>,
YH Chung <yh_chung@aspeedtech.com>,
"matt@codeconstruct.com.au" <matt@codeconstruct.com.au>,
"andrew+netdev@lunn.ch" <andrew+netdev@lunn.ch>,
"davem@davemloft.net" <davem@davemloft.net>,
"edumazet@google.com" <edumazet@google.com>,
"kuba@kernel.org" <kuba@kernel.org>,
"pabeni@redhat.com" <pabeni@redhat.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
BMC-SW <BMC-SW@aspeedtech.com>
Cc: Hieu Le <lhieu@os.amperecomputing.com>
Subject: Re: [PATCH] net: mctp: Add MCTP PCIe VDM transport driver
Date: Fri, 18 Jul 2025 12:48:30 +0700 [thread overview]
Message-ID: <5182407d-c252-403a-bb62-ebd11b0f126a@amperemail.onmicrosoft.com> (raw)
In-Reply-To: <7e8f741b24b1426ae71171dff253921315668bf1.camel@codeconstruct.com.au>
Hi YH and Jeremy,
[+CC Hieu]
>> Could you share if there's any preliminary prototype or idea for the
>> format of the lladdr that core plans to implement, particularly
>> regarding how the route type should be encoded or parsed?
>
> Excellent question! I suspect we would want a four-byte representation,
> being:
>
> [0]: routing type (bits 0:2, others reserved)
> [1]: segment (or 0 for non-flit mode)
> [2]: bus
> [3]: device / function
>
> which assumes there is some value in combining formats between flit- and
> non-flit modes. I am happy to adjust if there are better ideas.
>
> Khang: any inputs from your side there?
I believe segment 0 is a common valid segment and is not reserved. If we
want to combine, we might need another bit in the first byte to
represent if it is flit-mode or not. But I am not sure if it is worth
the effort, rather than just separate them.
As far as I understand, I think we have been discussing the address
format for each "Transport Binding" (e.g, I2C vs PCIe-VDM vs ...).
According to DSP0239, I suggest we should decide the lladdr format based
on the more precise "Physical Medium Identifier" (e.g, PCIe 5.0 or PCIe
6.0 non-Flit or PCIe 6.0 Flit Mode), rather than the more general
"Physical Transport Binding Identifier". The specification seems to
suggest this by the wording "primarily".
The identifier is primarily used to identify which physical
addressing format is used for MCTP packets on the bus.
Transport Binding Identifier used to be enough, until they separate the
address for PCIe-VDM non-Flit and Flit Mode. I am afraid if they add
something new again, we might not be able to retrofit.
It should be safer and easier to get the format right for each Physical
Medium Identifier, rather than for each Physical Transport Binding.
So my opinion:
- 3-byte for non-Flit (0x08-0x0E medium type)
4-byte for Flit Mode (0x40 medium type)
- Drivers should be able to advertise their Physical Medium Identifier
alongside the existing Physical Transport Binding Identifier.
- We can document a stable lladdr / Linux kernel physical format used
for sockets for each Physical Medium Identifier, not Physical
Transport Binding.
Sincerely,
Khang
next prev parent reply other threads:[~2025-07-18 5:48 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-14 6:25 aspeedyh
2025-07-14 8:54 ` Jeremy Kerr
2025-07-14 12:37 ` YH Chung
2025-07-15 1:08 ` Jeremy Kerr
2025-07-17 3:07 ` YH Chung
2025-07-17 5:37 ` Jeremy Kerr
2025-07-17 7:17 ` YH Chung
2025-07-17 7:31 ` Jeremy Kerr
2025-07-17 8:21 ` YH Chung
2025-07-17 21:40 ` Adam Young
2025-07-18 3:24 ` Jeremy Kerr
2025-07-17 21:43 ` Adam Young
2025-07-18 5:48 ` Khang D Nguyen [this message]
2025-07-18 6:03 ` Jeremy Kerr
2025-07-18 11:05 ` YH Chung
2025-07-15 2:26 ` kernel test robot
2025-07-17 10:39 ` kernel test robot
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=5182407d-c252-403a-bb62-ebd11b0f126a@amperemail.onmicrosoft.com \
--to=khangng@amperemail.onmicrosoft.com \
--cc=BMC-SW@aspeedtech.com \
--cc=andrew+netdev@lunn.ch \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=jk@codeconstruct.com.au \
--cc=kuba@kernel.org \
--cc=lhieu@os.amperecomputing.com \
--cc=linux-kernel@vger.kernel.org \
--cc=matt@codeconstruct.com.au \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=yh_chung@aspeedtech.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®