全志A20平臺實現VGA和HDMI雙屏同顯

1)sys_config.fex中配置如下:
配置VGA 1024x768輸出
disp_init_enable = 1
disp_mode = 0


screen0_output_type = 4
screen0_output_mode = 4


screen1_output_type = 1
screen1_output_mode = 4




2)請把sys_config.fex中的fb0_scaler_mode_enable = 1改爲fb0_scaler_mode_enable = 0;


3)android/system/core/init/init.c  console_init_action 函數註釋掉這一行 //init_initdisplay();


4)android\frameworks\base\services\java\com\android\server \system\SystemServer.java 
中對熱插拔檢測和輸出模式的控制全部屏蔽掉


5)android\frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\policy\DisplayController.java 
中控制顯示輸出的策略模式由mDispHotPolicy = new HomletHotPlug()改成mDispHotPolicy = new StatusBarPadHotPlug()


6)設置中切換HDMI
android/device/softwinner/common/packages/TvdSettings/src/com/android/settings/DisplaySettings.java
switchDispMode函數
-               if (displayManager.getDisplayOutputType(0) != item.mOutputType
-                               || displayManager.getDisplayOutputFormat(0) != item.mFormat) {
+               if (displayManager.getDisplayOutputType(1) != item.mOutputType
+                               || displayManager.getDisplayOutputFormat(1) != item.mFormat) {
                        // displayManager.setDisplayOutputType(0, item.mOutputType,
                        // item.mFormat);
-                       displayManager.setDisplayParameter(0, item.mOutputType,
+                       displayManager.setDisplayParameter(1, item.mOutputType,
                                        item.mFormat);
+                       //displayManager
+                       //              .setDisplayMode(DisplayManagerAw.DISPLAY_MODE_SINGLE_FB_GPU);
                        displayManager
-                                       .setDisplayMode(DisplayManagerAw.DISPLAY_MODE_SINGLE_FB_GPU);
+                                       .setDisplayMode(DisplayManagerAw.DISPLAY_MODE_DUALSAME);
                        // 設置音頻輸出模式 




設置中的切邊
--- a/packages/TvdSettings/src/com/android/settings/DisplayTrimmingPreference.java
+++ b/packages/TvdSettings/src/com/android/settings/DisplayTrimmingPreference.java
@@ -112,7 +112,7 @@ public class DisplayTrimmingPreference extends SeekBarDialogPreference implement
                return ret;
     }
     private void setDisplayPercent(int value) {
-        mDisplayManagerAw.setDisplayAreaPercent(0,value);
+        mDisplayManagerAw.setDisplayAreaPercent(1,value);^M
     }


設置中的飽和度
--- a/packages/TvdSettings/src/com/android/settings/SaturationPreference.java
+++ b/packages/TvdSettings/src/com/android/settings/SaturationPreference.java
@@ -85,7 +85,7 @@ public class SaturationPreference extends SeekBarDialogPreference implements
                 Settings.System.COLOR_SATURATION, value);
     }
     private void setSaturation(int saturation) {
-        mDisplayManagerAw.setDisplaySaturation(0,saturation);
+        mDisplayManagerAw.setDisplaySaturation(1,saturation);^M
     }


設置中的亮度
--- a/packages/TvdSettings/src/com/android/settings/TVBrightnessPreference.java
+++ b/packages/TvdSettings/src/com/android/settings/TVBrightnessPreference.java
@@ -152,7 +152,7 @@ public class TVBrightnessPreference extends SeekBarDialogPreference implements
 
         DisplayManagerAw dm = (DisplayManagerAw) getContext().getSystemService(Context.DISPLAY_SERVICE_AW);
         if (dm != null) {
-            dm.setDisplayBright(0,brightness);
+            dm.setDisplayBright(1,brightness);
         }
     }


設置中的對比度
--- a/packages/TvdSettings/src/com/android/settings/ContrastPreference.java
+++ b/packages/TvdSettings/src/com/android/settings/ContrastPreference.java
@@ -90,7 +90,7 @@ public class ContrastPreference extends SeekBarDialogPreference implements
                 Settings.System.COLOR_CONTRAST,value);
     }
     private void setContrast(int Contrasrt) {
-        mDisplayManagerAw.setDisplayContrast(0,Contrasrt);
+        mDisplayManagerAw.setDisplayContrast(1,Contrasrt);^M
     }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章