diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2020-02-18 14:36:27 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2020-02-18 14:59:31 +0100 |
commit | 792d56bd33346adadf8b95dea2d2ed09f9e347e7 (patch) | |
tree | a45318f7489c7f5c5a026557952e885efb4b5633 | |
parent | epoch01: Update due to API changes (diff) | |
download | rtems-libbsd-792d56bd33346adadf8b95dea2d2ed09f9e347e7.tar.bz2 |
NVME(4): Fix for big endian platforms
Update #3821.
-rw-r--r-- | freebsd/sys/dev/nvme/nvme_qpair.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/freebsd/sys/dev/nvme/nvme_qpair.c b/freebsd/sys/dev/nvme/nvme_qpair.c index a866a959..db6a3876 100644 --- a/freebsd/sys/dev/nvme/nvme_qpair.c +++ b/freebsd/sys/dev/nvme/nvme_qpair.c @@ -631,8 +631,13 @@ nvme_qpair_process_completions(struct nvme_qpair *qpair) qpair->phase = !qpair->phase; /* 3 */ } +#ifndef __rtems__ bus_space_write_4(qpair->ctrlr->bus_tag, qpair->ctrlr->bus_handle, qpair->cq_hdbl_off, qpair->cq_head); +#else /* __rtems__ */ + bus_space_write_4(qpair->ctrlr->bus_tag, qpair->ctrlr->bus_handle, + qpair->cq_hdbl_off, htole32(qpair->cq_head)); +#endif /* __rtems__ */ } return (done != 0); } @@ -987,8 +992,13 @@ nvme_qpair_submit_tracker(struct nvme_qpair *qpair, struct nvme_tracker *tr) wmb(); #endif /* __rtems__ */ +#ifndef __rtems__ bus_space_write_4(qpair->ctrlr->bus_tag, qpair->ctrlr->bus_handle, qpair->sq_tdbl_off, qpair->sq_tail); +#else /* __rtems__ */ + bus_space_write_4(qpair->ctrlr->bus_tag, qpair->ctrlr->bus_handle, + qpair->sq_tdbl_off, htole32(qpair->sq_tail)); +#endif /* __rtems__ */ qpair->num_cmds++; } |