aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuslan Bukin <br@FreeBSD.org>2025-11-25 08:38:37 +0000
committerRuslan Bukin <br@FreeBSD.org>2025-11-25 08:38:37 +0000
commitb87f6330013f2d04ef83c453f95db5cd3247e6e1 (patch)
tree1f890ca86a6d2206b55b04e49631cfe8c1ae35dc
parentaac0ef54dce9d59a5ccc1151693906778cba45c9 (diff)
nvme(4): Increase HMB alignment.
The NVME controller in Crucial P310 disk does not accept 16-byte aligned host memory buffer on Codasip Prime platform, but works fine on PAGE_SIZE aligned memory. Instead of adding a quirk, just increase alignment for everyone. Reviewed by: jhb Discussed with: imp Sponsored by: CHERI Research Centre Differential Revision: https://reviews.freebsd.org/D53296
-rw-r--r--sys/dev/nvme/nvme_ctrlr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/nvme/nvme_ctrlr.c b/sys/dev/nvme/nvme_ctrlr.c
index 41542d24c107..1ad4735cbef8 100644
--- a/sys/dev/nvme/nvme_ctrlr.c
+++ b/sys/dev/nvme/nvme_ctrlr.c
@@ -907,7 +907,7 @@ again:
size = sizeof(struct nvme_hmb_desc) * ctrlr->hmb_nchunks;
err = bus_dma_tag_create(bus_get_dma_tag(ctrlr->dev),
- 16, 0, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR, NULL, NULL,
+ PAGE_SIZE, 0, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR, NULL, NULL,
size, 1, size, 0, NULL, NULL, &ctrlr->hmb_desc_tag);
if (err != 0) {
nvme_printf(ctrlr, "HMB desc tag create failed %d\n", err);