db53c7abcf
Signed-off-by: liaoao <liaoao@xiaomi.com>
71 lines
3.3 KiB
C
71 lines
3.3 KiB
C
/****************************************************************************
|
|
* arch/arm/src/common/hwcap.h
|
|
*
|
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
* contributor license agreements. See the NOTICE file distributed with
|
|
* this work for additional information regarding copyright ownership. The
|
|
* ASF licenses this file to you under the Apache License, Version 2.0 (the
|
|
* "License"); you may not use this file except in compliance with the
|
|
* License. You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
* License for the specific language governing permissions and limitations
|
|
* under the License.
|
|
*
|
|
****************************************************************************/
|
|
|
|
#ifndef __ARCH_ARM_SRC_COMMON_HWCAP_H
|
|
#define __ARCH_ARM_SRC_COMMON_HWCAP_H
|
|
|
|
/****************************************************************************
|
|
* Included Files
|
|
****************************************************************************/
|
|
|
|
/****************************************************************************
|
|
* Pre-processor Definitions
|
|
****************************************************************************/
|
|
|
|
/* Hardware capabilities */
|
|
|
|
#define HWCAP_SWP "swp" /* SWP instruction */
|
|
#define HWCAP_HALF "half" /* Half word */
|
|
#define HWCAP_THUMB "thumb" /* Thumb instruction set support */
|
|
#define HWCAP_26BIT "26bit" /* Play it safe */
|
|
#define HWCAP_FAST_MULT "fastmult" /* Long multiply such as umull and umlal */
|
|
#define HWCAP_FPA "fpa"
|
|
#define HWCAP_VFP "vfp"
|
|
#define HWCAP_EDSP "edsp" /* Enhanced dsp instruction */
|
|
#define HWCAP_JAVA "java"
|
|
#define HWCAP_IWMMXT "iwmmxt"
|
|
#define HWCAP_CRUNCH "crunch"
|
|
#define HWCAP_THUMBEE "thumbee"
|
|
#define HWCAP_NEON "neon" /* Advanced SIMD extension */
|
|
#define HWCAP_VFPV3 "vfpv3" /* Floating-point extension version */
|
|
#define HWCAP_VFPV3D16 "vfpv3d16" /* Also set for vfpv4-d16 */
|
|
#define HWCAP_TLS "tls" /* Thread local storage */
|
|
#define HWCAP_VFPV4 "vfpv4" /* Floating-point extension version */
|
|
#define HWCAP_IDIVA "idiva" /* SDIV and UDIV instruction */
|
|
#define HWCAP_IDIVT "idivt" /* SDIV and UDIV in thumb instruction set */
|
|
#define HWCAP_VFPD32 "vfpd32" /* Set if VFP has 32 64-bit regs (not 16) */
|
|
#define HWCAP_LPAE "lpae" /* LDRD/STRD instructions */
|
|
#define HWCAP_EVTSTRM "evtstrm"
|
|
#define HWCAP_FPHP "fphp" /* Half-precision instructions support */
|
|
#define HWCAP_FPSP "fpsp" /* Single-precision instructions support */
|
|
#define HWCAP_FPDP "fpdp" /* Double-precision instructions support */
|
|
#define HWCAP_FPV5 "fpv5" /* Floating-point extension version */
|
|
#define HWCAP_MVE "mve" /* M-profile vector extension */
|
|
|
|
/* Hardware capabilities added form armv8 */
|
|
|
|
#define HWCAP2_AES "aes"
|
|
#define HWCAP2_PMULL "pmull"
|
|
#define HWCAP2_SHA1 "sha1"
|
|
#define HWCAP2_SHA2 "sha2"
|
|
#define HWCAP2_CRC32 "crc32"
|
|
|
|
#endif /* __ARCH_ARM_SRC_COMMON_HWCAP_H */
|