OSDN Git Service

ASoC: SOF: imx: imx8: Bar index is only valid for IRAM and SRAM types
authorPeter Ujfalusi <peter.ujfalusi@linux.intel.com>
Wed, 15 Sep 2021 12:21:08 +0000 (15:21 +0300)
committerMark Brown <broonie@kernel.org>
Wed, 15 Sep 2021 15:23:48 +0000 (16:23 +0100)
commit10d93a98190aec2c3ff98d9472ab1bf0543aa02c
tree34d6c556041fba3d9e0dcf4e2aa73fbf38c2d93c
parentac4dfccb96571ca03af7cac64b7a0b2952c97f3a
ASoC: SOF: imx: imx8: Bar index is only valid for IRAM and SRAM types

i.MX8 only uses SOF_FW_BLK_TYPE_IRAM (1) and SOF_FW_BLK_TYPE_SRAM (3)
bars, everything else is left as 0 in sdev->bar[] array.

If a broken or purposefully crafted firmware image is loaded with other
types of FW_BLK_TYPE then a kernel crash can be triggered.

Make sure that only IRAM/SRAM type is converted to bar index.

Fixes: 202acc565a1f0 ("ASoC: SOF: imx: Add i.MX8 HW support")
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@gmail.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Link: https://lore.kernel.org/r/20210915122116.18317-5-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/imx/imx8.c