root/drivers/net/ethernet/cavium/liquidio/liquidio_image.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /**********************************************************************
   2  * Author: Cavium, Inc.
   3  *
   4  * Contact: support@cavium.com
   5  *          Please include "LiquidIO" in the subject.
   6  *
   7  * Copyright (c) 2003-2016 Cavium, Inc.
   8  *
   9  * This file is free software; you can redistribute it and/or modify
  10  * it under the terms of the GNU General Public License, Version 2, as
  11  * published by the Free Software Foundation.
  12  *
  13  * This file is distributed in the hope that it will be useful, but
  14  * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
  15  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
  16  * NONINFRINGEMENT.  See the GNU General Public License for more details.
  17  ***********************************************************************/
  18 #ifndef _LIQUIDIO_IMAGE_H_
  19 #define _LIQUIDIO_IMAGE_H_
  20 
  21 #define LIO_MAX_FW_TYPE_LEN     (8)
  22 #define LIO_MAX_FW_FILENAME_LEN (256)
  23 #define LIO_FW_DIR              "liquidio/"
  24 #define LIO_FW_BASE_NAME        "lio_"
  25 #define LIO_FW_NAME_SUFFIX      ".bin"
  26 #define LIO_FW_NAME_TYPE_NIC    "nic"
  27 #define LIO_FW_NAME_TYPE_AUTO   "auto"
  28 #define LIO_FW_NAME_TYPE_NONE   "none"
  29 #define LIO_MAX_FIRMWARE_VERSION_LEN 16
  30 
  31 #define LIO_MAX_BOOTCMD_LEN 1024
  32 #define LIO_MAX_IMAGES 16
  33 #define LIO_NIC_MAGIC 0x434E4943     /* "CNIC" */
  34 struct octeon_firmware_desc {
  35         __be64 addr;
  36         __be32 len;
  37         __be32 crc32;         /* crc32 of image */
  38 };
  39 
  40 /* Following the header is a list of 64-bit aligned binary images,
  41  * as described by the desc field.
  42  * Numeric fields are in network byte order.
  43  */
  44 struct octeon_firmware_file_header {
  45         __be32 magic;
  46         char version[LIO_MAX_FIRMWARE_VERSION_LEN];
  47         char bootcmd[LIO_MAX_BOOTCMD_LEN];
  48         __be32 num_images;
  49         struct octeon_firmware_desc desc[LIO_MAX_IMAGES];
  50         __be32 pad;
  51         __be32 crc32;         /* header checksum */
  52 };
  53 
  54 #endif /* _LIQUIDIO_IMAGE_H_ */

/* [<][>][^][v][top][bottom][index][help] */