MSM HSIC XHCI controller

Required properties :
- compatible : should be "qcom,xhci-msm-hsic"
- reg : offset and length of the register set in the memory map
- interrupts: IRQ lines used by this controller.
- interrupt-names : Required interrupt resource entries are:
	"core_irq" : Interrupt for HSIC core
	"pwr_event_irq" : Interrupt generated by HSIC controller due to
	change in power state.
- <supply-name>-supply: handle to the regulator device tree node
  Required "supply-name" are "hsic-vdd-dig" and "hsic-gdsc-supply".
- pinctrl-names : This should be defined if a target uses pinctrl framework.
  See "pinctrl" in Documentation/devicetree/bindings/pinctrl/msm-pinctrl.txt.
  It should specify the names of the configs that pinctrl can install in driver
	Following are the pinctrl configs that can be installed
	"hsic_xhci_active" : Active configuration of pins, this should specify active
	config defined in pin groups of used gpio's from strobe, data and
	host-ready.
	"hsic_xhci_sleep" : Disabled configuration of pins, this should specify sleep
	config defined in pin groups of used gpio's from strobe, data and
	host-ready.
- hsic,<gpio-name>-gpio : handle to the GPIO node, see "gpios property"
  in Documentation/devicetree/bindings/gpio/gpio.txt.
  If pinctrl is being used we need to only define gpio's which drives signals
  using gpiolib api's like host-ready in dt, the node name in such cases should
  be msm_gpio as defined in pinctrl-dtsi. For gpio's only installing active and
  sleep configs it is not required to specify the gpio in dt file.
  Required "gpio-name" are "strobe" and "data".
- qcom,vdd-voltage-level: This property must be a list of three integer
  values (no, min, max) where each value represents either a voltage in
  microvolts or a value corresponding to voltage corner.

Optional properties :
- interrupt-names : Optional interrupt resource entry is:
  "wakeup_irq" : Interrupt generated by out of band remote wakeup gpio.
- qcom,host-ready-gpio: This gpio will be used to indicate hsic host
  readiness to attached peripheral
- Refer to "Documentation/devicetree/bindings/arm/msm/msm_bus.txt" for
  below optional properties:
    - qcom,msm_bus,name
    - qcom,msm_bus,num_cases
    - qcom,msm_bus,num_paths
    - qcom,msm_bus,vectors
- qcom,disable-hw-clk-gating: If present then hw clock gating in controller
  is disabled. Internal clock gating is enabled by default in hw.

Example MSM HSIC XHCI controller device node :
	xhci_hsic_host: qcom,xhci-msm-hsic@0xf9c00000 {
		compatible = "qcom,xhci-msm-hsic";
		reg = <0xf9c00000 0xfc000>;
		interrupt-parent = <&xhci_hsic_host>;
		interrupts = <0 1 2>;
		#interrupt-cells = <1>;
		interrupt-map-mask = <0xffffffff>;
		interrupt-map = <0 &intc 0 32 0
				1 &intc 0 29 0
				2 &msm_gpio 107 0x8>;
		interrupt-names = "core_irq", "pwr_event_irq", "wakeup_irq";
		hsic-vdd-dig-supply = <&pma8084_s2_corner>;
		hsic-gdsc-supply = <&gdsc_usb_hsic>;
		/* If pinctrl is used */
		pinctrl-names = "hsic_xhci_active","hsic_xhci_sleep";
		pinctrl-0 = <&hsic_act>;
		pinctrl-1 = <&hsic_sus>;
		qcom,host-ready-gpio = <&msm_gpio 106 0x00>;
		/* else (pinctrl is not used) */
		hsic,strobe-gpio = <&msmgpio 134 0x00>;
		hsic,data-gpio = <&msmgpio 135 0x00>;
		qcom,host-ready-gpio = <&msmgpio 106 0x00>;
		/* End */
		qcom,vdd-voltage-level = <1 5 7>;

		qcom,msm-bus,name = "hsic";
		qcom,msm-bus,num-cases = <2>;
		qcom,msm-bus,num-paths = <1>;
		qcom,msm-bus,vectors-KBps =
				<85 512 0 0>,
			<85 512 40000 160000>;
	};
