On Mon, Sep 30, 2013 at 2:15 PM, Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> wrote: > I was discussing things a bit with Jani, and I'll repeat my thoughts > here for others to see. Feel free to kick me if I get things totally > wrong as I don't know the backlight code, nor do I really want to. > > We may need to handle backlight configuration requests when there's no > pipe attached to the port, and we also want to be able to change the > pipe<->port mapping, so my idea would be to shadow the backlight > registers in the connector, and when we assign a pipe to the port, > we write all the regs from the shadow copies to the real pipe blc > registers. Otherwise I'm worried about all the rmw stuff we do to the > registers, and leaving bits around in the registers from when the pipe > was still used with some other port. I think that's the sanest approach (maybe keep the shadow values around in a backligh struct or intel_panel). Then we could also drop our reliance on the save/restore logic in i915_suspend.c, which will kill the 2nd copy of the fragile backlight register read/write code. Finally if we initialize the shadow values at module load time we can also ditch the imo fragile delayed register saving logic we currently have. -Daniel -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx