14 Aug, 2024

1 commit

  • commit d73f0f49daa84176c3beee1606e73c7ffb6af8b2 upstream.

    The device tree property 'xlnx,kind-of-intr' is sanity checked that the
    bitmask contains only set bits which are in the range of the number of
    interrupts supported by the controller.

    The check is done by shifting the mask right by the number of supported
    interrupts and checking the result for zero.

    The data type of the mask is u32 and the number of supported interrupts is
    up to 32. In case of 32 interrupts the shift is out of bounds, resulting in
    a mismatch warning. The out of bounds condition is also reported by UBSAN:

    UBSAN: shift-out-of-bounds in irq-xilinx-intc.c:332:22
    shift exponent 32 is too large for 32-bit type 'unsigned int'

    Fix it by promoting the mask to u64 for the test.

    Fixes: d50466c90724 ("microblaze: intc: Refactor DT sanity check")
    Signed-off-by: Radhey Shyam Pandey
    Signed-off-by: Thomas Gleixner
    Cc: stable@vger.kernel.org
    Link: https://lore.kernel.org/all/1723186944-3571957-1-git-send-email-radhey.shyam.pandey@amd.com
    Signed-off-by: Greg Kroah-Hartman

    Radhey Shyam Pandey
     

04 Mar, 2022

1 commit

  • Register the Xilinx driver as the root interrupt controller using
    the GENERIC_IRQ_MULTI_HANDLER API, instead of the arch-specific hack.

    Signed-off-by: Michal Simek
    Reviewed-by: Stefan Asserhall
    [maz: repainted commit message]
    Signed-off-by: Marc Zyngier
    Link: https://lore.kernel.org/r/e6c6595a81f662bf839cee3109d0fa58a596ea47.1646380284.git.michal.simek@xilinx.com

    Michal Simek
     

10 Jun, 2021

1 commit


22 Mar, 2021

1 commit

  • Fix ~36 single-word typos in the IRQ, irqchip and irqdomain code comments.

    Signed-off-by: Ingo Molnar
    Cc: Thomas Gleixner
    Cc: Marc Zyngier
    Cc: Borislav Petkov
    Cc: Peter Zijlstra
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: Ingo Molnar

    Ingo Molnar
     

01 Apr, 2020

2 commits


22 Mar, 2020

4 commits

  • Using a default domain on DT based platforms is unnecessary.

    Signed-off-by: Mubin Sayyed
    Signed-off-by: Marc Zyngier
    Link: https://lore.kernel.org/r/20200317125600.15913-5-mubin.usman.sayyed@xilinx.com

    Mubin Sayyed
     
  • Register default arch handler via driver instead of directly pointing to
    xilinx intc controller. This patch makes architecture code more generic.

    Driver calls generic domain specific irq handler which does the most of
    things self. Also get rid of concurrent_irq counting which hasn't been
    exported anywhere.
    Based on this loop was also optimized by using do/while loop instead of
    goto loop.

    Signed-off-by: Michal Simek
    Signed-off-by: Marc Zyngier
    Reviewed-by: Stefan Asserhall
    Link: https://lore.kernel.org/r/20200317125600.15913-4-mubin.usman.sayyed@xilinx.com

    Michal Simek
     
  • There is no ret filled in case of irq_domain_add_linear() failure.

    Signed-off-by: Michal Simek
    Signed-off-by: Marc Zyngier
    Reviewed-by: Stefan Asserhall
    Link: https://lore.kernel.org/r/20200317125600.15913-3-mubin.usman.sayyed@xilinx.com

    Michal Simek
     
  • Added support for cascaded interrupt controllers.

    Following cascaded configurations have been tested,

    - peripheral->xilinx-intc->xilinx-intc->gic->Cortexa53 processor
    on zcu102 board
    - peripheral->xilinx-intc->xilinx-intc->microblaze processor
    on kcu105 board

    Signed-off-by: Mubin Sayyed
    Signed-off-by: Anirudha Sarangi
    Signed-off-by: Marc Zyngier
    Link: https://lore.kernel.org/r/20200317125600.15913-2-mubin.usman.sayyed@xilinx.com

    Mubin Sayyed
     

23 Aug, 2017

1 commit

  • Now that we have a custom printf format specifier, convert users of
    full_name to use %pOF instead. This is preparation to remove storing
    of the full path string for each node.

    Cc: Thomas Gleixner
    Cc: Jason Cooper
    Cc: Lee Jones
    Cc: Stefan Wahren
    Cc: Florian Fainelli
    Cc: Ray Jui
    Cc: Scott Branden
    Cc: bcm-kernel-feedback-list@broadcom.com
    Cc: Sylvain Lemieux
    Cc: Maxime Coquelin
    Cc: Chen-Yu Tsai
    Cc: Thierry Reding
    Cc: Jonathan Hunter
    Cc: Michal Simek
    Cc: "Sören Brinkmann"
    Cc: linux-rpi-kernel@lists.infradead.org
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linux-mediatek@lists.infradead.org
    Cc: linux-tegra@vger.kernel.org
    Acked-by: Eric Anholt
    Acked-by: Baruch Siach
    Acked-by: Vladimir Zapolskiy
    Acked-by: Matthias Brugger
    Acked-by: Alexandre Torgue
    Acked-by: Maxime Ripard
    Signed-off-by: Rob Herring
    Signed-off-by: Marc Zyngier

    Rob Herring
     

29 Nov, 2016

7 commits