/linux-6.12.1/drivers/gpu/drm/amd/display/dc/dce/ |
D | dmub_abm.c | 32 #define TO_DMUB_ABM(abm)\ argument 33 container_of(abm, struct dce_abm, base) 38 static unsigned int abm_feature_support(struct abm *abm, unsigned int panel_inst) in abm_feature_support() argument 40 struct dc_context *dc = abm->ctx; in abm_feature_support() 60 static void dmub_abm_init_ex(struct abm *abm, uint32_t backlight, uint32_t user_level) in dmub_abm_init_ex() argument 62 dmub_abm_init(abm, backlight, user_level); in dmub_abm_init_ex() 65 static unsigned int dmub_abm_get_current_backlight_ex(struct abm *abm) in dmub_abm_get_current_backlight_ex() argument 67 dc_allow_idle_optimizations(abm->ctx->dc, false); in dmub_abm_get_current_backlight_ex() 69 return dmub_abm_get_current_backlight(abm); in dmub_abm_get_current_backlight_ex() 72 static unsigned int dmub_abm_get_target_backlight_ex(struct abm *abm) in dmub_abm_get_target_backlight_ex() argument [all …]
|
D | dmub_abm_lcd.h | 33 void dmub_abm_init(struct abm *abm, uint32_t backlight, uint32_t user_level); 34 bool dmub_abm_set_level(struct abm *abm, uint32_t level, uint8_t panel_mask); 35 unsigned int dmub_abm_get_current_backlight(struct abm *abm); 36 unsigned int dmub_abm_get_target_backlight(struct abm *abm); 37 void dmub_abm_init_config(struct abm *abm, 42 bool dmub_abm_set_pause(struct abm *abm, bool pause, unsigned int panel_inst, unsigned int stream_i… 47 bool dmub_abm_set_pipe(struct abm *abm, uint32_t otg_inst, uint32_t option, uint32_t panel_inst, ui… 48 bool dmub_abm_set_backlight_level(struct abm *abm, 52 bool dmub_abm_set_event(struct abm *abm, unsigned int scaling_enable, unsigned int scaling_strength…
|
D | dce_abm.c | 37 #define TO_DCE_ABM(abm)\ argument 38 container_of(abm, struct dce_abm, base) 48 abm->ctx->logger 58 static bool dce_abm_set_pipe(struct abm *abm, uint32_t controller_id, uint32_t panel_inst) in dce_abm_set_pipe() argument 60 struct dce_abm *abm_dce = TO_DCE_ABM(abm); in dce_abm_set_pipe() 63 if (abm->dmcu_is_running == false) in dce_abm_set_pipe() 138 static void dce_abm_init(struct abm *abm, uint32_t backlight, uint32_t user_level) in dce_abm_init() argument 140 struct dce_abm *abm_dce = TO_DCE_ABM(abm); in dce_abm_init() 177 static unsigned int dce_abm_get_current_backlight(struct abm *abm) in dce_abm_get_current_backlight() argument 179 struct dce_abm *abm_dce = TO_DCE_ABM(abm); in dce_abm_get_current_backlight() [all …]
|
D | dmub_abm_lcd.c | 39 #define TO_DMUB_ABM(abm)\ argument 40 container_of(abm, struct dce_abm, base) 78 void dmub_abm_init(struct abm *abm, uint32_t backlight, uint32_t user_level) in dmub_abm_init() argument 80 struct dce_abm *dce_abm = TO_DMUB_ABM(abm); in dmub_abm_init() 116 dmub_abm_enable_fractional_pwm(abm->ctx); in dmub_abm_init() 119 unsigned int dmub_abm_get_current_backlight(struct abm *abm) in dmub_abm_get_current_backlight() argument 121 struct dce_abm *dce_abm = TO_DMUB_ABM(abm); in dmub_abm_get_current_backlight() 130 unsigned int dmub_abm_get_target_backlight(struct abm *abm) in dmub_abm_get_target_backlight() argument 132 struct dce_abm *dce_abm = TO_DMUB_ABM(abm); in dmub_abm_get_target_backlight() 141 bool dmub_abm_set_level(struct abm *abm, uint32_t level, uint8_t panel_mask) in dmub_abm_set_level() argument [all …]
|
D | dmub_abm.h | 32 struct abm *dmub_abm_create( 38 void dmub_abm_destroy(struct abm **abm);
|
D | dce_abm.h | 378 struct abm base; 384 struct abm *dce_abm_create( 390 void dce_abm_destroy(struct abm **abm);
|
/linux-6.12.1/drivers/net/ethernet/netronome/nfp/abm/ |
D | ctrl.c | 52 struct nfp_cpp *cpp = alink->abm->app->cpp; in nfp_abm_ctrl_stat() 75 int __nfp_abm_ctrl_set_q_lvl(struct nfp_abm *abm, unsigned int id, u32 val) in __nfp_abm_ctrl_set_q_lvl() argument 77 struct nfp_cpp *cpp = abm->app->cpp; in __nfp_abm_ctrl_set_q_lvl() 81 __clear_bit(id, abm->threshold_undef); in __nfp_abm_ctrl_set_q_lvl() 82 if (abm->thresholds[id] == val) in __nfp_abm_ctrl_set_q_lvl() 86 err = __nfp_rtsym_writel(cpp, abm->q_lvls, 4, 0, sym_offset, val); in __nfp_abm_ctrl_set_q_lvl() 94 abm->thresholds[id] = val; in __nfp_abm_ctrl_set_q_lvl() 105 return __nfp_abm_ctrl_set_q_lvl(alink->abm, threshold, val); in nfp_abm_ctrl_set_q_lvl() 108 int __nfp_abm_ctrl_set_q_act(struct nfp_abm *abm, unsigned int id, in __nfp_abm_ctrl_set_q_act() argument 111 struct nfp_cpp *cpp = abm->app->cpp; in __nfp_abm_ctrl_set_q_act() [all …]
|
D | main.c | 114 port->pf_id = alink->abm->pf_id; in nfp_abm_spawn_repr() 167 nfp_abm_kill_reprs(struct nfp_abm *abm, struct nfp_abm_link *alink) in nfp_abm_kill_reprs() argument 169 nfp_abm_kill_repr(abm->app, alink, NFP_REPR_TYPE_PF); in nfp_abm_kill_reprs() 170 nfp_abm_kill_repr(abm->app, alink, NFP_REPR_TYPE_PHYS_PORT); in nfp_abm_kill_reprs() 173 static void nfp_abm_kill_reprs_all(struct nfp_abm *abm) in nfp_abm_kill_reprs_all() argument 175 struct nfp_pf *pf = abm->app->pf; in nfp_abm_kill_reprs_all() 179 nfp_abm_kill_reprs(abm, (struct nfp_abm_link *)nn->app_priv); in nfp_abm_kill_reprs_all() 184 struct nfp_abm *abm = app->priv; in nfp_abm_eswitch_mode_get() local 186 return abm->eswitch_mode; in nfp_abm_eswitch_mode_get() 189 static int nfp_abm_eswitch_set_legacy(struct nfp_abm *abm) in nfp_abm_eswitch_set_legacy() argument [all …]
|
D | main.h | 207 struct nfp_abm *abm; member 225 static inline bool nfp_abm_has_prio(struct nfp_abm *abm) in nfp_abm_has_prio() argument 227 return abm->num_bands > 1; in nfp_abm_has_prio() 230 static inline bool nfp_abm_has_drop(struct nfp_abm *abm) in nfp_abm_has_drop() argument 232 return abm->action_mask & BIT(NFP_ABM_ACT_DROP); in nfp_abm_has_drop() 235 static inline bool nfp_abm_has_mark(struct nfp_abm *abm) in nfp_abm_has_mark() argument 237 return abm->action_mask & BIT(NFP_ABM_ACT_MARK_DROP); in nfp_abm_has_mark() 253 int nfp_abm_ctrl_find_addrs(struct nfp_abm *abm); 254 int __nfp_abm_ctrl_set_q_lvl(struct nfp_abm *abm, unsigned int id, u32 val); 257 int __nfp_abm_ctrl_set_q_act(struct nfp_abm *abm, unsigned int id, [all …]
|
D | cls.c | 21 nfp_abm_u32_check_knode(struct nfp_abm *abm, struct tc_cls_u32_knode *knode, in nfp_abm_u32_check_knode() argument 57 if (knode->res && knode->res->classid >= abm->num_bands) { in nfp_abm_u32_check_knode() 92 if (be32_to_cpu(k->mask) >> tos_off & ~abm->dscp_mask) { in nfp_abm_u32_check_knode() 94 nfp_err(abm->app->cpp, in nfp_abm_u32_check_knode() 96 be32_to_cpu(k->mask) >> tos_off, abm->dscp_mask); in nfp_abm_u32_check_knode() 122 struct nfp_abm *abm = alink->abm; in nfp_abm_update_band_map() local 127 bits_per_prio = roundup_pow_of_two(order_base_2(abm->num_bands)); in nfp_abm_update_band_map() 132 base_shift = 8 - order_base_2(abm->num_prios); in nfp_abm_update_band_map() 134 for (i = 0; i < abm->num_prios; i++) { in nfp_abm_update_band_map() 179 if (!nfp_abm_u32_check_knode(alink->abm, knode, proto, extack)) in nfp_abm_u32_knode_replace()
|
D | qdisc.c | 48 struct nfp_cpp *cpp = alink->abm->app->cpp; in nfp_abm_stats_update_red() 125 nfp_warn(alink->abm->app->cpp, "Offload of '%08x' stopped\n", in nfp_abm_qdisc_offload_stop() 153 nfp_err(alink->abm->app->cpp, in __nfp_abm_stats_init() 161 nfp_err(alink->abm->app->cpp, in __nfp_abm_stats_init() 215 for (i = 0; i < alink->abm->num_bands; i++) { in nfp_abm_offload_compile_red() 247 struct nfp_abm *abm = alink->abm; in nfp_abm_qdisc_offload_update() local 254 for (i = 0; i < abm->num_bands; i++) in nfp_abm_qdisc_offload_update() 255 __bitmap_set(abm->threshold_undef, in nfp_abm_qdisc_offload_update() 277 for (i = 0; i < abm->num_thresholds; i++) in nfp_abm_qdisc_offload_update() 278 if (test_bit(i, abm->threshold_undef)) in nfp_abm_qdisc_offload_update() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/inc/hw/ |
D | abm.h | 32 struct abm { struct 39 void (*abm_init)(struct abm *abm, uint32_t back_light, uint32_t user_level); argument 40 bool (*set_abm_level)(struct abm *abm, unsigned int abm_level); 41 bool (*set_abm_immediate_disable)(struct abm *abm, unsigned int panel_inst); 42 bool (*set_pipe)(struct abm *abm, unsigned int controller_id, unsigned int panel_inst); 47 bool (*set_backlight_level_pwm)(struct abm *abm, 53 unsigned int (*get_current_backlight)(struct abm *abm); 54 unsigned int (*get_target_backlight)(struct abm *abm); 55 bool (*init_abm_config)(struct abm *abm, 59 bool (*set_abm_pause)(struct abm *abm, bool pause, unsigned int panel_inst, unsigned int otg_inst); [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/hwss/dcn21/ |
D | dcn21_hwseq.c | 140 static bool dmub_abm_set_pipe(struct abm *abm, uint32_t otg_inst, in dmub_abm_set_pipe() argument 144 struct dc_context *dc = abm->ctx; in dmub_abm_set_pipe() 181 struct abm *abm = pipe_ctx->stream_res.abm; in dcn21_set_abm_immediate_disable() local 197 if (abm && panel_cntl) { in dcn21_set_abm_immediate_disable() 198 if (abm->funcs && abm->funcs->set_pipe_ex) { in dcn21_set_abm_immediate_disable() 199 abm->funcs->set_pipe_ex(abm, otg_inst, SET_ABM_PIPE_IMMEDIATELY_DISABLE, in dcn21_set_abm_immediate_disable() 202 dmub_abm_set_pipe(abm, in dcn21_set_abm_immediate_disable() 214 struct abm *abm = pipe_ctx->stream_res.abm; in dcn21_set_pipe() local 220 if (!abm || !tg || !panel_cntl) in dcn21_set_pipe() 230 if (abm->funcs && abm->funcs->set_pipe_ex) { in dcn21_set_pipe() [all …]
|
/linux-6.12.1/drivers/net/ethernet/netronome/nfp/ |
D | Makefile | 77 abm/cls.o \ 78 abm/ctrl.o \ 79 abm/qdisc.o \ 80 abm/main.o
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/link/protocols/ |
D | link_edp_panel_control.c | 1107 static struct abm *get_abm_from_stream_res(const struct dc_link *link) in get_abm_from_stream_res() 1111 struct abm *abm = NULL; in get_abm_from_stream_res() local 1118 abm = pipe_ctx.stream_res.abm; in get_abm_from_stream_res() 1122 return abm; in get_abm_from_stream_res() 1127 struct abm *abm = get_abm_from_stream_res(link); in edp_get_backlight_level() local 1138 else if (abm != NULL && abm->funcs->get_current_backlight != NULL) in edp_get_backlight_level() 1139 return (int) abm->funcs->get_current_backlight(abm); in edp_get_backlight_level() 1146 struct abm *abm = get_abm_from_stream_res(link); in edp_get_target_backlight_pwm() local 1148 if (abm == NULL || abm->funcs->get_target_backlight == NULL) in edp_get_target_backlight_pwm() 1151 return (int) abm->funcs->get_target_backlight(abm); in edp_get_target_backlight_pwm()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/inc/ |
D | core_types.h | 302 struct abm *abm; member 307 struct abm *multiple_abms[MAX_PIPES]; 341 struct abm *abm; member
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/hwss/dce110/ |
D | dce110_hwseq.c | 2773 struct abm *abm; in init_hw() local 2833 abm = dc->res_pool->abm; in init_hw() 2834 if (abm != NULL) in init_hw() 2835 abm->funcs->abm_init(abm, backlight, user_level); in init_hw() 2838 if (dmcu != NULL && abm != NULL) in init_hw() 2839 abm->dmcu_is_running = dmcu->funcs->is_dmcu_initialized(dmcu); in init_hw() 3150 struct abm *abm = pipe_ctx->stream_res.abm; in dce110_set_backlight_level() local 3159 if (abm == NULL || panel_cntl == NULL || (abm->funcs->set_backlight_level_pwm == NULL)) in dce110_set_backlight_level() 3168 abm->funcs->set_backlight_level_pwm( in dce110_set_backlight_level() 3169 abm, in dce110_set_backlight_level() [all …]
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/dce60/ |
D | dce60_resource.c | 846 if (pool->base.abm != NULL) in dce60_resource_destruct() 847 dce_abm_destroy(&pool->base.abm); in dce60_resource_destruct() 1017 pool->base.abm = dce_abm_create(ctx, in dce60_construct() 1021 if (pool->base.abm == NULL) { in dce60_construct() 1215 pool->base.abm = dce_abm_create(ctx, in dce61_construct() 1219 if (pool->base.abm == NULL) { in dce61_construct() 1409 pool->base.abm = dce_abm_create(ctx, in dce64_construct() 1413 if (pool->base.abm == NULL) { in dce64_construct()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/resource/dce80/ |
D | dce80_resource.c | 852 if (pool->base.abm != NULL) in dce80_resource_destruct() 853 dce_abm_destroy(&pool->base.abm); in dce80_resource_destruct() 1030 pool->base.abm = dce_abm_create(ctx, in dce80_construct() 1034 if (pool->base.abm == NULL) { in dce80_construct() 1230 pool->base.abm = dce_abm_create(ctx, in dce81_construct() 1234 if (pool->base.abm == NULL) { in dce81_construct() 1427 pool->base.abm = dce_abm_create(ctx, in dce83_construct() 1431 if (pool->base.abm == NULL) { in dce83_construct()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/resource/dcn10/ |
D | dcn10_resource.c | 982 if (pool->base.abm != NULL) in dcn10_resource_destruct() 983 dce_abm_destroy(&pool->base.abm); in dcn10_resource_destruct() 1111 idle_pipe->stream_res.abm = head_pipe->stream_res.abm; in dcn10_acquire_free_pipe_for_layer() 1459 pool->base.abm = dce_abm_create(ctx, in dcn10_resource_construct() 1463 if (pool->base.abm == NULL) { in dcn10_resource_construct()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/resource/dce100/ |
D | dce100_resource.c | 812 if (pool->base.abm != NULL) in dce100_resource_destruct() 813 dce_abm_destroy(&pool->base.abm); in dce100_resource_destruct() 1046 pool->base.abm = dce_abm_create(ctx, in dce100_resource_construct() 1050 if (pool->base.abm == NULL) { in dce100_resource_construct()
|
/linux-6.12.1/drivers/gpu/drm/radeon/ |
D | cypress_dpm.h | 67 bool abm; member
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/resource/dcn21/ |
D | dcn21_resource.c | 747 if (pool->base.abm != NULL) { in dcn21_resource_destruct() 748 if (pool->base.abm->ctx->dc->config.disable_dmcu) in dcn21_resource_destruct() 749 dmub_abm_destroy(&pool->base.abm); in dcn21_resource_destruct() 751 dce_abm_destroy(&pool->base.abm); in dcn21_resource_destruct() 1542 pool->base.abm = dmub_abm_create(ctx, in dcn21_resource_construct() 1547 pool->base.abm = dce_abm_create(ctx, in dcn21_resource_construct()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/resource/dce120/ |
D | dce120_resource.c | 657 if (pool->base.abm != NULL) in dce120_resource_destruct() 658 dce_abm_destroy(&pool->base.abm); in dce120_resource_destruct() 1138 pool->base.abm = dce_abm_create(ctx, in dce120_resource_construct() 1142 if (pool->base.abm == NULL) { in dce120_resource_construct()
|
/linux-6.12.1/drivers/gpu/drm/amd/display/dc/resource/dce112/ |
D | dce112_resource.c | 835 if (pool->base.abm != NULL) in dce112_resource_destruct() 836 dce_abm_destroy(&pool->base.abm); in dce112_resource_destruct() 1310 pool->base.abm = dce_abm_create(ctx, in dce112_resource_construct() 1314 if (pool->base.abm == NULL) { in dce112_resource_construct()
|