]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/staging/sep/sep_driver_hw_defs.h
Merge branch 'master' into tk71
[mv-sheeva.git] / drivers / staging / sep / sep_driver_hw_defs.h
diff --git a/drivers/staging/sep/sep_driver_hw_defs.h b/drivers/staging/sep/sep_driver_hw_defs.h
new file mode 100644 (file)
index 0000000..300f909
--- /dev/null
@@ -0,0 +1,233 @@
+/*
+ *
+ *  sep_driver_hw_defs.h - Security Processor Driver hardware definitions
+ *
+ *  Copyright(c) 2009,2010 Intel Corporation. All rights reserved.
+ *  Contributions(c) 2009,2010 Discretix. All rights reserved.
+ *
+ *  This program is free software; you can redistribute it and/or modify it
+ *  under the terms of the GNU General Public License as published by the Free
+ *  Software Foundation; version 2 of the License.
+ *
+ *  This program is distributed in the hope that it will be useful, but WITHOUT
+ *  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ *  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ *  more details.
+ *
+ *  You should have received a copy of the GNU General Public License along with
+ *  this program; if not, write to the Free Software Foundation, Inc., 59
+ *  Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ *
+ *  CONTACTS:
+ *
+ *  Mark Allyn         mark.a.allyn@intel.com
+ *  Jayant Mangalampalli jayant.mangalampalli@intel.com
+ *
+ *  CHANGES:
+ *
+ *  2010.09.20 Upgrade to Medfield
+ *
+ */
+
+#ifndef SEP_DRIVER_HW_DEFS__H
+#define SEP_DRIVER_HW_DEFS__H
+
+/* PCI ID's */
+#define MFLD_PCI_DEVICE_ID 0x0826
+
+/*----------------------- */
+/* HW Registers Defines.  */
+/*                        */
+/*---------------------- -*/
+
+
+/* cf registers */
+#define                HW_R0B_ADDR_0_REG_ADDR                  0x0000UL
+#define                HW_R0B_ADDR_1_REG_ADDR                  0x0004UL
+#define                HW_R0B_ADDR_2_REG_ADDR                  0x0008UL
+#define                HW_R0B_ADDR_3_REG_ADDR                  0x000cUL
+#define                HW_R0B_ADDR_4_REG_ADDR                  0x0010UL
+#define                HW_R0B_ADDR_5_REG_ADDR                  0x0014UL
+#define                HW_R0B_ADDR_6_REG_ADDR                  0x0018UL
+#define                HW_R0B_ADDR_7_REG_ADDR                  0x001cUL
+#define                HW_R0B_ADDR_8_REG_ADDR                  0x0020UL
+#define                HW_R2B_ADDR_0_REG_ADDR                  0x0080UL
+#define                HW_R2B_ADDR_1_REG_ADDR                  0x0084UL
+#define                HW_R2B_ADDR_2_REG_ADDR                  0x0088UL
+#define                HW_R2B_ADDR_3_REG_ADDR                  0x008cUL
+#define                HW_R2B_ADDR_4_REG_ADDR                  0x0090UL
+#define                HW_R2B_ADDR_5_REG_ADDR                  0x0094UL
+#define                HW_R2B_ADDR_6_REG_ADDR                  0x0098UL
+#define                HW_R2B_ADDR_7_REG_ADDR                  0x009cUL
+#define                HW_R2B_ADDR_8_REG_ADDR                  0x00a0UL
+#define                HW_R3B_REG_ADDR                         0x00C0UL
+#define                HW_R4B_REG_ADDR                         0x0100UL
+#define                HW_CSA_ADDR_0_REG_ADDR                  0x0140UL
+#define                HW_CSA_ADDR_1_REG_ADDR                  0x0144UL
+#define                HW_CSA_ADDR_2_REG_ADDR                  0x0148UL
+#define                HW_CSA_ADDR_3_REG_ADDR                  0x014cUL
+#define                HW_CSA_ADDR_4_REG_ADDR                  0x0150UL
+#define                HW_CSA_ADDR_5_REG_ADDR                  0x0154UL
+#define                HW_CSA_ADDR_6_REG_ADDR                  0x0158UL
+#define                HW_CSA_ADDR_7_REG_ADDR                  0x015cUL
+#define                HW_CSA_ADDR_8_REG_ADDR                  0x0160UL
+#define                HW_CSA_REG_ADDR                         0x0140UL
+#define                HW_SINB_REG_ADDR                        0x0180UL
+#define                HW_SOUTB_REG_ADDR                       0x0184UL
+#define                HW_PKI_CONTROL_REG_ADDR                 0x01C0UL
+#define                HW_PKI_STATUS_REG_ADDR                  0x01C4UL
+#define                HW_PKI_BUSY_REG_ADDR                    0x01C8UL
+#define                HW_PKI_A_1025_REG_ADDR                  0x01CCUL
+#define                HW_PKI_SDMA_CTL_REG_ADDR                0x01D0UL
+#define                HW_PKI_SDMA_OFFSET_REG_ADDR             0x01D4UL
+#define                HW_PKI_SDMA_POINTERS_REG_ADDR           0x01D8UL
+#define                HW_PKI_SDMA_DLENG_REG_ADDR              0x01DCUL
+#define                HW_PKI_SDMA_EXP_POINTERS_REG_ADDR       0x01E0UL
+#define                HW_PKI_SDMA_RES_POINTERS_REG_ADDR       0x01E4UL
+#define                HW_PKI_CLR_REG_ADDR                     0x01E8UL
+#define                HW_PKI_SDMA_BUSY_REG_ADDR               0x01E8UL
+#define                HW_PKI_SDMA_FIRST_EXP_N_REG_ADDR        0x01ECUL
+#define                HW_PKI_SDMA_MUL_BY1_REG_ADDR            0x01F0UL
+#define                HW_PKI_SDMA_RMUL_SEL_REG_ADDR           0x01F4UL
+#define                HW_DES_KEY_0_REG_ADDR                   0x0208UL
+#define                HW_DES_KEY_1_REG_ADDR                   0x020CUL
+#define                HW_DES_KEY_2_REG_ADDR                   0x0210UL
+#define                HW_DES_KEY_3_REG_ADDR                   0x0214UL
+#define                HW_DES_KEY_4_REG_ADDR                   0x0218UL
+#define                HW_DES_KEY_5_REG_ADDR                   0x021CUL
+#define                HW_DES_CONTROL_0_REG_ADDR               0x0220UL
+#define                HW_DES_CONTROL_1_REG_ADDR               0x0224UL
+#define                HW_DES_IV_0_REG_ADDR                    0x0228UL
+#define                HW_DES_IV_1_REG_ADDR                    0x022CUL
+#define                HW_AES_KEY_0_ADDR_0_REG_ADDR            0x0400UL
+#define                HW_AES_KEY_0_ADDR_1_REG_ADDR            0x0404UL
+#define                HW_AES_KEY_0_ADDR_2_REG_ADDR            0x0408UL
+#define                HW_AES_KEY_0_ADDR_3_REG_ADDR            0x040cUL
+#define                HW_AES_KEY_0_ADDR_4_REG_ADDR            0x0410UL
+#define                HW_AES_KEY_0_ADDR_5_REG_ADDR            0x0414UL
+#define                HW_AES_KEY_0_ADDR_6_REG_ADDR            0x0418UL
+#define                HW_AES_KEY_0_ADDR_7_REG_ADDR            0x041cUL
+#define                HW_AES_KEY_0_REG_ADDR                   0x0400UL
+#define                HW_AES_IV_0_ADDR_0_REG_ADDR             0x0440UL
+#define                HW_AES_IV_0_ADDR_1_REG_ADDR             0x0444UL
+#define                HW_AES_IV_0_ADDR_2_REG_ADDR             0x0448UL
+#define                HW_AES_IV_0_ADDR_3_REG_ADDR             0x044cUL
+#define                HW_AES_IV_0_REG_ADDR                    0x0440UL
+#define                HW_AES_CTR1_ADDR_0_REG_ADDR             0x0460UL
+#define                HW_AES_CTR1_ADDR_1_REG_ADDR             0x0464UL
+#define                HW_AES_CTR1_ADDR_2_REG_ADDR             0x0468UL
+#define                HW_AES_CTR1_ADDR_3_REG_ADDR             0x046cUL
+#define                HW_AES_CTR1_REG_ADDR                    0x0460UL
+#define                HW_AES_SK_REG_ADDR                      0x0478UL
+#define                HW_AES_MAC_OK_REG_ADDR                  0x0480UL
+#define                HW_AES_PREV_IV_0_ADDR_0_REG_ADDR        0x0490UL
+#define                HW_AES_PREV_IV_0_ADDR_1_REG_ADDR        0x0494UL
+#define                HW_AES_PREV_IV_0_ADDR_2_REG_ADDR        0x0498UL
+#define                HW_AES_PREV_IV_0_ADDR_3_REG_ADDR        0x049cUL
+#define                HW_AES_PREV_IV_0_REG_ADDR               0x0490UL
+#define                HW_AES_CONTROL_REG_ADDR                 0x04C0UL
+#define                HW_HASH_H0_REG_ADDR                     0x0640UL
+#define                HW_HASH_H1_REG_ADDR                     0x0644UL
+#define                HW_HASH_H2_REG_ADDR                     0x0648UL
+#define                HW_HASH_H3_REG_ADDR                     0x064CUL
+#define                HW_HASH_H4_REG_ADDR                     0x0650UL
+#define                HW_HASH_H5_REG_ADDR                     0x0654UL
+#define                HW_HASH_H6_REG_ADDR                     0x0658UL
+#define                HW_HASH_H7_REG_ADDR                     0x065CUL
+#define                HW_HASH_H8_REG_ADDR                     0x0660UL
+#define                HW_HASH_H9_REG_ADDR                     0x0664UL
+#define                HW_HASH_H10_REG_ADDR                    0x0668UL
+#define                HW_HASH_H11_REG_ADDR                    0x066CUL
+#define                HW_HASH_H12_REG_ADDR                    0x0670UL
+#define                HW_HASH_H13_REG_ADDR                    0x0674UL
+#define                HW_HASH_H14_REG_ADDR                    0x0678UL
+#define                HW_HASH_H15_REG_ADDR                    0x067CUL
+#define                HW_HASH_CONTROL_REG_ADDR                0x07C0UL
+#define                HW_HASH_PAD_EN_REG_ADDR                 0x07C4UL
+#define                HW_HASH_PAD_CFG_REG_ADDR                0x07C8UL
+#define                HW_HASH_CUR_LEN_0_REG_ADDR              0x07CCUL
+#define                HW_HASH_CUR_LEN_1_REG_ADDR              0x07D0UL
+#define                HW_HASH_CUR_LEN_2_REG_ADDR              0x07D4UL
+#define                HW_HASH_CUR_LEN_3_REG_ADDR              0x07D8UL
+#define                HW_HASH_PARAM_REG_ADDR                  0x07DCUL
+#define                HW_HASH_INT_BUSY_REG_ADDR               0x07E0UL
+#define                HW_HASH_SW_RESET_REG_ADDR               0x07E4UL
+#define                HW_HASH_ENDIANESS_REG_ADDR              0x07E8UL
+#define                HW_HASH_DATA_REG_ADDR                   0x07ECUL
+#define                HW_DRNG_CONTROL_REG_ADDR                0x0800UL
+#define                HW_DRNG_VALID_REG_ADDR                  0x0804UL
+#define                HW_DRNG_DATA_REG_ADDR                   0x0808UL
+#define                HW_RND_SRC_EN_REG_ADDR                  0x080CUL
+#define                HW_AES_CLK_ENABLE_REG_ADDR              0x0810UL
+#define                HW_DES_CLK_ENABLE_REG_ADDR              0x0814UL
+#define                HW_HASH_CLK_ENABLE_REG_ADDR             0x0818UL
+#define                HW_PKI_CLK_ENABLE_REG_ADDR              0x081CUL
+#define                HW_CLK_STATUS_REG_ADDR                  0x0824UL
+#define                HW_CLK_ENABLE_REG_ADDR                  0x0828UL
+#define                HW_DRNG_SAMPLE_REG_ADDR                 0x0850UL
+#define                HW_RND_SRC_CTL_REG_ADDR                 0x0858UL
+#define                HW_CRYPTO_CTL_REG_ADDR                  0x0900UL
+#define                HW_CRYPTO_STATUS_REG_ADDR               0x090CUL
+#define                HW_CRYPTO_BUSY_REG_ADDR                 0x0910UL
+#define                HW_AES_BUSY_REG_ADDR                    0x0914UL
+#define                HW_DES_BUSY_REG_ADDR                    0x0918UL
+#define                HW_HASH_BUSY_REG_ADDR                   0x091CUL
+#define                HW_CONTENT_REG_ADDR                     0x0924UL
+#define                HW_VERSION_REG_ADDR                     0x0928UL
+#define                HW_CONTEXT_ID_REG_ADDR                  0x0930UL
+#define                HW_DIN_BUFFER_REG_ADDR                  0x0C00UL
+#define                HW_DIN_MEM_DMA_BUSY_REG_ADDR            0x0c20UL
+#define                HW_SRC_LLI_MEM_ADDR_REG_ADDR            0x0c24UL
+#define                HW_SRC_LLI_WORD0_REG_ADDR               0x0C28UL
+#define                HW_SRC_LLI_WORD1_REG_ADDR               0x0C2CUL
+#define                HW_SRAM_SRC_ADDR_REG_ADDR               0x0c30UL
+#define                HW_DIN_SRAM_BYTES_LEN_REG_ADDR          0x0c34UL
+#define                HW_DIN_SRAM_DMA_BUSY_REG_ADDR           0x0C38UL
+#define                HW_WRITE_ALIGN_REG_ADDR                 0x0C3CUL
+#define                HW_OLD_DATA_REG_ADDR                    0x0C48UL
+#define                HW_WRITE_ALIGN_LAST_REG_ADDR            0x0C4CUL
+#define                HW_DOUT_BUFFER_REG_ADDR                 0x0C00UL
+#define                HW_DST_LLI_WORD0_REG_ADDR               0x0D28UL
+#define                HW_DST_LLI_WORD1_REG_ADDR               0x0D2CUL
+#define                HW_DST_LLI_MEM_ADDR_REG_ADDR            0x0D24UL
+#define                HW_DOUT_MEM_DMA_BUSY_REG_ADDR           0x0D20UL
+#define                HW_SRAM_DEST_ADDR_REG_ADDR              0x0D30UL
+#define                HW_DOUT_SRAM_BYTES_LEN_REG_ADDR         0x0D34UL
+#define                HW_DOUT_SRAM_DMA_BUSY_REG_ADDR          0x0D38UL
+#define                HW_READ_ALIGN_REG_ADDR                  0x0D3CUL
+#define                HW_READ_LAST_DATA_REG_ADDR              0x0D44UL
+#define                HW_RC4_THRU_CPU_REG_ADDR                0x0D4CUL
+#define                HW_AHB_SINGLE_REG_ADDR                  0x0E00UL
+#define                HW_SRAM_DATA_REG_ADDR                   0x0F00UL
+#define                HW_SRAM_ADDR_REG_ADDR                   0x0F04UL
+#define                HW_SRAM_DATA_READY_REG_ADDR             0x0F08UL
+#define                HW_HOST_IRR_REG_ADDR                    0x0A00UL
+#define                HW_HOST_IMR_REG_ADDR                    0x0A04UL
+#define                HW_HOST_ICR_REG_ADDR                    0x0A08UL
+#define                HW_HOST_SEP_SRAM_THRESHOLD_REG_ADDR     0x0A10UL
+#define                HW_HOST_SEP_BUSY_REG_ADDR               0x0A14UL
+#define                HW_HOST_SEP_LCS_REG_ADDR                0x0A18UL
+#define                HW_HOST_CC_SW_RST_REG_ADDR              0x0A40UL
+#define                HW_HOST_SEP_SW_RST_REG_ADDR             0x0A44UL
+#define                HW_HOST_FLOW_DMA_SW_INT0_REG_ADDR       0x0A80UL
+#define                HW_HOST_FLOW_DMA_SW_INT1_REG_ADDR       0x0A84UL
+#define                HW_HOST_FLOW_DMA_SW_INT2_REG_ADDR       0x0A88UL
+#define                HW_HOST_FLOW_DMA_SW_INT3_REG_ADDR       0x0A8cUL
+#define                HW_HOST_FLOW_DMA_SW_INT4_REG_ADDR       0x0A90UL
+#define                HW_HOST_FLOW_DMA_SW_INT5_REG_ADDR       0x0A94UL
+#define                HW_HOST_FLOW_DMA_SW_INT6_REG_ADDR       0x0A98UL
+#define                HW_HOST_FLOW_DMA_SW_INT7_REG_ADDR       0x0A9cUL
+#define                HW_HOST_SEP_HOST_GPR0_REG_ADDR          0x0B00UL
+#define                HW_HOST_SEP_HOST_GPR1_REG_ADDR          0x0B04UL
+#define                HW_HOST_SEP_HOST_GPR2_REG_ADDR          0x0B08UL
+#define                HW_HOST_SEP_HOST_GPR3_REG_ADDR          0x0B0CUL
+#define                HW_HOST_HOST_SEP_GPR0_REG_ADDR          0x0B80UL
+#define                HW_HOST_HOST_SEP_GPR1_REG_ADDR          0x0B84UL
+#define                HW_HOST_HOST_SEP_GPR2_REG_ADDR          0x0B88UL
+#define                HW_HOST_HOST_SEP_GPR3_REG_ADDR          0x0B8CUL
+#define                HW_HOST_HOST_ENDIAN_REG_ADDR            0x0B90UL
+#define                HW_HOST_HOST_COMM_CLK_EN_REG_ADDR       0x0B94UL
+#define                HW_CLR_SRAM_BUSY_REG_REG_ADDR           0x0F0CUL
+#define                HW_CC_SRAM_BASE_ADDRESS                 0x5800UL
+
+#endif         /* ifndef HW_DEFS */