| /linux/Documentation/netlink/specs/ |
| H A D | net_shaper.yaml | 3 name: net-shaper 13 Each @shaper is identified within the given device, by a @handle, 22 operation, to create and update a single "attached" shaper, and 44 doc: Defines the shaper @id interpretation. 51 doc: The main shaper for the given network device. 55 The shaper is attached to the given device queue, 60 The shaper allows grouping of queues or other 68 doc: Different metric supported by the shaper. 72 doc: Shaper operates on a bits per second basis. 75 doc: Shaper operates on a packets per second basis. [all …]
|
| /linux/net/shaper/ |
| H A D | shaper.c | 163 const struct net_shaper *shaper, in net_shaper_fill_one() argument 174 net_shaper_copy(&cur, shaper); in net_shaper_fill_one() 329 /* Allocate on demand the per device shaper's hierarchy container. 356 /* Prepare the hierarchy container to actually insert the given shaper, doing 389 NL_SET_ERR_MSG(extack, "Can't allocate new id for NODE shaper"); in net_shaper_pre_insert() 408 NL_SET_ERR_MSG(extack, "Can't insert shaper into device store"); in net_shaper_pre_insert() 486 * NODE shaper creation (ID_UNSPEC) and reuse of existing in net_shaper_parse_handle() 487 * shaper (any other value). in net_shaper_parse_handle() 513 struct net_shaper *shaper) 519 ops->capabilities(binding, shaper in net_shaper_validate_caps() 517 net_shaper_validate_caps(struct net_shaper_binding * binding,struct nlattr ** tb,const struct genl_info * info,struct net_shaper * shaper) net_shaper_validate_caps() argument 585 net_shaper_parse_info(struct net_shaper_binding * binding,struct nlattr ** tb,const struct genl_info * info,struct net_shaper * shaper,bool * exists) net_shaper_parse_info() argument 639 net_shaper_validate_nesting(struct net_shaper_binding * binding,const struct net_shaper * shaper,struct netlink_ext_ack * extack) net_shaper_validate_nesting() argument 662 net_shaper_parse_leaf(struct net_shaper_binding * binding,const struct nlattr * attr,const struct genl_info * info,const struct net_shaper * node,struct net_shaper * shaper) net_shaper_parse_leaf() argument 700 net_shaper_parse_node(struct net_shaper_binding * binding,struct nlattr ** tb,const struct genl_info * info,struct net_shaper * shaper) net_shaper_parse_node() argument 818 struct net_shaper *shaper; net_shaper_nl_get_doit() local 864 struct net_shaper *shaper; net_shaper_nl_get_dumpit() local 898 struct net_shaper shaper = {}; net_shaper_nl_set_doit() local 939 __net_shaper_delete(struct net_shaper_binding * binding,struct net_shaper * shaper,struct netlink_ext_ack * extack) __net_shaper_delete() argument 1150 net_shaper_pre_del_node(struct net_shaper_binding * binding,const struct net_shaper * shaper,struct netlink_ext_ack * extack) net_shaper_pre_del_node() argument 1211 struct net_shaper *shaper; net_shaper_nl_delete_doit() local 1516 struct net_shaper *shaper; net_shaper_set_real_num_tx_queues() local [all...] |
| /linux/include/net/ |
| H A D | net_shaper.h | 35 * @parent: Unique identifier for the shaper parent, usually implied 36 * @handle: Unique identifier for this shaper 38 * @bw_min: Minimum guaranteed rate for this shaper 39 * @bw_max: Maximum peak rate allowed for this shaper 40 * @burst: Maximum burst for the peek rate of this shaper 41 * @priority: Scheduling priority for this shaper 42 * @weight: Scheduling weight for this shaper 73 * Each shaper is uniquely identified within the device with a 'handle' 74 * comprising the shaper scope and a scope-specific id. 80 * Nest the @leaves shapers identified under the * @node shaper. [all …]
|
| /linux/tools/testing/selftests/drivers/net/ |
| H A D | shaper.py | 32 # Each device implementing shaper support must support some 68 # Querying a specific shaper not yet configured must fail. 133 raise KsftSkipEx("netdev shaper not supported by device, skipping delete") 142 raise KsftSkipEx("netdev shaper not supported by the device") 168 shaper = nl_shaper.get({'ifindex': cfg.ifindex, 170 ksft_eq(shaper, {'ifindex': cfg.ifindex, 180 # Deleting all the leaves shaper does not affect the node one 222 shaper = nl_shaper.get({'ifindex': cfg.ifindex, 224 ksft_eq(shaper, {'ifindex': cfg.ifindex, 228 shaper = nl_shaper.get({'ifindex': cfg.ifindex, [all …]
|
| H A D | Makefile | 24 shaper.py \
|
| /linux/drivers/gpu/drm/msm/disp/dpu1/ |
| H A D | dpu_hw_top.h | 15 * struct traffic_shaper_cfg: traffic shaper configuration 16 * @en : enable/disable traffic shaper 93 * @setup_traffic_shaper : programs traffic shaper control. 95 * @cfg : traffic shaper configuration
|
| /linux/net/sched/ |
| H A D | sch_mqprio.c | 26 u16 shaper; member 48 if (priv->shaper != TC_MQPRIO_SHAPER_DCB) in mqprio_enable_offload() 56 mqprio.shaper = priv->shaper; in mqprio_enable_offload() 274 priv->shaper = nla_get_u16(tb[TCA_MQPRIO_SHAPER]); in mqprio_parse_nlattr() 278 if (priv->shaper != TC_MQPRIO_SHAPER_BW_RATE) { in mqprio_parse_nlattr() 280 "min_rate accepted only when shaper is in bw_rlimit mode"); in mqprio_parse_nlattr() 307 if (priv->shaper != TC_MQPRIO_SHAPER_BW_RATE) { in mqprio_parse_nlattr() 309 "max_rate accepted only when shaper is in bw_rlimit mode"); in mqprio_parse_nlattr() 607 nla_put_u16(skb, TCA_MQPRIO_SHAPER, priv->shaper)) in mqprio_dump() [all...] |
| H A D | sch_cbs.c | 3 * net/sched/sch_cbs.c Credit Based Shaper 8 /* Credit Based Shaper (CBS) 11 * This is a simple rate-limiting shaper aimed at TSN applications on 592 MODULE_DESCRIPTION("Credit Based shaper");
|
| /linux/drivers/gpu/drm/amd/display/amdgpu_dm/ |
| H A D | amdgpu_dm_color.c | 198 * degamma TF, shaper TF (before 3D LUT), and blend(dpp.ogam) TF and 1089 * If user shaper LUT is set, we assume a linear color space in amdgpu_dm_atomic_blend_lut() 1130 * shaper and 3D LUTs match the hw supported size in amdgpu_dm_verify_lut3d_size() 1135 * newer) and if the user shaper and 3D LUTs match the supported size. in amdgpu_dm_verify_lut3d_size() 1144 const struct drm_color_lut *shaper = NULL, *lut3d = NULL; 1148 /* shaper LUT is only available if 3D LUT color caps */ in amdgpu_dm_verify_lut_sizes() 1150 shaper = __extract_blob_lut(dm_plane_state->shaper_lut, &size); in amdgpu_dm_verify_lut_sizes() 1152 if (shaper && size != exp_size) { in amdgpu_dm_verify_lut_sizes() 1154 "Invalid Shaper LUT size. Should be %u but got %u.\n", in amdgpu_dm_verify_lut_sizes() 1645 /* 1D Curve - SHAPER T in __set_dm_plane_colorop_shaper() 1108 const struct drm_color_lut *shaper = NULL, *lut3d = NULL; amdgpu_dm_verify_lut3d_size() local [all...] |
| H A D | amdgpu_dm_colorop.c | 127 /* 1D curve - SHAPER TF */ in amdgpu_dm_initialize_default_pipeline() 144 /* 1D LUT - SHAPER LUT */ in amdgpu_dm_initialize_default_pipeline()
|
| /linux/drivers/net/ethernet/hisilicon/hns3/hns3pf/ |
| H A D | hclge_tm.h | 201 u8 ir_b; /* IR_B parameter of IR shaper */ 202 u8 ir_u; /* IR_U parameter of IR shaper */ 203 u8 ir_s; /* IR_S parameter of IR shaper */
|
| H A D | hclge_tm.c | 26 /* hclge_shaper_para_calc: calculate ir parameter for the shaper 28 * @shaper_level: the shaper level. eg: port, pg, priority, queueset 29 * @ir_para: parameters of IR shaper 899 /* Calc shaper para */ in hclge_tm_pg_shaper_cfg() 1150 /* Need config vport shaper */ in hclge_tm_pri_vnet_base_shaper_cfg() 1477 /* Cfg tm shaper */ in hclge_tm_schd_setup_hw() 1848 "failed to get qset %u shaper, ret = %d\n", qset_id, in hclge_tm_get_qset_shaper() 1923 "failed to get priority shaper(%#x), ret = %d\n", in hclge_tm_get_pri_shaper() 2077 "failed to get pg shaper(%#x), ret = %d\n", in hclge_tm_get_pg_shaper() 2105 "failed to get port shaper, ret = %d\n", ret); in hclge_tm_get_port_shaper()
|
| /linux/drivers/gpu/drm/amd/amdgpu/ |
| H A D | amdgpu_mode.h | 372 * shaper LUT that converts color content before 3D LUT. 380 * pre-blending shaper LUT as supported by the driver (read-only). 385 * transfer function for pre-blending shaper (before applying 3D LUT) 386 * with or without LUT. There is no shaper ROM, but we can use AMD 412 * conversion. It works as a post-3DLUT 1D LUT. With shaper LUT, they
|
| /linux/drivers/net/ethernet/intel/ice/virt/ |
| H A D | queues.c | 622 if (qbw->cfg[i].shaper.peak != 0 && vf->max_tx_rate != 0 && in ice_vc_cfg_q_bw() 623 qbw->cfg[i].shaper.peak > vf->max_tx_rate) { in ice_vc_cfg_q_bw() 630 if (qbw->cfg[i].shaper.committed != 0 && vf->min_tx_rate != 0 && in ice_vc_cfg_q_bw() 631 qbw->cfg[i].shaper.committed < vf->min_tx_rate) { in ice_vc_cfg_q_bw() 654 vf->qs_bw[i].peak = qbw->cfg[i].shaper.peak; in ice_vc_cfg_q_bw() 655 vf->qs_bw[i].committed = qbw->cfg[i].shaper.committed; in ice_vc_cfg_q_bw()
|
| /linux/drivers/net/ethernet/mscc/ |
| H A D | ocelot_police.h | 14 MSCC_QOS_RATE_MODE_DISABLED, /* Policer/shaper disabled */
|
| /linux/Documentation/networking/device_drivers/ethernet/intel/ |
| H A D | iavf.rst | 156 The shaper bw_rlimit parameter is optional. 164 queues 16@0 16@16 hw 1 mode channel shaper bw_rlimit min_rate 1Gbit 2Gbit 178 shaper bw_rlimit: for each tc, sets minimum and maximum bandwidth rates.
|
| H A D | igb.rst | 181 Credit Based Shaper (Qav Mode)
|
| /linux/Documentation/devicetree/bindings/net/dsa/ |
| H A D | hirschmann,hellcreek.yaml | 21 Shaper.
|
| /linux/net/ |
| H A D | Makefile | 77 obj-$(CONFIG_NET_SHAPER) += shaper/
|
| /linux/drivers/gpu/drm/amd/display/dc/resource/dcn30/ |
| H A D | dcn30_resource.c | 1592 struct dc_transfer_func **shaper) in dcn30_split_stream_for_mpc_or_odm() 1598 ASSERT(*lut == NULL && *shaper == NULL); in dcn30_split_stream_for_mpc_or_odm() 1600 *shaper = NULL; in dcn30_split_stream_for_mpc_or_odm() 1605 *shaper = pool->mpc_shaper[i]; in dcn30_split_stream_for_mpc_or_odm() 1627 struct dc_transfer_func **shaper) in dcn30_find_split_pipe() 1633 if (pool->mpc_lut[i] == *lut && pool->mpc_shaper[i] == *shaper) { in dcn30_find_split_pipe() 1637 *shaper = NULL; in dcn30_find_split_pipe() 1467 dcn30_acquire_post_bldn_3dlut(struct resource_context * res_ctx,const struct resource_pool * pool,int mpcc_id,struct dc_3dlut ** lut,struct dc_transfer_func ** shaper) dcn30_acquire_post_bldn_3dlut() argument 1502 dcn30_release_post_bldn_3dlut(struct resource_context * res_ctx,const struct resource_pool * pool,struct dc_3dlut ** lut,struct dc_transfer_func ** shaper) dcn30_release_post_bldn_3dlut() argument
|
| /linux/drivers/net/ethernet/ti/ |
| H A D | Kconfig | 143 Time Aware Shaper (TAS) / Enhanced Scheduled Traffic (EST),
|
| /linux/include/uapi/linux/ |
| H A D | dcbnl.h | 38 * @cbs: credit based shaper ets algorithm supported 53 * 1 credit-based shaper
|
| /linux/drivers/net/ethernet/chelsio/cxgb4/ |
| H A D | cxgb4_tc_mqprio.c | 28 } else if (mqprio->shaper != TC_MQPRIO_SHAPER_BW_RATE) { in cxgb4_mqprio_validate() 29 netdev_err(dev, "Only bandwidth rate shaper supported\n"); in cxgb4_mqprio_validate()
|
| /linux/drivers/net/ethernet/intel/iavf/ |
| H A D | iavf_main.c | 3057 * After a reset, the shaper parameters of queues need to be replayed again. 5046 const struct net_shaper *shaper, in iavf_verify_shaper() 5052 if (shaper->handle.scope == NET_SHAPER_SCOPE_QUEUE) { in iavf_verify_shaper() 5053 vf_max = adapter->qos_caps->cap[0].shaper.peak; in iavf_verify_shaper() 5054 if (vf_max && shaper->bw_max > vf_max) { in iavf_verify_shaper() 5056 shaper->bw_max, shaper->handle.id, in iavf_verify_shaper() 5066 const struct net_shaper *shaper, in iavf_shaper_set() 5070 const struct net_shaper_handle *handle = &shaper->handle; in iavf_shaper_set() 5079 ret = iavf_verify_shaper(binding, shaper, extac in iavf_shaper_set() 5042 iavf_verify_shaper(struct net_shaper_binding * binding,const struct net_shaper * shaper,struct netlink_ext_ack * extack) iavf_verify_shaper() argument 5062 iavf_shaper_set(struct net_shaper_binding * binding,const struct net_shaper * shaper,struct netlink_ext_ack * extack) iavf_shaper_set() argument [all...] |
| /linux/drivers/gpu/drm/amd/display/dc/resource/dcn32/ |
| H A D | dcn32_resource.c | 1768 struct dc_transfer_func **shaper) in dcn32_add_phantom_pipes() 1772 ASSERT(*lut == NULL && *shaper == NULL); in dcn32_add_phantom_pipes() 1774 *shaper = NULL; in dcn32_add_phantom_pipes() 1778 *shaper = pool->mpc_shaper[mpcc_id]; in dcn32_add_phantom_pipes() 1789 struct dc_transfer_func **shaper) in dml1_validate() 1795 if (pool->mpc_lut[i] == *lut && pool->mpc_shaper[i] == *shaper) { in dml1_validate() 1799 *shaper = NULL; in dml1_validate() 1640 dcn32_acquire_post_bldn_3dlut(struct resource_context * res_ctx,const struct resource_pool * pool,int mpcc_id,struct dc_3dlut ** lut,struct dc_transfer_func ** shaper) dcn32_acquire_post_bldn_3dlut() argument 1661 dcn32_release_post_bldn_3dlut(struct resource_context * res_ctx,const struct resource_pool * pool,struct dc_3dlut ** lut,struct dc_transfer_func ** shaper) dcn32_release_post_bldn_3dlut() argument
|