• Linus Walleij's avatar
    coresight: replicator: retrieve and handle atclk · 9875cd9c
    Linus Walleij authored
    As can be seen from the datasheet of the CoreSight
    Components, DDI0314 table A-4 the funnel has a clock signal
    apart from the AHB interconnect ("amba_pclk", that we're
    already handling) called ATCLK, ARM Trace Clock, that SoC
    implementers may provide from an entirely different clock
    source. So to model this correctly create an optional
    path for handling ATCLK alongside the PCLK so we don't
    break old platforms that only define PCLK ("amba_pclk") but
    still makes it possible for SoCs that have both clock signals
    (such as the DB8500) to fetch and prepare/enable/disable/
    unprepare both clocks.
    
    The ATCLK is enabled and disabled using the runtime PM
    callbacks. As the replicator is a platform device, the
    code is a bit different from the other CoreSight components
    and the bus core does not activate runtime PM by default,
    so we need a few extra calls.
    Reviewed-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
    Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Signed-off-by: default avatarMathieu Poirier <mathieu.poirier@linaro.org>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    9875cd9c
coresight-replicator.c 5.09 KB