Marvell 8897/8997 (sd8897/sd8997) bluetooth devices (SDIO or USB based)
------
The 8997 devices supports multiple interfaces. When used on SDIO interfaces,
the btmrvl driver is used and when used on USB interface, the btusb driver is
used.

Required properties:

  - compatible : should be one of the following:
	* "marvell,sd8897-bt" (for SDIO)
	* "marvell,sd8997-bt" (for SDIO)
	* "usb1286,204e"      (for USB)

Optional properties:

  - marvell,cal-data: Calibration data downloaded to the device during
		      initialization. This is an array of 28 values(u8).
		      This is only applicable to SDIO devices.

  - marvell,wakeup-pin: It represents wakeup pin number of the bluetooth chip.
		        firmware will use the pin to wakeup host system (u16).
  - marvell,wakeup-gap-ms: wakeup gap represents wakeup latency of the host
		      platform. The value will be configured to firmware. This
		      is needed to work chip's sleep feature as expected (u16).
  - interrupt-names: Used only for USB based devices (See below)
  - interrupts : specifies the interrupt pin number to the cpu. For SDIO, the
		 driver will use the first interrupt specified in the interrupt
		 array. For USB based devices, the driver will use the interrupt
		 named "wakeup" from the interrupt-names and interrupt arrays.
		 The driver will request an irq based on this interrupt number.
		 During system suspend, the irq will be enabled so that the
		 bluetooth chip can wakeup host platform under certain
		 conditions. During system resume, the irq will be disabled
		 to make sure unnecessary interrupt is not received.

Example:

IRQ pin 119 is used as system wakeup source interrupt.
wakeup pin 13 and gap 100ms are configured so that firmware can wakeup host
using this device side pin and wakeup latency.

Example for SDIO device follows (calibration data is also available in
below example).

&mmc3 {
	vmmc-supply = <&wlan_en_reg>;
	bus-width = <4>;
	cap-power-off-card;
	keep-power-in-suspend;

	#address-cells = <1>;
	#size-cells = <0>;
	btmrvl: bluetooth@2 {
		compatible = "marvell,sd8897-bt";
		reg = <2>;
		interrupt-parent = <&pio>;
		interrupts = <119 IRQ_TYPE_LEVEL_LOW>;

		marvell,cal-data = /bits/ 8 <
			0x37 0x01 0x1c 0x00 0xff 0xff 0xff 0xff 0x01 0x7f 0x04 0x02
			0x00 0x00 0xba 0xce 0xc0 0xc6 0x2d 0x00 0x00 0x00 0x00 0x00
			0x00 0x00 0xf0 0x00>;
		marvell,wakeup-pin = /bits/ 16 <0x0d>;
		marvell,wakeup-gap-ms = /bits/ 16 <0x64>;
	};
};

Example for USB device:

&usb_host1_ohci {
    #address-cells = <1>;
    #size-cells = <0>;

    mvl_bt1: bt@1 {
	compatible = "usb1286,204e";
	reg = <1>;
	interrupt-parent = <&gpio0>;
	interrupt-names = "wakeup";
	interrupts = <119 IRQ_TYPE_LEVEL_LOW>;
	marvell,wakeup-pin = /bits/ 16 <0x0d>;
	marvell,wakeup-gap-ms = /bits/ 16 <0x64>;
    };
};
