I2C CMSIS Driver implementation


I am trying to use the I2C CMSIS driver for the Cortex M0+ processor (KL25Z128) with Keil uvision IDE.
From the "Manage Run-Time Environment" window, I added the following:

  2. CMSIS Driver -> I2C (API) -> Custom (because I will only be using one slave)
  3. Device -> Startup

This added to my project the header file "Driver_I2C.h", which I can use to call the functions that interact with the I2C.
However, please correct me if I'm wrong; the header file functions have no implementation. I have to create a new file from the template, which will generate empty functions. I should then fill them out.

My question is: what is the purpose of the CMSIS I2C driver if it doesn't offer any implementation of the functions and if I have to implement it myself?

I might be missing something here, but I'm really struggling to understand where the implementation resides.

Any clarification would be much appreciated.