• Martin Blumenstingl's avatar
    iio: adc: meson-saradc: enable the temperature sensor two more SoCs · b002bf5f
    Martin Blumenstingl authored
    Meson8b and Meson8m2 use the same logic to convert the ADC register
    value to celsius, which is different from Meson8:
    - Meson8 has different multiplier and divider values
    - Meson8 uses a 4-bit TSC (temperature sensor coefficient) which fits
      into the 4-bit field in the MESON_SAR_ADC_DELTA_10 register:
      MESON_SAR_ADC_DELTA_10_TS_C_MASK. Meson8b and Meson8m2 have a 5-bit
      TSC which requires writing the upper-most bit into the
      MESON_HHI_DPLL_TOP_0[9] register from the HHI register area.
    
    This adds support for the temperature sensor on the Meson8b and Meson8m2
    SoCs by implementing the logic to write the upper-most TSC bit into the
    HHI register area. The SoC-specific values (temperature_trimming_bits,
    temperature_multiplier, temperature_divider) are added - these simply
    integrate into the existing infrastructure (which was implemented for
    Meson8) and thus require no further changes to the existing temperature
    calculation logic.
    Signed-off-by: default avatarMartin Blumenstingl <martin.blumenstingl@googlemail.com>
    Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
    b002bf5f
meson_saradc.c 40.1 KB