if (status & I2C_STAT_XRDY) {
                        w = tmpbuf[i++];
 #if !(defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX) || \
-       defined(CONFIG_OMAP44XX) || defined(CONFIG_AM33XX))
+       defined(CONFIG_OMAP44XX) || defined(CONFIG_AM33XX) || \
+       defined(CONFIG_OMAP54XX))
                        w |= tmpbuf[i++] << 8;
 #endif
                        writew(w, &i2c_base->data);
                }
                if (status & I2C_STAT_RRDY) {
 #if defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX) || \
-       defined(CONFIG_OMAP44XX) || defined(CONFIG_AM33XX)
+       defined(CONFIG_OMAP44XX) || defined(CONFIG_AM33XX) || \
+       defined(CONFIG_OMAP54XX)
                        *value = readb(&i2c_base->data);
 #else
                        *value = readw(&i2c_base->data);
                stat = readw(&i2c_base->stat);
                if (stat == I2C_STAT_RRDY) {
 #if defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX) || \
-       defined(CONFIG_OMAP44XX) || defined(CONFIG_AM33XX)
+       defined(CONFIG_OMAP44XX) || defined(CONFIG_AM33XX) || \
+       defined(CONFIG_OMAP54XX)
                        readb(&i2c_base->data);
 #else
                        readw(&i2c_base->data);
                if (status & I2C_STAT_RRDY) {
                        res = 0;
 #if defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX) || \
-    defined(CONFIG_OMAP44XX) || defined(CONFIG_AM33XX)
+       defined(CONFIG_OMAP44XX) || defined(CONFIG_AM33XX) || \
+       defined(CONFIG_OMAP54XX)
                        readb(&i2c_base->data);
 #else
                        readw(&i2c_base->data);
                if (status & I2C_STAT_XRDY) {
                        w = (i < 0) ? tmpbuf[2+i] : buffer[i];
 #if !(defined(CONFIG_OMAP243X) || defined(CONFIG_OMAP34XX) || \
-       defined(CONFIG_OMAP44XX) || defined(CONFIG_AM33XX))
+       defined(CONFIG_OMAP44XX) || defined(CONFIG_AM33XX) || \
+       defined(CONFIG_OMAP54XX))
                        w |= ((++i < 0) ? tmpbuf[2+i] : buffer[i]) << 8;
 #endif
                        writew(w, &i2c_base->data);