]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
i2c: designware: Use device_is_compatible() instead of custom approach
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Wed, 14 Jan 2026 08:17:51 +0000 (09:17 +0100)
committerAndi Shyti <andi.shyti@kernel.org>
Thu, 22 Jan 2026 13:21:51 +0000 (14:21 +0100)
We use MODEL_MSCC_OCELOT effectively as a flag for comparing against
"compatible" property. Use device_is_compatible() directly to make it
clear.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20260114081954.252160-3-andriy.shevchenko@linux.intel.com
drivers/i2c/busses/i2c-designware-common.c
drivers/i2c/busses/i2c-designware-core.h
drivers/i2c/busses/i2c-designware-platdrv.c

index 6671e98691eeeb41664cb6a76fd10f0750ae7c12..6330cc2becced875157dca9d0604e42a10deb89c 100644 (file)
@@ -243,14 +243,10 @@ static void i2c_dw_of_configure(struct device *device)
        struct platform_device *pdev = to_platform_device(device);
        struct dw_i2c_dev *dev = dev_get_drvdata(device);
 
-       switch (dev->flags & MODEL_MASK) {
-       case MODEL_MSCC_OCELOT:
+       if (device_is_compatible(dev->dev, "mscc,ocelot-i2c")) {
                dev->ext = devm_platform_ioremap_resource(pdev, 1);
                if (!IS_ERR(dev->ext))
                        dev->set_sda_hold_time = mscc_twi_set_sda_hold_time;
-               break;
-       default:
-               break;
        }
 }
 
index ba7e307f079132fb0e29d2c575b54d6f62687d1b..67f13daf37b3e65c02b2f6c8c5b7a1e4114c96f3 100644 (file)
@@ -326,7 +326,6 @@ struct dw_i2c_dev {
 #define ARBITRATION_SEMAPHORE                  BIT(2)
 #define ACCESS_POLLING                         BIT(3)
 
-#define MODEL_MSCC_OCELOT                      BIT(8)
 #define MODEL_AMD_NAVI_GPU                     BIT(10)
 #define MODEL_WANGXUN_SP                       BIT(11)
 #define MODEL_MASK                             GENMASK(11, 8)
index 2e532f16691b5b9a681ba8bc4c90c6b79d6f735f..4e6fe3b55322d209ff853a5732b7f42ecf89b4ff 100644 (file)
@@ -267,7 +267,7 @@ static void dw_i2c_plat_remove(struct platform_device *pdev)
 }
 
 static const struct of_device_id dw_i2c_of_match[] = {
-       { .compatible = "mscc,ocelot-i2c", .data = (void *)MODEL_MSCC_OCELOT },
+       { .compatible = "mscc,ocelot-i2c" },
        { .compatible = "snps,designware-i2c" },
        {}
 };