static ssize_t loopback_show(struct device *dev,
                                struct device_attribute *attr, char *buf)
 {
-       struct platform_device *pdev = to_platform_device(dev);
-       struct qcom_geni_serial_port *port = platform_get_drvdata(pdev);
+       struct qcom_geni_serial_port *port = dev_get_drvdata(dev);
 
        return snprintf(buf, sizeof(u32), "%d\n", port->loopback);
 }
                                struct device_attribute *attr, const char *buf,
                                size_t size)
 {
-       struct platform_device *pdev = to_platform_device(dev);
-       struct qcom_geni_serial_port *port = platform_get_drvdata(pdev);
+       struct qcom_geni_serial_port *port = dev_get_drvdata(dev);
        u32 loopback;
 
        if (kstrtoint(buf, 0, &loopback) || loopback > MAX_LOOPBACK_CFG) {