blob: 420dedaefcd2c0d799b559554e06192f7805a309 [file] [log] [blame]
/*******************************************************************************
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 */