Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/drivers/crypto/qce/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 9 kB image not shown  

Quelle  regs-v5.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (c) 2012-2014, The Linux Foundation. All rights reserved.
 */


#ifndef _REGS_V5_H_
#define _REGS_V5_H_

#include <linux/bitops.h>

#define REG_VERSION   0x000
#define REG_STATUS   0x100
#define REG_STATUS2   0x104
#define REG_ENGINES_AVAIL  0x108
#define REG_FIFO_SIZES   0x10c
#define REG_SEG_SIZE   0x110
#define REG_GOPROC   0x120
#define REG_ENCR_SEG_CFG  0x200
#define REG_ENCR_SEG_SIZE  0x204
#define REG_ENCR_SEG_START  0x208
#define REG_CNTR0_IV0   0x20c
#define REG_CNTR1_IV1   0x210
#define REG_CNTR2_IV2   0x214
#define REG_CNTR3_IV3   0x218
#define REG_CNTR_MASK   0x21C
#define REG_ENCR_CCM_INT_CNTR0  0x220
#define REG_ENCR_CCM_INT_CNTR1  0x224
#define REG_ENCR_CCM_INT_CNTR2  0x228
#define REG_ENCR_CCM_INT_CNTR3  0x22c
#define REG_ENCR_XTS_DU_SIZE  0x230
#define REG_CNTR_MASK2   0x234
#define REG_CNTR_MASK1   0x238
#define REG_CNTR_MASK0   0x23c
#define REG_AUTH_SEG_CFG  0x300
#define REG_AUTH_SEG_SIZE  0x304
#define REG_AUTH_SEG_START  0x308
#define REG_AUTH_IV0   0x310
#define REG_AUTH_IV1   0x314
#define REG_AUTH_IV2   0x318
#define REG_AUTH_IV3   0x31c
#define REG_AUTH_IV4   0x320
#define REG_AUTH_IV5   0x324
#define REG_AUTH_IV6   0x328
#define REG_AUTH_IV7   0x32c
#define REG_AUTH_IV8   0x330
#define REG_AUTH_IV9   0x334
#define REG_AUTH_IV10   0x338
#define REG_AUTH_IV11   0x33c
#define REG_AUTH_IV12   0x340
#define REG_AUTH_IV13   0x344
#define REG_AUTH_IV14   0x348
#define REG_AUTH_IV15   0x34c
#define REG_AUTH_INFO_NONCE0  0x350
#define REG_AUTH_INFO_NONCE1  0x354
#define REG_AUTH_INFO_NONCE2  0x358
#define REG_AUTH_INFO_NONCE3  0x35c
#define REG_AUTH_BYTECNT0  0x390
#define REG_AUTH_BYTECNT1  0x394
#define REG_AUTH_BYTECNT2  0x398
#define REG_AUTH_BYTECNT3  0x39c
#define REG_AUTH_EXP_MAC0  0x3a0
#define REG_AUTH_EXP_MAC1  0x3a4
#define REG_AUTH_EXP_MAC2  0x3a8
#define REG_AUTH_EXP_MAC3  0x3ac
#define REG_AUTH_EXP_MAC4  0x3b0
#define REG_AUTH_EXP_MAC5  0x3b4
#define REG_AUTH_EXP_MAC6  0x3b8
#define REG_AUTH_EXP_MAC7  0x3bc
#define REG_CONFIG   0x400
#define REG_GOPROC_QC_KEY  0x1000
#define REG_GOPROC_OEM_KEY  0x2000
#define REG_ENCR_KEY0   0x3000
#define REG_ENCR_KEY1   0x3004
#define REG_ENCR_KEY2   0x3008
#define REG_ENCR_KEY3   0x300c
#define REG_ENCR_KEY4   0x3010
#define REG_ENCR_KEY5   0x3014
#define REG_ENCR_KEY6   0x3018
#define REG_ENCR_KEY7   0x301c
#define REG_ENCR_XTS_KEY0  0x3020
#define REG_ENCR_XTS_KEY1  0x3024
#define REG_ENCR_XTS_KEY2  0x3028
#define REG_ENCR_XTS_KEY3  0x302c
#define REG_ENCR_XTS_KEY4  0x3030
#define REG_ENCR_XTS_KEY5  0x3034
#define REG_ENCR_XTS_KEY6  0x3038
#define REG_ENCR_XTS_KEY7  0x303c
#define REG_AUTH_KEY0   0x3040
#define REG_AUTH_KEY1   0x3044
#define REG_AUTH_KEY2   0x3048
#define REG_AUTH_KEY3   0x304c
#define REG_AUTH_KEY4   0x3050
#define REG_AUTH_KEY5   0x3054
#define REG_AUTH_KEY6   0x3058
#define REG_AUTH_KEY7   0x305c
#define REG_AUTH_KEY8   0x3060
#define REG_AUTH_KEY9   0x3064
#define REG_AUTH_KEY10   0x3068
#define REG_AUTH_KEY11   0x306c
#define REG_AUTH_KEY12   0x3070
#define REG_AUTH_KEY13   0x3074
#define REG_AUTH_KEY14   0x3078
#define REG_AUTH_KEY15   0x307c

/* Register bits - REG_VERSION */
#define CORE_STEP_REV_SHIFT  0
#define CORE_STEP_REV_MASK  GENMASK(15, 0)
#define CORE_MINOR_REV_SHIFT  16
#define CORE_MINOR_REV_MASK  GENMASK(23, 16)
#define CORE_MAJOR_REV_SHIFT  24
#define CORE_MAJOR_REV_MASK  GENMASK(31, 24)

/* Register bits - REG_STATUS */
#define MAC_FAILED_SHIFT  31
#define DOUT_SIZE_AVAIL_SHIFT  26
#define DOUT_SIZE_AVAIL_MASK  GENMASK(30, 26)
#define DIN_SIZE_AVAIL_SHIFT  21
#define DIN_SIZE_AVAIL_MASK  GENMASK(25, 21)
#define HSD_ERR_SHIFT   20
#define ACCESS_VIOL_SHIFT  19
#define PIPE_ACTIVE_ERR_SHIFT  18
#define CFG_CHNG_ERR_SHIFT  17
#define DOUT_ERR_SHIFT   16
#define DIN_ERR_SHIFT   15
#define AXI_ERR_SHIFT   14
#define CRYPTO_STATE_SHIFT  10
#define CRYPTO_STATE_MASK  GENMASK(13, 10)
#define ENCR_BUSY_SHIFT   9
#define AUTH_BUSY_SHIFT   8
#define DOUT_INTR_SHIFT   7
#define DIN_INTR_SHIFT   6
#define OP_DONE_INTR_SHIFT  5
#define ERR_INTR_SHIFT   4
#define DOUT_RDY_SHIFT   3
#define DIN_RDY_SHIFT   2
#define OPERATION_DONE_SHIFT  1
#define SW_ERR_SHIFT   0

/* Register bits - REG_STATUS2 */
#define AXI_EXTRA_SHIFT   1
#define LOCKED_SHIFT   2

/* Register bits - REG_CONFIG */
#define REQ_SIZE_SHIFT   17
#define REQ_SIZE_MASK   GENMASK(20, 17)
#define REQ_SIZE_ENUM_1_BEAT  0
#define REQ_SIZE_ENUM_2_BEAT  1
#define REQ_SIZE_ENUM_3_BEAT  2
#define REQ_SIZE_ENUM_4_BEAT  3
#define REQ_SIZE_ENUM_5_BEAT  4
#define REQ_SIZE_ENUM_6_BEAT  5
#define REQ_SIZE_ENUM_7_BEAT  6
#define REQ_SIZE_ENUM_8_BEAT  7
#define REQ_SIZE_ENUM_9_BEAT  8
#define REQ_SIZE_ENUM_10_BEAT  9
#define REQ_SIZE_ENUM_11_BEAT  10
#define REQ_SIZE_ENUM_12_BEAT  11
#define REQ_SIZE_ENUM_13_BEAT  12
#define REQ_SIZE_ENUM_14_BEAT  13
#define REQ_SIZE_ENUM_15_BEAT  14
#define REQ_SIZE_ENUM_16_BEAT  15

#define MAX_QUEUED_REQ_SHIFT  14
#define MAX_QUEUED_REQ_MASK  GENMASK(24, 16)
#define ENUM_1_QUEUED_REQS  0
#define ENUM_2_QUEUED_REQS  1
#define ENUM_3_QUEUED_REQS  2

#define IRQ_ENABLES_SHIFT  10
#define IRQ_ENABLES_MASK  GENMASK(13, 10)

#define LITTLE_ENDIAN_MODE_SHIFT 9
#define PIPE_SET_SELECT_SHIFT  5
#define PIPE_SET_SELECT_MASK  GENMASK(8, 5)

#define HIGH_SPD_EN_N_SHIFT  4
#define MASK_DOUT_INTR_SHIFT  3
#define MASK_DIN_INTR_SHIFT  2
#define MASK_OP_DONE_INTR_SHIFT  1
#define MASK_ERR_INTR_SHIFT  0

/* Register bits - REG_AUTH_SEG_CFG */
#define COMP_EXP_MAC_SHIFT  24
#define COMP_EXP_MAC_DISABLED  0
#define COMP_EXP_MAC_ENABLED  1

#define F9_DIRECTION_SHIFT  23
#define F9_DIRECTION_UPLINK  0
#define F9_DIRECTION_DOWNLINK  1

#define AUTH_NONCE_NUM_WORDS_SHIFT 20
#define AUTH_NONCE_NUM_WORDS_MASK GENMASK(22, 20)

#define USE_PIPE_KEY_AUTH_SHIFT  19
#define USE_HW_KEY_AUTH_SHIFT  18
#define AUTH_FIRST_SHIFT  17
#define AUTH_LAST_SHIFT   16

#define AUTH_POS_SHIFT   14
#define AUTH_POS_MASK   GENMASK(15, 14)
#define AUTH_POS_BEFORE   0
#define AUTH_POS_AFTER   1

#define AUTH_SIZE_SHIFT   9
#define AUTH_SIZE_MASK   GENMASK(13, 9)
#define AUTH_SIZE_SHA1   0
#define AUTH_SIZE_SHA256  1
#define AUTH_SIZE_ENUM_1_BYTES  0
#define AUTH_SIZE_ENUM_2_BYTES  1
#define AUTH_SIZE_ENUM_3_BYTES  2
#define AUTH_SIZE_ENUM_4_BYTES  3
#define AUTH_SIZE_ENUM_5_BYTES  4
#define AUTH_SIZE_ENUM_6_BYTES  5
#define AUTH_SIZE_ENUM_7_BYTES  6
#define AUTH_SIZE_ENUM_8_BYTES  7
#define AUTH_SIZE_ENUM_9_BYTES  8
#define AUTH_SIZE_ENUM_10_BYTES  9
#define AUTH_SIZE_ENUM_11_BYTES  10
#define AUTH_SIZE_ENUM_12_BYTES  11
#define AUTH_SIZE_ENUM_13_BYTES  12
#define AUTH_SIZE_ENUM_14_BYTES  13
#define AUTH_SIZE_ENUM_15_BYTES  14
#define AUTH_SIZE_ENUM_16_BYTES  15

#define AUTH_MODE_SHIFT   6
#define AUTH_MODE_MASK   GENMASK(8, 6)
#define AUTH_MODE_HASH   0
#define AUTH_MODE_HMAC   1
#define AUTH_MODE_CCM   0
#define AUTH_MODE_CMAC   1

#define AUTH_KEY_SIZE_SHIFT  3
#define AUTH_KEY_SIZE_MASK  GENMASK(5, 3)
#define AUTH_KEY_SZ_AES128  0
#define AUTH_KEY_SZ_AES256  2

#define AUTH_ALG_SHIFT   0
#define AUTH_ALG_MASK   GENMASK(2, 0)
#define AUTH_ALG_NONE   0
#define AUTH_ALG_SHA   1
#define AUTH_ALG_AES   2
#define AUTH_ALG_KASUMI   3
#define AUTH_ALG_SNOW3G   4
#define AUTH_ALG_ZUC   5

/* Register bits - REG_ENCR_XTS_DU_SIZE */
#define ENCR_XTS_DU_SIZE_SHIFT  0
#define ENCR_XTS_DU_SIZE_MASK  GENMASK(19, 0)

/* Register bits - REG_ENCR_SEG_CFG */
#define F8_KEYSTREAM_ENABLE_SHIFT 17
#define F8_KEYSTREAM_DISABLED  0
#define F8_KEYSTREAM_ENABLED  1

#define F8_DIRECTION_SHIFT  16
#define F8_DIRECTION_UPLINK  0
#define F8_DIRECTION_DOWNLINK  1

#define USE_PIPE_KEY_ENCR_SHIFT  15
#define USE_PIPE_KEY_ENCR_ENABLED 1
#define USE_KEY_REGISTERS  0

#define USE_HW_KEY_ENCR_SHIFT  14
#define USE_KEY_REG   0
#define USE_HW_KEY   1

#define LAST_CCM_SHIFT   13
#define LAST_CCM_XFR   1
#define INTERM_CCM_XFR   0

#define CNTR_ALG_SHIFT   11
#define CNTR_ALG_MASK   GENMASK(12, 11)
#define CNTR_ALG_NIST   0

#define ENCODE_SHIFT   10

#define ENCR_MODE_SHIFT   6
#define ENCR_MODE_MASK   GENMASK(9, 6)
#define ENCR_MODE_ECB   0
#define ENCR_MODE_CBC   1
#define ENCR_MODE_CTR   2
#define ENCR_MODE_XTS   3
#define ENCR_MODE_CCM   4

#define ENCR_KEY_SZ_SHIFT  3
#define ENCR_KEY_SZ_MASK  GENMASK(5, 3)
#define ENCR_KEY_SZ_DES   0
#define ENCR_KEY_SZ_3DES  1
#define ENCR_KEY_SZ_AES128  0
#define ENCR_KEY_SZ_AES256  2

#define ENCR_ALG_SHIFT   0
#define ENCR_ALG_MASK   GENMASK(2, 0)
#define ENCR_ALG_NONE   0
#define ENCR_ALG_DES   1
#define ENCR_ALG_AES   2
#define ENCR_ALG_KASUMI   4
#define ENCR_ALG_SNOW_3G  5
#define ENCR_ALG_ZUC   6

/* Register bits - REG_GOPROC */
#define GO_SHIFT   0
#define CLR_CNTXT_SHIFT   1
#define RESULTS_DUMP_SHIFT  2

/* Register bits - REG_ENGINES_AVAIL */
#define ENCR_AES_SEL_SHIFT  0
#define DES_SEL_SHIFT   1
#define ENCR_SNOW3G_SEL_SHIFT  2
#define ENCR_KASUMI_SEL_SHIFT  3
#define SHA_SEL_SHIFT   4
#define SHA512_SEL_SHIFT  5
#define AUTH_AES_SEL_SHIFT  6
#define AUTH_SNOW3G_SEL_SHIFT  7
#define AUTH_KASUMI_SEL_SHIFT  8
#define BAM_PIPE_SETS_SHIFT  9
#define BAM_PIPE_SETS_MASK  GENMASK(12, 9)
#define AXI_WR_BEATS_SHIFT  13
#define AXI_WR_BEATS_MASK  GENMASK(18, 13)
#define AXI_RD_BEATS_SHIFT  19
#define AXI_RD_BEATS_MASK  GENMASK(24, 19)
#define ENCR_ZUC_SEL_SHIFT  26
#define AUTH_ZUC_SEL_SHIFT  27
#define ZUC_ENABLE_SHIFT  28

#endif /* _REGS_V5_H_ */

Messung V0.5
C=97 H=93 G=94

¤ Dauer der Verarbeitung: 0.10 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.