Home
last modified time | relevance | path

Searched full:dim (Results 1 – 25 of 83) sorted by relevance

1234

/linux-5.10/lib/dim/
Dnet_dim.c6 #include <linux/dim.h>
9 * Net DIM profiles:
104 static int net_dim_step(struct dim *dim) in net_dim_step() argument
106 if (dim->tired == (NET_DIM_PARAMS_NUM_PROFILES * 2)) in net_dim_step()
109 switch (dim->tune_state) { in net_dim_step()
114 if (dim->profile_ix == (NET_DIM_PARAMS_NUM_PROFILES - 1)) in net_dim_step()
116 dim->profile_ix++; in net_dim_step()
117 dim->steps_right++; in net_dim_step()
120 if (dim->profile_ix == 0) in net_dim_step()
122 dim->profile_ix--; in net_dim_step()
[all …]
Drdma_dim.c6 #include <linux/dim.h>
8 static int rdma_dim_step(struct dim *dim) in rdma_dim_step() argument
10 if (dim->tune_state == DIM_GOING_RIGHT) { in rdma_dim_step()
11 if (dim->profile_ix == (RDMA_DIM_PARAMS_NUM_PROFILES - 1)) in rdma_dim_step()
13 dim->profile_ix++; in rdma_dim_step()
14 dim->steps_right++; in rdma_dim_step()
16 if (dim->tune_state == DIM_GOING_LEFT) { in rdma_dim_step()
17 if (dim->profile_ix == 0) in rdma_dim_step()
19 dim->profile_ix--; in rdma_dim_step()
20 dim->steps_left++; in rdma_dim_step()
[all …]
Ddim.c6 #include <linux/dim.h>
8 bool dim_on_top(struct dim *dim) in dim_on_top() argument
10 switch (dim->tune_state) { in dim_on_top()
15 return (dim->steps_left > 1) && (dim->steps_right == 1); in dim_on_top()
17 return (dim->steps_right > 1) && (dim->steps_left == 1); in dim_on_top()
22 void dim_turn(struct dim *dim) in dim_turn() argument
24 switch (dim->tune_state) { in dim_turn()
29 dim->tune_state = DIM_GOING_LEFT; in dim_turn()
30 dim->steps_left = 0; in dim_turn()
33 dim->tune_state = DIM_GOING_RIGHT; in dim_turn()
[all …]
DMakefile2 # DIM Dynamic Interrupt Moderation library
5 obj-$(CONFIG_DIMLIB) += dim.o
7 dim-y := dim.o net_dim.o rdma_dim.o
/linux-5.10/include/linux/
Ddim.h14 * Number of events between DIM iterations.
35 * Used for communications between DIM and its consumer.
37 * @usec: CQ timer suggestion (by DIM)
38 * @pkts: CQ packet counter suggestion (by DIM)
50 * struct dim_sample - Structure for DIM sample data.
51 * Used for communications between DIM and its consumer.
68 * struct dim_stats - Structure for DIM stats.
86 * struct dim - Main structure for dynamic interrupt moderation (DIM).
87 * Used for holding all information about a specific DIM instance.
94 * @priv: A pointer to the struct that points to dim
[all …]
/linux-5.10/Documentation/networking/
Dnet_dim.rst2 Net DIM - Generic Network Dynamic Interrupt Moderation
19 Dynamic Interrupt Moderation (DIM) (in networking) refers to changing the
23 runtime data sampled from the system. Net DIM is such a mechanism. In each
28 samples is also measured. Net DIM compares the current and the previous data and
32 number of wanted packets per event. The Net DIM algorithm ascribes importance to
36 Net DIM Algorithm
39 Each iteration of the Net DIM algorithm follows these steps:
47 supplied by the driver registered to Net DIM. The previous data is the new data
58 certain percentage. Also, since Net DIM does not measure anything by itself, it
75 the Net DIM API and provided by the registered driver.
[all …]
/linux-5.10/drivers/net/ethernet/mellanox/mlx5/core/
Den_dim.c33 #include <linux/dim.h>
37 mlx5e_complete_dim_work(struct dim *dim, struct dim_cq_moder moder, in mlx5e_complete_dim_work() argument
41 dim->state = DIM_START_MEASURE; in mlx5e_complete_dim_work()
46 struct dim *dim = container_of(work, struct dim, work); in mlx5e_rx_dim_work() local
47 struct mlx5e_rq *rq = container_of(dim, struct mlx5e_rq, dim); in mlx5e_rx_dim_work()
49 net_dim_get_rx_moderation(dim->mode, dim->profile_ix); in mlx5e_rx_dim_work()
51 mlx5e_complete_dim_work(dim, cur_moder, rq->mdev, &rq->cq.mcq); in mlx5e_rx_dim_work()
56 struct dim *dim = container_of(work, struct dim, work); in mlx5e_tx_dim_work() local
57 struct mlx5e_txqsq *sq = container_of(dim, struct mlx5e_txqsq, dim); in mlx5e_tx_dim_work()
59 net_dim_get_tx_moderation(dim->mode, dim->profile_ix); in mlx5e_tx_dim_work()
[all …]
/linux-5.10/drivers/net/ethernet/broadcom/bnxt/
Dbnxt_debugfs.c14 #include <linux/dim.h>
24 struct dim *dim = filep->private_data; in debugfs_dim_read() local
30 if (!dim) in debugfs_dim_read()
40 dim->state, in debugfs_dim_read()
41 dim->profile_ix, in debugfs_dim_read()
42 dim->mode, in debugfs_dim_read()
43 dim->tune_state, in debugfs_dim_read()
44 dim->steps_right, in debugfs_dim_read()
45 dim->steps_left, in debugfs_dim_read()
46 dim->tired); in debugfs_dim_read()
[all …]
Dbnxt_dim.c10 #include <linux/dim.h>
16 struct dim *dim = container_of(work, struct dim, work); in bnxt_dim_work() local
17 struct bnxt_cp_ring_info *cpr = container_of(dim, in bnxt_dim_work()
19 dim); in bnxt_dim_work()
24 net_dim_get_rx_moderation(dim->mode, dim->profile_ix); in bnxt_dim_work()
30 dim->state = DIM_START_MEASURE; in bnxt_dim_work()
/linux-5.10/drivers/infiniband/core/
Dcq.c42 struct dim *dim = container_of(w, struct dim, work); in ib_cq_rdma_dim_work() local
43 struct ib_cq *cq = dim->priv; in ib_cq_rdma_dim_work()
45 u16 usec = rdma_dim_prof[dim->profile_ix].usec; in ib_cq_rdma_dim_work()
46 u16 comps = rdma_dim_prof[dim->profile_ix].comps; in ib_cq_rdma_dim_work()
48 dim->state = DIM_START_MEASURE; in ib_cq_rdma_dim_work()
56 struct dim *dim; in rdma_dim_init() local
62 dim = kzalloc(sizeof(struct dim), GFP_KERNEL); in rdma_dim_init()
63 if (!dim) in rdma_dim_init()
66 dim->state = DIM_START_MEASURE; in rdma_dim_init()
67 dim->tune_state = DIM_GOING_RIGHT; in rdma_dim_init()
[all …]
/linux-5.10/net/netfilter/
Dxt_set.c41 .dim = d, \
58 ADT_OPT(opt, xt_family(par), info->match_set.u.compat.dim, in set_match_v0()
72 info->u.compat.dim = IPSET_DIM_ZERO; in compat_flags()
76 info->u.compat.dim++; in compat_flags()
78 info->u.compat.flags |= (1 << info->u.compat.dim); in compat_flags()
122 ADT_OPT(opt, xt_family(par), info->match_set.dim, in set_match_v1()
146 if (info->match_set.dim > IPSET_DIM_MAX) { in set_match_v1_checkentry()
170 ADT_OPT(opt, xt_family(par), info->match_set.dim, in set_match_v3()
193 ADT_OPT(opt, xt_family(par), info->match_set.dim, in set_match_v4()
216 ADT_OPT(add_opt, xt_family(par), info->add_set.u.compat.dim, in set_target_v0()
[all …]
/linux-5.10/drivers/leds/
Dleds-lp3944.c12 * This helper chip can drive up to 8 leds, with two programmable DIM modes;
16 * The DIM modes are used to set _blink_ patterns for leds, the pattern is
95 * Set the period for DIM status
98 * @dim: either LP3944_DIM0 or LP3944_DIM1
101 static int lp3944_dim_set_period(struct i2c_client *client, u8 dim, u16 period) in lp3944_dim_set_period() argument
107 if (dim == LP3944_DIM0) in lp3944_dim_set_period()
109 else if (dim == LP3944_DIM1) in lp3944_dim_set_period()
126 * Set the duty cycle for DIM status
129 * @dim: either LP3944_DIM0 or LP3944_DIM1
132 static int lp3944_dim_set_dutycycle(struct i2c_client *client, u8 dim, in lp3944_dim_set_dutycycle() argument
[all …]
/linux-5.10/tools/perf/
Dbuiltin-c2c.c414 struct c2c_dimension *dim; member
437 struct c2c_dimension *dim; in c2c_width() local
440 dim = c2c_fmt->dim; in c2c_width()
442 if (dim == &dim_symbol || dim == &dim_srcline) in c2c_width()
443 return symbol_width(hists, dim->se); in c2c_width()
445 return dim->se ? hists__col_len(hists, dim->se->se_width_idx) : in c2c_width()
446 c2c_fmt->dim->width; in c2c_width()
454 struct c2c_dimension *dim; in c2c_header() local
459 dim = c2c_fmt->dim; in c2c_header()
461 if (dim->se) { in c2c_header()
[all …]
/linux-5.10/tools/perf/util/
Dsort.c1687 #define DIM(d, n, func) [d] = { .name = n, .entry = &(func) } macro
1690 DIM(SORT_PID, "pid", sort_thread),
1691 DIM(SORT_COMM, "comm", sort_comm),
1692 DIM(SORT_DSO, "dso", sort_dso),
1693 DIM(SORT_SYM, "symbol", sort_sym),
1694 DIM(SORT_PARENT, "parent", sort_parent),
1695 DIM(SORT_CPU, "cpu", sort_cpu),
1696 DIM(SORT_SOCKET, "socket", sort_socket),
1697 DIM(SORT_SRCLINE, "srcline", sort_srcline),
1698 DIM(SORT_SRCFILE, "srcfile", sort_srcfile),
[all …]
/linux-5.10/drivers/staging/media/atomisp/pci/isp/kernels/sdis/sdis_1.0/
Dia_css_sdis.host.c139 hor_num_3a = dvs_binary->dis.coef.dim.width; in ia_css_get_isp_dis_coefficients()
140 ver_num_3a = dvs_binary->dis.coef.dim.height; in ia_css_get_isp_dis_coefficients()
190 dis->grid.dim.width = in ia_css_sdis_init_info()
192 dis->grid.dim.height = in ia_css_sdis_init_info()
199 dis->coef.dim.width = in ia_css_sdis_init_info()
202 dis->coef.dim.height = in ia_css_sdis_init_info()
210 dis->proj.dim.width = in ia_css_sdis_init_info()
212 dis->proj.dim.height = in ia_css_sdis_init_info()
215 dis->proj.dim.width = in ia_css_sdis_init_info()
218 dis->proj.dim.height = in ia_css_sdis_init_info()
/linux-5.10/drivers/staging/most/dim2/
Derrors.h13 * MOST DIM errors.
31 /** DIM API is called while DIM is not initialized successfully */
/linux-5.10/drivers/net/ethernet/broadcom/
Dbcmsysport.c623 ec->use_adaptive_rx_coalesce = priv->dim.use_dim; in bcm_sysport_get_coalesce()
658 if (ec->use_adaptive_rx_coalesce && !priv->dim.use_dim) { in bcm_sysport_set_coalesce()
659 moder = net_dim_get_def_rx_moderation(priv->dim.dim.mode); in bcm_sysport_set_coalesce()
664 priv->dim.use_dim = ec->use_adaptive_rx_coalesce; in bcm_sysport_set_coalesce()
863 priv->dim.packets = processed; in bcm_sysport_desc_rx()
864 priv->dim.bytes = processed_bytes; in bcm_sysport_desc_rx()
1037 if (priv->dim.use_dim) { in bcm_sysport_poll()
1038 dim_update_sample(priv->dim.event_ctr, priv->dim.packets, in bcm_sysport_poll()
1039 priv->dim.bytes, &dim_sample); in bcm_sysport_poll()
1040 net_dim(&priv->dim.dim, dim_sample); in bcm_sysport_poll()
[all …]
/linux-5.10/drivers/net/ethernet/broadcom/genet/
Dbcmgenet.c848 ec->use_adaptive_rx_coalesce |= ring->dim.use_dim; in bcmgenet_get_coalesce()
851 ec->use_adaptive_rx_coalesce |= ring->dim.use_dim; in bcmgenet_get_coalesce()
882 if (ec->use_adaptive_rx_coalesce && !ring->dim.use_dim) { in bcmgenet_set_ring_rx_coalesce()
883 moder = net_dim_get_def_rx_moderation(ring->dim.dim.mode); in bcmgenet_set_ring_rx_coalesce()
888 ring->dim.use_dim = ec->use_adaptive_rx_coalesce; in bcmgenet_set_ring_rx_coalesce()
2320 ring->dim.bytes = bytes_processed; in bcmgenet_desc_rx()
2321 ring->dim.packets = rxpktprocessed; in bcmgenet_desc_rx()
2341 if (ring->dim.use_dim) { in bcmgenet_rx_poll()
2342 dim_update_sample(ring->dim.event_ctr, ring->dim.packets, in bcmgenet_rx_poll()
2343 ring->dim.bytes, &dim_sample); in bcmgenet_rx_poll()
[all …]
/linux-5.10/Documentation/ABI/testing/
Dsysfs-class-backlight-driver-adp887028 Control the dim brightness for <ambient light zone>
31 This file will also show the dim brightness level stored for
/linux-5.10/Documentation/leds/
Dleds-lp3944.rst23 DIM modes; it could even be used as a gpio expander but this driver assumes it
26 The DIM modes are used to set _blink_ patterns for leds, the pattern is
/linux-5.10/include/uapi/linux/netfilter/
Dxt_set.h23 __u8 dim; member
43 __u8 dim; member
/linux-5.10/drivers/net/ethernet/pensando/ionic/
Dionic_lif.h7 #include <linux/dim.h>
70 struct dim dim; member
/linux-5.10/drivers/video/backlight/
Darcxcnn_bl.c60 #define ARCXCNN_ILED_DIM_PWM 0x00 /* config dim mode pwm */
61 #define ARCXCNN_ILED_DIM_INT 0x04 /* config dim mode internal */
202 ret = of_property_read_u32(node, "arc,dim-freq", &prog_val); in arcxcnn_parse_dt()
282 /* insure dim mode is not default pwm */ in arcxcnn_probe()
/linux-5.10/net/sched/
Dem_ipset.c81 opt.dim = set->dim; in em_ipset_match()
/linux-5.10/drivers/media/test-drivers/vicodec/
Dcodec-fwht.h96 #define vic_round_dim(dim, div) (round_up((dim) / (div), 8) * (div)) argument

1234