openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

merlin16_enum.h (6025B)


      1 /******************************************************************************
      2  ******************************************************************************
      3  *  Revision      :   *
      4  *                                                                            *
      5  *  Description   :  Enum types used by Serdes API functions                  *
      6  *                                                                            *
      7  * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file.
      8  * 
      9  * Copyright 2007-2019 Broadcom Inc. All rights reserved.                                                      *
     10  *  No portions of this material may be reproduced in any form without        *
     11  *  the written permission of:                                                *
     12  *      Broadcom Corporation                                                  *
     13  *      5300 California Avenue                                                *
     14  *      Irvine, CA  92617                                                     *
     15  *                                                                            *
     16  *  All information contained in this document is Broadcom Corporation        *
     17  *  company private proprietary, and trade secret.                            *
     18  */
     19 
     20 /** @file merlin16_enum.h
     21  * Enum types used by Serdes API functions
     22  */
     23 
     24 #ifndef MERLIN16_API_ENUM_H
     25 #define MERLIN16_API_ENUM_H
     26 
     27 #include "merlin16_ipconfig.h"
     28 #ifdef NON_SDK
     29 #include <stdint.h>
     30 #endif
     31 
     32 
     33 enum merlin16_pll_refclk_enum {
     34     MERLIN16_PLL_REFCLK_UNKNOWN = 0, /* Refclk value to be determined by API. */
     35     MERLIN16_PLL_REFCLK_50MHZ          = 0x00100032UL, /* 50 MHz          */
     36     MERLIN16_PLL_REFCLK_125MHZ         = 0x0010007DUL, /* 125 MHz         */
     37     MERLIN16_PLL_REFCLK_156P25MHZ      = 0x00400271UL, /* 156.25 MHz      */
     38     MERLIN16_PLL_REFCLK_161P1328125MHZ = 0x08005091UL  /* 161.1328125 MHz */
     39     };
     40 
     41 
     42 enum merlin16_pll_div_enum {
     43     MERLIN16_PLL_DIV_UNKNOWN = 0, /* Divide value to be determined by API. */
     44     MERLIN16_PLL_DIV_52P751515  = (int)0xC0634034, /* Divide by 52.751515  */
     45     MERLIN16_PLL_DIV_54P4       = (int)0x66668036, /* Divide by 54.4       */
     46     MERLIN16_PLL_DIV_58P181818  = (int)0x2E8BC03A, /* Divide by 58.181818  */
     47     MERLIN16_PLL_DIV_60         = (int)0x0000003C, /* Divide by 60         */
     48     MERLIN16_PLL_DIV_62P060606  = (int)0x0F84003E, /* Divide by 62.060606  */
     49     MERLIN16_PLL_DIV_64         = (int)0x00000040, /* Divide by 64         */
     50     MERLIN16_PLL_DIV_66         = (int)0x00000042, /* Divide by 66         */
     51     MERLIN16_PLL_DIV_66P460703  = (int)0x75F0C042, /* Divide by 66.460703  */
     52     MERLIN16_PLL_DIV_66P743079  = (int)0xBE3A8042, /* Divide by 66.743079  */
     53     MERLIN16_PLL_DIV_67P878788  = (int)0xE0F84043, /* Divide by 67.878788  */
     54     MERLIN16_PLL_DIV_68         = (int)0x00000044, /* Divide by 68         */
     55     MERLIN16_PLL_DIV_68P537598  = (int)0x89A00044, /* Divide by 68.537598  */
     56     MERLIN16_PLL_DIV_68P570764  = (int)0x921D8044, /* Divide by 68.570764  */
     57     MERLIN16_PLL_DIV_68P828796  = (int)0xD42C0044, /* Divide by 68.828796  */
     58     MERLIN16_PLL_DIV_68P856242  = (int)0xDB32C044, /* Divide by 68.856242  */
     59     MERLIN16_PLL_DIV_69P152458  = (int)0x27078045, /* Divide by 69.152458  */
     60     MERLIN16_PLL_DIV_69P389964  = (int)0x63D4C045, /* Divide by 69.389964  */
     61     MERLIN16_PLL_DIV_69P818182  = (int)0xD1748045, /* Divide by 69.818182  */
     62     MERLIN16_PLL_DIV_70         = (int)0x00000046, /* Divide by 70         */
     63     MERLIN16_PLL_DIV_70P713596  = (int)0xB6AE4046, /* Divide by 70.713596  */
     64     MERLIN16_PLL_DIV_71P008     = (int)0x020C4047, /* Divide by 71.008     */
     65     MERLIN16_PLL_DIV_71P112952  = (int)0x1CEA8047, /* Divide by 71.P112952 */
     66     MERLIN16_PLL_DIV_71P31347   = (int)0x503F8047, /* Divide by 71.31347   */
     67     MERLIN16_PLL_DIV_71P5584    = (int)0x8EF34047, /* Divide by 71.5584    */
     68     MERLIN16_PLL_DIV_72         = (int)0x00000048, /* Divide by 72         */
     69     MERLIN16_PLL_DIV_73P335232  = (int)0x55D1C049, /* Divide by 73.335232  */
     70     MERLIN16_PLL_DIV_73P6       = (int)0x9999C049, /* Divide by 73.6       */
     71     MERLIN16_PLL_DIV_75         = (int)0x0000004B, /* Divide by 75         */
     72     MERLIN16_PLL_DIV_80         = (int)0x00000050, /* Divide by 80         */
     73     MERLIN16_PLL_DIV_82P5       = (int)0x80000052, /* Divide by 82.5       */
     74     MERLIN16_PLL_DIV_85P671997  = (int)0xAC080055, /* Divide by 85.671997  */
     75     MERLIN16_PLL_DIV_86P036     = (int)0x09374056, /* Divide by 86.036     */
     76     MERLIN16_PLL_DIV_87P5       = (int)0x80000057, /* Divide by 87.5       */
     77     MERLIN16_PLL_DIV_88P392     = (int)0x645A4058, /* Divide by 88.392     */
     78     MERLIN16_PLL_DIV_88P76      = (int)0xC28F8058, /* Divide by 88.76      */
     79     MERLIN16_PLL_DIV_89P141838  = (int)0x244F8059, /* Divide by 89.141838  */
     80     MERLIN16_PLL_DIV_89P447998  = (int)0x72B00059, /* Divide by 89.447998  */
     81     MERLIN16_PLL_DIV_90         = (int)0x0000005A, /* Divide by 90         */
     82     MERLIN16_PLL_DIV_91P669037  = (int)0xAB46005B, /* Divide by 91.669037  */
     83     MERLIN16_PLL_DIV_92         = (int)0x0000005C, /* Divide by 92         */
     84     MERLIN16_PLL_DIV_100        = (int)0x00000064, /* Divide by 100        */
     85     MERLIN16_PLL_DIV_170        = (int)0x000000AA, /* Divide by 170        */
     86     MERLIN16_PLL_DIV_187P5      = (int)0x800000BB, /* Divide by 187.5      */
     87     MERLIN16_PLL_DIV_200        = (int)0x000000C8, /* Divide by 200        */
     88     MERLIN16_PLL_DIV_206P25     = (int)0x400000CE  /* Divide by 206.25     */
     89 };
     90 
     91 /** TX AFE Settings Enum */
     92 enum merlin16_tx_afe_settings_enum {
     93     TX_AFE_PRE,
     94     TX_AFE_MAIN,
     95     TX_AFE_POST1,
     96     TX_AFE_POST2,
     97     TX_AFE_POST3,
     98     TX_AFE_RPARA
     99 };
    100 
    101 
    102 /** PLL Configuration Options Enum */
    103 enum merlin16_pll_option_enum {
    104     MERLIN16_PLL_OPTION_NONE,
    105     MERLIN16_PLL_OPTION_REFCLK_DOUBLER_EN,
    106     MERLIN16_PLL_OPTION_REFCLK_DIV2_EN,
    107     MERLIN16_PLL_OPTION_REFCLK_DIV4_EN,
    108     MERLIN16_PLL_OPTION_DISABLE_VERIFY
    109 };
    110 
    111 #endif