diff --git a/bindings/bluetooth/bluetooth_power.txt b/bindings/bluetooth/bluetooth_power.txt new file mode 100644 index 00000000..0d564e65 --- /dev/null +++ b/bindings/bluetooth/bluetooth_power.txt @@ -0,0 +1,74 @@ +* Bluetooth Controller +Bluetooth controller communicates with the Bluetooth Host using HCI Transport +layer. HCI Transport layer can be based on UART or USB serial communication +protocol. + +Required properties: + - compatible: Should be set to one of the following: + qca,ar3002 + qca,qca6174 + qca,wcn3990 + qca,qca6390 + qca,wcn6750 + - qca,bt-reset-gpio: GPIO pin to bring BT Controller out of reset + - qca,wl-reset-gpio: GPIO pin for WLAN EN, used here to check status only + +Optional properties: + - qca,bt-vdd-pa-supply: Bluetooth VDD PA regulator handle + - qca,bt-vdd-io-supply: Bluetooth VDD IO regulator handle + - qca,bt-vdd-ldo-supply: Bluetooth VDD LDO regulator handle. Kept under + optional parameters as some of the chipsets doesn't require ldo + or it may use from same vddio. + - qca,bt-vdd-xtal-supply: Bluetooth VDD XTAL regulator handle + - qca,bt-vdd-core-supply: Bluetooth VDD CORE regulator handle + - qca,bt-vdd-asd-supply: Bluetooth VDD regulator handle for antenna switch + diversity. + - qca,bt-chip-pwd-supply: Chip power down gpio is required when bluetooth + module and other modules like wifi co-exist in a singe chip and + shares a common gpio to bring chip out of reset. + - qca,bt-vdd-pa-voltage-level: specifies VDD PA voltage levels for supply. + Should be specified in pairs (min, max), units uV + - qca,bt-vdd-io-voltage-level: specifies VDD IO voltage levels for supply. + Should be specified in pairs (min, max), units uV + - qca,bt-vdd-ldo-voltage-level: specifies VDD LDO voltage levels for supply. + Should be specified in pairs (min, max), units uV + - qca,bt-vdd-xtal-voltage-level: specifies VDD XTAL voltage levels for supply. + Should be specified in pairs (min, max), units uV + - qca,bt-vdd-core-voltage-level: specifies VDD CORE voltage levels for supply. + - qca,bt-vdd-asd-voltage-level: specifies VDD voltage levels for supply for + antenna switch diversity. Should be specified in pairs (min, max), units uV + - qca,bt-vdd-io-current-level: specifies VDD IO current level in microamps + - qca,bt-vdd-xtal-current-level: specifies VDD XTAL current level in microamps + - qca,bt-vdd-core-current-level: specifies VDD CORE current level in microamps. + - qca,bt-vdd-ldo-current-level: specifies VDD LDO current level in microamps. + - qca,bt-vdd-pa-current-level: specifies VDD PA current level in microamps. + - qca,bt-chip-pwd-current-level: specifies Chip Power current level in microamps. + - qca,bt-vdd-asd-current-level: specifies VDD ASD current level + +Example: + bluetooth: bt_qca6390 { + compatible = "qca,qca6390"; + pinctrl-names = "default"; + pinctrl-0 = <&bt_en_sleep>; + qca,bt-reset-gpio = <&tlmm 21 0>; /* BT_EN */ + qca,wl-reset-gpio = <&tlmm 20 0>; /* WL_EN */ + qca,bt-vdd-aon-supply = <&pm8150_s6>; + qca,bt-vdd-dig-supply = <&pm8009_s2>; + qca,bt-vdd-rfa1-supply = <&pm8150_s5>; + qca,bt-vdd-rfa2-supply = <&pm8150a_s8>; + qca,bt-vdd-asd-supply = <&pm8150_l16>; + + qca,bt-vdd-aon-voltage-level = <950000 950000>; + qca,bt-vdd-dig-voltage-level = <950000 952000>; + qca,bt-vdd-rfa1-voltage-level = <1900000 1900000>; + qca,bt-vdd-rfa2-voltage-level = <1350000 1350000>; + qca,bt-vdd-asd-voltage-level = <3024000 3304000>; + + qca,bt-vdd-asd-current-level = <10000>; + + qca,bt-vdd-io-current-level = <1>; /* LPM/PFM */ + qca,bt-vdd-xtal-current-level = <1>; /* LPM/PFM */ + qca,bt-vdd-core-current-level = <1>; /* LPM/PFM */ + qca,bt-vdd-ldo-current-level = <1>; /* LPM/PFM */ + qca,bt-vdd-pa-current-level = <1>; /* LPM/PFM */ + }; diff --git a/bindings/crypto/msm/qcrypto.txt b/bindings/crypto/msm/qcrypto.txt new file mode 100644 index 00000000..dcb1ae9a --- /dev/null +++ b/bindings/crypto/msm/qcrypto.txt @@ -0,0 +1,66 @@ +* QCRYPTO (QTI Crypto) + +Required properties: + - compatible : should be "qcom,qcrypto" + - reg : should contain crypto, BAM register map. + - reg-names : should contain the crypto and bam base register names. + - interrupts : should contain crypto BAM interrupt. + - qcom,bam-pipe-pair : should contain crypto BAM pipe pair index. + - qcom,ce-hw-instance : should contain crypto HW instance. + - qcom,msm_bus,name: Should be "qcrypto-noc" + - qcom,msm_bus,num_cases: Depends on the use cases for bus scaling + - qcom,msm_bus,active-only: Boolean flag for context of request (actve/dual) + - qcom,msm_bus,num_paths: The paths for source and destination ports + - qcom,ce-device: Device number. Device number is encoded with the following: + bit 3-0 device type: 0 for full disk encryption(fde) + 1 for per file encrption(pfe) + bit 7-4 unit number within the device type. + + +Optional properties: + - qcom,ce-hw-shared : optional, indicates if the hardware is shared between EE. + - qcom,ce-hw-key : optional, indicates if the hardware supports use of HW KEY. + - qcom,use-sw-aes-cbc-ecb-ctr-algo : optional, indicates if use SW aes-cbc/ecb/ctr algorithm. + - qcom,use-sw-aes-xts-algo : optional, indicates if use SW aes-xts algorithm. + - qcom,use-sw-aead-algo : optional, indicates if use SW aead algorithm. + - qcom,use-sw-ahash-algo : optional, indicates if use SW hash algorithm. + - qcom,use-sw-hmac-algo : optional, indicates if use SW hmac algorithm. + - qcom,use-sw-aes-ccm-algo : optional, indicates if use SW aes-ccm algorithm. + - qcom,clk-mgmt-sus-res : optional, indicate if the ce clocks need to be disabled/enabled in suspend/resume function. + - qcom,support-core-clk-only : optional, indicates if the HW supports single crypto core clk. + - qcom,request-bw-before-clk : optional, indicates if the HW supports bandwidth requests prior to clock controls. + - qcom,bsm-ee : optional, indicate the BAM EE value, changes from target to target.Default value is 1 if not specified. + + - qcom,ce-opp-freq: optional, indicates the CE operating frequency in Hz, + changes from target to target. If not specified, by default the + frequency is set as 100MHZ. + + - qcom,msm_bus,vectors: optional, indicates vectors for bus topology. + This attribute is required for msm targets where bus scaling is + required. For other targets such as fsm, they do not perform + bus scaling. It is not required for those targets. + + - qcom,smmu-s1-enable : Boolean flag to bypass SMMU stage 1 translation. + - iommus : A list of phandle and IOMMU specifier pairs that describe the IOMMU master interfaces of the device. + - qcom,no-clock-support : indicates clocks are not handled by hlos crypto driver. + +Example: + + qcom,qcrypto@fd444000 { + compatible = "qcom,qcrypto"; + reg = <0xfd440000 0x20000>, + <0xfd444000 0x8000>; + reg-names = "crypto-base","crypto-bam-base"; + interrupts = <0 235 0>; + qcom,bam-pipe-pair = <1>; + qcom,ce-hw-instance = <1>; + qcom,ce-device = <0>; + qcom,ce-hw-shared; + qcom,msm-bus,name = "qcrypto-noc"; + qcom,msm-bus,num-cases = <2>; + qcom,msm-bus,num-paths = <1>; + qcom,msm-bus,vectors-KBps = + <56 512 0 0>, + <56 512 3936000 393600>, + qcom,ce-opp-freq = <100000000>; + }; diff --git a/bindings/input/touchscreen/novatek_nt36xxx.txt b/bindings/input/touchscreen/novatek_nt36xxx.txt new file mode 100644 index 00000000..44b963f1 --- /dev/null +++ b/bindings/input/touchscreen/novatek_nt36xxx.txt @@ -0,0 +1,32 @@ +* Novatek nt36xxx touch controller + +Please add this description here: The Novatek Touch controller is connected to the +host processor via I2C. The controller generates interrupts when the user touches +the panel. The host controller is expected to read the touch coordinates over I2C and +pass the coordinates to the rest of the system. + +Required properties: + - compatible : should be "novatek,NVT-ts" + - reg : i2c slave address of the device. + - vdd-supply : digital voltage power supply needed to power device. + - avdd-supply : analog voltage power supply needed to power device. + - novatek,reset-gpio : reset gpio. + - novatek,irq-gpio : irq gpio. + +Example: + &i2c_1 { + status = "ok"; + + /* Novatek device tree node */ + novatek@62 { + compatible = "novatek,NVT-ts"; + reg = <0x62>; + status = "ok"; + + vdd-supply = <&pm8994_lvs2>; + avdd-supply = <&pm8994_l22>; + + novatek,reset-gpio = <&msm_gpio 102 0x00>; + novatek,irq-gpio = <&msm_gpio 65 0x2001>; + }; + }; \ No newline at end of file diff --git a/bindings/input/touchscreen/synaptics_tcm_i2c.txt b/bindings/input/touchscreen/synaptics_tcm_i2c.txt new file mode 100644 index 00000000..11ec15a5 --- /dev/null +++ b/bindings/input/touchscreen/synaptics_tcm_i2c.txt @@ -0,0 +1,71 @@ +Synaptics TCM I2C touchscreen controller + +Required properties: + - compatible: + should be "synaptics,tcm-i2c" + - reg: + i2c slave address of device + - interrupt-parent: + hardware controller of interrupt signal + - interrupts: + gpio number and flags of interrupt signal + - vdd-supply: + digital power source + - avdd-supply: + analog power source + - pinctrl-names: + - pinctrl-0: + - pinctrl-1: + should be defined if using pinctrl framework + "pmx_ts_active": active configuration of pins + "pmx_ts_suspend": disabled configuration of pins + - synaptics,bus-reg-name: + name of digital power source regulator + - synaptics,pwr-reg-name: + name of analog power source regulator + - synaptics,irq-gpio: + interrupt hardware controller, gpio number, and flags + - synaptics,irq-on-state: + active state of interrupt signal + +Optional properties: + - synaptics,power-gpio: + hardware controller and gpio number of power control signal + - synaptics,power-delay-ms: + delay time in ms after powering on device + - synaptics,reset-gpio: + hardware controller and gpio number of reset signal + - synaptics,reset-delay-ms: + delay time in ms after issuing reset to device + - synaptics,reset-on-state: + active state of reset signal + - synaptics,reset-active-ms: + active duration in ms of reset signal + - synaptics,x-flip: + flip x axis + - synaptics,y-flip: + flip y axis + - synaptics,swap-axes: + swap x and y axes + - synaptics,ubl-i2c-addr: + i2c slave address of device in microbootloader mode + +Example: + synaptics_tcm@2c { + compatible = "synaptics,tcm-i2c"; + reg = <0x2c>; + interrupt-parent = <&msm_gpio>; + interrupts = <65 0x2008>; + vdd-supply = <&pm8994_lvs2>; + avdd-supply = <&pm8994_l22>; + pinctrl-names = "pmx_ts_active", "pmx_ts_suspend"; + pinctrl-0 = <&ts_active>; + pinctrl-1 = <&ts_suspend>; + synaptics,pwr-reg-name = "avdd"; + synaptics,bus-reg-name = "vdd"; + synaptics,irq-gpio = <&msm_gpio 65 0x2008>; + synaptics,irq-on-state = <0>; + synaptics,power-delay-ms = <200>; + synaptics,reset-delay-ms = <200>; + synaptics,ubl-i2c-addr = <0x2c>; + }; diff --git a/bindings/nfc/nq-nci.txt b/bindings/nfc/nq-nci.txt new file mode 100644 index 00000000..d18a0c59 --- /dev/null +++ b/bindings/nfc/nq-nci.txt @@ -0,0 +1,55 @@ +Qualcomm Technologies, Inc NQxxxx NFC NCI device + +Near Field Communication (NFC) device is based on NFC Controller Interface (NCI) + +Required properties: + +- compatible: "qcom,nq-nci" +- reg: NCI i2c slave address. +- qcom,nq-ven: specific gpio for hardware reset. +- qcom,nq-irq: specific gpio for read interrupt. +- qcom,nq-firm: gpio for firmware download +- qcom,nq-clkreq: gpio for clock +- interrupt-parent: Should be phandle for the interrupt controller + that services interrupts for this device. +- interrupts: Nfc read interrupt,gpio-clk-req interrupt + + +Recommended properties: + +- interrupt-names: names of interrupts, should include "nfc_irq", used for reference + + +Optional properties: + +- pinctrl-names, pinctrl-0, pincntrl-1: references to our pincntrl settings +- clocks, clock-names: must contain the NQxxxx's core clock. +- qcom,nq-esepwr: gpio to control power of secure element +- qcom,nq-vdd-1p8-supply: name of LDO to which NFC is connected +- qcom,nq-vdd-1p8-voltage: min and max voltage(in uV) requirement for NFC +- qcom,nq-vdd-1p8-current: max current(in uA) expected by NFC +- qcom,clk-src: NFC clock for antenna + +Example: + + nq-nci@2b { + compatible = "qcom,nq-nci"; + reg = <0x2b>; + qcom,nq-irq = <&tlmm 29 0x00>; + qcom,nq-ven = <&tlmm 30 0x00>; + qcom,nq-firm = <&tlmm 93 0x00>; + qcom,nq-clkreq = <&pm8998_gpios 21 0x00>; + qcom,nq-esepwr = <&tlmm 116 0x00>; + qcom,nq-vdd-1p8-supply = <&L11A>; + qcom,nq-vdd-1p8-voltage = <1800000 1800000>; + qcom,nq-vdd-1p8-current = <157000>; + qcom,clk-src = "BBCLK2"; + interrupt-parent = <&tlmm>; + interrupts = <29 0>; + interrupt-names = "nfc_irq"; + pinctrl-names = "nfc_active","nfc_suspend"; + pinctrl-0 = <&nfc_int_active &nfc_disable_active>; + pinctrl-1 = <&nfc_int_suspend &nfc_disable_suspend>; + clocks = <&clock_rpm clk_bb_clk2_pin>; + clock-names = "ref_clk"; + };