Permalink
Browse files

Voodoo color care of thomasskull666 and supercurio

  • Loading branch information...
1 parent 639281a commit fe98bd73fbf727600c225407d054209e6190377a @tanimn committed Mar 29, 2011
@@ -96,6 +96,13 @@ config FB_S3C_TL2796
---help---
This enables support for Samsung TL2796 WVGA LCD panel
+config VOODOO_COLOR_GAMMA_22_ONLY
+ bool "Voodoo color: improve gamma in videos"
+ depends on FB_S3C_TL2796
+ default y
+ ---help---
+ This enables Voodoo color gamma curve optimization in videos
+
config FB_S3C_TL2796_ATLAS
bool "Select codec for atlas"
depends on FB_S3C_TL2796
@@ -160,6 +167,20 @@ config FB_S3C_AMS701KA
---help---
This enables support for Samsung AMS701KA LCD panel
+config VOODOO_MDNIE
+ bool "Voodoo color: mDNIe sharpness and color enhancements"
+ depends on FB_S3C_MDNIE
+ default y
+ ---help---
+ This enables Voodoo color mDNIe tweaks
+
+config VOODOO_MDNIE_VIDEOS_ALT_PRESETS
+ bool "Also replace Warm & Cold Video presets by Boost and Soft"
+ depends on VOODOO_MDNIE
+ default y
+ ---help---
+ This enables voodoo color mDNIe useful alternative presets used by Samsung video player
+
config FB_S3C_MDNIE
bool "Samsung MDNIE"
depends on FB_S3C
@@ -98,6 +98,23 @@ struct device *switch_mdnieset_outdoor_dev;
mDNIe_data_type mDNIe_Video[]=
{
+#ifdef CONFIG_VOODOO_MDNIE
+ // Voodoo color: mDNIe settings optimized for most video
+ // standard response curve
+ // nice sharpness filter and very light color saturation boost
+ 0x0084, 0x0040,
+ 0x0090, 0x0000,
+ 0x0094, 0x0FFF,
+ 0x0098, 0x005C,
+ 0x009C, 0x0FF5,
+ 0x00AC, 0x0007,
+ 0x00B4, 0x0500,
+ 0x00C0, 0x0400,
+ 0x00C4, 0x7200,
+ 0x00C8, 0x008D,
+ 0x00D0, 0x00C0,
+ END_SEQ, 0x0000,
+#else
0x0084, 0x0040,
0x0090, 0x0000,
0x0094, 0x0fff,
@@ -110,10 +127,30 @@ mDNIe_data_type mDNIe_Video[]=
0x00C8, 0x008d,
0x00D0, 0x0100,
END_SEQ, 0x0000,
+#endif
};
mDNIe_data_type mDNIe_Camera[]=
{
+#ifdef CONFIG_VOODOO_MDNIE
+ // Voodoo color: optimized UI mode
+ // reduce the sharpness filter radius to make it much closer
+ // to the real fuzzyness introduced by the SAMOLED Pentile pattern
+ // color saturation boost on everything is also disabled because
+ // it causes harm on stock settings (exaggerated colors)
+ 0x0084, 0x0040,
+ 0x0090, 0x0000,
+ 0x0094, 0x0FFF,
+ 0x0098, 0x005C,
+ 0x009C, 0x0613,
+ 0x00AC, 0x0000,
+ 0x00B4, 0x0A00,
+ 0x00C0, 0x0400,
+ 0x00C4, 0x7200,
+ 0x00C8, 0x008D,
+ 0x00D0, 0x00C0,
+ END_SEQ, 0x0000,
+#else
0x0084, 0x0040,
0x0090, 0x0000,
0x0094, 0x0FFF,
@@ -126,6 +163,7 @@ mDNIe_data_type mDNIe_Camera[]=
0x00C8, 0x008D,
0x00D0, 0x00C0,
END_SEQ, 0x0000,
+#endif
};
mDNIe_data_type mDNIe_Camera_Outdoor_Mode[]=
@@ -173,6 +211,22 @@ mDNIe_data_type mDNIe_UI[]=
mDNIe_data_type mDNIe_Video_Warm[]=
{
+#ifdef CONFIG_VOODOO_MDNIE_VIDEOS_ALT_PRESETS
+ // Voodoo color: high vibrance/saturation and sharpening
+ // Boost mode for videos
+ 0x0084, 0x0040,
+ 0x0090, 0x0000,
+ 0x0094, 0x0FFF,
+ 0x0098, 0x005C,
+ 0x009C, 0x0FFF,
+ 0x00AC, 0x0200,
+ 0x00B4, 0x0800,
+ 0x00C0, 0x0400,
+ 0x00C4, 0x7200,
+ 0x00C8, 0x008D,
+ 0x00D0, 0x00C0,
+ END_SEQ, 0x0000,
+#else
0x0084, 0x0020,
0x0090, 0x0000,
0x0094, 0x0fff,
@@ -184,6 +238,7 @@ mDNIe_data_type mDNIe_Video_Warm[]=
0x0138, 0x7600,
0x0140, 0x0090,
END_SEQ, 0x0000,
+#endif
};
mDNIe_data_type mDNIe_Video_WO_Mode[]=
@@ -203,6 +258,22 @@ mDNIe_data_type mDNIe_Video_WO_Mode[]=
mDNIe_data_type mDNIe_Video_Cold[]=
{
+#ifdef CONFIG_VOODOO_MDNIE_VIDEOS_ALT_PRESETS
+ // Voodoo color : sharpness filter at minimum, unmodified color
+ // Soft mode. Useful to counter artifacts on bad or noisy videos
+ 0x0084, 0x0040,
+ 0x0090, 0x0000,
+ 0x0094, 0x0FFF,
+ 0x0098, 0x005C,
+ 0x009C, 0x0010,
+ 0x00AC, 0x0000,
+ 0x00B4, 0x0000,
+ 0x00C0, 0x0400,
+ 0x00C4, 0x7200,
+ 0x00C8, 0x008D,
+ 0x00D0, 0x00C0,
+ END_SEQ, 0x0000,
+#else
0x0084, 0x0020,
0x0090, 0x0000,
0x0094, 0x0fff,
@@ -214,6 +285,7 @@ mDNIe_data_type mDNIe_Video_Cold[]=
0x0140, 0x9400,
0x0148, 0x006D,
END_SEQ, 0x0000,
+#endif
};
mDNIe_data_type mDNIe_Video_CO_Mode[]=
@@ -119,9 +119,37 @@ static const unsigned short *p22Gamma_set[] = {
s6e63m0_22gamma_290cd,
s6e63m0_22gamma_300cd,//24
};
-
-
+#endif
+
static const unsigned short *p19Gamma_set[] = {
+
+#ifdef CONFIG_VOODOO_COLOR_GAMMA_22_ONLY
+ s6e63m0_22gamma_30cd,//0
+ s6e63m0_22gamma_40cd,
+ s6e63m0_22gamma_70cd,
+ s6e63m0_22gamma_90cd,
+ s6e63m0_22gamma_100cd,
+ s6e63m0_22gamma_110cd, //5
+ s6e63m0_22gamma_120cd,
+ s6e63m0_22gamma_130cd,
+ s6e63m0_22gamma_140cd,
+ s6e63m0_22gamma_150cd,
+ s6e63m0_22gamma_160cd, //10
+ s6e63m0_22gamma_170cd,
+ s6e63m0_22gamma_180cd,
+ s6e63m0_22gamma_190cd,
+ s6e63m0_22gamma_200cd,
+ s6e63m0_22gamma_210cd, //15
+ s6e63m0_22gamma_220cd,
+ s6e63m0_22gamma_230cd,
+ s6e63m0_22gamma_240cd,
+ s6e63m0_22gamma_250cd,
+ s6e63m0_22gamma_260cd, //20
+ s6e63m0_22gamma_270cd,
+ s6e63m0_22gamma_280cd,
+ s6e63m0_22gamma_290cd,
+ s6e63m0_22gamma_300cd,//24
+#else
s6e63m0_19gamma_30cd, //0
//s6e63m0_19gamma_50cd,
s6e63m0_19gamma_40cd,
@@ -149,66 +177,9 @@ static const unsigned short *p19Gamma_set[] = {
s6e63m0_19gamma_280cd,
s6e63m0_19gamma_290cd,
s6e63m0_19gamma_300cd, //24
+#endif
};
-#else // Modify NTTS1
-static const unsigned short *p22Gamma_set[] = {
- s6e63m0_22gamma_30cd, //0
- s6e63m0_22gamma_40cd,
- s6e63m0_22gamma_50cd,
- s6e63m0_22gamma_60cd,
- s6e63m0_22gamma_70cd,
- s6e63m0_22gamma_80cd, //5
- s6e63m0_22gamma_90cd,
- s6e63m0_22gamma_100cd,
- s6e63m0_22gamma_110cd,
- s6e63m0_22gamma_120cd,
- s6e63m0_22gamma_130cd, //10
- s6e63m0_22gamma_140cd,
- s6e63m0_22gamma_150cd,
- s6e63m0_22gamma_160cd,
- s6e63m0_22gamma_170cd,
- s6e63m0_22gamma_180cd, //15
- s6e63m0_22gamma_190cd,
- s6e63m0_22gamma_200cd,
- s6e63m0_22gamma_210cd,
- s6e63m0_22gamma_220cd,
- s6e63m0_22gamma_230cd, //20
- s6e63m0_22gamma_240cd,
- s6e63m0_22gamma_260cd,
- s6e63m0_22gamma_280cd,
- s6e63m0_22gamma_300cd, //24
-};
-
-static const unsigned short *p19Gamma_set[] = {
- s6e63m0_19gamma_30cd, //0
- s6e63m0_19gamma_40cd,
- s6e63m0_19gamma_50cd,
- s6e63m0_19gamma_60cd,
- s6e63m0_19gamma_70cd,
- s6e63m0_19gamma_80cd, //5
- s6e63m0_19gamma_90cd,
- s6e63m0_19gamma_100cd,
- s6e63m0_19gamma_110cd,
- s6e63m0_19gamma_120cd,
- s6e63m0_19gamma_130cd, //10
- s6e63m0_19gamma_140cd,
- s6e63m0_19gamma_150cd,
- s6e63m0_19gamma_160cd,
- s6e63m0_19gamma_170cd,
- s6e63m0_19gamma_180cd, //15
- s6e63m0_19gamma_190cd,
- s6e63m0_19gamma_200cd,
- s6e63m0_19gamma_210cd,
- s6e63m0_19gamma_220cd,
- s6e63m0_19gamma_230cd, //20
- s6e63m0_19gamma_240cd,
- s6e63m0_19gamma_260cd,
- s6e63m0_19gamma_280cd,
- s6e63m0_19gamma_300cd, //24
-};
-#endif
-
#ifdef CONFIG_FB_S3C_TL2796_ACL
static const unsigned short *ACL_cutoff_set[] = {
acl_cutoff_off, //0
@@ -238,7 +209,7 @@ static struct s3cfb_lcd s6e63m0 = {
.p_width = 52,
.p_height = 86,
.bpp = 24,
- .freq = 72,
+ .freq = 74,
.timing = {
.h_fp = 16,

0 comments on commit fe98bd7

Please sign in to comment.