Hello,
if you have some very specific scenario, you don't have to use I2C driver, just set up pins using _bsp_i2c_io_init(), install your own I2C ISR and enable I2C module and interrupts (see interrupt I2C init function).
If you want to use interrupt I2C driver, you can't get after-interrupt notification, the only way to wait for I2C interrupt is through read or write + fflush (interrrupts are handled within I2C driver):
// example for master mode
fd = fopen ("ii2c0:", NULL);
// read
result = 0;
do
{
result += fread (buffer, 1, 1, fd);
} while (result < 1);
your_action();
// write
result = 0;
do
{
result += fwrite (buffer, 1, 1, fd);
} while (result < 1);
result = fflush (fd);
your_action();
PetrM