The LPC546xx IAP EEPROM Write page API does not enable the EEPROM clock for the write operation. This causes EEPROM write operation to fail when using the IAP API. This problem does not occur for IAP Read EEPROM page command.
The workaround is to enable the EEPROM clock ( set bit 9) in AHBCLKCTRL0 register of SYSCON before calling the IAP EEPROM write function.
SYSCON->AHBCLKCTRL[0] |= 0x200;