riscv: Fix XIP_FIXUP_FLASH_OFFSET
authorMyrtle Shah <gatecat@ds0.me>
Thu, 20 Jan 2022 15:33:37 +0000 (15:33 +0000)
committerPalmer Dabbelt <palmer@rivosinc.com>
Fri, 4 Feb 2022 19:11:07 +0000 (11:11 -0800)
commit3c04d84508b54fcf524093b0d4a718680ed67f0f
treed3f7053b90b2d64d9e40eb866427f25ee4e873d0
parent6a00ef4493706a23120057fafbc62379bcde11ec
riscv: Fix XIP_FIXUP_FLASH_OFFSET

There were several problems with the calculation. Not only was an 'and'
being computed into t1 but thrown away; but the 'and' itself would
cause problems if the granularity of the XIP physical address was less
than XIP_OFFSET - in my case I had the kernel image at 2MB in SPI flash.

Fixes: f9ace4ede49b ("riscv: remove .text section size limitation for XIP")
Cc: stable@vger.kernel.org
Signed-off-by: Myrtle Shah <gatecat@ds0.me>
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/kernel/head.S