• Yatharth Kochar's avatar
    Add Performance Measurement Framework(PMF) · a31d8983
    Yatharth Kochar authored
    This patch adds Performance Measurement Framework(PMF) in the
    ARM Trusted Firmware. PMF is implemented as a library and the
    SMC interface is provided through ARM SiP service.
    
    The PMF provides capturing, storing, dumping and retrieving the
    time-stamps, by enabling the development of services by different
    providers, that can be easily integrated into ARM Trusted Firmware.
    The PMF capture and retrieval APIs can also do appropriate cache
    maintenance operations to the timestamp memory when the caller
    indicates so.
    
    `pmf_main.c` consists of core functions that implement service
    registration, initialization, storing, dumping and retrieving
    the time-stamp.
    `pmf_smc.c` consists SMC handling for registered PMF services.
    `pmf.h` consists of the macros that can be used by the PMF service
    providers to register service and declare time-stamp functions.
    `pmf_helpers.h` consists of internal macros that are used by `pmf.h`
    
    By default this feature is disabled in the ARM trusted firmware.
    To enable it set the boolean flag `ENABLE_PMF` to 1.
    
    NOTE: The caller is responsible for specifying the appropriate cache
    maintenance flags and for acquiring/releasing appropriate locks
    before/after capturing/retrieving the time-stamps.
    
    Change-Id: Ib45219ac07c2a81b9726ef6bd9c190cc55e81854
    a31d8983
pmf_main.c 8.43 KB