Kernel-4.18.0-80.el8_us5182

  • UPISEMI us5182d I2C ALS and Proximity sensor

Required properties:

  • compatible: must be “upisemi,usd5182”
  • reg: the I2C address of the device

Optional properties:

  • upisemi,glass-coef: glass attenuation factor - compensation factor of

                    resolution 1000 for material transmittance.
    
  • upisemi,dark-ths: array of 8 elements containing 16-bit thresholds (adc

                  counts) corresponding to every scale.
    
  • upisemi,upper-dark-gain: 8-bit dark gain compensation factor(4 int and 4

                         fractional bits - Q4.4) applied when light > threshold
    
  • upisemi,lower-dark-gain: 8-bit dark gain compensation factor(4 int and 4

                         fractional bits - Q4.4) applied when light < threshold
    
  • upisemi,continuous: This chip has two power modes: one-shot (chip takes one

                    measurement and then shuts itself down) and continuous (
                    chip takes continuous measurements). The one-shot mode is
                    more power-friendly but the continuous mode may be more
                    reliable. If this property is specified the continuous
                    mode will be used instead of the default one-shot one for
                    raw reads.
    

If the optional properties are not specified these factors will default to the
values in the below example.
The glass-coef defaults to no compensation for the covering material.
The threshold array defaults to experimental values that work with US5182D
sensor on evaluation board - roughly between 12-32 lux.
There will be no dark-gain compensation by default when ALS > thresh
(0 * dark-gain), and a 1.35 compensation factor when ALS < thresh.

Example:

usd5182@39 {
            compatible = "upisemi,usd5182";
            reg = <0x39>;
            upisemi,glass-coef = < 1000 >;
            upisemi,dark-ths = /bits/ 16 <170 200 512 512 800 2000 4000 8000>;
            upisemi,upper-dark-gain = /bits/ 8 <0x00>;
            upisemi,lower-dark-gain = /bits/ 8 <0x16>;
};