>>> + /* Wait for the EPC_BUSY bit to get cleared */ >>> + do { >>> + data = readl(priv->reg_base + MMAP_EEPROM_OFFSET(EEPROM_CMD_REG)); >>> + } while (data & EEPROM_CMD_EPC_BUSY_BIT); >> >> Again, you can not sit and spin in a busy-wait like this with no chance >> to recover if something goes wrong with the hardware (hint, what if it >> got removed?) Also, it is good practice to CC people who did comments on the former versions. -michael