In most use cases that use USB On-The-Go (OTG) ports, the OTG functionality is a simple switch between the USB host and device stacks, determined by the state of the ID pin. In this case an OTG software stack is not required. HCC provides the hooks for this configuration as standard with the USB host and device stacks.
HCC also provides a full software OTG stack that supports the Session Request Protocol (SRP) and Host Negotiation Protocol (HNP) for negotiating between two connected devices in order to decide which of them is to operate as the host. This software is complex and specific to the particular OTG IP used in the USB controller. For more details please contact firstname.lastname@example.org.