lkml.org 
[lkml]   [2019]   [Dec]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.4 273/350] mailbox: tegra: Fix superfluous IRQ error message
    Date
    From: Jon Hunter <jonathanh@nvidia.com>

    [ Upstream commit c745da8d4320c49e54662c0a8f7cb6b8204f44c4 ]

    Commit 7723f4c5ecdb ("driver core: platform: Add an error message to
    platform_get_irq*()") added an error message to avoid drivers having
    to print an error message when IRQ lookup fails. However, there are
    some cases where IRQs are optional and so new optional versions of
    the platform_get_irq*() APIs have been added for these cases.

    The IRQs for Tegra HSP module are optional because not all instances
    of the module have the doorbell and all of the shared interrupts.
    Hence, since the above commit was applied the following error messages
    are now seen on Tegra194 ...

    ERR KERN tegra-hsp c150000.hsp: IRQ doorbell not found
    ERR KERN tegra-hsp c150000.hsp: IRQ shared0 not found

    The Tegra HSP driver deliberately does not fail if these are not found
    and so fix the above errors by updating the Tegra HSP driver to use
    the platform_get_irq_byname_optional() API.

    Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
    Acked-by: Thierry Reding <treding@nvidia.com>
    Link: https://lore.kernel.org/r/20191011083459.11551-1-jonathanh@nvidia.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/mailbox/tegra-hsp.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    diff --git a/drivers/mailbox/tegra-hsp.c b/drivers/mailbox/tegra-hsp.c
    index 4c5ba35d48d43..834b35dc3b137 100644
    --- a/drivers/mailbox/tegra-hsp.c
    +++ b/drivers/mailbox/tegra-hsp.c
    @@ -657,7 +657,7 @@ static int tegra_hsp_probe(struct platform_device *pdev)
    hsp->num_db = (value >> HSP_nDB_SHIFT) & HSP_nINT_MASK;
    hsp->num_si = (value >> HSP_nSI_SHIFT) & HSP_nINT_MASK;

    - err = platform_get_irq_byname(pdev, "doorbell");
    + err = platform_get_irq_byname_optional(pdev, "doorbell");
    if (err >= 0)
    hsp->doorbell_irq = err;

    @@ -677,7 +677,7 @@ static int tegra_hsp_probe(struct platform_device *pdev)
    if (!name)
    return -ENOMEM;

    - err = platform_get_irq_byname(pdev, name);
    + err = platform_get_irq_byname_optional(pdev, name);
    if (err >= 0) {
    hsp->shared_irqs[i] = err;
    count++;
    --
    2.20.1
    \
     
     \ /
      Last update: 2019-12-10 22:19    [W:4.031 / U:0.036 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site