From patchwork Mon Feb 1 13:34:44 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Leo Yan X-Patchwork-Id: 60919 Delivered-To: patch@linaro.org Received: by 10.112.130.2 with SMTP id oa2csp3084503lbb; Mon, 1 Feb 2016 05:35:24 -0800 (PST) X-Received: by 10.98.31.8 with SMTP id f8mr38058641pff.71.1454333724718; Mon, 01 Feb 2016 05:35:24 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n62si212756pfa.183.2016.02.01.05.35.23; Mon, 01 Feb 2016 05:35:24 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dkim=pass header.i=@linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932755AbcBANfR (ORCPT + 30 others); Mon, 1 Feb 2016 08:35:17 -0500 Received: from mail-pa0-f42.google.com ([209.85.220.42]:34221 "EHLO mail-pa0-f42.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932219AbcBANfI (ORCPT ); Mon, 1 Feb 2016 08:35:08 -0500 Received: by mail-pa0-f42.google.com with SMTP id uo6so83949986pac.1 for ; Mon, 01 Feb 2016 05:35:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:subject:date:message-id:in-reply-to:references; bh=kCt1wq9tCBCX4n/w6vj67GORdSPyCIzAtfiMVrLnSrs=; b=NReZXQeFW4i0KMvWSfeTLksxVRHPBmNV0u+V/4LPfYL8peg+Ah0wVYfxHTC9TGcpUm vPVKzplodZZnbTVfZeIpxcJ99+v4A13BIRYk5GE89kS7rfdd1ksVlS/Z72ngS82HJBGp F2Z0yMJeBgvmfofMcnZYr9BglyRVDRXhF4abY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=kCt1wq9tCBCX4n/w6vj67GORdSPyCIzAtfiMVrLnSrs=; b=Etqi0XSf0sKp9kE+o8qKygCUkltwLYXlq5h7EEop42oaF7EPZFERFIe5RvKebjxod5 AY9kcUMkAe8xD5E5jQHCAQRyYtixrkeuJMBSVSX6UJd/ykwm5uwF4AyfGwPpG9kb2y8m tiNT2NtbgpVWp8YyPNpsHbSkCy/B6OgazzqBHyAZPSZ+/rK5IVALUIkuzhS1gj3tc/5V K4HHW+FQ52u+Ba7rZZVeMyD7bE2T1aueBbnlkCStMqWbiXycLbtUEx82iNLS9G0iMHc7 SUJfqYx/ccWXWET8NBkrArmZ0uF7J/muZpzPvuW1j8h0VEpD382oXphzRM/MbZ+7Ccjg f8tA== X-Gm-Message-State: AG10YOSNTJ9j/5U4/4/gYSjlTaitRbzWVotwJderWrJeCdzzuwEkFVmzkRE2eXtzP6FrxlUE X-Received: by 10.66.149.7 with SMTP id tw7mr38652233pab.72.1454333707854; Mon, 01 Feb 2016 05:35:07 -0800 (PST) Received: from localhost.localdomain (v17.blockcn.net. [192.241.236.26]) by smtp.gmail.com with ESMTPSA id r87sm4653060pfa.61.2016.02.01.05.35.01 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 01 Feb 2016 05:35:06 -0800 (PST) From: Leo Yan To: Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , Kumar Gala , Catalin Marinas , Will Deacon , Jassi Brar , Leo Yan , Arnd Bergmann , Wei Xu , Tyler Baker , Sudeep Holla , Chen Feng , Bintian Wang , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Haojian Zhuang Subject: [PATCH v5 1/4] dt-bindings: mailbox: Document Hi6220 mailbox driver Date: Mon, 1 Feb 2016 21:34:44 +0800 Message-Id: <1454333687-20421-2-git-send-email-leo.yan@linaro.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1454333687-20421-1-git-send-email-leo.yan@linaro.org> References: <1454333687-20421-1-git-send-email-leo.yan@linaro.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Document DT binding for Hisilicon Hi6220 mailbox driver. Signed-off-by: Leo Yan --- .../bindings/mailbox/hisilicon,hi6220-mailbox.txt | 90 ++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 Documentation/devicetree/bindings/mailbox/hisilicon,hi6220-mailbox.txt -- 1.9.1 diff --git a/Documentation/devicetree/bindings/mailbox/hisilicon,hi6220-mailbox.txt b/Documentation/devicetree/bindings/mailbox/hisilicon,hi6220-mailbox.txt new file mode 100644 index 0000000..96e6acc --- /dev/null +++ b/Documentation/devicetree/bindings/mailbox/hisilicon,hi6220-mailbox.txt @@ -0,0 +1,90 @@ +Hisilicon Hi6220 Mailbox Driver +=============================== + +Hisilicon Hi6220 mailbox supports up to 32 channels. Each channel +is unidirectional with a maximum message size of 8 words. I/O is +performed using register access (there is no DMA) and the cell +raises an interrupt when messages are received. + +Mailbox Device Node: +==================== + +Required properties: +-------------------- +- compatible: Shall be "hisilicon,hi6220-mbox" +- reg: Contains the mailbox register address range (base + address and length); the first item is for IPC + registers, the second item is shared buffer for + slots. +- #mbox-cells Common mailbox binding property to identify the number + of cells required for the mailbox specifier. Should be 1. +- interrupts: Contains the interrupt information for the mailbox + device. The format is dependent on which interrupt + controller the SoCs use. + +Optional Properties: +-------------------- +- hi6220,mbox-tx-noirq: Flag to allow the client user of this mailbox driver + to send messages without triggering a TX completion + interrupt. + +Child Nodes: +============ +A child node is used for representing the actual sub-mailbox device that is +used for the communication between the host processor and a remote processor. +Each child node should have a unique node name across all the different +mailbox device nodes. + +Required properties: +-------------------- +- hi6220,mbox-tx: sub-mailbox descriptor property defining Tx channel +- hi6220,mbox-rx: sub-mailbox descriptor property defining Rx channel + +Sub-mailbox Descriptor Data +--------------------------- +Each of the above hi6220,mbox-tx and hi6220,mbox-rx properties should have 3 +cells of data that represent the following: + Cell #1 (slot_id) - mailbox slot id used either for transmitting + (hi6220,mbox-tx) or for receiving (hi6220,mbox-rx) + Cell #2 (dst_irq) - irq identifier index number which used by MCU. + Cell #3 (ack_irq) - irq identifier index number with generating a tx/rx + interrupt to application processor, mailbox driver + used this id to acknowledge interrupt. + +Example: +-------- + + mailbox: mailbox@F7510000 { + #mbox-cells = <1>; + compatible = "hisilicon,hi6220-mbox"; + reg = <0x0 0xF7510000 0x0 0x1000>, /* IPC_S */ + <0x0 0x06DFF800 0x0 0x0800>; /* Mailbox */ + interrupt-parent = <&gic>; + interrupts = ; + mbox_stub_clock: mbox_stub_clock { + hi6220,mbox-rx = <0 1 10>; + hi6220,mbox-tx = <1 0 11>; + }; + }; + + +Mailbox client +=============== + +"mboxes" and the optional "mbox-names" (please see +Documentation/devicetree/bindings/mailbox/mailbox.txt for details). Each value +of the mboxes property should contain a phandle to the mailbox controller +device node and second argument is the channel index. It must be 0 (hardware +support only one channel). The equivalent "mbox-names" property value can be +used to give a name to the communication channel to be used by the client user. + +Example: +-------- + + stub_clock: stub_clock { + compatible = "hisilicon,hi6220-stub-clk"; + hisilicon,hi6220-clk-sram = <&sram>; + #clock-cells = <1>; + mbox-names = "mbox-tx"; + mboxes = <&mailbox 1>; + };