linux/drivers/mailbox
Conor Dooley ab47d0bfdf mailbox: mpfs: read the system controller's status
Some services explicitly return an error code in their response, but
others rely on the system controller to set a status in its status
register. The meaning of the bits varies based on what service is
requested, so pass it back up to the driver that requested the service
in the first place. The field in the message struct already existed, but
was unused until now.

If the system controller is busy, in which case we should never actually
be in the interrupt handler, or if the service fails the mailbox itself
should not be read. Callers should check the status before operating on
the response.

There's an existing, but unused, #define for the mailbox mask - but it
was incorrect. It was doing a GENMASK_ULL(32, 16) which should've just
been a GENMASK(31, 16), so fix that up and start using it.

Fixes: 83d7b15608 ("mbox: add polarfire soc system controller mailbox")
Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
Reviewed-by: Palmer Dabbelt <palmer@rivosinc.com>
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
2022-12-18 20:40:30 -06:00
..
apple-mailbox.c mailbox: apple: Implement poll_data() operation 2022-09-15 13:14:01 -05:00
arm_mhu_db.c mailbox: correct kerneldoc 2022-05-21 11:41:30 -05:00
arm_mhu.c mailbox: arm_mhu: Remove redundant error printing in mhu_probe() 2021-06-26 11:37:48 -05:00
arm_mhuv2.c mailbox: correct kerneldoc 2022-05-21 11:41:30 -05:00
armada-37xx-rwtm-mailbox.c treewide: change my e-mail address, fix my name 2021-04-09 14:54:23 -07:00
bcm2835-mailbox.c mailbox: bcm2835: Make use of the helper function devm_platform_ioremap_resource() 2021-10-16 14:39:48 -05:00
bcm-flexrm-mailbox.c mailbox: bcm-ferxrm-mailbox: Fix error check for dma_map_sg 2022-10-05 21:50:53 -05:00
bcm-pdc-mailbox.c mailbox: bcm-pdc: Remove redundant error printing in pdc_probe() 2021-06-26 11:37:50 -05:00
hi3660-mailbox.c mailbox: hi3660: convert struct comments to kernel-doc notation 2022-01-11 23:47:32 -06:00
hi6220-mailbox.c mailbox: hi6220: Make use of the helper function devm_platform_ioremap_resource() 2021-10-16 14:39:49 -05:00
imx-mailbox.c mailbox: imx: fix RST channel support 2022-10-05 21:46:36 -05:00
Kconfig mailbox: config: ti-msgmgr: Default set to ARCH_K3 for TI msg manager 2022-12-18 20:40:29 -06:00
mailbox-altera.c mailbox: altera: Make use of the helper function devm_platform_ioremap_resource() 2021-10-16 14:39:48 -05:00
mailbox-mpfs.c mailbox: mpfs: read the system controller's status 2022-12-18 20:40:30 -06:00
mailbox-sti.c mailbox: sti: Make use of the helper function devm_platform_ioremap_resource() 2021-10-16 14:39:49 -05:00
mailbox-test.c
mailbox-xgene-slimpro.c mailbox: xgene-slimpro: Make use of the helper function devm_platform_ioremap_resource() 2021-10-16 14:39:49 -05:00
mailbox.c mailbox: forward the hrtimer if not queued and under a lock 2022-05-23 14:45:24 -05:00
mailbox.h mailbox: fix various typos in comments 2021-04-13 20:07:35 -05:00
Makefile mailbox: mediatek: add support for adsp mailbox controller 2022-03-12 19:24:57 -06:00
mtk-adsp-mailbox.c mailbox: mediatek: support mt8186 adsp mailbox 2022-05-21 11:41:30 -05:00
mtk-cmdq-mailbox.c mailbox: mtk-cmdq: add MT8186 support 2022-12-18 20:40:30 -06:00
omap-mailbox.c mailbox: omap: using pm_runtime_resume_and_get to simplify the code 2022-05-21 11:41:30 -05:00
pcc.c mailbox: pcc: Fix spelling mistake "Plaform" -> "Platform" 2022-10-05 21:51:14 -05:00
pl320-ipc.c mailbox: fix various typos in comments 2021-04-13 20:07:35 -05:00
platform_mhu.c mailbox: platform-mhu: Make use of the helper function devm_platform_ioremap_resource() 2021-10-16 14:39:49 -05:00
qcom-apcs-ipc-mailbox.c mailbox: qcom-apcs-ipc: Add SM4250 APCS IPC support 2022-12-18 20:40:29 -06:00
qcom-ipcc.c mailbox: qcom-ipcc: flag IRQ NO_THREAD 2022-10-05 21:51:58 -05:00
rockchip-mailbox.c mailbox: rockchip: Use device_get_match_data() to simplify the code 2022-12-18 20:40:29 -06:00
sprd-mailbox.c mailbox: sprd: Add supplementary inbox support 2021-04-13 20:07:36 -05:00
stm32-ipcc.c mailbox: stm32-ipcc: Make use of the helper function devm_platform_ioremap_resource() 2021-10-16 14:39:49 -05:00
sun6i-msgbox.c mailbox: sun6i: Make use of the helper function devm_platform_ioremap_resource() 2021-10-16 14:39:49 -05:00
tegra-hsp.c mailbox: tegra-hsp: Add 128-bit shared mailbox support 2022-05-21 11:41:30 -05:00
ti-msgmgr.c mailbox: ti-msgmgr: Operate mailbox in polled mode during system suspend 2022-03-12 19:33:30 -06:00
zynqmp-ipi-mailbox.c mailbox: zynq: add missing of_node_put before return 2022-01-11 23:47:32 -06:00