Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp3893570ybz; Mon, 4 May 2020 11:39:25 -0700 (PDT) X-Google-Smtp-Source: APiQypLK6FAXLVEWukGv2IF18moRqgBVsI+hA/hdjhu6vUcdwCDwcsRJB5aPw4tmc5toIBtCySQw X-Received: by 2002:a17:906:17c1:: with SMTP id u1mr16343900eje.47.1588617565827; Mon, 04 May 2020 11:39:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588617565; cv=none; d=google.com; s=arc-20160816; b=fGXoiBRk/VI6orgMx1JoKOi+307irHfEvlRFRfz/ugNXmjZmq46JWftRsGptZAgu3P kqJidOfo84R1FYfbJyaqUq3J6gcwZpiXWHROyBN011Mj/C5iUUpjRLzYa9B2UOCYt0X0 BvPSAZHU6Kb4h1E572cyXSNvQsG/oFwlqqMhDUx97vNbSjUMxTJhhGmuuY6jJ+9eigxJ LufAwHEuX+kbzHcBXUPm/3FIekbNkSylMoFhrxOCT/IVbUgaEi/PCrPs4TFwJ97yz6hm PsaPdKyULfQAjBX/DEbVoDmesVIoUHEk0bniRyiB6yPBH+X211I4vIn+o4OOygJD2LK3 WiiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject; bh=v39JQDKx6J2j01UdLOi5OCNMqFGnjBdcQezmT116yw0=; b=myUYRpNO0HONCERpRPrsHUuU2MP0MQL70x1oiuqVZo3pUfgg0LabtvGEdicyZEGoSp cUcoX9iRWKgvGcxqNUxjud0CVaFmV81/H53rNXYWgIGAfGCCx1bXV5vDWRBSkW4LgMLP 5dOKUNg1H3LhXB7XNjMHaH19sOqLbeGu24plGSZ/QeIhSwNznMHE9JOl4LowRqeR1RuX 0NdmQ/0KaqonhlJFWTJYb3kgr9hlSt/Vqm6kTBYfZLzN3EgTdn+svimDDSTMQx4nmPM2 4SaKKo1ggKlwt76x8Rk2VlIE+6UwnT4LiVgHb3dYQhO1hGyoagk+j/eG4oUiTaZSatOR PdeA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id c3si6899131edv.205.2020.05.04.11.39.02; Mon, 04 May 2020 11:39:25 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728951AbgEDOLR (ORCPT + 99 others); Mon, 4 May 2020 10:11:17 -0400 Received: from foss.arm.com ([217.140.110.172]:45736 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726404AbgEDOLQ (ORCPT ); Mon, 4 May 2020 10:11:16 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1FFB71FB; Mon, 4 May 2020 07:11:16 -0700 (PDT) Received: from [192.168.1.84] (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 0D9813F305; Mon, 4 May 2020 07:11:14 -0700 (PDT) Subject: Re: [PATCH v2 4/5] firmware: psci: Add function to fetch SMCCC version To: Sudeep Holla , linux-arm-kernel@lists.infradead.org Cc: Catalin Marinas , Will Deacon , Mark Rutland , Lorenzo Pieralisi , linux-kernel@vger.kernel.org, harb@amperecomputing.com References: <20200504092905.10580-1-sudeep.holla@arm.com> <20200504092905.10580-5-sudeep.holla@arm.com> From: Steven Price Message-ID: <3554928d-2b7c-a3d3-f16e-20e25e761710@arm.com> Date: Mon, 4 May 2020 15:11:10 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 MIME-Version: 1.0 In-Reply-To: <20200504092905.10580-5-sudeep.holla@arm.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 04/05/2020 10:29, Sudeep Holla wrote: > For backward compatibility reasons, PSCI maintains SMCCC version as > SMCCC didn't provide ARM_SMCCC_VERSION_FUNC_ID until v1.1 > > Let us provide accessors to fetch the SMCCC version in PSCI so that > other SMCCC v1.1+ features can use it. Since it seems there is a good reason for this patch... ;) Reviewed-by: Steven Price Steve > Signed-off-by: Sudeep Holla > --- > drivers/firmware/psci/psci.c | 5 +++++ > include/linux/arm-smccc.h | 9 +++++++++ > 2 files changed, 14 insertions(+) > > diff --git a/drivers/firmware/psci/psci.c b/drivers/firmware/psci/psci.c > index 6a56d7196697..04426e16fee6 100644 > --- a/drivers/firmware/psci/psci.c > +++ b/drivers/firmware/psci/psci.c > @@ -65,6 +65,11 @@ enum arm_smccc_conduit arm_smccc_1_1_get_conduit(void) > return psci_ops.conduit; > } > > +u32 arm_smccc_get_version(void) > +{ > + return psci_ops.smccc_version; > +} > + > typedef unsigned long (psci_fn)(unsigned long, unsigned long, > unsigned long, unsigned long); > static psci_fn *invoke_psci_fn; > diff --git a/include/linux/arm-smccc.h b/include/linux/arm-smccc.h > index 9d9a2e42e919..d6b0f4acc707 100644 > --- a/include/linux/arm-smccc.h > +++ b/include/linux/arm-smccc.h > @@ -98,6 +98,15 @@ enum arm_smccc_conduit { > */ > enum arm_smccc_conduit arm_smccc_1_1_get_conduit(void); > > +/** > + * arm_smccc_get_version() > + * > + * Returns the version to be used for SMCCCv1.1 or later. > + * > + * When SMCCCv1.1 or above is not present, assumes and returns SMCCCv1.0. > + */ > +u32 arm_smccc_get_version(void); > + > /** > * struct arm_smccc_res - Result from SMC/HVC call > * @a0-a3 result values from registers 0 to 3 >