Display Controller Configuration
Enable Display Output in Kernel menuconfig
Follow the steps below to enable the kernel menu configuration for the display
controller.
-
Under the root directory of freelight-u-sdk, run the following command to enter the kernel menu configuration GUI.
make linux-menuconfig -
Enter the Device Drivers menu.
-
Enter the Graphics support menu and do the following depending on your target output devices:
- For HDMI output, select the HDMI2.0 option.
- For MIPI output, select the StarFive MIPI DSI Select option.
- For RGB2HDMI output, enter the Direct Rendering Manager > I2C encoder or helper chips menu, and select the NXP Semiconductors TDA998X HDMI encoder option.
-
Save your change before you exit the kernel configuration dialog.
Enable modetest in menuconfig
Follow the steps below to install test programs:
- Under the root directory of freelight-u-sdk, type the
following command to enter the kernel menu configuration GUI.
make buildroot_initramfs-menuconfig - Enter the Target packages > Libraries > Graphics > libdrm menu.
- Select the Install test programs option, or you may
select all options under this menu.
Result: After you have completed all the above configuration, you can use the modetest tool in kernel for testing.
-
Save your change before you exit the kernel configuration dialog.
Board-level Display Output Configuration
The following code snippet In the file jh7110-common.dtsi
connects the DC8200 display controller to external video outputs on the board:
- HDMI
- LCD
- MIPI
&dc8200 {
status = "okay";
dc_out: port {
#address-cells = <1>;
#size-cells = <0>;
dc_out_dpi0: endpoint@0 {
reg = <0>;
remote-endpoint = <&hdmi_input0>;
};
dc_out_dpi1: endpoint@1 {
reg = <1>;
remote-endpoint = <&hdmi_in_lcdc>;
};
dc_out_dpi2: endpoint@2 {
reg = <2>;
remote-endpoint = <&mipi_in>;
};
};
};Parameter explanations:
- status = "okay";: Turns on the display controller.
- dc_out: port { ... }: The video output port for DC8200.
It has multiple endpoints to send video to different hardware:
- dc_out_dpi0: endpoint@0: Connects DC8200 channel 0 to HDMI controller 0.
- dc_out_dpi1: endpoint@1: Connects DC8200 channel 1 to LCD.
- dc_out_dpi2: endpoint@2: Connects DC8200 channel 1 to MIPI.