summaryrefslogtreecommitdiff
path: root/drivers/video
Commit message (Collapse)AuthorAgeLines
* MLK-13929-3 video: Update LCDIF driver to support MIPI-DSIYe Li2017-04-05-0/+43
| | | | | | | | | | The LCDIF provides video source for MIPI DSI host at DPI-2 interface. When the LCDIF Framebuffer driver is enabled, it uses the panel parameters setup by environments to create a panel device and register it to DSI host driver and then enable the DSI host. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 85659ea5ee975fa2d5fa7215e17a01f7006c39bf)
* MLK-13929-2 video: Add mipi panel driver for hx8363Ye Li2017-04-05-0/+149
| | | | | | | | Add the mipi dsi panel driver for device HX8363 from kernel. The panel driver needs work with mipi_dsi_northwest driver. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 0c6d0f4202bae7f61d38ecff1c9d255261f022f2)
* MLK-13929-1 video: Add MIPI DSI host controller driver for i.MX7ULPYe Li2017-04-05-0/+727
| | | | | | | | | | | | | | | | Add the host driver base from kernel for MIPI DSI controller on i.MX7ULP. The controller provides a DPI-2 interface for LCDIF video stream, and a APB interface for packet transmission. The driver provides APIs to register a MIPI panel device and its driver. The panel driver can use the write packet function provided by the host driver to send control packets to panel device via APB interface. MIPI DSI has its PHY and dedicated PLL. The driver will setup them when enabling the DSI host. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit e02115dd1c5d36ec06eabcb5a0b8e09aaf0f29a0)
* MLK-13602-2 epdc: Add disable fuse checkingYe Li2017-04-05-0/+20
| | | | | | | | | Add fuse checking for EPDC module. Once the fused is programmed, the EPDC module is disabled, can't to access it. Signed-off-by: Ye Li <ye.li@nxp.com> Tested-by: Bai Ping <ping.bai@nxp.com> (cherry picked from commit ea7429b70c1eb2cf475028ee8df2ac9ed18b3c82)
* MLK-12483-4 mx6: Modify drivers to disable fused modulesYe Li2017-04-05-1/+25
| | | | | | | | | | | 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. Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 1704e116f9b39aeb99201919a18bc2b1e19a980e)
* ENGR00315894-81 gis: Add gis moduleYe.Li2017-04-05-0/+579
| | | | | | | | | | | Add gis module, current gis is support vadc input. Add power down function to lcdif driver. Signed-off-by: Sandor Yu <R01008@freescale.com> Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit a007b00dd8ef9f773dfdebef0b1deb0990281793) (cherry picked from commit a31dcdafb0963381e7213c59f79a340ef27ec2e2) (cherry picked from commit 02dfe2e4af5f51d39a51542fb0e81f93faf505bc)
* ENGR00315894-80 pxp: Add pxp moduleYe.Li2017-04-05-0/+324
| | | | | | | | | | | | Add pxp module. Support csc between YUV444 and RGB888 and scaling. Signed-off-by: Sandor Yu <R01008@freescale.com> Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit 4c6e1f9ed1b2f5c98a34502b44b6414593fdd290) Signed-off-by: Peng Fan <Peng.Fan@freescale.com> (cherry picked from commit 92295fafcdbaa3a3fe0a63ede15f896dfc9ce0b0) (cherry picked from commit 096a63e81a8c78b3f8bbc65a9d418aa032d62231)
* ENGR00315894-79 csi: Add csi moduleYe.Li2017-04-05-0/+425
| | | | | | | | | | | Add csi module. Signed-off-by: Sandor Yu <R01008@freescale.com> Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit 854ae26758ec8132ef749b98645dd2f43b84e5e2) Signed-off-by: Peng Fan <Peng.Fan@freescale.com> (cherry picked from commit 5f133bd9420109951fd03bd5168801327e929c3b) (cherry picked from commit 16960e59fa3334162d2e2212ee4bc1e7f0c420a3)
* ENGR00315894-78 vadc: Add vadc moduleYe.Li2017-04-05-0/+603
| | | | | | | | | | | | Add vadc module. Both PAL and NTSC mode can work. Signed-off-by: Sandor Yu <R01008@freescale.com> Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit 03c31ae30c1e81c99f6824221e4801433445e04a) Signed-off-by: Peng Fan <Peng.Fan@freescale.com> (cherry picked from commit b5d776ffc1519c16091736445b3217ffb7fcd7db) (cherry picked from commit 2377eb9fd299b76888f11faf76383b68e77bcc8a)
* MLK-10655 Video: Fix second line string display issueYe.Li2017-04-05-4/+5
| | | | | | | | | | | | The string display on second line repeats the last word of first line and does not show full. This is the bug introduced by the fixing to MLK-10542. Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit ac430cee8c42f0acad9e126631d772b99f1166ea) (cherry picked from commit ff62c5b275a9b5e47d570d3eb10622799bf12070) (cherry picked from commit bd265a064c8f797e542955352d170e7f20f7b0d1) (cherry picked from commit aaa55881de3e9aa8232c819a2c8a3abb285b682f)
* MLK-10542 video: Support multiple lines version string displayYe.Li2017-04-05-7/+23
| | | | | | | | | | | | | | The caculation of left space for version string is not correct, should use VIDEO_COLS not VIDEO_LINE_LEN / 2, otherwise we will get larger space than actual have and cause string to overlay logo picture. Also current version string display only supports two lines words at max. This also causes overlay when the LCD pixel colume size is not enough. Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit ed53487d36a886fb4557088804a4b5232b168889) (cherry picked from commit 253936bb920c5bb8e7d26e0425d155fb2576ab77) (cherry picked from commit a12ec4c29b4cbdf03ae68a5ecb739253f79b59fc)
* ENGR00315894-70 iMX6SX:Video Update MXS LCDIF driverYe.Li2017-04-05-10/+61
| | | | | | | | | | | | | | | 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 <B37916@freescale.com> Signed-off-by: Peng Fan <Peng.Fan@freescale.com> (cherry picked from commit d7f49b9378547c3a57b96bcdb907fc44616beb3d) (cherry picked from commit e1343191b9de227c582847e7eeb5ce9238be0754)
* MLK-12425-2: video: epdc: introduce epdc supportPeng Fan2017-04-05-0/+478
| | | | | | | | | | | | | | | | | | | | | | | | | Support EPDC. E-Ink feature is supported by i.MX6DL/SL and i.MX7D. For now this driver only supports i.MX6DL/SL, because the i.MX7D EPDC driver needs pxp support which is not included in U-Boot. Support 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 <peng.fan@nxp.com> Signed-off-by: Robby Cai <R63905@freescale.com> Signed-off-by: Nitin Garg <nitin.garg@freescale.com> Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit a7244f279cc3c3994bcd103f5e9a183b1075ae71)
* MLK-11952 Video: IPU: Fix dereferencing NULL pointer problemYe.Li2017-04-05-0/+4
| | | | | | | | | | By Coverity check, the clk_set_rate function dereferences the clk pointer without checking whether it is NULL. This may cause problem when clk is NULL. Fix the problem by adding NULL check. Signed-off-by: Ye.Li <B37916@freescale.com> (cherry picked from commit ded2f2958d568411274eeecd265fcc1181638335) (cherry picked from commit b58ac1502391d87470918ff8d172b2b8dc1e7a68)
* MLK-10747-2 video: ipu: Enable/disable LDB_DI clock when necessaryLiu Ying2017-04-05-8/+67
| | | | | | | | | This patch adds enable/disable hooks support for ldb_di[0/1] clocks and enables/disables them when necessary. Signed-off-by: Liu Ying <Ying.Liu@freescale.com> (cherry picked from commit 615d4c51679a6c2ee0ed4c5e3922eec76646eef1) (cherry picked from commit 152192507c3bbaba093783d7da32b88327705c63)
* MLK-10747-1 video: ipu: Build ldb_di clock relevant code only for MX6 and MX53Liu Ying2017-04-05-1/+13
| | | | | | | | | The LDB is found in MX6 variants and MX53, so this patch makes the ldb_di clock relevant code be built only for them. Signed-off-by: Liu Ying <Ying.Liu@freescale.com> (cherry picked from commit 3e40c7466ae7d1d6ca74011bfe69ae059d412a3b) (cherry picked from commit 0c47d4138fd2fe8aa864160e23428b2ef95f16ae)
* MLK-10774-2 HDMI: splash screen function enhancementPeng Fan2017-04-05-1/+1
| | | | | | | | | | | | | | | | -Change HDMI video mode to VGA. -Add pixel clock fraction part setting in IPU driver, fix video mode timing issue. -Add overflow state clear workaround, fix kernel hang in HDMI driver issue. -Correct IPU clock to 264MHz. Signed-off-by: Sandor Yu <R01008@freescale.com> Signed-off-by: Nitin Garg <nitin.garg@freescale.com> Signed-off-by: Peng Fan <Peng.Fan@freescale.com> Signed-off-by: Ye Li <ye.li@nxp.com> (cherry picked from commit 5028519b434d5dfbe53c48ac4b115ff8b69bbac7) (cherry picked from commit 8dcbd43b971616fb67dc3b2af32e2d33f68ed0ce)
* video: cfb_console: fix 32-bit display on 64-bit architecturesAndre Przywara2017-03-07-5/+5
| | | | | | | | | | | "unsigned long" is a lousy data type when it comes to match peripheral hardware registers with a fixed size. Just do the obvious and match a 32-bit display format with an "u32" data type for casting. This fixes the logo display on 64-bit architectures, which produced a black line on the right side of the logo with non-black backgrounds. Signed-off-by: Andre Przywara <andre.przywara@arm.com>
* rockchip: video: fix 83500000 clock mistake in rockchip HDMINickey Yang Nickey Yang2017-02-27-1/+1
| | | | | | | There is one "0" too many in 83500000 mpixelclock in rockchip_mpll_cfg[]. fix it. Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
* video: mxsfb: Fix reset hang when videomode variable is not presentFabio Estevam2017-02-22-0/+3
| | | | | | | | | | | | | | | | | | | | | | | Currently the system hangs when the 'videomode' variable is not present and a reset command is issued: => setenv videomode => saveenv => reset (Board hangs) lcdif_power_down() assumes that the LCDIF controller has been properly configured and enabled, which may not be true. To fix this issue check whether panel.frameAdrs has been initialized and in case it has not been initialized, do not continue with the LCDIF powerdown sequence. Tested on a imx7dsabresd board. Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com> Acked-by: Anatolij Gustschin <agust@denx.de>
* Merge branch 'master' of git://git.denx.de/u-boot-videoTom Rini2017-02-09-1/+1
|\
| * drivers/video/cfb_console.c: Correct "COFNIG_NDS32" typo.Robert P. J. Day2017-02-03-1/+1
| | | | | | | | Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
* | dm: core: Replace of_offset with accessorSimon Glass2017-02-08-19/+20
| | | | | | | | | | | | | | | | | | At present devices use a simple integer offset to record the device tree node associated with the device. In preparation for supporting a live device tree, which uses a node pointer instead, refactor existing code to access this field through an inline function. Signed-off-by: Simon Glass <sjg@chromium.org>
* | x86: ivybridge: Fix types for 64-bit compilationSimon Glass2017-02-06-2/+2
| | | | | | | | | | | | | | Fix a few types that causes warnings on 64-bit machines. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
* | x86: ivybridge: Declare global data where it is usedSimon Glass2017-02-06-0/+2
|/ | | | | | | | Some files are missing this declaration. Add it to avoid build errors when we actually need the declaration. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
* Merge branch 'master' of git://git.denx.de/u-boot-videoTom Rini2017-01-16-2/+4
|\
| * video: cfb_console: fix hang if splashimage file is missingAnatolij Gustschin2017-01-13-2/+4
| | | | | | | | | | | | | | | | If the splash file doesn't exist, the booting stops bricking the boards. Check return value of prepare function and stop decoding the logo data if splash prepare stage failed. Signed-off-by: Anatolij Gustschin <agust@denx.de>
* | rockchip: video: fix mpixelclock in rockchip HDMINickey Yang Nickey Yang2017-01-11-10/+10
|/ | | | | | Correct mpixelclock errors in rockchip_phy_config[] and rockchip_mpll_cfg[]. Signed-off-by: Nickey Yang <nickey.yang@rock-chips.com>
* video: tegra: fix spelling in commentMarcel Ziswiler2017-01-03-1/+1
| | | | | | | Get rid of spurious 'are' in the comment. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
* video: Kconfig: Add VIDEO_IPV3 entryJagan Teki2016-12-16-0/+7
| | | | | | | | | | Added kconfig entry for CONFIG_VIDEO_IPV3 driver. Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Cc: Matteo Lisi <matteo.lisi@engicam.com> Cc: Michael Trimarchi <michael@amarulasolutions.com> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
* bcm2835 video: Map frame buffer as 32bppAlexander Graf2016-11-28-3/+3
| | | | | | | | To enable working efifb support, let's map the frame buffer as 32bpp instead of 16bpp. Signed-off-by: Alexander Graf <agraf@suse.de> Acked-by: Stephen Warren <swarren@wwwdotorg.org>
* rockchip: video: Avoid using u8 in the HDMI driverSimon Glass2016-11-25-15/+15
| | | | | | | | It makes not sense using u8 to hold a value on a 32-bit or 64-bit machine. It can only bloat the code by forcing the compiler to mask the value. Change it to uint. Signed-off-by: Simon Glass <sjg@chromium.org>
* rockchip: video: Check for device in useSimon Glass2016-11-25-0/+9
| | | | | | | | | | Check whether a display device is in use before using it. Add a comment as to why two displays cannot currently be used at the same time. This allows us to remove the device-tree change that disables vopb on jerry. Signed-off-by: Simon Glass <sjg@chromium.org>
* video: Track whether a display is in useSimon Glass2016-11-25-1/+17
| | | | | | | Mark a display as in use when display_enable() is called. This can avoid a display being used by multiple video-output devices. Signed-off-by: Simon Glass <sjg@chromium.org>
* video: Use cache-alignment in video_sync()Simon Glass2016-11-25-1/+2
| | | | | | | | Sometimes the frame buffer is not a multiple of the cache line size. Adjust the cache-flushing code to avoid cache warnings/errors in this case. Signed-off-by: Simon Glass <sjg@chromium.org>
* rockchip: video: Correct VOP clock selectionSimon Glass2016-11-25-6/+1
| | | | | | | | This code incorrectly uses the oscillator. It should use the clock selected in the device tree. Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: 135aa95 (clk: convert API to match reset/mailbox style)
* rockchip: video: Correct HDMI data source selectionSimon Glass2016-11-25-1/+2
| | | | | | | | | | This code currently always selects the second source. It only worked because both sources are set up. With the change to only init video devices that are present in the stdout environment variable, this fails. Fix it. Signed-off-by: Simon Glass <sjg@chromium.org>
* video: bmp: Fix compilation errors with CONFIG_BMP_xxBPP enabledStefan Roese2016-11-13-3/+3
| | | | | | | | | | | | | | | | | | | | | Compiling the 'bmp' command with DM and having one of the following macros enabled: CONFIG_BMP_16BPP, CONFIG_BMP_24BPP ONFIG_BMP_32BPP generates this error: drivers/video/video_bmp.c: In function ‘video_bmp_display’: drivers/video/video_bmp.c:315:22: error: ‘lcd_line_length’ undeclared (first use in this function) fb -= width * 2 + lcd_line_length; ^ This patch moves to using the correct variable instead and enables the 'bmp' command for DM again. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Simon Glass <sjg@chromium.org> Cc: Anatolij Gustschin <agust@denx.de>
* Fix codying style broken by recent libfdt syncMasahiro Yamada2016-10-24-1/+1
| | | | | | | | | Commit b02e4044ff8e ("libfdt: Bring in upstream stringlist functions") broke codying style in some places especially by inserting an extra whitespace before fdt_stringlist_count(). Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Acked-by: Simon Glass <sjg@chromium.org>
* Convert CONFIG_CONSOLE_SCROLL_LINES to KconfigSimon Glass2016-10-23-0/+10
| | | | | | | | This converts the following to Kconfig: CONFIG_CONSOLE_SCROLL_LINES Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* video: Move video_get_info_str() prototype to a header fileSimon Glass2016-10-23-17/+8
| | | | | | | | This should be defined in a header file so that arguments are checked. Move it to video.h. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* Convert CONFIG_CONSOLE_EXTRA_INFO to KconfigSimon Glass2016-10-23-0/+10
| | | | | | | | This converts the following to Kconfig: CONFIG_CONSOLE_EXTRA_INFO Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* Convert CONFIG_VIDEO_SW_CURSOR to KconfigSimon Glass2016-10-23-6/+10
| | | | | | | | | | This converts the following to Kconfig: CONFIG_VIDEO_SW_CURSOR Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com> [trini: Re-convert, find all the cases where this is off] Signed-off-by: Tom Rini <trini@konsulko.com>
* video: Drop CONFIG_VIDEO_HW_CURSORSimon Glass2016-10-23-111/+1
| | | | | | | This is not used in U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* Convert CONFIG_VGA_AS_SINGLE_DEVICE to KconfigSimon Glass2016-10-23-6/+10
| | | | | | | | | | This converts the following to Kconfig: CONFIG_VGA_AS_SINGLE_DEVICE Once we migrate to driver model for video, we should be able to drop this option. Signed-off-by: Simon Glass <sjg@chromium.org>
* video: Drop the sed13806 driverSimon Glass2016-10-23-296/+0
| | | | | | | This is not used in U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* video: Drop the s3c-fb driverSimon Glass2016-10-23-174/+1
| | | | | | | | This is not used in U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Minkyu Kang <mk7.kang@samsung.com> Reviewed-by: Tom Rini <trini@konsulko.com>
* video: Drop the imx25lcdc driverSimon Glass2016-10-23-122/+0
| | | | | | | This is not used anywhere in U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* video: Drop the smiLynxEM driverSimon Glass2016-10-23-849/+0
| | | | | | | This is not used in U-Boot anymore. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* Convert CONFIG_SYS_CONSOLE_BG_COL et al to KconfigSimon Glass2016-10-23-49/+74
| | | | | | | | | This converts the following to Kconfig: CONFIG_SYS_CONSOLE_BG_COL CONFIG_SYS_CONSOLE_FG_COL Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>