greybus: connection: clean up connection-creation interface
Clean up the connection-creation interface by clearly separating our two
types of connections: static and dynamic.
Add two convenience functions for creating static and dynamic connections.
A static connection is a pre-setup connection that is defined by a host
device and a host-device cport id. Specifically, the remote interface or
cport id need not be known. The SVC connection is a static connection.
A dynamic connection is defined by a host device and a remote interface
and cport id. This is our normal connections where the host-device cport
is (generally) allocated dynamically.
Note that the new generic interface is marked static, but can be
exported later to allow dynamic connections to be created also from
fixed host-device cports (e.g. for CSI).
Also note that a connection of either type is uniquely identified by its
host-device and host-device cport id once created.
Signed-off-by: Johan Hovold <johan@hovoldconsulting.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>