This is the patch set I made to introduce ACPI ALS device driverand a generic sysfs I/F for all the ALS devices, like ACPI ALS,platform ALS, etc.

Patch 01 introduces the ACPI ALS device driver.

Patch 02 introduces ALS sysfs class. Two sysfs I/F are created for each ALS device. /sys/class/als/alsX/illuminance: the amount of light incident upon a specified surface area. /sys/class/als/alsX/mappings: ambient light illuminance to display luminance mappings that can be used by an OS to calibrate its ambient light policy this is what I got on a test box: cat /sys/class/als/als0/mappings ﻿Illuminance Adjustment 0 70 10 73 80 85 300 100 1000 150﻿ - noting that ﻿display luminance adjustment values are specified using relative percentages in order simplify the means by which these adjustments are applied in lieu of changes to the user’s display brightness preference.

Patch 03 introduces the generic sysfs I/F for ACPI ALS devices.

Patch 02/03 are RFC patches because I'm not sure if these sysfs I/F aregeneric enough for other ALS devices, and if there is any attribute thatI missed.For example, ACPI ALS has some optional properties like ambient lighttemperature and ambient light color chromaticity, but I'm not sure ifthey should be exported to user spaces via ALS sysfs class.