From: Seth Forshee <seth.forshee@canonical.com>
To: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org
Cc: David Airlie <airlied@linux.ie>, Matthew Garrett <mjg@redhat.com>,
Daniel Vetter <daniel.vetter@ffwll.ch>,
Andreas Heider <andreas@meetr.de>,
Seth Forshee <seth.forshee@canonical.com>
Subject: [PATCH 4/7] apple-gmux: Add switch_ddc support
Date: Fri, 7 Sep 2012 10:22:07 -0500 [thread overview]
Message-ID: <1347031330-19657-5-git-send-email-seth.forshee@canonical.com> (raw)
In-Reply-To: <1347031330-19657-1-git-send-email-seth.forshee@canonical.com>
The gmux allows muxing the DDC independently from the display, so
support this functionality. This will allow reading the EDID for the
inactive GPU, fixing issues with machines that either don't have a VBT
or have invalid mode data in the VBT.
Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
---
drivers/platform/x86/apple-gmux.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/platform/x86/apple-gmux.c b/drivers/platform/x86/apple-gmux.c
index dfb1a92..d1e372d 100644
--- a/drivers/platform/x86/apple-gmux.c
+++ b/drivers/platform/x86/apple-gmux.c
@@ -269,14 +269,21 @@ static const struct backlight_ops gmux_bl_ops = {
.update_status = gmux_update_status,
};
+static int gmux_switch_ddc(enum vga_switcheroo_client_id id)
+{
+ if (id == VGA_SWITCHEROO_IGD)
+ gmux_write8(apple_gmux_data, GMUX_PORT_SWITCH_DDC, 1);
+ else
+ gmux_write8(apple_gmux_data, GMUX_PORT_SWITCH_DDC, 2);
+ return 0;
+}
+
static int gmux_switchto(enum vga_switcheroo_client_id id)
{
if (id == VGA_SWITCHEROO_IGD) {
- gmux_write8(apple_gmux_data, GMUX_PORT_SWITCH_DDC, 1);
gmux_write8(apple_gmux_data, GMUX_PORT_SWITCH_DISPLAY, 2);
gmux_write8(apple_gmux_data, GMUX_PORT_SWITCH_EXTERNAL, 2);
} else {
- gmux_write8(apple_gmux_data, GMUX_PORT_SWITCH_DDC, 2);
gmux_write8(apple_gmux_data, GMUX_PORT_SWITCH_DISPLAY, 3);
gmux_write8(apple_gmux_data, GMUX_PORT_SWITCH_EXTERNAL, 3);
}
@@ -343,6 +350,7 @@ gmux_active_client(struct apple_gmux_data *gmux_data)
}
static struct vga_switcheroo_handler gmux_handler = {
+ .switch_ddc = gmux_switch_ddc,
.switchto = gmux_switchto,
.power_state = gmux_set_power_state,
.get_client_id = gmux_get_client_id,
--
1.7.9.5
next prev parent reply other threads:[~2012-09-07 15:23 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-07 15:22 [PATCH 0/7] Fixes for hybrid graphics Apple machines Seth Forshee
2012-09-07 15:22 ` [PATCH 1/7] vga_switcheroo: Add support for switching only the DDC Seth Forshee
2012-09-07 15:22 ` [PATCH 2/7] vga_switcheroo: Add helper function to get the active client Seth Forshee
2012-09-07 15:22 ` [PATCH 3/7] vga_switcheroo: Add notifier call chain for switcheroo events Seth Forshee
2012-09-07 15:22 ` Seth Forshee [this message]
2012-09-07 15:22 ` [PATCH 5/7] drm/edid: Switch DDC when reading the EDID Seth Forshee
2012-09-07 15:22 ` [PATCH 6/7] drm/pci: Add drm_put_pci_dev() Seth Forshee
2012-09-07 15:22 ` [PATCH 7/7] drm/pci: Defer initialization of secondary graphics devices until switcheroo is ready Seth Forshee
2012-09-07 21:35 ` [PATCH 0/7] Fixes for hybrid graphics Apple machines Dave Airlie
2012-09-08 5:07 ` Seth Forshee
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1347031330-19657-5-git-send-email-seth.forshee@canonical.com \
--to=seth.forshee@canonical.com \
--cc=airlied@linux.ie \
--cc=andreas@meetr.de \
--cc=daniel.vetter@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mjg@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®