text: /*
   * DO NOT EDIT THIS FILE!
   * This file is auto-generated from the registers file.
   * Edits to this file will be lost when it is regenerated.
   *
   * 
   * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file.
   * 
   * Copyright 2007-2020 Broadcom Inc. All rights reserved.
   *
   * File:        chip.c
   * Purpose:     Chip driver table defined
   * Supports:    bcm56504_a0
   *              bcm56504_b0
   *              bcm56314_a0
   *              bcm56800_a0
   *              bcm56514_a0
   *              bcm56624_a0
   *              bcm56624_b0
   *              bcm56680_a0
   *              bcm56680_b0
   *              bcm56224_a0
   *              bcm56224_b0
   *              bcm56820_a0
   *              bcm56725_a0
   *              bcm53314_a0
   *              bcm53324_a0
   *              bcm56634_a0
   *              bcm56634_b0
   *              bcm56524_a0
   *              bcm56524_b0
   *              bcm56685_a0
   *              bcm56685_b0
   *              bcm56334_a0
   *              bcm56334_b0
   *              bcm56840_a0
   *              bcm56840_b0
   *              bcm88650_a0
   *              bcm88650_b0
   *              bcm88660_a0
   *              bcm2801pm_a0
   *              bcm88202_a0
   *              bcm88675_a0
   *              bcm83207_a0
   *              bcm83208_a0
   *              bcm88732_a0
   *              bcm56440_a0
   *              bcm56440_b0
   *              bcm56640_a0
   *              bcm88750_a0
   *              bcm88750_b0
   *              bcm88754_a0
   *              bcm88950_a0
   *              bcm88790_a0
   *              bcm56850_a0
   *              bcm56450_a0
   *              bcm56450_b0
   *              bcm56450_b1
   *              bcm56340_a0
   *              bcm56142_a0
   *              bcm56150_a0
   *              bcm53400_a0
   *              bcm56960_a0
   *              bcm56860_a0
   *              bcm56560_a0
   *              bcm56560_b0
   *              bcm56260_a0
   *              bcm56260_b0
   *              bcm88375_a0
   *              bcm88470_a0
   *              bcm88470_b0
   *              bcm88270_a0
   *              bcm8206_a0
   *              bcm88675_b0
   *              bcm88375_b0
   *              bcm88680_a0
   *              bcm88690_a0
   *              bcm88690_b0
   *              bcm56160_a0
   *              bcm56270_a0
   *              bcm56965_a0
   *              bcm56970_a0
   *              bcm56870_a0
   *              bcm53570_a0
   *              bcm53570_b0
   *              bcm56980_a0
   *              bcm56980_b0
   *              bcm53540_a0
   *              bcm56670_a0
   *              bcm56670_b0
   *              bcm56370_a0
   *              bcm56770_a0
   */
  
  
  #include <soc/defs.h>
  #include <soc/mcm/driver.h>
  
  /*
   * A null driver to indicate a given chip is not supported.
   *
   * This assumes that the chip is identified by device/rev id
   * and this will be 0 for the null driver, thus not match.
   */
  #if \
        !defined(BCM_56504_A0) \
     || !defined(BCM_56504_B0) \
     || !defined(BCM_56314_A0) \
     || !defined(BCM_56800_A0) \
     || !defined(BCM_56514_A0) \
     || !defined(BCM_56624_A0) \
     || !defined(BCM_56624_B0) \
     || !defined(BCM_56680_A0) \
     || !defined(BCM_56680_B0) \
     || !defined(BCM_56224_A0) \
     || !defined(BCM_56224_B0) \
     || !defined(BCM_56820_A0) \
     || !defined(BCM_56725_A0) \
     || !defined(BCM_53314_A0) \
     || !defined(BCM_53324_A0) \
     || !defined(BCM_56634_A0) \
     || !defined(BCM_56634_B0) \
     || !defined(BCM_56524_A0) \
     || !defined(BCM_56524_B0) \
     || !defined(BCM_56685_A0) \
     || !defined(BCM_56685_B0) \
     || !defined(BCM_56334_A0) \
     || !defined(BCM_56334_B0) \
     || !defined(BCM_56840_A0) \
     || !defined(BCM_56840_B0) \
     || !defined(BCM_88650_A0) \
     || !defined(BCM_88650_B0) \
     || !defined(BCM_88660_A0) \
     || !defined(BCM_2801PM_A0) \
     || !defined(BCM_88202_A0) \
     || !defined(BCM_88675_A0) \
     || !defined(BCM_83207_A0) \
     || !defined(BCM_83208_A0) \
     || !defined(BCM_88732_A0) \
     || !defined(BCM_56440_A0) \
     || !defined(BCM_56440_B0) \
     || !defined(BCM_56640_A0) \
     || !defined(BCM_88750_A0) \
     || !defined(BCM_88750_B0) \
     || !defined(BCM_88754_A0) \
     || !defined(BCM_88950_A0) \
     || !defined(BCM_88790_A0) \
     || !defined(BCM_56850_A0) \
     || !defined(BCM_56450_A0) \
     || !defined(BCM_56450_B0) \
     || !defined(BCM_56450_B1) \
     || !defined(BCM_56340_A0) \
     || !defined(BCM_56142_A0) \
     || !defined(BCM_56150_A0) \
     || !defined(BCM_53400_A0) \
     || !defined(BCM_56960_A0) \
     || !defined(BCM_56860_A0) \
     || !defined(BCM_56560_A0) \
     || !defined(BCM_56560_B0) \
     || !defined(BCM_56260_A0) \
     || !defined(BCM_56260_B0) \
     || !defined(BCM_88375_A0) \
     || !defined(BCM_88470_A0) \
     || !defined(BCM_88470_B0) \
     || !defined(BCM_88270_A0) \
     || !defined(BCM_8206_A0) \
     || !defined(BCM_88675_B0) \
     || !defined(BCM_88375_B0) \
     || !defined(BCM_88680_A0) \
     || !defined(BCM_88690_A0) \
     || !defined(BCM_88690_B0) \
     || !defined(BCM_56160_A0) \
     || !defined(BCM_56270_A0) \
     || !defined(BCM_56965_A0) \
     || !defined(BCM_56970_A0) \
     || !defined(BCM_56870_A0) \
     || !defined(BCM_53570_A0) \
     || !defined(BCM_53570_B0) \
     || !defined(BCM_56980_A0) \
     || !defined(BCM_56980_B0) \
     || !defined(BCM_53540_A0) \
     || !defined(BCM_56670_A0) \
     || !defined(BCM_56670_B0) \
     || !defined(BCM_56370_A0) \
     || !defined(BCM_56770_A0) \
  
  static soc_driver_t soc_driver_none;
  #endif
  
  /*
   * The table of all known drivers
   * Indexed by supported chips
   */
  soc_driver_t *soc_base_driver_table[] = {
  
  
  #if defined(BCM_56504_A0)
      &soc_driver_bcm56504_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56504_B0)
      &soc_driver_bcm56504_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56314_A0)
      &soc_driver_bcm56314_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56800_A0)
      &soc_driver_bcm56800_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56514_A0)
      &soc_driver_bcm56514_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56624_A0)
      &soc_driver_bcm56624_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56624_B0)
      &soc_driver_bcm56624_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56680_A0)
      &soc_driver_bcm56680_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56680_B0)
      &soc_driver_bcm56680_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56224_A0)
      &soc_driver_bcm56224_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56224_B0)
      &soc_driver_bcm56224_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56820_A0)
      &soc_driver_bcm56820_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56725_A0)
      &soc_driver_bcm56725_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_53314_A0)
      &soc_driver_bcm53314_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_53324_A0)
      &soc_driver_bcm53324_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56634_A0)
      &soc_driver_bcm56634_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56634_B0)
      &soc_driver_bcm56634_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56524_A0)
      &soc_driver_bcm56524_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56524_B0)
      &soc_driver_bcm56524_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56685_A0)
      &soc_driver_bcm56685_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56685_B0)
      &soc_driver_bcm56685_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56334_A0)
      &soc_driver_bcm56334_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56334_B0)
      &soc_driver_bcm56334_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56840_A0)
      &soc_driver_bcm56840_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56840_B0)
      &soc_driver_bcm56840_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88650_A0)
      &soc_driver_bcm88650_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88650_B0)
      &soc_driver_bcm88650_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88660_A0)
      &soc_driver_bcm88660_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_2801PM_A0)
      &soc_driver_bcm2801pm_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88202_A0)
      &soc_driver_bcm88202_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88675_A0)
      &soc_driver_bcm88675_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_83207_A0)
      &soc_driver_bcm83207_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_83208_A0)
      &soc_driver_bcm83208_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88732_A0)
      &soc_driver_bcm88732_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56440_A0)
      &soc_driver_bcm56440_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56440_B0)
      &soc_driver_bcm56440_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56640_A0)
      &soc_driver_bcm56640_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88750_A0)
      &soc_driver_bcm88750_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88750_B0)
      &soc_driver_bcm88750_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88754_A0)
      &soc_driver_bcm88754_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88950_A0)
      &soc_driver_bcm88950_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88790_A0)
      &soc_driver_bcm88790_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56850_A0)
      &soc_driver_bcm56850_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56450_A0)
      &soc_driver_bcm56450_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56450_B0)
      &soc_driver_bcm56450_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56450_B1)
      &soc_driver_bcm56450_b1,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56340_A0)
      &soc_driver_bcm56340_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56142_A0)
      &soc_driver_bcm56142_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56150_A0)
      &soc_driver_bcm56150_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_53400_A0)
      &soc_driver_bcm53400_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56960_A0)
      &soc_driver_bcm56960_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56860_A0)
      &soc_driver_bcm56860_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56560_A0)
      &soc_driver_bcm56560_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56560_B0)
      &soc_driver_bcm56560_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56260_A0)
      &soc_driver_bcm56260_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56260_B0)
      &soc_driver_bcm56260_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88375_A0)
      &soc_driver_bcm88375_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88470_A0)
      &soc_driver_bcm88470_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88470_B0)
      &soc_driver_bcm88470_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88270_A0)
      &soc_driver_bcm88270_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_8206_A0)
      &soc_driver_bcm8206_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88675_B0)
      &soc_driver_bcm88675_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88375_B0)
      &soc_driver_bcm88375_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88680_A0)
      &soc_driver_bcm88680_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88690_A0)
      &soc_driver_bcm88690_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_88690_B0)
      &soc_driver_bcm88690_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56160_A0)
      &soc_driver_bcm56160_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56270_A0)
      &soc_driver_bcm56270_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56965_A0)
      &soc_driver_bcm56965_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56970_A0)
      &soc_driver_bcm56970_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56870_A0)
      &soc_driver_bcm56870_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_53570_A0)
      &soc_driver_bcm53570_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_53570_B0)
      &soc_driver_bcm53570_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56980_A0)
      &soc_driver_bcm56980_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56980_B0)
      &soc_driver_bcm56980_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_53540_A0)
      &soc_driver_bcm53540_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56670_A0)
      &soc_driver_bcm56670_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56670_B0)
      &soc_driver_bcm56670_b0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56370_A0)
      &soc_driver_bcm56370_a0,
  #else
      &soc_driver_none,
  #endif
  
  #if defined(BCM_56770_A0)
      &soc_driver_bcm56770_a0,
  #else
      &soc_driver_none,
  #endif
  
  };
  
  /* Function to translate SOC_CHIP_ to supported idx*/
  int soc_chip_type_to_index(soc_chip_types chip)
  {
      switch(chip) {
      case SOC_CHIP_BCM56504_A0:  return 0;
      case SOC_CHIP_BCM56504_B0:  return 1;
      case SOC_CHIP_BCM56314_A0:  return 2;
      case SOC_CHIP_BCM56800_A0:  return 3;
      case SOC_CHIP_BCM56514_A0:  return 4;
      case SOC_CHIP_BCM56624_A0:  return 5;
      case SOC_CHIP_BCM56624_B0:  return 6;
      case SOC_CHIP_BCM56680_A0:  return 7;
      case SOC_CHIP_BCM56680_B0:  return 8;
      case SOC_CHIP_BCM56224_A0:  return 9;
      case SOC_CHIP_BCM56224_B0:  return 10;
      case SOC_CHIP_BCM56820_A0:  return 11;
      case SOC_CHIP_BCM56725_A0:  return 12;
      case SOC_CHIP_BCM53314_A0:  return 13;
      case SOC_CHIP_BCM53324_A0:  return 14;
      case SOC_CHIP_BCM56634_A0:  return 15;
      case SOC_CHIP_BCM56634_B0:  return 16;
      case SOC_CHIP_BCM56524_A0:  return 17;
      case SOC_CHIP_BCM56524_B0:  return 18;
      case SOC_CHIP_BCM56685_A0:  return 19;
      case SOC_CHIP_BCM56685_B0:  return 20;
      case SOC_CHIP_BCM56334_A0:  return 21;
      case SOC_CHIP_BCM56334_B0:  return 22;
      case SOC_CHIP_BCM56840_A0:  return 23;
      case SOC_CHIP_BCM56840_B0:  return 24;
      case SOC_CHIP_BCM88650_A0:  return 25;
      case SOC_CHIP_BCM88650_B0:  return 26;
      case SOC_CHIP_BCM88660_A0:  return 27;
      case SOC_CHIP_BCM2801PM_A0:  return 28;
      case SOC_CHIP_BCM88202_A0:  return 29;
      case SOC_CHIP_BCM88675_A0:  return 30;
      case SOC_CHIP_BCM83207_A0:  return 31;
      case SOC_CHIP_BCM83208_A0:  return 32;
      case SOC_CHIP_BCM88732_A0:  return 33;
      case SOC_CHIP_BCM56440_A0:  return 34;
      case SOC_CHIP_BCM56440_B0:  return 35;
      case SOC_CHIP_BCM56640_A0:  return 36;
      case SOC_CHIP_BCM88750_A0:  return 37;
      case SOC_CHIP_BCM88750_B0:  return 38;
      case SOC_CHIP_BCM88754_A0:  return 39;
      case SOC_CHIP_BCM88950_A0:  return 40;
      case SOC_CHIP_BCM88790_A0:  return 41;
      case SOC_CHIP_BCM56850_A0:  return 42;
      case SOC_CHIP_BCM56450_A0:  return 43;
      case SOC_CHIP_BCM56450_B0:  return 44;
      case SOC_CHIP_BCM56450_B1:  return 45;
      case SOC_CHIP_BCM56340_A0:  return 46;
      case SOC_CHIP_BCM56142_A0:  return 47;
      case SOC_CHIP_BCM56150_A0:  return 48;
      case SOC_CHIP_BCM53400_A0:  return 49;
      case SOC_CHIP_BCM56960_A0:  return 50;
      case SOC_CHIP_BCM56860_A0:  return 51;
      case SOC_CHIP_BCM56560_A0:  return 52;
      case SOC_CHIP_BCM56560_B0:  return 53;
      case SOC_CHIP_BCM56260_A0:  return 54;
      case SOC_CHIP_BCM56260_B0:  return 55;
      case SOC_CHIP_BCM88375_A0:  return 56;
      case SOC_CHIP_BCM88470_A0:  return 57;
      case SOC_CHIP_BCM88470_B0:  return 58;
      case SOC_CHIP_BCM88270_A0:  return 59;
      case SOC_CHIP_BCM8206_A0:  return 60;
      case SOC_CHIP_BCM88675_B0:  return 61;
      case SOC_CHIP_BCM88375_B0:  return 62;
      case SOC_CHIP_BCM88680_A0:  return 63;
      case SOC_CHIP_BCM88690_A0:  return 64;
      case SOC_CHIP_BCM88690_B0:  return 65;
      case SOC_CHIP_BCM56160_A0:  return 66;
      case SOC_CHIP_BCM56270_A0:  return 67;
      case SOC_CHIP_BCM56965_A0:  return 68;
      case SOC_CHIP_BCM56970_A0:  return 69;
      case SOC_CHIP_BCM56870_A0:  return 70;
      case SOC_CHIP_BCM53570_A0:  return 71;
      case SOC_CHIP_BCM53570_B0:  return 72;
      case SOC_CHIP_BCM56980_A0:  return 73;
      case SOC_CHIP_BCM56980_B0:  return 74;
      case SOC_CHIP_BCM53540_A0:  return 75;
      case SOC_CHIP_BCM56670_A0:  return 76;
      case SOC_CHIP_BCM56670_B0:  return 77;
      case SOC_CHIP_BCM56370_A0:  return 78;
      case SOC_CHIP_BCM56770_A0:  return 79;
      default:  assert(0);
      }
      return -1;
  }
  
  /* Reverse translation of above. */
  soc_chip_types soc_index_to_chip_type(int chip)
  {
      switch(chip) {
      case 0: return SOC_CHIP_BCM56504_A0;
      case 1: return SOC_CHIP_BCM56504_B0;
      case 2: return SOC_CHIP_BCM56314_A0;
      case 3: return SOC_CHIP_BCM56800_A0;
      case 4: return SOC_CHIP_BCM56514_A0;
      case 5: return SOC_CHIP_BCM56624_A0;
      case 6: return SOC_CHIP_BCM56624_B0;
      case 7: return SOC_CHIP_BCM56680_A0;
      case 8: return SOC_CHIP_BCM56680_B0;
      case 9: return SOC_CHIP_BCM56224_A0;
      case 10: return SOC_CHIP_BCM56224_B0;
      case 11: return SOC_CHIP_BCM56820_A0;
      case 12: return SOC_CHIP_BCM56725_A0;
      case 13: return SOC_CHIP_BCM53314_A0;
      case 14: return SOC_CHIP_BCM53324_A0;
      case 15: return SOC_CHIP_BCM56634_A0;
      case 16: return SOC_CHIP_BCM56634_B0;
      case 17: return SOC_CHIP_BCM56524_A0;
      case 18: return SOC_CHIP_BCM56524_B0;
      case 19: return SOC_CHIP_BCM56685_A0;
      case 20: return SOC_CHIP_BCM56685_B0;
      case 21: return SOC_CHIP_BCM56334_A0;
      case 22: return SOC_CHIP_BCM56334_B0;
      case 23: return SOC_CHIP_BCM56840_A0;
      case 24: return SOC_CHIP_BCM56840_B0;
      case 25: return SOC_CHIP_BCM88650_A0;
      case 26: return SOC_CHIP_BCM88650_B0;
      case 27: return SOC_CHIP_BCM88660_A0;
      case 28: return SOC_CHIP_BCM2801PM_A0;
      case 29: return SOC_CHIP_BCM88202_A0;
      case 30: return SOC_CHIP_BCM88675_A0;
      case 31: return SOC_CHIP_BCM83207_A0;
      case 32: return SOC_CHIP_BCM83208_A0;
      case 33: return SOC_CHIP_BCM88732_A0;
      case 34: return SOC_CHIP_BCM56440_A0;
      case 35: return SOC_CHIP_BCM56440_B0;
      case 36: return SOC_CHIP_BCM56640_A0;
      case 37: return SOC_CHIP_BCM88750_A0;
      case 38: return SOC_CHIP_BCM88750_B0;
      case 39: return SOC_CHIP_BCM88754_A0;
      case 40: return SOC_CHIP_BCM88950_A0;
      case 41: return SOC_CHIP_BCM88790_A0;
      case 42: return SOC_CHIP_BCM56850_A0;
      case 43: return SOC_CHIP_BCM56450_A0;
      case 44: return SOC_CHIP_BCM56450_B0;
      case 45: return SOC_CHIP_BCM56450_B1;
      case 46: return SOC_CHIP_BCM56340_A0;
      case 47: return SOC_CHIP_BCM56142_A0;
      case 48: return SOC_CHIP_BCM56150_A0;
      case 49: return SOC_CHIP_BCM53400_A0;
      case 50: return SOC_CHIP_BCM56960_A0;
      case 51: return SOC_CHIP_BCM56860_A0;
      case 52: return SOC_CHIP_BCM56560_A0;
      case 53: return SOC_CHIP_BCM56560_B0;
      case 54: return SOC_CHIP_BCM56260_A0;
      case 55: return SOC_CHIP_BCM56260_B0;
      case 56: return SOC_CHIP_BCM88375_A0;
      case 57: return SOC_CHIP_BCM88470_A0;
      case 58: return SOC_CHIP_BCM88470_B0;
      case 59: return SOC_CHIP_BCM88270_A0;
      case 60: return SOC_CHIP_BCM8206_A0;
      case 61: return SOC_CHIP_BCM88675_B0;
      case 62: return SOC_CHIP_BCM88375_B0;
      case 63: return SOC_CHIP_BCM88680_A0;
      case 64: return SOC_CHIP_BCM88690_A0;
      case 65: return SOC_CHIP_BCM88690_B0;
      case 66: return SOC_CHIP_BCM56160_A0;
      case 67: return SOC_CHIP_BCM56270_A0;
      case 68: return SOC_CHIP_BCM56965_A0;
      case 69: return SOC_CHIP_BCM56970_A0;
      case 70: return SOC_CHIP_BCM56870_A0;
      case 71: return SOC_CHIP_BCM53570_A0;
      case 72: return SOC_CHIP_BCM53570_B0;
      case 73: return SOC_CHIP_BCM56980_A0;
      case 74: return SOC_CHIP_BCM56980_B0;
      case 75: return SOC_CHIP_BCM53540_A0;
      case 76: return SOC_CHIP_BCM56670_A0;
      case 77: return SOC_CHIP_BCM56670_B0;
      case 78: return SOC_CHIP_BCM56370_A0;
      case 79: return SOC_CHIP_BCM56770_A0;
      default:  assert(0);
      }
      return -1;
  }
  
  