lkml.org 
[lkml]   [2015]   [Aug]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH v4 0/5] irqchip, gicv3: Updates and Cavium ThunderX errata workarounds
    Date
    From: Robert Richter <rrichter@cavium.com>

    This patch series adds gicv3 updates and workarounds for HW errata in
    Cavium's ThunderX GICV3.

    The first one is an unchanged resubmission of a patch from a gicv3
    series I sent a while ago.

    The next patches implement the workarounds for ThunderX's gicv3. Patch
    #2 implements the cpu workaround for gicv3 on ThunderX. Patch #3 is a
    prerequisit for patch #5. Patch #4 adds generic code to parse the hw
    revision provided by an IIDR. This patch is used for the implementa-
    tion of the actual gicv3-its workaround in #5.

    All current review comments addressed so far with v4.

    v4:
    * simplify code to only use cpus_have_cap() in gicv3_enable_quirks()
    * only enable hw detection for its in its_enable_quirks()
    * removed gicv3_check_capabilities()
    * drop special cpu capability for zero

    v3:
    * use arm64 errata framework for midr check
    * fix mixup of errata to be dependend from midr/iidr

    v2:
    * Workaround for 23154:
    * implement code in a single asm() to keep instruction sequence
    * added comment to the code that explains the erratum
    * apply workaround also if running as guest, thus check MIDR
    * adding MIDR check

    Robert Richter (5):
    irqchip, gicv3-its: Add range check for number of allocated pages
    irqchip, gicv3: Workaround for Cavium ThunderX erratum 23154
    irqchip, gicv3-its: Read typer register outside the loop
    irqchip, gicv3-its: Add HW revision detection and configuration
    irqchip, gicv3-its: Workaround for Cavium ThunderX errata 22375, 24313

    arch/arm64/Kconfig | 11 +++++++
    arch/arm64/include/asm/cpufeature.h | 3 +-
    arch/arm64/include/asm/cputype.h | 18 ++++++-----
    arch/arm64/kernel/cpu_errata.c | 9 ++++++
    drivers/irqchip/irq-gic-common.c | 11 +++++++
    drivers/irqchip/irq-gic-common.h | 9 ++++++
    drivers/irqchip/irq-gic-v3-its.c | 62 +++++++++++++++++++++++++++++++++----
    drivers/irqchip/irq-gic-v3.c | 42 ++++++++++++++++++++++++-
    include/linux/irqchip/arm-gic-v3.h | 1 +
    9 files changed, 151 insertions(+), 15 deletions(-)

    --
    2.1.1



    \
     
     \ /
      Last update: 2015-08-14 21:01    [W:8.404 / U:2.216 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site