Lines Matching defs:zone
116 static int sysfs_powercap_get64_val(struct powercap_zone *zone,
124 strcat(file, zone->sys_name);
138 int powercap_get_max_energy_range_uj(struct powercap_zone *zone, uint64_t *val)
140 return sysfs_powercap_get64_val(zone, GET_MAX_ENERGY_RANGE_UJ, val);
143 int powercap_get_energy_uj(struct powercap_zone *zone, uint64_t *val)
145 return sysfs_powercap_get64_val(zone, GET_ENERGY_UJ, val);
148 int powercap_get_max_power_range_uw(struct powercap_zone *zone, uint64_t *val)
150 return sysfs_powercap_get64_val(zone, GET_MAX_POWER_RANGE_UW, val);
153 int powercap_get_power_uw(struct powercap_zone *zone, uint64_t *val)
155 return sysfs_powercap_get64_val(zone, GET_POWER_UW, val);
158 int powercap_zone_get_enabled(struct powercap_zone *zone, int *mode)
162 if ((strlen(PATH_TO_POWERCAP) + strlen(zone->sys_name)) +
167 strcat(path, zone->sys_name);
173 int powercap_zone_set_enabled(struct powercap_zone *zone, int mode)
180 int powercap_read_zone(struct powercap_zone *zone)
191 strcat(sysfs_dir, zone->sys_name);
198 strcat(file, zone->sys_name);
200 sysfs_read_file(file, zone->name, MAX_LINE_LEN);
201 if (zone->parent)
202 zone->tree_depth = zone->parent->tree_depth + 1;
203 ret = powercap_get_energy_uj(zone, &val);
205 zone->has_energy_uj = 1;
206 ret = powercap_get_power_uw(zone, &val);
208 zone->has_power_uw = 1;
227 if (zone->children[i] == NULL) {
228 zone->children[i] = child_zone;
238 strcpy(child_zone->sys_name, zone->sys_name);
241 child_zone->parent = zone;
242 if (zone->tree_depth >= POWERCAP_MAX_TREE_DEPTH) {
243 fprintf(stderr, "Maximum zone hierarchy depth[%d] reached\n",
280 /* Call function *f on the passed zone and all its children */
282 int powercap_walk_zones(struct powercap_zone *zone,
283 int (*f)(struct powercap_zone *zone))
287 if (!zone)
290 ret = f(zone);
295 if (zone->children[i] != NULL)
296 powercap_walk_zones(zone->children[i], f);