client side ddc/ci

Adam Jackson ajax at
Wed Dec 2 10:44:54 PST 2009

On Wed, 2009-12-02 at 19:07 +1000, Dave Airlie wrote:
> >
> > how would one talk with a monitor over DDC/CI on a user side, non root
> > application. I would like to do monitor gamma curves I/O, EDID polling and
> > other non standard communication.
> >
> > The /dev/i2c-xxx device nodes are root access only on my system. I can
> > chmod them with o+rw, but thats shurely not the general solution.
> >
> > What is a good place to start with in Xorg?
> >
> > I have seen the ddc/XF64DDC.[h,c] and i2c/xf86i2c.[h,c] modules in the
> > server. Is already one of those APIs exposed?
> >
> > As I understand, the root windows or xrandr output EDID atom is a one time
> > thing and too static for my needs.
> You'd need to add protocol for the client side apps to talk to the X server,.
> you could possibly do this with xrandr properties or extending xrandr,
> then drivers would have to talk to the i2c via X i2c or kernel i2c in kms case.

This has been my plan for a while.  Most of the DDC/CI controls map well
to RANDR properties.

The major blocker for this before was that CI is _slow_.  Way too slow
to do in-server, since you block all your other clients.  With KMS we
could reasonably expose this all as DRM properties and do it async.

- ajax
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <>

More information about the xorg mailing list