Please kindly refer CCG4 SDK user guide to select correct chip and firmware to support PD3.0 with CCG4 device. Recommend you change CYPD4225 on the CY4541 to CYPD4226.
5. CYPD4125-40LQXI_notebook: This project implements a single Type-C port controller for notebooks using the CYPD4125-40LQXI device. This device supports PD 2.0 specification. The implementation supports all of the features of the dual-port project with only one difference: the target device supports only a single port.
6. CYPD4225-40LQXI_notebook: This project implements a dual Type-C port controller for notebooks using the CYPD4225-40LQXI device. This device supports PD 2.0 specification. Each of the ports on the device can be configured and function independently with full capabilities.
7. CYPD4126-40LQXI_notebook: This project implements a single Type-C port controller for notebooks using the CYPD4126-40LQXI device. This device is similar to CYPD4125-40LQXI with PD 3.0 specification support.
8. CYPD4226-40LQXI_notebook: This project implements a dual Type-C port controller for notebooks using the CYPD4225-40LQXI device. This device is similar to CYPD4125-40LQXI with PD 3.0 specification support.
Each reference project is provided in the form of a PSoC Creator workspace. The workspace can be opened using the PSoC Creator and the projects can be customized and compiled.
Note: These projects are designed to work with specific devices mentioned above. Changing the target part number using Device Selector will cause the firmware build to fail.
USB-PD Specification Revisions shall be noticed (Transmit PD3.0 to PD2.0, Of course, transmit PD2.0 to PD3.0 also shall be followed):
The example applications provided for CCG3 and CCG4 devices support USB-PD specification revision 3.0 by default. Since PD 3.0 support requires significant code addition, this leaves little room for the addition of customer specific code in these applications.
It is possible to gain more space in the CCG device flash by restricting the applications to USB-PD Revision 2.0 support. The following steps are required to switch applications between PD 3.0 and PD 2.0 support:
1. The PD stack parameters configuration file (stack_params.h) has a few pre-processor definitions that enable PD 3.0 support in the application. The definitions CCG_PD_REV3_ENABLE, CCG_FRS_RX_ENABLE and CCG_FRS_TX_ENABLE should be set to 0 to disable PD 3.0 support.
2. Two versions of the PD stack libraries are provided: libccgx_pd.a and libccgx_pd3.a. In the linker settings sections of the build settings of the project, switch between ccgx_pd and ccgx_pd3 to switch between PD 2.0 and PD 3.0 support.
3. The configuration table contents for the application should be changed based on the specification version to be supported. The SRC_PDO, SNK_PDO and DISCOVER_ID response parameters in the configuration table have fields that are defined only for PD 3.0. These values should be adjusted as required when switching between PD revisions.
You mean I have to change my device CYPD4225 as it does not support P3.0, am I right?