#include <linux/delay.h>
 #include <linux/i2c.h>
 #include <linux/interrupt.h>
+#include <linux/mod_devicetable.h>
 #include <linux/module.h>
+#include <linux/property.h>
 #include <linux/wait.h>
 #include <linux/log2.h>
-#include <linux/of.h>
 
 #include <linux/iio/iio.h>
 #include <linux/iio/sysfs.h>
 {
        struct iio_dev *indio_dev;
        struct nau7802_state *st;
-       struct device_node *np = client->dev.of_node;
        int i, ret;
        u8 data;
        u32 tmp = 0;
        if (!(ret & NAU7802_PUCTRL_PUR_BIT))
                return ret;
 
-       of_property_read_u32(np, "nuvoton,vldo", &tmp);
+       device_property_read_u32(&client->dev, "nuvoton,vldo", &tmp);
        st->vref_mv = tmp;
 
        data = NAU7802_PUCTRL_PUD_BIT | NAU7802_PUCTRL_PUA_BIT |