net: mscc: ocelot: use bulk reads for stats
[linux-2.6-block.git] / include / soc / mscc / ocelot.h
index 6687ba35eaf32e336896b9bd9722346f63d5088c..cacb103e4bad623f17eb9644167eed4d4aa6e1fe 100644 (file)
@@ -540,6 +540,13 @@ struct ocelot_stat_layout {
        char name[ETH_GSTRING_LEN];
 };
 
+struct ocelot_stats_region {
+       struct list_head node;
+       u32 offset;
+       int count;
+       u32 *buf;
+};
+
 enum ocelot_tag_prefix {
        OCELOT_TAG_PREFIX_DISABLED      = 0,
        OCELOT_TAG_PREFIX_NONE,
@@ -671,6 +678,7 @@ struct ocelot {
        struct regmap_field             *regfields[REGFIELD_MAX];
        const u32 *const                *map;
        const struct ocelot_stat_layout *stats_layout;
+       struct list_head                stats_regions;
        unsigned int                    num_stats;
 
        u32                             pool_size[OCELOT_SB_NUM][OCELOT_SB_POOL_NUM];