Skip to content

Commits

Permalink
thunder-4.16-d…
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Commits on Aug 8, 2018

  1. config: Enable PMU uncore driver and PPTT

    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Robert Richter committed Aug 8, 2018
    Copy the full SHA
    1eec307 View commit details
    Browse the repository at this point in the history
  2. ThunderX2: Add CCPI2 UNCORE PMU support for ThunderX2

    This patch adds CCPI2(Cavium Coherent Processor Interconnect 2)
    PMU UNCORE support for ThunderX2. CCPI2 UNCORE supports up to 8
    counters and can be captured up to 8 events simultaneously on each Socket.
    
    Signed-off-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Ganapatrao Kulkarni authored and Robert Richter committed Aug 8, 2018
    Copy the full SHA
    ea92ad2 View commit details
    Browse the repository at this point in the history
  3. thunderx2,uncore: fix compilation issue of uncore driver

    for_each_sibling_event is used in latest patchset, which is not
    available 4.16 kernel version, replacing to use list helper function.
    
    Signed-off-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Ganapatrao Kulkarni authored and Robert Richter committed Aug 8, 2018
    Copy the full SHA
    6518f60 View commit details
    Browse the repository at this point in the history

Commits on Aug 3, 2018

  1. perf vendor events arm64: Update ThunderX2 implementation defined pmu…

    … core events
    
    Signed-off-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Ganapatrao Kulkarni <gklkml16@gmail.com>
    Cc: Jan Glauber <jan.glauber@cavium.com>
    Cc: Jayachandran C <jnair@caviumnetworks.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Robert Richter <robert.richter@cavium.com>
    Cc: Vadim Lomovtsev <vadim.lomovtsev@cavium.com>
    Cc: Will Deacon <will.deacon@arm.com>
    Link: http://lkml.kernel.org/r/20180731100251.23575-1-ganapatrao.kulkarni@cavium.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    (cherry picked from commit b9b77222d4ff6b5bb8f5d87fca20de0910618bb9)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Ganapatrao Kulkarni authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    d65d685 View commit details
    Browse the repository at this point in the history
  2. ACPI / PPTT: use ACPI ID whenever ACPI_PPTT_ACPI_PROCESSOR_ID_VALID i…

    …s set
    
    Currently, we use the ACPI processor ID only for the leaf/processor nodes
    as the specification states it must match the value of the ACPI processor
    ID field in the processor’s entry in the MADT.
    
    However, if a PPTT structure represents a processors group, it
    matches a processor container UID in the namespace and the
    ACPI_PPTT_ACPI_PROCESSOR_ID_VALID flag indicates whether the
    ACPI processor ID is valid.
    
    Let's use UID whenever ACPI_PPTT_ACPI_PROCESSOR_ID_VALID is set to be
    consistent instead of using table offset as it's currently done for
    non-leaf nodes.
    
    Fixes: 2bd00bcd73e5 (ACPI/PPTT: Add Processor Properties Topology Table parsing)
    Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
    Acked-by: Jeremy Linton <jeremy.linton@arm.com>
    [ rjw: Changelog (minor) ]
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    
    (cherry picked from commit 30998033f62a9915e0f884d680569a39bc9ce133)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    sudeep-holla authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    9329a6d View commit details
    Browse the repository at this point in the history
  3. arm64: topology: Avoid checking numa mask for scheduler MC selection

    The numa mask subset check can often lead to system hang or crash during
    CPU hotplug and system suspend operation if NUMA is disabled. This is
    mostly observed on HMP systems where the CPU compute capacities are
    different and ends up in different scheduler domains. Since
    cpumask_of_node is returned instead core_sibling, the scheduler is
    confused with incorrect cpumasks(e.g. one CPU in two different sched
    domains at the same time) on CPU hotplug.
    
    Lets disable the NUMA siblings checks for the time being, as NUMA in
    socket machines have LLC's that will assure that the scheduler topology
    isn't "borken".
    
    The NUMA check exists to assure that if a LLC within a socket crosses
    NUMA nodes/chiplets the scheduler domains remain consistent. This code will
    likely have to be re-enabled in the near future once the NUMA mask story
    is sorted.  At the moment its not necessary because the NUMA in socket
    machines LLC's are contained within the NUMA domains.
    
    Further, as a defensive mechanism during hot-plug, lets assure that the
    LLC siblings are also masked.
    
    Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
    Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>
    Tested-by: Geert Uytterhoeven <geert+renesas@glider.be>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit e156ab71a974737c279530e3b868131291fe677e)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    26c282b View commit details
    Browse the repository at this point in the history
  4. arm64: topology: divorce MC scheduling domain from core_siblings

    Now that we have an accurate view of the physical topology
    we need to represent it correctly to the scheduler. Generally MC
    should equal the LLC in the system, but there are a number of
    special cases that need to be dealt with.
    
    In the case of NUMA in socket, we need to assure that the sched
    domain we build for the MC layer isn't larger than the DIE above it.
    Similarly for LLC's that might exist in cross socket interconnect or
    directory hardware we need to assure that MC is shrunk to the socket
    or NUMA node.
    
    This patch builds a sibling mask for the LLC, and then picks the
    smallest of LLC, socket siblings, or NUMA node siblings, which
    gives us the behavior described above. This is ever so slightly
    different than the similar alternative where we look for a cache
    layer less than or equal to the socket/NUMA siblings.
    
    The logic to pick the MC layer affects all arm64 machines, but
    only changes the behavior for DT/MPIDR systems if the NUMA domain
    is smaller than the core siblings (generally set to the cluster).
    Potentially this fixes a possible bug in DT systems, but really
    it only affects ACPI systems where the core siblings is correctly
    set to the socket siblings. Thus all currently available ACPI
    systems should have MC equal to LLC, including the NUMA in socket
    machines where the LLC is partitioned between the NUMA nodes.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Acked-by: Sudeep Holla <sudeep.holla@arm.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Morten Rasmussen <morten.rasmussen@arm.com>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit 37c3ec2d810f87eac73822f76b30391a83bded19)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    07c44a9 View commit details
    Browse the repository at this point in the history
  5. ACPI: Add PPTT to injectable table list

    Add ACPI_SIG_PPTT to the table so initrd's can override the
    system topology.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Signed-off-by: Geoffrey Blake <geoffrey.blake@arm.com>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit bce1a65172d1172a8ec26c8251b9a4a97a3cae23)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    aba93b6 View commit details
    Browse the repository at this point in the history
  6. arm64: topology: enable ACPI/PPTT based CPU topology

    Propagate the topology information from the PPTT tree to the
    cpu_topology array. We can get the thread id and core_id by assuming
    certain levels of the PPTT tree correspond to those concepts.
    The package_id is flagged in the tree and can be found by calling
    find_acpi_cpu_topology_package() which terminates
    its search when it finds an ACPI node flagged as the physical
    package. If the tree doesn't contain enough levels to represent
    all of the requested levels then the root node will be returned
    for all subsequent levels.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Acked-by: Sudeep Holla <sudeep.holla@arm.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Morten Rasmussen <morten.rasmussen@arm.com>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit 2f0a5d107e1fd6250a3a0469892a6c47a8ca933b)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    b26456f View commit details
    Browse the repository at this point in the history
  7. arm64: topology: rename cluster_id

    The cluster concept isn't architecturally defined for arm64.
    Lets match the name of the arm64 topology field to the kernel macro
    that uses it.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Acked-by: Sudeep Holla <sudeep.holla@arm.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Morten Rasmussen <morten.rasmussen@arm.com>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit 868abc07680c2c8b7f85ae883f9f1b90bf4ef4bf)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    dd984d4 View commit details
    Browse the repository at this point in the history
  8. arm64: Add support for ACPI based firmware tables

    The /sys cache entries should support ACPI/PPTT generated cache
    topology information.  For arm64, if ACPI is enabled, determine
    the max number of cache levels and populate them using the PPTT
    table if one is available.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit 8571890e1513bc6768495b6541fb8064e046a61c)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    62b343f View commit details
    Browse the repository at this point in the history
  9. drivers: base cacheinfo: Add support for ACPI based firmware tables

    Call ACPI cache parsing routines from base cacheinfo code if ACPI
    is enabled. Also stub out cache_setup_acpi and acpi_find_last_cache_level
    so that individual architectures can enable ACPI topology parsing.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Acked-by: Sudeep Holla <sudeep.holla@arm.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit 582b468bdc6d9c287a432a63225cf7922e985e15)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    a90f82e View commit details
    Browse the repository at this point in the history
  10. ACPI: Enable PPTT support on ARM64

    Now that we have a PPTT parser, in preparation for its use
    on arm64, lets build it.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit 0ce82232232a2f76128e9bfcc6e8b662e110a671)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    ecd7de3 View commit details
    Browse the repository at this point in the history
  11. ACPI/PPTT: Add Processor Properties Topology Table parsing

    ACPI 6.2 adds a new table, which describes how processing units
    are related to each other in tree like fashion. Caches are
    also sprinkled throughout the tree and describe the properties
    of the caches in relation to other caches and processing units.
    
    Add the code to parse the cache hierarchy and report the total
    number of levels of cache for a given core using
    acpi_find_last_cache_level() as well as fill out the individual
    cores cache information with cache_setup_acpi() once the
    cpu_cacheinfo structure has been populated by the arch specific
    code.
    
    An additional patch later in the set adds the ability to report
    peers in the topology using find_acpi_cpu_topology()
    to report a unique ID for each processing unit at a given level
    in the tree. These unique id's can then be used to match related
    processing units which exist as threads, within a given
    package, etc.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Acked-by: Sudeep Holla <sudeep.holla@arm.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit 2bd00bcd73e5edd5769e2a5f24c59a517582d862)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    9f61167 View commit details
    Browse the repository at this point in the history
  12. arm64/acpi: Create arch specific cpu to acpi id helper

    Its helpful to be able to lookup the acpi_processor_id associated
    with a logical cpu. Provide an arm64 helper to do this.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Sudeep Holla <sudeep.holla@arm.com>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit 30d87bfacbee396646975a00959764a7c49510ec)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    3a42b41 View commit details
    Browse the repository at this point in the history
  13. cacheinfo: rename of_node to fw_token

    Rename and change the type of of_node to indicate
    it is a generic pointer which is generally only used
    for comparison purposes. In a later patch we will put
    an ACPI/PPTT token pointer in fw_token so that
    the code which builds the shared cpu masks can be reused.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Acked-by: Sudeep Holla <sudeep.holla@arm.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit 9b97387c5c4260ffcdf3b913bdef0d98cb2d4a74)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    5e671d5 View commit details
    Browse the repository at this point in the history
  14. drivers: base: cacheinfo: setup DT cache properties early

    The original intent in cacheinfo was that an architecture
    specific populate_cache_leaves() would probe the hardware
    and then cache_shared_cpu_map_setup() and
    cache_override_properties() would provide firmware help to
    extend/expand upon what was probed. Arm64 was really
    the only architecture that was working this way, and
    with the removal of most of the hardware probing logic it
    became clear that it was possible to simplify the logic a bit.
    
    This patch combines the walk of the DT nodes with the
    code updating the cache size/line_size and nr_sets.
    cache_override_properties() (which was DT specific) is
    then removed. The result is that cacheinfo.of_node is
    no longer used as a temporary place to hold DT references
    for future calls that update cache properties. That change
    helps to clarify its one remaining use (matching
    cacheinfo nodes that represent shared caches) which
    will be used by the ACPI/PPTT code in the following patches.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Acked-by: Sudeep Holla <sudeep.holla@arm.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit 2ff075c7dfd4705de12d687daede2dd664386b1c)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    12197ae View commit details
    Browse the repository at this point in the history
  15. drivers: base: cacheinfo: move cache_setup_of_node()

    In preparation for the next patch, and to aid in
    review of that patch, lets move cache_setup_of_node
    further down in the module without any changes.
    
    Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Tested-by: Vijaya Kumar K <vkilari@codeaurora.org>
    Tested-by: Xiongfeng Wang <wangxiongfeng2@huawei.com>
    Tested-by: Tomasz Nowicki <Tomasz.Nowicki@cavium.com>
    Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    (cherry picked from commit d529a18a61f3f497328f096ddf757af928d6105b)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    jlintonarm authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    64cd1b0 View commit details
    Browse the repository at this point in the history
  16. perf vendor events arm64: Enable JSON events for ThunderX2 B0

    There is MIDR change on ThunderX2 B0, adding an entry to mapfile to
    enable JSON events for B0.
    
    Signed-off-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Acked-by: Will Deacon <will.deacon@arm.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Ganapatrao Kulkarni <gpkulkarni@gklkml16.com>
    Cc: Jayachandran C <jnair@caviumnetworks.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: John Garry <john.garry@huawei.com>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Robert Richter <robert.richter@cavium.com>
    Cc: William Cohen <wcohen@redhat.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Link: http://lkml.kernel.org/r/20180307110803.32418-1-ganapatrao.kulkarni@cavium.com
    [ Fixup wrt recent patchset by John Garry ]
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    (cherry picked from commit a8685f088819d21cd5aea5de4c184de427c3625d)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Ganapatrao Kulkarni authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    009ea3d View commit details
    Browse the repository at this point in the history
  17. perf vendor events arm64: Fixup ThunderX2 to use recommended events

    This patch fixes the Cavium ThunderX2 JSON to use event definitions from
    the ARMv8 recommended events.
    
    Signed-off-by: John Garry <john.garry@huawei.com>
    Tested-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Shaokun Zhang <zhangshaokun@hisilicon.com>
    Cc: Will Deacon <will.deacon@arm.com>
    Cc: William Cohen <wcohen@redhat.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linuxarm@huawei.com
    Link: http://lkml.kernel.org/r/1520506716-197429-10-git-send-email-john.garry@huawei.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    (cherry picked from commit ae43053bd2595dc98f0909505dc1d7e1ed8bd239)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    John Garry authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    7bb6b41 View commit details
    Browse the repository at this point in the history
  18. perf vendor events arm64: Add armv8-recommended.json

    Add JSON for ARMv8 IMPLEMENTATION DEFINED recommended events.
    
    The JSON is copied from ARMv8 architecture reference manual, available
    here:
    
    	https://static.docs.arm.com/ddi0487/ca/DDI0487C_a_armv8_arm.pdf
    
    Originally-from: Shaokun Zhang <zhangshaokun@hisilicon.com>
    Signed-off-by: John Garry <john.garry@huawei.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Will Deacon <will.deacon@arm.com>
    Cc: William Cohen <wcohen@redhat.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linuxarm@huawei.com
    Link: http://lkml.kernel.org/r/1520506716-197429-9-git-send-email-john.garry@huawei.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    (cherry picked from commit 360b7b03afee042d71ab54ba6ea55daf53edf538)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    John Garry authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    feac006 View commit details
    Browse the repository at this point in the history
  19. perf vendor events: Add support for arch standard events

    For some architectures (like arm), there are architecture- defined
    events. Sometimes these events may be "recommended" according to the
    architecture standard, in that the implementer is free ignore the
    "recommendation" and create its custom event.
    
    This patch adds support for parsing standard events from arch-defined
    JSONs, and fixing up vendor events when they have implemented these
    events as standard.
    
    Support is also ensured that the vendor may implement their own custom
    events.
    
    A new step is added to the pmu events parsing to fix up the vendor
    events with the arch-standard events.
    
    The arch-defined JSONs must be placed in the arch root folder for
    preprocessing prior to tree JSON processing.
    
    In the vendor JSON, to specify that the arch event is supported, the
    keyword "ArchStdEvent" should be used, like this:
    
    [
        {
            "ArchStdEvent": "L1D_CACHE_WR",
        },
    ]
    
    Matching is based on the "EventName" field in the architecture JSON.
    
    No other JSON objects are strictly required. However, for other objects
    added, these take precedence over architecture defined standard events,
    thus supporting separate events which have the same event code.
    
    Signed-off-by: John Garry <john.garry@huawei.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Shaokun Zhang <zhangshaokun@hisilicon.com>
    Cc: Will Deacon <will.deacon@arm.com>
    Cc: William Cohen <wcohen@redhat.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linuxarm@huawei.com
    Link: http://lkml.kernel.org/r/1520506716-197429-8-git-send-email-john.garry@huawei.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    (cherry picked from commit e9d32c1bf0cd7a98358ec4aa1625bf2b3459b9ac)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    John Garry authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    c30afaf View commit details
    Browse the repository at this point in the history
  20. perf vendor events arm64: Relocate ThunderX2 JSON to cavium subdirectory

    Since jevents now supports vendor subdirectory, relocate
    the ThunderX2 JSON to Cavium subdirectory.
    
    Signed-off-by: John Garry <john.garry@huawei.com>
    Tested-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Shaokun Zhang <zhangshaokun@hisilicon.com>
    Cc: Will Deacon <will.deacon@arm.com>
    Cc: William Cohen <wcohen@redhat.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linuxarm@huawei.com
    Link: http://lkml.kernel.org/r/1520506716-197429-6-git-send-email-john.garry@huawei.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    (cherry picked from commit e3b9f1e81de2083f359bacd2a94bf1c024f2ede0)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    John Garry authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    2fc133b View commit details
    Browse the repository at this point in the history
  21. perf vendor events: Add support for pmu events vendor subdirectory

    For some architectures (like arm), it is required to support a vendor
    subdirectory and not locate all the JSONs for a specific vendor in the
    same folder.
    
    This is because all the events for the same vendor will be placed in the
    same pmu events table, which may cause conflict.  This conflict would be
    in the instance that a vendor's custom implemented events do have the
    same meaning on different platforms, so events in the pmu table would
    conflict. In addition, per list command may show events which are not
    even supported for a given platform.
    
    This patch adds support for a arch/vendor/platform directory hierarchy,
    while maintaining backwards-compatibility for existing arch/platform
    structure. In this, each platform would always have its own pmu events
    table.
    
    In generated file pmu_events.c, each platform table name is in the
    format pme{_vendor}_platform, like this:
    
    struct pmu_events_map pmu_events_map[] = {
    {
    	.cpuid = "0x00000000420f5160",
    	.version = "v1",
    	.type = "core",
    	.table = pme_cavium_thunderx2
    },
    {
    	.cpuid = 0,
    	.version = 0,
    	.type = 0,
    	.table = 0,
    },
    };
    
    Signed-off-by: John Garry <john.garry@huawei.com>
    Acked-by: Jiri Olsa <jolsa@kernel.org>
    Tested-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Shaokun Zhang <zhangshaokun@hisilicon.com>
    Cc: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
    Cc: Will Deacon <will.deacon@arm.com>
    Cc: William Cohen <wcohen@redhat.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linuxarm@huawei.com
    Link: http://lkml.kernel.org/r/1520506716-197429-5-git-send-email-john.garry@huawei.com
    Link: http://lkml.kernel.org/r/1521047452-28565-1-git-send-email-john.garry@huawei.com
    [ Add missing limits.h include, fixing the build on at least all Alpine Linux versions tested (3.4 to 3.7 + edge), ]
    [ Applied a patch to fix reading ./.. directories in XFS, see second Link tag ]
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    
    (cherry picked from commit 51ce1dcc5d0d3e40e26893a7fa9e30538960ee7e)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    John Garry authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    e654b95 View commit details
    Browse the repository at this point in the history
  22. perf vendor events: Drop support for unused topic directories

    Currently a topic subdirectory is supported in the pmu-events dir, in
    the following sample structure: /arch/platform/subtopic/mysubtopic.json
    
    Upto 256 levels of topic subdirectories are supported. So this means
    that JSONs may be located in a topic dir as well as the platform dir.
    
    This topic subdirectory causes problems if we want to add support for a
    vendor dir in the pmu-events structure (in the form
    arch/platform/vendor), in that we cannot differentiate between a vendor
    dir and a topic dir.
    
    Since the topic dir feature is not used, drop it so it does not block
    adding vendor subdirectory support.
    
    Signed-off-by: John Garry <john.garry@huawei.com>
    Acked-by: Jiri Olsa <jolsa@kernel.org>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Shaokun Zhang <zhangshaokun@hisilicon.com>
    Cc: Will Deacon <will.deacon@arm.com>
    Cc: William Cohen <wcohen@redhat.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linuxarm@huawei.com
    Link: http://lkml.kernel.org/r/1520506716-197429-4-git-send-email-john.garry@huawei.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    (cherry picked from commit 6f2f2ca3454ec4fa03fcd4507bdd7fe97303065b)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    John Garry authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    35dfb36 View commit details
    Browse the repository at this point in the history
  23. perf vendor events: Fix error code in json_events()

    When EXPECT macro fails an assertion, the error code is not properly set
    after the first loop of tokens in function json_events().
    
    This is because err is set to the return value from func function
    pointer call, which must be 0 to continue to loop, yet it is not reset
    for for each loop. I assume that this was not the intention, so change
    the code so err is set appropriately in EXPECT macro itself.
    
    In addition to this, the indention in EXPECT macro is tidied. The
    current indention alludes that the 2 statements following the if
    statement are in the body, which is not true.
    
    Signed-off-by: John Garry <john.garry@huawei.com>
    Acked-by: Jiri Olsa <jolsa@kernel.org>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Cc: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Shaokun Zhang <zhangshaokun@hisilicon.com>
    Cc: Will Deacon <will.deacon@arm.com>
    Cc: William Cohen <wcohen@redhat.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linuxarm@huawei.com
    Link: http://lkml.kernel.org/r/1520506716-197429-3-git-send-email-john.garry@huawei.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    (cherry picked from commit 931ef5dc5c18717d24e5b8d8a968e35638508051)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    John Garry authored and Robert Richter committed Aug 3, 2018
    Copy the full SHA
    0a4b263 View commit details
    Browse the repository at this point in the history
  24. Revert "perf vendor events arm64: Enable JSON events for ThunderX2 B0"

    Replacing with version that supports a vendor subdirectory.
    
    This reverts commit 36013ce9a436914faf5a56170ba38fc1715d4051.
    
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Robert Richter committed Aug 3, 2018
    Copy the full SHA
    2185281 View commit details
    Browse the repository at this point in the history

Commits on Jul 20, 2018

  1. config: Adding Cavium's arm64 default config

    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Robert Richter committed Jul 20, 2018
    Copy the full SHA
    fb53db9 View commit details
    Browse the repository at this point in the history
  2. kernel: crash: add handler for 'crashkernel=auto' value

    Some distros provides crashkernel values as 'auto' to their kernel
    to let it decide how much memory to allocate for crash kernel.
    
    This patch is to implement such value handler for mainline-based
    kernel for arm64.
    
    Signed-off-by: Vadim Lomovtsev <Vadim.Lomovtsev@cavium.com>
    (cherry picked from commit 0c56970b0e4fffe006a28274e23f871675ec0197)
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Vadim Lomovtsev authored and Robert Richter committed Jul 20, 2018
    Copy the full SHA
    b34928b View commit details
    Browse the repository at this point in the history
  3. arm64: acpi: fix alignment fault in accessing ACPI

    This is a fix against the issue that crash dump kernel may hang up
    during booting, which can happen on any ACPI-based system with "ACPI
    Reclaim Memory."
    
    (kernel messages after panic kicked off kdump)
    	   (snip...)
    	Bye!
    	   (snip...)
    	ACPI: Core revision 20170728
    	pud=000000002e7d0003, *pmd=000000002e7c0003, *pte=00e8000039710707
    	Internal error: Oops: 96000021 [#1] SMP
    	Modules linked in:
    	CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.14.0-rc6 #1
    	task: ffff000008d05180 task.stack: ffff000008cc0000
    	PC is at acpi_ns_lookup+0x25c/0x3c0
    	LR is at acpi_ds_load1_begin_op+0xa4/0x294
    	   (snip...)
    	Process swapper/0 (pid: 0, stack limit = 0xffff000008cc0000)
    	Call trace:
    	   (snip...)
    	[<ffff0000084a6764>] acpi_ns_lookup+0x25c/0x3c0
    	[<ffff00000849b4f8>] acpi_ds_load1_begin_op+0xa4/0x294
    	[<ffff0000084ad4ac>] acpi_ps_build_named_op+0xc4/0x198
    	[<ffff0000084ad6cc>] acpi_ps_create_op+0x14c/0x270
    	[<ffff0000084acfa8>] acpi_ps_parse_loop+0x188/0x5c8
    	[<ffff0000084ae048>] acpi_ps_parse_aml+0xb0/0x2b8
    	[<ffff0000084a8e10>] acpi_ns_one_complete_parse+0x144/0x184
    	[<ffff0000084a8e98>] acpi_ns_parse_table+0x48/0x68
    	[<ffff0000084a82cc>] acpi_ns_load_table+0x4c/0xdc
    	[<ffff0000084b32f8>] acpi_tb_load_namespace+0xe4/0x264
    	[<ffff000008baf9b4>] acpi_load_tables+0x48/0xc0
    	[<ffff000008badc20>] acpi_early_init+0x9c/0xd0
    	[<ffff000008b70d50>] start_kernel+0x3b4/0x43c
    	Code: b9008fb9 2a000318 36380054 32190318 (b94002c0)
    	---[ end trace c46ed37f9651c58e ]---
    	Kernel panic - not syncing: Fatal exception
    	Rebooting in 10 seconds..
    
    (diagnosis)
    * This fault is a data abort, alignment fault (ESR=0x96000021)
      during reading out ACPI table.
    * Initial ACPI tables are normally stored in system ram and marked as
      "ACPI Reclaim memory" by the firmware.
    * After the commit f56ab9a ("efi/arm: Don't mark ACPI reclaim
      memory as MEMBLOCK_NOMAP"), those regions are differently handled
      as they are "memblock-reserved", without NOMAP bit.
    * So they are now excluded from device tree's "usable-memory-range"
      which kexec-tools determines based on a current view of /proc/iomem.
    * When crash dump kernel boots up, it tries to accesses ACPI tables by
      mapping them with ioremap(), not ioremap_cache(), in acpi_os_ioremap()
      since they are no longer part of mapped system ram.
    * Given that ACPI accessor/helper functions are compiled in without
      unaligned access support (ACPI_MISALIGNMENT_NOT_SUPPORTED),
      any unaligned access to ACPI tables can cause a fatal panic.
    
    With this patch, acpi_os_ioremap() always honors memory attribute
    information provided by the firmware (EFI) and retaining cacheability
    allows the kernel safe access to ACPI tables.
    
    Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
    Reviewed-by: James Morse <james.morse@arm.com>
    Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Reported-by and Tested-by: Bhupesh Sharma <bhsharma@redhat.com>
    Message-Id: <20180709234229.20181-5-takahiro.akashi@linaro.org>
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    t-akashi authored and Robert Richter committed Jul 20, 2018
    Copy the full SHA
    471a489 View commit details
    Browse the repository at this point in the history
  4. efi/arm: map UEFI memory map even w/o runtime services enabled

    Under the current implementation, UEFI memory map will be mapped and made
    available in virtual mappings only if runtime services are enabled.
    But in a later patch, we want to use UEFI memory map in acpi_os_ioremap()
    to create mappings of ACPI tables using memory attributes described in
    UEFI memory map.
    See the following commit:
        arm64: acpi: fix alignment fault in accessing ACPI tables
    
    So, as a first step, arm_enter_runtime_services() is modified, alongside
    Ard's patch[1], so that UEFI memory map will not be freed even if
    efi=noruntime.
    
    [1] https://marc.info/?l=linux-efi&m=152930773507524&w=2
    
    Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
    Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Message-Id: <20180709234229.20181-4-takahiro.akashi@linaro.org>
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    t-akashi authored and Robert Richter committed Jul 20, 2018
    Copy the full SHA
    0dc9447 View commit details
    Browse the repository at this point in the history
  5. efi/arm: preserve early mapping of UEFI memory map longer for BGRT

    The BGRT code validates the contents of the table against the UEFI
    memory map, and so it expects it to be mapped when the code runs.
    
    On ARM, this is currently not the case, since we tear down the early
    mapping after efi_init() completes, and only create the permanent
    mapping in arm_enable_runtime_services(), which executes as an early
    initcall, but still leaves a window where the UEFI memory map is not
    mapped.
    
    So move the call to efi_memmap_unmap() from efi_init() to
    arm_enable_runtime_services().
    
    Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Acked-by: James Morse <james.morse@arm.com>
    Message-Id: <20180709234229.20181-3-takahiro.akashi@linaro.org>
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Ard Biesheuvel authored and Robert Richter committed Jul 20, 2018
    Copy the full SHA
    8c98367 View commit details
    Browse the repository at this point in the history
  6. arm64: export memblock_reserve()d regions via /proc/iomem

    There has been some confusion around what is necessary to prevent kexec
    overwriting important memory regions. memblock: reserve, or nomap?
    Only memblock nomap regions are reported via /proc/iomem, kexec's
    user-space doesn't know about memblock_reserve()d regions.
    
    Until commit f56ab9a ("efi/arm: Don't mark ACPI reclaim memory
    as MEMBLOCK_NOMAP") the ACPI tables were nomap, now they are reserved
    and thus possible for kexec to overwrite with the new kernel or initrd.
    But this was always broken, as the UEFI memory map is also reserved
    and not marked as nomap.
    
    Exporting both nomap and reserved memblock types is a nuisance as
    they live in different memblock structures which we can't walk at
    the same time.
    
    Take a second walk over memblock.reserved and add new 'reserved'
    subnodes for the memblock_reserved() regions that aren't already
    described by the existing code. (e.g. Kernel Code)
    
    We use reserve_region_with_split() to find the gaps in existing named
    regions. This handles the gap between 'kernel code' and 'kernel data'
    which is memblock_reserve()d, but already partially described by
    request_standard_resources(). e.g.:
    | 80000000-dfffffff : System RAM
    |   80080000-80ffffff : Kernel code
    |   81000000-8158ffff : reserved
    |   81590000-8237efff : Kernel data
    |   a0000000-dfffffff : Crash kernel
    | e00f0000-f949ffff : System RAM
    
    reserve_region_with_split needs kzalloc() which isn't available when
    request_standard_resources() is called, use an initcall.
    
    Reported-by: Bhupesh Sharma <bhsharma@redhat.com>
    Reported-by: Tyler Baicar <tbaicar@codeaurora.org>
    Suggested-by: Akashi Takahiro <takahiro.akashi@linaro.org>
    Signed-off-by: James Morse <james.morse@arm.com>
    Fixes: d28f6df ("arm64/kexec: Add core kexec support")
    Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    CC: Mark Rutland <mark.rutland@arm.com>
    Message-Id: <20180709234229.20181-2-takahiro.akashi@linaro.org>
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    James Morse authored and Robert Richter committed Jul 20, 2018
    Copy the full SHA
    ee52356 View commit details
    Browse the repository at this point in the history
  7. ThunderX2: Add Cavium ThunderX2 SoC UNCORE PMU driver

    This patch adds a perf driver for the PMU UNCORE devices DDR4 Memory
    Controller(DMC) and Level 3 Cache(L3C).
    
    ThunderX2 has 8 independent DMC PMUs to capture performance events
    corresponding to 8 channels of DDR4 Memory Controller and 16 independent
    L3C PMUs to capture events corresponding to 16 tiles of L3 cache.
    Each PMU supports up to 4 counters. All counters lack overflow interrupt
    and are sampled periodically.
    
    Signed-off-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Message-Id: <20180621063338.20093-3-ganapatrao.kulkarni@cavium.com>
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Ganapatrao Kulkarni authored and Robert Richter committed Jul 20, 2018
    Copy the full SHA
    5145b30 View commit details
    Browse the repository at this point in the history
  8. perf: uncore: Adding documentation for ThunderX2 pmu uncore driver

    Documentation for the UNCORE PMUs on Cavium's ThunderX2 SoC.
    The SoC has PMU support in its L3 cache controller (L3C) and in the
    DDR4 Memory Controller (DMC).
    
    Signed-off-by: Ganapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Message-Id: <20180621063338.20093-2-ganapatrao.kulkarni@cavium.com>
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Ganapatrao Kulkarni authored and Robert Richter committed Jul 20, 2018
    Copy the full SHA
    f54f4d0 View commit details
    Browse the repository at this point in the history
Older