kernel_otter-20130502-0853-exp-backlight.zip @ http://goo.im/devs/loosethisskin/otter-cm10.1/kernel
just found the time to test your ROM -/+ experimental kernel. For me the fix works. Without the fix, brightness 100% and connected to power and the KF sent to sleep via button it doesn't turn off the backlight (if you turn it slightly down, it only looks like it works then). The regular time-out sleep seems to work, but only because it turns down the brightness before. In any case you'll see kernel messages like this:
<3>[ 18.290252] omap_timer omap_timer.10: omap2_dm_timer_set_src: clk_set_parent() to sys_ck FAILED
Here, the driver complains about the race condition and as a result stops doing anything to change the backlight clock. On the experimental kernel (containing the fix) you don't see those messages and the backlight turns off as expected. However, it sometimes takes 3-5 seconds on this ROM, whereas plain CM10.1 does it <1 second, but that's possibly due to some differences in wake_locks.
The rewritten ambient light sensor driver is also active in the experimental kernel. Thanks, twa_priv to add that one, too . For those who want to play around with it:
echo 1 > /sys/devices/platform/lightsensor-level/enable
Repeat the last line to read lux values again. And don't forget to shed some different levels of light onto the sensor, of course .
For the sensor to work from Android we still need to route it through the Android SW layers. Does anyone know who's an xda-dev expert on that?