CCCs in I3C v1.1 are defined and marked differently than in I3C v1.0, in two important ways:
- Conditionally Required CCCs: In the I3C v1.1 specification, Table 16 in Section 18.104.22.168 (i.e., the main table that defines the I3C Common Command Codes) now marks every CCC as either Required (‘R’), Conditional (‘C’), or Optional (‘O’). Required and Optional retain the same meanings they had in I3C v1.0, but in I3C v1.1 some CCCs have been changed to Conditional
For Conditional CCCs the Description column includes a note indicating the condition(s) under which the CCC is required (“Required If:”). Typical conditions would be the use of a particular feature, or support for another particular CCC. If the conditions for a given Conditional CCC are not met, then there is no requirement to support that CCC, and support for it can be regarded as Optional.
Example: The ENTAS0 CCC is marked as Conditional and only “Required If” any of the other ENTASx CCCs (i.e., ENTAS1, ENTAS2, and/or ENTAS3, all of which are Optional) are supported. Of course, an implementer may choose to support the ENTAS0 CCC even if none of these other Optional ENTASx CCCs are supported. But if at least one of the other ENTASx CCCs are supported, then support for the ENTAS0 CCC is required for that configuration.
- CCCs in HDR Modes: At the discretion of the implementer, CCCs may also be supported in any supported HDR Modes. Specification Section 22.214.171.124 defines the general concepts of CCC framing while in HDR Modes, and specifies key requirements and details regarding their us within an HDR Mode. In general, the use of CCCs within any HDR Mode provides the option to send certain CCCs efficiently while remaining in HDR Mode (i.e., without the extra overhead of exiting HDR Mode and then returning to SDR Mode). The specific CCC framing details for each supported HDR Mode are listed in Table 53 and defined in the sections specifying each HDR Mode.
Table 51 defines which CCCs may be supported and permitted for use in any HDR Mode, both for Broadcast CCC and Direct CCC flows. Additionally, Table 52 defines which CCCs are prohibited in any HDR Mode and explains why. Since support for CCCs in HDR Modes is optional, and since an implementer might choose to support a subset of CCCs from Table 16 (i.e., those which are also permitted for use, as per Table 51 and Table 52), it is important for the I3C Controller to know which CCCs are supported in HDR Modes. This might include CCCs set aside for Vendor / Standard Extension use, or ones reserved for another MIPI Alliance WG. It is also required that any CCC that is supported in any HDR Mode is supported in SDR Mode too.
Note: This last point means that if an I3C Device does not acknowledge a given CCC in a given HDR Mode, then the I3C Controller can determine whether that CCC is only unsupported in that HDR Mode (vs. is not supported at all) by retrying that same CCC in SDR Mode.