From patchwork Fri Jun 10 05:53:00 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bjorn Andersson X-Patchwork-Id: 9168871 X-Patchwork-Delegate: agross@codeaurora.org Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 4412A6048F for ; Fri, 10 Jun 2016 05:53:46 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 35C802665D for ; Fri, 10 Jun 2016 05:53:46 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 2AA362833F; Fri, 10 Jun 2016 05:53:46 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6A5042665D for ; Fri, 10 Jun 2016 05:53:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751068AbcFJFx0 (ORCPT ); Fri, 10 Jun 2016 01:53:26 -0400 Received: from mail-pf0-f181.google.com ([209.85.192.181]:33917 "EHLO mail-pf0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750994AbcFJFxF (ORCPT ); Fri, 10 Jun 2016 01:53:05 -0400 Received: by mail-pf0-f181.google.com with SMTP id 62so20323215pfd.1 for ; Thu, 09 Jun 2016 22:53:04 -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=BIgZG4NMTDxSjVm5U0OJJ1XRSWkZK76yZlZKh0kxrX4=; b=Btck98IwbInIdwF5/bHi3gzSrAmJIwudDlaTEUNzaXGCX9I+/fp7LDHFMC+4/8itua uN5Xo6kPm8CUEF2r1oAatSD8e85AnUB8/mYkGS4IPseIvQVnJjtAZhUMDNV+HlC5mkrK j3aIKTx7DFZGdwSPlV33aHYuCsMOjj83HN76I= 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=BIgZG4NMTDxSjVm5U0OJJ1XRSWkZK76yZlZKh0kxrX4=; b=SPtYdNqAxID5Gdx03GZcdu63BFWQ4IG5ZAMPItX7hy8mTTeuoMedWdwEFicWPJBPv8 t1fJC0FIhZfJpFocrnXany/9LW/lyaY3hkvF/qq88QYadafgyjlN+iP3xwMpjnclGXFL H7norQeCPcb4bL0pmw+0QHe7XeUQZzCMW8f8yrEHVhCRKnYh7uGKInZJh8lWrNUTBlTw ol/T8GihtIgPIlg3mkxI6SeDxlhkH44iqlKycMxn4oMYCl8vRGAORy8/1N8TkPAmiY69 3vr9ojaq1ulqy8IPT4WVg+hHJxsibVUOfNtZgFL4wt+Ea75r4T3WQ9PV3/1w7tVW+a5H yn4A== X-Gm-Message-State: ALyK8tKt3yj/AIAEYFATL79AXE4Y0Lt0DZtA3lX5awGwPN5YWuAaxTHM1IWcptkgYFFYVy3X X-Received: by 10.98.34.15 with SMTP id i15mr327166pfi.29.1465537984353; Thu, 09 Jun 2016 22:53:04 -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 bf4sm14336934pac.4.2016.06.09.22.53.03 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 09 Jun 2016 22:53:03 -0700 (PDT) From: Bjorn Andersson To: Ian Campbell , Mark Rutland , Ohad Ben-Cohen , Pawel Moll , Rob Herring Cc: Srinivas Kandagatla , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org Subject: [PATCH 2/2] dt-binding: remoteproc: Introduce Hexagon loader binding Date: Thu, 9 Jun 2016 22:53:00 -0700 Message-Id: <1465537980-13347-2-git-send-email-bjorn.andersson@linaro.org> X-Mailer: git-send-email 2.5.0 In-Reply-To: <1465537980-13347-1-git-send-email-bjorn.andersson@linaro.org> References: <1465537980-13347-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-Virus-Scanned: ClamAV using ClamSMTP This document defines the binding for a component that loads firmware and control the life cycle of a self-authenticating Qualcomm Hexagon core. Signed-off-by: Bjorn Andersson Acked-by: Rob Herring --- .../devicetree/bindings/remoteproc/qcom,q6v5.txt | 138 +++++++++++++++++++++ 1 file changed, 138 insertions(+) create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt b/Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt new file mode 100644 index 000000000000..066ddb8d4d2a --- /dev/null +++ b/Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt @@ -0,0 +1,138 @@ +Qualcomm Hexagon Peripheral Image Loader + +This document defines the binding for a component that loads and boots firmware +on the Qualcomm Hexagon core. + +- compatible: + Usage: required + Value type: + Definition: must be one of: + "qcom,q6v5-pil" + +- reg: + Usage: required + Value type: + Definition: must specify the base address and size of the qdsp6 and + rmb register blocks + +- reg-names: + Usage: required + Value type: + Definition: must be "q6dsp" and "rmb" + +- interrupts-extended: + Usage: required + Value type: + Definition: must list the watchdog, fatal IRQs ready, handover and + stop-ack IRQs + +- interrupt-names: + Usage: required + Value type: + Definition: must be "wdog", "fatal", "ready", "handover", "stop-ack" + +- clocks: + Usage: required + Value type: + Definition: reference to the iface, bus and mem clocks to be held on + behalf of the booting of the Hexagon core + +- clock-names: + Usage: required + Value type: + Definition: must be "iface", "bus", "mem" + +- resets: + Usage: required + Value type: + Definition: reference to the reset-controller for the modem sub-system + +- reset-names: + Usage: required + Value type: + Definition: must be "mss_restart" + +- cx-supply: +- mss-supply: +- mx-supply: +- pll-supply: + Usage: required + Value type: + Definition: reference to the regulators to be held on behalf of the + booting of the Hexagon core + +- qcom,smem-states: + Usage: required + Value type: + Definition: reference to the smem state for requesting the Hexagon to + shut down + +- qcom,smem-state-names: + Usage: required + Value type: + Definition: must be "stop" + +- qcom,halt-regs: + Usage: required + Value type: + Definition: a phandle reference to a syscon representing TCSR followed + by the three offsets within syscon for q6, modem and nc + halt registers. + += SUBNODES: +The Hexagon node must contain two subnodes, named "mba" and "mpss" representing +the memory regions used by the Hexagon firmware. Each sub-node must contain: + +- memory-region: + Usage: required + Value type: + Definition: reference to the reserved-memory for the region + += EXAMPLE +The following example describes the resources needed to boot control the +Hexagon, as it is found on MSM8974 boards. + + modem-rproc@fc880000 { + compatible = "qcom,q6v5-pil"; + reg = <0xfc880000 0x100>, + <0xfc820000 0x020>; + reg-names = "qdsp6_base", "rmb_base"; + + interrupts-extended = <&intc 0 24 1>, + <&modem_smp2p_in 0 0>, + <&modem_smp2p_in 1 0>, + <&modem_smp2p_in 2 0>, + <&modem_smp2p_in 3 0>; + interrupt-names = "wdog", + "fatal", + "ready", + "handover", + "stop-ack"; + + clocks = <&gcc GCC_MSS_Q6_BIMC_AXI_CLK>, + <&gcc GCC_MSS_CFG_AHB_CLK>, + <&gcc GCC_BOOT_ROM_AHB_CLK>; + clock-names = "iface", "bus", "mem"; + + qcom,halt-regs = <&tcsr_mutex_block 0x1180 0x1200 0x1280>; + + resets = <&gcc GCC_MSS_RESTART>; + reset-names = "mss_restart"; + + cx-supply = <&pm8841_s2>; + mss-supply = <&pm8841_s3>; + mx-supply = <&pm8841_s1>; + pll-supply = <&pm8941_l12>; + + qcom,smem-states = <&modem_smp2p_out 0>; + qcom,smem-state-names = "stop"; + + mba { + memory-region = <&mba_region>; + }; + + mpss { + memory-region = <&mpss_region>; + }; + }; +