Age | Commit message (Collapse) | Author |
|
We were only looking in tegra, VESA and CEA tables.
Let's also check standard video mode definitions table
Signed-off-by: Dominik Sliwa <dominik.sliwa@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Hack to prevent boot lock-up if HDMI is not connected.
This has been observed on recent T20 SoC production lots produced some
when after mid 2015.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Dominik Sliwa <dominik.sliwa@toradex.com>
|
|
drivers/video/tegra/dc/dsi.c: In function 'tegra_dsi_read_fifo':
drivers/video/tegra/dc/dsi.c:2515:3: error: this 'if' clause does not
guard... [-Werror=misleading-indentation]
if (rd_fifo_cnt << 2 > DSI_READ_FIFO_DEPTH)
^~
drivers/video/tegra/dc/dsi.c:2518:4: note: ...this statement, but the
latter is misleadingly indented as if it is guarded by the 'if'
break;
^~~~~
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
When connected display EDID presents
aspect ratio that is in valid range,
but it's not in a table of valid ratios
accept it with a warning message.
Signed-off-by: Dominik Sliwa <dominik.sliwa@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
(tegra-l4t-r16-16.5)
Conflicts:
drivers/media/video/tegra_v4l2_camera.c
drivers/mmc/host/sdhci.c
drivers/watchdog/tegra_wdt.c
include/media/tegra_v4l2_camera.h
|
|
Our move to modedb lead to the HDMI display controller always being
enabled (unless forced off by vidargs). This patch makes sure it gets
disabled upon boot disconnected as well as upon later disconnect.
Note: This also fixes DVFS on Colibri T30 in the sense that it will
again stay at 400 MHz EMC as long as no DVI-D aka HDMI display is
connected during boot.
|
|
Don't initialize the whole display controller (dc) when framebuffer
mode is set to off.
This avoids creation of the /dev/tegra_dc_x device. The tegra X
driver requires for each tegra_dc_x device an framebuffer device
with the same id. This patch avoids creation of both, which makes
the tegra X driver load correctly.
Note: Turning off tegrafb0 still leads to kernel crash due to
hard coded device enumeration.
|
|
Before updating modes on HDMI hotplug, check if framebuffer is
registered at all. This allows to disable framebuffers completely.
|
|
Remove special clocks for Tegra 2, but use backup clock source
instead. This allows to run all common used resolution within
the drivers -1/+9% allowed band for pixelclock exactness.
|
|
verify variable screeninfo by checking xres and yres before
validating aspect ratio.
bug 1417318
Change-Id: I473f3e2f30888c053ca53559e33355f216d2a8d3
Signed-off-by: Pankaj Dabade <pdabade@nvidia.com>
Reviewed-on: http://git-master/r/340236
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Jong Kim <jongk@nvidia.com>
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
|
|
Add some more modes e.g. for full HD panel.
Also add tweaked pixel clock for Tegra 2 because the clock is always
a child of the peripherial clock and only some divisors are available.
|
|
Updated several comments to make code easier to read and understand.
Also use the front_porch workaround in any case, for HDMI output
too.
|
|
In order to find a viable resolution we not only parse VESA mode,
we also parse CEA (multimedia) modes and our own small modedb (for
specific touch screens).
|
|
|
|
Use new modedb based framebuffer settings by defining default_mode
in the display controllers platform data. Also impelmented the
fallback logic to this default_mode in case no kernel cmd line
parameter was set.
|
|
Allow to specify framebufffer videomode using kernel command line
parameters. NVIDIAs binary X driver later on picks up those settings
and start X with current mode settings, if no EDID data are available.
|
|
After suspend, mode filter might be called with empty yres. This leads
to division by zero when checking aspect ratio. Return as invalid mode
when yres is zero.
|
|
When hotpluging hdmi the read of edid often fails.
Add up to 4 retries with a 500ms delay before giving up.
|
|
arch/arm/mach-tegra/common.c
drivers/ata/ahci-tegra.c
|
|
Use 1x1 as the minimum window size.
Bug 1193195
Change-Id: I42e13fec82bbc2dc37bde6416088f3ae49b304b7
Signed-off-by: Jon Mayo <jmayo@nvidia.com>
Reviewed-on: http://git-master/r/173302
(cherry picked from commit 3f160560b48fdf501547b9fc1f7c5bf8bd5e32af)
Reviewed-on: http://git-master/r/190810
Reviewed-by: Eric Brower <ebrower@nvidia.com>
Tested-by: Eric Brower <ebrower@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
|
|
Fix manual rebase error
Change-Id: I3b2165488b11bddda271cecdc979341c130def9b
Signed-off-by: Shashank Sharma <shashanks@nvidia.com>
Reviewed-on: http://git-master/r/173554
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Winnie Hsu <whsu@nvidia.com>
|
|
Send change all vc's notification from HDMI hot-plug reader to
fbcon, so that the new selected mode can be applied on all the
vc's from vc1 to vc6. This sometimes causes corruption on HDMI
hot plugin, when fbcon is mapped to HDMI
Bug 1166008
Signed-off-by: Shashank Sharma <shashanks@nvidia.com>
Change-Id: Id173de3014597f79c8c8b31bbbee7c9c560547b6
Reviewed-on: http://git-master/r/168683
Reviewed-by: Matthew Pedro <mapedro@nvidia.com>
Tested-by: Matthew Pedro <mapedro@nvidia.com>
|
|
When porting change from mainline to balance dc irq, the change
of enable/disable order was not ported, thus dc irq is disabled
if dc is enabled during probe.
This is part of http://git-master/r/146107.
Original change is big for many bugs, only port one here.
bug 1173177
bug 1173038
bug 1008313
Change-Id: Idd703daca9f980e905b185eeeae19dc6309d76e5
Signed-off-by: Dongfang Shi <dshi@nvidia.com>
Reviewed-on: http://git-master/r/162868
(cherry picked from commit 6ddd8b02f7a17d2269290d06159c20860ffb92e9)
Signed-off-by: Jong Kim <jongk@nvidia.com>
Reviewed-on: http://git-master/r/173249
Reviewed-by: Winnie Hsu <whsu@nvidia.com>
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
|
|
Android R14 userspace seems to have issues with timestamp support:
[ 14.764337] host1x host1x: SurfaceFlinger: syncpoint id 8 (disp0_a) stuck waiting 3, timeout=2147483447
[ 14.773845] host1x host1x: id 8 (disp0_a) min 2 max 4
[ 14.779163] host1x host1x: id 9 (disp1_a) min 2 max 4
[ 14.784316] host1x host1x: id 18 (2d_0) min 21 max 25
[ 14.789586] host1x host1x: id 20 (disp0_b) min 2 max 4
[ 14.794889] host1x host1x: id 21 (disp1_b) min 2 max 4
[ 14.800241] host1x host1x: id 22 (3d) min 77 max 95
[ 14.805217] host1x host1x: id 24 (disp0_c) min 2 max 4
[ 14.810573] host1x host1x: id 25 (disp1_c) min 2 max 4
[ 14.815873] host1x host1x: id 26 (vblank0) min 800 max 0
[ 14.821264] host1x host1x: id 27 (vblank1) min 684 max 0
[ 14.826810] host1x host1x: waitbase id 3 val 77
Therefore conditionally revert it in that case for now.
See e4e2e776a3d4bf1adf37fc061cfdfb92281f3ace.
|
|
Conflicts:
arch/arm/mach-tegra/tegra3_usb_phy.c
arch/arm/mach-tegra/usb_phy.c
drivers/usb/gadget/tegra_udc.c
drivers/usb/otg/Makefile
drivers/video/tegra/fb.c
sound/soc/tegra/tegra_pcm.c
|
|
With our default gcc 4.7.2 toolchain from oe building nvhdcp with
activated CONFIG_CC_OPTIMIZE_FOR_SIZE fails as follows:
/linux-toradex.git/drivers/video/tegra/dc/nvhdcp.c: In function
'nvhdcp_downstream_worker':
/linux-toradex.git/drivers/video/tegra/dc/nvhdcp.c:807:3: error:
'b_status' may be used uninitialized in this function
[-Werror=maybe-uninitialized]
/linux-toradex.git/drivers/video/tegra/dc/nvhdcp.c:763:6: note:
'b_status' was declared here
make[5]: *** [drivers/video/tegra/dc/nvhdcp.o] Error 1
|
|
- Set frame duration to 0 in NULL modeset.
bug 1039104
Reviewed-on: http://git-master/r/127603
(cherry picked from commit 604cda21d79ed168e9863f0122eb0c23fa1a901b)
Change-Id: I0be1b96529e40a374e4507ecd3da990677d4cbd4
Signed-off-by: Raghavendra VK <rvk@nvidia.com>
Reviewed-on: http://git-master/r/130943
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
|
|
Set default mode for probe and resume to enable initialization of dc.1
Skipping this initialization results in hard system hang.
bug 1030415
Reviewed-on: http://git-master/r/124001
(cherry picked from commit 50fa5e50b74a0534d7524fb6d7dcaa65b2e6e74c)
Change-Id: Id9ad95e114a27c1667f0286443534a23b7fa64d4
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: http://git-master/r/128533
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
|
|
Set default videomode happens during probe and resume. _tegra_dc_enable
is also called during hotplug, setting default videomode there causes
hdcp test failure.
Bug 991805
Reviewed-on: http://git-master/r/121052
(cherry picked from commit 7d4e0461a88b8cf638963e69829274824fecc38b)
Change-Id: I98be07e883699ba9fa6e222bb1d8ea68d199dfc6
Signed-off-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-on: http://git-master/r/128532
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
|
|
Add wait for vsync support for one-shot panels. The code supports extension
of this feature to other panels.
Bug 1033411.
Change-Id: Ie4d6cb45e5de81083458169ccdfa33230235ed72
Signed-off-by: Rakesh Iyer <riyer@nvidia.com>
Reviewed-on: http://git-master/r/128927
Reviewed-by: Mrutyunjay Sawant <msawant@nvidia.com>
Tested-by: Mrutyunjay Sawant <msawant@nvidia.com>
|
|
This patch adds:
1. A kernel config option that hints to DC driver
to use the current value of the color depth
register as the default for initializing the FB
driver.
2. Checks to see if DC is enabled before reading
off the color depth register in tegra_dc_probe.
Change-Id: I852cc1328fcf42f33052f46b86d753e691744329
Signed-off-by: Christopher Freeman <cfreeman@nvidia.com>
Reviewed-on: http://git-master/r/127297
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
|
|
This reverts commit 51f746421b73f8f378bd7908b35fd6c79687e239.
Bug 1030468
Bug 1030415
Signed-off-by: Matt Wagner <mwagner@nvidia.com>
Change-Id: If9b5febd812e84848913431dcaf0bdefc518e5d1
Reviewed-on: http://git-master/r/126948
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
|
|
This reverts commit 77c8da0aa18fad9e33fd8b1afb2013b1a476d74e.
Bug 1030468
Bug 1030415
Signed-off-by: Matt Wagner <mwagner@nvidia.com>
Change-Id: I2b85159dfcfc40b3a3632dc1300c729e0977a18f
Reviewed-on: http://git-master/r/126946
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
|
|
bug 1021221
Change-Id: Ifbe007de5bdeafaa15a0b3f2a138086045eba160
Signed-off-by: Raghavendra VK <rvk@nvidia.com>
Reviewed-on: http://git-master/r/118179
(cherry picked from commit 74be8d4e7210d7bcea0d55565a7cbb06d6cc960e)
Reviewed-on: http://git-master/r/121087
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Robert Morell <rmorell@nvidia.com>
|
|
Due to issues with rcu notifiers on secureos, modifying dc flip
notifications to use a simple callback instead.
Bug 1028850
Change-Id: Iebf2a6d64d7316e3df2b88444201f9f9a29698c5
Signed-off-by: Ilan Aelion <iaelion@nvidia.com>
Reviewed-on: http://git-master/r/123103
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-by: Nitin Kumbhar <nkumbhar@nvidia.com>
|
|
Lock was missing around one state set, so we add it here.
Bug 1024031
Change-Id: Iab013fff7e8519e8bcc91e84a5ca7cd6e6e783da
Signed-off-by: Matt Wagner <mwagner@nvidia.com>
Reviewed-on: http://git-master/r/122802
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
|
|
Locking in nvhdcp was set up in such a way that we couldn't
change the state of the HDMI plug while negotiating the HDCP connection.
Another lock was added that is only taken when the state of the plug or
hdcp session are changed. This enables correct failure if the plug is removed
during negotiation.
Bug 1024031
Reviewed-on: http://git-master/r/120546
(cherry picked from commit 51f746421b73f8f378bd7908b35fd6c79687e239)
Change-Id: Id9a9b09f2cd03a1b51e7334391f35fc076a1e1dd
Signed-off-by: Matt Wagner <mwagner@nvidia.com>
Reviewed-on: http://git-master/r/121399
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
|
|
In case tegra_dc_init fails, this change will prevent unbalanced call
to dc->out_ops->disable().
Also mark tegra_dc_io_end in case tegra_dc_controller_enable
fails, this is required to not stop device from going into suspend mode.
Bug 1003874
Change-Id: I5af6b46fc50e1ae8e54f9f4eb8540d751364fed7
Signed-off-by: Gaurav Batra <gbatra@nvidia.com>
Reviewed-on: http://git-master/r/120108
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
|
|
change printk to trace_printk
Bug 995270
Change-Id: I71caadb76f6101f377e44ad3f3dc24ede0a099d5
Signed-off-by: Jay Cheng <jacheng@nvidia.com>
|
|
Fixing host transmission with HS enabled.
Bug 999141
Change-Id: I9dcc5282971830865dacf16dbbbebf4096aeb00e
Signed-off-by: Animesh Kishore <ankishore@nvidia.com>
Reviewed-on: http://git-master/r/118315
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
|
|
Creates a miscdev at /dev/tegra-throughput which gl will use to set a
target frame rate. In addition it receives notifications from dc on
flip events. On each notification the percentage ratio of the actual
frame time to the target frame time is calculated. In subsequent
changes this ratio will be reported to other modules as a throughput
hint.
Bug 991589
Change-Id: Ieaa2b2755b63d2d071de31e3ef819d4c3b51a956
Signed-off-by: Ilan Aelion <iaelion@nvidia.com>
Reviewed-on: http://git-master/r/116865
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
|
|
The one shot thread will clock gate the modules periodically. This will ensure
relevant paths in dc driver have an active dc clock and dsi host.
Bug 1013172
Change-Id: Ibb505e35044f31405c06cb9fa0d6fdf78aafd4a6
Signed-off-by: Rakesh Iyer <riyer@nvidia.com>
Reviewed-on: http://git-master/r/117137
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Jon Mayo <jmayo@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Animesh Kishore <ankishore@nvidia.com>
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
|
|
Send host commands to panel during vertical blanking
of a frame. Implementation is generic enough to
handle both long and short packets.
Bug 1009863
Change-Id: I9a80641df2d8b67eb3649d220c028543b246a5f3
Signed-off-by: Animesh Kishore <ankishore@nvidia.com>
Reviewed-on: http://git-master/r/114990
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
|
|
Ported Peter's original change 86413 to main.
board-p1852-panel.c:
Add support for primary and secondary LVDS displays, and secondary HDMI display.
board-p1852-pinmux.c:
Add configuration for HDMI and LVDS
board-p1852.c:
board-p1852.h:
Support for determining which p1852 sku is in use
hdmi.c:If no edid retrieved, but there's a hardwired mode, enable it
(used to support HDMI->LVDS output on p1852 sku 2)
devices.c:added secondary display data.
Bug 977859
Bug 994011
Change-Id: Ide8fb6bf7dd873b1d50269fb98d7c1687e4d9073
Signed-off-by: Dongfang Shi <dshi@nvidia.com>
Reviewed-on: http://git-master/r/100438
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
|
|
Without the CONFIG_SWITCH enabled, there are multiple unused
variable warnings that get treated as error.
bug 949219
Signed-off-by: Rhyland Klein <rklein@nvidia.com>
Change-Id: I39512367fa4bbd3b00a435d0d7a31cfede9e712f
Reviewed-on: http://git-master/r/115428
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-by: Sanjay Singh Rawat <srawat@nvidia.com>
|
|
Use the right number of parameters for tegra_dc_calc_fresh() when called from
print_mode(). This code is only used for debug.
Change-Id: I4d0bb8b1700f670644057039fe8d0bc315b27c1d
Signed-off-by: Jon Mayo <jmayo@nvidia.com>
Reviewed-on: http://git-master/r/115485
Reviewed-by: Automatic_Commit_Validation_User
|
|
After making pclk output ahead of LVDS_SHDN# , data output is later than
panel ready then caused partial black screen. Force triggered data output to
get it fixed.
Bug 972377
Bug 976081
Bug 1001434
Change-Id: Icd455d7439f622e46295158a5435286c521526aa
Signed-off-by: Roger Hsieh <rhsieh@nvidia.com>
Reviewed-on: http://git-master/r/113164
Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
|
|
This is similar to commit a62be5b5595ad86411ced81bceeb3d6a693426d2
pushed for rel-14 branch.
Bug 1004341
Signed-off-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-on: http://git-master/r/111227
(cherry-picked from fbfce3106da8dad18948103c812bdd9d45ffdd06)
Change-Id: Ib459094fd6499b3cc63bc534bf36e57dc98ce62b
Reviewed-on: http://git-master/r/114584
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
|
|
Allows overidding the default disp mode without having to recompile
the kernel. Boot args can be specified in the following format:
disp_params=<rgb|hdmi|dsi>:pclk,h_active,v_active,h_ref_to_sync,
v_ref_to_sync,h_sync_width,v_sync_width,h_back_porch,v_back_porch,
h_front_porch,v_front_porch;<rgb|hdmi|dsi>:pclk,h_active,...
Bug 969088
Change-Id: Id0acf608de145493f6749d5b799d4bbb8162ba72
Signed-off-by: Nirav Patel <nipatel@nvidia.com>
Reviewed-on: http://git-master/r/104604
Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
|
|
- Handled warning of unused label.
bug 949219
Change-Id: I72e22063b199562c4a4c065419c1656e3e8ff7ff
Signed-off-by: Sanjay Singh Rawat <srawat@nvidia.com>
Reviewed-on: http://git-master/r/113880
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
|