Generic typec and power delivery properties
-------------------------------------------

Required properties:
- port-type:    should be one of "drp", "dfp" or "ufp".
- default-role: preferred power role if drp, should be "sink" or "source".
- src-pdos:     An array of u32 with each entry providing supported power
                source data object(PDO), the detailed bit definitions of
                PDO can be found in "Universal Serial Bus Power Delivery
                Specification" chapter 6.4.1.2 Source_Capabilities Message,
                the order of each entry(PDO) should follow the PD spec chapter
                6.4.1. Required only for power source and power dual role with
                power delivery support.
- snk-pdos:     An array of u32 with each entry providing supported power
                sink data object(PDO), the detailed bit definitions of PDO
                can be found in "Universal Serial Bus Power Delivery
                Specification" chapter 6.4.1.3 Sink Capabilities Message,
                the order of each entry(PDO) should follow the PD spec chapter
                6.4.1. Required only for power sink and power dual role with
                power delivery support.
- max-snk-mv:   The max voltage the sink can support in millivoltage, required
                only for power sink and power dual role with power delivery
                support.
- max-snk-ma:   The max current the sink can support in milliampere, required
                only for power sink and power dual role with power delivery
                support.
- op-snk-mw:    Sink required operating power in milliwatts, if source offered
                power is less then it, Capability Mismatch is set, required
                only for power sink and power dual role with power delivery
                support.
- max-snk-mw:   The max power the sink can support in milliwatts, required
                for power sink and power dual role with power delivery support,
                power sink needs this property to get the max current based on
                the selected PDO.

Example:

ptn5110@50 {
	compatible = "usb,tcpci";
	reg = <0x50>;
	interrupt-parent = <&gpio3>;
	interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
	port-type = "drp";
	default-role = "sink";
	src-pdos = <0x380190c8>;
	snk-pdos = <0x380190c8 0x3802d0c8>;
	max-snk-mv = <9000>;
	max-snk-ma = <1000>;
	op-snk-mw = <9000>;
};
