|
@@ -1,16 +1,21 @@
|
|
|
-Marvell 8897/8997 (sd8897/sd8997) bluetooth SDIO devices
|
|
|
+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"
|
|
|
- * "marvell,sd8997-bt"
|
|
|
+ * "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).
|
|
@@ -18,10 +23,15 @@ Optional properties:
|
|
|
platform. The value will be configured to firmware. This
|
|
|
is needed to work chip's sleep feature as expected (u16).
|
|
|
- interrupt-parent: phandle of the parent interrupt controller
|
|
|
- - interrupts : interrupt pin number to the cpu. 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 condition. During system resume, the irq will be disabled
|
|
|
+ - 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:
|
|
@@ -29,7 +39,9 @@ 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.
|
|
|
-calibration data is also available in below example.
|
|
|
+
|
|
|
+Example for SDIO device follows (calibration data is also available in
|
|
|
+below example).
|
|
|
|
|
|
&mmc3 {
|
|
|
status = "okay";
|
|
@@ -54,3 +66,21 @@ calibration data is also available in below example.
|
|
|
marvell,wakeup-gap-ms = /bits/ 16 <0x64>;
|
|
|
};
|
|
|
};
|
|
|
+
|
|
|
+Example for USB device:
|
|
|
+
|
|
|
+&usb_host1_ohci {
|
|
|
+ status = "okay";
|
|
|
+ #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>;
|
|
|
+ };
|
|
|
+};
|