mbox series

[v2,0/3] CXL CCI Log Commands implementation

Message ID 20250218085731.550029-1-arpit1.kumar@samsung.com (mailing list archive)
Headers show
Series CXL CCI Log Commands implementation | expand

Message

Arpit Kumar Feb. 18, 2025, 8:57 a.m. UTC
CXL CCI log commands implmented as per CXL Specification 3.2 8.2.10.5
1) get_log_capabilities (Opcode 0402h)
2) clear_log (Opcode 0403h)
3) populate_log (Opcode 0404h)

This v2 patch addresses the feedback from the v1 patch and include some new changes.

Changes in from v1 to v2:
- Added descriptive text for each patches
- Added reference from CXL spec 3.2
- Updated naming for better comprehension
- Modified find_log_index() to return supported log
- Handled array of log capabilities as static const pointers
- Replaced bit fields for param_flags with defines for individual bits
- Disabled support of clear & populate log command for command effect log

The patches are generated against the Johnathan's tree
https://gitlab.com/jic23/qemu.git and branch cxl-2024-11-27.

Arpit Kumar (3):
  hw/cxl/cxl-mailbox-utils.c: Added support for Get Log Capabilities
    (Opcode 0402h)
  hw/cxl/cxl-mailbox-utils.c: Added support for Clear Log (Opcode 0403h)
  hw/cxl/cxl-mailbox-utils.c: Added support for Populate Log (Opcode
    0404h)

 hw/cxl/cxl-mailbox-utils.c   | 100 +++++++++++++++++++++++++++++++++++
 include/hw/cxl/cxl_device.h  |  20 +++++++
 include/hw/cxl/cxl_mailbox.h |   5 ++
 3 files changed, 125 insertions(+)

Comments

Jonathan Cameron Feb. 20, 2025, 4:08 p.m. UTC | #1
On Tue, 18 Feb 2025 14:27:28 +0530
Arpit Kumar <arpit1.kumar@samsung.com> wrote:

> CXL CCI log commands implmented as per CXL Specification 3.2 8.2.10.5
> 1) get_log_capabilities (Opcode 0402h)
> 2) clear_log (Opcode 0403h)
> 3) populate_log (Opcode 0404h)
> 
> This v2 patch addresses the feedback from the v1 patch and include some new changes.

I'll apply these to my staging tree, but it is a little odd
to have the last two commands without any logs that they actually apply to.

Maybe we should make up a component state dump?
I think that currently the populate only really applies to that
one (or the vendor defined one).

We can also look at wiring up the ECS logs and some suitable error
injection as clear log would apply to those.  I like the idea
of having media test longer term as well as the use cases for that in
kernel are interesting to explore.

Jonathan
> 
> Changes in from v1 to v2:
> - Added descriptive text for each patches
> - Added reference from CXL spec 3.2
> - Updated naming for better comprehension
> - Modified find_log_index() to return supported log
> - Handled array of log capabilities as static const pointers
> - Replaced bit fields for param_flags with defines for individual bits
> - Disabled support of clear & populate log command for command effect log
> 
> The patches are generated against the Johnathan's tree
> https://gitlab.com/jic23/qemu.git and branch cxl-2024-11-27.
> 
> Arpit Kumar (3):
>   hw/cxl/cxl-mailbox-utils.c: Added support for Get Log Capabilities
>     (Opcode 0402h)
>   hw/cxl/cxl-mailbox-utils.c: Added support for Clear Log (Opcode 0403h)
>   hw/cxl/cxl-mailbox-utils.c: Added support for Populate Log (Opcode
>     0404h)
> 
>  hw/cxl/cxl-mailbox-utils.c   | 100 +++++++++++++++++++++++++++++++++++
>  include/hw/cxl/cxl_device.h  |  20 +++++++
>  include/hw/cxl/cxl_mailbox.h |   5 ++
>  3 files changed, 125 insertions(+)
>