[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 4/8] hw/cxl: Add CXL_CAPACITY_MULTIPLIER definition
From: |
Jonathan Cameron |
Subject: |
[PATCH v2 4/8] hw/cxl: Add CXL_CAPACITY_MULTIPLIER definition |
Date: |
Thu, 12 Jan 2023 10:26:40 +0000 |
From: Gregory Price <gourry.memverge@gmail.com>
Remove usage of magic numbers when accessing capacity fields and replace
with CXL_CAPACITY_MULTIPLIER, matching the kernel definition.
Signed-off-by: Gregory Price <gregory.price@memverge.com>
Reviewed-by: Davidlohr Bueso <dave@stgolabs.net>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
---
v2:
Change to 256 * MiB and include qemu/units.h (Philippe Mathieu-Daudé)
hw/cxl/cxl-mailbox-utils.c | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/hw/cxl/cxl-mailbox-utils.c b/hw/cxl/cxl-mailbox-utils.c
index bc1bb18844..3f67b665f5 100644
--- a/hw/cxl/cxl-mailbox-utils.c
+++ b/hw/cxl/cxl-mailbox-utils.c
@@ -12,8 +12,11 @@
#include "hw/pci/pci.h"
#include "qemu/cutils.h"
#include "qemu/log.h"
+#include "qemu/units.h"
#include "qemu/uuid.h"
+#define CXL_CAPACITY_MULTIPLIER (256 * MiB)
+
/*
* How to add a new command, example. The command set FOO, with cmd BAR.
* 1. Add the command set and cmd to the enum.
@@ -138,7 +141,7 @@ static ret_code cmd_firmware_update_get_info(struct cxl_cmd
*cmd,
} QEMU_PACKED *fw_info;
QEMU_BUILD_BUG_ON(sizeof(*fw_info) != 0x50);
- if (cxl_dstate->pmem_size < (256 << 20)) {
+ if (cxl_dstate->pmem_size < CXL_CAPACITY_MULTIPLIER) {
return CXL_MBOX_INTERNAL_ERROR;
}
@@ -283,7 +286,7 @@ static ret_code cmd_identify_memory_device(struct cxl_cmd
*cmd,
CXLType3Class *cvc = CXL_TYPE3_GET_CLASS(ct3d);
uint64_t size = cxl_dstate->pmem_size;
- if (!QEMU_IS_ALIGNED(size, 256 << 20)) {
+ if (!QEMU_IS_ALIGNED(size, CXL_CAPACITY_MULTIPLIER)) {
return CXL_MBOX_INTERNAL_ERROR;
}
@@ -293,8 +296,8 @@ static ret_code cmd_identify_memory_device(struct cxl_cmd
*cmd,
/* PMEM only */
snprintf(id->fw_revision, 0x10, "BWFW VERSION %02d", 0);
- id->total_capacity = size / (256 << 20);
- id->persistent_capacity = size / (256 << 20);
+ id->total_capacity = size / CXL_CAPACITY_MULTIPLIER;
+ id->persistent_capacity = size / CXL_CAPACITY_MULTIPLIER;
id->lsa_size = cvc->get_lsa_size(ct3d);
*len = sizeof(*id);
@@ -314,14 +317,14 @@ static ret_code cmd_ccls_get_partition_info(struct
cxl_cmd *cmd,
QEMU_BUILD_BUG_ON(sizeof(*part_info) != 0x20);
uint64_t size = cxl_dstate->pmem_size;
- if (!QEMU_IS_ALIGNED(size, 256 << 20)) {
+ if (!QEMU_IS_ALIGNED(size, CXL_CAPACITY_MULTIPLIER)) {
return CXL_MBOX_INTERNAL_ERROR;
}
/* PMEM only */
part_info->active_vmem = 0;
part_info->next_vmem = 0;
- part_info->active_pmem = size / (256 << 20);
+ part_info->active_pmem = size / CXL_CAPACITY_MULTIPLIER;
part_info->next_pmem = 0;
*len = sizeof(*part_info);
--
2.37.2
- [PATCH v2 0/8] hw/cxl: CXL emulation cleanups and minor fixes for upstream, Jonathan Cameron, 2023/01/12
- [PATCH v2 1/8] hw/mem/cxl_type3: Improve error handling in realize(), Jonathan Cameron, 2023/01/12
- [PATCH v2 2/8] hw/pci-bridge/cxl_downstream: Fix type naming mismatch, Jonathan Cameron, 2023/01/12
- [PATCH v2 3/8] hw/cxl: set cxl-type3 device type to PCI_CLASS_MEMORY_CXL, Jonathan Cameron, 2023/01/12
- [PATCH v2 4/8] hw/cxl: Add CXL_CAPACITY_MULTIPLIER definition,
Jonathan Cameron <=
- [PATCH v2 5/8] hw/i386/acpi: Drop duplicate _UID entry for CXL root bridge, Jonathan Cameron, 2023/01/12
- [PATCH v2 6/8] qemu/bswap: Add const_le64(), Jonathan Cameron, 2023/01/12
- [PATCH v2 7/8] qemu/uuid: Add UUID static initializer, Jonathan Cameron, 2023/01/12
- [PATCH v2 8/8] hw/cxl/mailbox: Use new UUID network order define for cel_uuid, Jonathan Cameron, 2023/01/12