Lines Matching full:mixer
26 static void sun8i_ui_layer_enable(struct sun8i_mixer *mixer, int channel, in sun8i_ui_layer_enable() argument
32 bld_base = sun8i_blender_base(mixer); in sun8i_ui_layer_enable()
33 ch_base = sun8i_channel_base(mixer, channel); in sun8i_ui_layer_enable()
43 regmap_update_bits(mixer->engine.regs, in sun8i_ui_layer_enable()
48 regmap_update_bits(mixer->engine.regs, in sun8i_ui_layer_enable()
53 regmap_update_bits(mixer->engine.regs, in sun8i_ui_layer_enable()
62 regmap_update_bits(mixer->engine.regs, in sun8i_ui_layer_enable()
68 regmap_update_bits(mixer->engine.regs, in sun8i_ui_layer_enable()
75 static int sun8i_ui_layer_update_coord(struct sun8i_mixer *mixer, int channel, in sun8i_ui_layer_update_coord() argument
88 bld_base = sun8i_blender_base(mixer); in sun8i_ui_layer_update_coord()
89 ch_base = sun8i_channel_base(mixer, channel); in sun8i_ui_layer_update_coord()
108 regmap_write(mixer->engine.regs, in sun8i_ui_layer_update_coord()
111 regmap_write(mixer->engine.regs, in sun8i_ui_layer_update_coord()
123 regmap_update_bits(mixer->engine.regs, in sun8i_ui_layer_update_coord()
128 DRM_DEBUG_DRIVER("Switching display mixer interlaced mode %s\n", in sun8i_ui_layer_update_coord()
136 regmap_write(mixer->engine.regs, in sun8i_ui_layer_update_coord()
139 regmap_write(mixer->engine.regs, in sun8i_ui_layer_update_coord()
151 sun8i_ui_scaler_setup(mixer, channel, src_w, src_h, dst_w, in sun8i_ui_layer_update_coord()
153 sun8i_ui_scaler_enable(mixer, channel, true); in sun8i_ui_layer_update_coord()
156 sun8i_ui_scaler_enable(mixer, channel, false); in sun8i_ui_layer_update_coord()
163 regmap_write(mixer->engine.regs, in sun8i_ui_layer_update_coord()
166 regmap_write(mixer->engine.regs, in sun8i_ui_layer_update_coord()
173 static int sun8i_ui_layer_update_formats(struct sun8i_mixer *mixer, int channel, in sun8i_ui_layer_update_formats() argument
181 ch_base = sun8i_channel_base(mixer, channel); in sun8i_ui_layer_update_formats()
191 regmap_update_bits(mixer->engine.regs, in sun8i_ui_layer_update_formats()
198 static int sun8i_ui_layer_update_buffer(struct sun8i_mixer *mixer, int channel, in sun8i_ui_layer_update_buffer() argument
208 ch_base = sun8i_channel_base(mixer, channel); in sun8i_ui_layer_update_buffer()
225 regmap_write(mixer->engine.regs, in sun8i_ui_layer_update_buffer()
231 regmap_write(mixer->engine.regs, in sun8i_ui_layer_update_buffer()
256 if (layer->mixer->cfg->scaler_mask & BIT(layer->channel)) { in sun8i_ui_layer_atomic_check()
271 struct sun8i_mixer *mixer = layer->mixer; in sun8i_ui_layer_atomic_disable() local
273 sun8i_ui_layer_enable(mixer, layer->channel, layer->overlay, false, 0, in sun8i_ui_layer_atomic_disable()
283 struct sun8i_mixer *mixer = layer->mixer; in sun8i_ui_layer_atomic_update() local
286 sun8i_ui_layer_enable(mixer, layer->channel, in sun8i_ui_layer_atomic_update()
291 sun8i_ui_layer_update_coord(mixer, layer->channel, in sun8i_ui_layer_atomic_update()
293 sun8i_ui_layer_update_formats(mixer, layer->channel, in sun8i_ui_layer_atomic_update()
295 sun8i_ui_layer_update_buffer(mixer, layer->channel, in sun8i_ui_layer_atomic_update()
297 sun8i_ui_layer_enable(mixer, layer->channel, layer->overlay, in sun8i_ui_layer_atomic_update()
341 struct sun8i_mixer *mixer, in sun8i_ui_layer_init_one() argument
345 int channel = mixer->cfg->vi_num + index; in sun8i_ui_layer_init_one()
368 plane_cnt = mixer->cfg->ui_num + mixer->cfg->vi_num; in sun8i_ui_layer_init_one()
378 layer->mixer = mixer; in sun8i_ui_layer_init_one()