* [PATCH 1/3] drm/i915: make i915 the source of acpi device ids for _DOD
2016-11-16 11:29 [PATCH 0/3] drm/i915/opregion: proper handling of DIDL, and some hacks on CADL Jani Nikula
@ 2016-11-16 11:29 ` Jani Nikula
2016-11-16 11:29 ` [PATCH 2/3] drm/i915/opregion: fill in the CADL from connector list, not DIDL Jani Nikula
` (3 subsequent siblings)
4 siblings, 0 replies; 10+ messages in thread
From: Jani Nikula @ 2016-11-16 11:29 UTC (permalink / raw)
To: intel-gfx
Cc: Jan-Marek Glogowski, Jani Nikula, Rainer Koenig, Paolo Stivanin,
Marcos Paulo de Souza
The graphics driver is supposed to define the DIDL, which are used for
_DOD, not the BIOS. Restore that behaviour.
This is basically a revert of
commit 3143751ff51a163b77f7efd389043e038f3e008e
Author: Zhang Rui <rui.zhang@intel.com>
Date: Mon Mar 29 15:12:16 2010 +0800
drm/i915: set DIDL using the ACPI video output device _ADR method return.
which went out of its way to cater to a specific BIOS, setting up DIDL
based on _ADR method. Perhaps that approach worked on that specific
machine, but on the machines I checked the _ADR method invents the
device identifiers out of thin air if DIDL has not been set. The source
for _ADR is also supposed to be the DIDL set by the driver, not the
other way around.
With this, we'll also limit the number of outputs to what the driver
actually has.
v2: do not set ACPI_DEVICE_ID_SCHEME in the device id (Peter Wu)
v3: Rebase
Cc: Peter Wu <peter@lekensteyn.nl>
Cc: Rainer Koenig <Rainer.Koenig@ts.fujitsu.com>
Cc: Jan-Marek Glogowski <glogow@fbihome.de>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Cc: Paolo Stivanin <paolostivanin@fastmail.fm>
Tested-by: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Reviewed-and-tested-by: Peter Wu <peter@lekensteyn.nl>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/intel_drv.h | 3 ++
drivers/gpu/drm/i915/intel_opregion.c | 88 ++++++++++-------------------------
2 files changed, 27 insertions(+), 64 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index 0be407e50d61..5b93455b98b7 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -294,6 +294,9 @@ struct intel_connector {
*/
struct intel_encoder *encoder;
+ /* ACPI device id for ACPI and driver cooperation */
+ u32 acpi_device_id;
+
/* Reads out the current hw, returning true if the connector is enabled
* and active (i.e. dpms ON state). */
bool (*get_hw_state)(struct intel_connector *);
diff --git a/drivers/gpu/drm/i915/intel_opregion.c b/drivers/gpu/drm/i915/intel_opregion.c
index 7acbbbf97833..6bac71c26e94 100644
--- a/drivers/gpu/drm/i915/intel_opregion.c
+++ b/drivers/gpu/drm/i915/intel_opregion.c
@@ -674,11 +674,11 @@ static void set_did(struct intel_opregion *opregion, int i, u32 val)
}
}
-static u32 acpi_display_type(struct drm_connector *connector)
+static u32 acpi_display_type(struct intel_connector *connector)
{
u32 display_type;
- switch (connector->connector_type) {
+ switch (connector->base.connector_type) {
case DRM_MODE_CONNECTOR_VGA:
case DRM_MODE_CONNECTOR_DVIA:
display_type = ACPI_DISPLAY_TYPE_VGA;
@@ -707,7 +707,7 @@ static u32 acpi_display_type(struct drm_connector *connector)
display_type = ACPI_DISPLAY_TYPE_OTHER;
break;
default:
- MISSING_CASE(connector->connector_type);
+ MISSING_CASE(connector->base.connector_type);
display_type = ACPI_DISPLAY_TYPE_OTHER;
break;
}
@@ -718,34 +718,9 @@ static u32 acpi_display_type(struct drm_connector *connector)
static void intel_didl_outputs(struct drm_i915_private *dev_priv)
{
struct intel_opregion *opregion = &dev_priv->opregion;
- struct pci_dev *pdev = dev_priv->drm.pdev;
- struct drm_connector *connector;
- acpi_handle handle;
- struct acpi_device *acpi_dev, *acpi_cdev, *acpi_video_bus = NULL;
- unsigned long long device_id;
- acpi_status status;
- u32 temp, max_outputs;
- int i = 0;
-
- handle = ACPI_HANDLE(&pdev->dev);
- if (!handle || acpi_bus_get_device(handle, &acpi_dev))
- return;
-
- if (acpi_is_video_device(handle))
- acpi_video_bus = acpi_dev;
- else {
- list_for_each_entry(acpi_cdev, &acpi_dev->children, node) {
- if (acpi_is_video_device(acpi_cdev->handle)) {
- acpi_video_bus = acpi_cdev;
- break;
- }
- }
- }
-
- if (!acpi_video_bus) {
- DRM_DEBUG_KMS("No ACPI video bus found\n");
- return;
- }
+ struct intel_connector *connector;
+ int i = 0, max_outputs;
+ int display_index[16] = {};
/*
* In theory, did2, the extended didl, gets added at opregion version
@@ -757,46 +732,31 @@ static void intel_didl_outputs(struct drm_i915_private *dev_priv)
max_outputs = ARRAY_SIZE(opregion->acpi->didl) +
ARRAY_SIZE(opregion->acpi->did2);
- list_for_each_entry(acpi_cdev, &acpi_video_bus->children, node) {
- if (i >= max_outputs) {
- DRM_DEBUG_KMS("More than %u outputs detected via ACPI\n",
- max_outputs);
- return;
- }
- status = acpi_evaluate_integer(acpi_cdev->handle, "_ADR",
- NULL, &device_id);
- if (ACPI_SUCCESS(status)) {
- if (!device_id)
- goto blind_set;
- set_did(opregion, i++, (u32)(device_id & 0x0f0f));
- }
+ for_each_intel_connector(&dev_priv->drm, connector) {
+ u32 device_id, type;
+
+ device_id = acpi_display_type(connector);
+
+ /* Use display type specific display index. */
+ type = (device_id & ACPI_DISPLAY_TYPE_MASK)
+ >> ACPI_DISPLAY_TYPE_SHIFT;
+ device_id |= display_index[type]++ << ACPI_DISPLAY_INDEX_SHIFT;
+
+ connector->acpi_device_id = device_id;
+ if (i < max_outputs)
+ set_did(opregion, i, device_id);
+ i++;
}
-end:
DRM_DEBUG_KMS("%d outputs detected\n", i);
+ if (i > max_outputs)
+ DRM_ERROR("More than %d outputs in connector list\n",
+ max_outputs);
+
/* If fewer than max outputs, the list must be null terminated */
if (i < max_outputs)
set_did(opregion, i, 0);
- return;
-
-blind_set:
- i = 0;
- list_for_each_entry(connector,
- &dev_priv->drm.mode_config.connector_list, head) {
- int display_type = acpi_display_type(connector);
-
- if (i >= max_outputs) {
- DRM_DEBUG_KMS("More than %u outputs in connector list\n",
- max_outputs);
- return;
- }
-
- temp = get_did(opregion, i);
- set_did(opregion, i, temp | (1 << 31) | display_type | i);
- i++;
- }
- goto end;
}
static void intel_setup_cadls(struct drm_i915_private *dev_priv)
--
2.1.4
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH 2/3] drm/i915/opregion: fill in the CADL from connector list, not DIDL
2016-11-16 11:29 [PATCH 0/3] drm/i915/opregion: proper handling of DIDL, and some hacks on CADL Jani Nikula
2016-11-16 11:29 ` [PATCH 1/3] drm/i915: make i915 the source of acpi device ids for _DOD Jani Nikula
@ 2016-11-16 11:29 ` Jani Nikula
2016-11-16 11:29 ` [PATCH 3/3] drm/i915/opregion: put internal panels to the front of CADL Jani Nikula
` (2 subsequent siblings)
4 siblings, 0 replies; 10+ messages in thread
From: Jani Nikula @ 2016-11-16 11:29 UTC (permalink / raw)
To: intel-gfx
Cc: Jan-Marek Glogowski, Jani Nikula, Rainer Koenig, Paolo Stivanin,
Marcos Paulo de Souza
This is essentially the same thing as duplicating DIDL now that the
connector list has the ACPI device IDs.
Cc: Peter Wu <peter@lekensteyn.nl>
Cc: Rainer Koenig <Rainer.Koenig@ts.fujitsu.com>
Cc: Jan-Marek Glogowski <glogow@fbihome.de>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Cc: Paolo Stivanin <paolostivanin@fastmail.fm>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/intel_opregion.c | 48 +++++++++++++----------------------
1 file changed, 18 insertions(+), 30 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_opregion.c b/drivers/gpu/drm/i915/intel_opregion.c
index 6bac71c26e94..024ae9b393e7 100644
--- a/drivers/gpu/drm/i915/intel_opregion.c
+++ b/drivers/gpu/drm/i915/intel_opregion.c
@@ -642,24 +642,6 @@ static struct notifier_block intel_opregion_notifier = {
* (version 3)
*/
-static u32 get_did(struct intel_opregion *opregion, int i)
-{
- u32 did;
-
- if (i < ARRAY_SIZE(opregion->acpi->didl)) {
- did = opregion->acpi->didl[i];
- } else {
- i -= ARRAY_SIZE(opregion->acpi->didl);
-
- if (WARN_ON(i >= ARRAY_SIZE(opregion->acpi->did2)))
- return 0;
-
- did = opregion->acpi->did2[i];
- }
-
- return did;
-}
-
static void set_did(struct intel_opregion *opregion, int i, u32 val)
{
if (i < ARRAY_SIZE(opregion->acpi->didl)) {
@@ -762,19 +744,25 @@ static void intel_didl_outputs(struct drm_i915_private *dev_priv)
static void intel_setup_cadls(struct drm_i915_private *dev_priv)
{
struct intel_opregion *opregion = &dev_priv->opregion;
+ struct intel_connector *connector;
int i = 0;
- u32 disp_id;
-
- /* Initialize the CADL field by duplicating the DIDL values.
- * Technically, this is not always correct as display outputs may exist,
- * but not active. This initialization is necessary for some Clevo
- * laptops that check this field before processing the brightness and
- * display switching hotkeys. Just like DIDL, CADL is NULL-terminated if
- * there are less than eight devices. */
- do {
- disp_id = get_did(opregion, i);
- opregion->acpi->cadl[i] = disp_id;
- } while (++i < 8 && disp_id != 0);
+
+ /*
+ * Initialize the CADL field from the connector device ids. This is
+ * essentially the same as copying from the DIDL. Technically, this is
+ * not always correct as display outputs may exist, but not active. This
+ * initialization is necessary for some Clevo laptops that check this
+ * field before processing the brightness and display switching hotkeys.
+ */
+ for_each_intel_connector(&dev_priv->drm, connector) {
+ if (i >= ARRAY_SIZE(opregion->acpi->cadl))
+ break;
+ opregion->acpi->cadl[i++] = connector->acpi_device_id;
+ }
+
+ /* If fewer than 8 active devices, the list must be null terminated */
+ if (i < ARRAY_SIZE(opregion->acpi->cadl))
+ opregion->acpi->cadl[i] = 0;
}
void intel_opregion_register(struct drm_i915_private *dev_priv)
--
2.1.4
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH 3/3] drm/i915/opregion: put internal panels to the front of CADL
2016-11-16 11:29 [PATCH 0/3] drm/i915/opregion: proper handling of DIDL, and some hacks on CADL Jani Nikula
2016-11-16 11:29 ` [PATCH 1/3] drm/i915: make i915 the source of acpi device ids for _DOD Jani Nikula
2016-11-16 11:29 ` [PATCH 2/3] drm/i915/opregion: fill in the CADL from connector list, not DIDL Jani Nikula
@ 2016-11-16 11:29 ` Jani Nikula
2016-11-16 12:46 ` ✗ Fi.CI.BAT: failure for drm/i915/opregion: proper handling of DIDL, and some hacks on CADL Patchwork
2016-11-17 9:24 ` [PATCH 0/3] " Rainer Koenig
4 siblings, 0 replies; 10+ messages in thread
From: Jani Nikula @ 2016-11-16 11:29 UTC (permalink / raw)
To: intel-gfx
Cc: Jan-Marek Glogowski, Jani Nikula, Rainer Koenig, Paolo Stivanin,
Marcos Paulo de Souza
The attempts to update CADL based on the actual active connectors have
not been successful. That is the right thing to do ultimately, but there
must be something we're still missing.
In the mean time, change the dumb CADL initialization we currently have
to put internal panels in front of the CADL to ensure they're included
in the list. (There's a max of eight.) Hopefully this ensures the BIOS
does not block backlight hotkey events, thinking the internal panel is
off.
Cc: Peter Wu <peter@lekensteyn.nl>
Cc: Rainer Koenig <Rainer.Koenig@ts.fujitsu.com>
Cc: Jan-Marek Glogowski <glogow@fbihome.de>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Marcos Paulo de Souza <marcos.souza.org@gmail.com>
Cc: Paolo Stivanin <paolostivanin@fastmail.fm>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
---
drivers/gpu/drm/i915/intel_opregion.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/drivers/gpu/drm/i915/intel_opregion.c b/drivers/gpu/drm/i915/intel_opregion.c
index 024ae9b393e7..cb58194973ae 100644
--- a/drivers/gpu/drm/i915/intel_opregion.c
+++ b/drivers/gpu/drm/i915/intel_opregion.c
@@ -753,8 +753,24 @@ static void intel_setup_cadls(struct drm_i915_private *dev_priv)
* not always correct as display outputs may exist, but not active. This
* initialization is necessary for some Clevo laptops that check this
* field before processing the brightness and display switching hotkeys.
+ * Put internal panels in front of the list to ensure they're not left
+ * out.
*/
for_each_intel_connector(&dev_priv->drm, connector) {
+ if ((connector->acpi_device_id & ACPI_DISPLAY_TYPE_MASK) !=
+ ACPI_DISPLAY_TYPE_INTERNAL_DIGITAL)
+ continue;
+
+ if (i >= ARRAY_SIZE(opregion->acpi->cadl))
+ break;
+ opregion->acpi->cadl[i++] = connector->acpi_device_id;
+ }
+
+ for_each_intel_connector(&dev_priv->drm, connector) {
+ if ((connector->acpi_device_id & ACPI_DISPLAY_TYPE_MASK) ==
+ ACPI_DISPLAY_TYPE_INTERNAL_DIGITAL)
+ continue;
+
if (i >= ARRAY_SIZE(opregion->acpi->cadl))
break;
opregion->acpi->cadl[i++] = connector->acpi_device_id;
--
2.1.4
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 10+ messages in thread* ✗ Fi.CI.BAT: failure for drm/i915/opregion: proper handling of DIDL, and some hacks on CADL
2016-11-16 11:29 [PATCH 0/3] drm/i915/opregion: proper handling of DIDL, and some hacks on CADL Jani Nikula
` (2 preceding siblings ...)
2016-11-16 11:29 ` [PATCH 3/3] drm/i915/opregion: put internal panels to the front of CADL Jani Nikula
@ 2016-11-16 12:46 ` Patchwork
2016-11-17 9:24 ` [PATCH 0/3] " Rainer Koenig
4 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2016-11-16 12:46 UTC (permalink / raw)
To: Jani Nikula; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/opregion: proper handling of DIDL, and some hacks on CADL
URL : https://patchwork.freedesktop.org/series/15403/
State : failure
== Summary ==
Series 15403v1 drm/i915/opregion: proper handling of DIDL, and some hacks on CADL
https://patchwork.freedesktop.org/api/1.0/series/15403/revisions/1/mbox/
Test gem_busy:
Subgroup basic-hang-default:
pass -> FAIL (fi-hsw-4770r)
fi-bdw-5557u total:244 pass:229 dwarn:0 dfail:0 fail:0 skip:15
fi-bsw-n3050 total:244 pass:204 dwarn:0 dfail:0 fail:0 skip:40
fi-byt-j1900 total:244 pass:216 dwarn:0 dfail:0 fail:0 skip:28
fi-byt-n2820 total:244 pass:212 dwarn:0 dfail:0 fail:0 skip:32
fi-hsw-4770 total:244 pass:224 dwarn:0 dfail:0 fail:0 skip:20
fi-hsw-4770r total:244 pass:223 dwarn:0 dfail:0 fail:1 skip:20
fi-ilk-650 total:244 pass:191 dwarn:0 dfail:0 fail:0 skip:53
fi-ivb-3520m total:244 pass:222 dwarn:0 dfail:0 fail:0 skip:22
fi-ivb-3770 total:244 pass:222 dwarn:0 dfail:0 fail:0 skip:22
fi-kbl-7200u total:244 pass:222 dwarn:0 dfail:0 fail:0 skip:22
fi-skl-6260u total:244 pass:230 dwarn:0 dfail:0 fail:0 skip:14
fi-skl-6700hq total:244 pass:223 dwarn:0 dfail:0 fail:0 skip:21
fi-skl-6700k total:244 pass:222 dwarn:1 dfail:0 fail:0 skip:21
fi-skl-6770hq total:244 pass:230 dwarn:0 dfail:0 fail:0 skip:14
fi-snb-2520m total:244 pass:212 dwarn:0 dfail:0 fail:0 skip:32
fi-snb-2600 total:244 pass:211 dwarn:0 dfail:0 fail:0 skip:33
6294f67611ebe69006c0e85c372efadcac8e9d66 drm-intel-nightly: 2016y-11m-16d-09h-57m-25s UTC integration manifest
1c5b376 drm/i915/opregion: put internal panels to the front of CADL
d8c1b3b drm/i915/opregion: fill in the CADL from connector list, not DIDL
c095ca7 drm/i915: make i915 the source of acpi device ids for _DOD
== Logs ==
For more details see: https://intel-gfx-ci.01.org/CI/Patchwork_3017/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread* Re: [PATCH 0/3] drm/i915/opregion: proper handling of DIDL, and some hacks on CADL
2016-11-16 11:29 [PATCH 0/3] drm/i915/opregion: proper handling of DIDL, and some hacks on CADL Jani Nikula
` (3 preceding siblings ...)
2016-11-16 12:46 ` ✗ Fi.CI.BAT: failure for drm/i915/opregion: proper handling of DIDL, and some hacks on CADL Patchwork
@ 2016-11-17 9:24 ` Rainer Koenig
2016-11-17 11:01 ` Jani Nikula
4 siblings, 1 reply; 10+ messages in thread
From: Rainer Koenig @ 2016-11-17 9:24 UTC (permalink / raw)
To: Jani Nikula, intel-gfx
Cc: Jan-Marek Glogowski, Paolo Stivanin, Marcos Paulo de Souza
Hi Jani,
applied those patches to the 4.9.0-rc4 from
http://anongit.freedesktop.org/git/drm-intel.git
and tested it on the Fujitsu LIFEBOOK E736.
Works perfectly, even after suspend and resume.
Adding my hopes that this will be merged into the mainline soon.
Best regards and thanks a lot
Rainer
Am 16.11.2016 um 12:29 schrieb Jani Nikula:
> Another spin of [1]. The pain point seems to be the CADL update based on
> the list of active connectors. So I left it out for now, and instead
> just hack it to ensure CADL contains the internal displays.
>
> Let's see if this sticks. It shouldn't prevent us from fixing CADL
> update properly down the line.
>
> BR,
> Jani.
>
>
> [1] http://mid.mail-archive.com/cover.1472129339.git.jani.nikula@intel.com
>
> Jani Nikula (3):
> drm/i915: make i915 the source of acpi device ids for _DOD
> drm/i915/opregion: fill in the CADL from connector list, not DIDL
> drm/i915/opregion: put internal panels to the front of CADL
>
> drivers/gpu/drm/i915/intel_drv.h | 3 +
> drivers/gpu/drm/i915/intel_opregion.c | 152 +++++++++++++---------------------
> 2 files changed, 61 insertions(+), 94 deletions(-)
>
--
Dipl.-Inf. (FH) Rainer Koenig
Project Manager Linux Clients
FJ EMEIA PR PSO PM&D CCD ENG SW OSS&C
Fujitsu Technology Solutions
Bürgermeister-Ullrich-Str. 100
86199 Augsburg
Germany
Telephone: +49-821-804-3321
Telefax: +49-821-804-2131
Mail: mailto:Rainer.Koenig@ts.fujitsu.com
Internet ts.fujtsu.com
Company Details ts.fujitsu.com/imprint.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread* Re: [PATCH 0/3] drm/i915/opregion: proper handling of DIDL, and some hacks on CADL
2016-11-17 9:24 ` [PATCH 0/3] " Rainer Koenig
@ 2016-11-17 11:01 ` Jani Nikula
2016-11-17 18:43 ` Paolo Stivanin
0 siblings, 1 reply; 10+ messages in thread
From: Jani Nikula @ 2016-11-17 11:01 UTC (permalink / raw)
To: Rainer Koenig, intel-gfx
Cc: Daniel Vetter, Jan-Marek Glogowski, Paolo Stivanin,
Marcos Paulo de Souza
On Thu, 17 Nov 2016, Rainer Koenig <Rainer.Koenig@ts.fujitsu.com> wrote:
> Hi Jani,
>
> applied those patches to the 4.9.0-rc4 from
> http://anongit.freedesktop.org/git/drm-intel.git
> and tested it on the Fujitsu LIFEBOOK E736.
>
> Works perfectly, even after suspend and resume.
>
> Adding my hopes that this will be merged into the mainline soon.
Pushed patches 1-2 to drm-intel-next-queued, with Daniel's review on
patch 2. He observed that patch 3 should not be needed, as we already
sort the connector list to have internal panels in front.
I presume this will make it to v4.10-rc1. I'm thinking we could do a
stable backport request once this has had more exposure.
Thanks for the review and testing. And patience!
BR,
Jani.
--
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/3] drm/i915/opregion: proper handling of DIDL, and some hacks on CADL
2016-11-17 11:01 ` Jani Nikula
@ 2016-11-17 18:43 ` Paolo Stivanin
2016-11-18 8:27 ` Jani Nikula
0 siblings, 1 reply; 10+ messages in thread
From: Paolo Stivanin @ 2016-11-17 18:43 UTC (permalink / raw)
To: Jani Nikula, Rainer Koenig, intel-gfx
Cc: Jan-Marek Glogowski, Marcos Paulo de Souza, Daniel Vetter
Hello,
I can confirm that patch 3 is not needed.
I applied only patch 1 and 2 and everything works super fine!
Thanks again!
BR
Paolo
--
Paolo Stivanin
paolostivanin@fastmail.fm
Public Key ID: E71B7545
On Thu, Nov 17, 2016, at 12:01 PM, Jani Nikula wrote:
> On Thu, 17 Nov 2016, Rainer Koenig <Rainer.Koenig@ts.fujitsu.com> wrote:
> > Hi Jani,
> >
> > applied those patches to the 4.9.0-rc4 from
> > http://anongit.freedesktop.org/git/drm-intel.git
> > and tested it on the Fujitsu LIFEBOOK E736.
> >
> > Works perfectly, even after suspend and resume.
> >
> > Adding my hopes that this will be merged into the mainline soon.
>
> Pushed patches 1-2 to drm-intel-next-queued, with Daniel's review on
> patch 2. He observed that patch 3 should not be needed, as we already
> sort the connector list to have internal panels in front.
>
> I presume this will make it to v4.10-rc1. I'm thinking we could do a
> stable backport request once this has had more exposure.
>
> Thanks for the review and testing. And patience!
>
> BR,
> Jani.
>
>
>
> --
> Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/3] drm/i915/opregion: proper handling of DIDL, and some hacks on CADL
2016-11-17 18:43 ` Paolo Stivanin
@ 2016-11-18 8:27 ` Jani Nikula
2016-11-21 9:17 ` Peter Wu
0 siblings, 1 reply; 10+ messages in thread
From: Jani Nikula @ 2016-11-18 8:27 UTC (permalink / raw)
To: Paolo Stivanin, Rainer Koenig, intel-gfx
Cc: Jan-Marek Glogowski, Marcos Paulo de Souza, Daniel Vetter
On Thu, 17 Nov 2016, Paolo Stivanin <paolostivanin@fastmail.fm> wrote:
> Hello,
> I can confirm that patch 3 is not needed.
> I applied only patch 1 and 2 and everything works super fine!
Thanks for confirming this.
BR,
Jani.
--
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/3] drm/i915/opregion: proper handling of DIDL, and some hacks on CADL
2016-11-18 8:27 ` Jani Nikula
@ 2016-11-21 9:17 ` Peter Wu
0 siblings, 0 replies; 10+ messages in thread
From: Peter Wu @ 2016-11-21 9:17 UTC (permalink / raw)
To: Jani Nikula, Paolo Stivanin, Rainer Koenig, intel-gfx
Cc: Jan-Marek Glogowski, Marcos Paulo de Souza, Daniel Vetter
Hi Jani,
I can also confirm that patches 1+2 (applied in top of v4.9-rc5ish) fixes it for me (Clevo P651RA).
The previous issue where the keys broke with PRIME/monitor hotplugging is also gone.
After system suspend/resume stuff is also still working.
Thanks!
Kind regards,
Peter
https://lekensteyn.nl
(pardon my brevity, top-posting and formatting, sent from my phone)
On 18 November 2016 09:27:07 CET, Jani Nikula <jani.nikula@intel.com> wrote:
>On Thu, 17 Nov 2016, Paolo Stivanin <paolostivanin@fastmail.fm> wrote:
>> Hello,
>> I can confirm that patch 3 is not needed.
>> I applied only patch 1 and 2 and everything works super fine!
>
>Thanks for confirming this.
>
>BR,
>Jani.
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 10+ messages in thread