[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v6 0/3] hw/{i2c,nvme}: mctp endpoint, nvme management interfa
From: |
Jonathan Cameron |
Subject: |
Re: [PATCH v6 0/3] hw/{i2c,nvme}: mctp endpoint, nvme management interface model |
Date: |
Wed, 20 Sep 2023 12:48:03 +0100 |
On Thu, 14 Sep 2023 11:53:40 +0200
Klaus Jensen <its@irrelevant.dk> wrote:
> This adds a generic MCTP endpoint model that other devices may derive
> from.
>
> Also included is a very basic implementation of an NVMe-MI device,
> supporting only a small subset of the required commands.
>
> Since this all relies on i2c target mode, this can currently only be
> used with an SoC that includes the Aspeed I2C controller.
>
> The easiest way to get up and running with this, is to grab my buildroot
> overlay[1] (aspeed_ast2600evb_nmi_defconfig). It includes modified a
> modified dts as well as a couple of required packages.
>
> QEMU can then be launched along these lines:
>
> qemu-system-arm \
> -nographic \
> -M ast2600-evb \
> -kernel output/images/zImage \
> -initrd output/images/rootfs.cpio \
> -dtb output/images/aspeed-ast2600-evb-nmi.dtb \
> -nic user,hostfwd=tcp::2222-:22 \
> -device nmi-i2c,address=0x3a \
> -serial mon:stdio
>
> From within the booted system,
>
> mctp addr add 8 dev mctpi2c15
> mctp link set mctpi2c15 up
> mctp route add 9 via mctpi2c15
> mctp neigh add 9 dev mctpi2c15 lladdr 0x3a
> mi-mctp 1 9 info
>
> Comments are very welcome!
>
> [1]: https://github.com/birkelund/hwtests/tree/main/br2-external
>
> Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
Hi Klaus,
Silly question, but who is likely to pick this up? + likely to be soon?
I'm going to post the CXL stuff that makes use of the core support shortly
and whilst I can point at this patch set on list, I'd keen to see it upstream
to reduce the dependencies (it's got 2 sets ahead of it of CXL stuff
anyway but that will all hopefully go through Michael Tsirkin's tree
for PCI stuff in one go).
Jonathan
> ---
> Changes in v6:
> - Use nmi_scratch_append() directly where it makes sense. Fixes bug
> observed by Andrew.
> - Link to v5:
> 20230905-nmi-i2c-v5-0-0001d372a728@samsung.com">https://lore.kernel.org/r/20230905-nmi-i2c-v5-0-0001d372a728@samsung.com
>
> Changes in v5:
> - Added a nmi_scratch_append() that asserts available space in the
> scratch buffer. This is a similar defensive strategy as used in
> hw/i2c/mctp.c
> - Various small fixups in response to review (Jonathan)
> - Link to v4:
> https://lore.kernel.org/r/20230823-nmi-i2c-v4-0-2b0f86e5be25@samsung.com
>
> ---
> Klaus Jensen (3):
> hw/i2c: add smbus pec utility function
> hw/i2c: add mctp core
> hw/nvme: add nvme management interface model
>
> MAINTAINERS | 7 +
> hw/arm/Kconfig | 1 +
> hw/i2c/Kconfig | 4 +
> hw/i2c/mctp.c | 432
> ++++++++++++++++++++++++++++++++++++++++++
> hw/i2c/meson.build | 1 +
> hw/i2c/smbus_master.c | 26 +++
> hw/i2c/trace-events | 13 ++
> hw/nvme/Kconfig | 4 +
> hw/nvme/meson.build | 1 +
> hw/nvme/nmi-i2c.c | 407 +++++++++++++++++++++++++++++++++++++++
> hw/nvme/trace-events | 6 +
> include/hw/i2c/mctp.h | 125 ++++++++++++
> include/hw/i2c/smbus_master.h | 2 +
> include/net/mctp.h | 35 ++++
> 14 files changed, 1064 insertions(+)
> ---
> base-commit: 005ad32358f12fe9313a4a01918a55e60d4f39e5
> change-id: 20230822-nmi-i2c-d804ed5be7e6
>
> Best regards,