linux-stable/drivers/bus
Paul Davey 60b45fffbe bus: mhi: Fix MHI DMA structure endianness
commit ed2d980503 upstream.

The MHI driver does not work on big endian architectures.  The
controller never transitions into mission mode.  This appears to be due
to the modem device expecting the various contexts and transfer rings to
have fields in little endian order in memory, but the driver constructs
them in native endianness.

Fix MHI event, channel and command contexts and TRE handling macros to
use explicit conversion to little endian.  Mark fields in relevant
structures as little endian to document this requirement.

Fixes: a6e2e3522f ("bus: mhi: core: Add support for PM state transitions")
Fixes: 6cd330ae76 ("bus: mhi: core: Add support for ringing channel/event ring doorbells")
Cc: stable@vger.kernel.org
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: Alex Elder <elder@linaro.org>
Signed-off-by: Paul Davey <paul.davey@alliedtelesis.co.nz>
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Link: https://lore.kernel.org/r/20220301160308.107452-4-manivannan.sadhasivam@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2022-04-08 13:57:14 +02:00
..
fsl-mc bus: fsl-mc-msi: Simplify MSI descriptor handling 2021-12-16 22:22:19 +01:00
mhi bus: mhi: Fix MHI DMA structure endianness 2022-04-08 13:57:14 +02:00
arm-cci.c
arm-integrator-lm.c bus: arm-integrator-lm: Add of_node_put() before return statement 2021-01-15 17:53:05 +01:00
brcmstb_gisb.c - Config updates for BMIPS platform 2021-11-13 09:11:33 -08:00
bt1-apb.c bus: bt1-apb: Use sysfs_streq instead of strncmp 2020-05-28 16:56:56 +02:00
bt1-axi.c bus: bt1-axi: Use sysfs_streq instead of strncmp 2020-05-28 16:57:12 +02:00
da8xx-mstpri.c
hisi_lpc.c
imx-weim.c bus: imx-weim: optionally enable continuous burst clock 2021-12-14 10:33:38 +08:00
intel-ixp4xx-eb.c bus: ixp4xx: return on error in ixp4xx_exp_probe() 2021-08-12 22:34:13 +02:00
Kconfig ARM: SoC drivers for 5.16 2021-11-03 17:00:52 -07:00
Makefile drivers: bus: Delete CONFIG_SIMPLE_PM_BUS 2021-10-05 17:47:22 +02:00
mips_cdmm.c mips: cdmm: fix use-after-free in mips_cdmm_bus_discover 2020-11-27 10:38:02 +01:00
moxtet.c treewide: change my e-mail address, fix my name 2021-04-09 14:54:23 -07:00
mvebu-mbus.c bus: mvebu-mbus: Export symbols for public API window functions 2022-01-06 13:37:47 +00:00
omap-ocp2scp.c
omap_l3_noc.c bus: omap_l3_noc: mark l3 irqs as IRQF_NO_THREAD 2021-02-04 09:08:57 +02:00
omap_l3_noc.h
omap_l3_smx.c
omap_l3_smx.h
qcom-ebi2.c bus: qcom-ebi2: Fix incorrect documentation for '{slow,fast}_cfg' 2021-05-26 21:19:23 -05:00
simple-pm-bus.c drivers: bus: simple-pm-bus: Add support for probing simple bus only devices 2021-10-05 17:47:15 +02:00
sun50i-de2.c bus: sun50i-de2: Adjust printing error message 2021-10-13 14:48:48 +02:00
sunxi-rsb.c bus: sunxi-rsb: Fix shutdown 2021-11-22 10:02:57 +01:00
tegra-aconnect.c
tegra-gmi.c bus: tegra-gmi: Add runtime PM and OPP support 2021-12-16 14:05:23 +01:00
ti-pwmss.c
ti-sysc.c ARM: SoC drivers for 5.16 2021-11-03 17:00:52 -07:00
ts-nbus.c
uniphier-system-bus.c
vexpress-config.c bus: vexpress-config: Support building as module 2020-05-13 12:42:46 -05:00