Displaying 20 results from an estimated 25 matches for "get_tmds_link_bandwidth".
2015 Nov 04
1
[PATCH v3 1/2] disp: activate dual link TMDS links only when possible
From: Hauke Mehrtens <hauke at hauke-m.de>
Without this patch a pixel clock rate above 165 MHz on a TMDS link is
assumed to be dual link. This is true for DVI, but not for HDMI. HDMI
supports no dual link, but it supports pixel clock rates above 165 MHz.
Only activate Dual Link mode when it is actually possible and requested.
Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
2015 Nov 04
1
[PATCH v2 1/2] disp: activate dual link TMDS links only when possible
From: Hauke Mehrtens <hauke at hauke-m.de>
Without this patch a pixel clock rate above 165 MHz on a TMDS link is
assumed to be dual link. This is true for DVI, but not for HDMI. HDMI
supports no dual link, but it supports pixel clock rates above 165 MHz.
Only activate Dual Link mode when it is actually possible and requested.
Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
2018 Sep 04
6
[PATCH 0/5] drm/nouveau: add basic HDMI 2.0 support
This is the beginnings of HDMI 2.0 support. All of the "extra"
features are left out, such as 12/16bpc, YUV420, etc.
I've verified that with this code, a GP108 (GT1030) can switch between
4k at 60 and 1920x1080 at 60 on a LG 4K TV. Further, I've verified via i2c
tools, that the SCDC writes really do happen.
I suspect that the patch for keeping track of the high-speed TMDS
2018 Aug 03
2
[PATCH v3 5/6] kms/nv50: detect HDMI max MHz correctly
...E_ENCODER_TMDS;
> break;
> diff --git a/drm/nouveau/nouveau_connector.c b/drm/nouveau/nouveau_connector.c
> index 074e6d52..65fac604 100644
> --- a/drm/nouveau/nouveau_connector.c
> +++ b/drm/nouveau/nouveau_connector.c
> @@ -980,15 +980,20 @@ static unsigned
> get_tmds_link_bandwidth(struct drm_connector *connector, bool hdmi)
> {
> struct nouveau_connector *nv_connector = nouveau_connector(connector);
> + struct nouveau_encoder *nv_encoder = nv_connector->detected_encoder;
> struct nouveau_drm *drm = nouveau_drm(connector->dev);
>...
2018 Jul 20
1
[PATCH 5/6] kms/nv50: detect HDMI max MHz correctly
...DE_ENCODER_TMDS;
> break;
> diff --git a/drm/nouveau/nouveau_connector.c b/drm/nouveau/nouveau_connector.c
> index 074e6d52..a955f225 100644
> --- a/drm/nouveau/nouveau_connector.c
> +++ b/drm/nouveau/nouveau_connector.c
> @@ -980,9 +980,14 @@ static unsigned
> get_tmds_link_bandwidth(struct drm_connector *connector, bool hdmi)
> {
> struct nouveau_connector *nv_connector = nouveau_connector(connector);
> + struct nouveau_encoder *nv_encoder = nv_connector->detected_encoder;
> struct nouveau_drm *drm = nouveau_drm(connector->dev);
>...
2024 Jan 12
2
[PATCH 1/6] drm/nouveau: convert to using is_hdmi and has_audio from display info
...H << 19) / asyh->view.oW;
diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.c b/drivers/gpu/drm/nouveau/nouveau_connector.c
index 856b3ef5edb8..938832a6af15 100644
--- a/drivers/gpu/drm/nouveau/nouveau_connector.c
+++ b/drivers/gpu/drm/nouveau/nouveau_connector.c
@@ -1034,7 +1034,7 @@ get_tmds_link_bandwidth(struct drm_connector *connector)
unsigned duallink_scale =
nouveau_duallink && nv_encoder->dcb->duallink_possible ? 2 : 1;
- if (drm_detect_hdmi_monitor(nv_connector->edid)) {
+ if (nv_connector->base.display_info.is_hdmi) {
info = &nv_connector->base.display_in...
2024 Jan 14
1
[PATCH 1/6] drm/nouveau: convert to using is_hdmi and has_audio from display info
...;view.oW;
> diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.c b/drivers/gpu/drm/nouveau/nouveau_connector.c
> index 856b3ef5edb8..938832a6af15 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_connector.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_connector.c
> @@ -1034,7 +1034,7 @@ get_tmds_link_bandwidth(struct drm_connector *connector)
> unsigned duallink_scale =
> nouveau_duallink && nv_encoder->dcb->duallink_possible ? 2 : 1;
>
> - if (drm_detect_hdmi_monitor(nv_connector->edid)) {
> + if (nv_connector->base.display_info.is_h...
2018 Apr 24
0
[PATCH] drm/nouveau: fix mode_valid's return type
...changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.c b/drivers/gpu/drm/nouveau/nouveau_connector.c
index 6ed9cb053..52b425cdf 100644
--- a/drivers/gpu/drm/nouveau/nouveau_connector.c
+++ b/drivers/gpu/drm/nouveau/nouveau_connector.c
@@ -1005,7 +1005,7 @@ get_tmds_link_bandwidth(struct drm_connector *connector, bool hdmi)
return 112000;
}
-static int
+static enum drm_mode_status
nouveau_connector_mode_valid(struct drm_connector *connector,
struct drm_display_mode *mode)
{
--
2.17.0
2018 Jul 20
0
[PATCH 5/6] kms/nv50: detect HDMI max MHz correctly
...ODER_TMDS;
+ break;
default:
type = DRM_MODE_ENCODER_TMDS;
break;
diff --git a/drm/nouveau/nouveau_connector.c b/drm/nouveau/nouveau_connector.c
index 074e6d52..a955f225 100644
--- a/drm/nouveau/nouveau_connector.c
+++ b/drm/nouveau/nouveau_connector.c
@@ -980,9 +980,14 @@ static unsigned
get_tmds_link_bandwidth(struct drm_connector *connector, bool hdmi)
{
struct nouveau_connector *nv_connector = nouveau_connector(connector);
+ struct nouveau_encoder *nv_encoder = nv_connector->detected_encoder;
struct nouveau_drm *drm = nouveau_drm(connector->dev);
struct dcb_output *dcb = nv_connector->d...
2018 Aug 03
0
[PATCH v3 5/6] kms/nv50: detect HDMI max MHz correctly
...DER_TMDS;
+ break;
default:
type = DRM_MODE_ENCODER_TMDS;
break;
diff --git a/drm/nouveau/nouveau_connector.c b/drm/nouveau/nouveau_connector.c
index 074e6d52..65fac604 100644
--- a/drm/nouveau/nouveau_connector.c
+++ b/drm/nouveau/nouveau_connector.c
@@ -980,15 +980,20 @@ static unsigned
get_tmds_link_bandwidth(struct drm_connector *connector, bool hdmi)
{
struct nouveau_connector *nv_connector = nouveau_connector(connector);
+ struct nouveau_encoder *nv_encoder = nv_connector->detected_encoder;
struct nouveau_drm *drm = nouveau_drm(connector->dev);
struct dcb_output *dcb = nv_connector->d...
2018 Aug 03
0
[PATCH v3 5/6] kms/nv50: detect HDMI max MHz correctly
...break;
>> diff --git a/drm/nouveau/nouveau_connector.c b/drm/nouveau/nouveau_connector.c
>> index 074e6d52..65fac604 100644
>> --- a/drm/nouveau/nouveau_connector.c
>> +++ b/drm/nouveau/nouveau_connector.c
>> @@ -980,15 +980,20 @@ static unsigned
>> get_tmds_link_bandwidth(struct drm_connector *connector, bool hdmi)
>> {
>> struct nouveau_connector *nv_connector = nouveau_connector(connector);
>> + struct nouveau_encoder *nv_encoder = nv_connector->detected_encoder;
>> struct nouveau_drm *drm = nouveau_drm(connector-&...
2020 Feb 12
0
[PATCH 4/4] drm/nouveau/kms/nv50-: Share DP SST mode_valid() handling with MST
...u/drm/nouveau/nouveau_connector.c
@@ -38,6 +38,7 @@
#include "nouveau_reg.h"
#include "nouveau_drv.h"
#include "dispnv04/hw.h"
+#include "dispnv50/disp.h"
#include "nouveau_acpi.h"
#include "nouveau_display.h"
@@ -1033,6 +1034,24 @@ get_tmds_link_bandwidth(struct drm_connector *connector)
return 112000 * duallink_scale;
}
+enum drm_mode_status
+nouveau_conn_mode_clock_valid(const struct drm_display_mode *mode,
+ const unsigned min_clock,
+ const unsigned max_clock,
+ unsigned *clock)
+{
+ if ((mode->flags & DRM_MO...
2015 Oct 10
2
[PATCH v2 0/2] drm/nouveau: add support for 2560x1440@56 over HDMI
These patches are adding support for outputting 2560x1440 at 56 over HDMI.
This needs a pixel clock of 225 MHz which was not supported before.
This was tested in a dual monitor setup with a GF114 (GTX 560 TI) and
one HDMI monitor running with 2560x1440 at 56 and one DVI monitor running
with 1920x1200 at 60. This still needs testing on other graphics cards and
with dual link DVI.
There is no
2020 Sep 29
1
[PATCH v2 1/2] drm/nouveau/kms/nv50-: Get rid of bogus nouveau_conn_mode_valid()
...1 insertions(+), 31 deletions(-)
diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.c b/drivers/gpu/drm/nouveau/nouveau_connector.c
index 49dd0cbc332f..6f21f36719fc 100644
--- a/drivers/gpu/drm/nouveau/nouveau_connector.c
+++ b/drivers/gpu/drm/nouveau/nouveau_connector.c
@@ -1023,29 +1023,6 @@ get_tmds_link_bandwidth(struct drm_connector *connector)
return 112000 * duallink_scale;
}
-enum drm_mode_status
-nouveau_conn_mode_clock_valid(const struct drm_display_mode *mode,
- const unsigned min_clock,
- const unsigned max_clock,
- unsigned int *clock_out)
-{
- unsigned int clock = mod...
2023 Mar 30
1
[PATCH 00/12] drm: reduce drm_detect_monitor_audio/drm_detect_hdmi_monitor/edid_blob_ptr usage
THIS IS UNTESTED for anything other than i915.
Use previously parsed EDID where possible for display audio/hdmi
detection. This in turn reduces edid_blob_ptr usage in a number of
places. Further reduce edid_blob_ptr usage, and document that it should
not be used by drivers directly.
BR,
Jani.
Cc: Alain Volmat <alain.volmat at foss.st.com>
Cc: Alex Deucher <alexander.deucher at
2020 Nov 06
3
[PATCH 0/2] drm/nouveau: Stable backport of DP clock fixes for v5.9
Just a backport of the two patches for v5.9 that you'll want to apply.
The first one was Cc'd to stable, but I forgot to Cc the second one as
well.
Lyude Paul (2):
drm/nouveau/kms/nv50-: Get rid of bogus nouveau_conn_mode_valid()
drm/nouveau/kms/nv50-: Fix clock checking algorithm in
nv50_dp_mode_valid()
drivers/gpu/drm/nouveau/nouveau_connector.c | 36 ++++++---------------
2015 Aug 08
4
[PATCH 0/2] drm/nouveau: add support for 2560x1440@56 over HDMI
These patches are adding support for outputting 2560x1440 at 56 over HDMI.
This needs a pixel clock of 225 MHz which was not supported before.
This was tested in a dual monitor setup with a GF114 (GTX 560 TI) and
one HDMI monitor running with 2560x1440 at 56 and one DVI monitor running
with 1920x1200 at 60. This still needs testing on other graphics cards and
with dual link DVI.
There is no
2015 Jul 06
7
[Bug 91236] New: [NVC3] Passive DP to HDMI adapter cannot use pixel clocks greater than 165 MHz
...is worked around the mode is higher than 165 MHz, so the display port
connection will enter dual link mode, which must be stopped in this case.
We attempted to allow the mode to pass through to see if it might just work.
There were two changes:
drivers/gpu/drm/nouveau/nouvau_connector.c modified get_tmds_link_bandwidth()
to return 340000 (HDMI 1.3 spec)
drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c commented out line 1547-1548 to
not use dual link mode.
The result is a failure. The screen flickers and does not show anything. A full
dmesg log with nouveau.debug=trace is attached.
I am a C programmer but I hav...
2018 Jul 20
7
[PATCH 0/6] improve feature detection
This is mainly for dropping interlaced modes on DP connectors if the GPU
would otherwise display garbage or EVO timesout.
It also adds experimental detection of the HDMI clock limit we currently
hard limit depending on the GPU generation.
Starting with GF110 GPUs, we can retrieve the limit directly from the GPU
and may make the hdmimhz parameter obsolete.
Testing this series with 2560x1440 or
2018 Aug 03
7
[PATCH v3 0/6] improve feature detection
small update to my last version I sent out.
Patches 3-6 are optional and should only improve detecting the max clocks
for HDMI and DP, but they didn't underwent big testing and I am a bit
concerned, that it might break detecting the DP limits on some boards.
Karol Herbst (6):
kms/nv50: move nv50_mstm out of the dp union in nouveau_encoder
kms/nv50: reject interlaced modes if the hardware