i2c: tegra: Move out all device-tree parsing into tegra_i2c_parse_dt()
authorDmitry Osipenko <digetx@gmail.com>
Tue, 29 Sep 2020 22:18:56 +0000 (01:18 +0300)
committerWolfram Sang <wsa@kernel.org>
Mon, 5 Oct 2020 20:57:41 +0000 (22:57 +0200)
Move out code related to device-tree parsing from the probe function into
tegra_i2c_parse_dt() in order to make code more consistent.

Reviewed-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Acked-by: Thierry Reding <treding@nvidia.com>
Tested-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
drivers/i2c/busses/i2c-tegra.c

index b389cd0..9486fcb 100644 (file)
@@ -1428,6 +1428,12 @@ static void tegra_i2c_parse_dt(struct tegra_i2c_dev *i2c_dev)
 
        multi_mode = of_property_read_bool(np, "multi-master");
        i2c_dev->is_multimaster_mode = multi_mode;
+
+       if (of_device_is_compatible(np, "nvidia,tegra20-i2c-dvc"))
+               i2c_dev->is_dvc = true;
+
+       if (of_device_is_compatible(np, "nvidia,tegra210-i2c-vi"))
+               i2c_dev->is_vi = true;
 }
 
 static const struct i2c_algorithm tegra_i2c_algo = {
@@ -1730,10 +1736,6 @@ static int tegra_i2c_probe(struct platform_device *pdev)
                return ret;
 
        i2c_dev->hw = of_device_get_match_data(&pdev->dev);
-       i2c_dev->is_dvc = of_device_is_compatible(pdev->dev.of_node,
-                                                 "nvidia,tegra20-i2c-dvc");
-       i2c_dev->is_vi = of_device_is_compatible(dev->of_node,
-                                                "nvidia,tegra210-i2c-vi");
        i2c_dev->adapter.quirks = i2c_dev->hw->quirks;
        i2c_dev->dma_buf_size = i2c_dev->adapter.quirks->max_write_len +
                                I2C_PACKET_HEADER_SIZE;