Skip to content

Commit 63e15ef

Browse files
committed
Merge tag 'tegra-for-5.10-firmware' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/drivers
firmware: tegra: Changes for v5.10-rc1 This is a minor change that implements a BPMP workaround for pre-silicon platforms and is needed to enable support for BPMP on Tegra234. * tag 'tegra-for-5.10-firmware' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: firmware: tegra: Enable BPMP support on Tegra234 Link: https://lore.kernel.org/r/20200918150303.3938852-3-thierry.reding@gmail.com Signed-off-by: Olof Johansson <olof@lixom.net>
2 parents e8c9d35 + 0ebdf11 commit 63e15ef

2 files changed

Lines changed: 10 additions & 2 deletions

File tree

drivers/firmware/tegra/bpmp.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -856,7 +856,8 @@ static const struct tegra_bpmp_soc tegra210_soc = {
856856

857857
static const struct of_device_id tegra_bpmp_match[] = {
858858
#if IS_ENABLED(CONFIG_ARCH_TEGRA_186_SOC) || \
859-
IS_ENABLED(CONFIG_ARCH_TEGRA_194_SOC)
859+
IS_ENABLED(CONFIG_ARCH_TEGRA_194_SOC) || \
860+
IS_ENABLED(CONFIG_ARCH_TEGRA_234_SOC)
860861
{ .compatible = "nvidia,tegra186-bpmp", .data = &tegra186_soc },
861862
#endif
862863
#if IS_ENABLED(CONFIG_ARCH_TEGRA_210_SOC)

drivers/mailbox/tegra-hsp.c

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
#include <linux/pm.h>
1414
#include <linux/slab.h>
1515

16+
#include <soc/tegra/fuse.h>
17+
1618
#include <dt-bindings/mailbox/tegra186-hsp.h>
1719

1820
#include "mailbox.h"
@@ -322,7 +324,12 @@ static int tegra_hsp_doorbell_startup(struct mbox_chan *chan)
322324
if (!ccplex)
323325
return -ENODEV;
324326

325-
if (!tegra_hsp_doorbell_can_ring(db))
327+
/*
328+
* On simulation platforms the BPMP hasn't had a chance yet to mark
329+
* the doorbell as ringable by the CCPLEX, so we want to skip extra
330+
* checks here.
331+
*/
332+
if (tegra_is_silicon() && !tegra_hsp_doorbell_can_ring(db))
326333
return -ENODEV;
327334

328335
spin_lock_irqsave(&hsp->lock, flags);

0 commit comments

Comments
 (0)