| /linux/drivers/net/ethernet/huawei/hinic/ |
| H A D | hinic_hw_api_cmd.c | 49 #define MASKED_IDX(chain, idx) ((idx) & ((chain)->num_cells - 1)) argument 89 static void set_prod_idx(struct hinic_api_cmd_chain *chain) in set_prod_idx() argument 91 enum hinic_api_cmd_chain_type chain_type = chain->chain_type; in set_prod_idx() 92 struct hinic_hwif *hwif = chain->hwif; in set_prod_idx() 100 prod_idx |= HINIC_API_CMD_PI_SET(chain->prod_idx, IDX); in set_prod_idx() 105 static u32 get_hw_cons_idx(struct hinic_api_cmd_chain *chain) in get_hw_cons_idx() argument 109 addr = HINIC_CSR_API_CMD_STATUS_ADDR(chain->chain_type); in get_hw_cons_idx() 110 val = hinic_hwif_read_reg(chain->hwif, addr); in get_hw_cons_idx() 115 static void dump_api_chain_reg(struct hinic_api_cmd_chain *chain) in dump_api_chain_reg() argument 119 addr = HINIC_CSR_API_CMD_STATUS_ADDR(chain->chain_type); in dump_api_chain_reg() [all …]
|
| /linux/drivers/net/ethernet/qlogic/qed/ |
| H A D | qed_chain.c | 10 static void qed_chain_init(struct qed_chain *chain, in qed_chain_init() argument 14 memset(chain, 0, sizeof(*chain)); in qed_chain_init() 16 chain->elem_size = params->elem_size; in qed_chain_init() 17 chain->intended_use = params->intended_use; in qed_chain_init() 18 chain->mode = params->mode; in qed_chain_init() 19 chain->cnt_type = params->cnt_type; in qed_chain_init() 21 chain->elem_per_page = ELEMS_PER_PAGE(params->elem_size, in qed_chain_init() 23 chain->usable_per_page = USABLE_ELEMS_PER_PAGE(params->elem_size, in qed_chain_init() 26 chain->elem_unusable = UNUSABLE_ELEMS_PER_PAGE(params->elem_size, in qed_chain_init() 29 chain->elem_per_page_mask = chain->elem_per_page - 1; in qed_chain_init() [all …]
|
| /linux/drivers/net/wireless/ath/ath9k/ |
| H A D | ar9003_rtt.c | 72 static void ar9003_hw_rtt_load_hist_entry(struct ath_hw *ah, u8 chain, in ar9003_hw_rtt_load_hist_entry() argument 78 REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_1_B(chain), val); in ar9003_hw_rtt_load_hist_entry() 83 REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), val); in ar9003_hw_rtt_load_hist_entry() 87 REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), val); in ar9003_hw_rtt_load_hist_entry() 90 if (!ath9k_hw_wait(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), in ar9003_hw_rtt_load_hist_entry() 96 REG_WRITE(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), val); in ar9003_hw_rtt_load_hist_entry() 99 ath9k_hw_wait(ah, AR_PHY_RTT_TABLE_SW_INTF_B(chain), in ar9003_hw_rtt_load_hist_entry() 106 int chain, i; in ar9003_hw_rtt_load_hist() local 108 for (chain = 0; chain < AR9300_MAX_CHAINS; chain++) { in ar9003_hw_rtt_load_hist() 109 if (!(ah->caps.rx_chainmask & (1 << chain))) in ar9003_hw_rtt_load_hist() [all …]
|
| /linux/drivers/dma-buf/ |
| H A D | dma-fence-chain.c | 21 static struct dma_fence *dma_fence_chain_get_prev(struct dma_fence_chain *chain) in dma_fence_chain_get_prev() argument 26 prev = dma_fence_get_rcu_safe(&chain->prev); in dma_fence_chain_get_prev() 41 struct dma_fence_chain *chain, *prev_chain; in dma_fence_chain_walk() local 44 chain = to_dma_fence_chain(fence); in dma_fence_chain_walk() 45 if (!chain) { in dma_fence_chain_walk() 50 while ((prev = dma_fence_chain_get_prev(chain))) { in dma_fence_chain_walk() 65 tmp = unrcu_pointer(cmpxchg(&chain->prev, RCU_INITIALIZER(prev), in dma_fence_chain_walk() 92 struct dma_fence_chain *chain; in dma_fence_chain_find_seqno() local 97 chain = to_dma_fence_chain(*pfence); in dma_fence_chain_find_seqno() 98 if (!chain || chain->base.seqno < seqno) in dma_fence_chain_find_seqno() [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/lib/ |
| H A D | fs_chains.c | 43 u32 chain; member 55 u32 chain; member 68 struct fs_chain *chain; member 77 .key_offset = offsetof(struct fs_chain, chain), 78 .key_len = sizeof_field(struct fs_chain, chain), 153 u32 chain, u32 prio, u32 level) in mlx5_chains_create_table() argument 164 sz = (chain == mlx5_chains_get_nf_ft_chain(chains)) ? in mlx5_chains_create_table() 180 (chain == 0 && prio == 1 && level == 0)) { in mlx5_chains_create_table() 184 mlx5_get_fdb_sub_ns(chains->dev, chain) : in mlx5_chains_create_table() 210 (int)PTR_ERR(ft), chain, prio, level, sz); in mlx5_chains_create_table() [all …]
|
| /linux/drivers/s390/cio/ |
| H A D | crw.c | 66 unsigned int chain; in crw_collect_info() local 73 chain = 0; in crw_collect_info() 77 if (unlikely(chain > 1)) { in crw_collect_info() 89 "chain\n", __func__, chain); in crw_collect_info() 92 chain = tmp_crw.chn ? chain + 1 : 0; in crw_collect_info() 95 ccode = stcrw(&crw[chain]); in crw_collect_info() 100 crw[chain].slct, crw[chain].oflw, crw[chain].chn, in crw_collect_info() 101 crw[chain].rsc, crw[chain].anc, crw[chain].erc, in crw_collect_info() 102 crw[chain].rsid); in crw_collect_info() 104 if (crw[chain].oflw) { in crw_collect_info() [all …]
|
| H A D | vfio_ccw_cp.c | 320 struct ccwchain *chain; in ccwchain_alloc() local 322 chain = kzalloc(sizeof(*chain), GFP_KERNEL); in ccwchain_alloc() 323 if (!chain) in ccwchain_alloc() 326 chain->ch_ccw = kcalloc(len, sizeof(*chain->ch_ccw), GFP_DMA | GFP_KERNEL); in ccwchain_alloc() 327 if (!chain->ch_ccw) in ccwchain_alloc() 330 chain->ch_pa = kcalloc(len, sizeof(*chain->ch_pa), GFP_KERNEL); in ccwchain_alloc() 331 if (!chain->ch_pa) in ccwchain_alloc() 334 list_add_tail(&chain->next, &cp->ccwchain_list); in ccwchain_alloc() 336 return chain; in ccwchain_alloc() 339 kfree(chain->ch_ccw); in ccwchain_alloc() [all …]
|
| /linux/net/netfilter/ |
| H A D | nft_immediate.c | 74 struct nft_chain *chain = priv->data.verdict.chain; in nft_immediate_init() local 79 err = nf_tables_bind_chain(ctx, chain); in nft_immediate_init() 101 struct nft_chain *chain; in nft_immediate_activate() local 108 chain = data->verdict.chain; in nft_immediate_activate() 109 if (!nft_chain_binding(chain)) in nft_immediate_activate() 113 chain_ctx.chain = chain; in nft_immediate_activate() 115 list_for_each_entry(rule, &chain->rules, list) in nft_immediate_activate() 118 nft_clear(ctx->net, chain); in nft_immediate_activate() 129 struct nft_chain *chain, in nft_immediate_chain_deactivate() argument 136 chain_ctx.chain = chain; in nft_immediate_chain_deactivate() [all …]
|
| H A D | nf_tables_offload.c | 268 static int nft_flow_offload_cmd(const struct nft_chain *chain, in nft_flow_offload_cmd() argument 277 if (!nft_is_base_chain(chain)) in nft_flow_offload_cmd() 280 basechain = nft_base_chain(chain); in nft_flow_offload_cmd() 288 static int nft_flow_offload_rule(const struct nft_chain *chain, in nft_flow_offload_rule() argument 295 return nft_flow_offload_cmd(chain, rule, flow, command, &cls_flow); in nft_flow_offload_rule() 298 int nft_flow_rule_stats(const struct nft_chain *chain, in nft_flow_rule_stats() argument 305 err = nft_flow_offload_cmd(chain, rule, NULL, FLOW_CLS_STATS, in nft_flow_rule_stats() 331 struct nft_chain *chain; in nft_flow_offload_unbind() local 334 chain = &basechain->chain; in nft_flow_offload_unbind() 335 list_for_each_entry(rule, &chain->rules, list) { in nft_flow_offload_unbind() [all …]
|
| /linux/net/batman-adv/ |
| H A D | fragmentation.c | 62 struct batadv_frag_table_entry *chain; in batadv_frag_purge_orig() local 66 chain = &orig_node->fragments[i]; in batadv_frag_purge_orig() 67 spin_lock_bh(&chain->lock); in batadv_frag_purge_orig() 69 if (!check_cb || check_cb(chain)) { in batadv_frag_purge_orig() 70 batadv_frag_clear_chain(&chain->fragment_list, true); in batadv_frag_purge_orig() 71 chain->size = 0; in batadv_frag_purge_orig() 74 spin_unlock_bh(&chain->lock); in batadv_frag_purge_orig() 106 static bool batadv_frag_init_chain(struct batadv_frag_table_entry *chain, in batadv_frag_init_chain() argument 109 lockdep_assert_held(&chain->lock); in batadv_frag_init_chain() 111 if (chain->seqno == seqno) in batadv_frag_init_chain() [all …]
|
| /linux/net/sched/ |
| H A D | cls_api.c | 54 const struct tcf_chain *chain; member 91 n->chain_index = tp->chain->index; in tcf_exts_miss_cookie_base_alloc() 92 n->chain = tp->chain; in tcf_exts_miss_cookie_base_alloc() 174 return jhash_3words(tp->chain->index, tp->prio, in destroy_obj_hashfn() 178 static void tcf_proto_signal_destroying(struct tcf_chain *chain, in tcf_proto_signal_destroying() argument 181 struct tcf_block *block = chain->block; in tcf_proto_signal_destroying() 192 return tp1->chain->index == tp2->chain->index && in tcf_proto_cmp() 197 static bool tcf_proto_exists_destroying(struct tcf_chain *chain, in tcf_proto_exists_destroying() argument 205 hash_for_each_possible_rcu(chain->block->proto_destroy_ht, iter, in tcf_proto_exists_destroying() 218 tcf_proto_signal_destroyed(struct tcf_chain *chain, struct tcf_proto *tp) in tcf_proto_signal_destroyed() argument [all …]
|
| /linux/drivers/crypto/marvell/cesa/ |
| H A D | tdma.c | 42 if (engine->chain_sw.first == dreq->chain.first) { in mv_cesa_dma_step() 46 engine->chain_hw.first = dreq->chain.first; in mv_cesa_dma_step() 47 engine->chain_hw.last = dreq->chain.last; in mv_cesa_dma_step() 60 writel_relaxed(dreq->chain.first->cur_dma, in mv_cesa_dma_step() 71 for (tdma = dreq->chain.first; tdma;) { in mv_cesa_dma_cleanup() 84 dreq->chain.first = NULL; in mv_cesa_dma_cleanup() 85 dreq->chain.last = NULL; in mv_cesa_dma_cleanup() 93 for (tdma = dreq->chain.first; tdma; tdma = tdma->next) { in mv_cesa_dma_prepare() 114 if (!last || dreq->chain.first->flags & CESA_TDMA_SET_STATE) in mv_cesa_tdma_chain() 115 engine->chain_sw.first = dreq->chain.first; in mv_cesa_tdma_chain() [all …]
|
| /linux/drivers/media/usb/uvc/ |
| H A D | uvc_ctrl.c | 595 struct uvc_video_chain *chain, struct uvc_control *ctrl) in uvc_ctrl_filter_plf_mapping() argument 608 ret = uvc_query_ctrl(chain->dev, UVC_GET_CUR, ctrl->entity->id, in uvc_ctrl_filter_plf_mapping() 609 chain->dev->intfnum, ctrl->info.selector, in uvc_ctrl_filter_plf_mapping() 618 ret = uvc_query_ctrl(chain->dev, UVC_SET_CUR, ctrl->entity->id, in uvc_ctrl_filter_plf_mapping() 619 chain->dev->intfnum, ctrl->info.selector, in uvc_ctrl_filter_plf_mapping() 625 if (chain->dev->uvc_version < 0x150) in uvc_ctrl_filter_plf_mapping() 630 ret = uvc_query_ctrl(chain->dev, UVC_SET_CUR, ctrl->entity->id, in uvc_ctrl_filter_plf_mapping() 631 chain->dev->intfnum, ctrl->info.selector, in uvc_ctrl_filter_plf_mapping() 639 uvc_query_ctrl(chain->dev, UVC_SET_CUR, ctrl->entity->id, in uvc_ctrl_filter_plf_mapping() 640 chain->dev->intfnum, ctrl->info.selector, in uvc_ctrl_filter_plf_mapping() [all …]
|
| H A D | uvc_entity.c | 17 static int uvc_mc_create_links(struct uvc_video_chain *chain, in uvc_mc_create_links() argument 39 remote = uvc_entity_by_id(chain->dev, entity->baSourceID[i]); in uvc_mc_create_links() 70 static int uvc_mc_init_entity(struct uvc_video_chain *chain, in uvc_mc_init_entity() argument 122 ret = v4l2_device_register_subdev(&chain->dev->vdev, in uvc_mc_init_entity() 135 int uvc_mc_register_entities(struct uvc_video_chain *chain) in uvc_mc_register_entities() argument 140 list_for_each_entry(entity, &chain->entities, chain) { in uvc_mc_register_entities() 141 ret = uvc_mc_init_entity(chain, entity); in uvc_mc_register_entities() 143 dev_info(&chain->dev->intf->dev, in uvc_mc_register_entities() 150 list_for_each_entry(entity, &chain->entities, chain) { in uvc_mc_register_entities() 151 ret = uvc_mc_create_links(chain, entity); in uvc_mc_register_entities() [all …]
|
| H A D | uvc_v4l2.c | 50 static int uvc_control_add_xu_mapping(struct uvc_video_chain *chain, in uvc_control_add_xu_mapping() argument 110 ret = uvc_ctrl_add_mapping(chain, map); in uvc_control_add_xu_mapping() 124 static int uvc_ioctl_xu_ctrl_map(struct uvc_video_chain *chain, in uvc_ioctl_xu_ctrl_map() argument 131 uvc_dbg(chain->dev, CONTROL, in uvc_ioctl_xu_ctrl_map() 161 ret = uvc_ctrl_add_mapping(chain, map); in uvc_ioctl_xu_ctrl_map() 165 ret = uvc_control_add_xu_mapping(chain, map, xmap); in uvc_ioctl_xu_ctrl_map() 169 uvc_dbg(chain->dev, CONTROL, in uvc_ioctl_xu_ctrl_map() 581 handle->chain = stream->chain; in uvc_v4l2_open() 606 struct uvc_video_chain *chain = handle->chain; in uvc_ioctl_querycap() local 613 | chain->caps; in uvc_ioctl_querycap() [all …]
|
| H A D | uvc_driver.c | 1282 struct uvc_video_chain *chain; in uvc_gpio_event() local 1291 chain = list_first_entry(&dev->chains, struct uvc_video_chain, list); in uvc_gpio_event() 1292 uvc_ctrl_status_event(chain, unit->controls, &new_val); in uvc_gpio_event() 1422 static int uvc_scan_chain_entity(struct uvc_video_chain *chain, in uvc_scan_chain_entity() argument 1430 uvc_dbg(chain->dev, DESCR, in uvc_scan_chain_entity() 1441 if (chain->processing != NULL) { in uvc_scan_chain_entity() 1442 uvc_dbg(chain->dev, DESCR, in uvc_scan_chain_entity() 1447 chain->processing = entity; in uvc_scan_chain_entity() 1457 if (chain->selector != NULL) { in uvc_scan_chain_entity() 1458 uvc_dbg(chain->dev, DESCR, in uvc_scan_chain_entity() [all …]
|
| /linux/tools/testing/selftests/net/forwarding/ |
| H A D | tc_chains.sh | 38 tc filter add dev $h2 ingress chain 1 protocol ip pref 1 handle 1101 \ 47 tc filter del dev $h2 ingress chain 1 protocol ip pref 1 handle 1101 \ 57 tc filter add dev $h2 ingress chain 1 protocol ip pref 1 handle 1101 \ 62 $tcflags dst_mac $h2mac action goto chain 1 78 tc filter del dev $h2 ingress chain 1 protocol ip pref 1 handle 1101 \ 88 tc chain add dev $h2 ingress 97 tc chain add dev $h2 ingress chain 1 115 tc chain del dev $h2 ingress 118 tc chain del dev $h2 ingress chain 1 128 tc chain add dev $h2 ingress protocol ip \ [all …]
|
| /linux/fs/minix/ |
| H A D | itree_common.c | 33 Indirect chain[DEPTH], in get_branch() 37 Indirect *p = chain; in get_branch() 42 add_chain (chain, NULL, i_data(inode) + *offsets); in get_branch() 50 if (!verify_chain(chain, p)) in get_branch() 116 Indirect chain[DEPTH], in splice_branch() 125 if (!verify_chain(chain, where-1) || *where->p) in splice_branch() 157 Indirect chain[DEPTH]; in get_block() local 166 partial = get_branch(inode, depth, offsets, chain, &err); in get_block() 171 map_bh(bh, inode->i_sb, block_to_cpu(chain[depth-1].key)); in get_block() 173 partial = chain+depth-1; /* the whole chain */ in get_block() [all …]
|
| /linux/include/linux/qed/ |
| H A D | qed_chain.h | 186 static inline u16 qed_chain_get_prod_idx(const struct qed_chain *chain) in qed_chain_get_prod_idx() argument 188 return chain->u.chain16.prod_idx; in qed_chain_get_prod_idx() 191 static inline u16 qed_chain_get_cons_idx(const struct qed_chain *chain) in qed_chain_get_cons_idx() argument 193 return chain->u.chain16.cons_idx; in qed_chain_get_cons_idx() 196 static inline u32 qed_chain_get_prod_idx_u32(const struct qed_chain *chain) in qed_chain_get_prod_idx_u32() argument 198 return chain->u.chain32.prod_idx; in qed_chain_get_prod_idx_u32() 201 static inline u32 qed_chain_get_cons_idx_u32(const struct qed_chain *chain) in qed_chain_get_cons_idx_u32() argument 203 return chain->u.chain32.cons_idx; in qed_chain_get_cons_idx_u32() 206 static inline u16 qed_chain_get_elem_used(const struct qed_chain *chain) in qed_chain_get_elem_used() argument 208 u32 prod = qed_chain_get_prod_idx(chain); in qed_chain_get_elem_used() [all …]
|
| /linux/tools/testing/selftests/drivers/net/ocelot/ |
| H A D | tc_flower_chains.sh | 117 tc filter add dev $eth ingress chain 0 pref 49152 flower \ 118 skip_sw action goto chain $(IS1 0) 119 tc filter add dev $eth ingress chain $(IS1 0) pref 49152 \ 120 flower skip_sw action goto chain $(IS1 1) 121 tc filter add dev $eth ingress chain $(IS1 1) pref 49152 \ 122 flower skip_sw action goto chain $(IS1 2) 123 tc filter add dev $eth ingress chain $(IS1 2) pref 49152 \ 124 flower skip_sw action goto chain $(IS2 0 0) 135 tc filter add dev $eth ingress chain $(IS2 0 0) pref 49152 \ 136 flower skip_sw action goto chain $(IS2 1 0) [all …]
|
| /linux/fs/xfs/ |
| H A D | xfs_hooks.c | 18 struct xfs_hooks *chain) in xfs_hooks_init() argument 20 BLOCKING_INIT_NOTIFIER_HEAD(&chain->head); in xfs_hooks_init() 26 struct xfs_hooks *chain, in xfs_hooks_add() argument 32 return blocking_notifier_chain_register(&chain->head, &hook->nb); in xfs_hooks_add() 38 struct xfs_hooks *chain, in xfs_hooks_del() argument 41 blocking_notifier_chain_unregister(&chain->head, &hook->nb); in xfs_hooks_del() 47 struct xfs_hooks *chain, in xfs_hooks_call() argument 51 return blocking_notifier_call_chain(&chain->head, val, priv); in xfs_hooks_call()
|
| H A D | xfs_hooks.h | 40 void xfs_hooks_init(struct xfs_hooks *chain); 41 int xfs_hooks_add(struct xfs_hooks *chain, struct xfs_hook *hook); 42 void xfs_hooks_del(struct xfs_hooks *chain, struct xfs_hook *hook); 43 int xfs_hooks_call(struct xfs_hooks *chain, unsigned long action, 61 # define xfs_hooks_init(chain) ((void)0) argument 62 # define xfs_hooks_call(chain, val, priv) (NOTIFY_DONE) argument
|
| /linux/fs/ext4/ |
| H A D | indirect.c | 146 Indirect chain[4], int *err) in ext4_get_branch() 149 Indirect *p = chain; in ext4_get_branch() 156 add_chain(chain, NULL, EXT4_I(inode)->i_data + *offsets); in ext4_get_branch() 537 Indirect chain[4]; in ext4_ind_map_blocks() local 554 partial = ext4_get_branch(inode, depth, offsets, chain, &err); in ext4_ind_map_blocks() 558 first_block = le32_to_cpu(chain[depth - 1].key); in ext4_ind_map_blocks() 564 blk = le32_to_cpu(*(chain[depth-1].p + count)); in ext4_ind_map_blocks() 586 for (i = partial - chain + 1; i < depth; i++) in ext4_ind_map_blocks() 623 indirect_blks = (chain + depth) - partial - 1; in ext4_ind_map_blocks() 636 offsets + (partial - chain), partial); in ext4_ind_map_blocks() [all …]
|
| /linux/fs/lockd/ |
| H A D | host.c | 37 #define for_each_host(host, chain, table) \ argument 38 for ((chain) = (table); \ 39 (chain) < (table) + NLM_HOST_NRHASH; ++(chain)) \ 40 hlist_for_each_entry((host), (chain), h_hash) 42 #define for_each_host_safe(host, next, chain, table) \ argument 43 for ((chain) = (table); \ 44 (chain) < (table) + NLM_HOST_NRHASH; ++(chain)) \ 46 (chain), h_hash) 236 struct hlist_head *chain; in nlmclnt_lookup_host() local 247 chain = &nlm_client_hosts[nlm_hash_address(sap)]; in nlmclnt_lookup_host() [all …]
|
| /linux/drivers/net/wireless/mediatek/mt76/mt76x2/ |
| H A D | eeprom.c | 198 mt76x2_set_rssi_offset(struct mt76x02_dev *dev, int chain, u8 val) in mt76x2_set_rssi_offset() argument 203 dest[chain] = 0; in mt76x2_set_rssi_offset() 207 dest[chain] = mt76x02_sign_extend_optional(val, 7); in mt76x2_set_rssi_offset() 347 int chain, int offset) in mt76x2_get_power_info_2g() argument 363 t->chain[chain].tssi_slope = data[0]; in mt76x2_get_power_info_2g() 364 t->chain[chain].tssi_offset = data[1]; in mt76x2_get_power_info_2g() 365 t->chain[chain].target_power = data[2]; in mt76x2_get_power_info_2g() 366 t->chain[chain].delta = in mt76x2_get_power_info_2g() 377 int chain, int offset) in mt76x2_get_power_info_5g() argument 415 t->chain[chain].tssi_slope = data[0]; in mt76x2_get_power_info_5g() [all …]
|