From patchwork Thu Nov 9 17:10:11 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Oleksandr Tyshchenko X-Patchwork-Id: 10051347 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 6D45260381 for ; Thu, 9 Nov 2017 17:12:56 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DAC9E2B042 for ; Thu, 9 Nov 2017 17:12:55 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id CFB102B047; Thu, 9 Nov 2017 17:12:55 +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=-3.6 required=2.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_MED, RCVD_IN_SORBS_SPAM, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 4ED7A2B042 for ; Thu, 9 Nov 2017 17:12:55 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eCqLy-0004XO-Kg; Thu, 09 Nov 2017 17:10:58 +0000 Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eCqLx-0004SR-4d for xen-devel@lists.xenproject.org; Thu, 09 Nov 2017 17:10:57 +0000 Received: from [85.158.137.68] by server-17.bemta-3.messagelabs.com id C0/FD-06614-02C840A5; Thu, 09 Nov 2017 17:10:56 +0000 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrLIsWRWlGSWpSXmKPExsVyMfS6o658D0u UwesmC4vvWyYzOTB6HP5whSWAMYo1My8pvyKBNePDhW1sBS/4KqZ0zmFrYNzG08XIxSEkMJ1R 4vH5nawgDovASxaJXR8/gzkSAv2sEp2H17F0MXIAOVkSfcucuhg5gcw0iQfHLjJD2BUSHw7dB 7OFBJQkXu/czARhz2aSuLxKHMRmEzCQ2P/uCTuILQJUc2/VZCaQ+cwC/YwSM+b8ZwVJCAuESu x48QusiEVAVWLC8WZmkL28Ai4S8697QeySk7h5rhNsFydQ+M3H62wQu5wlLr4+zjaBUXABI8M qRo3i1KKy1CJdQ3O9pKLM9IyS3MTMHF1DA2O93NTi4sT01JzEpGK95PzcTYzAgGMAgh2ML097 HmKU5GBSEuWVsmSJEuJLyk+pzEgszogvKs1JLT7EKMPBoSTBy9MNlBMsSk1PrUjLzAGGPkxag oNHSYT3XRdQmre4IDG3ODMdInWK0Z7jwp1Lf5g4Duy5BSSfzXzdwMwx7WprE7MQS15+XqqUOK 8VyFQBkLaM0jy4obBYvcQoKyXMywh0phBPQWpRbmYJqvwrRnEORiVh3u0gy3ky80rgdr8COos J6KxodrCzShIRUlINjJ3H9b79fC/R8bOuba+nx6u/ncJLso1SMqquh4mdUOm2k9brUjbx2SN9 VySqZNaLSVzOF6sPHzowo74z2kZEiWulkFTASfYkrTM1vRpbj97+InuuaM7RE+UFJ2onFy+48 l3xhUPMmrsZx7bxy8httfTLsSnUS1nN37Jpi2z9Li6V2FfeubYLlViKMxINtZiLihMBoTJDId ACAAA= X-Env-Sender: olekstysh@gmail.com X-Msg-Ref: server-16.tower-31.messagelabs.com!1510247455!106678490!1 X-Originating-IP: [209.85.215.65] X-SpamReason: No, hits=0.0 required=7.0 tests= X-StarScan-Received: X-StarScan-Version: 9.4.45; banners=-,-,- X-VirusChecked: Checked Received: (qmail 18348 invoked from network); 9 Nov 2017 17:10:55 -0000 Received: from mail-lf0-f65.google.com (HELO mail-lf0-f65.google.com) (209.85.215.65) by server-16.tower-31.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP; 9 Nov 2017 17:10:55 -0000 Received: by mail-lf0-f65.google.com with SMTP id n69so8050088lfn.2 for ; Thu, 09 Nov 2017 09:10:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=KPQuWLEw0XvYq7081tSM9XjeZ+ebhs4uObmR/nHJwwA=; b=L/+da6ocWckQqwUpAFRMPr2Kb7OQZ/IL4K57sLt4zHuwaWoUF9vydMaPCfFDDClliz rpnoXC9VaQI5OaXZMxA9skLNP/t7DyI55cJcmdU50VlrHDjGtRhpIUL7Gou+UpSQ957B 2rby48IbdlFialIgReSsegAz2/ASSNYo9NvVTtgSVTvwB6OX7yt4okPelNWg2B38aLIa 0fNE/YTkJzPifjTZjTbTA/dzVMXgosGLg+HkeBbJaK8rUb4NvErP3w90yNACQoX0LW8y MDKNLjZtlpfpw5LRMdsIBDGDs56GOZ7EgV+kjnFMJx4uOkSKH6fKnFFZY6154b70muuG rWAg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=KPQuWLEw0XvYq7081tSM9XjeZ+ebhs4uObmR/nHJwwA=; b=PWP66V+LkDItlltJnMKf6snJ1FCxuXXTaHcRYFhpbY4BBfMQ57wa3/+cGLsHRwIIj9 3jSqpy365O5EerTTCWdJpYghrUIma0aQtNrZBk5hPUu1u677SNdNpoPS/X7rhX/ck8gh axw57+IZNyMimZpylINSDzQ43yRXZPPcTia1Iyzo36XXQrS9GAuVv8UsNUmIiy74NSU0 wZ3gvrCmdnOEoIQa23q3rf9Dxi0QeHP2EBGc7VFMFep0Qzj9dh7GAkjP+6wYC3wU6LZn 7o3MG+MVOelGN9NJZko9/QLKpeUs/coOQ1ioFBpGaarY87FUOON6RnLL72/BPw5A27oS n/Zw== X-Gm-Message-State: AJaThX5T8aVVwFO0LxVpVGxpemmrdFVPUWhkXxH/Pl2OYYTgxCSecUUZ 5hZT0Bhi+0p3jJIi+78D9o5mBw== X-Google-Smtp-Source: AGs4zMaVpWMIf3BgiJc7JCeWjBxNm80ScTvgFI/bb7nr3dvsaMfkyEPxhJwts/lB9El/cWaIL5OD4A== X-Received: by 10.46.86.139 with SMTP id k11mr531630lje.103.1510247455120; Thu, 09 Nov 2017 09:10:55 -0800 (PST) Received: from otyshchenko.kyiv.epam.com (ll-53.209.223.85.sovam.net.ua. [85.223.209.53]) by smtp.gmail.com with ESMTPSA id x90sm1394299ljb.86.2017.11.09.09.10.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 09 Nov 2017 09:10:54 -0800 (PST) From: Oleksandr Tyshchenko To: xen-devel@lists.xenproject.org Date: Thu, 9 Nov 2017 19:10:11 +0200 Message-Id: <1510247421-24094-22-git-send-email-olekstysh@gmail.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1510247421-24094-1-git-send-email-olekstysh@gmail.com> References: <1510247421-24094-1-git-send-email-olekstysh@gmail.com> Cc: Oleksandr Tyshchenko , Stefano Stabellini , Julien Grall Subject: [Xen-devel] [RFC PATCH 21/31] xen/arm: Add rxdone_auto flag to mbox_controller structure X-BeenThere: xen-devel@lists.xen.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" X-Virus-Scanned: ClamAV using ClamSMTP From: Oleksandr Tyshchenko This patch adds a flag which indicates if mailbox controller doesn't need to poll for received data. It either has RX done irq for signaling when received data are ready or received data 'appears' right after transmitted data has been sent (synchronous case). The purpose of this flag is to help framework to recognize and then restrict a registration of controllers which need to use timer based polling for received data. Signed-off-by: Oleksandr Tyshchenko CC: Stefano Stabellini CC: Julien Grall --- xen/arch/arm/cpufreq/mailbox_controller.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/xen/arch/arm/cpufreq/mailbox_controller.h b/xen/arch/arm/cpufreq/mailbox_controller.h index 74deadb..05c6e45 100644 --- a/xen/arch/arm/cpufreq/mailbox_controller.h +++ b/xen/arch/arm/cpufreq/mailbox_controller.h @@ -64,6 +64,10 @@ struct mbox_chan_ops { * @txdone_poll: If the controller can read but not report the TX * done. Ex, some register shows the TX status but * no interrupt rises. Ignored if 'txdone_irq' is set. + * @rxdone_auto: Indicates if controller doesn't need to poll for + * received data. It either has RX done irq for signaling when + * received data are ready or received data 'appears' right after + * transmitted data has been sent (synchronous case). * @txpoll_period: If 'txdone_poll' is in effect, the API polls for * last TX's status after these many millisecs * @of_xlate: Controller driver specific mapping of channel via DT @@ -78,6 +82,7 @@ struct mbox_controller { int num_chans; bool txdone_irq; bool txdone_poll; + bool rxdone_auto; unsigned txpoll_period; struct mbox_chan *(*of_xlate)(struct mbox_controller *mbox, const struct of_phandle_args *sp);