14 May, 2020
1 commit
-
Found below warning in API_AVI.c by using gcc 9.2 to build iMX8MQ EVK
drivers/video/imx/hdmi/hdp/API_AVI.c: In function ‘cdn_api_set_avi’:
drivers/video/imx/hdmi/hdp/API_AVI.c:184:8: warning: array subscript 16
is outside array bounds of ‘unsigned int[4]’ [-Warray-bounds]
184 | packet[16] = packet_pb12;
| ~~~~~~^~~~
drivers/video/imx/hdmi/hdp/API_AVI.c:74:15: note: while referencing ‘packet_buf’
74 | unsigned int packet_buf[18 / sizeof(unsigned int)];
| ^~~~~~~~~~
drivers/video/imx/hdmi/hdp/API_AVI.c:185:8: warning: array subscript 17
is outside array bounds of ‘unsigned int[4]’ [-Warray-bounds]
185 | packet[17] = packet_pb13;
| ~~~~~~^~~~
drivers/video/imx/hdmi/hdp/API_AVI.c:74:15: note: while referencing ‘packet_buf’
74 | unsigned int packet_buf[18 / sizeof(unsigned int)];
| ^~~~~~~~~~There are two array overflow issues in the codes:
1. The packet array size is not correct. The total buf needs 18 bytes,
but the array size is only 4 words (16 bytes).
2. When passing the packet array to cdn_api_infoframeset, the size should
be words size, but it uses a wrong packet length which is calculated
in bytesSigned-off-by: Ye Li
Reviewed-by: Peng Fan
(cherry picked from commit 287a4b7816a34e41f3ca7dd12b3e99aa46bed71e)
13 May, 2020
1 commit
-
When HDMI FW is not loaded by ROM, for example uuu download, or without FW
in boot image. The DCSS driver still disable HDMI and shut itself, this causes
hang before booting kernel.Add a flag for indicating whether the display is enabled, and check it in
device remove.Signed-off-by: Ye Li
Reviewed-by: Peng Fan
(cherry picked from commit 702b236c2a0f519f8e1cea5514e3723693f7c9b5)
12 May, 2020
1 commit
-
The end of line is missed in the Kconfig and causes issues that
VIDEO_BRIDGE config can't be sed out on some server.Signed-off-by: Ye Li
(cherry picked from commit 1b1982acfa8562dbe9687e1f9fccdd670cdce363)
11 May, 2020
13 commits
-
Add driver the northwest MIPI DSI controller which is used on iMX7ULP.
Signed-off-by: Ye Li
(cherry picked from commit 612b0008a8f480409f6c19845d6ac5778208fbb0) -
iMX8MP introduces a new LCDIF named LCDIFv3 as a video controller to
output data to mipi dsiSigned-off-by: Ye Li
(cherry picked from commit b2d1aac50cd91af4752f424991bbbdba9e1df82a) -
iMX8MP does not have dispmix resets, so allowing not have this
property.Signed-off-by: Ye Li
(cherry picked from commit d39e90277acc47d02fbe6458e7a03280b72c9158) -
Update mxsfb for LCD video driver, add mipi dsi driver,
ADV7535 and raydium-rm67191 panel drivers.Signed-off-by: Ye Li
(cherry picked from commit 161c5785d2b8b3046bd673037d070fdbda61fb7c) -
Add DCSS video driver and HDMI display driver to adapt with HDP library
Signed-off-by: Ye Li
(cherry picked from commit 3188ceb5ab53627769f028ad9589e0fd0d5da406) -
Add video driver for DPU, display driver for LVDS and bridge driver
for it6263 LVDS to HDMI convertorSigned-off-by: Ye Li
(cherry picked from commit 65f54f7a7562a005177281a8bb397774b676ad2b) -
To support multiple display or bridge devices, enable the flag,
so we can assign the req seq via DTB aliasSigned-off-by: Ye Li
(cherry picked from commit f1edc48d02843030355d5c2877049162a4c78356) -
Adding new IMXDPUV1 (aka Seeris, Iris-lite) display control driver.
Signed-off-by: Oliver Brown
Signed-off-by: Ye Li
(cherry picked from commit 43541cba14f851c6eebaa84becd42967f94a9cfd)
(cherry picked from commit 02b99a8ce3ed8f7ab1798b946c10b614ae386924)
(cherry picked from commit 77cce162b55aa1abf49675600b6b3f4aca626f61)
(cherry picked from commit 1871533123be12cf23671f10f90bf9500b99a4d8) -
Using imx directory to place all new iMX display drivers and libraries.
Signed-off-by: Ye Li
(cherry picked from commit 8d4479a73553dd6fac6cd427d7768ff346df9827) -
Current operations structure has provided disable callback, but
there is no API from dsi_host uclass to use it.Add this disable host interface, so that dsi bridge can call it
to disable hostSigned-off-by: Ye Li
(cherry picked from commit f051226ae38d6035c52629fe12f3d661c9891be1) -
Update video bmp codes to support 8 bits BMP to 32 bits conversion
so that we can display 8 bits logo on 32 bits displaySigned-off-by: Ye Li
(cherry picked from commit e3aa9194b7ee98841b5432dd8189caacfd56068e) -
Fix the bug that multiple lines wraps to overwrite logo bmp
Signed-off-by: Ye Li
(cherry picked from commit 66410570927ba44e9fdfd6874ee55e8b33c2d14d) -
The video link framework bases a port-endpoint gragh in DTB to
connect the video components in uclass like: video, display, bridge,
and panel.Using the port-endpoint gragh, we manage multiple video link and
user can select one of them for splash screen.Signed-off-by: Ye Li
(cherry picked from commit d6e6b1293f89b8a26033ac2f82151985f70e4036)
27 Apr, 2020
7 commits
-
Port the HDMI lib frrom imx_v2019.04 u-boot, which is used for
HDP TX/RX firmware loading and HDMI displaySigned-off-by: Ye Li
-
Add the fuse checking in drivers, when the module is disabled in fuse,
the driver will not work.Changed drivers: BEE, GPMI, APBH-DMA, ESDHC, FEC, QSPI, ECSPI, I2C,
USB-EHCI, GIS, LCDIF and EPDC.Signed-off-by: Ye Li
(cherry picked from commit 1704e116f9b39aeb99201919a18bc2b1e19a980e)
(cherry picked from commit 2d3b5df8530cd5ef883750378838dea7c40259af)
(cherry picked from commit 6e8c9ae136bee8ec0121c1db4b935510caad09db)
(cherry picked from commit 99b54a6965904a879afdb6883a519de726cb4e96) -
Add gis module, current gis is support vadc input.
Add power down function to lcdif driver.Signed-off-by: Sandor Yu
Signed-off-by: Ye.Li
(cherry picked from commit a007b00dd8ef9f773dfdebef0b1deb0990281793)
(cherry picked from commit a31dcdafb0963381e7213c59f79a340ef27ec2e2)
(cherry picked from commit 02dfe2e4af5f51d39a51542fb0e81f93faf505bc)
(cherry picked from commit a8e94954d8ccc44c41d77a5e356d6a99b3d45649)
(cherry picked from commit 0864a17afbc93fed72273c7d7d3be0fc8681e794)
(cherry picked from commit 20918f8e062111ca11bc9e3b82732145792c87c2) -
Add pxp module.
Support csc between YUV444 and RGB888 and scaling.Signed-off-by: Sandor Yu
Signed-off-by: Ye.Li
(cherry picked from commit 4c6e1f9ed1b2f5c98a34502b44b6414593fdd290)
Signed-off-by: Peng Fan
(cherry picked from commit 92295fafcdbaa3a3fe0a63ede15f896dfc9ce0b0)
(cherry picked from commit 096a63e81a8c78b3f8bbc65a9d418aa032d62231)
(cherry picked from commit b24cce0ad3ec9f386ca7aa231d8a2db33462f092)
(cherry picked from commit 40c2e2c2160ac23f89a682c965ebea6488b8bffc)
(cherry picked from commit 89bf4fac9052bf5d140a53670535285a8ca0a422) -
Add csi module.
Signed-off-by: Sandor Yu
Signed-off-by: Ye.Li
(cherry picked from commit 854ae26758ec8132ef749b98645dd2f43b84e5e2)
Signed-off-by: Peng Fan
(cherry picked from commit 5f133bd9420109951fd03bd5168801327e929c3b)
(cherry picked from commit 16960e59fa3334162d2e2212ee4bc1e7f0c420a3)
(cherry picked from commit bc0639ed8f5069f198067916caf088908492329d)
(cherry picked from commit c7232ae1c27ef561d2235bb4db837ef9805f86d2)
(cherry picked from commit 039bb76082a16b0e43e818a4d9df68ab4320ede5)
(cherry picked from commit 4048b2cc1932a51f7f8c32ddf21bcf5ebd885a4f) -
Add vadc module.
Both PAL and NTSC mode can work.Signed-off-by: Sandor Yu
Signed-off-by: Ye.Li
(cherry picked from commit 03c31ae30c1e81c99f6824221e4801433445e04a)
Signed-off-by: Peng Fan
(cherry picked from commit b5d776ffc1519c16091736445b3217ffb7fcd7db)
(cherry picked from commit 2377eb9fd299b76888f11faf76383b68e77bcc8a)
(cherry picked from commit 808d447235bd0f9134c7d00fa480cd55b4e0426e)
(cherry picked from commit 99977a1152981247a84252dba1d1cf55c0406b08)
(cherry picked from commit ed0e7a8081c1a0447c0df72d36937a0a0c5c8a49) -
Support EPDC.
E-Ink feature is supported by i.MX6DL/SL/SLL/ULL and i.MX7D.This driver supports user defined logo file, if there is no logo file, it will
draw a black border around a white screen.If need to enable EPDC, a waveform file is required to let all
work.Since we need LCD_MONOCHROME mode for EPDC, we introduce LCD_MONOCHROME
support.Please refer to Linux Reference Manual for how to flash WAVEFORM file.
Signed-off-by: Peng Fan
Signed-off-by: Robby Cai
Signed-off-by: Nitin Garg
Signed-off-by: Ye.Li
(cherry picked from commit a7244f279cc3c3994bcd103f5e9a183b1075ae71)
(cherry picked from commit 21bf1c38b7d75c31875fb02a972c458f25d9c33a)
(cherry picked from commit 237742f73998b35dd896592e19f1e119e72baa71)
23 Apr, 2020
2 commits
-
Add a new interface "mxs_lcd_panel_setup" to setup fb parameters and
specifies the LCDIF controller for multiple controllers of iMX6SX.
Pass fb parameters via "videomode" env remains work if the new interface
is not called before video initialization.Modify LCDIF clock interface "mxs_set_lcdclk" to support multiple
LCDIF controllers on iMX6SX.Signed-off-by: Ye.Li
Signed-off-by: Peng Fan
(cherry picked from commit d7f49b9378547c3a57b96bcdb907fc44616beb3d)
(cherry picked from commit e1343191b9de227c582847e7eeb5ce9238be0754)
(cherry picked from commit 9632ebeccc34d663e21bd19f2fe62de51947296e)
Signed-off-by: Ye Li
(cherry picked from commit 948c5c95e87a47bb3a80c8e67b67fe70e1e4a569)
(cherry picked from commit 4966b5b61a4034ed4b9ec0d4de3fe384edddbb3a) -
There are some integer to pointer convert. To support 64 bits system,
change the unsigned int to unsigned long.Signed-off-by: Ye Li
(cherry picked from commit c3b5c2df452eac82a970ba304e94550be8e27335)
(cherry picked from commit 8a2330424ce8dff9ba9e51ccf74fa600ea93aeb1)
(cherry picked from commit a39800dd920f7196a960cb7fbe51edaf0d753b47)
02 Apr, 2020
2 commits
-
The default resolution for rockchip display is 1920x1080
which failed to work on 4K HDMI out displays on rk3399.So, mark the default resolution as 3480x2160 for rk3399
HDMI out.This would work all the hdmi display resolutions till
4K.Signed-off-by: Jagan Teki
Reviewed-by: Kever Yang
Tested-by: Peter Robinson -
VOP display endpoint pipeline configuration differs
between rk3288 vs rk3399.These VOP pipeline configuration depends on how the
different display interfaces connected in sequence to
IN and OUT ports like for,RK3288:
vopb_out: port {
#address-cells = ;
#size-cells = ;
vopb_out_edp: endpoint@0 {
reg = ;
remote-endpoint = ;
};
vopb_out_hdmi: endpoint@1 {
reg = ;
remote-endpoint = ;
};
vopb_out_lvds: endpoint@2 {
reg = ;
remote-endpoint = ;
};
vopb_out_mipi: endpoint@3 {
reg = ;
remote-endpoint = ;
};
};RK3399:
vopb_out: port {
#address-cells = ;
#size-cells = ;
vopb_out_edp: endpoint@0 {
reg = ;
remote-endpoint = ;
};
vopb_out_mipi: endpoint@1 {
reg = ;
remote-endpoint = ;
};
vopb_out_hdmi: endpoint@2 {
reg = ;
remote-endpoint = ;
};
vopb_out_mipi1: endpoint@3 {
reg = ;
remote-endpoint = ;
};
vopb_out_dp: endpoint@4 {
reg = ;
remote-endpoint = ;
};
};here, HDMI interface has endpoint 1 in rk3288 and 2 in rk3399.
The rockchip vop driver often depends on this determined endpoint
number and stored in vop_mode. So based on this vop_mode the bpp
and pin polarity would configure on detected display interface.Since, the existing driver using rk3288 vop mode settings enabling
the same will result wrong display interface configuration for rk3399.Add the patch for fixing these vop modes for rk3399.
Signed-off-by: Jagan Teki
Reviewed-by: Kever Yang
Tested-by: Peter Robinson
03 Mar, 2020
1 commit
-
Add driver flag to skip power domain disabling on device removal.
Fixes: 52edfed65de9 ("dm: core: device: switch off power domain after device removal")
Signed-off-by: Anatolij Gustschin
Acked-by: Neil Armstrong
Tested-by: Guillaume La Roque
11 Feb, 2020
2 commits
-
sandbox conversion to SDL2
TPM TEE driver
Various minor sandbox video enhancements
New driver model core utility functions -
- fix Coverity CID 280902 issue in vid_console_color()
- fix vid_console_color() build warning
- fix for mxsfb to ensure correct Linux logo position
07 Feb, 2020
1 commit
-
This partially reverts changes by commit 2cc393f32fd9
("video: make BPP and ANSI configs optional") since it
caused issues with other boards (missing LCD console
output on pinebook, x86 platform or sandbox). Enable
all disabled options again and opt out of not supported
color depth in board defconfigs.Signed-off-by: Anatolij Gustschin
Reported-by: Vagrant Cascadian
06 Feb, 2020
6 commits
-
At present dm/device.h includes the linux-compatible features. This
requires including linux/compat.h which in turn includes a lot of headers.
One of these is malloc.h which we thus end up including in every file in
U-Boot. Apart from the inefficiency of this, it is problematic for sandbox
which needs to use the system malloc() in some files.Move the compatibility features into a separate header file.
Signed-off-by: Simon Glass
-
At present devres.h is included in all files that include dm.h but few
make use of it. Also this pulls in linux/compat which adds several more
headers. Drop the automatic inclusion and require files to include devres
themselves. This provides a good indication of which files use devres.Signed-off-by: Simon Glass
Reviewed-by: Anatolij Gustschin -
Add a new device-tree property to control the colour depth. At present we
support 16bpp and 32bpp.While we are here, update the code to use livetree.
Signed-off-by: Simon Glass
Reviewed-by: Anatolij Gustschin -
On high-DPI displays U-Boot's LCD window can look very small. Add a
-K flag to expand it to make things easier to read, while still using
the existing resolution internally.Signed-off-by: Simon Glass
Reviewed-by: Anatolij Gustschin -
For sandbox we want to have the maximum possible build coverage, so enable
all colour depths for video.Signed-off-by: Simon Glass
Reviewed-by: Anatolij Gustschin -
At present only a 16bpp display is supported for Truetype fonts. Add
support for 32bpp also since this is quite common.Signed-off-by: Simon Glass
Reviewed-by: Anatolij Gustschin
05 Feb, 2020
2 commits
-
Add DM_FLAG_OS_PREPARE flag to ensure that the driver's
remove() callback is invoked before booting the kernel.
This is required to stop the LCDIF controller. This was
the behaviour with old driver without DM_VIDEO support.
Without stopping the LCDIF we sometimes observe incorrect
Linux logo position.Fixes: ae0760584b38 ("imx: mx6ul_14x14_evk: convert to DM_VIDEO")
Signed-off-by: Anatolij Gustschin
Reported-by: Fabio Estevam
Reviewed-by: Fabio Estevam -
Fix:
>>> CID 280902: Control flow issues (MISSING_BREAK)
>>> The case for value "VIDEO_BPP32" is not terminated
>>> by a 'break' statement.Also fix
error: control reaches end of non-void function [-Werror=return-type]Reported-by: Tom Rini
Signed-off-by: Anatolij Gustschin
Reviewed-by: Simon Glass
30 Jan, 2020
1 commit
-
Few of the rockchip family SoC atleast rk3288,
rk3399 are sharing some cru register bits so
adding common code between these SoC families
would require to include both cru include files
that indeed resulting function declarations error.So, create a common cru include as cru.h then
include the rk3399 arch cru include file and move
the common cru register bit definitions into it.The rest of rockchip cru files will add it in future.
Reviewed-by: Kever Yang
Signed-off-by: Jagan Teki