<snip>
> > /** Port configuration parameters. */ struct rte_sched_port_params { > > - const char *name; /**< String to be associated */ > > - int socket; /**< CPU socket ID */ > > - uint32_t rate; /**< Output port rate > > - * (measured in bytes per second) */ > > - uint32_t mtu; /**< Maximum Ethernet frame size > > - * (measured in bytes). > > - * Should not include the framing > > overhead. */ > > - uint32_t frame_overhead; /**< Framing overhead per packet > > - * (measured in bytes) */ > > - uint32_t n_subports_per_port; /**< Number of subports */ > > - uint32_t n_pipes_per_subport; /**< Number of pipes per subport > > */ > > + /** Name of the port to be associated */ > > + const char *name; > > + > > + /** CPU socket ID */ > > + int socket; > > + > > + /** Output port rate (measured in bytes per second) */ > > + uint32_t rate; > > + > > + /** Maximum Ethernet frame size (measured in bytes). > > + * Should not include the framing overhead. > > + */ > > + uint32_t mtu; > > + > > + /** Framing overhead per packet (measured in bytes) */ > > + uint32_t frame_overhead; > > + > > + /** Number of subports */ > > + uint32_t n_subports_per_port; > > + > > + /** Number of subport_pipes */ > > + uint32_t n_pipes_per_subport; > > + > > + /** Packet queue size for each traffic class. > > + * All the pipes within the same subport share the similar > > + * configuration for the queues. Queues which are not needed, have > > + * zero size. > > + */ > > uint16_t qsize[RTE_SCHED_QUEUES_PER_PIPE]; > > - /**< Packet queue size for each traffic class. > > - * Queues which are not needed are allowed to have zero size. */ > > + > > + /** Pipe profile table. > > + * Every pipe is configured using one of the profiles from this table. > > + */ > > struct rte_sched_pipe_params *pipe_profiles; > > - /**< Pipe profile table. > > - * Every pipe is configured using one of the profiles from this table. > > */ > > - uint32_t n_pipe_profiles; /**< Profiles in the pipe profile > > table */ > > + > > + /** Profiles in the pipe profile table */ > > + uint32_t n_pipe_profiles; > > + > > + /** Max profiles allowed in the pipe profile table */ > > uint32_t n_max_pipe_profiles; > > - /**< Max profiles allowed in the pipe profile table */ > > + > > #ifdef RTE_SCHED_RED > > - struct rte_red_params > > red_params[RTE_SCHED_TRAFFIC_CLASSES_PER_PIPE][RTE_COLORS]; /**< > RED > > parameters */ > > + /** RED parameters */ > > + struct rte_red_params > > red_params[RTE_SCHED_TRAFFIC_CLASSES_PER_PIPE][RTE_COLORS]; > > #endif > > }; > > > > @@ -328,8 +369,8 @@ rte_sched_port_get_memory_footprint(struct > > rte_sched_port_params *params); > > * Pointer to pre-allocated subport statistics structure where the > > statistics > > * counters should be stored > > * @param tc_ov > > - * Pointer to pre-allocated 4-entry array where the oversubscription > > status > > for > > - * each of the 4 subport traffic classes should be stored. > > + * Pointer to pre-allocated 13-entry array where the oversubscription > > status for > > + * each of the subport traffic classes should be stored. > > * @return > > * 0 upon success, error code otherwise > > */ > > @@ -374,7 +415,7 @@ rte_sched_queue_read_stats(struct rte_sched_port > > *port, > > * @param pipe > > * Pipe ID within subport > > * @param traffic_class > > - * Traffic class ID within pipe (0 .. 3) > > + * Traffic class ID within pipe (0 .. 12) > > * @param queue > > * Queue ID within pipe traffic class (0 .. 3) > > * @param color > > @@ -401,7 +442,7 @@ rte_sched_port_pkt_write(struct rte_sched_port > > *port, > > * @param pipe > > * Pipe ID within subport > > * @param traffic_class > > - * Traffic class ID within pipe (0 .. 3) > > + * Traffic class ID within pipe (0 .. 12) > > * @param queue > > * Queue ID within pipe traffic class (0 .. 3) > > * > > It would be great if we could replace these magic numbers of 3, 12, etc with > the corresponding macros (in the API file at least, but it would be great to > do it > in the .c file as well). > > -- Improved API doxygen comments in v5, thanks.