Lichee RV 86 Panel

From linux-sunxi.org
Jump to navigation Jump to search

This page describes the Sipeed RV86 touch screen LCD panel. This panel comes as 480x480 / 720x720 variants.

Status

This panel works with Vendor-provided kernel images.

On the mainline kernel, the kernel uses the sun4i-drm driver.

Kernel Messages

The main line kernel will output this, during boot:

sun4i-drm display-engine: Adding to iommu group 0
sun4i-drm display-engine: bound 5100000.mixer (ops 0xffffffff80c5f628)
sun4i-drm display-engine: bound 5200000.mixer (ops 0xffffffff80c5f628)
sun4i-drm display-engine: bound 5460000.tcon-top (ops 0xffffffff80c63ca8)
sun4i-drm display-engine: bound 5461000.lcd-controller (ops 0xffffffff80c5c6d8)
sun4i-drm display-engine: bound 5470000.lcd-controller (ops 0xffffffff80c5c6d8)
[drm] Initialized sun4i-drm 1.0.0 20150629 for display-engine on minor 0
sun4i-drm display-engine: [drm] fb0: sun4i-drmdrmfb frame buffer device

The vendor kernel does not have any sun4i-drm messages. In fact, it does not use DRM at all. Instead it merely reports on hdmi:

HDMI 2.0 driver init start!
boot_hdmi=false
ERROR: pinctrl_get for HDMI2.0 DDC fail
HDMI2.0 module init end
hdmi_hpd_sys_config_release

Kernel Configuration

The vendor supplied kernel has these configuration options set:

#
# Video support for sunxi
#
CONFIG_DISP2_SUNXI=y
CONFIG_SUNXI_DISP2_FB_DISABLE_ROTATE=y
CONFIG_HDMI2_DISP2_SUNXI=y
CONFIG_AW_PHY=y
CONFIG_HDMI2_HDCP_SUNXI=y
CONFIG_HDMI2_CEC_SUNXI=y
CONFIG_DISP2_SUNXI_DEBUG=y
CONFIG_DISP2_LCD_ESD_DETECT=y
#
# LCD panels select
#
CONFIG_LCD_SUPPORT_ST7701S_RGB=y
CONFIG_LCD_SUPPORT_NV3052C_RGB=y
CONFIG_LCD_SUPPORT_INET_DSI_PANEL=y
CONFIG_LCD_SUPPORT_ST7789V_CPU=y
CONFIG_LCD_SUPPORT_TFT08006=y
#
# Display engine feature select
#
CONFIG_DISP2_SUNXI_SUPPORT_SMBL=y
CONFIG_DISP2_SUNXI_SUPPORT_ENAHNCE=y
#
# Backlight & LCD device support
#
# CONFIG_LCD_CLASS_DEVICE is not set
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_GENERIC=y

NOTE: These configuration options are not available in the mainline kernel.

Frame Buffer

The fbset tool will report this on the framebuffer device:

$ sudo fbset -i

mode "480x480"
    geometry 480 480 480 480 32
    timings 0 0 0 0 0 0 0
    accel true
    rgba 8/16,8/8,8/0,0/0
endmode

Frame buffer device information:
    Name        : sun4i-drmdrmfb
    Address     : 0
    Size        : 921600
    Type        : PACKED PIXELS
    Visual      : TRUECOLOR
    XPanStep    : 1
    YPanStep    : 1
    YWrapStep   : 0
    LineLength  : 1920
    Accelerator : No

Compare this with the vendor-provided Linux sipeed 5.4.61, that has a working display:

$ sudo fbset -i

mode "480x480-60"
    # D: 19.000 MHz, H: 31.046 kHz, V: 59.704 Hz
    geometry 480 480 480 960 32
    timings 52631 48 72 14 22 12 4
    rgba 8/16,8/8,8/0,8/24
endmode

Frame buffer device information:
    Name        : 
    Address     : 0xffe00000
    Size        : 1843200
    Type        : PACKED PIXELS
    Visual      : TRUECOLOR
    XPanStep    : 1
    YPanStep    : 1
    YWrapStep   : 0
    LineLength  : 1920
    Accelerator : No

Note that the fb device is unnamed in this case.