From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Martin Subject: [PATCH v3 08/28] arm64/sve: Kconfig update and conditional compilation support Date: Tue, 10 Oct 2017 19:38:25 +0100 Message-ID: <1507660725-7986-9-git-send-email-Dave.Martin@arm.com> References: <1507660725-7986-1-git-send-email-Dave.Martin@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1507660725-7986-1-git-send-email-Dave.Martin@arm.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu To: linux-arm-kernel@lists.infradead.org Cc: linux-arch@vger.kernel.org, Okamoto Takayuki , libc-alpha@sourceware.org, Ard Biesheuvel , Szabolcs Nagy , Catalin Marinas , Will Deacon , Richard Sandiford , kvmarm@lists.cs.columbia.edu List-Id: linux-arch.vger.kernel.org VGhpcyBwYXRjaCBhZGRzIENPTkZJR19BUk02NF9TVkUgdG8gY29udHJvbCBidWlsZGluZyBvZiBT VkUgc3VwcG9ydAppbnRvIHRoZSBrZXJuZWwsIGFuZCBhZGRzIGEgc3R1YiBwcmVkaWNhdGUgc3lz dGVtX3N1cHBvcnRzX3N2ZSgpIHRvCmNvbnRyb2wgY29uZGl0aW9uYWwgY29tcGlsYXRpb24gYW5k IHJ1bnRpbWUgU1ZFIHN1cHBvcnQuCgpzeXN0ZW1fc3VwcG9ydHNfc3ZlKCkganVzdCByZXR1cm5z IGZhbHNlIGZvciBub3c6IGl0IHdpbGwgYmUKcmVwbGFjZWQgd2l0aCBhIG5vbi10cml2aWFsIGlt cGxlbWVudGF0aW9uIGluIGEgbGF0ZXIgcGF0Y2gsIG9uY2UKU1ZFIHN1cHBvcnQgaXMgY29tcGxl dGUgZW5vdWdoIHRvIGJlIGVuYWJsZWQgc2FmZWx5LgoKU2lnbmVkLW9mZi1ieTogRGF2ZSBNYXJ0 aW4gPERhdmUuTWFydGluQGFybS5jb20+ClJldmlld2VkLWJ5OiBBbGV4IEJlbm7DqWUgPGFsZXgu YmVubmVlQGxpbmFyby5vcmc+Ci0tLQogYXJjaC9hcm02NC9LY29uZmlnICAgICAgICAgICAgICAg ICAgfCAxMSArKysrKysrKysrKwogYXJjaC9hcm02NC9pbmNsdWRlL2FzbS9jcHVmZWF0dXJlLmgg fCAgNSArKysrKwogMiBmaWxlcyBjaGFuZ2VkLCAxNiBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0 IGEvYXJjaC9hcm02NC9LY29uZmlnIGIvYXJjaC9hcm02NC9LY29uZmlnCmluZGV4IGNhNzExYWMu LjliM2E1MGUgMTAwNjQ0Ci0tLSBhL2FyY2gvYXJtNjQvS2NvbmZpZworKysgYi9hcmNoL2FybTY0 L0tjb25maWcKQEAgLTk3NSw2ICs5NzUsMTcgQEAgY29uZmlnIEFSTTY0X1BNRU0KIAogZW5kbWVu dQogCitjb25maWcgQVJNNjRfU1ZFCisJYm9vbCAiQVJNIFNjYWxhYmxlIFZlY3RvciBFeHRlbnNp b24gc3VwcG9ydCIKKwlkZWZhdWx0IHkKKwloZWxwCisJICBUaGUgU2NhbGFibGUgVmVjdG9yIEV4 dGVuc2lvbiAoU1ZFKSBpcyBhbiBleHRlbnNpb24gdG8gdGhlIEFBcmNoNjQKKwkgIGV4ZWN1dGlv biBzdGF0ZSB3aGljaCBjb21wbGVtZW50cyBhbmQgZXh0ZW5kcyB0aGUgU0lNRCBmdW5jdGlvbmFs aXR5CisJICBvZiB0aGUgYmFzZSBhcmNoaXRlY3R1cmUgdG8gc3VwcG9ydCBtdWNoIGxhcmdlciB2 ZWN0b3JzIGFuZCB0byBlbmFibGUKKwkgIGFkZGl0aW9uYWwgdmVjdG9yaXNhdGlvbiBvcHBvcnR1 bml0aWVzLgorCisJICBUbyBlbmFibGUgdXNlIG9mIHRoaXMgZXh0ZW5zaW9uIG9uIENQVXMgdGhh dCBpbXBsZW1lbnQgaXQsIHNheSBZLgorCiBjb25maWcgQVJNNjRfTU9EVUxFX0NNT0RFTF9MQVJH RQogCWJvb2wKIApkaWZmIC0tZ2l0IGEvYXJjaC9hcm02NC9pbmNsdWRlL2FzbS9jcHVmZWF0dXJl LmggYi9hcmNoL2FybTY0L2luY2x1ZGUvYXNtL2NwdWZlYXR1cmUuaAppbmRleCA0MjhlZTFmLi40 ZWEzNDQxIDEwMDY0NAotLS0gYS9hcmNoL2FybTY0L2luY2x1ZGUvYXNtL2NwdWZlYXR1cmUuaAor KysgYi9hcmNoL2FybTY0L2luY2x1ZGUvYXNtL2NwdWZlYXR1cmUuaApAQCAtMjYyLDYgKzI2Miwx MSBAQCBzdGF0aWMgaW5saW5lIGJvb2wgc3lzdGVtX3VzZXNfdHRicjBfcGFuKHZvaWQpCiAJCSFj cHVzX2hhdmVfY29uc3RfY2FwKEFSTTY0X0hBU19QQU4pOwogfQogCitzdGF0aWMgaW5saW5lIGJv b2wgc3lzdGVtX3N1cHBvcnRzX3N2ZSh2b2lkKQoreworCXJldHVybiBmYWxzZTsKK30KKwogI2Vu ZGlmIC8qIF9fQVNTRU1CTFlfXyAqLwogCiAjZW5kaWYKLS0gCjIuMS40CgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwprdm1hcm0gbWFpbGluZyBsaXN0Cmt2 bWFybUBsaXN0cy5jcy5jb2x1bWJpYS5lZHUKaHR0cHM6Ly9saXN0cy5jcy5jb2x1bWJpYS5lZHUv bWFpbG1hbi9saXN0aW5mby9rdm1hcm0K From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from usa-sjc-mx-foss1.foss.arm.com ([217.140.101.70]:48890 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932294AbdJJSjN (ORCPT ); Tue, 10 Oct 2017 14:39:13 -0400 From: Dave Martin Subject: [PATCH v3 08/28] arm64/sve: Kconfig update and conditional compilation support Date: Tue, 10 Oct 2017 19:38:25 +0100 Message-ID: <1507660725-7986-9-git-send-email-Dave.Martin@arm.com> In-Reply-To: <1507660725-7986-1-git-send-email-Dave.Martin@arm.com> References: <1507660725-7986-1-git-send-email-Dave.Martin@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-arch-owner@vger.kernel.org List-ID: To: linux-arm-kernel@lists.infradead.org Cc: Catalin Marinas , Will Deacon , Ard Biesheuvel , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Szabolcs Nagy , Richard Sandiford , Okamoto Takayuki , kvmarm@lists.cs.columbia.edu, libc-alpha@sourceware.org, linux-arch@vger.kernel.org Message-ID: <20171010183825.ZdnRg0NojDlHFJP1yeNI0syyIAIC8omozCa3cl1xyoo@z> This patch adds CONFIG_ARM64_SVE to control building of SVE support into the kernel, and adds a stub predicate system_supports_sve() to control conditional compilation and runtime SVE support. system_supports_sve() just returns false for now: it will be replaced with a non-trivial implementation in a later patch, once SVE support is complete enough to be enabled safely. Signed-off-by: Dave Martin Reviewed-by: Alex Bennée --- arch/arm64/Kconfig | 11 +++++++++++ arch/arm64/include/asm/cpufeature.h | 5 +++++ 2 files changed, 16 insertions(+) diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index ca711ac..9b3a50e 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig @@ -975,6 +975,17 @@ config ARM64_PMEM endmenu +config ARM64_SVE + bool "ARM Scalable Vector Extension support" + default y + help + The Scalable Vector Extension (SVE) is an extension to the AArch64 + execution state which complements and extends the SIMD functionality + of the base architecture to support much larger vectors and to enable + additional vectorisation opportunities. + + To enable use of this extension on CPUs that implement it, say Y. + config ARM64_MODULE_CMODEL_LARGE bool diff --git a/arch/arm64/include/asm/cpufeature.h b/arch/arm64/include/asm/cpufeature.h index 428ee1f..4ea3441 100644 --- a/arch/arm64/include/asm/cpufeature.h +++ b/arch/arm64/include/asm/cpufeature.h @@ -262,6 +262,11 @@ static inline bool system_uses_ttbr0_pan(void) !cpus_have_const_cap(ARM64_HAS_PAN); } +static inline bool system_supports_sve(void) +{ + return false; +} + #endif /* __ASSEMBLY__ */ #endif -- 2.1.4