Device Tree Configuration
A DTS/DTSI file is used to store all the device tree configuration.
vout DTS Port
In the file
starfive_devkits.dts, to configure
vout dts port, you can find the device tree
configuration of vout DSI as the following code
block:/u-boot/arch/riscv/dts/starfive_devkits.dts
&dc8200 {
status = "okay";
vopb_out: port {
#address-cells = <1>;
#size-cells = <0>;
vopb_out_mipi: endpoint@0 {
reg = <0>;
remote-endpoint = <&mipi_in_vopb>;
};
vopb_out_hdmi: endpoint@1 {
reg = <1>;
remote-endpoint = <&hdmi_in_vopb>;
};
};
};
&mipi_dsi0 {
status = "okay";
starfive,panel = <&seeed_panel>;
data-lanes-num = <1>;
status = "okay";
ports {
mipi_in: port {
#address-cells = <1>;
#size-cells = <0>;
mipi_in_vopb: endpoint@0 {
reg = <0>;
remote-endpoint = <&vopb_out_mipi>;
};
};
};
};
&hdmi{
pinctrl-names = "default";
pinctrl-0 = <&hdmi_pins>;
status = "okay";
ports {
hdmi_in: port {
#address-cells = <1>;
#size-cells = <0>;
hdmi_in_vopb: endpoint@0 {
reg = <0>;
remote-endpoint = <&vopb_out_hdmi>;
};
};
};
}; The following list provides explanations for the
parameters included in the above code block. - status: The work status of the LCD module. To enable the module, set this bit as "okay" or to disable the module, set this bit as "disabled".
- reg: Register base address "0x295e0000" and range "0x10000".
- port: The port(s) used by the LCD driver.
- data-lanes-num: The number of data lanes.
I2C2
In the file
jh7110-devkits.dts, to configure
lt8911exb, the lt8911exb
dts port should be added into i2c2. You can find
the device tree configuration of i2c2 as the
following code
block:linux/arch/riscv/boot/dts/starfive/jh7110-devkits.dts:
&i2c2 {
clock-frequency = <100000>;
i2c-sda-hold-time-ns = <300>;
i2c-sda-falling-time-ns = <510>;
i2c-scl-falling-time-ns = <510>;
auto_calc_scl_lhcnt;
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins>;
status = "okay";
lt8911exb_i2c@29 {
compatible = "lontium,lt8911exb";
reg = <0x29>;
reset-gpio = <&gpio 41 1>;
pwm-gpio = <&gpio 33 1>;
bl-gpio = <&ext_gpio 6 GPIO_ACTIVE_LOW>;
port {
lt8911exb_in: endpoint {
remote-endpoint = <&dsi0_output>;
};
};
};
};In the above code block, the parameters of pinctrl-names and
pinctrl-0 are used to configure the i2c2
pin configuration settings.
&MIPI DST
In the file
jh7110-devkits.dts, configure remote-end point for
connecting DSI and panel. You can find the device tree configuration
of &MIPI DST as the following code
block:linux/arch/riscv/boot/dts/starfive/jh7110-devkits.dts:
&mipi_dsi {
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
#address-cells = <1>;
#size-cells = <0>;
dsi0_output: endpoint@0 {
reg = <0>;
remote-endpoint = <<8911exb_in>;
};
dsi1_output: endpoint@1 {
reg = <1>;
remote-endpoint = <&panel_dsi_port>;
};
dsi2_output: endpoint@2 {
reg = <2>;
remote-endpoint = <&radxa_in>;
};
};
port@1{
reg = <1>;
dsi_in_port: endpoint {
remote-endpoint = <&mipi_out>;
};
};
};
};