From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758265AbcATIrN (ORCPT ); Wed, 20 Jan 2016 03:47:13 -0500 Received: from szxga02-in.huawei.com ([119.145.14.65]:1416 "EHLO szxga02-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751144AbcATIrG (ORCPT ); Wed, 20 Jan 2016 03:47:06 -0500 Message-ID: <569F4919.2040502@huawei.com> Date: Wed, 20 Jan 2016 16:45:13 +0800 From: Shannon Zhao User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: Andrew Cooper , Stefano Stabellini CC: , , , , , , , , , , , , , Subject: Re: [Xen-devel] [PATCH v2 08/16] xen/hvm/params: Add a new delivery type for event-channel in HVM_PARAM_CALLBACK_IRQ References: <1452840929-19612-1-git-send-email-zhaoshenglong@huawei.com> <1452840929-19612-9-git-send-email-zhaoshenglong@huawei.com> <569CDDB7.9030103@citrix.com> <569CE00C.5050406@citrix.com> <569F2A4D.9070006@huawei.com> <569F47C8.9080005@citrix.com> In-Reply-To: <569F47C8.9080005@citrix.com> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.177.16.142] X-CFilter-Loop: Reflected X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A020205.569F4984.0003,ss=1,re=0.000,recu=0.000,reip=0.000,cl=1,cld=1,fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32 X-Mirapoint-Loop-Id: d4e839f12906e03ff695ca35a2a45dec Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2016/1/20 16:39, Andrew Cooper wrote: > On 20/01/2016 06:33, Shannon Zhao wrote: >> > >> > On 2016/1/18 20:52, Andrew Cooper wrote: >>> >> On 18/01/16 12:46, Stefano Stabellini wrote: >>>>> >>>> On Mon, 18 Jan 2016, Andrew Cooper wrote: >>>>>>> >>>>>> On 18/01/16 12:38, Stefano Stabellini wrote: >>>>>>>>> >>>>>>>> On Fri, 15 Jan 2016, Shannon Zhao wrote: >>>>>>>>>>> >>>>>>>>>> From: Shannon Zhao >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> Add a new delivery type: >>>>>>>>>>> >>>>>>>>>> val[63:56] == 3: val[15:8] is flag: val[7:0] is a PPI. >>>>>>>>>>> >>>>>>>>>> To the flag, bit 0 stands the interrupt mode is edge(1) or level(0) and >>>>>>>>>>> >>>>>>>>>> bit 1 stands the interrupt polarity is active low(1) or high(0). >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> Signed-off-by: Shannon Zhao >>>>>>>>>>> >>>>>>>>>> --- >>>>>>>>>>> >>>>>>>>>> include/xen/interface/hvm/params.h | 5 +++++ >>>>>>>>>>> >>>>>>>>>> 1 file changed, 5 insertions(+) >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> diff --git a/include/xen/interface/hvm/params.h b/include/xen/interface/hvm/params.h >>>>>>>>>>> >>>>>>>>>> index a6c7991..550688a 100644 >>>>>>>>>>> >>>>>>>>>> --- a/include/xen/interface/hvm/params.h >>>>>>>>>>> >>>>>>>>>> +++ b/include/xen/interface/hvm/params.h >>>>>>>>>>> >>>>>>>>>> @@ -34,6 +34,11 @@ >>>>>>>>>>> >>>>>>>>>> * Domain = val[47:32], Bus = val[31:16], >>>>>>>>>>> >>>>>>>>>> * DevFn = val[15: 8], IntX = val[ 1: 0] >>>>>>>>>>> >>>>>>>>>> * val[63:56] == 2: val[7:0] is a vector number. >>>>>>>>>>> >>>>>>>>>> + * val[63:56] == 3: val[15:8] is flag of event-channel interrupt: >>>>>>>>>>> >>>>>>>>>> + * bit 0: interrupt is edge(1) or level(0) triggered >>>>>>>>>>> >>>>>>>>>> + * bit 1: interrupt is active low(1) or high(0) >>>>>>>>>>> >>>>>>>>>> + * val[7:0] is PPI number used by event-channel. >>>>>>>>>>> >>>>>>>>>> + * This is only used by ARM/ARM64. >>>>>>>>>>> >>>>>>>>>> * If val == 0 then CPU0 event-channel notifications are not delivered. >>>>>>>>>>> >>>>>>>>>> */ >>>>>>>>>>> >>>>>>>>>> #define HVM_PARAM_CALLBACK_IRQ 0 >>>>>>>>> >>>>>>>> Andrew, I think that this patch is correct. Looking back at your >>>>>>>>> >>>>>>>> previous comment (http://marc.info/?l=devicetree&m=144804014214262&w=2), >>>>>>>>> >>>>>>>> is it possible that you were confused by enum callback_via_type, which >>>>>>>>> >>>>>>>> is internal to Xen and offset'ed by 1 compared to the described values >>>>>>>>> >>>>>>>> in xen/include/public/hvm/params.h? >>>>>>>>> >>>>>>>> >>>>>>>>> >>>>>>>> If not, and indeed somebody introduced one more field but failed to >>>>>>>>> >>>>>>>> document it, then I suggest she sends a patch to fix the issue as soon >>>>>>>>> >>>>>>>> as possible. >>>>>>> >>>>>> I was indeed confused - the ABI is utterly mad. >>>>> >>>> All right. In that case, Shannon, you can add my >>>>> >>>> >>>>> >>>> Reviewed-by: Stefano Stabellini >>>>> >>>> >>>>> >>>> >>>>>>> >>>>>> However, this change does need rebasing over c/s ca5c54b, which was the >>>>>>> >>>>>> result of the original discussion. >>>>> >>>> c/s ca5c54b is for Xen, while this is a Linux patch (Linux has its own >>>>> >>>> set of Xen headers). >>> >> All ABI changes need to happen in the Xen public headers first. This >>> >> patch cannot be accepted yet. >> > So you mean it should port c/s ca5c54b to Linux first? Then add this >> > change based on that? > FIrst, you must get this content and submit a patch against Xen. The > Xen repository is the authoritative version of the ABI. > I've sent a patch to Xen, but not applied yet. > Once that patch is accepted, you will need to port ca5c54b and the new > patch as part of this series. Ok, thanks. -- Shannon