aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mailbox
diff options
context:
space:
mode:
authorBitan Biswas <bbiswas@nvidia.com>2019-06-14 09:31:01 -0700
committerJassi Brar <jaswinder.singh@linaro.org>2019-07-10 23:08:44 -0500
commit20b5d24c7669813ec73589146f7dcefbf259a26a (patch)
tree90da1fd417572b74831dc7f7ef1e489fca463c3a /drivers/mailbox
parentmailbox: tegra: hsp: add noirq resume (diff)
downloadlinux-dev-20b5d24c7669813ec73589146f7dcefbf259a26a.tar.xz
linux-dev-20b5d24c7669813ec73589146f7dcefbf259a26a.zip
mailbox: tegra: avoid resume NULL mailboxes
If Tegra HSP device tree does not have 'shared irqs', mailboxes pointer is NULL. Add non-NULL HSP mailboxes check in resume callback before tegra_hsp_mailbox_startup() call and prevent NULL pointer exception. Signed-off-by: Bitan Biswas <bbiswas@nvidia.com> Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
Diffstat (limited to 'drivers/mailbox')
-rw-r--r--drivers/mailbox/tegra-hsp.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/mailbox/tegra-hsp.c b/drivers/mailbox/tegra-hsp.c
index 91e223e05e1d..4c5ba35d48d4 100644
--- a/drivers/mailbox/tegra-hsp.c
+++ b/drivers/mailbox/tegra-hsp.c
@@ -782,11 +782,13 @@ static int __maybe_unused tegra_hsp_resume(struct device *dev)
tegra_hsp_doorbell_startup(db->channel.chan);
}
- for (i = 0; i < hsp->num_sm; i++) {
- struct tegra_hsp_mailbox *mb = &hsp->mailboxes[i];
+ if (hsp->mailboxes) {
+ for (i = 0; i < hsp->num_sm; i++) {
+ struct tegra_hsp_mailbox *mb = &hsp->mailboxes[i];
- if (mb->channel.chan->cl)
- tegra_hsp_mailbox_startup(mb->channel.chan);
+ if (mb->channel.chan->cl)
+ tegra_hsp_mailbox_startup(mb->channel.chan);
+ }
}
return 0;