Generic USB Properties

Optional properties:
 - maximum-speed: tells USB controllers we want to work up to a certain
			speed. Valid arguments are "super-speed", "high-speed",
			"full-speed" and "low-speed". In case this isn't passed
			via DT, USB controllers should default to their maximum
			HW capability.
 - dr_mode: tells Dual-Role USB controllers that we want to work on a
			particular mode. Valid arguments are "host",
			"peripheral" and "otg". In case this attribute isn't
			passed via DT, USB DRD controllers should default to
			OTG.
 - phy_type: tells USB controllers that we want to configure the core to support
			a UTMI+ PHY with an 8- or 16-bit interface if UTMI+ is
			selected. Valid arguments are "utmi" and "utmi_wide".
			In case this isn't passed via DT, USB controllers should
			default to HW capability.
 - otg-rev: tells usb driver the release number of the OTG and EH supplement
			with which the device and its descriptors are compliant,
			in binary-coded decimal (i.e. 2.0 is 0200H). This
			property is used if any real OTG features(HNP/SRP/ADP)
			is enabled, if ADP is required, otg-rev should be
			0x0200 or above.
 - companion: phandle of a companion
 - hnp-disable: tells OTG controllers we want to disable OTG HNP, normally HNP
			is the basic function of real OTG except you want it
			to be a srp-capable only B device.
 - srp-disable: tells OTG controllers we want to disable OTG SRP, SRP is
			optional for OTG device.
 - adp-disable: tells OTG controllers we want to disable OTG ADP, ADP is
			optional for OTG device.
 - usb-role-switch: boolean, indicates that the device is capable of assigning
			the USB data role (USB host or USB device) for a given
			USB connector, such as Type-C, Type-B(micro).
			see connector/usb-connector.yaml.

This is an attribute to a USB controller such as:

dwc3@4a030000 {
	compatible = "synopsys,dwc3";
	reg = <0x4a030000 0xcfff>;
	interrupts = <0 92 4>
	usb-phy = <&usb2_phy>, <&usb3,phy>;
	maximum-speed = "super-speed";
	dr_mode = "otg";
	phy_type = "utmi_wide";
	otg-rev = <0x0200>;
	adp-disable;
};
