Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 339630
b: refs/heads/master
c: 649514c
h: refs/heads/master
v: v3
  • Loading branch information
Tomi Valkeinen committed Oct 16, 2012
1 parent fe6f955 commit afe12f3
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 20 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: acd18af93ad3b99e6769b917fe5b549dc1bfc468
refs/heads/master: 649514c65cdca0102093a0e85b587b3f5a8d8c42
2 changes: 1 addition & 1 deletion trunk/drivers/video/omap2/dss/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -237,7 +237,7 @@ static int __init omap_dss_probe(struct platform_device *pdev)

core.pdev = pdev;

dss_features_init();
dss_features_init(pdata->version);

dss_apply_init();

Expand Down
49 changes: 32 additions & 17 deletions trunk/drivers/video/omap2/dss/dss_features.c
Original file line number Diff line number Diff line change
Expand Up @@ -929,29 +929,44 @@ bool dss_feat_rotation_type_supported(enum omap_dss_rotation_type rot_type)
return omap_current_dss_features->supported_rotation_types & rot_type;
}

void dss_features_init(void)
void dss_features_init(enum omapdss_version version)
{
if (cpu_is_omap24xx())
switch (version) {
case OMAPDSS_VER_OMAP24xx:
omap_current_dss_features = &omap2_dss_features;
else if (cpu_is_omap3630())
break;

case OMAPDSS_VER_OMAP34xx_ES1:
case OMAPDSS_VER_OMAP34xx_ES3:
omap_current_dss_features = &omap3430_dss_features;
break;

case OMAPDSS_VER_OMAP3630:
omap_current_dss_features = &omap3630_dss_features;
else if (cpu_is_omap34xx()) {
if (soc_is_am35xx()) {
omap_current_dss_features = &am35xx_dss_features;
} else {
omap_current_dss_features = &omap3430_dss_features;
}
}
else if (omap_rev() == OMAP4430_REV_ES1_0)
break;

case OMAPDSS_VER_OMAP4430_ES1:
omap_current_dss_features = &omap4430_es1_0_dss_features;
else if (omap_rev() == OMAP4430_REV_ES2_0 ||
omap_rev() == OMAP4430_REV_ES2_1 ||
omap_rev() == OMAP4430_REV_ES2_2)
break;

case OMAPDSS_VER_OMAP4430_ES2:
omap_current_dss_features = &omap4430_es2_0_1_2_dss_features;
else if (cpu_is_omap44xx())
break;

case OMAPDSS_VER_OMAP4:
omap_current_dss_features = &omap4_dss_features;
else if (soc_is_omap54xx())
break;

case OMAPDSS_VER_OMAP5:
omap_current_dss_features = &omap5_dss_features;
else
break;

case OMAPDSS_VER_AM35xx:
omap_current_dss_features = &am35xx_dss_features;
break;

default:
DSSWARN("Unsupported OMAP version");
break;
}
}
2 changes: 1 addition & 1 deletion trunk/drivers/video/omap2/dss/dss_features.h
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ bool dss_feat_rotation_type_supported(enum omap_dss_rotation_type rot_type);

bool dss_has_feature(enum dss_feat_id id);
void dss_feat_get_reg_field(enum dss_feat_reg_field id, u8 *start, u8 *end);
void dss_features_init(void);
void dss_features_init(enum omapdss_version version);
#if defined(CONFIG_OMAP4_DSS_HDMI)
void dss_init_hdmi_ip_ops(struct hdmi_ip_data *ip_data);
#endif
Expand Down

0 comments on commit afe12f3

Please sign in to comment.