- Oct 12, 2016
-
-
Bin Meng authored
At present only chromebook boards are converted to DM video. Other x86 boards are still using the legacy cfb_console driver. This switches to use DM version drivers. Signed-off-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
Bin Meng authored
This adds a DM driver for VESA-compatible device. Signed-off-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
- Oct 11, 2016
-
-
Simon Glass authored
Update the samus driver to avoid the direct call to the video BIOS setup. Signed-off-by:
Simon Glass <sjg@chromium.org> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com>
-
Simon Glass authored
At present we use the legacy vesa driver for graphics. Add a driver which supports driver model. This can be probed only when needed, removing the need to start up the display if it is not used. Signed-off-by:
Simon Glass <sjg@chromium.org> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com>
-
Simon Glass authored
'enabled' should be 'enables'. Fix it. Signed-off-by:
Simon Glass <sjg@chromium.org> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com>
-
- Sep 24, 2016
-
-
Masahiro Yamada authored
Now, include/linux/errno.h is a wrapper of <asm-generic/errno.h>. Replace all include directives for <asm-generic/errno.h> with <linux/errno.h>. <asm-generic/...> is supposed to be included from <asm/...> when arch-headers fall back into generic implementation. Generally, they should not be directly included from .c files. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com> [trini: Add drivers/usb/host/xhci-rockchip.c] Signed-off-by:
Tom Rini <trini@konsulko.com>
-
- Sep 23, 2016
-
-
Masahiro Yamada authored
Now, arch/${ARCH}/include/asm/errno.h and include/linux/errno.h have the same content. (both just wrap <asm-generic/errno.h>) Replace all include directives for <asm/errno.h> with <linux/errno.h>. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com> [trini: Fixup include/clk.] Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Masahiro Yamada authored
For vidconsole_post_probe(), it is common coding style to let a probe method return the value of a register function. The others will become simple wrapper functions. Signed-off-by:
Masahiro Yamada <yamada.masahiro@socionext.com> Acked-by:
Anatolij Gustschin <agust@denx.de> Reviewed-by:
Simon Glass <sjg@chromium.org> Acked-by:
Stephen Warren <swarren@nvidia.com>
-
- Aug 26, 2016
-
-
Hans de Goede authored
When the backlight's pwm input is connected to a pwm output of the SoC, actually use pwm to drive the backlight. The mean reason for doing this is to fix the backlight turning off for aprox. 1 second while the kernel is booting. This is caused by the kernel actually using pwm to drive the backlight, so that it can dim the backlight. First the pwm driver loads and switches the pinmux for the pin driving the backlight's pwm input to the pwm controller. Then about 1s later the actual backlight driver loads and tells the pwm driver to actually update the pwm settings, which have a power-on-reset value of "off". An additional advantage is that this allows us to initatiate the backlight at 80%, which is the kernel default, avoiding a brightness change while the kernel loads. Signed-off-by:
Hans de Goede <hdegoede@redhat.com> Reviewed by: Peter Korsgaard <peter@korsgaard.com>
-
- Jul 26, 2016
-
-
Simon Glass authored
The current code picks the first available clock. In U-Boot proper this is the oscillator device, not the SoC clock device. As a result the HDMI display does not work. Fix this by calling rockchip_get_clk() instead. Fixes: 135aa950 (clk: convert API to match reset/mailbox style) Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de>
-
- Jul 16, 2016
-
-
Robert P. J. Day authored
Fix a number of typos, including: * "compatble" -> "compatible" * "eanbeld" -> "enabled" * "envrionment" -> "environment" * "FTD" -> "FDT" (for "flattened device tree") * "ommitted" -> "omitted" * "overriden" -> "overridden" * "partiton" -> "partition" * "propogate" -> "propagate" * "resourse" -> "resource" * "rest in piece" -> "rest in peace" * "suport" -> "support" * "varible" -> "variable" Signed-off-by:
Robert P. J. Day <rpjday@crashcourse.ca>
-
- Jul 11, 2016
-
-
Tim Harvey authored
The CONFIG_HIDE_LOGO_VERSION config can be used to disable putting the U-Boot version string on top of the logo. Signed-off-by:
Tim Harvey <tharvey@gateworks.com>
-
- Jul 05, 2016
-
-
Simon Glass authored
This seems to give the best performance, so let's use it always. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Stephen Warren <swarren@nvidia.com> Signed-off-by:
Tom Warren <twarren@nvidia.com>
-
Simon Glass authored
We have standard drivers for panels and backlights which can do most of the work for us. Move the tegra20 LCD driver over to use those instead of custom code. This patch includes device tree changes for the nvidia boards. I have only been able to test seaboard. If this patch is applied, these boards will also need to be synced with the kernel, and updated to use display-timings: - colibri - medcom-wide - paz00 - tec Signed-off-by:
Simon Glass <sjg@chromium.org> Signed-off-by:
Tom Warren <twarren@nvidia.com>
-
Sjoerd Simons authored
Waiting 30 seconds for the hpd to go high seems a bit much, especially on headless boots. Lowering the timeout to 300ms. Sending as RFC because frankly i don't know what a sensible timeout is here, but 30 seconds is clearly not it :) Signed-off-by:
Sjoerd Simons <sjoerd.simons@collabora.co.uk> Reviewed-by:
Simon Glass <sjg@chromium.org> Dropped RFC tag: Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- Jun 19, 2016
-
-
Stephen Warren authored
The following changes are made to the clock API: * The concept of "clocks" and "peripheral clocks" are unified; each clock provider now implements a single set of clocks. This provides a simpler conceptual interface to clients, and better aligns with device tree clock bindings. * Clocks are now identified with a single "struct clk", rather than requiring clients to store the clock provider device and clock identity values separately. For simple clock consumers, this isolates clients from internal details of the clock API. * clk.h is split so it only contains the client/consumer API, whereas clk-uclass.h contains the provider API. This aligns with the recently added reset and mailbox APIs. * clk_ops .of_xlate(), .request(), and .free() are added so providers can customize these operations if needed. This also aligns with the recently added reset and mailbox APIs. * clk_disable() is added. * All users of the current clock APIs are updated. * Sandbox clock tests are updated to exercise clock lookup via DT, and clock enable/disable. * rkclk_get_clk() is removed and replaced with standard APIs. Buildman shows no clock-related errors for any board for which buildman can download a toolchain. test/py passes for sandbox (which invokes the dm clk test amongst others). Signed-off-by:
Stephen Warren <swarren@nvidia.com> Acked-by:
Simon Glass <sjg@chromium.org>
-
- Jun 12, 2016
-
-
Simon Glass authored
Add driver-model support to this driver. Most features can be controlled from the device tree. Signed-off-by:
Simon Glass <sjg@chromium.org> Reviewed-by:
Andreas Bießmann <andreas@biessmann.org>
-
Simon Glass authored
Adjust the driver to use struct display_timing for its display timing. This is what is used by driver-model and allows the LCD init code to be common. Signed-off-by:
Simon Glass <sjg@chromium.org> Reviewed-by:
Andreas Bießmann <andreas@biessmann.org>
-
- May 27, 2016
-
-
Simon Glass authored
Enable this option to correct display artifacts when a write-back cache is in use. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
- May 25, 2016
-
-
Simon Glass authored
Now that we are using driver model, we can drop the weak functions and LCD init in the board file. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
Update several boards to use driver model for video. This involves changes to the EDP and FIMD (frame buffer) drivers. Existing PWM, simple-panel and pwm-backlight drivers are used. These work without additional configuration since they use the device tree settings in the same way as Linux. Boards converted are: - snow - spring - peach-pit - peach-pi All have been tested. Not converted: - MIPI display driver - s5pc210_universal - smdk5420 - smdk5250 - trats - trats2 Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
Use 'priv' for a private pointer and 'regs' for a register pointer. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
Rename this function to better fit with driver model. It is the private data for the exynos EDP driver. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
This function controls enabling the EDP PHY. Rename it and drop the existing weak functions, which are confusing. Signed-off-by:
Simon Glass <sjg@chromium.org> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
At present exynos_fimd.c is the controller and exynos_fb.c is the U-Boot LCD interface. With driver model we want these in one file, so join them in preparation. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
In preparation for making this a parameter, move it into the function that sets it up. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
Put the pointer to this structure in struct vidinfo so that we can reference it without it being global. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
In preparation for making this a parameter, move it into the function that sets it up. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
Drop these and use parameters instead. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
Drop these and use the existing variables instead. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
Drop these and use parameters instead. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
Drop this and use parameters instead. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
Use 'struct vidinfo' instead so that we can change this to a struct with a different name in future. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
We always use device tree with video, so can drop these #ifdefs. Some of the hardware addresses are not needed either. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
Simon Glass authored
Move all the exynos video drivers into one place for ease of maintenance. Signed-off-by:
Simon Glass <sjg@chromium.org> Acked-by:
Anatolij Gustschin <agust@denx.de> Signed-off-by:
Minkyu Kang <mk7.kang@samsung.com>
-
- May 17, 2016
-
-
Stephen Warren authored
This prevents the following boot-time message on any board where only the first DC is in use, yet the DC's DT node is enabled: stdio_add_devices: Video device failed (ret=-22) (This happens on at least Harmony, Ventana, and likely any other Tegra20 board with display enabled other than Seaboard). The Tegra DC's DT node represents a display controller. It may itself drive an integrated RGB display output, or be used by some other display controller such as HDMI. For this reason the DC node itself is not enabled/disabled in DT; the DC itself is considered a shared resource, not the final (board-specific) display output. The node should instantiate a display output driver only if the rgb subnode is enabled. Other output drivers are free to use the DC if they are enabled and their DT node references the DC's DT node. Adapt the Tegra display drivers' bind() routine to only bind to the DC's DT node if the RGB subnode is enabled. Now that the display driver does the right thing, remove the workaround for this issue from Seaboard's DT file. Cc: Thierry Reding <treding@nvidia.com> Signed-off-by:
Stephen Warren <swarren@nvidia.com> Acked-by:
Thierry Reding <treding@nvidia.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
- Apr 28, 2016
-
-
Martin Pietryka authored
The DMA was outputting the palette on the screen because the base for the DMA was not after the palette. In addition to that, the ceiling was also too high, this led that the output on the screen was shifted. NOTE: According to the TRM, even in 16/24bit mode a palette is required in the first 32 bytes of the framebuffer. See also: https://e2e.ti.com/support/arm/sitara_arm/f/791/p/234967/834483#834483 "In this mode, the LCDC will assume all information is data and thus you need to ensure that the DMA points to the first pixel of data and not the first entry in the frame buffer which is the beginning of the 512 byte palette." Signed-off-by:
Martin Pietryka <martin.pietryka@chello.at> Reviewed-by:
Hannes Schmelzer <oe5hpm@oevsv.at> Tested-by:
Hannes Schmelzer <oe5hpm@oevsv.at>
-
Martin Pietryka authored
To support 16bpp we just need to change the raster_ctrl register accordingly. Also 32bpp mode should work as well, but was not tested. According to the TRM the uppermost byte will be ignored when LCD_TFT_24BPP_UNPACK is set. The switch logic is based on the Linux kernel tilcdc driver: drivers/gpu/drm/tilcdc/tilcdc_crtc.c: lines 407 through 419 (kernel was checked out at commit: bcc981e9ed8) Signed-off-by:
Martin Pietryka <martin.pietryka@chello.at> Reviewed-by:
Hannes Schmelzer <oe5hpm@oevsv.at> Tested-by:
Hannes Schmelzer <oe5hpm@oevsv.at>
-
Some toolchains fail to build "clk->rate = (u64)(clk->parent->rate * 16) / div;" And the cast usage is wrong. Use the following code to fix the issue, " do_div(parent_rate, div); clk->rate = parent_rate; " Reported-by:
Peter Robinson <pbrobinson@gmail.com> Signed-off-by:
Peng Fan <van.freenix@gmail.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@nxp.com> Cc: Tom Rini <trini@konsulko.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Peter Robinson <pbrobinson@gmail.com> Reviewed-by:
Tom Rini <trini@konsulko.com> Tested-by:
Peter Robinson <pbrobinson@gmail.com>
-
- Apr 25, 2016
-
-
Martin Pietryka authored
According to the TRM you have to set bits [21:20] to 0b10 for RAW mode, so (0x10 << 20) is obviously wrong here. Signed-off-by:
Martin Pietryka <martin.pietryka@chello.at>
-