macOS always sets this to zero and the firmware starting with macOS 15
has started to complain about what we're doing here.

Based on Linux kernel commit cc0fec9b42cf ("nvme-apple: Never set the
opcode in the NVMMU TCB").

Link: 
https://lore.kernel.org/asahi/[email protected]/
Fixes: 50333c94f2de ("nvme: apple: Add driver for Apple NVMe storage 
controller")
Signed-off-by: Janne Grunau <[email protected]>
---
 drivers/nvme/nvme_apple.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/nvme/nvme_apple.c b/drivers/nvme/nvme_apple.c
index dc94988e2ff..f615f8fac4a 100644
--- a/drivers/nvme/nvme_apple.c
+++ b/drivers/nvme/nvme_apple.c
@@ -121,7 +121,7 @@ static void apple_nvme_submit_cmd(struct nvme_queue *nvmeq,
 
        tcb = ((void *)priv->tcbs[nvmeq->qid]) + tail * ANS_NVMMU_TCB_PITCH;
        memset(tcb, 0, sizeof(*tcb));
-       tcb->opcode = cmd->common.opcode;
+       tcb->opcode = 0;
        if (cmd->common.prp1)
                tcb->flags = ANS_NVMMU_TCB_WRITE | ANS_NVMMU_TCB_READ;
        else

-- 
2.55.0

Reply via email to