scsi: qla2xxx: Cleanups for NVRAM/Flash read/write path
This patch does following: - Clean up NVRAM code. - Optimizes reading of primary/secondary flash image validation. - Remove 0xff mask and make correct width in FLT structure. - Use endian macros to assign static fields in fwdump header. - Correct fdwt checksum calculation. - Simplify ql_dump_buffer() interface usage. - Add endianizers to 27xx firmware image validator. - fixes compiler warnings for big endian architecture. Signed-off-by: Joe Carnuccio <joe.carnuccio@cavium.com> Signed-off-by: Himanshu Madhani <hmadhani@marvell.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
committed by
Martin K. Petersen
parent
72a92df210
commit
f8f97b0c5b
@@ -11,12 +11,12 @@
|
||||
#define IOBASE_ADDR offsetof(struct device_reg_24xx, iobase_addr)
|
||||
|
||||
struct __packed qla27xx_fwdt_template {
|
||||
uint32_t template_type;
|
||||
uint32_t entry_offset;
|
||||
__le32 template_type;
|
||||
__le32 entry_offset;
|
||||
uint32_t template_size;
|
||||
uint32_t reserved_1;
|
||||
|
||||
uint32_t entry_count;
|
||||
__le32 entry_count;
|
||||
uint32_t template_version;
|
||||
uint32_t capture_timestamp;
|
||||
uint32_t template_checksum;
|
||||
@@ -65,8 +65,8 @@ struct __packed qla27xx_fwdt_template {
|
||||
|
||||
struct __packed qla27xx_fwdt_entry {
|
||||
struct __packed {
|
||||
uint32_t type;
|
||||
uint32_t size;
|
||||
__le32 type;
|
||||
__le32 size;
|
||||
uint32_t reserved_1;
|
||||
|
||||
uint8_t capture_flags;
|
||||
@@ -81,36 +81,36 @@ struct __packed qla27xx_fwdt_entry {
|
||||
} t255;
|
||||
|
||||
struct __packed {
|
||||
uint32_t base_addr;
|
||||
__le32 base_addr;
|
||||
uint8_t reg_width;
|
||||
uint16_t reg_count;
|
||||
__le16 reg_count;
|
||||
uint8_t pci_offset;
|
||||
} t256;
|
||||
|
||||
struct __packed {
|
||||
uint32_t base_addr;
|
||||
uint32_t write_data;
|
||||
__le32 base_addr;
|
||||
__le32 write_data;
|
||||
uint8_t pci_offset;
|
||||
uint8_t reserved[3];
|
||||
} t257;
|
||||
|
||||
struct __packed {
|
||||
uint32_t base_addr;
|
||||
__le32 base_addr;
|
||||
uint8_t reg_width;
|
||||
uint16_t reg_count;
|
||||
__le16 reg_count;
|
||||
uint8_t pci_offset;
|
||||
uint8_t banksel_offset;
|
||||
uint8_t reserved[3];
|
||||
uint32_t bank;
|
||||
__le32 bank;
|
||||
} t258;
|
||||
|
||||
struct __packed {
|
||||
uint32_t base_addr;
|
||||
uint32_t write_data;
|
||||
__le32 base_addr;
|
||||
__le32 write_data;
|
||||
uint8_t reserved[2];
|
||||
uint8_t pci_offset;
|
||||
uint8_t banksel_offset;
|
||||
uint32_t bank;
|
||||
__le32 bank;
|
||||
} t259;
|
||||
|
||||
struct __packed {
|
||||
@@ -121,14 +121,14 @@ struct __packed qla27xx_fwdt_entry {
|
||||
struct __packed {
|
||||
uint8_t pci_offset;
|
||||
uint8_t reserved[3];
|
||||
uint32_t write_data;
|
||||
__le32 write_data;
|
||||
} t261;
|
||||
|
||||
struct __packed {
|
||||
uint8_t ram_area;
|
||||
uint8_t reserved[3];
|
||||
uint32_t start_addr;
|
||||
uint32_t end_addr;
|
||||
__le32 start_addr;
|
||||
__le32 end_addr;
|
||||
} t262;
|
||||
|
||||
struct __packed {
|
||||
@@ -158,7 +158,7 @@ struct __packed qla27xx_fwdt_entry {
|
||||
struct __packed {
|
||||
uint8_t pci_offset;
|
||||
uint8_t reserved[3];
|
||||
uint32_t data;
|
||||
__le32 data;
|
||||
} t267;
|
||||
|
||||
struct __packed {
|
||||
@@ -173,23 +173,23 @@ struct __packed qla27xx_fwdt_entry {
|
||||
} t269;
|
||||
|
||||
struct __packed {
|
||||
uint32_t addr;
|
||||
uint32_t count;
|
||||
__le32 addr;
|
||||
__le32 count;
|
||||
} t270;
|
||||
|
||||
struct __packed {
|
||||
uint32_t addr;
|
||||
uint32_t data;
|
||||
__le32 addr;
|
||||
__le32 data;
|
||||
} t271;
|
||||
|
||||
struct __packed {
|
||||
uint32_t addr;
|
||||
uint32_t count;
|
||||
__le32 addr;
|
||||
__le32 count;
|
||||
} t272;
|
||||
|
||||
struct __packed {
|
||||
uint32_t addr;
|
||||
uint32_t count;
|
||||
__le32 addr;
|
||||
__le32 count;
|
||||
} t273;
|
||||
|
||||
struct __packed {
|
||||
@@ -199,26 +199,26 @@ struct __packed qla27xx_fwdt_entry {
|
||||
} t274;
|
||||
|
||||
struct __packed {
|
||||
uint32_t length;
|
||||
__le32 length;
|
||||
uint8_t buffer[];
|
||||
} t275;
|
||||
|
||||
struct __packed {
|
||||
uint32_t cond1;
|
||||
uint32_t cond2;
|
||||
__le32 cond1;
|
||||
__le32 cond2;
|
||||
} t276;
|
||||
|
||||
struct __packed {
|
||||
uint32_t cmd_addr;
|
||||
uint32_t wr_cmd_data;
|
||||
uint32_t data_addr;
|
||||
__le32 cmd_addr;
|
||||
__le32 wr_cmd_data;
|
||||
__le32 data_addr;
|
||||
} t277;
|
||||
|
||||
struct __packed {
|
||||
uint32_t cmd_addr;
|
||||
uint32_t wr_cmd_data;
|
||||
uint32_t data_addr;
|
||||
uint32_t wr_data;
|
||||
__le32 cmd_addr;
|
||||
__le32 wr_cmd_data;
|
||||
__le32 data_addr;
|
||||
__le32 wr_data;
|
||||
} t278;
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user