Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fed756f8 authored by Alexei Avshalom Lazar's avatar Alexei Avshalom Lazar
Browse files

dt-bindings: msm: add snapshot of msm_11ad doc

Add snapshot of wil6210.txt, the documentation for the
msm_11ad driver bindings.
The snapshot is matching commit 728aba9a9d1e
(Documentation: devicetree: Remove devicetree bindings from kernel)
from msm-4.19 branch.

Change-Id: I4de88bfe4e2c7ab86ea76aa02a42261368ede494
parent 4fb85a05
Loading
Loading
Loading
Loading
+86 −0
Original line number Diff line number Diff line
wil6210 - Qualcomm Technologies Inc. 802.11ad Wireless Driver

wil6210 driver is responsible for managing 802.11ad chipset
connected to MSM over PCIe interface.

The platform data is needed in order to perform proper
bus-scaling and SMMU initialization by the driver.

Required properties:

- compatible: "qcom,wil6210"
- qcom,pcie-parent: phandle for the PCIe root complex to which 11ad card is connected
- qcom,11ad-bus-bw,name: String representing the client-name
- qcom,11ad-bus-bw,num-cases: Total number of usecases
- qcom,11ad-bus-bw,num-paths: Total number of master-slave pairs
- qcom,11ad-bus-bw,vectors-KBps: Arrays of unsigned integers representing:
				 master-id, slave-id, arbitrated bandwidth
				 in KBps, instantaneous bandwidth in KBps

Optional properties:
- qcom,sleep-clk-en: GPIO for sleep clock used for low power modes by 11ad card
- qcom,wigig-en: Enable GPIO connected to 11ad card
- qcom,wigig-dc: Enable DC to DC GPIO connected to 11ad card
- qcom,use-ext-supply: Boolean flag to indicate if 11ad SIP uses external power supply
- vdd-supply: phandle to 11ad VDD regulator node
- vddio-supply: phandle to 11ad VDDIO regulator node
- vdd-ldo-supply: phandle to 11ad VDD LDO regulator node
- qcom,use-ext-clocks: Boolean flag to indicate if 11ad SIP uses external clocks
- clocks	    : List of phandle and clock specifier pairs
- clock-names       : List of clock input name strings sorted in the same
		      order as the clocks property.
- qcom,keep-radio-on-during-sleep: Boolean flag to indicate if to suspend to d3hot
				   instead of turning off the device

Example:
	wil6210: qcom,wil6210 {
		compatible = "qcom,wil6210";
		qcom,pcie-parent = <&pcie1>;
		qcom,wigig-en = <&tlmm 94 0>;
		qcom,wigig-dc = <&tlmm 81 0>;
		qcom,11ad-bus-bw,name = "wil6210";
		qcom,11ad-bus-bw,num-cases = <2>;
		qcom,11ad-bus-bw,num-paths = <1>;
		qcom,11ad-bus-bw,vectors-KBps =
			<100 512 0 0>,
			<100 512 600000 800000>; /* ~4.6Gbps (MCS12) */
		qcom,use-ext-supply;
		vdd-supply= <&pm8998_s7>;
		vddio-supply= <&pm8998_s5>;
		vdd-ldo-supply = <&pm8150_l15>;
		qcom,use-ext-clocks;
		clocks = <&clock_gcc clk_rf_clk3>,
			 <&clock_gcc clk_rf_clk3_pin>;
		clock-names = "rf_clk3_clk", "rf_clk3_pin_clk";
		qcom,keep-radio-on-during-sleep;
	};

Wil6210 client node under PCIe RP node needed for SMMU initialization by
PCI framework when devices are discovered.

Required properties:

- qcom,iommu-dma-addr-pool: specifies the base address and size of SMMU space
- qcom,iommu-dma: define the SMMU mode - bypass/fastmap/disabled
- qcom,iommu-pagetable: indicating SMMU dma and page table coherency

Example:
&pcie1_rp {
	#address-cells = <5>;
	#size-cells = <0>;

	wil6210_pci: wil6210_pci {
		reg = <0 0 0 0 0>;

		#address-cells = <1>;
		#size-cells = <1>;

		qcom,iommu-group = <&wil6210_pci_iommu_group>;

		wil6210_pci_iommu_group: wil6210_pci_iommu_group {
				qcom,iommu-dma-addr-pool = <0x20000000 0xe0000000>;
				qcom,iommu-dma = "fastmap";
				qcom,iommu-pagetable = "coherent";
		};
       };
};