| /linux/net/core/ |
| H A D | devmem.c | 54 struct net_devmem_dmabuf_binding *binding = in net_devmem_dmabuf_binding_release() local 57 INIT_WORK(&binding->unbind_w, __net_devmem_dmabuf_binding_free); in net_devmem_dmabuf_binding_release() 58 schedule_work(&binding->unbind_w); in net_devmem_dmabuf_binding_release() 63 struct net_devmem_dmabuf_binding *binding = container_of(wq, typeof(*binding), unbind_w); in __net_devmem_dmabuf_binding_free() local 67 gen_pool_for_each_chunk(binding->chunk_pool, in __net_devmem_dmabuf_binding_free() 70 size = gen_pool_size(binding->chunk_pool); in __net_devmem_dmabuf_binding_free() 71 avail = gen_pool_avail(binding->chunk_pool); in __net_devmem_dmabuf_binding_free() 75 gen_pool_destroy(binding->chunk_pool); in __net_devmem_dmabuf_binding_free() 77 dma_buf_unmap_attachment_unlocked(binding->attachment, binding->sgt, in __net_devmem_dmabuf_binding_free() 78 binding->direction); in __net_devmem_dmabuf_binding_free() [all …]
|
| H A D | devmem.h | 79 struct net_devmem_dmabuf_binding *binding; member 93 void net_devmem_unbind_dmabuf(struct net_devmem_dmabuf_binding *binding); 95 struct net_devmem_dmabuf_binding *binding, 109 return net_devmem_iov_to_chunk_owner(niov)->binding; in net_devmem_iov_binding() 126 net_devmem_dmabuf_binding_get(struct net_devmem_dmabuf_binding *binding) in net_devmem_dmabuf_binding_get() argument 128 return percpu_ref_tryget(&binding->ref); in net_devmem_dmabuf_binding_get() 132 net_devmem_dmabuf_binding_put(struct net_devmem_dmabuf_binding *binding) in net_devmem_dmabuf_binding_put() argument 134 percpu_ref_put(&binding->ref); in net_devmem_dmabuf_binding_put() 141 net_devmem_alloc_dmabuf(struct net_devmem_dmabuf_binding *binding); 148 net_devmem_get_niov_at(struct net_devmem_dmabuf_binding *binding, size_t addr, [all …]
|
| H A D | netdev-genl.c | 937 struct net_devmem_dmabuf_binding *binding; in netdev_nl_bind_rx_doit() local 1004 binding = net_devmem_bind_dmabuf(netdev, dma_dev, DMA_FROM_DEVICE, in netdev_nl_bind_rx_doit() 1006 if (IS_ERR(binding)) { in netdev_nl_bind_rx_doit() 1007 err = PTR_ERR(binding); in netdev_nl_bind_rx_doit() 1012 err = net_devmem_bind_dmabuf_to_queue(netdev, rxq_idx, binding, in netdev_nl_bind_rx_doit() 1018 nla_put_u32(rsp, NETDEV_A_DMABUF_ID, binding->id); in netdev_nl_bind_rx_doit() 1034 net_devmem_unbind_dmabuf(binding); in netdev_nl_bind_rx_doit() 1048 struct net_devmem_dmabuf_binding *binding; in netdev_nl_bind_tx_doit() local 1099 binding = net_devmem_bind_dmabuf(netdev, dma_dev, DMA_TO_DEVICE, in netdev_nl_bind_tx_doit() 1101 if (IS_ERR(binding)) { in netdev_nl_bind_tx_doit() [all …]
|
| /linux/drivers/net/ethernet/sfc/ |
| H A D | tc_bindings.c | 26 struct efx_tc_block_binding *binding; in efx_tc_find_binding() local 29 list_for_each_entry(binding, &efx->tc->block_list, list) in efx_tc_find_binding() 30 if (binding->otherdev == otherdev) in efx_tc_find_binding() 31 return binding; in efx_tc_find_binding() 38 struct efx_tc_block_binding *binding = cb_priv; in efx_tc_block_cb() local 43 return efx_tc_flower(binding->efx, binding->otherdev, in efx_tc_block_cb() 44 tcf, binding->efv); in efx_tc_block_cb() 52 struct efx_tc_block_binding *binding = cb_priv; in efx_tc_block_unbind() local 54 list_del(&binding->list); in efx_tc_block_unbind() 55 kfree(binding); in efx_tc_block_unbind() [all …]
|
| /linux/net/shaper/ |
| H A D | shaper.c | 29 struct net_shaper_binding binding; member 36 return &((struct net_shaper_nl_ctx *)ctx)->binding; in net_shaper_binding_from_ctx() 40 net_shaper_hierarchy(struct net_shaper_binding *binding) in net_shaper_hierarchy() argument 43 if (binding->type == NET_SHAPER_BINDING_TYPE_NETDEV) in net_shaper_hierarchy() 44 return READ_ONCE(binding->netdev->net_shaper_hierarchy); in net_shaper_hierarchy() 51 net_shaper_hierarchy_rcu(struct net_shaper_binding *binding) in net_shaper_hierarchy_rcu() argument 57 if (binding->type == NET_SHAPER_BINDING_TYPE_NETDEV && in net_shaper_hierarchy_rcu() 58 READ_ONCE(binding->netdev->reg_state) <= NETREG_REGISTERED) in net_shaper_hierarchy_rcu() 59 return READ_ONCE(binding->netdev->net_shaper_hierarchy); in net_shaper_hierarchy_rcu() 66 net_shaper_ops(struct net_shaper_binding *binding) in net_shaper_ops() argument [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlxsw/ |
| H A D | spectrum_flow.c | 37 struct mlxsw_sp_flow_block_binding *binding; in mlxsw_sp_flow_block_lookup() local 39 list_for_each_entry(binding, &block->binding_list, list) in mlxsw_sp_flow_block_lookup() 40 if (binding->mlxsw_sp_port == mlxsw_sp_port && in mlxsw_sp_flow_block_lookup() 41 binding->ingress == ingress) in mlxsw_sp_flow_block_lookup() 42 return binding; in mlxsw_sp_flow_block_lookup() 58 struct mlxsw_sp_flow_block_binding *binding; in mlxsw_sp_flow_block_bind() local 78 binding = kzalloc_obj(*binding); in mlxsw_sp_flow_block_bind() 79 if (!binding) { in mlxsw_sp_flow_block_bind() 83 binding->mlxsw_sp_port = mlxsw_sp_port; in mlxsw_sp_flow_block_bind() 84 binding->ingress = ingress; in mlxsw_sp_flow_block_bind() [all …]
|
| H A D | spectrum_acl.c | 108 struct mlxsw_sp_flow_block_binding *binding) in mlxsw_sp_acl_ruleset_bind() argument 114 binding->mlxsw_sp_port, binding->ingress); in mlxsw_sp_acl_ruleset_bind() 119 struct mlxsw_sp_flow_block_binding *binding) in mlxsw_sp_acl_ruleset_unbind() argument 125 binding->mlxsw_sp_port, binding->ingress); in mlxsw_sp_acl_ruleset_unbind() 133 struct mlxsw_sp_flow_block_binding *binding; in mlxsw_sp_acl_ruleset_block_bind() local 137 list_for_each_entry(binding, &block->binding_list, list) { in mlxsw_sp_acl_ruleset_block_bind() 138 err = mlxsw_sp_acl_ruleset_bind(mlxsw_sp, block, binding); in mlxsw_sp_acl_ruleset_block_bind() 145 list_for_each_entry_continue_reverse(binding, &block->binding_list, in mlxsw_sp_acl_ruleset_block_bind() 147 mlxsw_sp_acl_ruleset_unbind(mlxsw_sp, block, binding); in mlxsw_sp_acl_ruleset_block_bind() 158 struct mlxsw_sp_flow_block_binding *binding; in mlxsw_sp_acl_ruleset_block_unbind() local [all …]
|
| /linux/drivers/net/ethernet/marvell/prestera/ |
| H A D | prestera_flow.c | 118 struct prestera_flow_block_binding *binding; in prestera_flow_block_lookup() local 120 list_for_each_entry(binding, &block->binding_list, list) in prestera_flow_block_lookup() 121 if (binding->port == port) in prestera_flow_block_lookup() 122 return binding; in prestera_flow_block_lookup() 130 struct prestera_flow_block_binding *binding; in prestera_flow_block_bind() local 133 binding = kzalloc_obj(*binding); in prestera_flow_block_bind() 134 if (!binding) in prestera_flow_block_bind() 137 binding->span_id = PRESTERA_SPAN_INVALID_ID; in prestera_flow_block_bind() 138 binding->port = port; in prestera_flow_block_bind() 146 list_add(&binding->list, &block->binding_list); in prestera_flow_block_bind() [all …]
|
| H A D | prestera_span.c | 123 int prestera_span_rule_add(struct prestera_flow_block_binding *binding, in prestera_span_rule_add() argument 127 struct prestera_switch *sw = binding->port->sw; in prestera_span_rule_add() 131 if (binding->span_id != PRESTERA_SPAN_INVALID_ID) in prestera_span_rule_add() 139 err = prestera_hw_span_bind(binding->port, span_id, ingress); in prestera_span_rule_add() 145 binding->span_id = span_id; in prestera_span_rule_add() 149 int prestera_span_rule_del(struct prestera_flow_block_binding *binding, in prestera_span_rule_del() argument 154 if (binding->span_id == PRESTERA_SPAN_INVALID_ID) in prestera_span_rule_del() 157 err = prestera_hw_span_unbind(binding->port, ingress); in prestera_span_rule_del() 161 err = prestera_span_put(binding->port->sw, binding->span_id); in prestera_span_rule_del() 165 binding->span_id = PRESTERA_SPAN_INVALID_ID; in prestera_span_rule_del()
|
| H A D | prestera_matchall.c | 65 struct prestera_flow_block_binding *binding; in prestera_mall_replace() local 97 list_for_each_entry(binding, &block->binding_list, list) { in prestera_mall_replace() 98 err = prestera_span_rule_add(binding, port, block->ingress); in prestera_mall_replace() 111 list_for_each_entry_continue_reverse(binding, in prestera_mall_replace() 113 prestera_span_rule_del(binding, block->ingress); in prestera_mall_replace() 119 struct prestera_flow_block_binding *binding; in prestera_mall_destroy() local 121 list_for_each_entry(binding, &block->binding_list, list) in prestera_mall_destroy() 122 prestera_span_rule_del(binding, block->ingress); in prestera_mall_destroy()
|
| /linux/Documentation/devicetree/bindings/clock/ti/ |
| H A D | clockdomain.txt | 3 This binding uses the common clock binding[1] in consumer role. 7 enabled/disabled. This binding doesn't define a new clock 8 binding type, it is used to group existing clock nodes under 15 - #clock-cells : from common clock binding; shall be set to 0. 19 - clock-output-names : from common clock binding.
|
| H A D | dra7-atl.txt | 12 Clock tree binding: 13 This binding uses the common clock binding[1]. 16 Since the clock instances are part of a single IP this binding is used as a node 24 - #clock-cells : from common clock binding; shall be set to 0. 28 This binding is used to configure the IP driver which is going to handle the 75 /* binding for the IP */
|
| /linux/Documentation/devicetree/bindings/ |
| H A D | submitting-patches.rst | 4 Submitting Devicetree (DT) binding patches 14 be a separate patch. The preferred subject prefix for binding patches is:: 16 "dt-bindings: <binding dir>: ..." 21 "<binding dir>: dt-bindings: ..." 26 schema format. Repeating "binding" again should also be avoided, so for 35 2) DT binding files are written in DT schema format using json-schema 36 vocabulary and YAML file format. The DT binding files must pass validation 44 3) DT binding files should be dual licensed. The preferred license tag is 55 the code implementing the binding. 58 previously documented in the corresponding DT binding file [all …]
|
| H A D | ABI.rst | 10 "That still leaves the question of, what does a stable binding look 11 like? Certainly a stable binding means that a newer kernel will not 12 break on an older device tree, but that doesn't mean the binding is 15 then default to the previous behaviour if it is missing. If a binding 21 II. General binding rules 24 binding because it isn't perfect. 30 the old binding. ie. add additional properties, but don't change the
|
| H A D | writing-schema.rst | 17 top-level properties. Generally, there is one binding defined per file. The 22 URI typically containing the binding's filename and path. For DT schema, it must 34 A one-line description of the hardware being described in the binding schema. 38 for maintainers of this binding. 83 include other schemas the binding conforms to. This may be schemas for a 88 binding. The exact schema syntax depends on whether properties are known, 89 common properties (e.g. 'interrupts') or are binding/vendor-specific 113 binding allows subset of properties from other referenced schemas. 116 Used when this binding references other schema whose all properties 130 Optional. A list of one or more DTS hunks implementing this binding only. [all …]
|
| /linux/Documentation/devicetree/bindings/clock/st/ |
| H A D | st,clkgen-pll.txt | 3 This binding uses the common clock binding[1]. 4 Base address is located to the parent node. See clock binding[2] 20 - #clock-cells : From common clock binding; shall be set to 1. 22 - clocks : From common clock binding 24 - clock-output-names : From common clock binding.
|
| H A D | st,clkgen-mux.txt | 3 This binding supports only simple indexed multiplexers, it does not 6 This binding uses the common clock binding[1]. 15 - #clock-cells : from common clock binding; shall be set to 0. 19 - clocks : from common clock binding
|
| H A D | st,quadfs.txt | 8 This binding uses the common clock binding[1]. 21 - #clock-cells : from common clock binding; shall be set to 1. 25 - clocks : from common clock binding 27 - clock-output-names : From common clock binding. The block has 4
|
| /linux/sound/soc/intel/avs/ |
| H A D | path.c | 908 static int avs_path_binding_arm(struct avs_dev *adev, struct avs_path_binding *binding) in avs_path_binding_arm() argument 915 t = binding->template; in avs_path_binding_arm() 916 this_mod = avs_path_find_module(binding->owner, in avs_path_binding_arm() 946 binding->sink = this_mod; in avs_path_binding_arm() 947 binding->sink_pin = t->mod_pin; in avs_path_binding_arm() 948 binding->source = target_mod; in avs_path_binding_arm() 949 binding->source_pin = t->target_mod_pin; in avs_path_binding_arm() 951 binding->sink = target_mod; in avs_path_binding_arm() 952 binding->sink_pin = t->target_mod_pin; in avs_path_binding_arm() 953 binding->source = this_mod; in avs_path_binding_arm() [all …]
|
| /linux/drivers/gpu/drm/vmwgfx/ |
| H A D | vmwgfx_execbuf.c | 773 struct vmw_ctx_bindinfo_view binding; in vmw_view_bindings_add() local 784 binding.bi.ctx = ctx_node->ctx; in vmw_view_bindings_add() 785 binding.bi.res = view; in vmw_view_bindings_add() 786 binding.bi.bt = binding_type; in vmw_view_bindings_add() 787 binding.shader_slot = shader_slot; in vmw_view_bindings_add() 788 binding.slot = first_slot + i; in vmw_view_bindings_add() 789 vmw_binding_add(ctx_node->staged, &binding.bi, in vmw_view_bindings_add() 790 shader_slot, binding.slot); in vmw_view_bindings_add() 876 struct vmw_ctx_bindinfo_view binding; in vmw_cmd_set_render_target_check() local 883 binding.bi.ctx = ctx; in vmw_cmd_set_render_target_check() [all …]
|
| H A D | vmwgfx_binding.c | 574 struct vmw_ctx_bindinfo_shader *binding = in vmw_binding_scrub_shader() local 575 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_shader() 589 cmd->body.type = binding->shader_slot + SVGA3D_SHADERTYPE_MIN; in vmw_binding_scrub_shader() 606 struct vmw_ctx_bindinfo_view *binding = in vmw_binding_scrub_render_target() local 607 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_render_target() 621 cmd->body.type = binding->slot; in vmw_binding_scrub_render_target() 642 struct vmw_ctx_bindinfo_tex *binding = in vmw_binding_scrub_texture() local 643 container_of(bi, typeof(*binding), bi); in vmw_binding_scrub_texture() 660 cmd->body.s1.stage = binding->texture_stage; in vmw_binding_scrub_texture() 676 struct vmw_ctx_bindinfo_shader *binding = in vmw_binding_scrub_dx_shader() local [all …]
|
| /linux/Documentation/devicetree/bindings/clock/ |
| H A D | keystone-pll.txt | 7 This binding uses the common clock binding[1]. 12 - #clock-cells : from common clock binding; shall be set to 0. 41 - #clock-cells : from common clock binding; shall be set to 0. 49 - clock-output-names : From common clock binding. 63 - #clock-cells : from common clock binding; shall be set to 0. 71 - clock-output-names : From common clock binding.
|
| H A D | keystone-gate.txt | 3 This binding uses the common clock binding[1]. 9 - #clock-cells : from common clock binding; shall be set to 0. 16 - clock-output-names : From common clock binding to override the
|
| /linux/include/net/ |
| H A D | net_shaper.h | 86 int (*group)(struct net_shaper_binding *binding, int leaves_count, 96 int (*set)(struct net_shaper_binding *binding, 106 int (*delete)(struct net_shaper_binding *binding, 116 void (*capabilities)(struct net_shaper_binding *binding,
|
| /linux/Documentation/devicetree/bindings/arm/ux500/ |
| H A D | boards.txt | 23 see binding for arm/arm,scu.yaml 26 see binding for interrupt-controller/arm,gic.txt 29 see binding for timer/arm,twd-timer.yaml 32 see binding for clocks/ux500.txt
|