cmd: fru: Move structures to header

There is no reason to keep them private just in C.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
This commit is contained in:
Michal Simek
2019-04-12 11:23:21 +02:00
parent df532608ed
commit c899191781
2 changed files with 53 additions and 52 deletions

View File

@@ -6,63 +6,12 @@
#include <common.h>
#include <fdtdec.h>
#include <fru.h>
#include <malloc.h>
#include <asm/io.h>
#include <asm/arch/hardware.h>
#include "linux/crc8.h"
DECLARE_GLOBAL_DATA_PTR;
struct fru_common_hdr {
u8 version;
u8 off_internal;
u8 off_chassis;
u8 off_board;
u8 off_product;
u8 off_multirec;
u8 pad;
u8 crc;
};
#define FRU_BOARD_MAX_LEN 32
struct fru_board_data {
u8 ver;
u8 len;
u8 lang_code;
u8 time[3];
u8 manuf_type_len;
u8 manuf_name[FRU_BOARD_MAX_LEN];
u8 prd_name_type_len;
u8 product_name[FRU_BOARD_MAX_LEN];
u8 prd_part_type_len;
u8 product_part[FRU_BOARD_MAX_LEN];
u8 prd_ver_type_len;
u8 product_ver[FRU_BOARD_MAX_LEN];
u8 prd_serial_type_len;
u8 product_serial[FRU_BOARD_MAX_LEN];
u8 asset_tag_type_len;
u8 asset_tag[FRU_BOARD_MAX_LEN];
};
struct fru_table {
bool captured;
struct fru_common_hdr hdr;
struct fru_board_data brd;
};
#define FRU_TYPELEN_CODE_MASK 0xC0
#define FRU_TYPELEN_LEN_MASK 0x3F
#define FRU_COMMON_HDR_VER_MASK 0xF
#define FRU_COMMON_HDR_LEN_MULTIPLIER 8
#define FRU_LANG_CODE_ENGLISH 0
#define FRU_LANG_CODE_ENGLISH_1 25
#define FRU_TYPELEN_EOF 0xC1
#define FRU_BOARD_AREA_TOTAL_FIELDS 6
#define FRU_TYPELEN_TYPE_SHIFT 6
#define FRU_TYPELEN_TYPE_ASCII8 3
struct fru_table fru_data;
static u16 fru_cal_area_len(u8 len)

View File

@@ -8,7 +8,59 @@
#ifndef __FRU_H
#define __FRU_H
struct fru_common_hdr {
u8 version;
u8 off_internal;
u8 off_chassis;
u8 off_board;
u8 off_product;
u8 off_multirec;
u8 pad;
u8 crc;
};
#define FRU_BOARD_MAX_LEN 32
struct fru_board_data {
u8 ver;
u8 len;
u8 lang_code;
u8 time[3];
u8 manuf_type_len;
u8 manuf_name[FRU_BOARD_MAX_LEN];
u8 prd_name_type_len;
u8 product_name[FRU_BOARD_MAX_LEN];
u8 prd_part_type_len;
u8 product_part[FRU_BOARD_MAX_LEN];
u8 prd_ver_type_len;
u8 product_ver[FRU_BOARD_MAX_LEN];
u8 prd_serial_type_len;
u8 product_serial[FRU_BOARD_MAX_LEN];
u8 asset_tag_type_len;
u8 asset_tag[FRU_BOARD_MAX_LEN];
};
struct fru_table {
bool captured;
struct fru_common_hdr hdr;
struct fru_board_data brd;
};
#define FRU_TYPELEN_CODE_MASK 0xC0
#define FRU_TYPELEN_LEN_MASK 0x3F
#define FRU_COMMON_HDR_VER_MASK 0xF
#define FRU_COMMON_HDR_LEN_MULTIPLIER 8
#define FRU_LANG_CODE_ENGLISH 0
#define FRU_LANG_CODE_ENGLISH_1 25
#define FRU_TYPELEN_EOF 0xC1
#define FRU_BOARD_AREA_TOTAL_FIELDS 6
#define FRU_TYPELEN_TYPE_SHIFT 6
#define FRU_TYPELEN_TYPE_ASCII8 3
int fru_display(void);
int fru_capture(unsigned long addr);
extern struct fru_table fru_data;
#endif /* FRU_H */