Hi Lucas, I applied this patch, but amended it a bit afterwards. See below: > +struct ofono_ctm_driver { > + const char *name; > + int (*probe)(struct ofono_ctm *tt, unsigned int vendor, > + void *data); So I had to change the *tt variable name to *ctm everywhere > + void (*remove)(struct ofono_ctm *tt); > + void (*query_tty)(struct ofono_ctm *tt, > + ofono_ctm_query_cb_t cb, > + void *data); > + void (*set_tty)(struct ofono_ctm *tt, > + int enable, I also changed this to ofono_bool_t enable > + ofono_ctm_set_cb_t cb, > + void *data); > +}; > + > +int ofono_ctm_driver_register(const struct ofono_ctm_driver *d); > +void ofono_ctm_driver_unregister(const struct ofono_ctm_driver *d); > + > +struct ofono_ctm *ofono_ctm_create(struct ofono_modem *modem, > + unsigned int vendor, > + const char *driver, > + void *data); > + > +void ofono_ctm_register(struct ofono_ctm *tt); > +void ofono_ctm_remove(struct ofono_ctm *tt); > + > +void ofono_ctm_set_data(struct ofono_ctm *tt, void *data); > +void *ofono_ctm_get_data(struct ofono_ctm *tt); > + > +#ifdef __cplusplus > +} > +#endif > + > +#endif /* __OFONO_TEXT_TELEPHONY_H */ And I fixed up this comment. Regards, -Denis