Lines Matching refs:args
146 margin_apply_hw_quirks(struct margin_recv *recv, struct margin_link_args *args) in margin_apply_hw_quirks() argument
154 args->recv_args[recv->recvn - 1].t.one_side_is_whole = true; in margin_apply_hw_quirks()
155 args->recv_args[recv->recvn - 1].t.valid = true; in margin_apply_hw_quirks()
307 margin_test_receiver(struct margin_dev *dev, u8 recvn, struct margin_link_args *args, in margin_test_receiver() argument
310 u8 *lanes_to_margin = args->lanes; in margin_test_receiver()
311 u8 lanes_n = args->lanes_n; in margin_test_receiver()
318 .parallel_lanes = args->parallel_lanes ? args->parallel_lanes : 1, in margin_test_receiver()
319 .error_limit = args->common->error_limit, in margin_test_receiver()
320 .dwell_time = args->common->dwell_time }; in margin_test_receiver()
348 margin_apply_hw_quirks(&recv, args); in margin_test_receiver()
372 if (args->common->run_margin) in margin_test_receiver()
374 if (args->common->verbosity > 0) in margin_test_receiver()
377 .verbosity = args->common->verbosity, in margin_test_receiver()
378 .steps_utility = &args->common->steps_utility }; in margin_test_receiver()
384 u8 steps_t = args->steps_t ? args->steps_t : params.timing_steps; in margin_test_receiver()
385 u8 steps_v = args->steps_v ? args->steps_v : params.volt_steps; in margin_test_receiver()
408 if (args->common->steps_utility >= lanes_data.steps_lane_total) in margin_test_receiver()
409 args->common->steps_utility -= lanes_data.steps_lane_total; in margin_test_receiver()
411 args->common->steps_utility = 0; in margin_test_receiver()
416 if (args->common->verbosity > 0) in margin_test_receiver()
488 struct margin_link_args *args = &link->args; in margin_process_args() local
492 if (!args->recvs_n) in margin_process_args()
495 args->recvs[i - 1] = i; in margin_process_args()
496 args->recvs[receivers_n - 1] = 6; in margin_process_args()
497 args->recvs_n = receivers_n; in margin_process_args()
501 for (int i = 0; i < args->recvs_n; i++) in margin_process_args()
503 u8 recvn = args->recvs[i]; in margin_process_args()
511 if (!args->lanes_n) in margin_process_args()
513 args->lanes_n = dev->neg_width; in margin_process_args()
514 for (int i = 0; i < args->lanes_n; i++) in margin_process_args()
515 args->lanes[i] = i; in margin_process_args()
519 for (int i = 0; i < args->lanes_n; i++) in margin_process_args()
521 if (args->lanes[i] >= dev->neg_width) in margin_process_args()
534 struct margin_link_args *args = &link->args; in margin_test_link() local
538 u8 receivers_n = status ? args->recvs_n : 1; in margin_test_link()
539 u8 *receivers = args->recvs; in margin_test_link()
557 margin_test_receiver(dut, receivers[i], args, &results[i]); in margin_test_link()