summaryrefslogtreecommitdiff
path: root/drivers/video
Commit message (Collapse)AuthorAgeLines
* stdio: Pass device pointer to stdio methodsSimon Glass2014-07-23-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | At present stdio device functions do not get any clue as to which stdio device is being acted on. Some implementations go to great lengths to work around this, such as defining a whole separate set of functions for each possible device. For driver model we need to associate a stdio_dev with a device. It doesn't seem possible to continue with this work-around approach. Instead, add a stdio_dev pointer to each of the stdio member functions. Note: The serial drivers have the same problem, but it is not strictly necessary to fix that to get driver model running. Also, if we convert serial over to driver model the problem will go away. Code size increases by 244 bytes for Thumb2 and 428 for PowerPC. 22: stdio: Pass device pointer to stdio methods arm: (for 2/2 boards) all +244.0 bss -4.0 text +248.0 powerpc: (for 1/1 boards) all +428.0 text +428.0 Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Marek Vasut <marex@denx.de> Reviewed-by: Marek Vasut <marex@denx.de>
* stdio: Remove redundant code around stdio_register() callsSimon Glass2014-07-23-2/+0
| | | | | | | | | | | | | There is no point in setting a structure's memory to NULL when it has already been zeroed with memset(). Also, there is no need to create a stub function for stdio to call - if the function is NULL it will not be called. This is a clean-up, with no change in functionality. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Marek Vasut <marex@denx.de>
* mpc8xx: remove v37 board supportMasahiro Yamada2014-07-07-7/+1
| | | | | | This board is old enough and has no maintainer. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
* mpc8xx: remove rbc823 board supportMasahiro Yamada2014-07-07-66/+1
| | | | | | This board is old enough and has no maintainer. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
* mpc8xx: remove RPXlite_dw, quantum board supportMasahiro Yamada2014-07-07-5/+0
| | | | | | These boards are old enough and have no maintainers. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
* video: atmel_hlcdfb: enable dcache supportWu, Josh2014-06-14-0/+6
| | | | | | | | | | | | | To support dcache, we need flush DMA descriptor buffer before enable lcd DMA. Also we need call lcd_set_flush_dcache(1) to make lcd driver flush the lcd buffer if there is any change. Cc: Anatolij Gustschin <agust@denx.de> Signed-off-by: Josh Wu <josh.wu@atmel.com> Acked-by: Anatolij Gustschin <agust@denx.de> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
* Merge remote-tracking branch 'u-boot/master'Albert ARIBAUD2014-05-20-4/+9
|\ | | | | | | | | | | | | | | | | Conflicts: boards.cfg Conflicts were trivial once u-boot-arm/master boards.cfg was reformatted (commit 6130c146) to match u-boot/master's own reformatting (commit 1b37fa83).
| * Merge branch 'master' of git://git.denx.de/u-boot-videoTom Rini2014-05-13-4/+9
| |\
| | * at91: video: atmel_hlcdfb.c: fix bad timing configurationWu, Josh2014-05-05-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The right correspondance between LCD margins and LCD timings is: * upper margin -> vertical back porch * lower margin -> vertical front porch * left margin -> horizontal back porch * right margin -> horizontal front porch Signed-off-by: Josh Wu <josh.wu@atmel.com>
| | * video: mxc_ipuv3_fb: stash frame buffer pointer in global data.Eric Nelson2014-04-30-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch updates the i.MX video driver to store the frame-buffer address in the fb_base field of the global data structure *gd. By doing this, you can find the frame buffer address using the 'bdinfo' command: U-Boot > bdinfo arch_number = 0x00000EB9 ... FB base = 0x4F35F1C0 This is very useful when debugging display connections. Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com> Acked-by: Otavio Salvador <otavio@ossystems.com.br> Acked-by: Marek Vasut <marex@denx.de>
* | | video: Add support for imx25 lcd controllerThomas Diener2014-05-09-0/+122
|/ / | | | | | | | | | | | | This patch adds support for the imx25 lcd display controller. Signed-off-by: Thomas Diener <dietho@gmx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
* | ARM: tegra: Tegra20 pinmux cleanupStephen Warren2014-04-17-2/+2
|/ | | | | | | | | | | | | | This renames all the Tegra20 pinmux pins and functions so they have a prefix which matches the type name. The entries in tegra20_pingroups[] are all updated to remove the columns which are no longer used. All affected code is updated to match. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
* Merge branch 'u-boot/master' into 'u-boot-arm/master'Albert ARIBAUD2014-03-25-0/+80
|\ | | | | | | | | | | | | | | Trivial merge conflict, needed to manually remove local_info as per commit 41364f0f. Conflicts: board/samsung/common/board.c
| * sandbox: Add LCD driverSimon Glass2014-03-17-0/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | Add a simple LCD driver which uses SDL to display the image. We update the image regularly, while still providing for reasonable performance. Adjust the common lcd code to support sandbox. For command-line runs we do not want the LCD to be displayed, so add a --show_lcd option to enable it. Tested-by: Che-Liang Chiou <clchiou@chromium.org> Signed-off-by: Simon Glass <sjg@chromium.org>
* | video:exynos_fb:fdt: add additional fdt dataPiotr Wilczek2014-03-12-0/+12
| | | | | | | | | | | | | | | | | | This patch adds the new exynos_lcd_misc_init() function for optional lcd specific initialisation. Signed-off-by: Piotr Wilczek <p.wilczek@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* | video:mipidsim:fdt: Add DT support for mipi dsim driverPiotr Wilczek2014-03-12-0/+96
|/ | | | | | | | | This patch enables parsing mipi data from device tree. Non device tree case is still supported. Signed-off-by: Piotr Wilczek <p.wilczek@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* cfb_console: align fields in gzipped .bmp filesEric Nelson2014-03-10-2/+6
| | | | | | | | | | | | | | | | | | | .bmp files contain 32-bit integers aligned at offsets of +2, +6, et cetera within the bmp_header structure (see include/bmp_layout.h). Support for gzip-compressed .bmp files is present in the cfb_console display subsystem by uncompressing them prior to use. This patch forces the in-memory header to be aligned properly for these compressed images by extracting them to a 2-byte offset in the memory returned by malloc. Since malloc will always return a 4-byte aligned value, this forces the .bmp header fields to be naturally aligned on 4-byte addresses. Refer to these files for more details: doc/README.displaying-bmps Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
* video: exynos: fimd: add support for various display color modesPrzemyslaw Marczak2014-02-03-7/+8
| | | | | | | | | | | Now fimd BPP color mode depends on vl_bpp value in struct "panel_info". There is only 16BPP mode check, default mode is 24BPP. Other fimd modes are usually unneeded and also needs some fimd driver modifications and tests. Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* samsung: common: Add file for common functions, draw_logo() cleanup.Przemyslaw Marczak2014-02-03-28/+0
| | | | | | | | | | | | | | | | | Changes: new file: - board/samsung/common/misc.c depends on: CONFIG_MISC_COMMON - move draw_logo() to misc.c configs: trats, trats2, universal: - enable CONFIG_MISC_COMMON, - enable CONFIG_MISC_INIT_R, - add misc_init_r() and call draw_logo() in it. Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* video: ipu reg: Correct reserved array size in struct ipu_idmacLiu Ying2014-01-12-1/+1
| | | | | | | | | | | | | The array reserved as a placeholder in the structure ipu_idmac should contain 44 32bit unsigned integer entries instead of 45 ones, because the placeholder is located bewteen the register IDMAC_SC_CORD1 and the register IDMAC_CH_BUSY_1 with the address offsets of 0x804c and 0x8100 respectively. Reported-by: Robin Gong <b38343@freescale.com> Acked-by: Robin Gong <b38343@freescale.com> Cc: Stefano Babic <sbabic@denx.de> Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
* video: ipu reg: Correct reserved1 array size in struct ipu_cmLiu Ying2014-01-12-1/+1
| | | | | | | | | | | | | The array reserved1 as a placeholder in the structure ipu_cm should contain 4 32bit unsigned integer entries instead of 16 ones, because the placeholder is located bewteen the register IPU_CH_DB_MODE_SEL_1 and the register IPU_ALT_CH_DB_MODE_SEL_0 with the address offsets of 0x154 and 0x168 respectively. Reported-by: Robin Gong <b38343@freescale.com> Acked-by: Robin Gong <b38343@freescale.com> Cc: Stefano Babic <sbabic@denx.de> Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
* Merge branch 'master' of git://git.denx.de/u-boot-videoTom Rini2013-12-16-1/+1
|\
| * video: ipu_disp: Return a negative value on errorFabio Estevam2013-12-04-1/+1
| | | | | | | | | | | | We should return a negative error number (-EINVAL) on error. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
* | Merge branch 'u-boot/master' into 'u-boot-arm/master'Albert ARIBAUD2013-12-10-0/+308
|\ \ | |/ | | | | | | | | | | | | | | | | Conflicts: arch/arm/cpu/armv7/rmobile/Makefile doc/README.scrapyard Needed manual fix: arch/arm/cpu/armv7/omap-common/Makefile board/compulab/cm_t335/u-boot.lds
| * lcd: add DataImage SCF0403x LCD panel supportNikita Kiryanov2013-11-12-0/+297
| | | | | | | | | | | | | | | | | | | | | | | | Add SPI-based driver for DataImage SCF0403852GGU04 and SCF0403526GGU20 LCD panels. Cc: Tom Rini <trini@ti.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il> Acked-by: Anatolij Gustschin <agust@denx.de> Signed-off-by: Anatolij Gustschin <agust@denx.de>
| * video: bcm2835: respect the pitch valueAndre Heider2013-11-12-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Depending on the firmware's video options [1] the active SDTV or HDTV mode can yield a framebuffer with noncontiguous horizontal lines, giving a messed up display, for both, u-boot and the loaded kernel. Fix this by setting lcd_line_length to the pitch value of the configured framebuffer. [1] http://elinux.org/RPiconfig#Video_mode_options Signed-off-by: Andre Heider <a.heider@gmail.com> Cc: Stephen Warren <swarren@wwwdotorg.org> Signed-off-by: Anatolij Gustschin <agust@denx.de> Acked-by: Stephen Warren <swarren@wwwdotorg.org>
* | video: remove AT91 legacy API from bus_vcxkAndreas Bießmann2013-11-13-15/+0
|/ | | | | | Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> Acked-by: Jens Scharsig (BuS Elektronik) <esw@bus-elektronik.de> Acked-by: Anatolij Gustschin <agust@denx.de>
* drivers: convert makefiles to Kbuild styleMasahiro Yamada2013-10-31-54/+32
| | | | Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
* video, formike: change tag/val writeHeiko Schocher2013-10-30-3/+4
| | | | | | | | | | write first the "tag" 8 bit value and then the "val" 8-bit to the display. Tested on the rut board. Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Anatolij Gustschin <agust@denx.de>
* video, cfb_console: make background and foreground color configurableHeiko Schocher2013-10-30-18/+20
| | | | | | | | make CONSOLE_BG_COL/CONSOLE_FG_COL configurable through board config file. Clear video screen in video_init(). Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Anatolij Gustschin <agust@denx.de>
* video: ipu_disp: Fix clock polarity logicFabio Estevam2013-10-30-1/+1
| | | | | | | | | | | | | | | | | | | | | | Currently the HDMI splash screen image quality on mx6solo does not show a very stable image. By comparing the IPU driver from U-boot with the one from FSL 4.1.0 BSP, we can see that there is an inverted logic for setting the DI_GEN_POL_CLK bit. >From FSL BSP [1] we have: if (!sig.clk_pol) di_gen |= DI_GEN_POLARITY_DISP_CLK; Applying the same logic into U-boot fixes the HDMI image stability. [1] git.freescale.com/git/cgit.cgi/imx/linux-2.6-imx.git/tree/drivers/mxc/ipu3/ipu_disp.c?h=imx_3.0.35_4.1.0 Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Tested-by: Eric Nelson <eric.nelson@boundarydevices.com> Acked-by: Eric Nelson <eric.nelson@boundarydevices.com> Acked-by: Stefano Babic <sbabic@denx.de>
* Coding Style cleanup: replace leading SPACEs by TABsWolfgang Denk2013-10-14-1/+1
| | | | | | Signed-off-by: Wolfgang Denk <wd@denx.de> [trini: Drop changes for PEP 4 following python tools] Signed-off-by: Tom Rini <trini@ti.com>
* Coding Style cleanup: remove trailing white spaceWolfgang Denk2013-10-14-20/+20
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* Merge branch 'u-boot-ti/master' into 'u-boot-arm/master'Albert ARIBAUD2013-09-04-0/+512
|\
| * video: add formike lcd panel initHeiko Schocher2013-08-28-0/+512
| | | | | | | | | | | | | | Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Anatolij Gustschin <agust@denx.de> Cc: Tom Rini <trini@ti.com> Acked-by: Anatolij Gustschin <agust@denx.de>
* | Merge branch 'master' of git://88.191.163.10/u-boot-armTom Rini2013-08-18-2/+3
|\ \ | |/ | | | | | | | | | | | | | | | | Fixup an easy conflict over adding the clk_get prototype and USB_OTG defines for am33xx having moved. Conflicts: arch/arm/include/asm/arch-am33xx/hardware.h Signed-off-by: Tom Rini <trini@ti.com>
| * Merge git://git.denx.de/u-boot-armStefano Babic2013-07-31-714/+45
| |\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: board/freescale/mx6qsabrelite/Makefile board/freescale/mx6qsabrelite/mx6qsabrelite.c include/configs/mx6qsabrelite.h Signed-off-by: Stefano Babic <sbabic@denx.de>
| * | mxc_ipuv3: fix memory alignment of framebufferEric Nelson2013-07-29-2/+3
| | | | | | | | | | | | | | | | | | The frame-buffer on i.MX boards needs to be aligned for DMA. Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
* | | exynos: video: change mipi dsi write function parameters correctlyDonghwa Lee2013-08-12-62/+65
| | | | | | | | | | | | | | | | | | | | | | | | This patch have changed mipi dsi write functions' parameters correctly so that type cast operations were removed. And mipi dsi payload is composed with array of panel commands to improve readability. Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
* | | video: Encapsulate font in video_font_data.hMarek Vasut2013-08-12-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch moves all the font configuration values into video_font_data.h so they are all in the right place with the font. The video_font.h now only includes video_font_data.h and will allow us to select and include different font once more fonts are added. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Anatolij Gustschin <agust@denx.de> [agust: fixed build warning for mcc200] Signed-off-by: Anatolij Gustschin <agust@denx.de>
* | | video: add an option to skip cfb console initHeiko Schocher2013-08-10-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch add an option to skip cfb console init for boards who want to show a logo, but not use the cfb console. This is needed for the siemens boards, which have a bmp bootlogo, but do not need the cfb console. Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Anatolij Gustschin <agust@denx.de> [agust: use '__weak int board_cfb_skip(void)'] Signed-off-by: Anatolij Gustschin <agust@denx.de>
* | | video, da8xx-fb: show fb addr in bdinfoHeiko Schocher2013-08-10-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | without this patch the bdinfo command shows: U-Boot# bd arch_number = 0x000010DC [...] sp start = 0x8EF32F20 FB base = 0x00000000 with this patch it shows the address where the framebuffer for this video driver start: arch_number = 0x000010DC [...] sp start = 0x8EF32F20 FB base = 0x8EF3C788 Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Anatolij Gustschin <agust@denx.de> Cc: Tom Rini <trini@ti.com> Acked-by: Tom Rini <trini@ti.com>
* | | video, da8xx-fb: changes for am335x usageHeiko Schocher2013-08-10-57/+282
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to use this driver also on am335x based boards, the following changes are made: - struct lcd_ctrl_config lcd_cfg is now configurable through board code - controller base is configurable through define DA8XX_LCD_CNTL_BASE. To be compatible with older da8xx based boards: If this define is missing, the DAVINCI_LCD_CNTL_BASE is used - Determine LCD IP Version, and make the driver working on lcd revision register values: Version 1: 0x4C100102 Version 2: 0x4F200800 0x4F201000 Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Stefano Babic <sbabic@denx.de> Cc: Anatolij Gustschin <agust@denx.de> Cc: Tom Rini <trini@ti.com> Acked-by: Tom Rini <trini@ti.com>
* | | video, da8xx: move da8xx-fb.h to drivers/videoHeiko Schocher2013-08-10-1/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the da8xx-fb driver works also on am335x boards. So move the da8xx-fb.h file from arch/arm/include/asm/arch-davinci to drivers/video, so this driver can used from am335x based boards. Also add WVGA panel_type. Signed-off-by: Heiko Schocher <hs@denx.de> Cc: Stefano Babic <sbabic@denx.de> Cc: Anatolij Gustschin <agust@denx.de> Cc: Tom Rini <trini@ti.com> Acked-by: Tom Rini <trini@ti.com>
* | | video: add L5F31188 TFT-LCD panel driverHyungwon Hwang2013-08-10-0/+193
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is u-boot driver for L5F31188 panel. I tested it in the board based on MIPI DSI with EXYNOS4 series, and it worked well. Changes in V2: - Replaced license header by SPDX-License-Identifier. Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com> Signed-off-by: Donghwa Lee <dw09.lee@samsung.com> [agust: sort Makefile entry alphabetically] Signed-off-by: Anatolij Gustschin <agust@denx.de>
* | | video: Fix cfb_console for 4-bit wide fontMarek Vasut2013-08-10-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | The cfb_console can't handle 4-bit wide font properly, since with 4-bit wide font, all 8 bits are drawn. Unbreak the video_drawchars() function to correctly render 4-bits only on such fonts. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Anatolij Gustschin <agust@denx.de>
* | | video: Implement continuous screen refresh for SmartLCD into mxsfbMarek Vasut2013-08-09-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The LCDIF interface doesn't give us any means to do continuous refresh when driving a SmartLCD. To work this around, we produce a special circular DMA descriptor, which only writes the HW_LCDIF_CTRL0 register and sets the RUN bit. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Anatolij Gustschin <agust@denx.de> Cc: Fabio Estevam <fabio.estevam@freescale.com> Cc: Otavio Salvador <otavio@ossystems.com.br> Cc: Stefano Babic <sbabic@denx.de>
* | | video: Add System-Mode configuration hook into mxsfbMarek Vasut2013-08-09-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add hook that allow configuring SmartLCD attached the MXS LCDIF controller operating in System-Mode. This hook can be overriden by a platform-specific SmartLCD programming routine, which writes the SmartLCD specific values into it's registers. Also, this patch makes sure the SYNC signals are off for the SmartLCD case. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Anatolij Gustschin <agust@denx.de> Cc: Fabio Estevam <fabio.estevam@freescale.com> Cc: Otavio Salvador <otavio@ossystems.com.br> Cc: Stefano Babic <sbabic@denx.de>
* | | video: Allocate the MXSFB framebuffer alignedMarek Vasut2013-08-09-1/+2
| |/ |/| | | | | | | | | | | | | | | | | | | | | Allocate the framebuffer aligned so it can be flushed and the flush_dcache_range() function won't complain. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Anatolij Gustschin <agust@denx.de> Cc: Fabio Estevam <fabio.estevam@freescale.com> Cc: Otavio Salvador <otavio@ossystems.com.br> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Stefano Babic <sbabic@denx.de>
* | Add GPL-2.0+ SPDX-License-Identifier to source filesWolfgang Denk2013-07-24-714/+45
|/ | | | | | Signed-off-by: Wolfgang Denk <wd@denx.de> [trini: Fixup common/cmd_io.c] Signed-off-by: Tom Rini <trini@ti.com>