Skip to content

Commit

Permalink
drm/sun4i: Add scaler configuration to DE2 mixers
Browse files Browse the repository at this point in the history
No all SoCs support scaling on all channels. For example, V3s support
scaling only on VI channels. Because of that, add additional
configuration bitmask which tells which channel support scaler.

Signed-off-by: Jernej Skrabec <[email protected]>
Signed-off-by: Maxime Ripard <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
  • Loading branch information
jernejsk authored and mripard committed Dec 5, 2017
1 parent 7480ba4 commit 5b1f836
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 0 deletions.
1 change: 1 addition & 0 deletions drivers/gpu/drm/sun4i/sun8i_mixer.c
Original file line number Diff line number Diff line change
Expand Up @@ -336,6 +336,7 @@ static int sun8i_mixer_remove(struct platform_device *pdev)
static const struct sun8i_mixer_cfg sun8i_v3s_mixer_cfg = {
.vi_num = 2,
.ui_num = 1,
.scaler_mask = 0x3,
};

static const struct of_device_id sun8i_mixer_of_table[] = {
Expand Down
10 changes: 10 additions & 0 deletions drivers/gpu/drm/sun4i/sun8i_mixer.h
Original file line number Diff line number Diff line change
Expand Up @@ -94,9 +94,19 @@ struct de2_fmt_info {
u32 de2_fmt;
};

/**
* struct sun8i_mixer_cfg - mixer HW configuration
* @vi_num: number of VI channels
* @ui_num: number of UI channels
* @scaler_mask: bitmask which tells which channel supports scaling
* First, scaler supports for VI channels is defined and after that, scaler
* support for UI channels. For example, if mixer has 2 VI channels without
* scaler and 2 UI channels with scaler, bitmask would be 0xC.
*/
struct sun8i_mixer_cfg {
int vi_num;
int ui_num;
int scaler_mask;
};

struct sun8i_mixer {
Expand Down

0 comments on commit 5b1f836

Please sign in to comment.