123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- Qualcomm SMSM Point-to-Point (SMP2P) GPIO Driver
- Used to map an SMP2P entry and remote processor ID to a virtual GPIO controller
- and virtual interrupt controller.
- Required properties:
- -compatible : should be "qcom,smp2pgpio";
- -qcom,entry-name : name of the SMP2P entry
- -qcom,remote-pid : the SMP2P remote processor ID (see smp2p_private_api.h)
- -gpio-controller : specifies that this is a GPIO controller
- -#gpio-cells : number of GPIO cells (should always be <2>)
- -interrupt-controller : specifies that this is an interrupt controller
- -#interrupt-cells : number of interrupt cells (should always be <2>)
- Optional properties:
- -qcom,is-inbound : specifies that this is an inbound entry (default is outbound)
- Comments:
- All device tree entries must be unique. Therefore to prevent naming collisions
- between clients, it is recommended that the DT nodes should be named using the
- format:
- smp2pgpio_<ENTRY_NAME>_<REMOTE PID>_<in|out>
- Example:
- /* Maps inbound "smp2p" entry on remote PID 7 to GPIO controller. */
- smp2pgpio_smp2p_7_in: qcom,smp2pgpio-smp2p-7-in {
- compatible = "qcom,smp2pgpio";
- qcom,entry-name = "smp2p";
- qcom,remote-pid = <7>;
- qcom,is-inbound;
- gpio-controller;
- #gpio-cells = <2>;
- interrupt-controller;
- #interrupt-cells = <2>;
- };
- /*
- * Maps inbound "smp2p" entry on remote PID 7 to client driver
- * "qcom,smp2pgpio_test_smp2p_7_in".
- *
- * Note: If all 32-pins are used by this client, then you
- * can just list pin 0 here as a shortcut.
- */
- qcom,smp2pgpio_test_smp2p_7_in {
- compatible = "qcom,smp2pgpio_test_smp2p_7_in";
- gpios = <&smp2pgpio_smp2p_7_in 0 0>, /* pin 0 */
- <&smp2pgpio_smp2p_7_in 1 0>,
- . . .
- <&smp2pgpio_smp2p_7_in 31 0>; /* pin 31 */
- };
- /* Maps outbound "smp2p" entry on remote PID 7 to GPIO controller. */
- smp2pgpio_smp2p_7_out: qcom,smp2pgpio-smp2p-7-out {
- compatible = "qcom,smp2pgpio";
- qcom,entry-name = "smp2p";
- qcom,remote-pid = <7>;
- gpio-controller;
- #gpio-cells = <2>;
- interrupt-controller;
- #interrupt-cells = <2>;
- };
- /*
- * Maps outbound "smp2p" entry on remote PID 7 to client driver
- * "qcom,smp2pgpio_test_smp2p_7_out".
- *
- * Note: If all 32-pins are used by this client, then you
- * can just list pin 0 here as a shortcut.
- */
- qcom,smp2pgpio_test_smp2p_7_out {
- compatible = "qcom,smp2pgpio_test_smp2p_7_out";
- gpios = <&smp2pgpio_smp2p_7_out 0 0>, /* pin 0 */
- <&smp2pgpio_smp2p_7_out 1 0>,
- . . .
- <&smp2pgpio_smp2p_7_out 31 0>; /* pin 31 */
- };
|