Hi Kevin, On Wed, Apr 6, 2022 at 7:48 PM Kevin Groeneveld <kgroeneveld@xxxxxxxxxxxx> wrote: > > Commit b98ce2f4e32b ("dmaengine: imx-sdma: add uart rom script") broke > uart rx on imx5 when using sdma firmware from older Freescale 2.6.35 > kernel. In this case reading addr->uartXX_2_mcu_addr was going out of > bounds of the firmware memory and corrupting the uart script addresses. > > Simply adding a bounds check before accessing addr->uartXX_2_mcu_addr > does not work as the uartXX_2_mcu_addr members are now beyond the size > of the older firmware and the uart addresses would never be populated > in that case. There are other ways to fix this but overall the logic > seems clearer to me to revert the uartXX_2_mcu_ram_addr structure > entries back to uartXX_2_mcu_addr, change the newer entries to > uartXX_2_mcu_rom_addr and update the logic accordingly. > > Fixes: b98ce2f4e32b ("dmaengine: imx-sdma: add uart rom script") > Signed-off-by: Kevin Groeneveld <kgroeneveld@xxxxxxxxxxxx> Thanks for the fix: Reviewed-by: Fabio Estevam <festevam@xxxxxxxxx>