[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <3224c94c-e4c0-43f0-9d1f-c68d98594932@amperemail.onmicrosoft.com>
Date: Wed, 6 Nov 2024 10:59:03 -0500
From: Adam Young <admiyo@...eremail.onmicrosoft.com>
To: Jeremy Kerr <jk@...econstruct.com.au>, admiyo@...amperecomputing.com,
Matt Johnston <matt@...econstruct.com.au>,
"David S. Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>
Cc: netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
Sudeep Holla <sudeep.holla@....com>,
Jonathan Cameron <Jonathan.Cameron@...wei.com>,
Huisong Li <lihuisong@...wei.com>
Subject: Re: [PATCH v6 2/2] mctp pcc: Implement MCTP over PCC Transport
On 11/5/24 09:09, Jeremy Kerr wrote:
> ok! so there is some form of addressing on the packet. Can we use this
> subspace ID as a form of lladdr? Could this be interpreted as the
> "destination" of a packet?
>
> You do mention that it may not be suitable though:
In the header of the packet is a signature:
https://uefi.org/htmlspecs/ACPI_Spec_6_4_html/14_Platform_Communications_Channel/Platform_Comm_Channel.html#generic-communications-channel-shared-memory-region
"The PCC signature. The signature of a subspace is computed by a
bitwise-or of the value 0x50434300 with the subspace ID. For example,
subspace 3 has the signature 0x50434303."
This could be used, but the inclusion of the "PCC" is unnecessary, as it
is on every packet. Thus only the subspace ID is relevant. This is the
index of the entry in the PCCT, and is what I have been calling the
outbox ID. Thus it is half of the address that I am proposing.
Two way communication in MCTP over PCC requires two subspaces. The
return packet would have a different subspace ID. Thus, the format for
the physical address is combination of the two subspace IDs.
Say the PCCT has two entries for MCTP: 0x12 and 0x13. 12 is the
outgoing for the OS and incoming for the platform. 13 is outgoing for
the platform and incoming for the OS. The signatures on the packets
would be 0x50434312 and 0x50434313, with the last two digits being the
only ones that would ever change. These two channels are Type3 and
Type4 by the PCC spec, and are thus paired. So the physical addressing
scheme for MCTP-PCC instead uses both of these address, and uses the
order to distinguish which is which: for the OS endpoint, the hw
address would be 0x00001312. For the platform, the HW address would be
0x00001213.
Powered by blists - more mailing lists