This Blog documents how to port DRP USB3.0 and DisplayPort 4 lane and remove CTD US functions from Charge Through Dongle (CTD) upstream project. Original example project can be get it from CCGx SDK V3.0.2. LINK:… 


1. Disable I2C Master +HPI INT. The original code (CTD) uses I2C Master interface for HPI with CTD DS.

2. Disable USB-I2C master bridge mode support @file config.h.

/* Enable USB-I2C master bridge mode support. */

#define APP_I2CM_BRIDGE_ENABLE                      (0u) //CTD clear 1->0


3. Comment out all of function related CTD DS. I used Marco define DISABLE_CTD_US and add it into file config.h.

@file main.c

Comment out all of functions which is named begin with "ctd_". And register Application callback functions for the DPM without "ctd_".

Clear content of function void sln_pd_event_handler(uint8_t port, app_evt_t evt, const void *data)


@file ctd_us_solution.c

Comments all functions. Recommend to add #ifndef DISABLE_CTD_US //Clear CTD after all of #include @ file ctd_us_solution.c.


4. Example project attached with Blog. What's I was customized can be found with "DISABLE_CTD_US".