[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Management of backlight

On Sun, 2003-03-09 at 14:18, Kevin B. Hendricks wrote:
> Hi Ben,
> > There is currently no solution for external flat panels, I simple don't
> > know how backlight is controlled on these.
> On a lark I installed pmud and pbbuttonsd but all I ended up with was a 
> completely dark screen for my login prompt.  I was blindly able to go to 
> /etc/rc.d/init.d/ and do a rm *pmu* and then reboot.
> I find it strange that pmud and pbbuttonsd works on an imac and not other 
> desktops.  If I remember, the code in the Radeon driver special cases the 
> LCD backlight code differently from the DFP.  

I don't know how well work on iMac, I suppose they only deal with
machine sleep (which _is_ supported on CRT iMacs, but not on
flat panel ones for now).

I have figured out how to control the IVAD controller which controls
the brightness, contrast and geometry of the CRT display of iMacs
and eMacs (except the very first iMac model which use a different
chip but I know how to drive it as well), it's fortunately all
(almost...) in Darwin.

I'm trying to figure out the best way to expose this to userland
though. I think I'll simply expose the PMU and Cuda i2c busses
via the linux i2c framework and write a userland cmdline tool
to access those parameters.

Regarding DFP displays, it _seems_ the backlight is not controlled
by the video chip, at least I found nothing to tweak the backlight
with the TMDS_* registers or FP_* registers like there is for
LVDS, but I may be wrong. Though I suspect it's either driven via
some i2c bus (same used for EDID) or via USB. I'll try to do
some tracing of the MacOS 9 code with an Apple 15" TFT ADC flat
panel on a Cube with radeon next week.

N.B. I'm still looking for some specs about DDC and EDID format
if anybody have that at hand...

> Perhaps both are controlled in the same way?  
> Is there any similar piece of Darwin source I should be looking at to 
> figure this out?
> Thanks,
> Kevin
Benjamin Herrenschmidt <benh@kernel.crashing.org>

Reply to: