How to read from the ADC pins on the Libre Renegade RK-3328 V1?

I have a Libre Renegade RK3328 and am attempting to read analog values from a 5V load cell. The load cell gets power from the 5V pins on the GPIO side and output an analog voltage at 2mV/V up to a maximum of 10mV. Where is the ADC in the device tree and how do i read this from C++ code via libgpiod?

adc@ff280000 {
		compatible = "rockchip,rk3328-saradc\0rockchip,rk3399-saradc";
		reg = <0x00 0xff280000 0x00 0x100>;
		interrupts = <0x00 0x50 0x04>;
		#io-channel-cells = <0x01>;
		clocks = <0x02 0x25 0x02 0xea>;
		clock-names = "saradc\0apb_pclk";
		resets = <0x02 0x56>;
		reset-names = "saradc-apb";
		status = "okay";
		phandle = <0x8b>;

You have to check which driver is bound to this compatible. The ADC should be exposed in sysfs as an IIO virtual file. Be sure that the voltage you are providing fits within the voltage range of the SARADC or you will damage the board.

The folder sys/bus/iio has both an empty devices and drivers folder, implying that there are no such devices. This is on the Raspbian Bookworm distro from the Libre Renegade downloads page. What driver is compatible with this ADC?

We just added the SARADC to the wiring tool. These steps won’t be needed in the future once we merge the SARADC into the base tree.

git clone
cd libretech-wiring-tool

Merge the SARADC overlay:

cd libretech-wiring-tool
./ldto merge saradc
sudo reboot

First make sure the voltage range is confined to 0V to 1.8V, excessive voltage will damage the board.
To grab the SARADC voltage:

cd /sys/bus/iio/devices/iio:device0
cat in_voltage0_raw
cat in_voltage1_raw