Usage Guide
  • 03 May 2024
  • 2 Minutes to read
  • Dark
    Light
  • PDF

Usage Guide

  • Dark
    Light
  • PDF

Article summary

Introduction

This article shows you how to get started using the VIZIONAPNEL.
The VIZIONPANEL is a device transform MIPI-DSI to FPD-LINK III protocol to panel display.
These development kits can support this function:

  • WIZARD-EDM-G-IMX8M-PLUS
  • WIZARD-AXON-IMX8M-PLUS
  • TEP-IMX8MP
  • TI-TDA4-VM

The VIZIONPANEL cantains 3 part:

  1. One of them transform MIPI-DSI to FDP-LINK III protocol.
    Here are development kits of this function:
Vizionpanel-AdaptorTEP-Vizionpanel-Adaptor
WIZARD-EDM-G-IMX8M-PLUSTEP-IMX8MP(built-in)
WIZARD-AXON-IMX8M-PLUS
TI-TDA4-VM(built-in)
  1. The other transform FDP-LINK III protocol to panel signal.
    Here are development kits of this function:
LVDS panelTTL panel
VLP3-1010-HDVLP3-0500-SD
VLP3-1500-XGAVLP3-0700-SD
VLP3-1560-WXGAVLP3-0800-SD
  1. HSD cable that connect each other.

When using the VIZIONPANEL, device tree and kernel must be at least v5.15.71.

Using demo-image

auto detection

Most of the VIZIONPANEL has the auto detection implemented in u-boot.
You can skip this process unless you got a problem.

using u-boot command to setup device-tree overlay

$ fatls mmc <mmcdev>
imx8mp-edm-g-wizard-vizionpanel-vl10112880.dtbo
imx8mp-tep-vizionpanel-vl10112880.dtbo
...
$ setenv dtoverlay <vizionpanel-dtbo-name>
Parameters

<mmcdev> can check using mmc list command

u-boot=> mmc list
FSL_SDHC: 1
FSL_SDHC: 2 (eMMC)

fill <vizionpanel-dtbo-name> follows the below chart:

Product name<vizionpanel-dtbo-name>
VLP3-1010-HDvizionpanel-vl10112880
VLP3-1500-XGAvizionpanel-vl15010276
VLP3-1560-WXGAvizionpanel-vl15613676
VLP3-0500-SDvizionpanel-vl508048
VLP3-0700-SDvizionpanel-vl708048
VLP3-0800-SDvizionpanel-vl808060

Manually Steps to enable pre-release driver:

  • Please modify your device DTS file or DTS overlay file to declare VIZIONPANEL device.
  • Please make sure your Kernel config has selected "CONFIG_DRM_TI_DS90UB94X" option.
  • Please compile the kernel and dts, and then update the kernel image, dtb, or dtbo files.

Kernel Configuration

Ensure that the kernel has the CONFIG_DRM_TI_DS90UB94X enabled, and rebuild the kernel.
Example of DTS overlay modification on WIZARD EDM-G platform is below:

WIZARD-EDM-G-IMX8M-PLUS + VIZIONPANEL + VLP3-1010-HD:

// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright 2020 TechNexion Ltd.
 *
 * Author: Richard Hu <richard.hu@technexion.com>
 *
 */

/dts-v1/;
/plugin/;

#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/gpio/gpio.h>

/ {
	fragment@0 {
		target-path = "/";
		__overlay__ {
			backlight_mipi {
				status = "okay";
			};
		};
	};

	fragment@1 {
		target = <&mipi_dsi>;
		__overlay__ {
			status = "okay";
			#address-cells = <1>;
			#size-cells = <0>;

			panel@0 {
				// panel description in panel-simple.c
				compatible = "tn,vizionpanel_10112880";
				reg = <0>;
				status = "okay";
			};
		};
	};

	fragment@2 {
		target = <&i2c5>;
		__overlay__ {
			#address-cells = <1>;
			#size-cells = <0>;
			status = "okay";

			exc80w46: touchscreen@2a {
				compatible = "eeti,exc80h60";
				pinctrl-names = "default";
				pinctrl-0 = <&pinctrl_mipi_touch_irq>, <&pinctrl_mipi_touch_reset>;
				reg = <0x2a>;
				interrupt-parent = <&gpio4>;
				interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
				reset-gpios = <&gpio4 6 GPIO_ACTIVE_LOW>;
				status = "okay";
			};

			fpdlink_dsi2lvds: ds90ub948@0c {
				compatible = "ti,ds90ub94x";
				reg = <0x0c>;
				status = "okay";
				pinctrl-names = "default";
				pinctrl-0 = <&pinctrl_gpio1>;
				reset-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
			};
		};
	};
};                                  

WIZARD-EDM-G-IMX8M-PLUS + VIZIONPANEL + VLP3-0500-SD:

TO DO

Usage (Example on WIZARD-EDM-G-IMX8M-PLUS)

  • Please use the UART port to connect to the uart console of the edm-g wb board, and prepare the UART terminal software, UART setting: 115200, 8N1
  • Please power up the WIZARD-EDM-G-IMX8M-PLUS board
  • After the WIZARD-EDM-G-IMX8M-PLUS is power up completed, you will see the login: prompt message on the UART terminal software, please enter root to log in to the system.
  • Type in the command below:
# dmesg | grep ds90ub94x

to confirm whether the ds90ub94x driver is started correctly, if it is started correctly, you should see a message similar to the following

ds90ub94x 4-000c: Using Single channel lvds
ds90ub94x 4-000c: ds90ub94x probe success with CRC_ERROR_COUNT = 0x0008
...
input: EETI EXC80H60 Touch Screen as /devices/platform/soc@0/30800000.bus/30ad0000.i2c/i2c-4/4-002a/input/input1

If the message you see is not like above, please check your DTS description, kernel config, or the process of compiling kernel/dtb/dtbo again for errors.


Was this article helpful?