Received: by 2002:a25:824b:0:0:0:0:0 with SMTP id d11csp8270880ybn; Tue, 1 Oct 2019 05:55:45 -0700 (PDT) X-Google-Smtp-Source: APXvYqwUxQNdqhNIS2wJ9JQVtQLuIzuu3rkKRsBhcc4MLzOgkY/+dfRX/ctcjky0foFe3/TGaQvd X-Received: by 2002:aa7:d803:: with SMTP id v3mr25486405edq.146.1569934545125; Tue, 01 Oct 2019 05:55:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1569934545; cv=none; d=google.com; s=arc-20160816; b=T/Pwmy+rbmAXbMpOCBebt88WXovrVoaeuzOuhqRbUIBONl3N8fH3QLcBckdVvYS67v cBVOro3iICwK8rTQSgpBv+HAYF0s3BkDXbdn7X9gIaIp1mMnOtt/s5GpzSGFVgNvphii FYyhoq91Ei60/+1vtYyrbIxJZnjLxoqdfSOXi+brfyIov79MMsftk42clF/On09cyhfd s7XSao6v2+eZz92fpP2khFwKd+C+cFvXOPDdWKM8O6roPISShqDRHE41a3eS1Ko9M7RD 0MeDMUdtEQXKbAFoE+94Kmq0wfPbhfSjjyMPh2kcTzyIZGTk6xRy0kpMBikdyQbMTESo A+Hg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=GWPRvI9YjnFutLnsnPpBdFJj3LESdva53Mm/ZKua91Y=; b=0/KWRQpmQw6P5HeTwB7uv9VHNaXnnjN3YWJyUF0UJHziwdyzvlosCLiFJigjWbWyeQ 4QNCBlSFUDCG2LRZsxnO5UeJLYHQNql0rCfi+G7nb10wDRMeHIhBQ0a7BTj8YgpBL//L q6U4cvAeo2xGVZ/MkrFEPjR2SdRjBe9kocD490dN7QiSAcwjt0Pxs+3Ox6q76+mb2cKQ oIeBedMThuhP58gTvk5/TxiPrazlqJGgeJbP9uf0j1KRbWrZ+AZjiRRB9FSo7PskoDBN 8rZwXzoIf3Ns06IcYYdyK7Kpx7OWdn3P2YjRJJdLY+El/UHejgpFGd7i19X95H/xBhnv y9vw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=BOXfnlLN; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g8si9211097edb.335.2019.10.01.05.55.21; Tue, 01 Oct 2019 05:55:45 -0700 (PDT) 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; dkim=pass header.i=@kernel.org header.s=default header.b=BOXfnlLN; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388192AbfJAMyz (ORCPT + 99 others); Tue, 1 Oct 2019 08:54:55 -0400 Received: from mail.kernel.org ([198.145.29.99]:44472 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388181AbfJAMyx (ORCPT ); Tue, 1 Oct 2019 08:54:53 -0400 Received: from willie-the-truck (236.31.169.217.in-addr.arpa [217.169.31.236]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id C1ADF21872; Tue, 1 Oct 2019 12:54:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1569934493; bh=4ZwqNMkLAQ6qVgwcsq/kPtYCFF46wZLCtAuZ+J9bA0E=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=BOXfnlLNBAeHH+AHjQ/kdaxE6JUJFThHEvZ5AnHpcIJhKyHJiF59b0Nb3ywQH8RE5 78jm9cqaDGZLNS11Hdl09X2vIhhg0UGjXDBMZZPluuea7beLK4hgB694ALgyVuezxZ JS/+Y+lD4qfJINQObM0tYmWz7zzM3Gy1feo1XRN0= Date: Tue, 1 Oct 2019 13:54:47 +0100 From: Will Deacon To: Jia He Cc: Catalin Marinas , Mark Rutland , James Morse , Marc Zyngier , Matthew Wilcox , "Kirill A. Shutemov" , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Punit Agrawal , Thomas Gleixner , Andrew Morton , hejianet@gmail.com, Kaly Xin Subject: Re: [PATCH v10 1/3] arm64: cpufeature: introduce helper cpu_has_hw_af() Message-ID: <20191001125446.gknoofnm7az4wqf5@willie-the-truck> References: <20190930015740.84362-1-justin.he@arm.com> <20190930015740.84362-2-justin.he@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190930015740.84362-2-justin.he@arm.com> User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Sep 30, 2019 at 09:57:38AM +0800, Jia He wrote: > We unconditionally set the HW_AFDBM capability and only enable it on > CPUs which really have the feature. But sometimes we need to know > whether this cpu has the capability of HW AF. So decouple AF from > DBM by new helper cpu_has_hw_af(). > > Signed-off-by: Jia He > Suggested-by: Suzuki Poulose > Reviewed-by: Catalin Marinas > --- > arch/arm64/include/asm/cpufeature.h | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/arch/arm64/include/asm/cpufeature.h b/arch/arm64/include/asm/cpufeature.h > index 9cde5d2e768f..949bc7c85030 100644 > --- a/arch/arm64/include/asm/cpufeature.h > +++ b/arch/arm64/include/asm/cpufeature.h > @@ -659,6 +659,16 @@ static inline u32 id_aa64mmfr0_parange_to_phys_shift(int parange) > default: return CONFIG_ARM64_PA_BITS; > } > } > + > +/* Check whether hardware update of the Access flag is supported */ > +static inline bool cpu_has_hw_af(void) > +{ > + if (IS_ENABLED(CONFIG_ARM64_HW_AFDBM)) > + return read_cpuid(ID_AA64MMFR1_EL1) & 0xf; 0xf? I think we should have a mask in sysreg.h for this constant. Will