Convert CONFIG_SYS_I2C_LEGACY to Kconfig and add CONFIG_[ST]PL_SYS_I2C_LEGACY
[platform/kernel/u-boot.git] / drivers / i2c / lpc32xx_i2c.c
index f89f795..774129a 100644 (file)
@@ -38,7 +38,6 @@
 /* Status register values */
 #define LPC32XX_I2C_STAT_TFF           0x00000400
 #define LPC32XX_I2C_STAT_RFE           0x00000200
-#define LPC32XX_I2C_STAT_DRMI          0x00000008
 #define LPC32XX_I2C_STAT_NAI           0x00000004
 #define LPC32XX_I2C_STAT_TDI           0x00000001
 
@@ -283,11 +282,7 @@ static int lpc32xx_i2c_probe(struct udevice *bus)
 {
        struct lpc32xx_i2c_dev *dev = dev_get_plat(bus);
 
-       /*
-        * FIXME: This is not permitted
-        *      dev_seq(bus) = dev->index;
-        */
-
+       dev->base = dev_read_addr_ptr(bus);
        __i2c_init(dev->base, dev->speed, 0, dev->index);
        return 0;
 }
@@ -353,9 +348,15 @@ static const struct dm_i2c_ops lpc32xx_i2c_ops = {
        .set_bus_speed = lpc32xx_i2c_set_bus_speed,
 };
 
+static const struct udevice_id lpc32xx_i2c_ids[] = {
+       { .compatible = "nxp,pnx-i2c" },
+       { }
+};
+
 U_BOOT_DRIVER(i2c_lpc32xx) = {
-       .id                   = UCLASS_I2C,
        .name                 = "i2c_lpc32xx",
+       .id                   = UCLASS_I2C,
+       .of_match             = lpc32xx_i2c_ids,
        .probe                = lpc32xx_i2c_probe,
        .ops                  = &lpc32xx_i2c_ops,
 };