On Sun, Jun 1, 2014 at 12:38 PM, Matthew Garrett <matthew.garrett@xxxxxxxxxx> wrote: > We can switch DDC pins in a way that ought (with luck) to work for LVDS. > This isn't sufficient for eDP, which is addressed in later patches. > > Signed-off-by: Matthew Garrett <matthew.garrett@xxxxxxxxxx> FWIW, on AMD muxed PX systems, there are separate muxes for ddc/hpd and data lines so it would be trivial to implement there as well. Alex > --- > drivers/platform/x86/apple-gmux.c | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/drivers/platform/x86/apple-gmux.c b/drivers/platform/x86/apple-gmux.c > index b9429fb..5594cbc 100644 > --- a/drivers/platform/x86/apple-gmux.c > +++ b/drivers/platform/x86/apple-gmux.c > @@ -271,6 +271,16 @@ 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) { > @@ -346,6 +356,7 @@ gmux_active_client(struct apple_gmux_data *gmux_data) > > static struct vga_switcheroo_handler gmux_handler = { > .switchto = gmux_switchto, > + .switch_ddc = gmux_switch_ddc, > .power_state = gmux_set_power_state, > .get_client_id = gmux_get_client_id, > }; > -- > 1.8.5.3 > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel