qwe403482816 发表于 2018-6-13 16:48:32

rk3288 怎么在4.4以上的内核上把vga 显示打开

rk3288 怎么在4.4以上的内核上把vga 显示打开 ,firefly 下载的4.4.77 内核只有hdmi 有显示xrandr 也只能找到hdmi ,论坛上下载了个 ubuntu 16.04 vga 和hdmi 都有显示, 请问下 有没有人知道 怎么配置 内核 和设备数 。老版本内核 移植 这个驱动 是可以的 vga-connector.c   vga-encoder.c   

sheqw 发表于 2018-6-26 16:48:07

我在4.4上移植成功了。

浪里白条 发表于 2019-6-20 12:03:44

问下 ubuntu 16.04 vga 和hdmi 都有显示的固件还有吗?能否分享下?

kunyang_yt 发表于 2019-7-28 18:31:19

linux 内核配置:
diff --git a/arch/arm/boot/dts/rk3288-firefly.dtsi b/arch/arm/boot/dts/rk3288-firefly.dtsi
index 5ef6eae..2901659 100644
--- a/arch/arm/boot/dts/rk3288-firefly.dtsi
+++ b/arch/arm/boot/dts/rk3288-firefly.dtsi
@@ -103,6 +103,56 @@
             };
         };
   };
+   
+    vga_regulator: vga-regulator {
+      compatible = "regulator-fixed";
+      enable-active-high;
+      gpio = <&gpio7 2 GPIO_ACTIVE_HIGH>;
+      pinctrl-names = "default";
+      pinctrl-0 = <&vga_enabled_h>;
+      regulator-name = "vga_regulator";
+      regulator-always-on;
+      regulator-boot-on;
+    };
+   
+    vga_bridge: vga-bridge {
+      compatible = "adi,adv7123";
+      psave-gpios = <&gpio0 17 GPIO_ACTIVE_HIGH>;
+      rockchip,output = "rgb";
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      ports {
+            #address-cells = <1>;
+            #size-cells = <0>;
+
+            port@0 {
+                reg = <0>;
+                adv7123_in: endpoint {
+                  remote-endpoint = <&rgb_out>;
+                };
+            };
+
+            port@1 {
+                reg = <1>;
+                adv7123_out: endpoint {
+                  remote-endpoint = <&vga_in>;
+                };
+            };
+      };
+    };
+
+    vga {
+      compatible = "vga-connector";
+      ddc-i2c-bus = <&i2c4>;
+
+         port {
+            vga_in: endpoint {
+                remote-endpoint = <&adv7123_out>;
+            };
+      };
+    };
+   

   dovdd_1v8: dovdd-1v8-regulator {
         compatible = "regulator-fixed";
@@ -175,6 +225,20 @@
          */
         reset-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>;
   };
+   
+    es8323-sound {
+      status = "okay";
+                compatible = "simple-audio-card";
+                simple-audio-card,name = "rockchip,es8323-codec";
+                simple-audio-card,format = "i2s";
+                simple-audio-card,mclk-fs = <512>;
+      simple-audio-card,cpu {
+                sound-dai = <&i2s>;
+      };
+      simple-audio-card,codec {
+                sound-dai = <&es8323>;
+      };
+    };

   sound {
         compatible = "simple-audio-card";
@@ -189,7 +253,8 @@
         compatible = "linux,spdif-dit";
         #sound-dai-cells = <0>;
   };
-
+      
+   
   vbat_wl: vcc_sys: vsys-regulator {
         compatible = "regulator-fixed";
         regulator-name = "vcc_sys";
@@ -292,6 +357,8 @@
         WIFI,host_wake_irq = <&gpio4 30 GPIO_ACTIVE_HIGH>;
         status = "okay";
   };
+   
+   
};

&cpu0 {
@@ -302,7 +369,7 @@
   vcc-supply = <&vdd_10>;
   vccio-supply = <&vcc_18>;
   force-hpd;
-    status = "okay";
+    status = "disabled";

   ports {
         edp_out: port@1 {
@@ -318,7 +385,30 @@
};

&edp_phy {
+    status = "disabled";
+};
+
+&lvds {
+      avdd1v0-supply = <&vdd10_lcd>;
+    avdd1v8-supply = <&vcc18_lcd>;
+    avdd3v3-supply = <&vcca_33>;
+    rockchip,data-mapping = "jeida";
+    rockchip,data-width = <24>;
+    rockchip,output = "rgb";
   status = "okay";
+
+    ports {
+      port@1 {
+            reg = <1>;
+            #address-cells = <1>;
+            #size-cells = <0>;
+
+            rgb_out: endpoint@0 {
+                reg = <0>;
+                remote-endpoint = <&adv7123_in>;
+            };
+      };
+    };
};

&emmc {
@@ -529,6 +619,20 @@

&i2c2 {
   status = "okay";
+    es8323: es8323@10 {
+      compatible = "everest,es8323";
+      reg = <0x10>;
+      spk-con-gpio = <&gpio0 10 GPIO_ACTIVE_HIGH>;
+      hp-det-gpio = <&gpio7 15 GPIO_ACTIVE_LOW>;
+      clock-names = "mclk";
+      clocks = <&cru SCLK_I2S0_OUT>;
+      #sound-dai-cells = <0>;
+    };
+};
+
+&i2s {
+    status = "okay";
+    #sound-dai-cells = <0>;
};

&i2c4 {
@@ -672,6 +776,12 @@
             rockchip,pins = <4 19 RK_FUNC_GPIO &pcfg_pull_none>;
         };
   };
+   
+    vga {
+      vga_enabled_h: vgaenabled-h {
+            rockchip,pins = <7 2 RK_FUNC_GPIO &pcfg_pull_none>;
+      };
+    };
};

&saradc {
diff --git a/arch/arm/configs/rockchip_linux_defconfig b/arch/arm/configs/rockchip_linux_defconfig
index a7efa72..b682042 100644
--- a/arch/arm/configs/rockchip_linux_defconfig
+++ b/arch/arm/configs/rockchip_linux_defconfig
@@ -303,16 +303,24 @@ CONFIG_VIDEO_TC35874X=y
CONFIG_VIDEO_IMX219=y
CONFIG_VIDEO_OV5647=y
CONFIG_DRM=y
+CONFIG_DRM_LOAD_EDID_FIRMWARE=y
CONFIG_DRM_ROCKCHIP=y
CONFIG_ROCKCHIP_DW_HDMI=y
CONFIG_ROCKCHIP_DW_MIPI_DSI=y
CONFIG_ROCKCHIP_ANALOGIX_DP=y
CONFIG_ROCKCHIP_INNO_HDMI=y
CONFIG_ROCKCHIP_LVDS=y
+CONFIG_ROCKCHIP_RGB=y
+CONFIG_DRM_BRIDGE=y
+CONFIG_DRM_DUMB_VGA_DAC=y
+CONFIG_DRM_PANEL=y
+CONFIG_DRM_KMS_HELPERy
+CONFIG_ROCKCHIP_DRM_BACKLIGHT=y
CONFIG_ROCKCHIP_RK3066_HDMI=y
CONFIG_DRM_UDL=y
CONFIG_DRM_PANEL_SIMPLE=y
CONFIG_DRM_DW_HDMI_I2S_AUDIO=y
+#CONFIG_LOGO=y
CONFIG_MALI400=y
# CONFIG_MALI400_PROFILING is not set
CONFIG_MALI_SHARED_INTERRUPTS=y
@@ -330,7 +338,25 @@ CONFIG_BACKLIGHT_PWM=y
CONFIG_RK_VCODEC=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_SOUND=y
+CONFIG_SOUND_OSS_CORE=y
+CONFIG_SOUND_OSS_CORE_PRECLAIM=y
CONFIG_SND=y
+CONFIG_SND_TIMER=y
+CONFIG_SND_PCM=y
+CONFIG_SND_PCM_ELD=y
+CONFIG_SND_PCM_IEC958=y
+CONFIG_SND_DMAENGINE_PCM=y
+CONFIG_SND_HWDEP=y
+CONFIG_SND_RAWMIDI=y
+CONFIG_SND_JACK=y
+CONFIG_SND_PCM_TIMER=y
+CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
+CONFIG_SND_MAX_CARDS=32
+CONFIG_SND_SUPPORT_OLD_API=y
+CONFIG_SND_PROC_FS=y
+CONFIG_SND_VERBOSE_PROCFS=y
+CONFIG_SND_RAWMIDI_SEQ=y
+CONFIG_SND_DRIVERS=y
CONFIG_SND_SEQUENCER=y
CONFIG_SND_SEQ_DUMMY=y
CONFIG_SND_HRTIMER=y
@@ -340,16 +366,24 @@ CONFIG_SND_DYNAMIC_MINORS=y
CONFIG_SND_USB_AUDIO=y
CONFIG_SND_SOC=y
CONFIG_SND_SOC_ROCKCHIP=y
+CONFIG_SND_SOC_ROCKCHIP_I2S=y
CONFIG_SND_SOC_ROCKCHIP_SPDIF=y
+CONFIG_SND_SOC_ROCKCHIP_HDMI_ANALOG=y
+CONFIG_SND_SOC_ROCKCHIP_HDMI_DP=y
CONFIG_SND_SOC_ROCKCHIP_MAX98090=y
CONFIG_SND_SOC_ROCKCHIP_RT5645=y
+CONFIG_SND_SOC_DW_HDMI_AUDIO=y
+CONFIG_SND_SOC_I2C_AND_SPI=y
CONFIG_SND_SOC_CX20810=y
CONFIG_SND_SOC_ES8323=y
+CONFIG_SND_SOC_HDMI_CODEC=y
CONFIG_SND_SOC_RT5616=y
CONFIG_SND_SOC_RT5640=y
CONFIG_SND_SOC_SPDIF=y
CONFIG_SND_SIMPLE_CARD=y
CONFIG_SOUND_PRIME=y
+CONFIG_I2C_HELPER_AUTO=y
+CONFIG_I2C_ALGOBIT=y
CONFIG_HID_BATTERY_STRENGTH=y
CONFIG_HIDRAW=y
CONFIG_UHID=y
@@ -450,6 +484,7 @@ CONFIG_PWM_ROCKCHIP=y
CONFIG_PHY_ROCKCHIP_USB=y
CONFIG_PHY_ROCKCHIP_INNO_USB2=y
CONFIG_PHY_ROCKCHIP_DP=y
+CONFIG_PHY_ROCKCHIP_INNO_MIPI_DPHY=y
CONFIG_PHY_ROCKCHIP_INNO_HDMI_PHY=y
CONFIG_ANDROID=y
CONFIG_NVMEM=y
页: [1]
查看完整版本: rk3288 怎么在4.4以上的内核上把vga 显示打开