From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752657AbaANG6O (ORCPT ); Tue, 14 Jan 2014 01:58:14 -0500 Received: from moutng.kundenserver.de ([212.227.17.9]:57414 "EHLO moutng.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751706AbaANG6L (ORCPT ); Tue, 14 Jan 2014 01:58:11 -0500 From: Arnd Bergmann To: Ravi Patel Subject: Re: [PATCH V2 0/4] misc: xgene: Add support for APM X-Gene SoC Queue Manager/Traffic Manager Date: Tue, 14 Jan 2014 07:58:02 +0100 User-Agent: KMail/1.12.2 (Linux/3.8.0-22-generic; KDE/4.3.2; x86_64; ; ) Cc: Greg KH , Loc Ho , davem@davemloft.net, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, "devicetree@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , Jon Masters , "patches@apm.com" , Keyur Chudgar References: <1387594651-25771-1-git-send-email-rapatel@apm.com> <201401122219.11593.arnd@arndb.de> In-Reply-To: MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201401140758.03224.arnd@arndb.de> X-Provags-ID: V02:K0:VlttyS5Ej59j0nqQn+CJuguSnC7wYwoJicYtVb2vzFY Oia0BGZH+3DWJVK7xIQeEekmzIJZCYm/2MAG8GavUy7iDb/jgR 2kRwSC/RVDesBkcF/frxXLR4Me7EVxejKh+NU+Nx1b4Nh+QW18 g62AYzd+kI9LgSCd2a72fhauiqldCpqKakB4LnafxdpjAid1CN NUpy7y6oXDPUfvPxVXy31dSxmGk6MNPbyXfEq2YNk4MT+K1gb1 VeW79m5N7lWl44t6L364SbVnJWlITjdU6R5klhso22wHpBnAf+ a+ZIig8nmUhaaQ6yJtNSn/kCXpfHGWxCpcLcX5kKT5/nm6rCxv tS5+W2X1dcsdrXBqA1SY= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Monday 13 January 2014, Ravi Patel wrote: > > For inbound messages, the QMTM serves a similar purpose as an MSI > > controller, ensuring that inbound DMA data has arrived in RAM > > before an interrupt is delivered to the CPU and thereby avoiding > > the need for an expensive MMIO read to serialize the DMA. > > For inbound messages, slave device generates message on a completion > of a inbound DMA operation or any relevant operation targeted to the > CPU. The QMTM's role is to just trigger an interrupt to CPU when there > is a new message arrived from a slave device. QMTM doesn't know what > the message was for. It is upto the upper layer drivers to decide how > to process this message. That doesn't seem to contradict what I wrote above. The DMA ordering would be an implicit side-effect of the message generated by the slave device if the QMTM is on the same bus as the external memory controller and the message has the "strict ordering" bit set on the bus transaction. Arnd