/******************************************************************************
*  Filename:       hw_adi.h
*  Revised:        2015-01-13 16:59:55 +0100 (Tue, 13 Jan 2015)
*  Revision:       42365
*
*  Copyright (c) 2015 - 2016, Texas Instruments Incorporated
*  All rights reserved.
*
*  Redistribution and use in source and binary forms, with or without
*  modification, are permitted provided that the following conditions are met:
*
*  1) Redistributions of source code must retain the above copyright notice,
*     this list of conditions and the following disclaimer.
*
*  2) Redistributions in binary form must reproduce the above copyright notice,
*     this list of conditions and the following disclaimer in the documentation
*     and/or other materials provided with the distribution.
*
*  3) Neither the name of the ORGANIZATION nor the names of its contributors may
*     be used to endorse or promote products derived from this software without
*     specific prior written permission.
*
*  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
*  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
*  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
*  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
*  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
*  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
*  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
*  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
*  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
*  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
*  POSSIBILITY OF SUCH DAMAGE.
*
******************************************************************************/

#ifndef __HW_ADI_H__
#define __HW_ADI_H__

//*****************************************************************************
//
// This file contains macros for controlling the ADI master and
// accessing ADI slave registers via the ADI Master.
// There are 3 categories of macros in this file:
//                 - macros that provide an offset to a register
//                   located within the DDI Master itself.
//                 - macros that define bits or bitfields
//                   within the DDI Master Registers.
//                 - macros that provide an "instruction offset"
//                   that are used when accessing a ADI Slave.
//
// The macros that that provide ADI Master register offsets and
// define bits and bitfields for those registers are the typical
// macros that appear in most hw_<module>.h header files.  In
// the following example ADI_O_SLAVECONF is a macro for a
// register offset and ADI_SLAVECONF_WAITFORACK is a macro for
// a bit in that register. This example code will set the WAITFORACK
// bit in register ADI_O_SLAVECONF of the ADI Master. (Note: this
// access the Master not the Slave).
//
//    HWREG(ADI3_BASE + ADI_O_SLAVECONF) |= ADI_SLAVECONF_WAITFORACK;
//
// The "instruction offset" macros are used to pass an instruction to
// the ADI Master when accessing ADI slave registers. These macros are
// only used when accessing ADI Slave Registers. (Remember ADI
// Master Registers are accessed normally).
//
// The instructions supported when accessing an ADI Slave Register follow:
//        - Direct Access to an ADI Slave register. I.e. read or
//          write the register.
//        - Set the specified bits in a ADI Slave register.
//        - Clear the specified bits in a ADI Slave register.
//        - Mask write of 4 bits to the a ADI Slave register.
//        - Mask write of 8 bits to the a ADI Slave register.
//        - Mask write of 16 bits to the a ADI Slave register.
//
// Note: only the "Direct Access" offset should be used when reading
// a ADI Slave register. Only 4-bit reads are supported and 8 bits write are
// supported natively. If accessing wider bitfields, the read/write operation
// will be spread out over a number of transactions. This is hidden for the
// user, but can potentially be very timeconsuming. Especially of running
// on a slow clock.
//
// The generic format of using these macros for a read follows:
//       // Read low 8-bits in ADI_SLAVE_OFF
//       myushortvar = HWREGB(ADI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_DIR);
//
//       // Read high 8-bits in ADI_SLAVE_OFF (data[31:16])
//       myushortvar = HWREGB(ADI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_DIR);
//
// Notes: In the above example:
//     - ADI_MASTER_BASE is the base address of the ADI Master defined
//       in the hw_memmap.h header file.
//     - ADI_SLAVE_OFF is the ADI Slave offset defined in the
//       hw_<adi_slave>.h header file (e.g. hw_adi_3_refsys_top.h for the refsys
//       module).
//     - ADI_O_DIR is the "instruction offset" macro defined in this
//       file that specifies the Direct Access instruction.
//
// Writes can use any of the "instruction macros".
// The following examples do a "direct write" to an ADI Slave register
// ADI_SLAVE_OFF using different size operands:
//
//     // ---------- DIRECT WRITES ----------
//     // Write 32-bits aligned
//     HWREG(ADI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_DIR) = 0x12345678;
//
//     // Write 16-bits aligned to high 16-bits then low 16-bits
//     // Add 2 to get to high 16-bits.
//     HWREGH(ADI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_DIR + 2) = 0xabcd;
//     HWREGH(ADI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_DIR) = 0xef01;
//
//     // Write each byte at ADI_SLAVE_OFF, one at a time.
//     // Add 1,2,or 3 to get to bytes 1,2, or 3.
//     HWREGB(ADI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_DIR) = 0x33;
//     HWREGB(ADI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_DIR + 1) = 0x44;
//     HWREGB(ADI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_DIR + 2) = 0x55;
//     HWREGB(ADI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_DIR + 3) = 0x66;
//
//     // ---------- SET/CLR ----------
//     The set and clear functions behave similarly to eachother. Each
//     can be performed on an 8-, 16-, or 32-bit operand.
//     Examples follow:
//     // Set all odd bits in a 32-bit words
//     HWREG(ADI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_SET) = 0xaaaaaaaa;
//
//     // Clear all bits in byte 2 (data[23:16]) using 32-bit operand
//     HWREG(DDI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_CLR) = 0x00ff0000;
//
//     // Set even bits in byte 2 (data[23:16]) using 8-bit operand
//     HWREGB(ADI_MASTER_BASE + ADI_SLAVE_OFF + 2 + ADI_O_CLR) = 0x55;
//
//     // ---------- MASKED WRITES ----------
//     The mask writes are a bit different. They operate on nibbles,
//     bytes, and 16-bit elements. Two operands are required; a 'mask'
//     and 'data'; The operands are concatenated and written to the master.
//     e.g. the mask and data are combined as follows for a 16 bit masked
//     write:
//           (mask << 16) | data;
//     Examples follow:
//
//     // Do an 4 bit masked write (Nibble) of 7 to data[3:0]).
//     // Byte write is needed.
//     HWREGB(ADI_MASTER_BASE + ADI_SLAVE_OFF + ADI_O_MASK4B01) = 0xf7;
//
//     // Do an 4 bit masked write of 4 to data[7:4]).
//     // Add 1 for next nibble
//     HWREGB(DDI_MASTER_BASE + DDI_SLAVE_OFF + ADI_O_MASK4B01 + 1) = 0xf4;
//
//*****************************************************************************

//*****************************************************************************
//
// The following are defines for the ADI master instruction offsets.
//
//*****************************************************************************
#define ADI_O_DIR             0x00000000  // Offset for the direct access
                                          // instruction
#define ADI_O_SET             0x00000010  // Offset for 'Set' instruction.
#define ADI_O_CLR             0x00000020  // Offset for 'Clear' instruction.
#define ADI_O_MASK4B          0x00000040  // Offset for 4-bit masked access.
                                          // Data bit[n] is written if mask
                                          // bit[n] is set ('1').
                                          // Bits 7:4 are mask. Bits 3:0 are data.
                                          // Requires 'byte' write.
#define ADI_O_MASK8B          0x00000060  // Offset for 8-bit masked access.
                                          // Data bit[n] is written if mask
                                          // bit[n] is set ('1'). Bits 15:8 are
                                          // mask. Bits 7:0 are data. Requires
                                          // 'short' write.
#define ADI_O_MASK16B         0x00000080  // Offset for 16-bit masked access.
                                          // Data bit[n] is written if mask
                                          // bit[n] is set ('1'). Bits 31:16
                                          // are mask. Bits 15:0 are data.
                                          // Requires 'long' write.

//*****************************************************************************
//
// The following are defines for the ADI register offsets.
//
//*****************************************************************************
#define ADI_O_SLAVESTAT         0x00000030  // ADI Slave status register
#define ADI_O_SLAVECONF         0x00000038  // ADI Master configuration

//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_SLAVESTAT register.
//
//*****************************************************************************
#define ADI_SLAVESTAT_DI_REQ    0x00000002  // Read current value of DI_REQ
                                            // signal. Writing 0 to this bit
                                            // forces a sync with slave,
                                            // ensuring that req will be 0. It
                                            // is recommended to write 0 to
                                            // this register before power down
                                            // of the master.
#define ADI_SLAVESTAT_DI_REQ_M  0x00000002
#define ADI_SLAVESTAT_DI_REQ_S  1
#define ADI_SLAVESTAT_DI_ACK    0x00000001  // Read current value of DI_ACK
                                            // signal
#define ADI_SLAVESTAT_DI_ACK_M  0x00000001
#define ADI_SLAVESTAT_DI_ACK_S  0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_SLAVECONF register.
//
//*****************************************************************************
#define ADI_SLAVECONF_CONFLOCK  0x00000080  // This register is no longer
                                            // accessible when this bit is set.
                                            // (unless sticky_bit_overwrite is
                                            // asserted on top module)
#define ADI_SLAVECONF_CONFLOCK_M \
                                0x00000080
#define ADI_SLAVECONF_CONFLOCK_S 7
#define ADI_SLAVECONF_WAITFORACK \
                                0x00000004  // A transaction on the ADI
                                            // interface does not end until ack
                                            // has been received from the slave
                                            // when this bit is set.

#define ADI_SLAVECONF_WAITFORACK_M \
                                0x00000004
#define ADI_SLAVECONF_WAITFORACK_S 2
#define ADI_SLAVECONF_ADICLKSPEED_M \
                                0x00000003  // Sets the period of an ADI
                                            // transactions. All transactions
                                            // takes an even number of clock
                                            // cycles,- ADI clock rising edge
                                            // occurs in the middle of the
                                            // period. Data and ctrl to slave
                                            // is set up in beginning of cycle,
                                            // and data from slave is read in
                                            // after the transaction 00: An ADI
                                            // transaction takes 2 master clock
                                            // cyclkes 01: An ADI transaction
                                            // takes 4 master clock cycles 10:
                                            // And ADI Transaction takes 8
                                            // master clock cycles 11: An ADI
                                            // transaction takes 16 master
                                            // clock cycles

#define ADI_SLAVECONF_ADICLKSPEED_S 0

//*****************************************************************************
//
// The following are defines pseudo-magic numbers that should go away.
// New code should not use these registers and old code should be ported
// to not use these.
//
//*****************************************************************************
#define ADI_O_DIR03             0x00000000  // Direct access for adi byte
                                            // offsets 0 to 3
#define ADI_O_DIR47             0x00000004  // Direct access for adi byte
                                            // offsets 4 to 7
#define ADI_O_DIR811            0x00000008  // Direct access for adi byte
                                            // offsets 8 to 11
#define ADI_O_DIR1215           0x0000000C  // Direct access for adi byte
                                            // offsets 12 to 15
#define ADI_O_SET03             0x00000010  // Set register for ADI byte
                                            // offsets 0 to 3
#define ADI_O_SET47             0x00000014  // Set register for ADI byte
                                            // offsets 4 to 7
#define ADI_O_SET811            0x00000018  // Set register for ADI byte
                                            // offsets 8 to 11
#define ADI_O_SET1215           0x0000001C  // Set register for ADI byte
                                            // offsets 12 to 15
#define ADI_O_CLR03             0x00000020  // Clear register for ADI byte
                                            // offsets 0 to 3
#define ADI_O_CLR47             0x00000024  // Clear register for ADI byte
                                            // offsets 4 to 7
#define ADI_O_CLR811            0x00000028  // Clear register for ADI byte
                                            // offsets 8 to 11
#define ADI_O_CLR1215           0x0000002C  // Clear register for ADI byte
                                            // offsets 12 to 15
#define ADI_O_SLAVESTAT         0x00000030  // ADI Slave status register
#define ADI_O_SLAVECONF         0x00000038  // ADI Master configuration
                                            // register
#define ADI_O_MASK4B01          0x00000040  // Masked access (4m/4d) for ADI
                                            // Registers at byte offsets 0 and
                                            // 1
#define ADI_O_MASK4B23          0x00000044  // Masked access (4m/4d) for ADI
                                            // Registers at byte offsets 2 and
                                            // 3
#define ADI_O_MASK4B45          0x00000048  // Masked access (4m/4d) for ADI
                                            // Registers at byte offsets 4 and
                                            // 5
#define ADI_O_MASK4B67          0x0000004C  // Masked access (4m/4d) for ADI
                                            // Registers at byte offsets 6 and
                                            // 7
#define ADI_O_MASK4B89          0x00000050  // Masked access (4m/4d) for ADI
                                            // Registers at byte offsets 8 and
                                            // 9
#define ADI_O_MASK4B1011        0x00000054  // Masked access (4m/4d) for ADI
                                            // Registers at byte offsets 10 and
                                            // 11
#define ADI_O_MASK4B1213        0x00000058  // Masked access (4m/4d) for ADI
                                            // Registers at byte offsets 12 and
                                            // 13
#define ADI_O_MASK4B1415        0x0000005C  // Masked access (4m/4d) for ADI
                                            // Registers at byte offsets 14 and
                                            // 15
#define ADI_O_MASK8B01          0x00000060  // Masked access (8m/8d) for ADI
                                            // Registers at byte offsets 0 and
                                            // 1
#define ADI_O_MASK8B23          0x00000064  // Masked access (8m/8d) for ADI
                                            // Registers at byte offsets 2 and
                                            // 3
#define ADI_O_MASK8B45          0x00000068  // Masked access (8m/8d) for ADI
                                            // Registers at byte offsets 4 and
                                            // 5
#define ADI_O_MASK8B67          0x0000006C  // Masked access (8m/8d) for ADI
                                            // Registers at byte offsets 6 and
                                            // 7
#define ADI_O_MASK8B89          0x00000070  // Masked access (8m/8d) for ADI
                                            // Registers at byte offsets 8 and
                                            // 9
#define ADI_O_MASK8B1011        0x00000074  // Masked access (8m/8d) for ADI
                                            // Registers at byte offsets 10 and
                                            // 11
#define ADI_O_MASK8B1213        0x00000078  // Masked access (8m/8d) for ADI
                                            // Registers at byte offsets 12 and
                                            // 13
#define ADI_O_MASK8B1415        0x0000007C  // Masked access (8m/8d) for ADI
                                            // Registers at byte offsets 14 and
                                            // 15
#define ADI_O_MASK16B01         0x00000080  // Masked access (16m/16d) for ADI
                                            // Registers at byte offsets 0 and
                                            // 1
#define ADI_O_MASK16B23         0x00000084  // Masked access (16m/16d) for ADI
                                            // Registers at byte offsets 2 and
                                            // 3
#define ADI_O_MASK16B45         0x00000088  // Masked access (16m/16d) for ADI
                                            // Registers at byte offsets 4 and
                                            // 5
#define ADI_O_MASK16B67         0x0000008C  // Masked access (16m/16d) for ADI
                                            // Registers at byte offsets 6 and
                                            // 7
#define ADI_O_MASK16B89         0x00000090  // Masked access (16m/16d) for ADI
                                            // Registers at byte offsets 8 and
                                            // 9
#define ADI_O_MASK16B1011       0x00000094  // Masked access (16m/16d) for ADI
                                            // Registers at byte offsets 10 and
                                            // 11
#define ADI_O_MASK16B1213       0x00000098  // Masked access (16m/16d) for ADI
                                            // Registers at byte offsets 12 and
                                            // 13
#define ADI_O_MASK16B1415       0x0000009C  // Masked access (16m/16d) for ADI
                                            // Registers at byte offsets 14 and
                                            // 15

//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_DIR03 register.
//
//*****************************************************************************
#define ADI_DIR03_B3_M          0xFF000000  // Direct access to ADI register 3
#define ADI_DIR03_B3_S          24
#define ADI_DIR03_B2_M          0x00FF0000  // Direct access to ADI register 2
#define ADI_DIR03_B2_S          16
#define ADI_DIR03_B1_M          0x0000FF00  // Direct access to ADI register 1
#define ADI_DIR03_B1_S          8
#define ADI_DIR03_B0_M          0x000000FF  // Direct access to ADI register 0
#define ADI_DIR03_B0_S          0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_DIR47 register.
//
//*****************************************************************************
#define ADI_DIR47_B3_M          0xFF000000  // Direct access to ADI register 7
#define ADI_DIR47_B3_S          24
#define ADI_DIR47_B2_M          0x00FF0000  // Direct access to ADI register 6
#define ADI_DIR47_B2_S          16
#define ADI_DIR47_B1_M          0x0000FF00  // Direct access to ADI register 5
#define ADI_DIR47_B1_S          8
#define ADI_DIR47_B0_M          0x000000FF  // Direct access to ADI register 4
#define ADI_DIR47_B0_S          0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_DIR811 register.
//
//*****************************************************************************
#define ADI_DIR811_B3_M         0xFF000000  // Direct access to ADI register
                                            // 11
#define ADI_DIR811_B3_S         24
#define ADI_DIR811_B2_M         0x00FF0000  // Direct access to ADI register
                                            // 10
#define ADI_DIR811_B2_S         16
#define ADI_DIR811_B1_M         0x0000FF00  // Direct access to ADI register 9
#define ADI_DIR811_B1_S         8
#define ADI_DIR811_B0_M         0x000000FF  // Direct access to ADI register 8
#define ADI_DIR811_B0_S         0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_DIR1215 register.
//
//*****************************************************************************
#define ADI_DIR1215_B3_M        0xFF000000  // Direct access to ADI register
                                            // 15
#define ADI_DIR1215_B3_S        24
#define ADI_DIR1215_B2_M        0x00FF0000  // Direct access to ADI register
                                            // 14
#define ADI_DIR1215_B2_S        16
#define ADI_DIR1215_B1_M        0x0000FF00  // Direct access to ADI register
                                            // 13
#define ADI_DIR1215_B1_S        8
#define ADI_DIR1215_B0_M        0x000000FF  // Direct access to ADI register
                                            // 12
#define ADI_DIR1215_B0_S        0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_SET03 register.
//
//*****************************************************************************
#define ADI_SET03_S3_M          0xFF000000  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 3. Read returns 0.
#define ADI_SET03_S3_S          24
#define ADI_SET03_S2_M          0x00FF0000  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 2. Read returns 0.
#define ADI_SET03_S2_S          16
#define ADI_SET03_S1_M          0x0000FF00  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 1. Read returns 0.
#define ADI_SET03_S1_S          8
#define ADI_SET03_S0_M          0x000000FF  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 0. Read returns 0.
#define ADI_SET03_S0_S          0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_SET47 register.
//
//*****************************************************************************
#define ADI_SET47_S3_M          0xFF000000  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 7. Read returns 0.
#define ADI_SET47_S3_S          24
#define ADI_SET47_S2_M          0x00FF0000  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 6. Read returns 0.
#define ADI_SET47_S2_S          16
#define ADI_SET47_S1_M          0x0000FF00  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 5. Read returns 0.
#define ADI_SET47_S1_S          8
#define ADI_SET47_S0_M          0x000000FF  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 4. Read returns 0.
#define ADI_SET47_S0_S          0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_SET811 register.
//
//*****************************************************************************
#define ADI_SET811_S3_M         0xFF000000  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 11. Read returns 0.
#define ADI_SET811_S3_S         24
#define ADI_SET811_S2_M         0x00FF0000  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 10. Read returns 0.
#define ADI_SET811_S2_S         16
#define ADI_SET811_S1_M         0x0000FF00  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 9. Read returns 0.
#define ADI_SET811_S1_S         8
#define ADI_SET811_S0_M         0x000000FF  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 8. Read returns 0.
#define ADI_SET811_S0_S         0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_SET1215 register.
//
//*****************************************************************************
#define ADI_SET1215_S3_M        0xFF000000  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 15. Read returns 0.
#define ADI_SET1215_S3_S        24
#define ADI_SET1215_S2_M        0x00FF0000  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 14. Read returns 0.
#define ADI_SET1215_S2_S        16
#define ADI_SET1215_S1_M        0x0000FF00  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 13. Read returns 0.
#define ADI_SET1215_S1_S        8
#define ADI_SET1215_S0_M        0x000000FF  // A high bit value will set the
                                            // corresponding bit in ADI
                                            // register 12. Read returns 0.
#define ADI_SET1215_S0_S        0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_CLR03 register.
//
//*****************************************************************************
#define ADI_CLR03_S3_M          0xFF000000  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 3
#define ADI_CLR03_S3_S          24
#define ADI_CLR03_S2_M          0x00FF0000  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 2
#define ADI_CLR03_S2_S          16
#define ADI_CLR03_S1_M          0x0000FF00  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 1
#define ADI_CLR03_S1_S          8
#define ADI_CLR03_S0_M          0x000000FF  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 0
#define ADI_CLR03_S0_S          0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_CLR47 register.
//
//*****************************************************************************
#define ADI_CLR47_S3_M          0xFF000000  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 7
#define ADI_CLR47_S3_S          24
#define ADI_CLR47_S2_M          0x00FF0000  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 6
#define ADI_CLR47_S2_S          16
#define ADI_CLR47_S1_M          0x0000FF00  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 5
#define ADI_CLR47_S1_S          8
#define ADI_CLR47_S0_M          0x000000FF  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 4
#define ADI_CLR47_S0_S          0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_CLR811 register.
//
//*****************************************************************************
#define ADI_CLR811_S3_M         0xFF000000  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 11
#define ADI_CLR811_S3_S         24
#define ADI_CLR811_S2_M         0x00FF0000  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 10
#define ADI_CLR811_S2_S         16
#define ADI_CLR811_S1_M         0x0000FF00  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 9
#define ADI_CLR811_S1_S         8
#define ADI_CLR811_S0_M         0x000000FF  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 8
#define ADI_CLR811_S0_S         0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_CLR1215 register.
//
//*****************************************************************************
#define ADI_CLR1215_S3_M        0xFF000000  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 15
#define ADI_CLR1215_S3_S        24
#define ADI_CLR1215_S2_M        0x00FF0000  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 14
#define ADI_CLR1215_S2_S        16
#define ADI_CLR1215_S1_M        0x0000FF00  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 13
#define ADI_CLR1215_S1_S        8
#define ADI_CLR1215_S0_M        0x000000FF  // A high bit value will clear the
                                            // corresponding bit in ADI
                                            // register 12
#define ADI_CLR1215_S0_S        0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_SLAVESTAT register.
//
//*****************************************************************************
#define ADI_SLAVESTAT_DI_REQ    0x00000002  // Read current value of DI_REQ
                                            // signal. Writing 0 to this bit
                                            // forces a sync with slave,
                                            // ensuring that req will be 0. It
                                            // is recommended to write 0 to
                                            // this register before power down
                                            // of the master.
#define ADI_SLAVESTAT_DI_REQ_M  0x00000002
#define ADI_SLAVESTAT_DI_REQ_S  1
#define ADI_SLAVESTAT_DI_ACK    0x00000001  // Read current value of DI_ACK
                                            // signal
#define ADI_SLAVESTAT_DI_ACK_M  0x00000001
#define ADI_SLAVESTAT_DI_ACK_S  0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_SLAVECONF register.
//
//*****************************************************************************
#define ADI_SLAVECONF_CONFLOCK  0x00000080  // This register is no longer
                                            // accessible when this bit is set.
                                            // (unless sticky_bit_overwrite is
                                            // asserted on top module)
#define ADI_SLAVECONF_CONFLOCK_M \
                                0x00000080
#define ADI_SLAVECONF_CONFLOCK_S 7
#define ADI_SLAVECONF_WAITFORACK \
                                0x00000004  // A transaction on the ADI
                                            // interface does not end until ack
                                            // has been received from the slave
                                            // when this bit is set.

#define ADI_SLAVECONF_WAITFORACK_M \
                                0x00000004
#define ADI_SLAVECONF_WAITFORACK_S 2
#define ADI_SLAVECONF_ADICLKSPEED_M \
                                0x00000003  // Sets the period of an ADI
                                            // transactions. All transactions
                                            // takes an even number of clock
                                            // cycles,- ADI clock rising edge
                                            // occurs in the middle of the
                                            // period. Data and ctrl to slave
                                            // is set up in beginning of cycle,
                                            // and data from slave is read in
                                            // after the transaction 00: An ADI
                                            // transaction takes 2 master clock
                                            // cyclkes 01: An ADI transaction
                                            // takes 4 master clock cycles 10:
                                            // And ADI Transaction takes 8
                                            // master clock cycles 11: An ADI
                                            // transaction takes 16 master
                                            // clock cycles

#define ADI_SLAVECONF_ADICLKSPEED_S 0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_MASK4B01 register.
//
//*****************************************************************************
#define ADI_MASK4B01_M1H_M      0xF0000000  // Mask for bits [7:4] in ADI
                                            // register 1
#define ADI_MASK4B01_M1H_S      28
#define ADI_MASK4B01_D1H_M      0x0F000000  // Data for bits [7:4] in ADI
                                            // register 1, - only bits selected
                                            // by mask M1H will be affected by
                                            // access
#define ADI_MASK4B01_D1H_S      24
#define ADI_MASK4B01_M1L_M      0x00F00000  // Mask for bits [3:0] in ADI
                                            // register 1
#define ADI_MASK4B01_M1L_S      20
#define ADI_MASK4B01_D1L_M      0x000F0000  // Data for bits [3:0] in ADI
                                            // register 1, - only bits selected
                                            // by mask M1L will be affected by
                                            // access
#define ADI_MASK4B01_D1L_S      16
#define ADI_MASK4B01_M0H_M      0x0000F000  // Mask for bits [7:4] in ADI
                                            // register 0
#define ADI_MASK4B01_M0H_S      12
#define ADI_MASK4B01_D0H_M      0x00000F00  // Data for bits [7:4] in ADI
                                            // register 0, - only bits selected
                                            // by mask M0H will be affected by
                                            // access
#define ADI_MASK4B01_D0H_S      8
#define ADI_MASK4B01_M0L_M      0x000000F0  // Mask for bits [3:0] in ADI
                                            // register 0
#define ADI_MASK4B01_M0L_S      4
#define ADI_MASK4B01_D0L_M      0x0000000F  // Data for bits [3:0] in ADI
                                            // register 0, - only bits selected
                                            // by mask M0L will be affected by
                                            // access
#define ADI_MASK4B01_D0L_S      0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_MASK4B23 register.
//
//*****************************************************************************
#define ADI_MASK4B23_M1H_M      0xF0000000  // Mask for bits [7:4] in ADI
                                            // register 3
#define ADI_MASK4B23_M1H_S      28
#define ADI_MASK4B23_D1H_M      0x0F000000  // Data for bits [7:4] in ADI
                                            // register 3, - only bits selected
                                            // by mask M1H will be affected by
                                            // access
#define ADI_MASK4B23_D1H_S      24
#define ADI_MASK4B23_M1L_M      0x00F00000  // Mask for bits [3:0] in ADI
                                            // register 3
#define ADI_MASK4B23_M1L_S      20
#define ADI_MASK4B23_D1L_M      0x000F0000  // Data for bits [3:0] in ADI
                                            // register 3, - only bits selected
                                            // by mask M1L will be affected by
                                            // access
#define ADI_MASK4B23_D1L_S      16
#define ADI_MASK4B23_M0H_M      0x0000F000  // Mask for bits [7:4] in ADI
                                            // register 2
#define ADI_MASK4B23_M0H_S      12
#define ADI_MASK4B23_D0H_M      0x00000F00  // Data for bits [7:4] in ADI
                                            // register 2, - only bits selected
                                            // by mask M0H will be affected by
                                            // access
#define ADI_MASK4B23_D0H_S      8
#define ADI_MASK4B23_M0L_M      0x000000F0  // Mask for bits [3:0] in ADI
                                            // register 2
#define ADI_MASK4B23_M0L_S      4
#define ADI_MASK4B23_D0L_M      0x0000000F  // Data for bits [3:0] in ADI
                                            // register 2, - only bits selected
                                            // by mask M0L will be affected by
                                            // access
#define ADI_MASK4B23_D0L_S      0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_MASK4B45 register.
//
//*****************************************************************************
#define ADI_MASK4B45_M1H_M      0xF0000000  // Mask for bits [7:4] in ADI
                                            // register 5
#define ADI_MASK4B45_M1H_S      28
#define ADI_MASK4B45_D1H_M      0x0F000000  // Data for bits [7:4] in ADI
                                            // register 5, - only bits selected
                                            // by mask M1H will be affected by
                                            // access
#define ADI_MASK4B45_D1H_S      24
#define ADI_MASK4B45_M1L_M      0x00F00000  // Mask for bits [3:0] in ADI
                                            // register 5
#define ADI_MASK4B45_M1L_S      20
#define ADI_MASK4B45_D1L_M      0x000F0000  // Data for bits [3:0] in ADI
                                            // register 5, - only bits selected
                                            // by mask M1L will be affected by
                                            // access
#define ADI_MASK4B45_D1L_S      16
#define ADI_MASK4B45_M0H_M      0x0000F000  // Mask for bits [7:4] in ADI
                                            // register 4
#define ADI_MASK4B45_M0H_S      12
#define ADI_MASK4B45_D0H_M      0x00000F00  // Data for bits [7:4] in ADI
                                            // register 4, - only bits selected
                                            // by mask M0H will be affected by
                                            // access
#define ADI_MASK4B45_D0H_S      8
#define ADI_MASK4B45_M0L_M      0x000000F0  // Mask for bits [3:0] in ADI
                                            // register 4
#define ADI_MASK4B45_M0L_S      4
#define ADI_MASK4B45_D0L_M      0x0000000F  // Data for bits [3:0] in ADI
                                            // register 4, - only bits selected
                                            // by mask M0L will be affected by
                                            // access
#define ADI_MASK4B45_D0L_S      0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_MASK4B67 register.
//
//*****************************************************************************
#define ADI_MASK4B67_M1H_M      0xF0000000  // Mask for bits [7:4] in ADI
                                            // register 7
#define ADI_MASK4B67_M1H_S      28
#define ADI_MASK4B67_D1H_M      0x0F000000  // Data for bits [7:4] in ADI
                                            // register 7, - only bits selected
                                            // by mask M1H will be affected by
                                            // access
#define ADI_MASK4B67_D1H_S      24
#define ADI_MASK4B67_M1L_M      0x00F00000  // Mask for bits [3:0] in ADI
                                            // register 7
#define ADI_MASK4B67_M1L_S      20
#define ADI_MASK4B67_D1L_M      0x000F0000  // Data for bits [3:0] in ADI
                                            // register 7, - only bits selected
                                            // by mask M1L will be affected by
                                            // access
#define ADI_MASK4B67_D1L_S      16
#define ADI_MASK4B67_M0H_M      0x0000F000  // Mask for bits [7:4] in ADI
                                            // register 6
#define ADI_MASK4B67_M0H_S      12
#define ADI_MASK4B67_D0H_M      0x00000F00  // Data for bits [7:4] in ADI
                                            // register 6, - only bits selected
                                            // by mask M0H will be affected by
                                            // access
#define ADI_MASK4B67_D0H_S      8
#define ADI_MASK4B67_M0L_M      0x000000F0  // Mask for bits [3:0] in ADI
                                            // register 6
#define ADI_MASK4B67_M0L_S      4
#define ADI_MASK4B67_D0L_M      0x0000000F  // Data for bits [3:0] in ADI
                                            // register 6, - only bits selected
                                            // by mask M0L will be affected by
                                            // access
#define ADI_MASK4B67_D0L_S      0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_MASK4B89 register.
//
//*****************************************************************************
#define ADI_MASK4B89_M1H_M      0xF0000000  // Mask for bits [7:4] in ADI
                                            // register 9
#define ADI_MASK4B89_M1H_S      28
#define ADI_MASK4B89_D1H_M      0x0F000000  // Data for bits [7:4] in ADI
                                            // register 9, - only bits selected
                                            // by mask M1H will be affected by
                                            // access
#define ADI_MASK4B89_D1H_S      24
#define ADI_MASK4B89_M1L_M      0x00F00000  // Mask for bits [3:0] in ADI
                                            // register 9
#define ADI_MASK4B89_M1L_S      20
#define ADI_MASK4B89_D1L_M      0x000F0000  // Data for bits [3:0] in ADI
                                            // register 9, - only bits selected
                                            // by mask M1L will be affected by
                                            // access
#define ADI_MASK4B89_D1L_S      16
#define ADI_MASK4B89_M0H_M      0x0000F000  // Mask for bits [7:4] in ADI
                                            // register 8
#define ADI_MASK4B89_M0H_S      12
#define ADI_MASK4B89_D0H_M      0x00000F00  // Data for bits [7:4] in ADI
                                            // register 8, - only bits selected
                                            // by mask M0H will be affected by
                                            // access
#define ADI_MASK4B89_D0H_S      8
#define ADI_MASK4B89_M0L_M      0x000000F0  // Mask for bits [3:0] in ADI
                                            // register 8
#define ADI_MASK4B89_M0L_S      4
#define ADI_MASK4B89_D0L_M      0x0000000F  // Data for bits [3:0] in ADI
                                            // register 8, - only bits selected
                                            // by mask M0L will be affected by
                                            // access
#define ADI_MASK4B89_D0L_S      0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK4B1011 register.
//
//*****************************************************************************
#define ADI_MASK4B1011_M1H_M    0xF0000000  // Mask for bits [7:4] in ADI
                                            // register 11
#define ADI_MASK4B1011_M1H_S    28
#define ADI_MASK4B1011_D1H_M    0x0F000000  // Data for bits [7:4] in ADI
                                            // register 11, - only bits
                                            // selected by mask M1H will be
                                            // affected by access
#define ADI_MASK4B1011_D1H_S    24
#define ADI_MASK4B1011_M1L_M    0x00F00000  // Mask for bits [3:0] in ADI
                                            // register 11
#define ADI_MASK4B1011_M1L_S    20
#define ADI_MASK4B1011_D1L_M    0x000F0000  // Data for bits [3:0] in ADI
                                            // register 11, - only bits
                                            // selected by mask M1L will be
                                            // affected by access
#define ADI_MASK4B1011_D1L_S    16
#define ADI_MASK4B1011_M0H_M    0x0000F000  // Mask for bits [7:4] in ADI
                                            // register 10
#define ADI_MASK4B1011_M0H_S    12
#define ADI_MASK4B1011_D0H_M    0x00000F00  // Data for bits [7:4] in ADI
                                            // register 10, - only bits
                                            // selected by mask M0H will be
                                            // affected by access
#define ADI_MASK4B1011_D0H_S    8
#define ADI_MASK4B1011_M0L_M    0x000000F0  // Mask for bits [3:0] in ADI
                                            // register 10
#define ADI_MASK4B1011_M0L_S    4
#define ADI_MASK4B1011_D0L_M    0x0000000F  // Data for bits [3:0] in ADI
                                            // register 10, - only bits
                                            // selected by mask M0L will be
                                            // affected by access
#define ADI_MASK4B1011_D0L_S    0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK4B1213 register.
//
//*****************************************************************************
#define ADI_MASK4B1213_M1H_M    0xF0000000  // Mask for bits [7:4] in ADI
                                            // register 13
#define ADI_MASK4B1213_M1H_S    28
#define ADI_MASK4B1213_D1H_M    0x0F000000  // Data for bits [7:4] in ADI
                                            // register 13, - only bits
                                            // selected by mask M1H will be
                                            // affected by access
#define ADI_MASK4B1213_D1H_S    24
#define ADI_MASK4B1213_M1L_M    0x00F00000  // Mask for bits [3:0] in ADI
                                            // register 13
#define ADI_MASK4B1213_M1L_S    20
#define ADI_MASK4B1213_D1L_M    0x000F0000  // Data for bits [3:0] in ADI
                                            // register 13, - only bits
                                            // selected by mask M1L will be
                                            // affected by access
#define ADI_MASK4B1213_D1L_S    16
#define ADI_MASK4B1213_M0H_M    0x0000F000  // Mask for bits [7:4] in ADI
                                            // register 12
#define ADI_MASK4B1213_M0H_S    12
#define ADI_MASK4B1213_D0H_M    0x00000F00  // Data for bits [7:4] in ADI
                                            // register 12, - only bits
                                            // selected by mask M0H will be
                                            // affected by access
#define ADI_MASK4B1213_D0H_S    8
#define ADI_MASK4B1213_M0L_M    0x000000F0  // Mask for bits [3:0] in ADI
                                            // register 12
#define ADI_MASK4B1213_M0L_S    4
#define ADI_MASK4B1213_D0L_M    0x0000000F  // Data for bits [3:0] in ADI
                                            // register 12, - only bits
                                            // selected by mask M0L will be
                                            // affected by access
#define ADI_MASK4B1213_D0L_S    0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK4B1415 register.
//
//*****************************************************************************
#define ADI_MASK4B1415_M1H_M    0xF0000000  // Mask for bits [7:4] in ADI
                                            // register 15
#define ADI_MASK4B1415_M1H_S    28
#define ADI_MASK4B1415_D1H_M    0x0F000000  // Data for bits [7:4] in ADI
                                            // register 15, - only bits
                                            // selected by mask M1H will be
                                            // affected by access
#define ADI_MASK4B1415_D1H_S    24
#define ADI_MASK4B1415_M1L_M    0x00F00000  // Mask for bits [3:0] in ADI
                                            // register 15
#define ADI_MASK4B1415_M1L_S    20
#define ADI_MASK4B1415_D1L_M    0x000F0000  // Data for bits [3:0] in ADI
                                            // register 15, - only bits
                                            // selected by mask M1L will be
                                            // affected by access
#define ADI_MASK4B1415_D1L_S    16
#define ADI_MASK4B1415_M0H_M    0x0000F000  // Mask for bits [7:4] in ADI
                                            // register 14
#define ADI_MASK4B1415_M0H_S    12
#define ADI_MASK4B1415_D0H_M    0x00000F00  // Data for bits [7:4] in ADI
                                            // register 14, - only bits
                                            // selected by mask M0H will be
                                            // affected by access
#define ADI_MASK4B1415_D0H_S    8
#define ADI_MASK4B1415_M0L_M    0x000000F0  // Mask for bits [3:0] in ADI
                                            // register 14
#define ADI_MASK4B1415_M0L_S    4
#define ADI_MASK4B1415_D0L_M    0x0000000F  // Data for bits [3:0] in ADI
                                            // register 14, - only bits
                                            // selected by mask M0L will be
                                            // affected by access
#define ADI_MASK4B1415_D0L_S    0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_MASK8B01 register.
//
//*****************************************************************************
#define ADI_MASK8B01_M1_M       0xFF000000  // Mask for ADI register 1
#define ADI_MASK8B01_M1_S       24
#define ADI_MASK8B01_D1_M       0x00FF0000  // Data for ADI register 1, - only
                                            // bits selected by mask M1 will be
                                            // affected by access
#define ADI_MASK8B01_D1_S       16
#define ADI_MASK8B01_M0_M       0x0000FF00  // Mask for ADI register 0
#define ADI_MASK8B01_M0_S       8
#define ADI_MASK8B01_D0_M       0x000000FF  // Data for ADI register 0, - only
                                            // bits selected by mask M0 will be
                                            // affected by access
#define ADI_MASK8B01_D0_S       0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_MASK8B23 register.
//
//*****************************************************************************
#define ADI_MASK8B23_M1_M       0xFF000000  // Mask for ADI register 3
#define ADI_MASK8B23_M1_S       24
#define ADI_MASK8B23_D1_M       0x00FF0000  // Data for ADI register 3, - only
                                            // bits selected by mask M1 will be
                                            // affected by access
#define ADI_MASK8B23_D1_S       16
#define ADI_MASK8B23_M0_M       0x0000FF00  // Mask for ADI register 2
#define ADI_MASK8B23_M0_S       8
#define ADI_MASK8B23_D0_M       0x000000FF  // Data for ADI register 2, - only
                                            // bits selected by mask M0 will be
                                            // affected by access
#define ADI_MASK8B23_D0_S       0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_MASK8B45 register.
//
//*****************************************************************************
#define ADI_MASK8B45_M1_M       0xFF000000  // Mask for ADI register 5
#define ADI_MASK8B45_M1_S       24
#define ADI_MASK8B45_D1_M       0x00FF0000  // Data for ADI register 5, - only
                                            // bits selected by mask M1 will be
                                            // affected by access
#define ADI_MASK8B45_D1_S       16
#define ADI_MASK8B45_M0_M       0x0000FF00  // Mask for ADI register 4
#define ADI_MASK8B45_M0_S       8
#define ADI_MASK8B45_D0_M       0x000000FF  // Data for ADI register 4, - only
                                            // bits selected by mask M0 will be
                                            // affected by access
#define ADI_MASK8B45_D0_S       0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_MASK8B67 register.
//
//*****************************************************************************
#define ADI_MASK8B67_M1_M       0xFF000000  // Mask for ADI register 7
#define ADI_MASK8B67_M1_S       24
#define ADI_MASK8B67_D1_M       0x00FF0000  // Data for ADI register 7, - only
                                            // bits selected by mask M1 will be
                                            // affected by access
#define ADI_MASK8B67_D1_S       16
#define ADI_MASK8B67_M0_M       0x0000FF00  // Mask for ADI register 6
#define ADI_MASK8B67_M0_S       8
#define ADI_MASK8B67_D0_M       0x000000FF  // Data for ADI register 6, - only
                                            // bits selected by mask M0 will be
                                            // affected by access
#define ADI_MASK8B67_D0_S       0
//*****************************************************************************
//
// The following are defines for the bit fields in the ADI_O_MASK8B89 register.
//
//*****************************************************************************
#define ADI_MASK8B89_M1_M       0xFF000000  // Mask for ADI register 9
#define ADI_MASK8B89_M1_S       24
#define ADI_MASK8B89_D1_M       0x00FF0000  // Data for ADI register 9, - only
                                            // bits selected by mask M1 will be
                                            // affected by access
#define ADI_MASK8B89_D1_S       16
#define ADI_MASK8B89_M0_M       0x0000FF00  // Mask for ADI register 8
#define ADI_MASK8B89_M0_S       8
#define ADI_MASK8B89_D0_M       0x000000FF  // Data for ADI register 8, - only
                                            // bits selected by mask M0 will be
                                            // affected by access
#define ADI_MASK8B89_D0_S       0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK8B1011 register.
//
//*****************************************************************************
#define ADI_MASK8B1011_M1_M     0xFF000000  // Mask for ADI register 11
#define ADI_MASK8B1011_M1_S     24
#define ADI_MASK8B1011_D1_M     0x00FF0000  // Data for ADI register 11, -
                                            // only bits selected by mask M1
                                            // will be affected by access
#define ADI_MASK8B1011_D1_S     16
#define ADI_MASK8B1011_M0_M     0x0000FF00  // Mask for ADI register 10
#define ADI_MASK8B1011_M0_S     8
#define ADI_MASK8B1011_D0_M     0x000000FF  // Data for ADI register 10, -
                                            // only bits selected by mask M0
                                            // will be affected by access
#define ADI_MASK8B1011_D0_S     0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK8B1213 register.
//
//*****************************************************************************
#define ADI_MASK8B1213_M1_M     0xFF000000  // Mask for ADI register 13
#define ADI_MASK8B1213_M1_S     24
#define ADI_MASK8B1213_D1_M     0x00FF0000  // Data for ADI register 13, -
                                            // only bits selected by mask M1
                                            // will be affected by access
#define ADI_MASK8B1213_D1_S     16
#define ADI_MASK8B1213_M0_M     0x0000FF00  // Mask for ADI register 12
#define ADI_MASK8B1213_M0_S     8
#define ADI_MASK8B1213_D0_M     0x000000FF  // Data for ADI register 12, -
                                            // only bits selected by mask M0
                                            // will be affected by access
#define ADI_MASK8B1213_D0_S     0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK8B1415 register.
//
//*****************************************************************************
#define ADI_MASK8B1415_M1_M     0xFF000000  // Mask for ADI register 15
#define ADI_MASK8B1415_M1_S     24
#define ADI_MASK8B1415_D1_M     0x00FF0000  // Data for ADI register 15, -
                                            // only bits selected by mask M1
                                            // will be affected by access
#define ADI_MASK8B1415_D1_S     16
#define ADI_MASK8B1415_M0_M     0x0000FF00  // Mask for ADI register 14
#define ADI_MASK8B1415_M0_S     8
#define ADI_MASK8B1415_D0_M     0x000000FF  // Data for ADI register 14, -
                                            // only bits selected by mask M0
                                            // will be affected by access
#define ADI_MASK8B1415_D0_S     0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK16B01 register.
//
//*****************************************************************************
#define ADI_MASK16B01_M_M       0xFFFF0000  // Mask for ADI register 0 and 1
#define ADI_MASK16B01_M_S       16
#define ADI_MASK16B01_D_M       0x0000FFFF  // Data for ADI register at
                                            // offsets 0 and 1, - only bits
                                            // selected by mask M will be
                                            // affected by access
#define ADI_MASK16B01_D_S       0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK16B23 register.
//
//*****************************************************************************
#define ADI_MASK16B23_M_M       0xFFFF0000  // Mask for ADI register 2 and 3
#define ADI_MASK16B23_M_S       16
#define ADI_MASK16B23_D_M       0x0000FFFF  // Data for ADI register at
                                            // offsets 2 and 3, - only bits
                                            // selected by mask M will be
                                            // affected by access
#define ADI_MASK16B23_D_S       0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK16B45 register.
//
//*****************************************************************************
#define ADI_MASK16B45_M_M       0xFFFF0000  // Mask for ADI register 4 and 5
#define ADI_MASK16B45_M_S       16
#define ADI_MASK16B45_D_M       0x0000FFFF  // Data for ADI register at
                                            // offsets 4 and 5, - only bits
                                            // selected by mask M will be
                                            // affected by access
#define ADI_MASK16B45_D_S       0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK16B67 register.
//
//*****************************************************************************
#define ADI_MASK16B67_M_M       0xFFFF0000  // Mask for ADI register 6 and 7
#define ADI_MASK16B67_M_S       16
#define ADI_MASK16B67_D_M       0x0000FFFF  // Data for ADI register at
                                            // offsets 6 and 7, - only bits
                                            // selected by mask M will be
                                            // affected by access
#define ADI_MASK16B67_D_S       0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK16B89 register.
//
//*****************************************************************************
#define ADI_MASK16B89_M_M       0xFFFF0000  // Mask for ADI register 8 and 9
#define ADI_MASK16B89_M_S       16
#define ADI_MASK16B89_D_M       0x0000FFFF  // Data for ADI register at
                                            // offsets 8 and 9, - only bits
                                            // selected by mask M will be
                                            // affected by access
#define ADI_MASK16B89_D_S       0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK16B1011 register.
//
//*****************************************************************************
#define ADI_MASK16B1011_M_M     0xFFFF0000  // Mask for ADI register 10 and 11
#define ADI_MASK16B1011_M_S     16
#define ADI_MASK16B1011_D_M     0x0000FFFF  // Data for ADI register at
                                            // offsets 10 and 11, - only bits
                                            // selected by mask M will be
                                            // affected by access
#define ADI_MASK16B1011_D_S     0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK16B1213 register.
//
//*****************************************************************************
#define ADI_MASK16B1213_M_M     0xFFFF0000  // Mask for ADI register 12 and 13
#define ADI_MASK16B1213_M_S     16
#define ADI_MASK16B1213_D_M     0x0000FFFF  // Data for ADI register at
                                            // offsets 12 and 13, - only bits
                                            // selected by mask M will be
                                            // affected by access
#define ADI_MASK16B1213_D_S     0
//*****************************************************************************
//
// The following are defines for the bit fields in the
// ADI_O_MASK16B1415 register.
//
//*****************************************************************************
#define ADI_MASK16B1415_M_M     0xFFFF0000  // Mask for ADI register 14 and 15
#define ADI_MASK16B1415_M_S     16
#define ADI_MASK16B1415_D_M     0x0000FFFF  // Data for ADI register at
                                            // offsets 14 and 15, - only bits
                                            // selected by mask M will be
                                            // affected by access
#define ADI_MASK16B1415_D_S     0

#endif // __HW_ADI_H__
