19a5557fdSlucy wang - Sun Microsystems - Beijing China /* 29a5557fdSlucy wang - Sun Microsystems - Beijing China * CDDL HEADER START 39a5557fdSlucy wang - Sun Microsystems - Beijing China * 49a5557fdSlucy wang - Sun Microsystems - Beijing China * The contents of this file are subject to the terms of the 59a5557fdSlucy wang - Sun Microsystems - Beijing China * Common Development and Distribution License (the "License"). 69a5557fdSlucy wang - Sun Microsystems - Beijing China * You may not use this file except in compliance with the License. 79a5557fdSlucy wang - Sun Microsystems - Beijing China * 89a5557fdSlucy wang - Sun Microsystems - Beijing China * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 99a5557fdSlucy wang - Sun Microsystems - Beijing China * or http://www.opensolaris.org/os/licensing. 109a5557fdSlucy wang - Sun Microsystems - Beijing China * See the License for the specific language governing permissions 119a5557fdSlucy wang - Sun Microsystems - Beijing China * and limitations under the License. 129a5557fdSlucy wang - Sun Microsystems - Beijing China * 139a5557fdSlucy wang - Sun Microsystems - Beijing China * When distributing Covered Code, include this CDDL HEADER in each 149a5557fdSlucy wang - Sun Microsystems - Beijing China * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 159a5557fdSlucy wang - Sun Microsystems - Beijing China * If applicable, add the following below this CDDL HEADER, with the 169a5557fdSlucy wang - Sun Microsystems - Beijing China * fields enclosed by brackets "[]" replaced with your own identifying 179a5557fdSlucy wang - Sun Microsystems - Beijing China * information: Portions Copyright [yyyy] [name of copyright owner] 189a5557fdSlucy wang - Sun Microsystems - Beijing China * 199a5557fdSlucy wang - Sun Microsystems - Beijing China * CDDL HEADER END 209a5557fdSlucy wang - Sun Microsystems - Beijing China */ 21*93833965Sjing xiong ERI-SUN 229a5557fdSlucy wang - Sun Microsystems - Beijing China /* 239a5557fdSlucy wang - Sun Microsystems - Beijing China * Copyright 2008 NetXen, Inc. All rights reserved. 249a5557fdSlucy wang - Sun Microsystems - Beijing China * Use is subject to license terms. 259a5557fdSlucy wang - Sun Microsystems - Beijing China */ 26*93833965Sjing xiong ERI-SUN 27*93833965Sjing xiong ERI-SUN #ifndef _UNM_BRDINFO_H_ 28*93833965Sjing xiong ERI-SUN #define _UNM_BRDINFO_H_ 29*93833965Sjing xiong ERI-SUN 30*93833965Sjing xiong ERI-SUN #ifdef __cplusplus 31*93833965Sjing xiong ERI-SUN extern "C" { 32*93833965Sjing xiong ERI-SUN #endif 339a5557fdSlucy wang - Sun Microsystems - Beijing China 349a5557fdSlucy wang - Sun Microsystems - Beijing China /* The version of the main data structure */ 359a5557fdSlucy wang - Sun Microsystems - Beijing China #define UNM_BDINFO_VERSION 1 369a5557fdSlucy wang - Sun Microsystems - Beijing China 379a5557fdSlucy wang - Sun Microsystems - Beijing China /* Magic number to let user know flash is programmed */ 389a5557fdSlucy wang - Sun Microsystems - Beijing China #define UNM_BDINFO_MAGIC 0x12345678 399a5557fdSlucy wang - Sun Microsystems - Beijing China 409a5557fdSlucy wang - Sun Microsystems - Beijing China #define P2_CHIP 2 419a5557fdSlucy wang - Sun Microsystems - Beijing China #define P3_CHIP 3 429a5557fdSlucy wang - Sun Microsystems - Beijing China #define NX_P2_C0 0x24 439a5557fdSlucy wang - Sun Microsystems - Beijing China #define NX_P2_C1 0x25 449a5557fdSlucy wang - Sun Microsystems - Beijing China #define NX_P3_A0 0x30 459a5557fdSlucy wang - Sun Microsystems - Beijing China #define NX_P3_A2 0x32 469a5557fdSlucy wang - Sun Microsystems - Beijing China #define NX_P3_B0 0x40 479a5557fdSlucy wang - Sun Microsystems - Beijing China #define NX_P3_B1 0x41 489a5557fdSlucy wang - Sun Microsystems - Beijing China #define NX_P3_B2 0x42 499a5557fdSlucy wang - Sun Microsystems - Beijing China 509a5557fdSlucy wang - Sun Microsystems - Beijing China #define NX_IS_REVISION_P2(REVISION) (REVISION <= NX_P2_C1) 519a5557fdSlucy wang - Sun Microsystems - Beijing China #define NX_IS_REVISION_P3(REVISION) (REVISION >= NX_P3_A0) 529a5557fdSlucy wang - Sun Microsystems - Beijing China 539a5557fdSlucy wang - Sun Microsystems - Beijing China typedef enum { 549a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P1_BD = 0x0000, 559a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P1_SB = 0x0001, 569a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P1_SMAX = 0x0002, 579a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P1_SOCK = 0x0003, 589a5557fdSlucy wang - Sun Microsystems - Beijing China 599a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P2_SOCK_31 = 0x0008, 609a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P2_SOCK_35 = 0x0009, 619a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P2_SB35_4G = 0x000a, 629a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P2_SB31_10G = 0x000b, 639a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P2_SB31_2G = 0x000c, 649a5557fdSlucy wang - Sun Microsystems - Beijing China 659a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P2_SB31_10G_IMEZ = 0x000d, 669a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P2_SB31_10G_HMEZ = 0x000e, 679a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P2_SB31_10G_CX4 = 0x000f, 689a5557fdSlucy wang - Sun Microsystems - Beijing China 699a5557fdSlucy wang - Sun Microsystems - Beijing China /* Reference quad gig */ 709a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P3_REF_QG = 0x0021, 719a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P3_HMEZ = 0x0022, 729a5557fdSlucy wang - Sun Microsystems - Beijing China /* Dual CX4 - Low Profile - Red card */ 739a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P3_10G_CX4_LP = 0x0023, 749a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P3_4_GB = 0x0024, 759a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P3_IMEZ = 0x0025, 769a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P3_10G_SFP_PLUS = 0x0026, 779a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P3_10000_BASE_T = 0x0027, 789a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P3_XG_LOM = 0x0028, 799a5557fdSlucy wang - Sun Microsystems - Beijing China 809a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P3_4_GB_MM = 0x0029, 819a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P3_10G_CX4 = 0x0031, /* Reference CX4 */ 829a5557fdSlucy wang - Sun Microsystems - Beijing China UNM_BRDTYPE_P3_10G_XFP = 0x0032, /* Reference XFP */ 839a5557fdSlucy wang - Sun Microsystems - Beijing China 84*93833965Sjing xiong ERI-SUN UNM_BRDTYPE_P3_10G_TRP = 0x0080 859a5557fdSlucy wang - Sun Microsystems - Beijing China 869a5557fdSlucy wang - Sun Microsystems - Beijing China } unm_brdtype_t; 879a5557fdSlucy wang - Sun Microsystems - Beijing China 889a5557fdSlucy wang - Sun Microsystems - Beijing China typedef enum { 899a5557fdSlucy wang - Sun Microsystems - Beijing China NX_UNKNOWN_TYPE_ROMIMAGE = 0, 909a5557fdSlucy wang - Sun Microsystems - Beijing China NX_P2_MN_TYPE_ROMIMAGE = 1, 919a5557fdSlucy wang - Sun Microsystems - Beijing China NX_P3_CT_TYPE_ROMIMAGE, 929a5557fdSlucy wang - Sun Microsystems - Beijing China NX_P3_MN_TYPE_ROMIMAGE, 939a5557fdSlucy wang - Sun Microsystems - Beijing China NX_P3_MS_TYPE_ROMIMAGE, 94*93833965Sjing xiong ERI-SUN NX_UNKNOWN_TYPE_ROMIMAGE_LAST 959a5557fdSlucy wang - Sun Microsystems - Beijing China } nx_fw_type_t; 969a5557fdSlucy wang - Sun Microsystems - Beijing China 979a5557fdSlucy wang - Sun Microsystems - Beijing China /* board type specific information */ 989a5557fdSlucy wang - Sun Microsystems - Beijing China typedef struct { 999a5557fdSlucy wang - Sun Microsystems - Beijing China unm_brdtype_t brdtype; /* type of board */ 1009a5557fdSlucy wang - Sun Microsystems - Beijing China long ports; /* max no of physical ports */ 1019a5557fdSlucy wang - Sun Microsystems - Beijing China nx_fw_type_t fwtype; /* The FW Associated with board type */ 1029a5557fdSlucy wang - Sun Microsystems - Beijing China char *short_name; 1039a5557fdSlucy wang - Sun Microsystems - Beijing China } unm_brdinfo_t; 1049a5557fdSlucy wang - Sun Microsystems - Beijing China 1059a5557fdSlucy wang - Sun Microsystems - Beijing China #define NUM_SUPPORTED_BOARDS (sizeof (unm_boards)/sizeof (unm_brdinfo_t)) 1069a5557fdSlucy wang - Sun Microsystems - Beijing China 1079a5557fdSlucy wang - Sun Microsystems - Beijing China #define GET_BRD_NAME_BY_TYPE(type, name) \ 1089a5557fdSlucy wang - Sun Microsystems - Beijing China { \ 1099a5557fdSlucy wang - Sun Microsystems - Beijing China int i, found = 0; \ 1109a5557fdSlucy wang - Sun Microsystems - Beijing China for (i = 0; i < NUM_SUPPORTED_BOARDS; ++i) { \ 1119a5557fdSlucy wang - Sun Microsystems - Beijing China if (unm_boards[i].brdtype == type) { \ 1129a5557fdSlucy wang - Sun Microsystems - Beijing China name = unm_boards[i].short_name; \ 1139a5557fdSlucy wang - Sun Microsystems - Beijing China found = 1; \ 1149a5557fdSlucy wang - Sun Microsystems - Beijing China break; \ 1159a5557fdSlucy wang - Sun Microsystems - Beijing China } \ 1169a5557fdSlucy wang - Sun Microsystems - Beijing China } \ 1179a5557fdSlucy wang - Sun Microsystems - Beijing China if (!found) \ 1189a5557fdSlucy wang - Sun Microsystems - Beijing China name = "Unknown"; \ 1199a5557fdSlucy wang - Sun Microsystems - Beijing China } 1209a5557fdSlucy wang - Sun Microsystems - Beijing China 1219a5557fdSlucy wang - Sun Microsystems - Beijing China typedef struct { 1229a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t header_version; 1239a5557fdSlucy wang - Sun Microsystems - Beijing China 1249a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t board_mfg; 1259a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t board_type; 1269a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t board_num; 1279a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t chip_id; 1289a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t chip_minor; 1299a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t chip_major; 1309a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t chip_pkg; 1319a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t chip_lot; 1329a5557fdSlucy wang - Sun Microsystems - Beijing China 1339a5557fdSlucy wang - Sun Microsystems - Beijing China 1349a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t port_mask; /* available niu ports */ 1359a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t peg_mask; /* available pegs */ 1369a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t icache_ok; /* can we run with icache? */ 1379a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t dcache_ok; /* can we run with dcache? */ 1389a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t casper_ok; 1399a5557fdSlucy wang - Sun Microsystems - Beijing China 1409a5557fdSlucy wang - Sun Microsystems - Beijing China /* unm_eth_addr_t mac_address[MAX_PORTS]; */ 1419a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mac_addr_lo_0; 1429a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mac_addr_lo_1; 1439a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mac_addr_lo_2; 1449a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mac_addr_lo_3; 1459a5557fdSlucy wang - Sun Microsystems - Beijing China 1469a5557fdSlucy wang - Sun Microsystems - Beijing China /* MN-related config */ 1479a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_sync_mode; /* enable/ sync shift cclk/ sync shift mclk */ 1489a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_sync_shift_cclk; 1499a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_sync_shift_mclk; 1509a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_wb_en; 1519a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_crystal_freq; /* in MHz */ 1529a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_speed; /* in MHz */ 1539a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_org; 1549a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_depth; 1559a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_ranks_0; /* ranks per slot */ 1569a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_ranks_1; /* ranks per slot */ 1579a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_rd_latency_0; 1589a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_rd_latency_1; 1599a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_rd_latency_2; 1609a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_rd_latency_3; 1619a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_rd_latency_4; 1629a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_rd_latency_5; 1639a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_rd_latency_6; 1649a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_rd_latency_7; 1659a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_rd_latency_8; 1669a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_dll_val[18]; 1679a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_mode_reg; /* See MIU DDR Mode Register */ 1689a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_ext_mode_reg; /* See MIU DDR Extended Mode Register */ 1699a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_timing_0; /* See MIU Memory Control Timing Rgister */ 1709a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_timing_1; /* See MIU Extended Memory Ctrl Timing Register */ 1719a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_timing_2; /* See MIU Extended Memory Ctrl Timing2 Register */ 1729a5557fdSlucy wang - Sun Microsystems - Beijing China 1739a5557fdSlucy wang - Sun Microsystems - Beijing China /* SN-related config */ 1749a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t sn_sync_mode; /* enable/ sync shift cclk / sync shift mclk */ 1759a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t sn_pt_mode; /* pass through mode */ 1769a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t sn_ecc_en; 1779a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t sn_wb_en; 1789a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t sn_crystal_freq; 1799a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t sn_speed; 1809a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t sn_org; 1819a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t sn_depth; 1829a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t sn_dll_tap; 1839a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t sn_rd_latency; 1849a5557fdSlucy wang - Sun Microsystems - Beijing China 1859a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mac_addr_hi_0; 1869a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mac_addr_hi_1; 1879a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mac_addr_hi_2; 1889a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mac_addr_hi_3; 1899a5557fdSlucy wang - Sun Microsystems - Beijing China 1909a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t magic; /* indicates flash has been initialized */ 1919a5557fdSlucy wang - Sun Microsystems - Beijing China 1929a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_rdimm; 1939a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t mn_dll_override; 1949a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t coreclock_speed; 1959a5557fdSlucy wang - Sun Microsystems - Beijing China } unm_board_info_t; 1969a5557fdSlucy wang - Sun Microsystems - Beijing China 1979a5557fdSlucy wang - Sun Microsystems - Beijing China #define FLASH_NUM_PORTS 4 1989a5557fdSlucy wang - Sun Microsystems - Beijing China 1999a5557fdSlucy wang - Sun Microsystems - Beijing China typedef struct { 2009a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t flash_addr[32]; 2019a5557fdSlucy wang - Sun Microsystems - Beijing China } unm_flash_mac_addr_t; 2029a5557fdSlucy wang - Sun Microsystems - Beijing China 2039a5557fdSlucy wang - Sun Microsystems - Beijing China /* flash user area */ 2049a5557fdSlucy wang - Sun Microsystems - Beijing China typedef struct { 2059a5557fdSlucy wang - Sun Microsystems - Beijing China __uint8_t flash_md5[16]; 2069a5557fdSlucy wang - Sun Microsystems - Beijing China __uint8_t crbinit_md5[16]; 2079a5557fdSlucy wang - Sun Microsystems - Beijing China __uint8_t brdcfg_md5[16]; 2089a5557fdSlucy wang - Sun Microsystems - Beijing China /* bootloader */ 2099a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t bootld_version; 2109a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t bootld_size; 2119a5557fdSlucy wang - Sun Microsystems - Beijing China __uint8_t bootld_md5[16]; 2129a5557fdSlucy wang - Sun Microsystems - Beijing China /* image */ 2139a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t image_version; 2149a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t image_size; 2159a5557fdSlucy wang - Sun Microsystems - Beijing China __uint8_t image_md5[16]; 2169a5557fdSlucy wang - Sun Microsystems - Beijing China /* primary image status */ 2179a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t primary_status; 2189a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t secondary_present; 2199a5557fdSlucy wang - Sun Microsystems - Beijing China 2209a5557fdSlucy wang - Sun Microsystems - Beijing China /* MAC address , 4 ports */ 2219a5557fdSlucy wang - Sun Microsystems - Beijing China unm_flash_mac_addr_t mac_addr[FLASH_NUM_PORTS]; 2229a5557fdSlucy wang - Sun Microsystems - Beijing China 2239a5557fdSlucy wang - Sun Microsystems - Beijing China /* Any user defined data */ 2249a5557fdSlucy wang - Sun Microsystems - Beijing China } unm_old_user_info_t; 2259a5557fdSlucy wang - Sun Microsystems - Beijing China 2269a5557fdSlucy wang - Sun Microsystems - Beijing China #define FLASH_NUM_MAC_PER_PORT 32 2279a5557fdSlucy wang - Sun Microsystems - Beijing China typedef struct { 2289a5557fdSlucy wang - Sun Microsystems - Beijing China __uint8_t flash_md5[16 * 64]; 229*93833965Sjing xiong ERI-SUN /* __uint8_t crbinit_md5[16]; */ 230*93833965Sjing xiong ERI-SUN /* __uint8_t brdcfg_md5[16]; */ 2319a5557fdSlucy wang - Sun Microsystems - Beijing China /* bootloader */ 2329a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t bootld_version; 2339a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t bootld_size; 234*93833965Sjing xiong ERI-SUN /* __uint8_t bootld_md5[16]; */ 2359a5557fdSlucy wang - Sun Microsystems - Beijing China /* image */ 2369a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t image_version; 2379a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t image_size; 238*93833965Sjing xiong ERI-SUN /* U8 image_md5[16]; */ 2399a5557fdSlucy wang - Sun Microsystems - Beijing China /* primary image status */ 2409a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t primary_status; 2419a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t secondary_present; 2429a5557fdSlucy wang - Sun Microsystems - Beijing China 2439a5557fdSlucy wang - Sun Microsystems - Beijing China /* MAC address , 4 ports, 32 address per port */ 2449a5557fdSlucy wang - Sun Microsystems - Beijing China __uint64_t mac_addr[FLASH_NUM_PORTS * FLASH_NUM_MAC_PER_PORT]; 2459a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t sub_sys_id; 2469a5557fdSlucy wang - Sun Microsystems - Beijing China __uint8_t serial_num[32]; 2479a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t bios_version; 2489a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t pxe_enable; /* bitmask, per port */ 2499a5557fdSlucy wang - Sun Microsystems - Beijing China __uint32_t vlan_tag[FLASH_NUM_PORTS]; 2509a5557fdSlucy wang - Sun Microsystems - Beijing China 2519a5557fdSlucy wang - Sun Microsystems - Beijing China /* Any user defined data */ 2529a5557fdSlucy wang - Sun Microsystems - Beijing China } unm_user_info_t; 2539a5557fdSlucy wang - Sun Microsystems - Beijing China 2549a5557fdSlucy wang - Sun Microsystems - Beijing China /* Flash memory map */ 2559a5557fdSlucy wang - Sun Microsystems - Beijing China typedef enum { 2569a5557fdSlucy wang - Sun Microsystems - Beijing China CRBINIT_START = 0, /* Crbinit section */ 2579a5557fdSlucy wang - Sun Microsystems - Beijing China BRDCFG_START = 0x4000, /* board config */ 2589a5557fdSlucy wang - Sun Microsystems - Beijing China INITCODE_START = 0x6000, /* pegtune code */ 2599a5557fdSlucy wang - Sun Microsystems - Beijing China BOOTLD_START = 0x10000, /* bootld */ 2609a5557fdSlucy wang - Sun Microsystems - Beijing China BOOTLD1_START = 0x14000, /* Start of booloader 1 */ 2619a5557fdSlucy wang - Sun Microsystems - Beijing China IMAGE_START = 0x43000, /* compressed image */ 2629a5557fdSlucy wang - Sun Microsystems - Beijing China SECONDARY_START = 0x200000, /* backup images */ 2639a5557fdSlucy wang - Sun Microsystems - Beijing China PXE_FIRST_STAGE_INTEL = 0x3C0000, /* Intel First Stage info */ 2649a5557fdSlucy wang - Sun Microsystems - Beijing China PXE_FIRST_STAGE_PPC = 0x3C4000, /* PPC First Stage info */ 2659a5557fdSlucy wang - Sun Microsystems - Beijing China PXE_SECOND_STAGE_INTEL = 0x3B0000, /* Intel Second Stage info */ 2669a5557fdSlucy wang - Sun Microsystems - Beijing China PXE_SECOND_STAGE_PPC = 0x3A0000, /* Intel Second Stage info */ 267*93833965Sjing xiong ERI-SUN /* LICENSE_TIME_START = 0x3C0000, license expiry time info */ 2689a5557fdSlucy wang - Sun Microsystems - Beijing China PXE_START = 0x3D0000, /* PXE image area */ 2699a5557fdSlucy wang - Sun Microsystems - Beijing China DEFAULT_DATA_START = 0x3e0000, /* where we place default factory data */ 2709a5557fdSlucy wang - Sun Microsystems - Beijing China /* User defined region for new boards */ 2719a5557fdSlucy wang - Sun Microsystems - Beijing China USER_START = 0x3E8000, 2729a5557fdSlucy wang - Sun Microsystems - Beijing China VPD_START = 0x3E8C00, /* Vendor private data */ 2739a5557fdSlucy wang - Sun Microsystems - Beijing China LICENSE_START = 0x3E9000, /* Firmware License */ 2749a5557fdSlucy wang - Sun Microsystems - Beijing China FIXED_START = 0x3F0000 /* backup of crbinit */ 2759a5557fdSlucy wang - Sun Microsystems - Beijing China } unm_flash_map_t; 2769a5557fdSlucy wang - Sun Microsystems - Beijing China 2779a5557fdSlucy wang - Sun Microsystems - Beijing China #define USER_START_OLD PXE_START /* for backward compatibility */ 2789a5557fdSlucy wang - Sun Microsystems - Beijing China 279*93833965Sjing xiong ERI-SUN #ifdef __cplusplus 280*93833965Sjing xiong ERI-SUN } 281*93833965Sjing xiong ERI-SUN #endif 282*93833965Sjing xiong ERI-SUN 283*93833965Sjing xiong ERI-SUN #endif /* !_UNM_BRDINFO_H_ */ 284