Lines Matching full:resource
18 * A given IPA version has a fixed number of resource types, and a fixed
19 * total number of resources of each type. "Source" resource types
20 * are separate from "destination" resource types.
22 * Each version of IPA also has some number of resource groups. Each
23 * endpoint is assigned to a resource group, and all endpoints in the
24 * same group share pools of each type of resource. A subset of the
35 /* We program at most 8 source or destination resource group limits */ in ipa_resource_limits_valid()
42 /* Return an error if a non-zero resource limit is specified in ipa_resource_limits_valid()
43 * for a resource group not supported by hardware. in ipa_resource_limits_valid()
46 const struct ipa_resource *resource; in ipa_resource_limits_valid() local
48 resource = &data->resource_src[i]; in ipa_resource_limits_valid()
50 if (resource->limits[j].min || resource->limits[j].max) in ipa_resource_limits_valid()
59 const struct ipa_resource *resource; in ipa_resource_limits_valid() local
61 resource = &data->resource_dst[i]; in ipa_resource_limits_valid()
63 if (resource->limits[j].min || resource->limits[j].max) in ipa_resource_limits_valid()
93 const struct ipa_resource *resource; in ipa_resource_config_src() local
96 resource = &data->resource_src[resource_type]; in ipa_resource_config_src()
99 ylimits = group_count == 1 ? NULL : &resource->limits[1]; in ipa_resource_config_src()
101 &resource->limits[0], ylimits); in ipa_resource_config_src()
106 ylimits = group_count == 3 ? NULL : &resource->limits[3]; in ipa_resource_config_src()
108 &resource->limits[2], ylimits); in ipa_resource_config_src()
113 ylimits = group_count == 5 ? NULL : &resource->limits[5]; in ipa_resource_config_src()
115 &resource->limits[4], ylimits); in ipa_resource_config_src()
120 ylimits = group_count == 7 ? NULL : &resource->limits[7]; in ipa_resource_config_src()
122 &resource->limits[6], ylimits); in ipa_resource_config_src()
130 const struct ipa_resource *resource; in ipa_resource_config_dst() local
133 resource = &data->resource_dst[resource_type]; in ipa_resource_config_dst()
136 ylimits = group_count == 1 ? NULL : &resource->limits[1]; in ipa_resource_config_dst()
138 &resource->limits[0], ylimits); in ipa_resource_config_dst()
143 ylimits = group_count == 3 ? NULL : &resource->limits[3]; in ipa_resource_config_dst()
145 &resource->limits[2], ylimits); in ipa_resource_config_dst()
150 ylimits = group_count == 5 ? NULL : &resource->limits[5]; in ipa_resource_config_dst()
152 &resource->limits[4], ylimits); in ipa_resource_config_dst()
157 ylimits = group_count == 7 ? NULL : &resource->limits[7]; in ipa_resource_config_dst()
159 &resource->limits[6], ylimits); in ipa_resource_config_dst()