From patchwork Tue Mar 29 03:36:57 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bjorn Andersson X-Patchwork-Id: 8681981 X-Patchwork-Delegate: agross@codeaurora.org Return-Path: X-Original-To: patchwork-linux-arm-msm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id E02DEC0553 for ; Tue, 29 Mar 2016 03:39:47 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id E3E852020F for ; Tue, 29 Mar 2016 03:39:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id D48EC20121 for ; Tue, 29 Mar 2016 03:39:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755626AbcC2DhN (ORCPT ); Mon, 28 Mar 2016 23:37:13 -0400 Received: from mail-pa0-f43.google.com ([209.85.220.43]:34912 "EHLO mail-pa0-f43.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754623AbcC2DhL (ORCPT ); Mon, 28 Mar 2016 23:37:11 -0400 Received: by mail-pa0-f43.google.com with SMTP id td3so3475680pab.2 for ; Mon, 28 Mar 2016 20:37:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=acTmhJMdj5Upzo+rTiIb7wJfHB5Nwo2VqOGqJ28/UEM=; b=EoDIpw8Z4kxMcYzLF/2ABdrtFpZUmizMOI8yK/sN6aWQo2BeWZu8f0Ook6qycxT/ne Suhs4XBh4ns2maNVgGenFWzdiwIyXeKsJL0Xu3mlUKrbSlYy7WCzu4pp+5DvrO+cJUXS nebroqwTnK9uprNcMEQiWhg8TaAxsU7fUnbuU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=acTmhJMdj5Upzo+rTiIb7wJfHB5Nwo2VqOGqJ28/UEM=; b=QTgRj4MGCR5GKz6dY7umYlZdeSbkclZ3gGYdRRlSmsHAo0RlCChIQStuo9QV2wYBKV K9ZI0sbBB0vx4fB2wzBbPbb3CMi2F2aws5761+fbC1x62jnf/7cNkgqbMzTzGITyxlEA rp/WDqCZnU/eS0Kl3fl9/lw2BjDr+D8xOBMZR/Z5huA3VD1/PV/UJWI3vCmldNUfeUGG lF+BZXZeNSp+1IwWIHxFnueWqRdq/imF0DUqkhisKwFg5X37Iq+u9Y0ezTcRuFEIC8fg Ta4bYkgSIygreL2UVRT91DwoKFRIK9jCqlV9MYuUuEyJFTjOcraE+xalXOFmbscdLFXZ e+/Q== X-Gm-Message-State: AD7BkJI81/P+oejFh6UhyT1/1fZb7TgEij0kdbxzg73Y4rUuLz883bg/PYAylmJelm+s8Zop X-Received: by 10.66.167.145 with SMTP id zo17mr47681222pab.73.1459222630741; Mon, 28 Mar 2016 20:37:10 -0700 (PDT) Received: from localhost.localdomain (ip68-111-223-48.sd.sd.cox.net. [68.111.223.48]) by smtp.gmail.com with ESMTPSA id 85sm38851600pfl.18.2016.03.28.20.37.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 28 Mar 2016 20:37:10 -0700 (PDT) From: Bjorn Andersson To: Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell Cc: Suman Anna , John Stultz , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org, Bjorn Andersson Subject: [PATCH v2 1/9] dt-binding: remoteproc: Introduce Qualcomm WCNSS loader binding Date: Mon, 28 Mar 2016 20:36:57 -0700 Message-Id: <1459222625-11440-2-git-send-email-bjorn.andersson@linaro.org> X-Mailer: git-send-email 2.5.0 In-Reply-To: <1459222625-11440-1-git-send-email-bjorn.andersson@linaro.org> References: <1459222625-11440-1-git-send-email-bjorn.andersson@linaro.org> Sender: linux-arm-msm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org X-Spam-Status: No, score=-7.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,T_DKIM_INVALID,UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Bjorn Andersson The document defines the binding for a component that loads firmware for and boots the Qualcomm WCNSS core. Signed-off-by: Bjorn Andersson Signed-off-by: Bjorn Andersson Acked-by: Rob Herring --- Changes since v1: - Dropped non-variable properties (crash reason, firmware name) - Split wcnss and iris definitions into separate nodes - Dropped qcom, prefix of regulator supplies (standard binding) - Interrupts and stop-state is made optional to support 8064 .../bindings/remoteproc/qcom,wcnss-pil.txt | 117 +++++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,wcnss-pil.txt diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,wcnss-pil.txt b/Documentation/devicetree/bindings/remoteproc/qcom,wcnss-pil.txt new file mode 100644 index 000000000000..e317731ec0c8 --- /dev/null +++ b/Documentation/devicetree/bindings/remoteproc/qcom,wcnss-pil.txt @@ -0,0 +1,117 @@ +Qualcomm WCNSS Peripheral Image Loader + +This document defines the binding for a component that loads and boots firmware +on the Qualcomm WCNSS core. + +- compatible: + Usage: required + Value type: + Definition: must be one of: + "qcom,riva-pil", + "qcom,pronto-v1-pil", + "qcom,pronto-v2-pil" + +- reg: + Usage: required + Value type: + Definition: base address and size of riva/pronto PMU registers + +- interrupts-extended: + Usage: required + Value type: + Definition: must list the watchdog and fatal IRQs and may specify the + ready, handover and stop-ack IRQs + +- interrupt-names: + Usage: required + Value type: + Definition: should be "wdog", "fatal", optionally followed by "ready", + "handover", "stop-ack" + +- vddmx-supply: +- vddcx-supply: +- vddpx-supply: + Usage: required + Value type: + Definition: reference to the regulators to be held on behalf of the + booting of the WCNSS core + +- qcom,state: + Usage: optional + Value type: + Definition: reference to the SMEM state used to indicate to WCNSS that + it should shut down + +- qcom,state-names: + Usage: optional + Value type: + Definition: should be "stop" + += SUBNODES +A single subnode of the WCNSS PIL describes the attached rf module and its +resource dependencies. + +- compatible: + Usage: required + Value type: + Definition: must be one of: + "qcom,wcn3620", + "qcom,wcn3660", + "qcom,wcn3680" + +- clocks: + Usage: required + Value type: + Definition: should specify the xo clock and optionally the rf clock + +- clock-names: + Usage: required + Value type: + Definition: should be "xo", optionally followed by "rf" + +- vddxo-supply: +- vddrfa-supply: +- vddpa-supply: +- vdddig-supply: + Usage: required + Value type: + Definition: reference to the regulators to be held on behalf of the + booting of the WCNSS core + += EXAMPLE +The following example describes the resources needed to boot control the WCNSS, +with attached WCN3680, as it is commonly found on MSM8974 boards. + +pronto@fb21b000 { + compatible = "qcom,pronto-v2-pil"; + reg = <0xfb21b000 0x3000>; + + interrupts-extended = <&intc 0 149 1>, + <&wcnss_smp2p_slave 0 0>, + <&wcnss_smp2p_slave 1 0>, + <&wcnss_smp2p_slave 2 0>, + <&wcnss_smp2p_slave 3 0>; + interrupt-names = "wdog", "fatal", "ready", "handover", "stop-ack"; + + vddmx-supply = <&pm8841_s1>; + vddcx-supply = <&pm8841_s2>; + vddpx-supply = <&pm8941_s3>; + + qcom,state = <&wcnss_smp2p_out 0>; + qcom,state-names = "stop"; + + pinctrl-names = "default"; + pinctrl-0 = <&wcnss_pin_a>; + + iris { + compatible = "qcom,wcn3680"; + + clocks = <&rpmcc RPM_CXO_CLK_SRC>, <&rpmcc RPM_CXO_A2>; + clock-names = "xo", "rf"; + + vddxo-supply = <&pm8941_l6>; + vddrfa-supply = <&pm8941_l11>; + vddpa-supply = <&pm8941_l19>; + vdddig-supply = <&pm8941_s3>; + }; +};