MCPcopy Create free account
hub / github.com/F-Stack/f-stack / dlb2_hw_query_resources

Function dlb2_hw_query_resources

dpdk/drivers/event/dlb2/dlb2.c:157–223  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

155}
156
157static int
158dlb2_hw_query_resources(struct dlb2_eventdev *dlb2)
159{
160 struct dlb2_hw_dev *handle = &dlb2->qm_instance;
161 int num_ldb_ports;
162 int ret;
163
164 /* Query driver resources provisioned for this device */
165
166 ret = dlb2_iface_get_num_resources(handle,
167 &dlb2->hw_rsrc_query_results);
168 if (ret) {
169 DLB2_LOG_ERR("ioctl get dlb2 num resources, err=%d", ret);
170 return ret;
171 }
172
173 /* Complete filling in device resource info returned to evdev app,
174 * overriding any default values.
175 * The capabilities (CAPs) were set at compile time.
176 */
177
178 num_ldb_ports = dlb2->hw_rsrc_query_results.num_ldb_ports;
179
180 evdev_dlb2_default_info.max_event_queues =
181 dlb2->hw_rsrc_query_results.num_ldb_queues;
182
183 evdev_dlb2_default_info.max_event_ports = num_ldb_ports;
184
185 evdev_dlb2_default_info.max_single_link_event_port_queue_pairs =
186 dlb2->hw_rsrc_query_results.num_dir_ports;
187
188 if (dlb2->version == DLB2_HW_V2_5) {
189 evdev_dlb2_default_info.max_num_events =
190 dlb2->hw_rsrc_query_results.num_credits;
191 } else {
192 evdev_dlb2_default_info.max_num_events =
193 dlb2->hw_rsrc_query_results.num_ldb_credits;
194 }
195 /* Save off values used when creating the scheduling domain. */
196
197 handle->info.num_sched_domains =
198 dlb2->hw_rsrc_query_results.num_sched_domains;
199
200 if (dlb2->version == DLB2_HW_V2_5) {
201 handle->info.hw_rsrc_max.nb_events_limit =
202 dlb2->hw_rsrc_query_results.num_credits;
203 } else {
204 handle->info.hw_rsrc_max.nb_events_limit =
205 dlb2->hw_rsrc_query_results.num_ldb_credits;
206 }
207 handle->info.hw_rsrc_max.num_queues =
208 dlb2->hw_rsrc_query_results.num_ldb_queues +
209 dlb2->hw_rsrc_query_results.num_dir_ports;
210
211 handle->info.hw_rsrc_max.num_ldb_queues =
212 dlb2->hw_rsrc_query_results.num_ldb_queues;
213
214 handle->info.hw_rsrc_max.num_ldb_ports = num_ldb_ports;

Callers 4

dlb2_eventdev_info_getFunction · 0.85
dlb2_eventdev_configureFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected