<feed xmlns='http://www.w3.org/2005/Atom'>
<title>BMC/Intel-BMC/linux.git/include/uapi/linux/aspeed-mctp.h, branch dev-5.8-intel</title>
<subtitle>Intel OpenBMC Linux kernel source tree (mirror)</subtitle>
<id>https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev-5.8-intel</id>
<link rel='self' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/atom?h=dev-5.8-intel'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/'/>
<updated>2020-12-16T09:36:59+00:00</updated>
<entry>
<title>aspeed-mctp: Add EID information related ioctls</title>
<updated>2020-12-16T09:36:59+00:00</updated>
<author>
<name>Karol Wachowski</name>
<email>karol.wachowski@intel.com</email>
</author>
<published>2020-11-24T13:59:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=8ade87d49a3e0657f8e04ef116741c9b6dc32d16'/>
<id>urn:sha1:8ade87d49a3e0657f8e04ef116741c9b6dc32d16</id>
<content type='text'>
Implement two new ioctls for storing EID related information:
 * ASPEED_MCTP_IOCTL_GET_EID_INFO
 * ASPEED_MCTP_IOCTL_SET_EID_INFO

Driver stores EID mapping in a list which is traversed when
one tries to get information using ASPEED_MCTP_IOCTL_GET_EID_INFO
ioctl, when given EID mapping is not found in the list, next entry
is returned. When there are no entries with EIDs higher than specified
in the IOCTL call -ENODEV is returned.

Whenever new information about EID mapping is stored with
ASPEED_MCTP_IOCTL_SET_EID_INFO ioctl driver empties exsiting
list of mappings and creates new one based on user input.
After insertion list is sorted by EID. Invalid input
such as duplicated EIDs will cause driver to return -EINVAL.

Change-Id: I41e4e4e83f451a8367d58bbf9b67e8e8f7d080f4
Signed-off-by: Karol Wachowski &lt;karol.wachowski@intel.com&gt;
</content>
</entry>
<entry>
<title>soc: aspeed: mctp: Add API to register client for MCTP type</title>
<updated>2020-12-08T18:04:06+00:00</updated>
<author>
<name>Andrzej Kacprowski</name>
<email>andrzej.kacprowski@linux.intel.com</email>
</author>
<published>2020-12-03T09:48:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=13e505c41b8c492a08c2cac7e2481f7ae134795c'/>
<id>urn:sha1:13e505c41b8c492a08c2cac7e2481f7ae134795c</id>
<content type='text'>
MCTP client can register for receiving packets with selected
MCTP message type or PCIE vendor defined message type.
Vendor defined type is 2 bytes but in Intel VDMs the first byte
is variable and only the second byte contains constant message
type - to support this use case we have to specify 2 byte mask
that is applied to packet type before comparing with registered
vendor type.
When MCTP packet arrives its header is compared with a list
of registered (vendor) types.
If no client registered for packet's (vendor) type then
the packet is dispatched to the default client.

Fragmented packets are not considered for type matching.

Only one client can register for given (vendor) type.
Client can register for multiple (vendor) types.

All packet fields must be specified in big endian byte
order.

This feature allows to support multiple clients simultaneously
but only one client per (vendor) message type.
For example we can have PECI client in kernel that uses PECI
vendor message type, dcpmm daemon in user space that handles
NVDIMM vendor type messages and mctpd service that handles MCTP
control and PLDM message types.

tested with peci_mctp_test application

Change-Id: I8a9fed3d4b2f2628782299928abd15bdd7af9387
Signed-off-by: Andrzej Kacprowski &lt;andrzej.kacprowski@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>soc: aspeed: mctp: Add IOCTL to register default client</title>
<updated>2020-12-08T18:04:06+00:00</updated>
<author>
<name>Andrzej Kacprowski</name>
<email>andrzej.kacprowski@linux.intel.com</email>
</author>
<published>2020-11-20T20:13:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=858fab83d9e42ffb9c7fbe96be5f1650f09886ed'/>
<id>urn:sha1:858fab83d9e42ffb9c7fbe96be5f1650f09886ed</id>
<content type='text'>
Add IOCTL to register given client as default client that
receives all packets that were not dispatched to other
clients.
This IOCTL is intended to be used by mctpd service or test
application that should receive all packets that are not
claimed by other clients.
mctpd service might not be the first user space
client since dcpmm or telemetry client can start
before mctpd or mctpd can crash and be restarted
automatically at any time.

To preserve backward compatibility with mctpd, the first user space
client will be registered automatically as default client - once mctpd
is modified to call ASPEED_MCTP_IOCTL_REGISTER_DEFAULT_HANDLER we
can remove this workaround.

Change-Id: I9e7f48ef0efab1813122daf131ff23476f0fae76
Signed-off-by: Andrzej Kacprowski &lt;andrzej.kacprowski@linux.intel.com&gt;
</content>
</entry>
<entry>
<title>soc: aspeed: mctp: Add initial driver for ast2600-mctp</title>
<updated>2020-10-09T21:47:19+00:00</updated>
<author>
<name>Iwona Winiarska</name>
<email>iwona.winiarska@intel.com</email>
</author>
<published>2020-04-06T20:00:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/BMC/Intel-BMC/linux.git/commit/?id=f77708df9ab58f314f1b57a0a73df0958f5002c9'/>
<id>urn:sha1:f77708df9ab58f314f1b57a0a73df0958f5002c9</id>
<content type='text'>
Currently, there is no proper MCTP networking subsystem in Linux.
Until we are able to work out the details of that, we are going to
expose HW to userspace using raw read/write interface.
Because of that, this driver is not intended to be submitted upstream.

Here we are providing a simple device driver for AST2600 MCTP
controller.

v2: Added workarounds for BMC reboot/reset, corrected endianess comment,
    changed TX_BUF_ADDR to be consistent, fixed typos.

v3: Added workaround for RX hang, added swapping PCIe VDM header to
    network order, corrected buffer allocation size.

v4: Fixed TX broken after sending 32 byte packet

Signed-off-by: Iwona Winiarska &lt;iwona.winiarska@intel.com&gt;
Signed-off-by: Andrzej Kacprowski &lt;andrzej.kacprowski@linux.intel.com&gt;
</content>
</entry>
</feed>
