| /******************************************************************************* |
| Copyright (C) Marvell International Ltd. and its affiliates |
| |
| This software file (the "File") is owned and distributed by Marvell |
| International Ltd. and/or its affiliates ("Marvell") under the following |
| alternative licensing terms. Once you have made an election to distribute the |
| File under one of the following license alternatives, please (i) delete this |
| introductory statement regarding license alternatives, (ii) delete the two |
| license alternatives that you have not elected to use and (iii) preserve the |
| Marvell copyright notice above. |
| |
| ******************************************************************************** |
| Marvell Commercial License Option |
| |
| If you received this File from Marvell and you have entered into a commercial |
| license agreement (a "Commercial License") with Marvell, the File is licensed |
| to you under the terms of the applicable Commercial License. |
| |
| ******************************************************************************** |
| Marvell GPL License Option |
| |
| If you received this File from Marvell, you may opt to use, redistribute and/or |
| modify this File in accordance with the terms and conditions of the General |
| Public License Version 2, June 1991 (the "GPL License"), a copy of which is |
| available along with the File in the license.txt file or by writing to the Free |
| Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or |
| on the worldwide web at http://www.gnu.org/licenses/gpl.txt. |
| |
| THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED |
| WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY |
| DISCLAIMED. The GPL License provides additional details about this warranty |
| disclaimer. |
| ******************************************************************************** |
| Marvell BSD License Option |
| |
| If you received this File from Marvell, you may opt to use, redistribute and/or |
| modify this File under the following licensing terms. |
| Redistribution and use in source and binary forms, with or without modification, |
| are permitted provided that the following conditions are met: |
| |
| * Redistributions of source code must retain the above copyright notice, |
| this list of conditions and the following disclaimer. |
| |
| * Redistributions in binary form must reproduce the above copyright |
| notice, this list of conditions and the following disclaimer in the |
| documentation and/or other materials provided with the distribution. |
| |
| * Neither the name of Marvell nor the names of its contributors may be |
| used to endorse or promote products derived from this software without |
| specific prior written permission. |
| |
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
| ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR |
| ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
| (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
| LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON |
| ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
| SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| |
| *******************************************************************************/ |
| |
| #ifndef __INCmvCtrlEnvSpech |
| #define __INCmvCtrlEnvSpech |
| |
| #include "mvDeviceId.h" |
| #include "mvSysHwConfig.h" |
| |
| #include "ctrlEnv/sys/mvCpuIfRegs.h" |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif /* __cplusplus */ |
| |
| #define MV_ARM_SOC |
| #define SOC_NAME_PREFIX "MV88F" |
| |
| /* |
| * Armada-375 Units Address decoding |
| */ |
| #define MV_DRAM_REGS_OFFSET (0x0) |
| #define MV_AURORA_L2_REGS_OFFSET (0x8000) |
| #define MV_RTC_REGS_OFFSET (0x10300) |
| #define MV_DEV_BUS_REGS_OFFSET (0x10400) |
| #define MV_SPI_REGS_OFFSET(unit) (0x10600 + (unit * 0x80)) |
| #define MV_TWSI_SLAVE_REGS_OFFSET(chanNum) (0x11000 + (chanNum * 0x100)) |
| #define MV_UART_REGS_OFFSET(chanNum) (0x12000 + (chanNum * 0x100)) |
| #define MV_MPP_REGS_OFFSET (0x18000) |
| #define MV_GPP_REGS_OFFSET(unit) (0x18100 + ((unit) * 0x40)) |
| #define MV_MISC_REGS_OFFSET (0x18200) |
| #define MV_COMMON_PHY_REGS_OFFSET (0x18300) |
| #define MV_IP_CONFIG_REGS_OFFSET (0x18400) |
| #define MV_CLK_CMPLX_REGS_OFFSET (0x18700) |
| #define MV_ETH_COMPLEX_OFFSET (0x18900) |
| #define MV_MBUS_REGS_OFFSET (0x20000) |
| #define CPU_GLOBAL_BASE (MV_MBUS_REGS_OFFSET) |
| #define MV_COHERENCY_FABRIC_OFFSET (0x20200) /* ??? IO Error Control Register = Offset: 0x00020200 */ |
| #define MV_CIB_CTRL_STATUS_OFFSET (0x20280) |
| #define MV_CNTMR_REGS_OFFSET (0x20300) |
| |
| /* |
| * CPU virtual/banked registers: 0x21000 to 0x21100 (64 registers). |
| * Physical registers: |
| * CPU0: 0x21800 - 0x21900 |
| * CPU1: 0x21900 - 0x21a00 |
| */ |
| #define MV_CPUIF_LOCAL_REGS_OFFSET (0x21000) |
| #define MV_CPUIF_REGS_OFFSET(cpu) (0x21800 + (cpu) * 0x100) |
| #define MV_CPU_HW_SEM_OFFSET (0x20500) |
| |
| /* PPv2 register base addresses */ |
| #define MV_PP2_REG_BASE (0xF0000) |
| #define MV_ETH_BASE_ADDR (0xC0000) |
| #define LMS_REG_BASE (MV_ETH_BASE_ADDR) |
| #define MIB_COUNTERS_REG_BASE (MV_ETH_BASE_ADDR + 0x1000) |
| #define GOP_MNG_REG_BASE (MV_ETH_BASE_ADDR + 0x3000) |
| #define GOP_REG_BASE(port) (MV_ETH_BASE_ADDR + 0x4000 + ((port) / 2) * 0x3000 + ((port) % 2) * 0x1000) |
| #define MV_PON_REGS_OFFSET (MV_ETH_BASE_ADDR + 0x8000) |
| |
| #define MV_PP2_PON_EXIST |
| #define MV_ETH_MAX_TCONT 16 |
| #define MV_ETH_RXQ_TOTAL_NUM 32 |
| |
| #define MV_PEX_IF_REGS_OFFSET(pexIf) (pexIf < 8 ? (0x40000 + ((pexIf) / 4) * 0x40000 + ((pexIf) % 4) * 0x4000) \ |
| : (0x42000 + ((pexIf) % 8) * 0x40000)) |
| #define MV_USB_REGS_OFFSET(dev) (0x50000 + (0x4000 * dev)) |
| #define MV_USB3_REGS_OFFSET(dev) ((mvCtrlRevGet() <= MV_88F6720_Z3_ID) ? 0x5ff80 : 0x5b880) |
| #define MV_USB3_PHYS_OFFSET(dev) (0x58000) |
| #define MV_USB2_USB3_REGS_OFFSET(unitType, dev) (unitType == USB_UNIT_ID ? \ |
| MV_USB_REGS_OFFSET(dev) : MV_USB3_PHYS_OFFSET(dev)) |
| #define MV_USB3_DEVICE_REGS_OFFSET MV_USB_REGS_OFFSET(0) |
| #define MV_USB3_DEVICE_USB2_REGS_OFFSET (0x54100) |
| #define MV_XOR_REGS_OFFSET(unit) (0x60800) |
| #define MV_CESA_TDMA_REGS_OFFSET(chanNum) (0x90000 + (chanNum * 0x2000)) |
| #define MV_CESA_REGS_OFFSET(chanNum) (0x9D000 + (chanNum * 0x2000)) |
| #define MV_SATA_REGS_OFFSET (0xA0000) |
| #define MV_COMM_UNIT_REGS_OFFSET (0xB0000) |
| #define MV_NFC_REGS_OFFSET (0xD0000) |
| #define MV_SDMMC_REGS_OFFSET (0xD4000) |
| |
| #define MV_ETH_SMI_PORT 0 |
| |
| #define MV_USB3_WIN_BASE(unitId) MV_USB3_REGS_OFFSET(unitId) |
| #define MV_USB2_CAPLENGTH_OFFSET(index) (INTER_REGS_BASE + MV_USB_REGS_OFFSET(index) + 0x100) |
| |
| /* |
| * Miscellanuous Controller Configurations |
| */ |
| |
| #define INTER_REGS_SIZE _1M |
| |
| /* This define describes the TWSI interrupt bit and location */ |
| #define TWSI_CPU_MAIN_INT_CAUSE_REG(cpu) CPU_MAIN_INT_CAUSE_REG(1, (cpu)) |
| #define TWSI0_CPU_MAIN_INT_BIT(ch) ((ch) + 3) |
| #define TWSI_SPEED 100000 |
| |
| #define MV_GPP_MAX_PINS 68 |
| #define MV_GPP_MAX_GROUP 3 /* group == configuration register? */ |
| #define MV_CNTMR_MAX_COUNTER 17 /* 4 global + 1 global WD + 2 per CPU + 4 CPU WD*/ |
| |
| #define MV_IO_EXP_MAX_REGS 3 |
| |
| #define MV_UART_MAX_CHAN 2 |
| |
| #define MV_XOR_MAX_UNIT 2 /* XOR unit == XOR engine */ |
| #define MV_XOR_MAX_CHAN 4 /* total channels for all units together*/ |
| #define MV_XOR_MAX_CHAN_PER_UNIT 2 /* channels for units */ |
| |
| #define MV_SATA_MAX_UNIT 1 |
| #define MV_SATA_MAX_CHAN 2 /* port number per unit */ |
| |
| #define MV_MPP_MAX_GROUP 9 |
| |
| #define MV_DRAM_MAX_CS 4 |
| #define MV_SPI_MAX_CS 8 |
| /* This define describes the maximum number of supported PCI\PCIX Interfaces */ |
| #ifdef MV_INCLUDE_PCI |
| #define MV_PCI_MAX_IF 1 |
| #define MV_PCI_START_IF 0 |
| #define PCI_HOST_BUS_NUM(pciIf) (pciIf) |
| #define PCI_HOST_DEV_NUM(pciIf) 0 |
| #else |
| #define MV_PCI_MAX_IF 0 |
| #define MV_PCI_START_IF 0 |
| #endif |
| |
| /* This define describes the maximum number of supported PEX Interfaces */ |
| #define MV_PEX_MAX_IF 2 |
| #define MV_PEX_MAX_UNIT 2 |
| #ifdef MV_INCLUDE_PEX |
| #define MV_INCLUDE_PEX0 |
| #define MV_DISABLE_PEX_DEVICE_BAR |
| |
| #define MV_PEX_START_IF MV_PCI_MAX_IF |
| #define PEX_HOST_BUS_NUM(pciIf) (pciIf) |
| #define PEX_HOST_DEV_NUM(pciIf) 0 |
| #else |
| #undef MV_INCLUDE_PEX0 |
| #endif |
| |
| #define PCI_IO(pciIf) (PEX0_IO + 2 * (pciIf)) |
| #define PCI_MEM(pciIf, memNum) (PEX0_MEM0 + 2 * (pciIf)) |
| /* This define describes the maximum number of supported PCI Interfaces */ |
| #define MV_IDMA_MAX_CHAN 4 |
| #define MV_DEVICE_MAX_CS 4 |
| |
| #ifndef MV_USB_MAX_PORTS |
| #define MV_USB_MAX_PORTS 2 |
| #endif |
| #define MV_USB3_MAX_HOST_PORTS 1 |
| |
| /* CESA version #3: One channel, 2KB SRAM, TDMA, CHAIN Mode support */ |
| #define MV_CESA_VERSION 3 /*TODO verify */ |
| #define MV_CESA_SRAM_SIZE (2 * 1024) |
| |
| /* This define describes the maximum number of supported Ethernet ports */ |
| #define MV_PP2_PON_PORT_ID 7 |
| #define MV_ETH_MAX_PORTS 4 |
| #define MV_PP2_MAX_RXQ 16/* Maximum number of RXQs can be mapped to each port */ |
| #define MV_PP2_MAX_TXQ 8 |
| #define MV_PP2_RXQ_TOTAL_NUM 32 /* Total number of RXQs for usage by all ports */ |
| #define MV_PP2_MAX_TCONT 16 /* Maximum number of TCONTs supported by PON port */ |
| #define MV_PP2_TX_CSUM_MAX_SIZE 1790 |
| |
| /* This define describes the the support of USB */ |
| #define MV_USB_VERSION 1 |
| |
| #define MV_SPI_VERSION 2 |
| |
| #define MV_INCLUDE_SDRAM_CS0 |
| #define MV_INCLUDE_SDRAM_CS1 |
| #undef MV_INCLUDE_SDRAM_CS2 |
| #undef MV_INCLUDE_SDRAM_CS3 |
| |
| #define MV_INCLUDE_DEVICE_CS0 |
| #define MV_INCLUDE_DEVICE_CS1 |
| #define MV_INCLUDE_DEVICE_CS2 |
| #define MV_INCLUDE_DEVICE_CS3 |
| |
| #ifndef MV_ASMLANGUAGE |
| |
| #define TBL_UNUSED 0 /* Used to mark unused entry */ |
| #define FREQ_MODES_NUM_6720 3 |
| |
| #define MPP_GROUP_0_TYPE { \ |
| 0x55555555, /* NAND_V2_BOOT_DEVICE */ \ |
| 0x00020020, /* SPI_BOOT_DEVICE */ \ |
| } |
| |
| typedef enum { |
| NAND_BOOT_V2, |
| SPI0_BOOT, |
| SPI0_BOOT_SPDIF_AUDIO, |
| } MV_GROUP_0_TYPE; |
| |
| #define MPP_GROUP_1_TYPE { \ |
| 0x22555555, /* NAND_V2_BOOT_DEVICE */ \ |
| 0x22000022, /* SPI_BOOT_DEVICE */ \ |
| } |
| |
| #define MV_GROUP_1_TYPE MV_GROUP_0_TYPE |
| |
| #define MPP_GROUP_2_TYPE { \ |
| 0x22222222, /* UART, TDM */ \ |
| 0x22222222, /* UART, TDM */ \ |
| } |
| |
| typedef enum { |
| SLIC_SSI_DEV, |
| SLIC_ISI_DEV, |
| SLIC_ZSI_DEV, |
| SLIC_EXTERNAL_DEV |
| } MV_GROUP_2_TYPE; |
| |
| #define MPP_GROUP_3_TYPE { \ |
| 0x33333333, /* MAC1 -> GE-PHY#3 */ \ |
| 0x22222222, /* MAC1 -> SGMII-SFP */ \ |
| } |
| |
| typedef enum { |
| GE1_PHY3_UNIT, |
| GE1_SGMII_UNIT, |
| } MV_GROUP_3_TYPE; |
| |
| #define MPP_GROUP_4_TYPE { \ |
| 0x04403330, /* MAC1 -> GE-PHY#3 */ \ |
| 0x44422222, /* MAC1 -> SGMII-SFP */ \ |
| } |
| |
| #define MV_GROUP_4_TYPE MV_GROUP_3_TYPE |
| |
| #define MPP_GROUP_5_TYPE { \ |
| 0x22002044, /* UART1, GE0 */ \ |
| 0x22002044, /* UART1, GE0 */ \ |
| } |
| typedef enum { |
| GE0_UNIT_PON_TX_FAULT, |
| GE0_UNIT_PON_CLK_OUT, |
| SWITCH_P4_PON_TX_FAULT, |
| SWITCH_P4_PON_CLK_OUT, |
| } MV_GROUP_5_TYPE; |
| |
| #define MPP_GROUP_6_TYPE { \ |
| 0x22222222, /* GE0 */ \ |
| 0x22222222, /* GE0 */ \ |
| } |
| |
| typedef enum { |
| GE0_UNIT, |
| SWITCH_P4, |
| } MV_GROUP_6_TYPE; |
| |
| #define MPP_GROUP_7_TYPE { \ |
| 0x04444422, /* GE0 , LED */ \ |
| 0x01144422, /* GE0 , LED, I2C-1 */ \ |
| } |
| |
| typedef enum { |
| GE0_LED_UNIT, |
| GE0_LED_I2C1_UNIT, |
| } MV_GROUP_7_TYPE; |
| |
| #define MPP_GROUP_8_TYPE { \ |
| 0x000,\ |
| } |
| |
| typedef enum { |
| LED_MATRIX_PTP, |
| } MV_GROUP_8_TYPE; |
| |
| #define MPP_GROUP_TYPES { \ |
| MPP_GROUP_0_TYPE, \ |
| MPP_GROUP_1_TYPE, \ |
| MPP_GROUP_2_TYPE, \ |
| MPP_GROUP_3_TYPE, \ |
| MPP_GROUP_4_TYPE, \ |
| MPP_GROUP_5_TYPE, \ |
| MPP_GROUP_6_TYPE, \ |
| MPP_GROUP_7_TYPE, \ |
| MPP_GROUP_8_TYPE, \ |
| } |
| |
| /* This enumerator defines the Marvell Units ID */ |
| typedef enum { |
| SLIC_EXTERNAL_ID, |
| SLIC_ZARLINK_ID, |
| SLIC_SILABS_ID, |
| SLIC_LANTIQ_ID |
| } MV_SLIC_UNIT_TYPE; |
| |
| typedef enum { |
| TDM_UNIT_2CH, |
| TDM_UNIT_8CH |
| } MV_TDM_UNIT_TYPE; |
| |
| typedef enum _mvUnitId { |
| DRAM_UNIT_ID, |
| PEX_UNIT_ID, |
| ETH_GIG_UNIT_ID, |
| USB_UNIT_ID, |
| USB3_UNIT_ID, |
| IDMA_UNIT_ID, |
| XOR_UNIT_ID, |
| SATA_UNIT_ID, |
| TDM_UNIT_ID, |
| UART_UNIT_ID, |
| CESA_UNIT_ID, |
| SPI_UNIT_ID, |
| AUDIO_UNIT_ID, |
| SDIO_UNIT_ID, |
| TS_UNIT_ID, |
| XPON_UNIT_ID, |
| BM_UNIT_ID, |
| PNC_UNIT_ID, |
| I2C_UNIT_ID, |
| SGMII_UNIT_ID, |
| MAX_UNITS_ID |
| } MV_UNIT_ID; |
| |
| /* This enumerator describes the Marvell controller possible devices that */ |
| /* can be connected to its device interface. */ |
| typedef enum _mvDevice { |
| #if defined(MV_INCLUDE_DEVICE_CS0) |
| DEV_CS0 = 0, /* Device connected to dev CS[0] */ |
| #endif |
| #if defined(MV_INCLUDE_DEVICE_CS1) |
| DEV_CS1 = 1, /* Device connected to dev CS[1] */ |
| #endif |
| #if defined(MV_INCLUDE_DEVICE_CS2) |
| DEV_CS2 = 2, /* Device connected to dev CS[2] */ |
| #endif |
| #if defined(MV_INCLUDE_DEVICE_CS3) |
| DEV_CS3 = 3, /* Device connected to dev CS[2] */ |
| #endif |
| BOOT_CS, /* Device connected to BOOT dev */ |
| MV_DEV_MAX_CS = MV_DEVICE_MAX_CS |
| } MV_DEVICE; |
| |
| /* This enumerator described the possible Controller paripheral targets. */ |
| /* Controller peripherals are designated memory/IO address spaces that the */ |
| /* controller can access. They are also refered as "targets" */ |
| typedef enum _mvTarget { |
| TBL_TERM = -1, /* none valid target, used as targets list terminator*/ |
| SDRAM_CS0, /* 0 SDRAM chip select 0 */ |
| SDRAM_CS1, /* 1 SDRAM chip select 1 */ |
| SDRAM_CS2, /* 2 SDRAM chip select 2 */ |
| SDRAM_CS3, /* 3 SDRAM chip select 3 */ |
| DEVICE_CS0, /* 4 Device chip select 0 */ |
| DEVICE_CS1, /* 5 Device chip select 1 */ |
| DEVICE_CS2, /* 6 Device chip select 2 */ |
| DEVICE_CS3, /* 7 Device chip select 3 */ |
| PEX0_MEM, /* 8 PCI Express 0 Memory */ |
| PEX0_IO, /* 9 PCI Express 0 IO */ |
| PEX1_MEM, /* 10 PCI Express 1 Memory */ |
| PEX1_IO, /* 11 PCI Express 1 IO */ |
| INTER_REGS, /* 12 Internal registers */ |
| DMA_UART, /* 13 DMA based UART request */ |
| SPI_CS0, /* 14 SPI_CS0 */ |
| SPI_CS1, /* 15 SPI_CS1 */ |
| SPI_CS2, /* 16 SPI_CS2 */ |
| SPI_CS3, /* 17 SPI_CS3 */ |
| SPI_CS4, /* 18 SPI_CS4 */ |
| SPI_CS5, /* 19 SPI_CS5 */ |
| SPI_CS6, /* 20 SPI_CS6 */ |
| SPI_CS7, /* 21 SPI_CS7 */ |
| BOOT_ROM_CS, /* 22 BOOT_ROM_CS */ |
| DEV_BOOCS, /* 23 DEV_BOOCS */ |
| USB3, /* 24 USB3 */ |
| CRYPT0_ENG, /* 25 Crypto0 Engine */ |
| CRYPT1_ENG, /* 26 Crypto0 Engine */ |
| PP2_CPU0, /* 27 PP2 - CPU 0 */ |
| PP2_CPU1, /* 28 PP2 - CPU 1 */ |
| MAX_TARGETS |
| } MV_TARGET; |
| |
| #ifdef AURORA_IO_CACHE_COHERENCY |
| #define DRAM_CS0_ATTR 0x1E |
| #define DRAM_CS1_ATTR 0x1D |
| #define DRAM_CS2_ATTR 0x1B |
| #define DRAM_CS3_ATTR 0x17 |
| #else |
| #define DRAM_CS0_ATTR 0x0E |
| #define DRAM_CS1_ATTR 0x0D |
| #define DRAM_CS2_ATTR 0x0B |
| #define DRAM_CS3_ATTR 0x07 |
| #endif |
| |
| #define MAIN_BOOT_ATTR 0x1D /* BootROM */ |
| #define SEC_BOOT_ATTR 0x2F /* Boot Device CS */ |
| |
| #define TARGETS_DEF_ARRAY { \ |
| { DRAM_CS0_ATTR, DRAM_TARGET_ID }, /* SDRAM_CS0 */ \ |
| { DRAM_CS1_ATTR, DRAM_TARGET_ID }, /* SDRAM_CS1 */ \ |
| { DRAM_CS2_ATTR, DRAM_TARGET_ID }, /* SDRAM_CS0 */ \ |
| { DRAM_CS3_ATTR, DRAM_TARGET_ID }, /* SDRAM_CS1 */ \ |
| { 0x3E, DEV_TARGET_ID }, /* DEVICE_CS0 */ \ |
| { 0x3D, DEV_TARGET_ID }, /* DEVICE_CS1 */ \ |
| { 0x3B, DEV_TARGET_ID }, /* DEVICE_CS2 */ \ |
| { 0x37, DEV_TARGET_ID }, /* DEVICE_CS3 */ \ |
| { 0xE8, PEX_TARGET_ID }, /* PEX0_LANE0_MEM */ \ |
| { 0xE0, PEX_TARGET_ID }, /* PEX0_LANE0_IO */ \ |
| { 0xD8, PEX_TARGET_ID }, /* PEX1_LANE0_MEM */ \ |
| { 0xD0, PEX_TARGET_ID }, /* PEX1_LANE0_IO */ \ |
| { 0xFF, 0xFF }, /* INTER_REGS */ \ |
| { 0x01, DEV_TARGET_ID }, /* DMA_UART */ \ |
| { 0x1E, DEV_TARGET_ID }, /* SPI_CS0 */ \ |
| { 0x5E, DEV_TARGET_ID }, /* SPI_CS1 */ \ |
| { 0x9E, DEV_TARGET_ID }, /* SPI_CS2 */ \ |
| { 0xDE, DEV_TARGET_ID }, /* SPI_CS3 */ \ |
| { 0x1F, DEV_TARGET_ID }, /* SPI_CS4 */ \ |
| { 0x5F, DEV_TARGET_ID }, /* SPI_CS5 */ \ |
| { 0x9F, DEV_TARGET_ID }, /* SPI_CS6 */ \ |
| { 0xDF, DEV_TARGET_ID }, /* SPI_CS7 */ \ |
| { MAIN_BOOT_ATTR, DEV_TARGET_ID }, /* Main Boot device */ \ |
| { SEC_BOOT_ATTR, DEV_TARGET_ID }, /* Secondary Boot device */ \ |
| { 0x00, USB3_TARGET_ID }, /* USB3 */ \ |
| { 0x09, CRYPT_TARGET_ID }, /* CRYPT_ENG0 */ \ |
| { 0x05, CRYPT_TARGET_ID }, /* CRYPT_ENG1 */ \ |
| { 0x00, PP2_TARGET_ID }, /* PP2 - CPU 0 */ \ |
| { 0x01, PP2_TARGET_ID }, /* PP2 - CPU 1 */ \ |
| } |
| |
| #define CESA_TARGET_NAME_DEF ("CRYPT_ENG0", "CRYPT_ENG1") |
| #define TARGETS_NAME_ARRAY { \ |
| "SDRAM_CS0", /* SDRAM_CS0 */ \ |
| "SDRAM_CS1", /* SDRAM_CS1 */ \ |
| "SDRAM_CS2", /* SDRAM_CS1 */ \ |
| "SDRAM_CS3", /* SDRAM_CS1 */ \ |
| "DEVICE_CS0", /* DEVICE_CS0 */ \ |
| "DEVICE_CS1", /* DEVICE_CS1 */ \ |
| "DEVICE_CS2", /* DEVICE_CS2 */ \ |
| "DEVICE_CS3", /* DEVICE_CS3 */ \ |
| "PEX0_MEM", /* PEX0_MEM */ \ |
| "PEX0_IO", /* PEX0_IO */ \ |
| "PEX1_MEM", /* PEX1_MEM */ \ |
| "PEX1_IO", /* PEX1_IO */ \ |
| "INTER_REGS", /* INTER_REGS */ \ |
| "DMA_UART", /* DMA_UART */ \ |
| "SPI_CS0", /* SPI_CS0 */ \ |
| "SPI_CS1", /* SPI_CS1 */ \ |
| "SPI_CS2", /* SPI_CS2 */ \ |
| "SPI_CS3", /* SPI_CS3 */ \ |
| "SPI_CS4", /* SPI_CS4 */ \ |
| "SPI_CS5", /* SPI_CS5 */ \ |
| "SPI_CS6", /* SPI_CS6 */ \ |
| "SPI_CS7", /* SPI_CS7 */ \ |
| "BOOT_ROM_CS", /* BOOT_ROM_CS */ \ |
| "DEV_BOOTCS", /* DEV_BOOCS */ \ |
| "USB3", /* USB3 */ \ |
| "CRYPT0_ENG", /* CRYPT0_ENG */ \ |
| "CRYPT1_ENG", /* CRYPT1_ENG */ \ |
| "PP2 - CPU 0", /* PP2 - CPU 0 */ \ |
| "PP2 - CPU 1" /* PP2 - CPU 1 */ \ |
| } |
| |
| #endif /* MV_ASMLANGUAGE */ |
| |
| #ifdef __cplusplus |
| } |
| #endif /* __cplusplus */ |
| |
| #endif /* __INCmvCtrlEnvSpech */ |