/****************************************************************************
 *     Copyright (c) 1999-2015, Broadcom Corporation
 *     All Rights Reserved
 *     Confidential Property of Broadcom Corporation
 *
 *
 * THIS SOFTWARE MAY ONLY BE USED SUBJECT TO AN EXECUTED SOFTWARE LICENSE
 * AGREEMENT  BETWEEN THE USER AND BROADCOM.  YOU HAVE NO RIGHT TO USE OR
 * EXPLOIT THIS MATERIAL EXCEPT SUBJECT TO THE TERMS OF SUCH AN AGREEMENT.
 *
 * Module Description:
 *                     DO NOT EDIT THIS FILE DIRECTLY
 *
 * This module was generated magically with RDB from a source description
 * file. You must edit the source file for changes to be made to this file.
 *
 *
 * Date:           Generated on               Sat Oct 10 03:12:52 2015
 *                 Full Compile MD5 Checksum  d9086034aa2cc6f9a99dc8c63a00d9b3
 *                     (minus title and desc)
 *                 MD5 Checksum               5b6751e69633ab9bdfaa661db7820c66
 *
 * Compiled with:  RDB Utility                combo_header.pl
 *                 RDB.pm                     360
 *                 unknown                    unknown
 *                 Perl Interpreter           5.008008
 *                 Operating System           linux
 *                 Script Source              /projects/stbgit/bin/gen_rdb.pl
 *                 DVTSWVER                   n/a
 *
 *
 ***************************************************************************/

#ifndef BCHP_HIF_MSPI_H__
#define BCHP_HIF_MSPI_H__

/***************************************************************************
 *HIF_MSPI - Public MSPI Registers
 ***************************************************************************/
#define BCHP_HIF_MSPI_SPCR0_LSB                  0x20203c00 /* [RW] SPCR0_LSB REGISTER */
#define BCHP_HIF_MSPI_SPCR0_MSB                  0x20203c04 /* [RW] SPCR0_MSB Register */
#define BCHP_HIF_MSPI_SPCR1_LSB                  0x20203c08 /* [RW] SPCR1_LSB REGISTER */
#define BCHP_HIF_MSPI_SPCR1_MSB                  0x20203c0c /* [RW] SPCR1_MSB REGISTER */
#define BCHP_HIF_MSPI_NEWQP                      0x20203c10 /* [RW] NEWQP REGISTER */
#define BCHP_HIF_MSPI_ENDQP                      0x20203c14 /* [RW] ENDQP REGISTER */
#define BCHP_HIF_MSPI_SPCR2                      0x20203c18 /* [RW] SPCR2 REGISTER */
#define BCHP_HIF_MSPI_MSPI_STATUS                0x20203c20 /* [RW] MSPI STATUS REGISTER */
#define BCHP_HIF_MSPI_CPTQP                      0x20203c24 /* [RO] CPTQP REGISTER */
#define BCHP_HIF_MSPI_SPCR3                      0x20203c28 /* [RW] SPCR3 REGISTER */
#define BCHP_HIF_MSPI_REVISION                   0x20203c2c /* [RO] REVISION ID REGISTER */
#define BCHP_HIF_MSPI_TXRAM00                    0x20203c40 /* [RW] Most significant byte of TXRAM[0] (queue pointer = 0) */
#define BCHP_HIF_MSPI_TXRAM01                    0x20203c44 /* [RW] Least significant byte of TXRAM[0] (queue pointer = 0) */
#define BCHP_HIF_MSPI_TXRAM02                    0x20203c48 /* [RW] Most significant byte of TXRAM[1] (queue pointer = 1) */
#define BCHP_HIF_MSPI_TXRAM03                    0x20203c4c /* [RW] Least significant byte of TXRAM[1] (queue pointer = 1) */
#define BCHP_HIF_MSPI_TXRAM04                    0x20203c50 /* [RW] Most significant byte of TXRAM[2] (queue pointer = 2) */
#define BCHP_HIF_MSPI_TXRAM05                    0x20203c54 /* [RW] Least significant byte of TXRAM[2] (queue pointer = 2) */
#define BCHP_HIF_MSPI_TXRAM06                    0x20203c58 /* [RW] Most significant byte of TXRAM[3] (queue pointer = 3) */
#define BCHP_HIF_MSPI_TXRAM07                    0x20203c5c /* [RW] Least significant byte of TXRAM[3] (queue pointer = 3) */
#define BCHP_HIF_MSPI_TXRAM08                    0x20203c60 /* [RW] Most significant byte of TXRAM[4] (queue pointer = 4) */
#define BCHP_HIF_MSPI_TXRAM09                    0x20203c64 /* [RW] Least significant byte of TXRAM[4] (queue pointer = 4) */
#define BCHP_HIF_MSPI_TXRAM10                    0x20203c68 /* [RW] Most significant byte of TXRAM[5] (queue pointer = 5) */
#define BCHP_HIF_MSPI_TXRAM11                    0x20203c6c /* [RW] Least significant byte of TXRAM[5] (queue pointer = 5) */
#define BCHP_HIF_MSPI_TXRAM12                    0x20203c70 /* [RW] Most significant byte of TXRAM[6] (queue pointer = 6) */
#define BCHP_HIF_MSPI_TXRAM13                    0x20203c74 /* [RW] Least significant byte of TXRAM[6] (queue pointer = 6) */
#define BCHP_HIF_MSPI_TXRAM14                    0x20203c78 /* [RW] Most significant byte of TXRAM[7] (queue pointer = 7) */
#define BCHP_HIF_MSPI_TXRAM15                    0x20203c7c /* [RW] Least significant byte of TXRAM[7] (queue pointer = 7) */
#define BCHP_HIF_MSPI_TXRAM16                    0x20203c80 /* [RW] Most significant byte of TXRAM[8] (queue pointer = 8) */
#define BCHP_HIF_MSPI_TXRAM17                    0x20203c84 /* [RW] Least significant byte of TXRAM[8] (queue pointer = 8) */
#define BCHP_HIF_MSPI_TXRAM18                    0x20203c88 /* [RW] Most significant byte of TXRAM[9] (queue pointer = 9) */
#define BCHP_HIF_MSPI_TXRAM19                    0x20203c8c /* [RW] Least significant byte of TXRAM[9] (queue pointer = 9) */
#define BCHP_HIF_MSPI_TXRAM20                    0x20203c90 /* [RW] Most significant byte of TXRAM[10] (queue pointer = 10) */
#define BCHP_HIF_MSPI_TXRAM21                    0x20203c94 /* [RW] Least significant byte of TXRAM[10] (queue pointer = 10) */
#define BCHP_HIF_MSPI_TXRAM22                    0x20203c98 /* [RW] Most significant byte of TXRAM[11] (queue pointer = 11) */
#define BCHP_HIF_MSPI_TXRAM23                    0x20203c9c /* [RW] Least significant byte of TXRAM[11] (queue pointer = 11) */
#define BCHP_HIF_MSPI_TXRAM24                    0x20203ca0 /* [RW] Most significant byte of TXRAM[12] (queue pointer = 12) */
#define BCHP_HIF_MSPI_TXRAM25                    0x20203ca4 /* [RW] Least significant byte of TXRAM[12] (queue pointer = 12) */
#define BCHP_HIF_MSPI_TXRAM26                    0x20203ca8 /* [RW] Most significant byte of TXRAM[13] (queue pointer = 13) */
#define BCHP_HIF_MSPI_TXRAM27                    0x20203cac /* [RW] Least significant byte of TXRAM[13] (queue pointer = 13) */
#define BCHP_HIF_MSPI_TXRAM28                    0x20203cb0 /* [RW] Most significant byte of TXRAM[14] (queue pointer = 14) */
#define BCHP_HIF_MSPI_TXRAM29                    0x20203cb4 /* [RW] Least significant byte of TXRAM[14] (queue pointer = 14) */
#define BCHP_HIF_MSPI_TXRAM30                    0x20203cb8 /* [RW] Most significant byte of TXRAM[15] (queue pointer = 15) */
#define BCHP_HIF_MSPI_TXRAM31                    0x20203cbc /* [RW] Least significant byte of TXRAM[15] (queue pointer = 15) */
#define BCHP_HIF_MSPI_RXRAM00                    0x20203cc0 /* [RW] Most significant byte of RXRAM[0] (queue pointer = 0) */
#define BCHP_HIF_MSPI_RXRAM01                    0x20203cc4 /* [RW] Least significant byte of RXRAM[0] (queue pointer = 0) */
#define BCHP_HIF_MSPI_RXRAM02                    0x20203cc8 /* [RW] Most significant byte of RXRAM[1] (queue pointer = 1) */
#define BCHP_HIF_MSPI_RXRAM03                    0x20203ccc /* [RW] Least significant byte of RXRAM[1] (queue pointer = 1) */
#define BCHP_HIF_MSPI_RXRAM04                    0x20203cd0 /* [RW] Most significant byte of RXRAM[2] (queue pointer = 2) */
#define BCHP_HIF_MSPI_RXRAM05                    0x20203cd4 /* [RW] Least significant byte of RXRAM[2] (queue pointer = 2) */
#define BCHP_HIF_MSPI_RXRAM06                    0x20203cd8 /* [RW] Most significant byte of RXRAM[3] (queue pointer = 3) */
#define BCHP_HIF_MSPI_RXRAM07                    0x20203cdc /* [RW] Least significant byte of RXRAM[3] (queue pointer = 3) */
#define BCHP_HIF_MSPI_RXRAM08                    0x20203ce0 /* [RW] Most significant byte of RXRAM[4] (queue pointer = 4) */
#define BCHP_HIF_MSPI_RXRAM09                    0x20203ce4 /* [RW] Least significant byte of RXRAM[4] (queue pointer = 4) */
#define BCHP_HIF_MSPI_RXRAM10                    0x20203ce8 /* [RW] Most significant byte of RXRAM[5] (queue pointer = 5) */
#define BCHP_HIF_MSPI_RXRAM11                    0x20203cec /* [RW] Least significant byte of RXRAM[5] (queue pointer = 5) */
#define BCHP_HIF_MSPI_RXRAM12                    0x20203cf0 /* [RW] Most significant byte of RXRAM[6] (queue pointer = 6) */
#define BCHP_HIF_MSPI_RXRAM13                    0x20203cf4 /* [RW] Least significant byte of RXRAM[6] (queue pointer = 6) */
#define BCHP_HIF_MSPI_RXRAM14                    0x20203cf8 /* [RW] Most significant byte of RXRAM[7] (queue pointer = 7) */
#define BCHP_HIF_MSPI_RXRAM15                    0x20203cfc /* [RW] Least significant byte of RXRAM[7] (queue pointer = 7) */
#define BCHP_HIF_MSPI_RXRAM16                    0x20203d00 /* [RW] Most significant byte of RXRAM[8] (queue pointer = 8) */
#define BCHP_HIF_MSPI_RXRAM17                    0x20203d04 /* [RW] Least significant byte of RXRAM[8] (queue pointer = 8) */
#define BCHP_HIF_MSPI_RXRAM18                    0x20203d08 /* [RW] Most significant byte of RXRAM[9] (queue pointer = 9) */
#define BCHP_HIF_MSPI_RXRAM19                    0x20203d0c /* [RW] Least significant byte of RXRAM[9] (queue pointer = 9) */
#define BCHP_HIF_MSPI_RXRAM20                    0x20203d10 /* [RW] Most significant byte of RXRAM[10] (queue pointer = 10) */
#define BCHP_HIF_MSPI_RXRAM21                    0x20203d14 /* [RW] Least significant byte of RXRAM[10] (queue pointer = 10) */
#define BCHP_HIF_MSPI_RXRAM22                    0x20203d18 /* [RW] Most significant byte of RXRAM[11] (queue pointer = 11) */
#define BCHP_HIF_MSPI_RXRAM23                    0x20203d1c /* [RW] Least significant byte of RXRAM[11] (queue pointer = 11) */
#define BCHP_HIF_MSPI_RXRAM24                    0x20203d20 /* [RW] Most significant byte of RXRAM[12] (queue pointer = 12) */
#define BCHP_HIF_MSPI_RXRAM25                    0x20203d24 /* [RW] Least significant byte of RXRAM[12] (queue pointer = 12) */
#define BCHP_HIF_MSPI_RXRAM26                    0x20203d28 /* [RW] Most significant byte of RXRAM[13] (queue pointer = 13) */
#define BCHP_HIF_MSPI_RXRAM27                    0x20203d2c /* [RW] Least significant byte of RXRAM[13] (queue pointer = 13) */
#define BCHP_HIF_MSPI_RXRAM28                    0x20203d30 /* [RW] Most significant byte of RXRAM[14] (queue pointer = 14) */
#define BCHP_HIF_MSPI_RXRAM29                    0x20203d34 /* [RW] Least significant byte of RXRAM[14] (queue pointer = 14) */
#define BCHP_HIF_MSPI_RXRAM30                    0x20203d38 /* [RW] Most significant byte of RXRAM[15] (queue pointer = 15) */
#define BCHP_HIF_MSPI_RXRAM31                    0x20203d3c /* [RW] Least significant byte of RXRAM[15] (queue pointer = 15) */
#define BCHP_HIF_MSPI_CDRAM00                    0x20203d40 /* [RW] 8-bit command (queue pointer = 0) */
#define BCHP_HIF_MSPI_CDRAM01                    0x20203d44 /* [RW] 8-bit command (queue pointer = 1) */
#define BCHP_HIF_MSPI_CDRAM02                    0x20203d48 /* [RW] 8-bit command (queue pointer = 2) */
#define BCHP_HIF_MSPI_CDRAM03                    0x20203d4c /* [RW] 8-bit command (queue pointer = 3) */
#define BCHP_HIF_MSPI_CDRAM04                    0x20203d50 /* [RW] 8-bit command (queue pointer = 4) */
#define BCHP_HIF_MSPI_CDRAM05                    0x20203d54 /* [RW] 8-bit command (queue pointer = 5) */
#define BCHP_HIF_MSPI_CDRAM06                    0x20203d58 /* [RW] 8-bit command (queue pointer = 6) */
#define BCHP_HIF_MSPI_CDRAM07                    0x20203d5c /* [RW] 8-bit command (queue pointer = 7) */
#define BCHP_HIF_MSPI_CDRAM08                    0x20203d60 /* [RW] 8-bit command (queue pointer = 8) */
#define BCHP_HIF_MSPI_CDRAM09                    0x20203d64 /* [RW] 8-bit command (queue pointer = 9) */
#define BCHP_HIF_MSPI_CDRAM10                    0x20203d68 /* [RW] 8-bit command (queue pointer = a) */
#define BCHP_HIF_MSPI_CDRAM11                    0x20203d6c /* [RW] 8-bit command (queue pointer = b) */
#define BCHP_HIF_MSPI_CDRAM12                    0x20203d70 /* [RW] 8-bit command (queue pointer = c) */
#define BCHP_HIF_MSPI_CDRAM13                    0x20203d74 /* [RW] 8-bit command (queue pointer = d) */
#define BCHP_HIF_MSPI_CDRAM14                    0x20203d78 /* [RW] 8-bit command (queue pointer = e) */
#define BCHP_HIF_MSPI_CDRAM15                    0x20203d7c /* [RW] 8-bit command (queue pointer = f) */
#define BCHP_HIF_MSPI_WRITE_LOCK                 0x20203d80 /* [RW] Control bit to lock group of write commands */
#define BCHP_HIF_MSPI_DISABLE_FLUSH_GEN          0x20203d84 /* [RW] Debug bit to mask the generation of flush signals from Mspi */

/***************************************************************************
 *SPCR0_LSB - SPCR0_LSB REGISTER
 ***************************************************************************/
/* HIF_MSPI :: SPCR0_LSB :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_SPCR0_LSB_reserved0_MASK                     0xffffff00
#define BCHP_HIF_MSPI_SPCR0_LSB_reserved0_SHIFT                    8

/* HIF_MSPI :: SPCR0_LSB :: SPBR [07:00] */
#define BCHP_HIF_MSPI_SPCR0_LSB_SPBR_MASK                          0x000000ff
#define BCHP_HIF_MSPI_SPCR0_LSB_SPBR_SHIFT                         0
#define BCHP_HIF_MSPI_SPCR0_LSB_SPBR_DEFAULT                       0x00000000

/***************************************************************************
 *SPCR0_MSB - SPCR0_MSB Register
 ***************************************************************************/
/* HIF_MSPI :: SPCR0_MSB :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_SPCR0_MSB_reserved0_MASK                     0xfffffe00
#define BCHP_HIF_MSPI_SPCR0_MSB_reserved0_SHIFT                    9

/* HIF_MSPI :: SPCR0_MSB :: StartTransDelay [08:08] */
#define BCHP_HIF_MSPI_SPCR0_MSB_StartTransDelay_MASK               0x00000100
#define BCHP_HIF_MSPI_SPCR0_MSB_StartTransDelay_SHIFT              8
#define BCHP_HIF_MSPI_SPCR0_MSB_StartTransDelay_DEFAULT            0x00000000

/* union - case data_reg_8 [07:02] */
/* HIF_MSPI :: SPCR0_MSB :: data_reg_8 :: reserved0 [07:06] */
#define BCHP_HIF_MSPI_SPCR0_MSB_data_reg_8_reserved0_MASK          0x000000c0
#define BCHP_HIF_MSPI_SPCR0_MSB_data_reg_8_reserved0_SHIFT         6

/* HIF_MSPI :: SPCR0_MSB :: data_reg_8 :: BITS [05:02] */
#define BCHP_HIF_MSPI_SPCR0_MSB_data_reg_8_BITS_MASK               0x0000003c
#define BCHP_HIF_MSPI_SPCR0_MSB_data_reg_8_BITS_SHIFT              2
#define BCHP_HIF_MSPI_SPCR0_MSB_data_reg_8_BITS_DEFAULT            0x00000000

/* union - case data_reg_32 [07:02] */
/* HIF_MSPI :: SPCR0_MSB :: data_reg_32 :: BITS [07:02] */
#define BCHP_HIF_MSPI_SPCR0_MSB_data_reg_32_BITS_MASK              0x000000fc
#define BCHP_HIF_MSPI_SPCR0_MSB_data_reg_32_BITS_SHIFT             2
#define BCHP_HIF_MSPI_SPCR0_MSB_data_reg_32_BITS_DEFAULT           0x00000000

/* HIF_MSPI :: SPCR0_MSB :: CPOL [01:01] */
#define BCHP_HIF_MSPI_SPCR0_MSB_CPOL_MASK                          0x00000002
#define BCHP_HIF_MSPI_SPCR0_MSB_CPOL_SHIFT                         1
#define BCHP_HIF_MSPI_SPCR0_MSB_CPOL_DEFAULT                       0x00000000

/* HIF_MSPI :: SPCR0_MSB :: CPHA [00:00] */
#define BCHP_HIF_MSPI_SPCR0_MSB_CPHA_MASK                          0x00000001
#define BCHP_HIF_MSPI_SPCR0_MSB_CPHA_SHIFT                         0
#define BCHP_HIF_MSPI_SPCR0_MSB_CPHA_DEFAULT                       0x00000000

/***************************************************************************
 *SPCR1_LSB - SPCR1_LSB REGISTER
 ***************************************************************************/
/* HIF_MSPI :: SPCR1_LSB :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_SPCR1_LSB_reserved0_MASK                     0xffffff00
#define BCHP_HIF_MSPI_SPCR1_LSB_reserved0_SHIFT                    8

/* HIF_MSPI :: SPCR1_LSB :: DTL [07:00] */
#define BCHP_HIF_MSPI_SPCR1_LSB_DTL_MASK                           0x000000ff
#define BCHP_HIF_MSPI_SPCR1_LSB_DTL_SHIFT                          0
#define BCHP_HIF_MSPI_SPCR1_LSB_DTL_DEFAULT                        0x00000000

/***************************************************************************
 *SPCR1_MSB - SPCR1_MSB REGISTER
 ***************************************************************************/
/* HIF_MSPI :: SPCR1_MSB :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_SPCR1_MSB_reserved0_MASK                     0xffffff00
#define BCHP_HIF_MSPI_SPCR1_MSB_reserved0_SHIFT                    8

/* HIF_MSPI :: SPCR1_MSB :: RDSCLK [07:00] */
#define BCHP_HIF_MSPI_SPCR1_MSB_RDSCLK_MASK                        0x000000ff
#define BCHP_HIF_MSPI_SPCR1_MSB_RDSCLK_SHIFT                       0
#define BCHP_HIF_MSPI_SPCR1_MSB_RDSCLK_DEFAULT                     0x00000000

/***************************************************************************
 *NEWQP - NEWQP REGISTER
 ***************************************************************************/
/* HIF_MSPI :: NEWQP :: reserved0 [31:04] */
#define BCHP_HIF_MSPI_NEWQP_reserved0_MASK                         0xfffffff0
#define BCHP_HIF_MSPI_NEWQP_reserved0_SHIFT                        4

/* HIF_MSPI :: NEWQP :: newqp [03:00] */
#define BCHP_HIF_MSPI_NEWQP_newqp_MASK                             0x0000000f
#define BCHP_HIF_MSPI_NEWQP_newqp_SHIFT                            0
#define BCHP_HIF_MSPI_NEWQP_newqp_DEFAULT                          0x00000000

/***************************************************************************
 *ENDQP - ENDQP REGISTER
 ***************************************************************************/
/* HIF_MSPI :: ENDQP :: reserved0 [31:04] */
#define BCHP_HIF_MSPI_ENDQP_reserved0_MASK                         0xfffffff0
#define BCHP_HIF_MSPI_ENDQP_reserved0_SHIFT                        4

/* HIF_MSPI :: ENDQP :: endqp [03:00] */
#define BCHP_HIF_MSPI_ENDQP_endqp_MASK                             0x0000000f
#define BCHP_HIF_MSPI_ENDQP_endqp_SHIFT                            0
#define BCHP_HIF_MSPI_ENDQP_endqp_DEFAULT                          0x00000000

/***************************************************************************
 *SPCR2 - SPCR2 REGISTER
 ***************************************************************************/
/* HIF_MSPI :: SPCR2 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_SPCR2_reserved0_MASK                         0xffffff00
#define BCHP_HIF_MSPI_SPCR2_reserved0_SHIFT                        8

/* HIF_MSPI :: SPCR2 :: cont_after_cmd [07:07] */
#define BCHP_HIF_MSPI_SPCR2_cont_after_cmd_MASK                    0x00000080
#define BCHP_HIF_MSPI_SPCR2_cont_after_cmd_SHIFT                   7
#define BCHP_HIF_MSPI_SPCR2_cont_after_cmd_DEFAULT                 0x00000000

/* HIF_MSPI :: SPCR2 :: spe [06:06] */
#define BCHP_HIF_MSPI_SPCR2_spe_MASK                               0x00000040
#define BCHP_HIF_MSPI_SPCR2_spe_SHIFT                              6
#define BCHP_HIF_MSPI_SPCR2_spe_DEFAULT                            0x00000000

/* HIF_MSPI :: SPCR2 :: spifie [05:05] */
#define BCHP_HIF_MSPI_SPCR2_spifie_MASK                            0x00000020
#define BCHP_HIF_MSPI_SPCR2_spifie_SHIFT                           5
#define BCHP_HIF_MSPI_SPCR2_spifie_DEFAULT                         0x00000000

/* HIF_MSPI :: SPCR2 :: wren [04:04] */
#define BCHP_HIF_MSPI_SPCR2_wren_MASK                              0x00000010
#define BCHP_HIF_MSPI_SPCR2_wren_SHIFT                             4
#define BCHP_HIF_MSPI_SPCR2_wren_DEFAULT                           0x00000000

/* HIF_MSPI :: SPCR2 :: wrt0 [03:03] */
#define BCHP_HIF_MSPI_SPCR2_wrt0_MASK                              0x00000008
#define BCHP_HIF_MSPI_SPCR2_wrt0_SHIFT                             3
#define BCHP_HIF_MSPI_SPCR2_wrt0_DEFAULT                           0x00000000

/* HIF_MSPI :: SPCR2 :: loopq [02:02] */
#define BCHP_HIF_MSPI_SPCR2_loopq_MASK                             0x00000004
#define BCHP_HIF_MSPI_SPCR2_loopq_SHIFT                            2
#define BCHP_HIF_MSPI_SPCR2_loopq_DEFAULT                          0x00000000

/* HIF_MSPI :: SPCR2 :: hie [01:01] */
#define BCHP_HIF_MSPI_SPCR2_hie_MASK                               0x00000002
#define BCHP_HIF_MSPI_SPCR2_hie_SHIFT                              1
#define BCHP_HIF_MSPI_SPCR2_hie_DEFAULT                            0x00000000

/* HIF_MSPI :: SPCR2 :: halt [00:00] */
#define BCHP_HIF_MSPI_SPCR2_halt_MASK                              0x00000001
#define BCHP_HIF_MSPI_SPCR2_halt_SHIFT                             0
#define BCHP_HIF_MSPI_SPCR2_halt_DEFAULT                           0x00000000

/***************************************************************************
 *MSPI_STATUS - MSPI STATUS REGISTER
 ***************************************************************************/
/* HIF_MSPI :: MSPI_STATUS :: reserved0 [31:02] */
#define BCHP_HIF_MSPI_MSPI_STATUS_reserved0_MASK                   0xfffffffc
#define BCHP_HIF_MSPI_MSPI_STATUS_reserved0_SHIFT                  2

/* HIF_MSPI :: MSPI_STATUS :: HALTA [01:01] */
#define BCHP_HIF_MSPI_MSPI_STATUS_HALTA_MASK                       0x00000002
#define BCHP_HIF_MSPI_MSPI_STATUS_HALTA_SHIFT                      1
#define BCHP_HIF_MSPI_MSPI_STATUS_HALTA_DEFAULT                    0x00000000

/* HIF_MSPI :: MSPI_STATUS :: SPIF [00:00] */
#define BCHP_HIF_MSPI_MSPI_STATUS_SPIF_MASK                        0x00000001
#define BCHP_HIF_MSPI_MSPI_STATUS_SPIF_SHIFT                       0
#define BCHP_HIF_MSPI_MSPI_STATUS_SPIF_DEFAULT                     0x00000000

/***************************************************************************
 *CPTQP - CPTQP REGISTER
 ***************************************************************************/
/* HIF_MSPI :: CPTQP :: reserved0 [31:04] */
#define BCHP_HIF_MSPI_CPTQP_reserved0_MASK                         0xfffffff0
#define BCHP_HIF_MSPI_CPTQP_reserved0_SHIFT                        4

/* HIF_MSPI :: CPTQP :: cptqp [03:00] */
#define BCHP_HIF_MSPI_CPTQP_cptqp_MASK                             0x0000000f
#define BCHP_HIF_MSPI_CPTQP_cptqp_SHIFT                            0
#define BCHP_HIF_MSPI_CPTQP_cptqp_DEFAULT                          0x00000000

/***************************************************************************
 *SPCR3 - SPCR3 REGISTER
 ***************************************************************************/
/* HIF_MSPI :: SPCR3 :: reserved0 [31:10] */
#define BCHP_HIF_MSPI_SPCR3_reserved0_MASK                         0xfffffc00
#define BCHP_HIF_MSPI_SPCR3_reserved0_SHIFT                        10

/* HIF_MSPI :: SPCR3 :: cpharx [09:09] */
#define BCHP_HIF_MSPI_SPCR3_cpharx_MASK                            0x00000200
#define BCHP_HIF_MSPI_SPCR3_cpharx_SHIFT                           9
#define BCHP_HIF_MSPI_SPCR3_cpharx_DEFAULT                         0x00000000

/* HIF_MSPI :: SPCR3 :: data_reg_size [08:08] */
#define BCHP_HIF_MSPI_SPCR3_data_reg_size_MASK                     0x00000100
#define BCHP_HIF_MSPI_SPCR3_data_reg_size_SHIFT                    8
#define BCHP_HIF_MSPI_SPCR3_data_reg_size_DEFAULT                  0x00000000

/* HIF_MSPI :: SPCR3 :: hdouttype [07:07] */
#define BCHP_HIF_MSPI_SPCR3_hdouttype_MASK                         0x00000080
#define BCHP_HIF_MSPI_SPCR3_hdouttype_SHIFT                        7
#define BCHP_HIF_MSPI_SPCR3_hdouttype_DEFAULT                      0x00000000

/* HIF_MSPI :: SPCR3 :: halfduplex [06:06] */
#define BCHP_HIF_MSPI_SPCR3_halfduplex_MASK                        0x00000040
#define BCHP_HIF_MSPI_SPCR3_halfduplex_SHIFT                       6
#define BCHP_HIF_MSPI_SPCR3_halfduplex_DEFAULT                     0x00000000

/* HIF_MSPI :: SPCR3 :: txramdam [05:04] */
#define BCHP_HIF_MSPI_SPCR3_txramdam_MASK                          0x00000030
#define BCHP_HIF_MSPI_SPCR3_txramdam_SHIFT                         4
#define BCHP_HIF_MSPI_SPCR3_txramdam_DEFAULT                       0x00000000
#define BCHP_HIF_MSPI_SPCR3_txramdam_DAM_8B                        0
#define BCHP_HIF_MSPI_SPCR3_txramdam_DAM_16B                       1
#define BCHP_HIF_MSPI_SPCR3_txramdam_DAM_32B                       2

/* HIF_MSPI :: SPCR3 :: rxramdam [03:02] */
#define BCHP_HIF_MSPI_SPCR3_rxramdam_MASK                          0x0000000c
#define BCHP_HIF_MSPI_SPCR3_rxramdam_SHIFT                         2
#define BCHP_HIF_MSPI_SPCR3_rxramdam_DEFAULT                       0x00000000
#define BCHP_HIF_MSPI_SPCR3_rxramdam_DAM_8B                        0
#define BCHP_HIF_MSPI_SPCR3_rxramdam_DAM_16B                       1
#define BCHP_HIF_MSPI_SPCR3_rxramdam_DAM_32B                       2

/* HIF_MSPI :: SPCR3 :: fastdt [01:01] */
#define BCHP_HIF_MSPI_SPCR3_fastdt_MASK                            0x00000002
#define BCHP_HIF_MSPI_SPCR3_fastdt_SHIFT                           1
#define BCHP_HIF_MSPI_SPCR3_fastdt_DEFAULT                         0x00000000

/* HIF_MSPI :: SPCR3 :: fastbr [00:00] */
#define BCHP_HIF_MSPI_SPCR3_fastbr_MASK                            0x00000001
#define BCHP_HIF_MSPI_SPCR3_fastbr_SHIFT                           0
#define BCHP_HIF_MSPI_SPCR3_fastbr_DEFAULT                         0x00000000

/***************************************************************************
 *REVISION - REVISION ID REGISTER
 ***************************************************************************/
/* HIF_MSPI :: REVISION :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_REVISION_reserved0_MASK                      0xffffff00
#define BCHP_HIF_MSPI_REVISION_reserved0_SHIFT                     8

/* HIF_MSPI :: REVISION :: major [07:04] */
#define BCHP_HIF_MSPI_REVISION_major_MASK                          0x000000f0
#define BCHP_HIF_MSPI_REVISION_major_SHIFT                         4
#define BCHP_HIF_MSPI_REVISION_major_DEFAULT                       0x00000001

/* HIF_MSPI :: REVISION :: minor [03:00] */
#define BCHP_HIF_MSPI_REVISION_minor_MASK                          0x0000000f
#define BCHP_HIF_MSPI_REVISION_minor_SHIFT                         0
#define BCHP_HIF_MSPI_REVISION_minor_DEFAULT                       0x00000005

/***************************************************************************
 *TXRAM00 - Most significant byte of TXRAM[0] (queue pointer = 0)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM00 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM00_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM00_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM00 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM00_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM00_txram_SHIFT                          0

/***************************************************************************
 *TXRAM01 - Least significant byte of TXRAM[0] (queue pointer = 0)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM01 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM01_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM01_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM01 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM01_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM01_txram_SHIFT                          0

/***************************************************************************
 *TXRAM02 - Most significant byte of TXRAM[1] (queue pointer = 1)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM02 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM02_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM02_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM02 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM02_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM02_txram_SHIFT                          0

/***************************************************************************
 *TXRAM03 - Least significant byte of TXRAM[1] (queue pointer = 1)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM03 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM03_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM03_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM03 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM03_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM03_txram_SHIFT                          0

/***************************************************************************
 *TXRAM04 - Most significant byte of TXRAM[2] (queue pointer = 2)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM04 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM04_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM04_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM04 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM04_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM04_txram_SHIFT                          0

/***************************************************************************
 *TXRAM05 - Least significant byte of TXRAM[2] (queue pointer = 2)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM05 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM05_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM05_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM05 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM05_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM05_txram_SHIFT                          0

/***************************************************************************
 *TXRAM06 - Most significant byte of TXRAM[3] (queue pointer = 3)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM06 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM06_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM06_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM06 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM06_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM06_txram_SHIFT                          0

/***************************************************************************
 *TXRAM07 - Least significant byte of TXRAM[3] (queue pointer = 3)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM07 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM07_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM07_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM07 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM07_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM07_txram_SHIFT                          0

/***************************************************************************
 *TXRAM08 - Most significant byte of TXRAM[4] (queue pointer = 4)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM08 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM08_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM08_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM08 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM08_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM08_txram_SHIFT                          0

/***************************************************************************
 *TXRAM09 - Least significant byte of TXRAM[4] (queue pointer = 4)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM09 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM09_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM09_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM09 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM09_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM09_txram_SHIFT                          0

/***************************************************************************
 *TXRAM10 - Most significant byte of TXRAM[5] (queue pointer = 5)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM10 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM10_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM10_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM10 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM10_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM10_txram_SHIFT                          0

/***************************************************************************
 *TXRAM11 - Least significant byte of TXRAM[5] (queue pointer = 5)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM11 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM11_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM11_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM11 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM11_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM11_txram_SHIFT                          0

/***************************************************************************
 *TXRAM12 - Most significant byte of TXRAM[6] (queue pointer = 6)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM12 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM12_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM12_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM12 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM12_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM12_txram_SHIFT                          0

/***************************************************************************
 *TXRAM13 - Least significant byte of TXRAM[6] (queue pointer = 6)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM13 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM13_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM13_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM13 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM13_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM13_txram_SHIFT                          0

/***************************************************************************
 *TXRAM14 - Most significant byte of TXRAM[7] (queue pointer = 7)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM14 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM14_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM14_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM14 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM14_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM14_txram_SHIFT                          0

/***************************************************************************
 *TXRAM15 - Least significant byte of TXRAM[7] (queue pointer = 7)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM15 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM15_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM15_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM15 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM15_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM15_txram_SHIFT                          0

/***************************************************************************
 *TXRAM16 - Most significant byte of TXRAM[8] (queue pointer = 8)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM16 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM16_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM16_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM16 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM16_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM16_txram_SHIFT                          0

/***************************************************************************
 *TXRAM17 - Least significant byte of TXRAM[8] (queue pointer = 8)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM17 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM17_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM17_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM17 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM17_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM17_txram_SHIFT                          0

/***************************************************************************
 *TXRAM18 - Most significant byte of TXRAM[9] (queue pointer = 9)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM18 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM18_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM18_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM18 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM18_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM18_txram_SHIFT                          0

/***************************************************************************
 *TXRAM19 - Least significant byte of TXRAM[9] (queue pointer = 9)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM19 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM19_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM19_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM19 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM19_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM19_txram_SHIFT                          0

/***************************************************************************
 *TXRAM20 - Most significant byte of TXRAM[10] (queue pointer = 10)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM20 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM20_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM20_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM20 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM20_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM20_txram_SHIFT                          0

/***************************************************************************
 *TXRAM21 - Least significant byte of TXRAM[10] (queue pointer = 10)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM21 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM21_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM21_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM21 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM21_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM21_txram_SHIFT                          0

/***************************************************************************
 *TXRAM22 - Most significant byte of TXRAM[11] (queue pointer = 11)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM22 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM22_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM22_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM22 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM22_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM22_txram_SHIFT                          0

/***************************************************************************
 *TXRAM23 - Least significant byte of TXRAM[11] (queue pointer = 11)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM23 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM23_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM23_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM23 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM23_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM23_txram_SHIFT                          0

/***************************************************************************
 *TXRAM24 - Most significant byte of TXRAM[12] (queue pointer = 12)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM24 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM24_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM24_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM24 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM24_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM24_txram_SHIFT                          0

/***************************************************************************
 *TXRAM25 - Least significant byte of TXRAM[12] (queue pointer = 12)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM25 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM25_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM25_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM25 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM25_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM25_txram_SHIFT                          0

/***************************************************************************
 *TXRAM26 - Most significant byte of TXRAM[13] (queue pointer = 13)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM26 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM26_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM26_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM26 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM26_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM26_txram_SHIFT                          0

/***************************************************************************
 *TXRAM27 - Least significant byte of TXRAM[13] (queue pointer = 13)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM27 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM27_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM27_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM27 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM27_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM27_txram_SHIFT                          0

/***************************************************************************
 *TXRAM28 - Most significant byte of TXRAM[14] (queue pointer = 14)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM28 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM28_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM28_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM28 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM28_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM28_txram_SHIFT                          0

/***************************************************************************
 *TXRAM29 - Least significant byte of TXRAM[14] (queue pointer = 14)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM29 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM29_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM29_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM29 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM29_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM29_txram_SHIFT                          0

/***************************************************************************
 *TXRAM30 - Most significant byte of TXRAM[15] (queue pointer = 15)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM30 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM30_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM30_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM30 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM30_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM30_txram_SHIFT                          0

/***************************************************************************
 *TXRAM31 - Least significant byte of TXRAM[15] (queue pointer = 15)
 ***************************************************************************/
/* HIF_MSPI :: TXRAM31 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_TXRAM31_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_TXRAM31_reserved0_SHIFT                      8

/* HIF_MSPI :: TXRAM31 :: txram [07:00] */
#define BCHP_HIF_MSPI_TXRAM31_txram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_TXRAM31_txram_SHIFT                          0

/***************************************************************************
 *RXRAM00 - Most significant byte of RXRAM[0] (queue pointer = 0)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM00 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM00_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM00_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM00 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM00_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM00_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM01 - Least significant byte of RXRAM[0] (queue pointer = 0)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM01 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM01_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM01_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM01 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM01_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM01_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM02 - Most significant byte of RXRAM[1] (queue pointer = 1)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM02 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM02_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM02_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM02 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM02_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM02_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM03 - Least significant byte of RXRAM[1] (queue pointer = 1)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM03 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM03_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM03_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM03 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM03_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM03_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM04 - Most significant byte of RXRAM[2] (queue pointer = 2)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM04 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM04_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM04_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM04 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM04_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM04_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM05 - Least significant byte of RXRAM[2] (queue pointer = 2)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM05 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM05_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM05_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM05 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM05_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM05_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM06 - Most significant byte of RXRAM[3] (queue pointer = 3)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM06 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM06_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM06_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM06 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM06_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM06_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM07 - Least significant byte of RXRAM[3] (queue pointer = 3)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM07 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM07_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM07_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM07 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM07_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM07_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM08 - Most significant byte of RXRAM[4] (queue pointer = 4)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM08 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM08_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM08_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM08 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM08_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM08_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM09 - Least significant byte of RXRAM[4] (queue pointer = 4)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM09 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM09_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM09_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM09 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM09_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM09_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM10 - Most significant byte of RXRAM[5] (queue pointer = 5)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM10 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM10_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM10_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM10 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM10_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM10_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM11 - Least significant byte of RXRAM[5] (queue pointer = 5)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM11 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM11_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM11_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM11 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM11_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM11_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM12 - Most significant byte of RXRAM[6] (queue pointer = 6)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM12 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM12_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM12_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM12 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM12_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM12_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM13 - Least significant byte of RXRAM[6] (queue pointer = 6)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM13 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM13_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM13_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM13 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM13_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM13_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM14 - Most significant byte of RXRAM[7] (queue pointer = 7)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM14 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM14_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM14_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM14 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM14_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM14_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM15 - Least significant byte of RXRAM[7] (queue pointer = 7)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM15 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM15_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM15_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM15 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM15_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM15_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM16 - Most significant byte of RXRAM[8] (queue pointer = 8)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM16 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM16_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM16_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM16 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM16_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM16_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM17 - Least significant byte of RXRAM[8] (queue pointer = 8)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM17 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM17_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM17_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM17 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM17_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM17_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM18 - Most significant byte of RXRAM[9] (queue pointer = 9)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM18 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM18_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM18_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM18 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM18_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM18_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM19 - Least significant byte of RXRAM[9] (queue pointer = 9)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM19 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM19_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM19_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM19 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM19_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM19_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM20 - Most significant byte of RXRAM[10] (queue pointer = 10)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM20 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM20_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM20_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM20 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM20_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM20_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM21 - Least significant byte of RXRAM[10] (queue pointer = 10)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM21 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM21_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM21_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM21 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM21_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM21_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM22 - Most significant byte of RXRAM[11] (queue pointer = 11)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM22 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM22_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM22_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM22 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM22_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM22_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM23 - Least significant byte of RXRAM[11] (queue pointer = 11)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM23 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM23_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM23_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM23 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM23_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM23_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM24 - Most significant byte of RXRAM[12] (queue pointer = 12)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM24 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM24_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM24_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM24 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM24_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM24_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM25 - Least significant byte of RXRAM[12] (queue pointer = 12)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM25 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM25_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM25_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM25 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM25_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM25_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM26 - Most significant byte of RXRAM[13] (queue pointer = 13)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM26 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM26_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM26_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM26 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM26_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM26_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM27 - Least significant byte of RXRAM[13] (queue pointer = 13)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM27 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM27_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM27_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM27 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM27_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM27_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM28 - Most significant byte of RXRAM[14] (queue pointer = 14)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM28 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM28_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM28_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM28 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM28_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM28_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM29 - Least significant byte of RXRAM[14] (queue pointer = 14)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM29 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM29_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM29_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM29 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM29_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM29_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM30 - Most significant byte of RXRAM[15] (queue pointer = 15)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM30 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM30_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM30_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM30 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM30_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM30_rxram_SHIFT                          0

/***************************************************************************
 *RXRAM31 - Least significant byte of RXRAM[15] (queue pointer = 15)
 ***************************************************************************/
/* HIF_MSPI :: RXRAM31 :: reserved0 [31:08] */
#define BCHP_HIF_MSPI_RXRAM31_reserved0_MASK                       0xffffff00
#define BCHP_HIF_MSPI_RXRAM31_reserved0_SHIFT                      8

/* HIF_MSPI :: RXRAM31 :: rxram [07:00] */
#define BCHP_HIF_MSPI_RXRAM31_rxram_MASK                           0x000000ff
#define BCHP_HIF_MSPI_RXRAM31_rxram_SHIFT                          0

/***************************************************************************
 *CDRAM00 - 8-bit command (queue pointer = 0)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM00 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM00_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM00_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM00 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM00_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM00_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM01 - 8-bit command (queue pointer = 1)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM01 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM01_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM01_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM01 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM01_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM01_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM02 - 8-bit command (queue pointer = 2)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM02 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM02_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM02_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM02 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM02_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM02_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM03 - 8-bit command (queue pointer = 3)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM03 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM03_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM03_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM03 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM03_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM03_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM04 - 8-bit command (queue pointer = 4)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM04 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM04_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM04_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM04 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM04_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM04_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM05 - 8-bit command (queue pointer = 5)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM05 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM05_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM05_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM05 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM05_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM05_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM06 - 8-bit command (queue pointer = 6)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM06 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM06_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM06_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM06 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM06_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM06_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM07 - 8-bit command (queue pointer = 7)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM07 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM07_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM07_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM07 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM07_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM07_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM08 - 8-bit command (queue pointer = 8)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM08 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM08_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM08_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM08 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM08_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM08_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM09 - 8-bit command (queue pointer = 9)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM09 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM09_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM09_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM09 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM09_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM09_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM10 - 8-bit command (queue pointer = a)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM10 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM10_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM10_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM10 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM10_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM10_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM11 - 8-bit command (queue pointer = b)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM11 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM11_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM11_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM11 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM11_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM11_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM12 - 8-bit command (queue pointer = c)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM12 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM12_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM12_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM12 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM12_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM12_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM13 - 8-bit command (queue pointer = d)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM13 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM13_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM13_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM13 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM13_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM13_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM14 - 8-bit command (queue pointer = e)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM14 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM14_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM14_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM14 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM14_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM14_cdram_SHIFT                          0

/***************************************************************************
 *CDRAM15 - 8-bit command (queue pointer = f)
 ***************************************************************************/
/* HIF_MSPI :: CDRAM15 :: reserved0 [31:09] */
#define BCHP_HIF_MSPI_CDRAM15_reserved0_MASK                       0xfffffe00
#define BCHP_HIF_MSPI_CDRAM15_reserved0_SHIFT                      9

/* HIF_MSPI :: CDRAM15 :: cdram [08:00] */
#define BCHP_HIF_MSPI_CDRAM15_cdram_MASK                           0x000001ff
#define BCHP_HIF_MSPI_CDRAM15_cdram_SHIFT                          0

/***************************************************************************
 *WRITE_LOCK - Control bit to lock group of write commands
 ***************************************************************************/
/* HIF_MSPI :: WRITE_LOCK :: reserved0 [31:01] */
#define BCHP_HIF_MSPI_WRITE_LOCK_reserved0_MASK                    0xfffffffe
#define BCHP_HIF_MSPI_WRITE_LOCK_reserved0_SHIFT                   1

/* HIF_MSPI :: WRITE_LOCK :: WriteLock [00:00] */
#define BCHP_HIF_MSPI_WRITE_LOCK_WriteLock_MASK                    0x00000001
#define BCHP_HIF_MSPI_WRITE_LOCK_WriteLock_SHIFT                   0
#define BCHP_HIF_MSPI_WRITE_LOCK_WriteLock_DEFAULT                 0x00000000

/***************************************************************************
 *DISABLE_FLUSH_GEN - Debug bit to mask the generation of flush signals from Mspi
 ***************************************************************************/
/* HIF_MSPI :: DISABLE_FLUSH_GEN :: reserved0 [31:01] */
#define BCHP_HIF_MSPI_DISABLE_FLUSH_GEN_reserved0_MASK             0xfffffffe
#define BCHP_HIF_MSPI_DISABLE_FLUSH_GEN_reserved0_SHIFT            1

/* HIF_MSPI :: DISABLE_FLUSH_GEN :: DisableFlushGen [00:00] */
#define BCHP_HIF_MSPI_DISABLE_FLUSH_GEN_DisableFlushGen_MASK       0x00000001
#define BCHP_HIF_MSPI_DISABLE_FLUSH_GEN_DisableFlushGen_SHIFT      0
#define BCHP_HIF_MSPI_DISABLE_FLUSH_GEN_DisableFlushGen_DEFAULT    0x00000000

#endif /* #ifndef BCHP_HIF_MSPI_H__ */

/* End of File */
