xref: /linux/drivers/net/ethernet/broadcom/bnxt/bnxt_nvm_defs.h (revision 37acd687269f8cb8366598e292f96eb5605d3e3a)
1c0c050c5SMichael Chan /* Broadcom NetXtreme-C/E network driver.
2c0c050c5SMichael Chan  *
311f15ed3SMichael Chan  * Copyright (c) 2014-2016 Broadcom Corporation
4c0c050c5SMichael Chan  *
5c0c050c5SMichael Chan  * This program is free software; you can redistribute it and/or modify
6c0c050c5SMichael Chan  * it under the terms of the GNU General Public License as published by
7c0c050c5SMichael Chan  * the Free Software Foundation.
8c0c050c5SMichael Chan  */
9c0c050c5SMichael Chan 
10c0c050c5SMichael Chan #ifndef _BNXT_NVM_DEFS_H_
11c0c050c5SMichael Chan #define _BNXT_NVM_DEFS_H_
12c0c050c5SMichael Chan 
13c0c050c5SMichael Chan enum bnxt_nvm_directory_type {
14c0c050c5SMichael Chan 	BNX_DIR_TYPE_UNUSED = 0,
15c0c050c5SMichael Chan 	BNX_DIR_TYPE_PKG_LOG = 1,
16*a4c36347SRob Swindell 	BNX_DIR_TYPE_UPDATE = 2,
17c0c050c5SMichael Chan 	BNX_DIR_TYPE_CHIMP_PATCH = 3,
18c0c050c5SMichael Chan 	BNX_DIR_TYPE_BOOTCODE = 4,
19c0c050c5SMichael Chan 	BNX_DIR_TYPE_VPD = 5,
20c0c050c5SMichael Chan 	BNX_DIR_TYPE_EXP_ROM_MBA = 6,
21c0c050c5SMichael Chan 	BNX_DIR_TYPE_AVS = 7,
22c0c050c5SMichael Chan 	BNX_DIR_TYPE_PCIE = 8,
23c0c050c5SMichael Chan 	BNX_DIR_TYPE_PORT_MACRO = 9,
24c0c050c5SMichael Chan 	BNX_DIR_TYPE_APE_FW = 10,
25c0c050c5SMichael Chan 	BNX_DIR_TYPE_APE_PATCH = 11,
26c0c050c5SMichael Chan 	BNX_DIR_TYPE_KONG_FW = 12,
27c0c050c5SMichael Chan 	BNX_DIR_TYPE_KONG_PATCH = 13,
28c0c050c5SMichael Chan 	BNX_DIR_TYPE_BONO_FW = 14,
29c0c050c5SMichael Chan 	BNX_DIR_TYPE_BONO_PATCH = 15,
30c0c050c5SMichael Chan 	BNX_DIR_TYPE_TANG_FW = 16,
31c0c050c5SMichael Chan 	BNX_DIR_TYPE_TANG_PATCH = 17,
32c0c050c5SMichael Chan 	BNX_DIR_TYPE_BOOTCODE_2 = 18,
33c0c050c5SMichael Chan 	BNX_DIR_TYPE_CCM = 19,
34c0c050c5SMichael Chan 	BNX_DIR_TYPE_PCI_CFG = 20,
35c0c050c5SMichael Chan 	BNX_DIR_TYPE_TSCF_UCODE = 21,
36c0c050c5SMichael Chan 	BNX_DIR_TYPE_ISCSI_BOOT = 22,
37c0c050c5SMichael Chan 	BNX_DIR_TYPE_ISCSI_BOOT_IPV6 = 24,
38c0c050c5SMichael Chan 	BNX_DIR_TYPE_ISCSI_BOOT_IPV4N6 = 25,
39c0c050c5SMichael Chan 	BNX_DIR_TYPE_ISCSI_BOOT_CFG6 = 26,
40c0c050c5SMichael Chan 	BNX_DIR_TYPE_EXT_PHY = 27,
41c0c050c5SMichael Chan 	BNX_DIR_TYPE_SHARED_CFG = 40,
42c0c050c5SMichael Chan 	BNX_DIR_TYPE_PORT_CFG = 41,
43c0c050c5SMichael Chan 	BNX_DIR_TYPE_FUNC_CFG = 42,
44c0c050c5SMichael Chan 	BNX_DIR_TYPE_MGMT_CFG = 48,
45c0c050c5SMichael Chan 	BNX_DIR_TYPE_MGMT_DATA = 49,
46c0c050c5SMichael Chan 	BNX_DIR_TYPE_MGMT_WEB_DATA = 50,
47c0c050c5SMichael Chan 	BNX_DIR_TYPE_MGMT_WEB_META = 51,
48c0c050c5SMichael Chan 	BNX_DIR_TYPE_MGMT_EVENT_LOG = 52,
49c0c050c5SMichael Chan 	BNX_DIR_TYPE_MGMT_AUDIT_LOG = 53
50c0c050c5SMichael Chan };
51c0c050c5SMichael Chan 
52c0c050c5SMichael Chan #define BNX_DIR_ORDINAL_FIRST			0
53c0c050c5SMichael Chan 
543ebf6f0aSRob Swindell #define BNX_DIR_EXT_NONE			0
55c0c050c5SMichael Chan #define BNX_DIR_EXT_INACTIVE			(1 << 0)
56c0c050c5SMichael Chan #define BNX_DIR_EXT_UPDATE			(1 << 1)
57c0c050c5SMichael Chan 
583ebf6f0aSRob Swindell #define BNX_DIR_ATTR_NONE			0
59c0c050c5SMichael Chan #define BNX_DIR_ATTR_NO_CHKSUM			(1 << 0)
60c0c050c5SMichael Chan #define BNX_DIR_ATTR_PROP_STREAM		(1 << 1)
61c0c050c5SMichael Chan 
623ebf6f0aSRob Swindell enum bnxnvm_pkglog_field_index {
633ebf6f0aSRob Swindell 	BNX_PKG_LOG_FIELD_IDX_INSTALLED_TIMESTAMP	= 0,
643ebf6f0aSRob Swindell 	BNX_PKG_LOG_FIELD_IDX_PKG_DESCRIPTION		= 1,
653ebf6f0aSRob Swindell 	BNX_PKG_LOG_FIELD_IDX_PKG_VERSION		= 2,
663ebf6f0aSRob Swindell 	BNX_PKG_LOG_FIELD_IDX_PKG_TIMESTAMP		= 3,
673ebf6f0aSRob Swindell 	BNX_PKG_LOG_FIELD_IDX_PKG_CHECKSUM		= 4,
683ebf6f0aSRob Swindell 	BNX_PKG_LOG_FIELD_IDX_INSTALLED_ITEMS		= 5,
693ebf6f0aSRob Swindell 	BNX_PKG_LOG_FIELD_IDX_INSTALLED_MASK		= 6
703ebf6f0aSRob Swindell };
713ebf6f0aSRob Swindell 
72c0c050c5SMichael Chan #endif				/* Don't add anything after this line */
73