lkml.org 
[lkml]   [2011]   [Sep]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5/6 v4] regmap: Add the regcache_sync trace event
    Date
    Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
    ---
    drivers/base/regmap/regcache.c | 8 +++++++-
    include/trace/events/regmap.h | 24 ++++++++++++++++++++++++
    2 files changed, 31 insertions(+), 1 deletions(-)

    diff --git a/drivers/base/regmap/regcache.c b/drivers/base/regmap/regcache.c
    index 038576c..74fff01 100644
    --- a/drivers/base/regmap/regcache.c
    +++ b/drivers/base/regmap/regcache.c
    @@ -219,12 +219,18 @@ EXPORT_SYMBOL_GPL(regcache_write);
    */
    int regcache_sync(struct regmap *map)
    {
    + int ret;
    + const char *name;
    +
    BUG_ON(!map->cache_ops);

    if (map->cache_ops->sync) {
    dev_dbg(map->dev, "Syncing %s cache\n",
    map->cache_ops->name);
    - return map->cache_ops->sync(map);
    + name = map->cache_ops->name;
    + trace_regcache_sync(map->dev, name, "start");
    + ret = map->cache_ops->sync(map);
    + trace_regcache_sync(map->dev, name, "stop");
    }
    return 0;
    }
    diff --git a/include/trace/events/regmap.h b/include/trace/events/regmap.h
    index e35e37c..1e3193b 100644
    --- a/include/trace/events/regmap.h
    +++ b/include/trace/events/regmap.h
    @@ -106,6 +106,30 @@ DEFINE_EVENT(regmap_block, regmap_hw_write_done,
    TP_ARGS(dev, reg, count)
    );

    +TRACE_EVENT(regcache_sync,
    +
    + TP_PROTO(struct device *dev, const char *type,
    + const char *status),
    +
    + TP_ARGS(dev, type, status),
    +
    + TP_STRUCT__entry(
    + __string( name, dev_name(dev) )
    + __string( status, status )
    + __string( type, type )
    + __field( int, type )
    + ),
    +
    + TP_fast_assign(
    + __assign_str(name, dev_name(dev));
    + __assign_str(status, status);
    + __assign_str(type, type);
    + ),
    +
    + TP_printk("%s type=%s status=%s", __get_str(name),
    + __get_str(type), __get_str(status))
    +);
    +
    #endif /* _TRACE_REGMAP_H */

    /* This part must be outside protection */
    --
    1.7.6.1


    \
     
     \ /
      Last update: 2011-09-19 13:37    [W:0.020 / U:178.856 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site