NVIDIA: SAUCE: mailbox: tegra-hsp: Do not clear interrupt routing at probe
HSP interrupts are shared across firmware & OS. Currently, if a firmware configures interrupt routing before kernel boots, the tegra-hsp driver can clear that routing if the same shared interrupt is assigned to Linux. This disables the interrupts for that firmware. Bug 4774805 Change-Id: Icd819a31398ab53f8e915b9b2ef1ffd234972eb3 Signed-off-by: Hiteshkumar Patel <hiteshkumarg@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/3rdparty/canonical/linux-noble/+/3483088 Reviewed-by: Kartik Rajput <kkartik@nvidia.com> Reviewed-by: Bibek Basu <bbasu@nvidia.com> GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
fc8056e062
commit
cc660d12b9
@@ -1,6 +1,6 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
/*
|
||||
* Copyright (c) 2016-2024, NVIDIA CORPORATION. All rights reserved.
|
||||
* Copyright (c) 2016-2025, NVIDIA CORPORATION. All rights reserved.
|
||||
*/
|
||||
|
||||
#include <linux/delay.h>
|
||||
@@ -835,7 +835,6 @@ static int tegra_hsp_request_shared_irq(struct tegra_hsp *hsp)
|
||||
{
|
||||
unsigned int i, irq = 0;
|
||||
unsigned int default_si = hsp->num_si;
|
||||
unsigned int value;
|
||||
int err;
|
||||
|
||||
for (i = 0; i < hsp->num_si; i++) {
|
||||
@@ -853,13 +852,6 @@ static int tegra_hsp_request_shared_irq(struct tegra_hsp *hsp)
|
||||
|
||||
hsp->shared_irqs[i].enabled = true;
|
||||
|
||||
value = tegra_hsp_readl(hsp, HSP_INT_IE(i));
|
||||
if (value && !hsp->soc->virtualized) {
|
||||
dev_warn(hsp->dev,
|
||||
"disabling interrupts for si: %d\n", i);
|
||||
tegra_hsp_writel(hsp, 0, HSP_INT_IE(i));
|
||||
}
|
||||
|
||||
/* Use first available interrupt as default. */
|
||||
if (default_si == hsp->num_si)
|
||||
default_si = i;
|
||||
|
||||
Reference in New Issue
Block a user