- 20 12月, 2013 1 次提交
-
-
由 Thierry Reding 提交于
This commit adds support for both DSI outputs found on Tegra. Only very minimal functionality is implemented, so advanced features like ganged mode won't work. Due to the lack of other test hardware, some sections of the driver are hardcoded to work with Dalmore. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
- 19 12月, 2013 8 次提交
-
-
由 Thierry Reding 提交于
When an output is disabled, its DPMS mode is usually set to off. Instead of only disabling the panel (if one is attached), turn the output off entirely to save more power. HDMI doesn't have any panels attached, so it previously didn't save any power at all. With this commit, however, the complete HDMI interface will be turned off, therefore allowing an attached monitor to go into a standby mode. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
The DRM core doesn't track enable and disable state of encoders and/or connectors, so calls to the output's .enable() and .disable() are not guaranteed to be balanced. Track the enable state internally so that calls to regulator and clock frameworks remain balanced. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
The correct check is for 48 kHz, not 480 kHz. Found by Coverity. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
These buffer object operations are never used outside of the GEM implementation so there is no use in exporting them. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
The ARCH_MULTIPLATFORM dependency was introduced back when Tegra didn't support multiplatform yet as a means to allow the driver to be easily compile-tested along with other DRM drivers. In the meantime, the new COMPILE_TEST Kconfig option has been introduced for exactly that purpose, so use that instead to clarify the intention. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
All APIs that the driver uses are exported, so the driver can now be built as a module. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Paul Walmsley 提交于
Treat both negative and zero return values from clk_round_rate() as errors. This is needed since subsequent patches will convert clk_round_rate()'s return value to be an unsigned type, rather than a signed type, since some clock sources can generate rates higher than (2^31)-1 Hz. Eventually, when calling clk_round_rate(), only a return value of zero will be considered a error. All other values will be considered valid rates. The comparison against values less than 0 is kept to preserve the correct behavior in the meantime. Signed-off-by: NPaul Walmsley <pwalmsley@nvidia.com> Cc: Mikko Perttunen <mperttunen@nvidia.com> Cc: Arto Merilainen <amerilainen@nvidia.com> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: Terje Bergström <tbergstrom@nvidia.com> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
- 18 12月, 2013 1 次提交
-
-
由 Thierry Reding 提交于
Use the DRM panel framework to attach a panel to an output. If the panel attached to a connector supports supports the backlight brightness accessors, a property will be available to allow the brightness to be modified from userspace. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
- 12 12月, 2013 2 次提交
-
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NBjorn Helgaas <bhelgaas@google.com> Acked-By: NTerje Bergstrom <tbergstrom@nvidia.com> Reviewed-by: NThierry Reding <treding@nvidia.com> Acked-by: NThierry Reding <treding@nvidia.com>
-
由 Stephen Warren 提交于
Tegra's clock driver now provides an implementation of the common reset API (include/linux/reset.h). Use this instead of the old Tegra- specific API; that will soon be removed. Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-By: NTerje Bergstrom <tbergstrom@nvidia.com>
-
- 03 12月, 2013 6 次提交
-
-
由 Dan Carpenter 提交于
copy_from_user() returns the number of bytes remaining if it fails, but we want to return -EFAULT here. Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
The fbdev screen memory pointer is annotated __iomem, so cast the kernel virtual address to that address space to make the warning go away. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
There is no need to access it from other files now that the driver has been decoupled from host1x. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
sparse complains because __user annotations aren't placed consistently. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
Previously the association to a DC was done via the encoder's .crtc field. That has the disadvantage that when an encoder is detached from its CRTC, that field is set to NULL, leading to situations where it is impossible to access the DC registers required by the RGB output. However, the coupling between DC and RGB output is really fixed on Tegra. While they can be detached logically in DRM, the RGB output can rely on the DC's existence. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
When upcasting a NULL CRTC object, propagate the NULL pointer instead of some invalid pointer. This allows subsequent code to check that the cast object is valid. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
- 31 10月, 2013 20 次提交
-
-
由 Thierry Reding 提交于
Request a syncpoint base to be associated with the gr3d syncpoint. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Arto Merilainen 提交于
This patch modifies the gr2d to reserve a base for syncpoint. Signed-off-by: NArto Merilainen <amerilainen@nvidia.com> Reviewed-by: NTerje Bergstrom <tbergstrom@nvidia.com> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Arto Merilainen 提交于
This patch adds a separate ioctl for delivering syncpoint base number to user space. If the syncpoint does not have an associated base, the function returns -ENXIO. Signed-off-by: NArto Merilainen <amerilainen@nvidia.com> Reviewed-by: NTerje Bergstrom <tbergstrom@nvidia.com> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Arto Merilainen 提交于
Functions host1x_syncpt_request() and _host1x_syncpt_alloc() have been taking a separate boolean flag ('client_managed') for indicating if the syncpoint value should be tracked by the host1x driver. This patch converts the field into generic 'flags' field so that we can easily add more information while requesting a syncpoint. Clients are adapted to use the new interface accordingly. Signed-off-by: NArto Merilainen <amerilainen@nvidia.com> Reviewed-by: NTerje Bergstrom <tbergstrom@nvidia.com> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Wei Yongjun 提交于
Add a missing clk_disable_unprepare() before returning from the driver's .probe() function on error. Signed-off-by: NWei Yongjun <yongjun_wei@trendmicro.com.cn> Reviewed-by: NTerje Bergstrom <tbergstrom@nvidia.com> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
The gr3d engine renders images bottom-up. Allow buffers that are used for 3D content to be marked as such and implement support in the display controller to present them properly. Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
The gr2d and gr3d engines work more efficiently on buffers with a tiled memory layout. Allow created buffers to be marked as tiled so that the display controller can scan them out properly. Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
Initialize and power the 3D unit on Tegra20, Tegra30 and Tegra114 and register a channel with the Tegra DRM driver so that the unit can be used from userspace. Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
Command stream submissions are the same across all devices that expose a channel to userspace, so move the code into a generic function. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
Instead of using magic numbers for the registers which contain memory addresses in the firewall table, using symbolic names. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
A connector's DPMS mode isn't initialized by default, therefore using a default of 0 (DRM_MODE_DPMS_ON). This can cause problems in that the DRM core won't explicitly turn on a connector because it thinks that it is already on. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Mikko Perttunen 提交于
The VDD regulator used to be enabled only at tegra_output_hdmi_enable, which is called after a sink is detected. However, the HDMI hotplug pin works by returning the voltage supplied by the VDD pin, so this meant that the hotplug pin was never asserted and the sink was not detected unless the VDD regulator was set to be always on. This patch moves the enable to the tegra_hdmi_init() function to make sure the regulator will get enabled and therefore ensure proper hotplug detection. Signed-off-by: NMikko Perttunen <mperttunen@nvidia.com> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
These seem to show up when building for architectures other than ARM, which I guess will never happen. The reason why the kbuild test bot ran into these was a missing dependency which has hence been fixed. Still it doesn't hurt to fix them anyway. Reported-by: Nkbuild test bot <fengguang.wu@intel.com> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Mikko Perttunen 提交于
Use EDID data to determine whether the display supports HDMI or DVI only. The HDMI output used to assume to be connected to HDMI displays, but that broke support for DVI displays that don't understand the interspersed audio/other data. To be on the safe side, default to DVI if no EDID data is available. Signed-off-by: NMikko Perttunen <mperttunen@nvidia.com> [treding@nvidia.com: move detection to separate function] Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Mikko Perttunen 提交于
Tegra114 TMDS configuration requires a new peak_current field and the driver current override bit has changed position. Signed-off-by: NMikko Perttunen <mperttunen@nvidia.com> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
Use a structure to parameterize the code to handle differences between the HDMI hardware on various SoC generations. This removes the need to clutter the code with checks for individual compatible values. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
Everything related to Tegra uses Tegra20 and Tegra30 instead of Tegra2 and Tegra3, respectively. Rename the TMDS arrays in the HDMI driver for consistency. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
Since the .init() and .exit() functions are executed whenever the DRM driver is loaded or unloaded, care must be taken not to use them for resource allocation. Otherwise deferred probing cannot be used, since the .init() and .exit() are not run at probe time. Similarly the code that frees resources must be run at .remove() time. If it is run from the .exit() function, it can release resources multiple times. To handle this more consistently, rename the tegra_output_parse_dt() function to tegra_output_probe() and introduce tegra_output_remove() which can be used to free output-related resources. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
When the DRM driver is unloaded, all the associated resources must be cleaned up and zeroed out. This is necessary because of the architecture of the Tegra DRM driver, where not all subdrivers are unloaded along with the DRM driver. Therefore device-managed managed won't be freed and memory cannot be assumed to have been cleared (because it hasn't been reallocated using kzalloc()) by the time the DRM driver is reloaded. It is therefore necessary to zero out the structures to prevent strange errors (such as slab corruptions) from occurring. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Thierry Reding 提交于
In order to make subsystem-wide changes easier, move the Tegra DRM driver back into the DRM tree. Signed-off-by: NThierry Reding <treding@nvidia.com>
-
- 22 4月, 2013 1 次提交
-
-
由 Terje Bergstrom 提交于
Make drm part of host1x driver. Signed-off-by: NArto Merilainen <amerilainen@nvidia.com> Signed-off-by: NTerje Bergstrom <tbergstrom@nvidia.com> Reviewed-by: NThierry Reding <thierry.reding@avionic-design.de> Tested-by: NThierry Reding <thierry.reding@avionic-design.de> Tested-by: NErik Faye-Lund <kusmabite@gmail.com> Signed-off-by: NThierry Reding <thierry.reding@avionic-design.de>
-
- 08 3月, 2013 1 次提交
-
-
由 Paul Bolle 提交于
Commit ac24c220 ("drm/tegra: Use generic HDMI infoframe helpers") added "select DRM_HDMI" to the DRM_TEGRA Kconfig entry. But there is no Kconfig symbol named DRM_HDMI. The select statement for that symbol is a nop. Drop it. What was needed to use HDMI functionality was to select HDMI (which this entry already did through depending on DRM) and to include linux/hdmi.h (which this commit also did). Signed-off-by: NPaul Bolle <pebolle@tiscali.nl> Acked-by: NThierry Reding <thierry.reding@avionic-design.de> Signed-off-by: NDave Airlie <airlied@redhat.com>
-