Correct the endianness conversion for table indirect addressing Now we use be32_to_cpu() instead of cpu_to_le32()
This fix descriptor table parsing when using indirect addressing modes in SCRIPTS Signed-off-by: Soumyajyotii Ssarkar<[email protected]> --- hw/scsi/ncr53c710.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/scsi/ncr53c710.c b/hw/scsi/ncr53c710.c index e17d1f3fb8..4b42fab754 100644 --- a/hw/scsi/ncr53c710.c +++ b/hw/scsi/ncr53c710.c @@ -1355,8 +1355,8 @@ again: offset = sextract32(addr, 0, 24); ncr710_dma_read(s, s->dsa + offset, buf, 8); /* byte count is stored in bits 0:23 only */ - s->dbc = cpu_to_le32(buf[0]) & 0xffffff; - addr = cpu_to_le32(buf[1]); + s->dbc = be32_to_cpu(buf[0]) & 0xffffff; + addr = be32_to_cpu(buf[1]); } /* Check phase match for block move instructions */ if ((s->sstat2 & PHASE_MASK) != ((insn >> 24) & 7)) { -- 2.49.0
