Lines Matching full:offload
86 struct tc_taprio_qopt_offload offload; member
285 /* txtime-assist and full offload are mutually exclusive */ in taprio_flags_valid()
1119 __offload = kzalloc(struct_size(__offload, offload.entries, num_entries), in taprio_offload_alloc()
1126 return &__offload->offload; in taprio_offload_alloc()
1130 *offload) in taprio_offload_get()
1134 __offload = container_of(offload, struct __tc_taprio_qopt_offload, in taprio_offload_get()
1135 offload); in taprio_offload_get()
1139 return offload; in taprio_offload_get()
1143 void taprio_offload_free(struct tc_taprio_qopt_offload *offload) in taprio_offload_free() argument
1147 __offload = container_of(offload, struct __tc_taprio_qopt_offload, in taprio_offload_free()
1148 offload); in taprio_offload_free()
1160 * When using full offload, the admin configuration is promoted to oper at the
1166 * offload state (PENDING, ACTIVE, INACTIVE) so it can be visible in dump().
1206 struct tc_taprio_qopt_offload *offload) in taprio_sched_to_offload() argument
1211 offload->base_time = sched->base_time; in taprio_sched_to_offload()
1212 offload->cycle_time = sched->cycle_time; in taprio_sched_to_offload()
1213 offload->cycle_time_extension = sched->cycle_time_extension; in taprio_sched_to_offload()
1216 struct tc_taprio_sched_entry *e = &offload->entries[i]; in taprio_sched_to_offload()
1225 offload->num_entries = i; in taprio_sched_to_offload()
1234 struct tc_taprio_qopt_offload *offload; in taprio_enable_offload() local
1239 "Device does not support taprio offload"); in taprio_enable_offload()
1243 offload = taprio_offload_alloc(sched->num_entries); in taprio_enable_offload()
1244 if (!offload) { in taprio_enable_offload()
1246 "Not enough memory for enabling offload mode"); in taprio_enable_offload()
1249 offload->enable = 1; in taprio_enable_offload()
1250 taprio_sched_to_offload(dev, sched, offload); in taprio_enable_offload()
1252 err = ops->ndo_setup_tc(dev, TC_SETUP_QDISC_TAPRIO, offload); in taprio_enable_offload()
1255 "Device failed to setup taprio offload"); in taprio_enable_offload()
1260 taprio_offload_free(offload); in taprio_enable_offload()
1270 struct tc_taprio_qopt_offload *offload; in taprio_disable_offload() local
1279 offload = taprio_offload_alloc(0); in taprio_disable_offload()
1280 if (!offload) { in taprio_disable_offload()
1282 "Not enough memory to disable offload mode"); in taprio_disable_offload()
1285 offload->enable = 0; in taprio_disable_offload()
1287 err = ops->ndo_setup_tc(dev, TC_SETUP_QDISC_TAPRIO, offload); in taprio_disable_offload()
1290 "Device failed to disable offload"); in taprio_disable_offload()
1295 taprio_offload_free(offload); in taprio_disable_offload()
1300 /* If full offload is enabled, the only possible clockid is the net device's
1323 "The 'clockid' cannot be specified for full offload"); in taprio_parse_clockid()