1Marvell 8787/8897/8978/8997 (sd8787/sd8897/sd8978/sd8997/pcie8997) SDIO/PCIE devices 2------ 3 4This node provides properties for controlling the Marvell SDIO/PCIE wireless device. 5The node is expected to be specified as a child node to the SDIO/PCIE controller that 6connects the device to the system. 7 8Required properties: 9 10 - compatible : should be one of the following: 11 * "marvell,sd8787" 12 * "marvell,sd8897" 13 * "marvell,sd8978" 14 * "marvell,sd8997" 15 * "nxp,iw416" 16 * "pci11ab,2b42" 17 * "pci1b4b,2b42" 18 19Optional properties: 20 21 - marvell,caldata* : A series of properties with marvell,caldata prefix, 22 represent calibration data downloaded to the device during 23 initialization. This is an array of unsigned 8-bit values. 24 the properties should follow below property name and 25 corresponding array length: 26 "marvell,caldata-txpwrlimit-2g" (length = 566). 27 "marvell,caldata-txpwrlimit-5g-sub0" (length = 502). 28 "marvell,caldata-txpwrlimit-5g-sub1" (length = 688). 29 "marvell,caldata-txpwrlimit-5g-sub2" (length = 750). 30 "marvell,caldata-txpwrlimit-5g-sub3" (length = 502). 31 - marvell,wakeup-pin : a wakeup pin number of wifi chip which will be configured 32 to firmware. Firmware will wakeup the host using this pin 33 during suspend/resume. 34 - interrupts : interrupt pin number to the cpu. driver will request an irq based on 35 this interrupt number. during system suspend, the irq will be enabled 36 so that the wifi chip can wakeup host platform under certain condition. 37 during system resume, the irq will be disabled to make sure 38 unnecessary interrupt is not received. 39 - vmmc-supply: a phandle of a regulator, supplying VCC to the card 40 - mmc-pwrseq: phandle to the MMC power sequence node. See "mmc-pwrseq-*" 41 for documentation of MMC power sequence bindings. 42 43Example: 44 45Tx power limit calibration data is configured in below example. 46The calibration data is an array of unsigned values, the length 47can vary between hw versions. 48IRQ pin 38 is used as system wakeup source interrupt. wakeup pin 3 is configured 49so that firmware can wakeup host using this device side pin. 50 51&mmc3 { 52 vmmc-supply = <&wlan_en_reg>; 53 mmc-pwrseq = <&wifi_pwrseq>; 54 bus-width = <4>; 55 cap-power-off-card; 56 keep-power-in-suspend; 57 58 #address-cells = <1>; 59 #size-cells = <0>; 60 mwifiex: wifi@1 { 61 compatible = "marvell,sd8897"; 62 reg = <1>; 63 interrupt-parent = <&pio>; 64 interrupts = <38 IRQ_TYPE_LEVEL_LOW>; 65 66 marvell,caldata_00_txpwrlimit_2g_cfg_set = /bits/ 8 < 67 0x01 0x00 0x06 0x00 0x08 0x02 0x89 0x01>; 68 marvell,wakeup-pin = <3>; 69 }; 70}; 71