Linux-Kernel-Sensor-Drivers

Linux sensor drivers for ROHM / Kionix™ sensors

Driver Index

This project is maintained by RohmSemiconductor

Kionix™ is a trademark or a registered trademark of ROHM Co., Ltd.

ROHM BD79112 Analog to Digital Converter (ADC)

The ROHM BD79112 ADC is a 32-channel, 12-bit ADC which is controlled over SPI. The ADC inputs can also be used as GPIO.

Resources

Linux Driver:

Source Code:

Being upstreamed. See Patches.

Upstream driver is currently expected to land in Linux v6.18

The driver supports reading the ADC channels via the Linux IIO subsystem. SPI MODE 3 (CPOL=1, CPHA=1) should be used. The channels which are not present in the device tree are exposed as GPIO pins via the Linux GPIO framework.

Linux subsystem:

IIO (Industrial input/output)

Devicetree example:

    spi {
        adc: adc@0 {
            compatible = "rohm,bd79112";
            reg = <0>;

            vdd-supply = <&dummyreg>; 
            iovdd-supply = <&dummyreg>;

            spi-cpha;
            spi-cpol;
            spi-max-frequency = <20000000>;

            /* Channels which aren't present will be used for GPIO */
            channel@0 {
                reg = <0>;
            };
            channel@1 {
                reg = <1>;
            };
            channel@2 {
                reg = <2>;
            };
            channel@16 {
                reg = <16>;
            };
            channel@20 {
                reg = <20>;
            };
        };
    }