Init() and the cfg struct should be moved into a _priv.h file and not exported as part of the device's API.