LCOV - code coverage report
Current view: top level - AP_RangeFinder - AP_RangeFinder_VL53L1X.h (source / functions) Hit Total Coverage
Test: lcov.info Lines: 0 2 0.0 %
Date: 2026-09-09 11:02:08 Functions: 0 1 0.0 %

          Line data    Source code
       1             : #pragma once
       2             : 
       3             : #include "AP_RangeFinder_config.h"
       4             : 
       5             : #if AP_RANGEFINDER_VL53L1X_ENABLED
       6             : 
       7             : #include "AP_RangeFinder.h"
       8             : #include "AP_RangeFinder_Backend.h"
       9             : 
      10             : #include <AP_HAL/I2CDevice.h>
      11             : 
      12             : class AP_RangeFinder_VL53L1X : public AP_RangeFinder_Backend
      13             : {
      14             : 
      15             : public:
      16             :     enum class DistanceMode { Short, Medium, Long, Unknown };
      17             : 
      18             :     // static detection function
      19             :     static AP_RangeFinder_Backend *detect(RangeFinder::RangeFinder_State &_state, AP_RangeFinder_Params &_params, AP_HAL::OwnPtr<AP_HAL::I2CDevice> _dev, DistanceMode mode);
      20             : 
      21             :     // update state
      22             :     void update(void) override;
      23             : 
      24             : protected:
      25             : 
      26           0 :     virtual MAV_DISTANCE_SENSOR _get_mav_distance_sensor_type() const override {
      27           0 :         return MAV_DISTANCE_SENSOR_LASER;
      28             :     }
      29             : 
      30             : private:
      31             :     enum DeviceError : uint8_t
      32             :     {
      33             :         NOUPDATE                    = 0,
      34             :         VCSELCONTINUITYTESTFAILURE  = 1,
      35             :         VCSELWATCHDOGTESTFAILURE    = 2,
      36             :         NOVHVVALUEFOUND             = 3,
      37             :         MSRCNOTARGET                = 4,
      38             :         RANGEPHASECHECK             = 5,
      39             :         SIGMATHRESHOLDCHECK         = 6,
      40             :         PHASECONSISTENCY            = 7,
      41             :         MINCLIP                     = 8,
      42             :         RANGECOMPLETE               = 9,
      43             :         ALGOUNDERFLOW               = 10,
      44             :         ALGOOVERFLOW                = 11,
      45             :         RANGEIGNORETHRESHOLD        = 12,
      46             :         USERROICLIP                 = 13,
      47             :         REFSPADCHARNOTENOUGHDPADS   = 14,
      48             :         REFSPADCHARMORETHANTARGET   = 15,
      49             :         REFSPADCHARLESSTHANTARGET   = 16,
      50             :         MULTCLIPFAIL                = 17,
      51             :         GPHSTREAMCOUNT0READY        = 18,
      52             :         RANGECOMPLETE_NO_WRAP_CHECK = 19,
      53             :         EVENTCONSISTENCY            = 20,
      54             :         MINSIGNALEVENTCHECK         = 21,
      55             :         RANGECOMPLETE_MERGED_PULSE  = 22,
      56             :     };
      57             : 
      58             :     // register addresses from API vl53l1x_register_map.h
      59             :     enum regAddr : uint16_t
      60             :     {
      61             :         SOFT_RESET                                                                 = 0x0000,
      62             :         I2C_SLAVE__DEVICE_ADDRESS                                                  = 0x0001,
      63             :         ANA_CONFIG__VHV_REF_SEL_VDDPIX                                             = 0x0002,
      64             :         ANA_CONFIG__VHV_REF_SEL_VQUENCH                                            = 0x0003,
      65             :         ANA_CONFIG__REG_AVDD1V2_SEL                                                = 0x0004,
      66             :         ANA_CONFIG__FAST_OSC__TRIM                                                 = 0x0005,
      67             :         OSC_MEASURED__FAST_OSC__FREQUENCY                                          = 0x0006,
      68             :         OSC_MEASURED__FAST_OSC__FREQUENCY_HI                                       = 0x0006,
      69             :         OSC_MEASURED__FAST_OSC__FREQUENCY_LO                                       = 0x0007,
      70             :         VHV_CONFIG__TIMEOUT_MACROP_LOOP_BOUND                                      = 0x0008,
      71             :         VHV_CONFIG__COUNT_THRESH                                                   = 0x0009,
      72             :         VHV_CONFIG__OFFSET                                                         = 0x000A,
      73             :         VHV_CONFIG__INIT                                                           = 0x000B,
      74             :         GLOBAL_CONFIG__SPAD_ENABLES_REF_0                                          = 0x000D,
      75             :         GLOBAL_CONFIG__SPAD_ENABLES_REF_1                                          = 0x000E,
      76             :         GLOBAL_CONFIG__SPAD_ENABLES_REF_2                                          = 0x000F,
      77             :         GLOBAL_CONFIG__SPAD_ENABLES_REF_3                                          = 0x0010,
      78             :         GLOBAL_CONFIG__SPAD_ENABLES_REF_4                                          = 0x0011,
      79             :         GLOBAL_CONFIG__SPAD_ENABLES_REF_5                                          = 0x0012,
      80             :         GLOBAL_CONFIG__REF_EN_START_SELECT                                         = 0x0013,
      81             :         REF_SPAD_MAN__NUM_REQUESTED_REF_SPADS                                      = 0x0014,
      82             :         REF_SPAD_MAN__REF_LOCATION                                                 = 0x0015,
      83             :         ALGO__CROSSTALK_COMPENSATION_PLANE_OFFSET_KCPS                             = 0x0016,
      84             :         ALGO__CROSSTALK_COMPENSATION_PLANE_OFFSET_KCPS_HI                          = 0x0016,
      85             :         ALGO__CROSSTALK_COMPENSATION_PLANE_OFFSET_KCPS_LO                          = 0x0017,
      86             :         ALGO__CROSSTALK_COMPENSATION_X_PLANE_GRADIENT_KCPS                         = 0x0018,
      87             :         ALGO__CROSSTALK_COMPENSATION_X_PLANE_GRADIENT_KCPS_HI                      = 0x0018,
      88             :         ALGO__CROSSTALK_COMPENSATION_X_PLANE_GRADIENT_KCPS_LO                      = 0x0019,
      89             :         ALGO__CROSSTALK_COMPENSATION_Y_PLANE_GRADIENT_KCPS                         = 0x001A,
      90             :         ALGO__CROSSTALK_COMPENSATION_Y_PLANE_GRADIENT_KCPS_HI                      = 0x001A,
      91             :         ALGO__CROSSTALK_COMPENSATION_Y_PLANE_GRADIENT_KCPS_LO                      = 0x001B,
      92             :         REF_SPAD_CHAR__TOTAL_RATE_TARGET_MCPS                                      = 0x001C,
      93             :         REF_SPAD_CHAR__TOTAL_RATE_TARGET_MCPS_HI                                   = 0x001C,
      94             :         REF_SPAD_CHAR__TOTAL_RATE_TARGET_MCPS_LO                                   = 0x001D,
      95             :         ALGO__PART_TO_PART_RANGE_OFFSET_MM                                         = 0x001E,
      96             :         ALGO__PART_TO_PART_RANGE_OFFSET_MM_HI                                      = 0x001E,
      97             :         ALGO__PART_TO_PART_RANGE_OFFSET_MM_LO                                      = 0x001F,
      98             :         MM_CONFIG__INNER_OFFSET_MM                                                 = 0x0020,
      99             :         MM_CONFIG__INNER_OFFSET_MM_HI                                              = 0x0020,
     100             :         MM_CONFIG__INNER_OFFSET_MM_LO                                              = 0x0021,
     101             :         MM_CONFIG__OUTER_OFFSET_MM                                                 = 0x0022,
     102             :         MM_CONFIG__OUTER_OFFSET_MM_HI                                              = 0x0022,
     103             :         MM_CONFIG__OUTER_OFFSET_MM_LO                                              = 0x0023,
     104             :         DSS_CONFIG__TARGET_TOTAL_RATE_MCPS                                         = 0x0024,
     105             :         DSS_CONFIG__TARGET_TOTAL_RATE_MCPS_HI                                      = 0x0024,
     106             :         DSS_CONFIG__TARGET_TOTAL_RATE_MCPS_LO                                      = 0x0025,
     107             :         DEBUG__CTRL                                                                = 0x0026,
     108             :         TEST_MODE__CTRL                                                            = 0x0027,
     109             :         CLK_GATING__CTRL                                                           = 0x0028,
     110             :         NVM_BIST__CTRL                                                             = 0x0029,
     111             :         NVM_BIST__NUM_NVM_WORDS                                                    = 0x002A,
     112             :         NVM_BIST__START_ADDRESS                                                    = 0x002B,
     113             :         HOST_IF__STATUS                                                            = 0x002C,
     114             :         PAD_I2C_HV__CONFIG                                                         = 0x002D,
     115             :         PAD_I2C_HV__EXTSUP_CONFIG                                                  = 0x002E,
     116             :         GPIO_HV_PAD__CTRL                                                          = 0x002F,
     117             :         GPIO_HV_MUX__CTRL                                                          = 0x0030,
     118             :         GPIO__TIO_HV_STATUS                                                        = 0x0031,
     119             :         GPIO__FIO_HV_STATUS                                                        = 0x0032,
     120             :         ANA_CONFIG__SPAD_SEL_PSWIDTH                                               = 0x0033,
     121             :         ANA_CONFIG__VCSEL_PULSE_WIDTH_OFFSET                                       = 0x0034,
     122             :         ANA_CONFIG__FAST_OSC__CONFIG_CTRL                                          = 0x0035,
     123             :         SIGMA_ESTIMATOR__EFFECTIVE_PULSE_WIDTH_NS                                  = 0x0036,
     124             :         SIGMA_ESTIMATOR__EFFECTIVE_AMBIENT_WIDTH_NS                                = 0x0037,
     125             :         SIGMA_ESTIMATOR__SIGMA_REF_MM                                              = 0x0038,
     126             :         ALGO__CROSSTALK_COMPENSATION_VALID_HEIGHT_MM                               = 0x0039,
     127             :         SPARE_HOST_CONFIG__STATIC_CONFIG_SPARE_0                                   = 0x003A,
     128             :         SPARE_HOST_CONFIG__STATIC_CONFIG_SPARE_1                                   = 0x003B,
     129             :         ALGO__RANGE_IGNORE_THRESHOLD_MCPS                                          = 0x003C,
     130             :         ALGO__RANGE_IGNORE_THRESHOLD_MCPS_HI                                       = 0x003C,
     131             :         ALGO__RANGE_IGNORE_THRESHOLD_MCPS_LO                                       = 0x003D,
     132             :         ALGO__RANGE_IGNORE_VALID_HEIGHT_MM                                         = 0x003E,
     133             :         ALGO__RANGE_MIN_CLIP                                                       = 0x003F,
     134             :         ALGO__CONSISTENCY_CHECK__TOLERANCE                                         = 0x0040,
     135             :         SPARE_HOST_CONFIG__STATIC_CONFIG_SPARE_2                                   = 0x0041,
     136             :         SD_CONFIG__RESET_STAGES_MSB                                                = 0x0042,
     137             :         SD_CONFIG__RESET_STAGES_LSB                                                = 0x0043,
     138             :         GPH_CONFIG__STREAM_COUNT_UPDATE_VALUE                                      = 0x0044,
     139             :         GLOBAL_CONFIG__STREAM_DIVIDER                                              = 0x0045,
     140             :         SYSTEM__INTERRUPT_CONFIG_GPIO                                              = 0x0046,
     141             :         CAL_CONFIG__VCSEL_START                                                    = 0x0047,
     142             :         CAL_CONFIG__REPEAT_RATE                                                    = 0x0048,
     143             :         CAL_CONFIG__REPEAT_RATE_HI                                                 = 0x0048,
     144             :         CAL_CONFIG__REPEAT_RATE_LO                                                 = 0x0049,
     145             :         GLOBAL_CONFIG__VCSEL_WIDTH                                                 = 0x004A,
     146             :         PHASECAL_CONFIG__TIMEOUT_MACROP                                            = 0x004B,
     147             :         PHASECAL_CONFIG__TARGET                                                    = 0x004C,
     148             :         PHASECAL_CONFIG__OVERRIDE                                                  = 0x004D,
     149             :         DSS_CONFIG__ROI_MODE_CONTROL                                               = 0x004F,
     150             :         SYSTEM__THRESH_RATE_HIGH                                                   = 0x0050,
     151             :         SYSTEM__THRESH_RATE_HIGH_HI                                                = 0x0050,
     152             :         SYSTEM__THRESH_RATE_HIGH_LO                                                = 0x0051,
     153             :         SYSTEM__THRESH_RATE_LOW                                                    = 0x0052,
     154             :         SYSTEM__THRESH_RATE_LOW_HI                                                 = 0x0052,
     155             :         SYSTEM__THRESH_RATE_LOW_LO                                                 = 0x0053,
     156             :         DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT                                  = 0x0054,
     157             :         DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT_HI                               = 0x0054,
     158             :         DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT_LO                               = 0x0055,
     159             :         DSS_CONFIG__MANUAL_BLOCK_SELECT                                            = 0x0056,
     160             :         DSS_CONFIG__APERTURE_ATTENUATION                                           = 0x0057,
     161             :         DSS_CONFIG__MAX_SPADS_LIMIT                                                = 0x0058,
     162             :         DSS_CONFIG__MIN_SPADS_LIMIT                                                = 0x0059,
     163             :         MM_CONFIG__TIMEOUT_MACROP_A                                                = 0x005A, // added by Pololu for 16-bit accesses
     164             :         MM_CONFIG__TIMEOUT_MACROP_A_HI                                             = 0x005A,
     165             :         MM_CONFIG__TIMEOUT_MACROP_A_LO                                             = 0x005B,
     166             :         MM_CONFIG__TIMEOUT_MACROP_B                                                = 0x005C, // added by Pololu for 16-bit accesses
     167             :         MM_CONFIG__TIMEOUT_MACROP_B_HI                                             = 0x005C,
     168             :         MM_CONFIG__TIMEOUT_MACROP_B_LO                                             = 0x005D,
     169             :         RANGE_CONFIG__TIMEOUT_MACROP_A                                             = 0x005E, // added by Pololu for 16-bit accesses
     170             :         RANGE_CONFIG__TIMEOUT_MACROP_A_HI                                          = 0x005E,
     171             :         RANGE_CONFIG__TIMEOUT_MACROP_A_LO                                          = 0x005F,
     172             :         RANGE_CONFIG__VCSEL_PERIOD_A                                               = 0x0060,
     173             :         RANGE_CONFIG__TIMEOUT_MACROP_B                                             = 0x0061, // added by Pololu for 16-bit accesses
     174             :         RANGE_CONFIG__TIMEOUT_MACROP_B_HI                                          = 0x0061,
     175             :         RANGE_CONFIG__TIMEOUT_MACROP_B_LO                                          = 0x0062,
     176             :         RANGE_CONFIG__VCSEL_PERIOD_B                                               = 0x0063,
     177             :         RANGE_CONFIG__SIGMA_THRESH                                                 = 0x0064,
     178             :         RANGE_CONFIG__SIGMA_THRESH_HI                                              = 0x0064,
     179             :         RANGE_CONFIG__SIGMA_THRESH_LO                                              = 0x0065,
     180             :         RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS                                = 0x0066,
     181             :         RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS_HI                             = 0x0066,
     182             :         RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS_LO                             = 0x0067,
     183             :         RANGE_CONFIG__VALID_PHASE_LOW                                              = 0x0068,
     184             :         RANGE_CONFIG__VALID_PHASE_HIGH                                             = 0x0069,
     185             :         SYSTEM__INTERMEASUREMENT_PERIOD                                            = 0x006C,
     186             :         SYSTEM__INTERMEASUREMENT_PERIOD_3                                          = 0x006C,
     187             :         SYSTEM__INTERMEASUREMENT_PERIOD_2                                          = 0x006D,
     188             :         SYSTEM__INTERMEASUREMENT_PERIOD_1                                          = 0x006E,
     189             :         SYSTEM__INTERMEASUREMENT_PERIOD_0                                          = 0x006F,
     190             :         SYSTEM__FRACTIONAL_ENABLE                                                  = 0x0070,
     191             :         SYSTEM__GROUPED_PARAMETER_HOLD_0                                           = 0x0071,
     192             :         SYSTEM__THRESH_HIGH                                                        = 0x0072,
     193             :         SYSTEM__THRESH_HIGH_HI                                                     = 0x0072,
     194             :         SYSTEM__THRESH_HIGH_LO                                                     = 0x0073,
     195             :         SYSTEM__THRESH_LOW                                                         = 0x0074,
     196             :         SYSTEM__THRESH_LOW_HI                                                      = 0x0074,
     197             :         SYSTEM__THRESH_LOW_LO                                                      = 0x0075,
     198             :         SYSTEM__ENABLE_XTALK_PER_QUADRANT                                          = 0x0076,
     199             :         SYSTEM__SEED_CONFIG                                                        = 0x0077,
     200             :         SD_CONFIG__WOI_SD0                                                         = 0x0078,
     201             :         SD_CONFIG__WOI_SD1                                                         = 0x0079,
     202             :         SD_CONFIG__INITIAL_PHASE_SD0                                               = 0x007A,
     203             :         SD_CONFIG__INITIAL_PHASE_SD1                                               = 0x007B,
     204             :         SYSTEM__GROUPED_PARAMETER_HOLD_1                                           = 0x007C,
     205             :         SD_CONFIG__FIRST_ORDER_SELECT                                              = 0x007D,
     206             :         SD_CONFIG__QUANTIFIER                                                      = 0x007E,
     207             :         ROI_CONFIG__USER_ROI_CENTRE_SPAD                                           = 0x007F,
     208             :         ROI_CONFIG__USER_ROI_REQUESTED_GLOBAL_XY_SIZE                              = 0x0080,
     209             :         SYSTEM__SEQUENCE_CONFIG                                                    = 0x0081,
     210             :         SYSTEM__GROUPED_PARAMETER_HOLD                                             = 0x0082,
     211             :         POWER_MANAGEMENT__GO1_POWER_FORCE                                          = 0x0083,
     212             :         SYSTEM__STREAM_COUNT_CTRL                                                  = 0x0084,
     213             :         FIRMWARE__ENABLE                                                           = 0x0085,
     214             :         SYSTEM__INTERRUPT_CLEAR                                                    = 0x0086,
     215             :         SYSTEM__MODE_START                                                         = 0x0087,
     216             :         RESULT__INTERRUPT_STATUS                                                   = 0x0088,
     217             :         RESULT__RANGE_STATUS                                                       = 0x0089,
     218             :         RESULT__REPORT_STATUS                                                      = 0x008A,
     219             :         RESULT__STREAM_COUNT                                                       = 0x008B,
     220             :         RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0                                     = 0x008C,
     221             :         RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_HI                                  = 0x008C,
     222             :         RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_LO                                  = 0x008D,
     223             :         RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0                                    = 0x008E,
     224             :         RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_HI                                 = 0x008E,
     225             :         RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_LO                                 = 0x008F,
     226             :         RESULT__AMBIENT_COUNT_RATE_MCPS_SD0                                        = 0x0090,
     227             :         RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_HI                                     = 0x0090,
     228             :         RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_LO                                     = 0x0091,
     229             :         RESULT__SIGMA_SD0                                                          = 0x0092,
     230             :         RESULT__SIGMA_SD0_HI                                                       = 0x0092,
     231             :         RESULT__SIGMA_SD0_LO                                                       = 0x0093,
     232             :         RESULT__PHASE_SD0                                                          = 0x0094,
     233             :         RESULT__PHASE_SD0_HI                                                       = 0x0094,
     234             :         RESULT__PHASE_SD0_LO                                                       = 0x0095,
     235             :         RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0                             = 0x0096,
     236             :         RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_HI                          = 0x0096,
     237             :         RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_LO                          = 0x0097,
     238             :         RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0                = 0x0098,
     239             :         RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_HI             = 0x0098,
     240             :         RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_LO             = 0x0099,
     241             :         RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0                                = 0x009A,
     242             :         RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_HI                             = 0x009A,
     243             :         RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_LO                             = 0x009B,
     244             :         RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0                                = 0x009C,
     245             :         RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_HI                             = 0x009C,
     246             :         RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_LO                             = 0x009D,
     247             :         RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0                                     = 0x009E,
     248             :         RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_HI                                  = 0x009E,
     249             :         RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_LO                                  = 0x009F,
     250             :         RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1                                     = 0x00A0,
     251             :         RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_HI                                  = 0x00A0,
     252             :         RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_LO                                  = 0x00A1,
     253             :         RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1                                    = 0x00A2,
     254             :         RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_HI                                 = 0x00A2,
     255             :         RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_LO                                 = 0x00A3,
     256             :         RESULT__AMBIENT_COUNT_RATE_MCPS_SD1                                        = 0x00A4,
     257             :         RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_HI                                     = 0x00A4,
     258             :         RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_LO                                     = 0x00A5,
     259             :         RESULT__SIGMA_SD1                                                          = 0x00A6,
     260             :         RESULT__SIGMA_SD1_HI                                                       = 0x00A6,
     261             :         RESULT__SIGMA_SD1_LO                                                       = 0x00A7,
     262             :         RESULT__PHASE_SD1                                                          = 0x00A8,
     263             :         RESULT__PHASE_SD1_HI                                                       = 0x00A8,
     264             :         RESULT__PHASE_SD1_LO                                                       = 0x00A9,
     265             :         RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1                             = 0x00AA,
     266             :         RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_HI                          = 0x00AA,
     267             :         RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_LO                          = 0x00AB,
     268             :         RESULT__SPARE_0_SD1                                                        = 0x00AC,
     269             :         RESULT__SPARE_0_SD1_HI                                                     = 0x00AC,
     270             :         RESULT__SPARE_0_SD1_LO                                                     = 0x00AD,
     271             :         RESULT__SPARE_1_SD1                                                        = 0x00AE,
     272             :         RESULT__SPARE_1_SD1_HI                                                     = 0x00AE,
     273             :         RESULT__SPARE_1_SD1_LO                                                     = 0x00AF,
     274             :         RESULT__SPARE_2_SD1                                                        = 0x00B0,
     275             :         RESULT__SPARE_2_SD1_HI                                                     = 0x00B0,
     276             :         RESULT__SPARE_2_SD1_LO                                                     = 0x00B1,
     277             :         RESULT__SPARE_3_SD1                                                        = 0x00B2,
     278             :         RESULT__THRESH_INFO                                                        = 0x00B3,
     279             :         RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0                                     = 0x00B4,
     280             :         RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_3                                   = 0x00B4,
     281             :         RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_2                                   = 0x00B5,
     282             :         RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_1                                   = 0x00B6,
     283             :         RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_0                                   = 0x00B7,
     284             :         RESULT_CORE__RANGING_TOTAL_EVENTS_SD0                                      = 0x00B8,
     285             :         RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_3                                    = 0x00B8,
     286             :         RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_2                                    = 0x00B9,
     287             :         RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_1                                    = 0x00BA,
     288             :         RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_0                                    = 0x00BB,
     289             :         RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0                                       = 0x00BC,
     290             :         RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_3                                     = 0x00BC,
     291             :         RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_2                                     = 0x00BD,
     292             :         RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_1                                     = 0x00BE,
     293             :         RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_0                                     = 0x00BF,
     294             :         RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0                                     = 0x00C0,
     295             :         RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_3                                   = 0x00C0,
     296             :         RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_2                                   = 0x00C1,
     297             :         RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_1                                   = 0x00C2,
     298             :         RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_0                                   = 0x00C3,
     299             :         RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1                                     = 0x00C4,
     300             :         RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_3                                   = 0x00C4,
     301             :         RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_2                                   = 0x00C5,
     302             :         RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_1                                   = 0x00C6,
     303             :         RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_0                                   = 0x00C7,
     304             :         RESULT_CORE__RANGING_TOTAL_EVENTS_SD1                                      = 0x00C8,
     305             :         RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_3                                    = 0x00C8,
     306             :         RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_2                                    = 0x00C9,
     307             :         RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_1                                    = 0x00CA,
     308             :         RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_0                                    = 0x00CB,
     309             :         RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1                                       = 0x00CC,
     310             :         RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_3                                     = 0x00CC,
     311             :         RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_2                                     = 0x00CD,
     312             :         RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_1                                     = 0x00CE,
     313             :         RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_0                                     = 0x00CF,
     314             :         RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1                                     = 0x00D0,
     315             :         RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_3                                   = 0x00D0,
     316             :         RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_2                                   = 0x00D1,
     317             :         RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_1                                   = 0x00D2,
     318             :         RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_0                                   = 0x00D3,
     319             :         RESULT_CORE__SPARE_0                                                       = 0x00D4,
     320             :         PHASECAL_RESULT__REFERENCE_PHASE                                           = 0x00D6,
     321             :         PHASECAL_RESULT__REFERENCE_PHASE_HI                                        = 0x00D6,
     322             :         PHASECAL_RESULT__REFERENCE_PHASE_LO                                        = 0x00D7,
     323             :         PHASECAL_RESULT__VCSEL_START                                               = 0x00D8,
     324             :         REF_SPAD_CHAR_RESULT__NUM_ACTUAL_REF_SPADS                                 = 0x00D9,
     325             :         REF_SPAD_CHAR_RESULT__REF_LOCATION                                         = 0x00DA,
     326             :         VHV_RESULT__COLDBOOT_STATUS                                                = 0x00DB,
     327             :         VHV_RESULT__SEARCH_RESULT                                                  = 0x00DC,
     328             :         VHV_RESULT__LATEST_SETTING                                                 = 0x00DD,
     329             :         RESULT__OSC_CALIBRATE_VAL                                                  = 0x00DE,
     330             :         RESULT__OSC_CALIBRATE_VAL_HI                                               = 0x00DE,
     331             :         RESULT__OSC_CALIBRATE_VAL_LO                                               = 0x00DF,
     332             :         ANA_CONFIG__POWERDOWN_GO1                                                  = 0x00E0,
     333             :         ANA_CONFIG__REF_BG_CTRL                                                    = 0x00E1,
     334             :         ANA_CONFIG__REGDVDD1V2_CTRL                                                = 0x00E2,
     335             :         ANA_CONFIG__OSC_SLOW_CTRL                                                  = 0x00E3,
     336             :         TEST_MODE__STATUS                                                          = 0x00E4,
     337             :         FIRMWARE__SYSTEM_STATUS                                                    = 0x00E5,
     338             :         FIRMWARE__MODE_STATUS                                                      = 0x00E6,
     339             :         FIRMWARE__SECONDARY_MODE_STATUS                                            = 0x00E7,
     340             :         FIRMWARE__CAL_REPEAT_RATE_COUNTER                                          = 0x00E8,
     341             :         FIRMWARE__CAL_REPEAT_RATE_COUNTER_HI                                       = 0x00E8,
     342             :         FIRMWARE__CAL_REPEAT_RATE_COUNTER_LO                                       = 0x00E9,
     343             :         FIRMWARE__HISTOGRAM_BIN                                                    = 0x00EA,
     344             :         GPH__SYSTEM__THRESH_HIGH                                                   = 0x00EC,
     345             :         GPH__SYSTEM__THRESH_HIGH_HI                                                = 0x00EC,
     346             :         GPH__SYSTEM__THRESH_HIGH_LO                                                = 0x00ED,
     347             :         GPH__SYSTEM__THRESH_LOW                                                    = 0x00EE,
     348             :         GPH__SYSTEM__THRESH_LOW_HI                                                 = 0x00EE,
     349             :         GPH__SYSTEM__THRESH_LOW_LO                                                 = 0x00EF,
     350             :         GPH__SYSTEM__ENABLE_XTALK_PER_QUADRANT                                     = 0x00F0,
     351             :         GPH__SPARE_0                                                               = 0x00F1,
     352             :         GPH__SD_CONFIG__WOI_SD0                                                    = 0x00F2,
     353             :         GPH__SD_CONFIG__WOI_SD1                                                    = 0x00F3,
     354             :         GPH__SD_CONFIG__INITIAL_PHASE_SD0                                          = 0x00F4,
     355             :         GPH__SD_CONFIG__INITIAL_PHASE_SD1                                          = 0x00F5,
     356             :         GPH__SD_CONFIG__FIRST_ORDER_SELECT                                         = 0x00F6,
     357             :         GPH__SD_CONFIG__QUANTIFIER                                                 = 0x00F7,
     358             :         GPH__ROI_CONFIG__USER_ROI_CENTRE_SPAD                                      = 0x00F8,
     359             :         GPH__ROI_CONFIG__USER_ROI_REQUESTED_GLOBAL_XY_SIZE                         = 0x00F9,
     360             :         GPH__SYSTEM__SEQUENCE_CONFIG                                               = 0x00FA,
     361             :         GPH__GPH_ID                                                                = 0x00FB,
     362             :         SYSTEM__INTERRUPT_SET                                                      = 0x00FC,
     363             :         INTERRUPT_MANAGER__ENABLES                                                 = 0x00FD,
     364             :         INTERRUPT_MANAGER__CLEAR                                                   = 0x00FE,
     365             :         INTERRUPT_MANAGER__STATUS                                                  = 0x00FF,
     366             :         MCU_TO_HOST_BANK__WR_ACCESS_EN                                             = 0x0100,
     367             :         POWER_MANAGEMENT__GO1_RESET_STATUS                                         = 0x0101,
     368             :         PAD_STARTUP_MODE__VALUE_RO                                                 = 0x0102,
     369             :         PAD_STARTUP_MODE__VALUE_CTRL                                               = 0x0103,
     370             :         PLL_PERIOD_US                                                              = 0x0104,
     371             :         PLL_PERIOD_US_3                                                            = 0x0104,
     372             :         PLL_PERIOD_US_2                                                            = 0x0105,
     373             :         PLL_PERIOD_US_1                                                            = 0x0106,
     374             :         PLL_PERIOD_US_0                                                            = 0x0107,
     375             :         INTERRUPT_SCHEDULER__DATA_OUT                                              = 0x0108,
     376             :         INTERRUPT_SCHEDULER__DATA_OUT_3                                            = 0x0108,
     377             :         INTERRUPT_SCHEDULER__DATA_OUT_2                                            = 0x0109,
     378             :         INTERRUPT_SCHEDULER__DATA_OUT_1                                            = 0x010A,
     379             :         INTERRUPT_SCHEDULER__DATA_OUT_0                                            = 0x010B,
     380             :         NVM_BIST__COMPLETE                                                         = 0x010C,
     381             :         NVM_BIST__STATUS                                                           = 0x010D,
     382             :         IDENTIFICATION__MODEL_ID                                                   = 0x010F,
     383             :         IDENTIFICATION__MODULE_TYPE                                                = 0x0110,
     384             :         IDENTIFICATION__REVISION_ID                                                = 0x0111,
     385             :         IDENTIFICATION__MODULE_ID                                                  = 0x0112,
     386             :         IDENTIFICATION__MODULE_ID_HI                                               = 0x0112,
     387             :         IDENTIFICATION__MODULE_ID_LO                                               = 0x0113,
     388             :         ANA_CONFIG__FAST_OSC__TRIM_MAX                                             = 0x0114,
     389             :         ANA_CONFIG__FAST_OSC__FREQ_SET                                             = 0x0115,
     390             :         ANA_CONFIG__VCSEL_TRIM                                                     = 0x0116,
     391             :         ANA_CONFIG__VCSEL_SELION                                                   = 0x0117,
     392             :         ANA_CONFIG__VCSEL_SELION_MAX                                               = 0x0118,
     393             :         PROTECTED_LASER_SAFETY__LOCK_BIT                                           = 0x0119,
     394             :         LASER_SAFETY__KEY                                                          = 0x011A,
     395             :         LASER_SAFETY__KEY_RO                                                       = 0x011B,
     396             :         LASER_SAFETY__CLIP                                                         = 0x011C,
     397             :         LASER_SAFETY__MULT                                                         = 0x011D,
     398             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_0                                          = 0x011E,
     399             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_1                                          = 0x011F,
     400             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_2                                          = 0x0120,
     401             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_3                                          = 0x0121,
     402             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_4                                          = 0x0122,
     403             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_5                                          = 0x0123,
     404             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_6                                          = 0x0124,
     405             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_7                                          = 0x0125,
     406             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_8                                          = 0x0126,
     407             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_9                                          = 0x0127,
     408             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_10                                         = 0x0128,
     409             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_11                                         = 0x0129,
     410             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_12                                         = 0x012A,
     411             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_13                                         = 0x012B,
     412             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_14                                         = 0x012C,
     413             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_15                                         = 0x012D,
     414             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_16                                         = 0x012E,
     415             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_17                                         = 0x012F,
     416             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_18                                         = 0x0130,
     417             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_19                                         = 0x0131,
     418             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_20                                         = 0x0132,
     419             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_21                                         = 0x0133,
     420             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_22                                         = 0x0134,
     421             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_23                                         = 0x0135,
     422             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_24                                         = 0x0136,
     423             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_25                                         = 0x0137,
     424             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_26                                         = 0x0138,
     425             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_27                                         = 0x0139,
     426             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_28                                         = 0x013A,
     427             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_29                                         = 0x013B,
     428             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_30                                         = 0x013C,
     429             :         GLOBAL_CONFIG__SPAD_ENABLES_RTN_31                                         = 0x013D,
     430             :         ROI_CONFIG__MODE_ROI_CENTRE_SPAD                                           = 0x013E,
     431             :         ROI_CONFIG__MODE_ROI_XY_SIZE                                               = 0x013F,
     432             :         GO2_HOST_BANK_ACCESS__OVERRIDE                                             = 0x0300,
     433             :         MCU_UTIL_MULTIPLIER__MULTIPLICAND                                          = 0x0400,
     434             :         MCU_UTIL_MULTIPLIER__MULTIPLICAND_3                                        = 0x0400,
     435             :         MCU_UTIL_MULTIPLIER__MULTIPLICAND_2                                        = 0x0401,
     436             :         MCU_UTIL_MULTIPLIER__MULTIPLICAND_1                                        = 0x0402,
     437             :         MCU_UTIL_MULTIPLIER__MULTIPLICAND_0                                        = 0x0403,
     438             :         MCU_UTIL_MULTIPLIER__MULTIPLIER                                            = 0x0404,
     439             :         MCU_UTIL_MULTIPLIER__MULTIPLIER_3                                          = 0x0404,
     440             :         MCU_UTIL_MULTIPLIER__MULTIPLIER_2                                          = 0x0405,
     441             :         MCU_UTIL_MULTIPLIER__MULTIPLIER_1                                          = 0x0406,
     442             :         MCU_UTIL_MULTIPLIER__MULTIPLIER_0                                          = 0x0407,
     443             :         MCU_UTIL_MULTIPLIER__PRODUCT_HI                                            = 0x0408,
     444             :         MCU_UTIL_MULTIPLIER__PRODUCT_HI_3                                          = 0x0408,
     445             :         MCU_UTIL_MULTIPLIER__PRODUCT_HI_2                                          = 0x0409,
     446             :         MCU_UTIL_MULTIPLIER__PRODUCT_HI_1                                          = 0x040A,
     447             :         MCU_UTIL_MULTIPLIER__PRODUCT_HI_0                                          = 0x040B,
     448             :         MCU_UTIL_MULTIPLIER__PRODUCT_LO                                            = 0x040C,
     449             :         MCU_UTIL_MULTIPLIER__PRODUCT_LO_3                                          = 0x040C,
     450             :         MCU_UTIL_MULTIPLIER__PRODUCT_LO_2                                          = 0x040D,
     451             :         MCU_UTIL_MULTIPLIER__PRODUCT_LO_1                                          = 0x040E,
     452             :         MCU_UTIL_MULTIPLIER__PRODUCT_LO_0                                          = 0x040F,
     453             :         MCU_UTIL_MULTIPLIER__START                                                 = 0x0410,
     454             :         MCU_UTIL_MULTIPLIER__STATUS                                                = 0x0411,
     455             :         MCU_UTIL_DIVIDER__START                                                    = 0x0412,
     456             :         MCU_UTIL_DIVIDER__STATUS                                                   = 0x0413,
     457             :         MCU_UTIL_DIVIDER__DIVIDEND                                                 = 0x0414,
     458             :         MCU_UTIL_DIVIDER__DIVIDEND_3                                               = 0x0414,
     459             :         MCU_UTIL_DIVIDER__DIVIDEND_2                                               = 0x0415,
     460             :         MCU_UTIL_DIVIDER__DIVIDEND_1                                               = 0x0416,
     461             :         MCU_UTIL_DIVIDER__DIVIDEND_0                                               = 0x0417,
     462             :         MCU_UTIL_DIVIDER__DIVISOR                                                  = 0x0418,
     463             :         MCU_UTIL_DIVIDER__DIVISOR_3                                                = 0x0418,
     464             :         MCU_UTIL_DIVIDER__DIVISOR_2                                                = 0x0419,
     465             :         MCU_UTIL_DIVIDER__DIVISOR_1                                                = 0x041A,
     466             :         MCU_UTIL_DIVIDER__DIVISOR_0                                                = 0x041B,
     467             :         MCU_UTIL_DIVIDER__QUOTIENT                                                 = 0x041C,
     468             :         MCU_UTIL_DIVIDER__QUOTIENT_3                                               = 0x041C,
     469             :         MCU_UTIL_DIVIDER__QUOTIENT_2                                               = 0x041D,
     470             :         MCU_UTIL_DIVIDER__QUOTIENT_1                                               = 0x041E,
     471             :         MCU_UTIL_DIVIDER__QUOTIENT_0                                               = 0x041F,
     472             :         TIMER0__VALUE_IN                                                           = 0x0420,
     473             :         TIMER0__VALUE_IN_3                                                         = 0x0420,
     474             :         TIMER0__VALUE_IN_2                                                         = 0x0421,
     475             :         TIMER0__VALUE_IN_1                                                         = 0x0422,
     476             :         TIMER0__VALUE_IN_0                                                         = 0x0423,
     477             :         TIMER1__VALUE_IN                                                           = 0x0424,
     478             :         TIMER1__VALUE_IN_3                                                         = 0x0424,
     479             :         TIMER1__VALUE_IN_2                                                         = 0x0425,
     480             :         TIMER1__VALUE_IN_1                                                         = 0x0426,
     481             :         TIMER1__VALUE_IN_0                                                         = 0x0427,
     482             :         TIMER0__CTRL                                                               = 0x0428,
     483             :         TIMER1__CTRL                                                               = 0x0429,
     484             :         MCU_GENERAL_PURPOSE__GP_0                                                  = 0x042C,
     485             :         MCU_GENERAL_PURPOSE__GP_1                                                  = 0x042D,
     486             :         MCU_GENERAL_PURPOSE__GP_2                                                  = 0x042E,
     487             :         MCU_GENERAL_PURPOSE__GP_3                                                  = 0x042F,
     488             :         MCU_RANGE_CALC__CONFIG                                                     = 0x0430,
     489             :         MCU_RANGE_CALC__OFFSET_CORRECTED_RANGE                                     = 0x0432,
     490             :         MCU_RANGE_CALC__OFFSET_CORRECTED_RANGE_HI                                  = 0x0432,
     491             :         MCU_RANGE_CALC__OFFSET_CORRECTED_RANGE_LO                                  = 0x0433,
     492             :         MCU_RANGE_CALC__SPARE_4                                                    = 0x0434,
     493             :         MCU_RANGE_CALC__SPARE_4_3                                                  = 0x0434,
     494             :         MCU_RANGE_CALC__SPARE_4_2                                                  = 0x0435,
     495             :         MCU_RANGE_CALC__SPARE_4_1                                                  = 0x0436,
     496             :         MCU_RANGE_CALC__SPARE_4_0                                                  = 0x0437,
     497             :         MCU_RANGE_CALC__AMBIENT_DURATION_PRE_CALC                                  = 0x0438,
     498             :         MCU_RANGE_CALC__AMBIENT_DURATION_PRE_CALC_HI                               = 0x0438,
     499             :         MCU_RANGE_CALC__AMBIENT_DURATION_PRE_CALC_LO                               = 0x0439,
     500             :         MCU_RANGE_CALC__ALGO_VCSEL_PERIOD                                          = 0x043C,
     501             :         MCU_RANGE_CALC__SPARE_5                                                    = 0x043D,
     502             :         MCU_RANGE_CALC__ALGO_TOTAL_PERIODS                                         = 0x043E,
     503             :         MCU_RANGE_CALC__ALGO_TOTAL_PERIODS_HI                                      = 0x043E,
     504             :         MCU_RANGE_CALC__ALGO_TOTAL_PERIODS_LO                                      = 0x043F,
     505             :         MCU_RANGE_CALC__ALGO_ACCUM_PHASE                                           = 0x0440,
     506             :         MCU_RANGE_CALC__ALGO_ACCUM_PHASE_3                                         = 0x0440,
     507             :         MCU_RANGE_CALC__ALGO_ACCUM_PHASE_2                                         = 0x0441,
     508             :         MCU_RANGE_CALC__ALGO_ACCUM_PHASE_1                                         = 0x0442,
     509             :         MCU_RANGE_CALC__ALGO_ACCUM_PHASE_0                                         = 0x0443,
     510             :         MCU_RANGE_CALC__ALGO_SIGNAL_EVENTS                                         = 0x0444,
     511             :         MCU_RANGE_CALC__ALGO_SIGNAL_EVENTS_3                                       = 0x0444,
     512             :         MCU_RANGE_CALC__ALGO_SIGNAL_EVENTS_2                                       = 0x0445,
     513             :         MCU_RANGE_CALC__ALGO_SIGNAL_EVENTS_1                                       = 0x0446,
     514             :         MCU_RANGE_CALC__ALGO_SIGNAL_EVENTS_0                                       = 0x0447,
     515             :         MCU_RANGE_CALC__ALGO_AMBIENT_EVENTS                                        = 0x0448,
     516             :         MCU_RANGE_CALC__ALGO_AMBIENT_EVENTS_3                                      = 0x0448,
     517             :         MCU_RANGE_CALC__ALGO_AMBIENT_EVENTS_2                                      = 0x0449,
     518             :         MCU_RANGE_CALC__ALGO_AMBIENT_EVENTS_1                                      = 0x044A,
     519             :         MCU_RANGE_CALC__ALGO_AMBIENT_EVENTS_0                                      = 0x044B,
     520             :         MCU_RANGE_CALC__SPARE_6                                                    = 0x044C,
     521             :         MCU_RANGE_CALC__SPARE_6_HI                                                 = 0x044C,
     522             :         MCU_RANGE_CALC__SPARE_6_LO                                                 = 0x044D,
     523             :         MCU_RANGE_CALC__ALGO_ADJUST_VCSEL_PERIOD                                   = 0x044E,
     524             :         MCU_RANGE_CALC__ALGO_ADJUST_VCSEL_PERIOD_HI                                = 0x044E,
     525             :         MCU_RANGE_CALC__ALGO_ADJUST_VCSEL_PERIOD_LO                                = 0x044F,
     526             :         MCU_RANGE_CALC__NUM_SPADS                                                  = 0x0450,
     527             :         MCU_RANGE_CALC__NUM_SPADS_HI                                               = 0x0450,
     528             :         MCU_RANGE_CALC__NUM_SPADS_LO                                               = 0x0451,
     529             :         MCU_RANGE_CALC__PHASE_OUTPUT                                               = 0x0452,
     530             :         MCU_RANGE_CALC__PHASE_OUTPUT_HI                                            = 0x0452,
     531             :         MCU_RANGE_CALC__PHASE_OUTPUT_LO                                            = 0x0453,
     532             :         MCU_RANGE_CALC__RATE_PER_SPAD_MCPS                                         = 0x0454,
     533             :         MCU_RANGE_CALC__RATE_PER_SPAD_MCPS_3                                       = 0x0454,
     534             :         MCU_RANGE_CALC__RATE_PER_SPAD_MCPS_2                                       = 0x0455,
     535             :         MCU_RANGE_CALC__RATE_PER_SPAD_MCPS_1                                       = 0x0456,
     536             :         MCU_RANGE_CALC__RATE_PER_SPAD_MCPS_0                                       = 0x0457,
     537             :         MCU_RANGE_CALC__SPARE_7                                                    = 0x0458,
     538             :         MCU_RANGE_CALC__SPARE_8                                                    = 0x0459,
     539             :         MCU_RANGE_CALC__PEAK_SIGNAL_RATE_MCPS                                      = 0x045A,
     540             :         MCU_RANGE_CALC__PEAK_SIGNAL_RATE_MCPS_HI                                   = 0x045A,
     541             :         MCU_RANGE_CALC__PEAK_SIGNAL_RATE_MCPS_LO                                   = 0x045B,
     542             :         MCU_RANGE_CALC__AVG_SIGNAL_RATE_MCPS                                       = 0x045C,
     543             :         MCU_RANGE_CALC__AVG_SIGNAL_RATE_MCPS_HI                                    = 0x045C,
     544             :         MCU_RANGE_CALC__AVG_SIGNAL_RATE_MCPS_LO                                    = 0x045D,
     545             :         MCU_RANGE_CALC__AMBIENT_RATE_MCPS                                          = 0x045E,
     546             :         MCU_RANGE_CALC__AMBIENT_RATE_MCPS_HI                                       = 0x045E,
     547             :         MCU_RANGE_CALC__AMBIENT_RATE_MCPS_LO                                       = 0x045F,
     548             :         MCU_RANGE_CALC__XTALK                                                      = 0x0460,
     549             :         MCU_RANGE_CALC__XTALK_HI                                                   = 0x0460,
     550             :         MCU_RANGE_CALC__XTALK_LO                                                   = 0x0461,
     551             :         MCU_RANGE_CALC__CALC_STATUS                                                = 0x0462,
     552             :         MCU_RANGE_CALC__DEBUG                                                      = 0x0463,
     553             :         MCU_RANGE_CALC__PEAK_SIGNAL_RATE_XTALK_CORR_MCPS                           = 0x0464,
     554             :         MCU_RANGE_CALC__PEAK_SIGNAL_RATE_XTALK_CORR_MCPS_HI                        = 0x0464,
     555             :         MCU_RANGE_CALC__PEAK_SIGNAL_RATE_XTALK_CORR_MCPS_LO                        = 0x0465,
     556             :         MCU_RANGE_CALC__SPARE_0                                                    = 0x0468,
     557             :         MCU_RANGE_CALC__SPARE_1                                                    = 0x0469,
     558             :         MCU_RANGE_CALC__SPARE_2                                                    = 0x046A,
     559             :         MCU_RANGE_CALC__SPARE_3                                                    = 0x046B,
     560             :         PATCH__CTRL                                                                = 0x0470,
     561             :         PATCH__JMP_ENABLES                                                         = 0x0472,
     562             :         PATCH__JMP_ENABLES_HI                                                      = 0x0472,
     563             :         PATCH__JMP_ENABLES_LO                                                      = 0x0473,
     564             :         PATCH__DATA_ENABLES                                                        = 0x0474,
     565             :         PATCH__DATA_ENABLES_HI                                                     = 0x0474,
     566             :         PATCH__DATA_ENABLES_LO                                                     = 0x0475,
     567             :         PATCH__OFFSET_0                                                            = 0x0476,
     568             :         PATCH__OFFSET_0_HI                                                         = 0x0476,
     569             :         PATCH__OFFSET_0_LO                                                         = 0x0477,
     570             :         PATCH__OFFSET_1                                                            = 0x0478,
     571             :         PATCH__OFFSET_1_HI                                                         = 0x0478,
     572             :         PATCH__OFFSET_1_LO                                                         = 0x0479,
     573             :         PATCH__OFFSET_2                                                            = 0x047A,
     574             :         PATCH__OFFSET_2_HI                                                         = 0x047A,
     575             :         PATCH__OFFSET_2_LO                                                         = 0x047B,
     576             :         PATCH__OFFSET_3                                                            = 0x047C,
     577             :         PATCH__OFFSET_3_HI                                                         = 0x047C,
     578             :         PATCH__OFFSET_3_LO                                                         = 0x047D,
     579             :         PATCH__OFFSET_4                                                            = 0x047E,
     580             :         PATCH__OFFSET_4_HI                                                         = 0x047E,
     581             :         PATCH__OFFSET_4_LO                                                         = 0x047F,
     582             :         PATCH__OFFSET_5                                                            = 0x0480,
     583             :         PATCH__OFFSET_5_HI                                                         = 0x0480,
     584             :         PATCH__OFFSET_5_LO                                                         = 0x0481,
     585             :         PATCH__OFFSET_6                                                            = 0x0482,
     586             :         PATCH__OFFSET_6_HI                                                         = 0x0482,
     587             :         PATCH__OFFSET_6_LO                                                         = 0x0483,
     588             :         PATCH__OFFSET_7                                                            = 0x0484,
     589             :         PATCH__OFFSET_7_HI                                                         = 0x0484,
     590             :         PATCH__OFFSET_7_LO                                                         = 0x0485,
     591             :         PATCH__OFFSET_8                                                            = 0x0486,
     592             :         PATCH__OFFSET_8_HI                                                         = 0x0486,
     593             :         PATCH__OFFSET_8_LO                                                         = 0x0487,
     594             :         PATCH__OFFSET_9                                                            = 0x0488,
     595             :         PATCH__OFFSET_9_HI                                                         = 0x0488,
     596             :         PATCH__OFFSET_9_LO                                                         = 0x0489,
     597             :         PATCH__OFFSET_10                                                           = 0x048A,
     598             :         PATCH__OFFSET_10_HI                                                        = 0x048A,
     599             :         PATCH__OFFSET_10_LO                                                        = 0x048B,
     600             :         PATCH__OFFSET_11                                                           = 0x048C,
     601             :         PATCH__OFFSET_11_HI                                                        = 0x048C,
     602             :         PATCH__OFFSET_11_LO                                                        = 0x048D,
     603             :         PATCH__OFFSET_12                                                           = 0x048E,
     604             :         PATCH__OFFSET_12_HI                                                        = 0x048E,
     605             :         PATCH__OFFSET_12_LO                                                        = 0x048F,
     606             :         PATCH__OFFSET_13                                                           = 0x0490,
     607             :         PATCH__OFFSET_13_HI                                                        = 0x0490,
     608             :         PATCH__OFFSET_13_LO                                                        = 0x0491,
     609             :         PATCH__OFFSET_14                                                           = 0x0492,
     610             :         PATCH__OFFSET_14_HI                                                        = 0x0492,
     611             :         PATCH__OFFSET_14_LO                                                        = 0x0493,
     612             :         PATCH__OFFSET_15                                                           = 0x0494,
     613             :         PATCH__OFFSET_15_HI                                                        = 0x0494,
     614             :         PATCH__OFFSET_15_LO                                                        = 0x0495,
     615             :         PATCH__ADDRESS_0                                                           = 0x0496,
     616             :         PATCH__ADDRESS_0_HI                                                        = 0x0496,
     617             :         PATCH__ADDRESS_0_LO                                                        = 0x0497,
     618             :         PATCH__ADDRESS_1                                                           = 0x0498,
     619             :         PATCH__ADDRESS_1_HI                                                        = 0x0498,
     620             :         PATCH__ADDRESS_1_LO                                                        = 0x0499,
     621             :         PATCH__ADDRESS_2                                                           = 0x049A,
     622             :         PATCH__ADDRESS_2_HI                                                        = 0x049A,
     623             :         PATCH__ADDRESS_2_LO                                                        = 0x049B,
     624             :         PATCH__ADDRESS_3                                                           = 0x049C,
     625             :         PATCH__ADDRESS_3_HI                                                        = 0x049C,
     626             :         PATCH__ADDRESS_3_LO                                                        = 0x049D,
     627             :         PATCH__ADDRESS_4                                                           = 0x049E,
     628             :         PATCH__ADDRESS_4_HI                                                        = 0x049E,
     629             :         PATCH__ADDRESS_4_LO                                                        = 0x049F,
     630             :         PATCH__ADDRESS_5                                                           = 0x04A0,
     631             :         PATCH__ADDRESS_5_HI                                                        = 0x04A0,
     632             :         PATCH__ADDRESS_5_LO                                                        = 0x04A1,
     633             :         PATCH__ADDRESS_6                                                           = 0x04A2,
     634             :         PATCH__ADDRESS_6_HI                                                        = 0x04A2,
     635             :         PATCH__ADDRESS_6_LO                                                        = 0x04A3,
     636             :         PATCH__ADDRESS_7                                                           = 0x04A4,
     637             :         PATCH__ADDRESS_7_HI                                                        = 0x04A4,
     638             :         PATCH__ADDRESS_7_LO                                                        = 0x04A5,
     639             :         PATCH__ADDRESS_8                                                           = 0x04A6,
     640             :         PATCH__ADDRESS_8_HI                                                        = 0x04A6,
     641             :         PATCH__ADDRESS_8_LO                                                        = 0x04A7,
     642             :         PATCH__ADDRESS_9                                                           = 0x04A8,
     643             :         PATCH__ADDRESS_9_HI                                                        = 0x04A8,
     644             :         PATCH__ADDRESS_9_LO                                                        = 0x04A9,
     645             :         PATCH__ADDRESS_10                                                          = 0x04AA,
     646             :         PATCH__ADDRESS_10_HI                                                       = 0x04AA,
     647             :         PATCH__ADDRESS_10_LO                                                       = 0x04AB,
     648             :         PATCH__ADDRESS_11                                                          = 0x04AC,
     649             :         PATCH__ADDRESS_11_HI                                                       = 0x04AC,
     650             :         PATCH__ADDRESS_11_LO                                                       = 0x04AD,
     651             :         PATCH__ADDRESS_12                                                          = 0x04AE,
     652             :         PATCH__ADDRESS_12_HI                                                       = 0x04AE,
     653             :         PATCH__ADDRESS_12_LO                                                       = 0x04AF,
     654             :         PATCH__ADDRESS_13                                                          = 0x04B0,
     655             :         PATCH__ADDRESS_13_HI                                                       = 0x04B0,
     656             :         PATCH__ADDRESS_13_LO                                                       = 0x04B1,
     657             :         PATCH__ADDRESS_14                                                          = 0x04B2,
     658             :         PATCH__ADDRESS_14_HI                                                       = 0x04B2,
     659             :         PATCH__ADDRESS_14_LO                                                       = 0x04B3,
     660             :         PATCH__ADDRESS_15                                                          = 0x04B4,
     661             :         PATCH__ADDRESS_15_HI                                                       = 0x04B4,
     662             :         PATCH__ADDRESS_15_LO                                                       = 0x04B5,
     663             :         SPI_ASYNC_MUX__CTRL                                                        = 0x04C0,
     664             :         CLK__CONFIG                                                                = 0x04C4,
     665             :         GPIO_LV_MUX__CTRL                                                          = 0x04CC,
     666             :         GPIO_LV_PAD__CTRL                                                          = 0x04CD,
     667             :         PAD_I2C_LV__CONFIG                                                         = 0x04D0,
     668             :         PAD_STARTUP_MODE__VALUE_RO_GO1                                             = 0x04D4,
     669             :         HOST_IF__STATUS_GO1                                                        = 0x04D5,
     670             :         MCU_CLK_GATING__CTRL                                                       = 0x04D8,
     671             :         TEST__BIST_ROM_CTRL                                                        = 0x04E0,
     672             :         TEST__BIST_ROM_RESULT                                                      = 0x04E1,
     673             :         TEST__BIST_ROM_MCU_SIG                                                     = 0x04E2,
     674             :         TEST__BIST_ROM_MCU_SIG_HI                                                  = 0x04E2,
     675             :         TEST__BIST_ROM_MCU_SIG_LO                                                  = 0x04E3,
     676             :         TEST__BIST_RAM_CTRL                                                        = 0x04E4,
     677             :         TEST__BIST_RAM_RESULT                                                      = 0x04E5,
     678             :         TEST__TMC                                                                  = 0x04E8,
     679             :         TEST__PLL_BIST_MIN_THRESHOLD                                               = 0x04F0,
     680             :         TEST__PLL_BIST_MIN_THRESHOLD_HI                                            = 0x04F0,
     681             :         TEST__PLL_BIST_MIN_THRESHOLD_LO                                            = 0x04F1,
     682             :         TEST__PLL_BIST_MAX_THRESHOLD                                               = 0x04F2,
     683             :         TEST__PLL_BIST_MAX_THRESHOLD_HI                                            = 0x04F2,
     684             :         TEST__PLL_BIST_MAX_THRESHOLD_LO                                            = 0x04F3,
     685             :         TEST__PLL_BIST_COUNT_OUT                                                   = 0x04F4,
     686             :         TEST__PLL_BIST_COUNT_OUT_HI                                                = 0x04F4,
     687             :         TEST__PLL_BIST_COUNT_OUT_LO                                                = 0x04F5,
     688             :         TEST__PLL_BIST_GONOGO                                                      = 0x04F6,
     689             :         TEST__PLL_BIST_CTRL                                                        = 0x04F7,
     690             :         RANGING_CORE__DEVICE_ID                                                    = 0x0680,
     691             :         RANGING_CORE__REVISION_ID                                                  = 0x0681,
     692             :         RANGING_CORE__CLK_CTRL1                                                    = 0x0683,
     693             :         RANGING_CORE__CLK_CTRL2                                                    = 0x0684,
     694             :         RANGING_CORE__WOI_1                                                        = 0x0685,
     695             :         RANGING_CORE__WOI_REF_1                                                    = 0x0686,
     696             :         RANGING_CORE__START_RANGING                                                = 0x0687,
     697             :         RANGING_CORE__LOW_LIMIT_1                                                  = 0x0690,
     698             :         RANGING_CORE__HIGH_LIMIT_1                                                 = 0x0691,
     699             :         RANGING_CORE__LOW_LIMIT_REF_1                                              = 0x0692,
     700             :         RANGING_CORE__HIGH_LIMIT_REF_1                                             = 0x0693,
     701             :         RANGING_CORE__QUANTIFIER_1_MSB                                             = 0x0694,
     702             :         RANGING_CORE__QUANTIFIER_1_LSB                                             = 0x0695,
     703             :         RANGING_CORE__QUANTIFIER_REF_1_MSB                                         = 0x0696,
     704             :         RANGING_CORE__QUANTIFIER_REF_1_LSB                                         = 0x0697,
     705             :         RANGING_CORE__AMBIENT_OFFSET_1_MSB                                         = 0x0698,
     706             :         RANGING_CORE__AMBIENT_OFFSET_1_LSB                                         = 0x0699,
     707             :         RANGING_CORE__AMBIENT_OFFSET_REF_1_MSB                                     = 0x069A,
     708             :         RANGING_CORE__AMBIENT_OFFSET_REF_1_LSB                                     = 0x069B,
     709             :         RANGING_CORE__FILTER_STRENGTH_1                                            = 0x069C,
     710             :         RANGING_CORE__FILTER_STRENGTH_REF_1                                        = 0x069D,
     711             :         RANGING_CORE__SIGNAL_EVENT_LIMIT_1_MSB                                     = 0x069E,
     712             :         RANGING_CORE__SIGNAL_EVENT_LIMIT_1_LSB                                     = 0x069F,
     713             :         RANGING_CORE__SIGNAL_EVENT_LIMIT_REF_1_MSB                                 = 0x06A0,
     714             :         RANGING_CORE__SIGNAL_EVENT_LIMIT_REF_1_LSB                                 = 0x06A1,
     715             :         RANGING_CORE__TIMEOUT_OVERALL_PERIODS_MSB                                  = 0x06A4,
     716             :         RANGING_CORE__TIMEOUT_OVERALL_PERIODS_LSB                                  = 0x06A5,
     717             :         RANGING_CORE__INVERT_HW                                                    = 0x06A6,
     718             :         RANGING_CORE__FORCE_HW                                                     = 0x06A7,
     719             :         RANGING_CORE__STATIC_HW_VALUE                                              = 0x06A8,
     720             :         RANGING_CORE__FORCE_CONTINUOUS_AMBIENT                                     = 0x06A9,
     721             :         RANGING_CORE__TEST_PHASE_SELECT_TO_FILTER                                  = 0x06AA,
     722             :         RANGING_CORE__TEST_PHASE_SELECT_TO_TIMING_GEN                              = 0x06AB,
     723             :         RANGING_CORE__INITIAL_PHASE_VALUE_1                                        = 0x06AC,
     724             :         RANGING_CORE__INITIAL_PHASE_VALUE_REF_1                                    = 0x06AD,
     725             :         RANGING_CORE__FORCE_UP_IN                                                  = 0x06AE,
     726             :         RANGING_CORE__FORCE_DN_IN                                                  = 0x06AF,
     727             :         RANGING_CORE__STATIC_UP_VALUE_1                                            = 0x06B0,
     728             :         RANGING_CORE__STATIC_UP_VALUE_REF_1                                        = 0x06B1,
     729             :         RANGING_CORE__STATIC_DN_VALUE_1                                            = 0x06B2,
     730             :         RANGING_CORE__STATIC_DN_VALUE_REF_1                                        = 0x06B3,
     731             :         RANGING_CORE__MONITOR_UP_DN                                                = 0x06B4,
     732             :         RANGING_CORE__INVERT_UP_DN                                                 = 0x06B5,
     733             :         RANGING_CORE__CPUMP_1                                                      = 0x06B6,
     734             :         RANGING_CORE__CPUMP_2                                                      = 0x06B7,
     735             :         RANGING_CORE__CPUMP_3                                                      = 0x06B8,
     736             :         RANGING_CORE__OSC_1                                                        = 0x06B9,
     737             :         RANGING_CORE__PLL_1                                                        = 0x06BB,
     738             :         RANGING_CORE__PLL_2                                                        = 0x06BC,
     739             :         RANGING_CORE__REFERENCE_1                                                  = 0x06BD,
     740             :         RANGING_CORE__REFERENCE_3                                                  = 0x06BF,
     741             :         RANGING_CORE__REFERENCE_4                                                  = 0x06C0,
     742             :         RANGING_CORE__REFERENCE_5                                                  = 0x06C1,
     743             :         RANGING_CORE__REGAVDD1V2                                                   = 0x06C3,
     744             :         RANGING_CORE__CALIB_1                                                      = 0x06C4,
     745             :         RANGING_CORE__CALIB_2                                                      = 0x06C5,
     746             :         RANGING_CORE__CALIB_3                                                      = 0x06C6,
     747             :         RANGING_CORE__TST_MUX_SEL1                                                 = 0x06C9,
     748             :         RANGING_CORE__TST_MUX_SEL2                                                 = 0x06CA,
     749             :         RANGING_CORE__TST_MUX                                                      = 0x06CB,
     750             :         RANGING_CORE__GPIO_OUT_TESTMUX                                             = 0x06CC,
     751             :         RANGING_CORE__CUSTOM_FE                                                    = 0x06CD,
     752             :         RANGING_CORE__CUSTOM_FE_2                                                  = 0x06CE,
     753             :         RANGING_CORE__SPAD_READOUT                                                 = 0x06CF,
     754             :         RANGING_CORE__SPAD_READOUT_1                                               = 0x06D0,
     755             :         RANGING_CORE__SPAD_READOUT_2                                               = 0x06D1,
     756             :         RANGING_CORE__SPAD_PS                                                      = 0x06D2,
     757             :         RANGING_CORE__LASER_SAFETY_2                                               = 0x06D4,
     758             :         RANGING_CORE__NVM_CTRL__MODE                                               = 0x0780,
     759             :         RANGING_CORE__NVM_CTRL__PDN                                                = 0x0781,
     760             :         RANGING_CORE__NVM_CTRL__PROGN                                              = 0x0782,
     761             :         RANGING_CORE__NVM_CTRL__READN                                              = 0x0783,
     762             :         RANGING_CORE__NVM_CTRL__PULSE_WIDTH_MSB                                    = 0x0784,
     763             :         RANGING_CORE__NVM_CTRL__PULSE_WIDTH_LSB                                    = 0x0785,
     764             :         RANGING_CORE__NVM_CTRL__HV_RISE_MSB                                        = 0x0786,
     765             :         RANGING_CORE__NVM_CTRL__HV_RISE_LSB                                        = 0x0787,
     766             :         RANGING_CORE__NVM_CTRL__HV_FALL_MSB                                        = 0x0788,
     767             :         RANGING_CORE__NVM_CTRL__HV_FALL_LSB                                        = 0x0789,
     768             :         RANGING_CORE__NVM_CTRL__TST                                                = 0x078A,
     769             :         RANGING_CORE__NVM_CTRL__TESTREAD                                           = 0x078B,
     770             :         RANGING_CORE__NVM_CTRL__DATAIN_MMM                                         = 0x078C,
     771             :         RANGING_CORE__NVM_CTRL__DATAIN_LMM                                         = 0x078D,
     772             :         RANGING_CORE__NVM_CTRL__DATAIN_LLM                                         = 0x078E,
     773             :         RANGING_CORE__NVM_CTRL__DATAIN_LLL                                         = 0x078F,
     774             :         RANGING_CORE__NVM_CTRL__DATAOUT_MMM                                        = 0x0790,
     775             :         RANGING_CORE__NVM_CTRL__DATAOUT_LMM                                        = 0x0791,
     776             :         RANGING_CORE__NVM_CTRL__DATAOUT_LLM                                        = 0x0792,
     777             :         RANGING_CORE__NVM_CTRL__DATAOUT_LLL                                        = 0x0793,
     778             :         RANGING_CORE__NVM_CTRL__ADDR                                               = 0x0794,
     779             :         RANGING_CORE__NVM_CTRL__DATAOUT_ECC                                        = 0x0795,
     780             :         RANGING_CORE__RET_SPAD_EN_0                                                = 0x0796,
     781             :         RANGING_CORE__RET_SPAD_EN_1                                                = 0x0797,
     782             :         RANGING_CORE__RET_SPAD_EN_2                                                = 0x0798,
     783             :         RANGING_CORE__RET_SPAD_EN_3                                                = 0x0799,
     784             :         RANGING_CORE__RET_SPAD_EN_4                                                = 0x079A,
     785             :         RANGING_CORE__RET_SPAD_EN_5                                                = 0x079B,
     786             :         RANGING_CORE__RET_SPAD_EN_6                                                = 0x079C,
     787             :         RANGING_CORE__RET_SPAD_EN_7                                                = 0x079D,
     788             :         RANGING_CORE__RET_SPAD_EN_8                                                = 0x079E,
     789             :         RANGING_CORE__RET_SPAD_EN_9                                                = 0x079F,
     790             :         RANGING_CORE__RET_SPAD_EN_10                                               = 0x07A0,
     791             :         RANGING_CORE__RET_SPAD_EN_11                                               = 0x07A1,
     792             :         RANGING_CORE__RET_SPAD_EN_12                                               = 0x07A2,
     793             :         RANGING_CORE__RET_SPAD_EN_13                                               = 0x07A3,
     794             :         RANGING_CORE__RET_SPAD_EN_14                                               = 0x07A4,
     795             :         RANGING_CORE__RET_SPAD_EN_15                                               = 0x07A5,
     796             :         RANGING_CORE__RET_SPAD_EN_16                                               = 0x07A6,
     797             :         RANGING_CORE__RET_SPAD_EN_17                                               = 0x07A7,
     798             :         RANGING_CORE__SPAD_SHIFT_EN                                                = 0x07BA,
     799             :         RANGING_CORE__SPAD_DISABLE_CTRL                                            = 0x07BB,
     800             :         RANGING_CORE__SPAD_EN_SHIFT_OUT_DEBUG                                      = 0x07BC,
     801             :         RANGING_CORE__SPI_MODE                                                     = 0x07BD,
     802             :         RANGING_CORE__GPIO_DIR                                                     = 0x07BE,
     803             :         RANGING_CORE__VCSEL_PERIOD                                                 = 0x0880,
     804             :         RANGING_CORE__VCSEL_START                                                  = 0x0881,
     805             :         RANGING_CORE__VCSEL_STOP                                                   = 0x0882,
     806             :         RANGING_CORE__VCSEL_1                                                      = 0x0885,
     807             :         RANGING_CORE__VCSEL_STATUS                                                 = 0x088D,
     808             :         RANGING_CORE__STATUS                                                       = 0x0980,
     809             :         RANGING_CORE__LASER_CONTINUITY_STATE                                       = 0x0981,
     810             :         RANGING_CORE__RANGE_1_MMM                                                  = 0x0982,
     811             :         RANGING_CORE__RANGE_1_LMM                                                  = 0x0983,
     812             :         RANGING_CORE__RANGE_1_LLM                                                  = 0x0984,
     813             :         RANGING_CORE__RANGE_1_LLL                                                  = 0x0985,
     814             :         RANGING_CORE__RANGE_REF_1_MMM                                              = 0x0986,
     815             :         RANGING_CORE__RANGE_REF_1_LMM                                              = 0x0987,
     816             :         RANGING_CORE__RANGE_REF_1_LLM                                              = 0x0988,
     817             :         RANGING_CORE__RANGE_REF_1_LLL                                              = 0x0989,
     818             :         RANGING_CORE__AMBIENT_WINDOW_EVENTS_1_MMM                                  = 0x098A,
     819             :         RANGING_CORE__AMBIENT_WINDOW_EVENTS_1_LMM                                  = 0x098B,
     820             :         RANGING_CORE__AMBIENT_WINDOW_EVENTS_1_LLM                                  = 0x098C,
     821             :         RANGING_CORE__AMBIENT_WINDOW_EVENTS_1_LLL                                  = 0x098D,
     822             :         RANGING_CORE__RANGING_TOTAL_EVENTS_1_MMM                                   = 0x098E,
     823             :         RANGING_CORE__RANGING_TOTAL_EVENTS_1_LMM                                   = 0x098F,
     824             :         RANGING_CORE__RANGING_TOTAL_EVENTS_1_LLM                                   = 0x0990,
     825             :         RANGING_CORE__RANGING_TOTAL_EVENTS_1_LLL                                   = 0x0991,
     826             :         RANGING_CORE__SIGNAL_TOTAL_EVENTS_1_MMM                                    = 0x0992,
     827             :         RANGING_CORE__SIGNAL_TOTAL_EVENTS_1_LMM                                    = 0x0993,
     828             :         RANGING_CORE__SIGNAL_TOTAL_EVENTS_1_LLM                                    = 0x0994,
     829             :         RANGING_CORE__SIGNAL_TOTAL_EVENTS_1_LLL                                    = 0x0995,
     830             :         RANGING_CORE__TOTAL_PERIODS_ELAPSED_1_MM                                   = 0x0996,
     831             :         RANGING_CORE__TOTAL_PERIODS_ELAPSED_1_LM                                   = 0x0997,
     832             :         RANGING_CORE__TOTAL_PERIODS_ELAPSED_1_LL                                   = 0x0998,
     833             :         RANGING_CORE__AMBIENT_MISMATCH_MM                                          = 0x0999,
     834             :         RANGING_CORE__AMBIENT_MISMATCH_LM                                          = 0x099A,
     835             :         RANGING_CORE__AMBIENT_MISMATCH_LL                                          = 0x099B,
     836             :         RANGING_CORE__AMBIENT_WINDOW_EVENTS_REF_1_MMM                              = 0x099C,
     837             :         RANGING_CORE__AMBIENT_WINDOW_EVENTS_REF_1_LMM                              = 0x099D,
     838             :         RANGING_CORE__AMBIENT_WINDOW_EVENTS_REF_1_LLM                              = 0x099E,
     839             :         RANGING_CORE__AMBIENT_WINDOW_EVENTS_REF_1_LLL                              = 0x099F,
     840             :         RANGING_CORE__RANGING_TOTAL_EVENTS_REF_1_MMM                               = 0x09A0,
     841             :         RANGING_CORE__RANGING_TOTAL_EVENTS_REF_1_LMM                               = 0x09A1,
     842             :         RANGING_CORE__RANGING_TOTAL_EVENTS_REF_1_LLM                               = 0x09A2,
     843             :         RANGING_CORE__RANGING_TOTAL_EVENTS_REF_1_LLL                               = 0x09A3,
     844             :         RANGING_CORE__SIGNAL_TOTAL_EVENTS_REF_1_MMM                                = 0x09A4,
     845             :         RANGING_CORE__SIGNAL_TOTAL_EVENTS_REF_1_LMM                                = 0x09A5,
     846             :         RANGING_CORE__SIGNAL_TOTAL_EVENTS_REF_1_LLM                                = 0x09A6,
     847             :         RANGING_CORE__SIGNAL_TOTAL_EVENTS_REF_1_LLL                                = 0x09A7,
     848             :         RANGING_CORE__TOTAL_PERIODS_ELAPSED_REF_1_MM                               = 0x09A8,
     849             :         RANGING_CORE__TOTAL_PERIODS_ELAPSED_REF_1_LM                               = 0x09A9,
     850             :         RANGING_CORE__TOTAL_PERIODS_ELAPSED_REF_1_LL                               = 0x09AA,
     851             :         RANGING_CORE__AMBIENT_MISMATCH_REF_MM                                      = 0x09AB,
     852             :         RANGING_CORE__AMBIENT_MISMATCH_REF_LM                                      = 0x09AC,
     853             :         RANGING_CORE__AMBIENT_MISMATCH_REF_LL                                      = 0x09AD,
     854             :         RANGING_CORE__GPIO_CONFIG__A0                                              = 0x0A00,
     855             :         RANGING_CORE__RESET_CONTROL__A0                                            = 0x0A01,
     856             :         RANGING_CORE__INTR_MANAGER__A0                                             = 0x0A02,
     857             :         RANGING_CORE__POWER_FSM_TIME_OSC__A0                                       = 0x0A06,
     858             :         RANGING_CORE__VCSEL_ATEST__A0                                              = 0x0A07,
     859             :         RANGING_CORE__VCSEL_PERIOD_CLIPPED__A0                                     = 0x0A08,
     860             :         RANGING_CORE__VCSEL_STOP_CLIPPED__A0                                       = 0x0A09,
     861             :         RANGING_CORE__CALIB_2__A0                                                  = 0x0A0A,
     862             :         RANGING_CORE__STOP_CONDITION__A0                                           = 0x0A0B,
     863             :         RANGING_CORE__STATUS_RESET__A0                                             = 0x0A0C,
     864             :         RANGING_CORE__READOUT_CFG__A0                                              = 0x0A0D,
     865             :         RANGING_CORE__WINDOW_SETTING__A0                                           = 0x0A0E,
     866             :         RANGING_CORE__VCSEL_DELAY__A0                                              = 0x0A1A,
     867             :         RANGING_CORE__REFERENCE_2__A0                                              = 0x0A1B,
     868             :         RANGING_CORE__REGAVDD1V2__A0                                               = 0x0A1D,
     869             :         RANGING_CORE__TST_MUX__A0                                                  = 0x0A1F,
     870             :         RANGING_CORE__CUSTOM_FE_2__A0                                              = 0x0A20,
     871             :         RANGING_CORE__SPAD_READOUT__A0                                             = 0x0A21,
     872             :         RANGING_CORE__CPUMP_1__A0                                                  = 0x0A22,
     873             :         RANGING_CORE__SPARE_REGISTER__A0                                           = 0x0A23,
     874             :         RANGING_CORE__VCSEL_CONT_STAGE5_BYPASS__A0                                 = 0x0A24,
     875             :         RANGING_CORE__RET_SPAD_EN_18                                               = 0x0A25,
     876             :         RANGING_CORE__RET_SPAD_EN_19                                               = 0x0A26,
     877             :         RANGING_CORE__RET_SPAD_EN_20                                               = 0x0A27,
     878             :         RANGING_CORE__RET_SPAD_EN_21                                               = 0x0A28,
     879             :         RANGING_CORE__RET_SPAD_EN_22                                               = 0x0A29,
     880             :         RANGING_CORE__RET_SPAD_EN_23                                               = 0x0A2A,
     881             :         RANGING_CORE__RET_SPAD_EN_24                                               = 0x0A2B,
     882             :         RANGING_CORE__RET_SPAD_EN_25                                               = 0x0A2C,
     883             :         RANGING_CORE__RET_SPAD_EN_26                                               = 0x0A2D,
     884             :         RANGING_CORE__RET_SPAD_EN_27                                               = 0x0A2E,
     885             :         RANGING_CORE__RET_SPAD_EN_28                                               = 0x0A2F,
     886             :         RANGING_CORE__RET_SPAD_EN_29                                               = 0x0A30,
     887             :         RANGING_CORE__RET_SPAD_EN_30                                               = 0x0A31,
     888             :         RANGING_CORE__RET_SPAD_EN_31                                               = 0x0A32,
     889             :         RANGING_CORE__REF_SPAD_EN_0__EWOK                                          = 0x0A33,
     890             :         RANGING_CORE__REF_SPAD_EN_1__EWOK                                          = 0x0A34,
     891             :         RANGING_CORE__REF_SPAD_EN_2__EWOK                                          = 0x0A35,
     892             :         RANGING_CORE__REF_SPAD_EN_3__EWOK                                          = 0x0A36,
     893             :         RANGING_CORE__REF_SPAD_EN_4__EWOK                                          = 0x0A37,
     894             :         RANGING_CORE__REF_SPAD_EN_5__EWOK                                          = 0x0A38,
     895             :         RANGING_CORE__REF_EN_START_SELECT                                          = 0x0A39,
     896             :         RANGING_CORE__REGDVDD1V2_ATEST__EWOK                                       = 0x0A41,
     897             :         SOFT_RESET_GO1                                                             = 0x0B00,
     898             :         PRIVATE__PATCH_BASE_ADDR_RSLV                                              = 0x0E00,
     899             :         PREV_SHADOW_RESULT__INTERRUPT_STATUS                                       = 0x0ED0,
     900             :         PREV_SHADOW_RESULT__RANGE_STATUS                                           = 0x0ED1,
     901             :         PREV_SHADOW_RESULT__REPORT_STATUS                                          = 0x0ED2,
     902             :         PREV_SHADOW_RESULT__STREAM_COUNT                                           = 0x0ED3,
     903             :         PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0                         = 0x0ED4,
     904             :         PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_HI                      = 0x0ED4,
     905             :         PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_LO                      = 0x0ED5,
     906             :         PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0                        = 0x0ED6,
     907             :         PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_HI                     = 0x0ED6,
     908             :         PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_LO                     = 0x0ED7,
     909             :         PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0                            = 0x0ED8,
     910             :         PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_HI                         = 0x0ED8,
     911             :         PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_LO                         = 0x0ED9,
     912             :         PREV_SHADOW_RESULT__SIGMA_SD0                                              = 0x0EDA,
     913             :         PREV_SHADOW_RESULT__SIGMA_SD0_HI                                           = 0x0EDA,
     914             :         PREV_SHADOW_RESULT__SIGMA_SD0_LO                                           = 0x0EDB,
     915             :         PREV_SHADOW_RESULT__PHASE_SD0                                              = 0x0EDC,
     916             :         PREV_SHADOW_RESULT__PHASE_SD0_HI                                           = 0x0EDC,
     917             :         PREV_SHADOW_RESULT__PHASE_SD0_LO                                           = 0x0EDD,
     918             :         PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0                 = 0x0EDE,
     919             :         PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_HI              = 0x0EDE,
     920             :         PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_LO              = 0x0EDF,
     921             :         PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0    = 0x0EE0,
     922             :         PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_HI = 0x0EE0,
     923             :         PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_LO = 0x0EE1,
     924             :         PREV_SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0                    = 0x0EE2,
     925             :         PREV_SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_HI                 = 0x0EE2,
     926             :         PREV_SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_LO                 = 0x0EE3,
     927             :         PREV_SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0                    = 0x0EE4,
     928             :         PREV_SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_HI                 = 0x0EE4,
     929             :         PREV_SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_LO                 = 0x0EE5,
     930             :         PREV_SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0                         = 0x0EE6,
     931             :         PREV_SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_HI                      = 0x0EE6,
     932             :         PREV_SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_LO                      = 0x0EE7,
     933             :         PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1                         = 0x0EE8,
     934             :         PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_HI                      = 0x0EE8,
     935             :         PREV_SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_LO                      = 0x0EE9,
     936             :         PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1                        = 0x0EEA,
     937             :         PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_HI                     = 0x0EEA,
     938             :         PREV_SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_LO                     = 0x0EEB,
     939             :         PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1                            = 0x0EEC,
     940             :         PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_HI                         = 0x0EEC,
     941             :         PREV_SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_LO                         = 0x0EED,
     942             :         PREV_SHADOW_RESULT__SIGMA_SD1                                              = 0x0EEE,
     943             :         PREV_SHADOW_RESULT__SIGMA_SD1_HI                                           = 0x0EEE,
     944             :         PREV_SHADOW_RESULT__SIGMA_SD1_LO                                           = 0x0EEF,
     945             :         PREV_SHADOW_RESULT__PHASE_SD1                                              = 0x0EF0,
     946             :         PREV_SHADOW_RESULT__PHASE_SD1_HI                                           = 0x0EF0,
     947             :         PREV_SHADOW_RESULT__PHASE_SD1_LO                                           = 0x0EF1,
     948             :         PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1                 = 0x0EF2,
     949             :         PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_HI              = 0x0EF2,
     950             :         PREV_SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_LO              = 0x0EF3,
     951             :         PREV_SHADOW_RESULT__SPARE_0_SD1                                            = 0x0EF4,
     952             :         PREV_SHADOW_RESULT__SPARE_0_SD1_HI                                         = 0x0EF4,
     953             :         PREV_SHADOW_RESULT__SPARE_0_SD1_LO                                         = 0x0EF5,
     954             :         PREV_SHADOW_RESULT__SPARE_1_SD1                                            = 0x0EF6,
     955             :         PREV_SHADOW_RESULT__SPARE_1_SD1_HI                                         = 0x0EF6,
     956             :         PREV_SHADOW_RESULT__SPARE_1_SD1_LO                                         = 0x0EF7,
     957             :         PREV_SHADOW_RESULT__SPARE_2_SD1                                            = 0x0EF8,
     958             :         PREV_SHADOW_RESULT__SPARE_2_SD1_HI                                         = 0x0EF8,
     959             :         PREV_SHADOW_RESULT__SPARE_2_SD1_LO                                         = 0x0EF9,
     960             :         PREV_SHADOW_RESULT__SPARE_3_SD1                                            = 0x0EFA,
     961             :         PREV_SHADOW_RESULT__SPARE_3_SD1_HI                                         = 0x0EFA,
     962             :         PREV_SHADOW_RESULT__SPARE_3_SD1_LO                                         = 0x0EFB,
     963             :         PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0                         = 0x0EFC,
     964             :         PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_3                       = 0x0EFC,
     965             :         PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_2                       = 0x0EFD,
     966             :         PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_1                       = 0x0EFE,
     967             :         PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_0                       = 0x0EFF,
     968             :         PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0                          = 0x0F00,
     969             :         PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_3                        = 0x0F00,
     970             :         PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_2                        = 0x0F01,
     971             :         PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_1                        = 0x0F02,
     972             :         PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_0                        = 0x0F03,
     973             :         PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0                           = 0x0F04,
     974             :         PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_3                         = 0x0F04,
     975             :         PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_2                         = 0x0F05,
     976             :         PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_1                         = 0x0F06,
     977             :         PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_0                         = 0x0F07,
     978             :         PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0                         = 0x0F08,
     979             :         PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_3                       = 0x0F08,
     980             :         PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_2                       = 0x0F09,
     981             :         PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_1                       = 0x0F0A,
     982             :         PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_0                       = 0x0F0B,
     983             :         PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1                         = 0x0F0C,
     984             :         PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_3                       = 0x0F0C,
     985             :         PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_2                       = 0x0F0D,
     986             :         PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_1                       = 0x0F0E,
     987             :         PREV_SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_0                       = 0x0F0F,
     988             :         PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1                          = 0x0F10,
     989             :         PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_3                        = 0x0F10,
     990             :         PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_2                        = 0x0F11,
     991             :         PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_1                        = 0x0F12,
     992             :         PREV_SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_0                        = 0x0F13,
     993             :         PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1                           = 0x0F14,
     994             :         PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_3                         = 0x0F14,
     995             :         PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_2                         = 0x0F15,
     996             :         PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_1                         = 0x0F16,
     997             :         PREV_SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_0                         = 0x0F17,
     998             :         PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1                         = 0x0F18,
     999             :         PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_3                       = 0x0F18,
    1000             :         PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_2                       = 0x0F19,
    1001             :         PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_1                       = 0x0F1A,
    1002             :         PREV_SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_0                       = 0x0F1B,
    1003             :         PREV_SHADOW_RESULT_CORE__SPARE_0                                           = 0x0F1C,
    1004             :         RESULT__DEBUG_STATUS                                                       = 0x0F20,
    1005             :         RESULT__DEBUG_STAGE                                                        = 0x0F21,
    1006             :         GPH__SYSTEM__THRESH_RATE_HIGH                                              = 0x0F24,
    1007             :         GPH__SYSTEM__THRESH_RATE_HIGH_HI                                           = 0x0F24,
    1008             :         GPH__SYSTEM__THRESH_RATE_HIGH_LO                                           = 0x0F25,
    1009             :         GPH__SYSTEM__THRESH_RATE_LOW                                               = 0x0F26,
    1010             :         GPH__SYSTEM__THRESH_RATE_LOW_HI                                            = 0x0F26,
    1011             :         GPH__SYSTEM__THRESH_RATE_LOW_LO                                            = 0x0F27,
    1012             :         GPH__SYSTEM__INTERRUPT_CONFIG_GPIO                                         = 0x0F28,
    1013             :         GPH__DSS_CONFIG__ROI_MODE_CONTROL                                          = 0x0F2F,
    1014             :         GPH__DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT                             = 0x0F30,
    1015             :         GPH__DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT_HI                          = 0x0F30,
    1016             :         GPH__DSS_CONFIG__MANUAL_EFFECTIVE_SPADS_SELECT_LO                          = 0x0F31,
    1017             :         GPH__DSS_CONFIG__MANUAL_BLOCK_SELECT                                       = 0x0F32,
    1018             :         GPH__DSS_CONFIG__MAX_SPADS_LIMIT                                           = 0x0F33,
    1019             :         GPH__DSS_CONFIG__MIN_SPADS_LIMIT                                           = 0x0F34,
    1020             :         GPH__MM_CONFIG__TIMEOUT_MACROP_A_HI                                        = 0x0F36,
    1021             :         GPH__MM_CONFIG__TIMEOUT_MACROP_A_LO                                        = 0x0F37,
    1022             :         GPH__MM_CONFIG__TIMEOUT_MACROP_B_HI                                        = 0x0F38,
    1023             :         GPH__MM_CONFIG__TIMEOUT_MACROP_B_LO                                        = 0x0F39,
    1024             :         GPH__RANGE_CONFIG__TIMEOUT_MACROP_A_HI                                     = 0x0F3A,
    1025             :         GPH__RANGE_CONFIG__TIMEOUT_MACROP_A_LO                                     = 0x0F3B,
    1026             :         GPH__RANGE_CONFIG__VCSEL_PERIOD_A                                          = 0x0F3C,
    1027             :         GPH__RANGE_CONFIG__VCSEL_PERIOD_B                                          = 0x0F3D,
    1028             :         GPH__RANGE_CONFIG__TIMEOUT_MACROP_B_HI                                     = 0x0F3E,
    1029             :         GPH__RANGE_CONFIG__TIMEOUT_MACROP_B_LO                                     = 0x0F3F,
    1030             :         GPH__RANGE_CONFIG__SIGMA_THRESH                                            = 0x0F40,
    1031             :         GPH__RANGE_CONFIG__SIGMA_THRESH_HI                                         = 0x0F40,
    1032             :         GPH__RANGE_CONFIG__SIGMA_THRESH_LO                                         = 0x0F41,
    1033             :         GPH__RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS                           = 0x0F42,
    1034             :         GPH__RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS_HI                        = 0x0F42,
    1035             :         GPH__RANGE_CONFIG__MIN_COUNT_RATE_RTN_LIMIT_MCPS_LO                        = 0x0F43,
    1036             :         GPH__RANGE_CONFIG__VALID_PHASE_LOW                                         = 0x0F44,
    1037             :         GPH__RANGE_CONFIG__VALID_PHASE_HIGH                                        = 0x0F45,
    1038             :         FIRMWARE__INTERNAL_STREAM_COUNT_DIV                                        = 0x0F46,
    1039             :         FIRMWARE__INTERNAL_STREAM_COUNTER_VAL                                      = 0x0F47,
    1040             :         DSS_CALC__ROI_CTRL                                                         = 0x0F54,
    1041             :         DSS_CALC__SPARE_1                                                          = 0x0F55,
    1042             :         DSS_CALC__SPARE_2                                                          = 0x0F56,
    1043             :         DSS_CALC__SPARE_3                                                          = 0x0F57,
    1044             :         DSS_CALC__SPARE_4                                                          = 0x0F58,
    1045             :         DSS_CALC__SPARE_5                                                          = 0x0F59,
    1046             :         DSS_CALC__SPARE_6                                                          = 0x0F5A,
    1047             :         DSS_CALC__SPARE_7                                                          = 0x0F5B,
    1048             :         DSS_CALC__USER_ROI_SPAD_EN_0                                               = 0x0F5C,
    1049             :         DSS_CALC__USER_ROI_SPAD_EN_1                                               = 0x0F5D,
    1050             :         DSS_CALC__USER_ROI_SPAD_EN_2                                               = 0x0F5E,
    1051             :         DSS_CALC__USER_ROI_SPAD_EN_3                                               = 0x0F5F,
    1052             :         DSS_CALC__USER_ROI_SPAD_EN_4                                               = 0x0F60,
    1053             :         DSS_CALC__USER_ROI_SPAD_EN_5                                               = 0x0F61,
    1054             :         DSS_CALC__USER_ROI_SPAD_EN_6                                               = 0x0F62,
    1055             :         DSS_CALC__USER_ROI_SPAD_EN_7                                               = 0x0F63,
    1056             :         DSS_CALC__USER_ROI_SPAD_EN_8                                               = 0x0F64,
    1057             :         DSS_CALC__USER_ROI_SPAD_EN_9                                               = 0x0F65,
    1058             :         DSS_CALC__USER_ROI_SPAD_EN_10                                              = 0x0F66,
    1059             :         DSS_CALC__USER_ROI_SPAD_EN_11                                              = 0x0F67,
    1060             :         DSS_CALC__USER_ROI_SPAD_EN_12                                              = 0x0F68,
    1061             :         DSS_CALC__USER_ROI_SPAD_EN_13                                              = 0x0F69,
    1062             :         DSS_CALC__USER_ROI_SPAD_EN_14                                              = 0x0F6A,
    1063             :         DSS_CALC__USER_ROI_SPAD_EN_15                                              = 0x0F6B,
    1064             :         DSS_CALC__USER_ROI_SPAD_EN_16                                              = 0x0F6C,
    1065             :         DSS_CALC__USER_ROI_SPAD_EN_17                                              = 0x0F6D,
    1066             :         DSS_CALC__USER_ROI_SPAD_EN_18                                              = 0x0F6E,
    1067             :         DSS_CALC__USER_ROI_SPAD_EN_19                                              = 0x0F6F,
    1068             :         DSS_CALC__USER_ROI_SPAD_EN_20                                              = 0x0F70,
    1069             :         DSS_CALC__USER_ROI_SPAD_EN_21                                              = 0x0F71,
    1070             :         DSS_CALC__USER_ROI_SPAD_EN_22                                              = 0x0F72,
    1071             :         DSS_CALC__USER_ROI_SPAD_EN_23                                              = 0x0F73,
    1072             :         DSS_CALC__USER_ROI_SPAD_EN_24                                              = 0x0F74,
    1073             :         DSS_CALC__USER_ROI_SPAD_EN_25                                              = 0x0F75,
    1074             :         DSS_CALC__USER_ROI_SPAD_EN_26                                              = 0x0F76,
    1075             :         DSS_CALC__USER_ROI_SPAD_EN_27                                              = 0x0F77,
    1076             :         DSS_CALC__USER_ROI_SPAD_EN_28                                              = 0x0F78,
    1077             :         DSS_CALC__USER_ROI_SPAD_EN_29                                              = 0x0F79,
    1078             :         DSS_CALC__USER_ROI_SPAD_EN_30                                              = 0x0F7A,
    1079             :         DSS_CALC__USER_ROI_SPAD_EN_31                                              = 0x0F7B,
    1080             :         DSS_CALC__USER_ROI_0                                                       = 0x0F7C,
    1081             :         DSS_CALC__USER_ROI_1                                                       = 0x0F7D,
    1082             :         DSS_CALC__MODE_ROI_0                                                       = 0x0F7E,
    1083             :         DSS_CALC__MODE_ROI_1                                                       = 0x0F7F,
    1084             :         SIGMA_ESTIMATOR_CALC__SPARE_0                                              = 0x0F80,
    1085             :         VHV_RESULT__PEAK_SIGNAL_RATE_MCPS                                          = 0x0F82,
    1086             :         VHV_RESULT__PEAK_SIGNAL_RATE_MCPS_HI                                       = 0x0F82,
    1087             :         VHV_RESULT__PEAK_SIGNAL_RATE_MCPS_LO                                       = 0x0F83,
    1088             :         VHV_RESULT__SIGNAL_TOTAL_EVENTS_REF                                        = 0x0F84,
    1089             :         VHV_RESULT__SIGNAL_TOTAL_EVENTS_REF_3                                      = 0x0F84,
    1090             :         VHV_RESULT__SIGNAL_TOTAL_EVENTS_REF_2                                      = 0x0F85,
    1091             :         VHV_RESULT__SIGNAL_TOTAL_EVENTS_REF_1                                      = 0x0F86,
    1092             :         VHV_RESULT__SIGNAL_TOTAL_EVENTS_REF_0                                      = 0x0F87,
    1093             :         PHASECAL_RESULT__PHASE_OUTPUT_REF                                          = 0x0F88,
    1094             :         PHASECAL_RESULT__PHASE_OUTPUT_REF_HI                                       = 0x0F88,
    1095             :         PHASECAL_RESULT__PHASE_OUTPUT_REF_LO                                       = 0x0F89,
    1096             :         DSS_RESULT__TOTAL_RATE_PER_SPAD                                            = 0x0F8A,
    1097             :         DSS_RESULT__TOTAL_RATE_PER_SPAD_HI                                         = 0x0F8A,
    1098             :         DSS_RESULT__TOTAL_RATE_PER_SPAD_LO                                         = 0x0F8B,
    1099             :         DSS_RESULT__ENABLED_BLOCKS                                                 = 0x0F8C,
    1100             :         DSS_RESULT__NUM_REQUESTED_SPADS                                            = 0x0F8E,
    1101             :         DSS_RESULT__NUM_REQUESTED_SPADS_HI                                         = 0x0F8E,
    1102             :         DSS_RESULT__NUM_REQUESTED_SPADS_LO                                         = 0x0F8F,
    1103             :         MM_RESULT__INNER_INTERSECTION_RATE                                         = 0x0F92,
    1104             :         MM_RESULT__INNER_INTERSECTION_RATE_HI                                      = 0x0F92,
    1105             :         MM_RESULT__INNER_INTERSECTION_RATE_LO                                      = 0x0F93,
    1106             :         MM_RESULT__OUTER_COMPLEMENT_RATE                                           = 0x0F94,
    1107             :         MM_RESULT__OUTER_COMPLEMENT_RATE_HI                                        = 0x0F94,
    1108             :         MM_RESULT__OUTER_COMPLEMENT_RATE_LO                                        = 0x0F95,
    1109             :         MM_RESULT__TOTAL_OFFSET                                                    = 0x0F96,
    1110             :         MM_RESULT__TOTAL_OFFSET_HI                                                 = 0x0F96,
    1111             :         MM_RESULT__TOTAL_OFFSET_LO                                                 = 0x0F97,
    1112             :         XTALK_CALC__XTALK_FOR_ENABLED_SPADS                                        = 0x0F98,
    1113             :         XTALK_CALC__XTALK_FOR_ENABLED_SPADS_3                                      = 0x0F98,
    1114             :         XTALK_CALC__XTALK_FOR_ENABLED_SPADS_2                                      = 0x0F99,
    1115             :         XTALK_CALC__XTALK_FOR_ENABLED_SPADS_1                                      = 0x0F9A,
    1116             :         XTALK_CALC__XTALK_FOR_ENABLED_SPADS_0                                      = 0x0F9B,
    1117             :         XTALK_RESULT__AVG_XTALK_USER_ROI_KCPS                                      = 0x0F9C,
    1118             :         XTALK_RESULT__AVG_XTALK_USER_ROI_KCPS_3                                    = 0x0F9C,
    1119             :         XTALK_RESULT__AVG_XTALK_USER_ROI_KCPS_2                                    = 0x0F9D,
    1120             :         XTALK_RESULT__AVG_XTALK_USER_ROI_KCPS_1                                    = 0x0F9E,
    1121             :         XTALK_RESULT__AVG_XTALK_USER_ROI_KCPS_0                                    = 0x0F9F,
    1122             :         XTALK_RESULT__AVG_XTALK_MM_INNER_ROI_KCPS                                  = 0x0FA0,
    1123             :         XTALK_RESULT__AVG_XTALK_MM_INNER_ROI_KCPS_3                                = 0x0FA0,
    1124             :         XTALK_RESULT__AVG_XTALK_MM_INNER_ROI_KCPS_2                                = 0x0FA1,
    1125             :         XTALK_RESULT__AVG_XTALK_MM_INNER_ROI_KCPS_1                                = 0x0FA2,
    1126             :         XTALK_RESULT__AVG_XTALK_MM_INNER_ROI_KCPS_0                                = 0x0FA3,
    1127             :         XTALK_RESULT__AVG_XTALK_MM_OUTER_ROI_KCPS                                  = 0x0FA4,
    1128             :         XTALK_RESULT__AVG_XTALK_MM_OUTER_ROI_KCPS_3                                = 0x0FA4,
    1129             :         XTALK_RESULT__AVG_XTALK_MM_OUTER_ROI_KCPS_2                                = 0x0FA5,
    1130             :         XTALK_RESULT__AVG_XTALK_MM_OUTER_ROI_KCPS_1                                = 0x0FA6,
    1131             :         XTALK_RESULT__AVG_XTALK_MM_OUTER_ROI_KCPS_0                                = 0x0FA7,
    1132             :         RANGE_RESULT__ACCUM_PHASE                                                  = 0x0FA8,
    1133             :         RANGE_RESULT__ACCUM_PHASE_3                                                = 0x0FA8,
    1134             :         RANGE_RESULT__ACCUM_PHASE_2                                                = 0x0FA9,
    1135             :         RANGE_RESULT__ACCUM_PHASE_1                                                = 0x0FAA,
    1136             :         RANGE_RESULT__ACCUM_PHASE_0                                                = 0x0FAB,
    1137             :         RANGE_RESULT__OFFSET_CORRECTED_RANGE                                       = 0x0FAC,
    1138             :         RANGE_RESULT__OFFSET_CORRECTED_RANGE_HI                                    = 0x0FAC,
    1139             :         RANGE_RESULT__OFFSET_CORRECTED_RANGE_LO                                    = 0x0FAD,
    1140             :         SHADOW_PHASECAL_RESULT__VCSEL_START                                        = 0x0FAE,
    1141             :         SHADOW_RESULT__INTERRUPT_STATUS                                            = 0x0FB0,
    1142             :         SHADOW_RESULT__RANGE_STATUS                                                = 0x0FB1,
    1143             :         SHADOW_RESULT__REPORT_STATUS                                               = 0x0FB2,
    1144             :         SHADOW_RESULT__STREAM_COUNT                                                = 0x0FB3,
    1145             :         SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0                              = 0x0FB4,
    1146             :         SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_HI                           = 0x0FB4,
    1147             :         SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD0_LO                           = 0x0FB5,
    1148             :         SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0                             = 0x0FB6,
    1149             :         SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_HI                          = 0x0FB6,
    1150             :         SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD0_LO                          = 0x0FB7,
    1151             :         SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0                                 = 0x0FB8,
    1152             :         SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_HI                              = 0x0FB8,
    1153             :         SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD0_LO                              = 0x0FB9,
    1154             :         SHADOW_RESULT__SIGMA_SD0                                                   = 0x0FBA,
    1155             :         SHADOW_RESULT__SIGMA_SD0_HI                                                = 0x0FBA,
    1156             :         SHADOW_RESULT__SIGMA_SD0_LO                                                = 0x0FBB,
    1157             :         SHADOW_RESULT__PHASE_SD0                                                   = 0x0FBC,
    1158             :         SHADOW_RESULT__PHASE_SD0_HI                                                = 0x0FBC,
    1159             :         SHADOW_RESULT__PHASE_SD0_LO                                                = 0x0FBD,
    1160             :         SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0                      = 0x0FBE,
    1161             :         SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_HI                   = 0x0FBE,
    1162             :         SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD0_LO                   = 0x0FBF,
    1163             :         SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0         = 0x0FC0,
    1164             :         SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_HI      = 0x0FC0,
    1165             :         SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_CROSSTALK_CORRECTED_MCPS_SD0_LO      = 0x0FC1,
    1166             :         SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0                         = 0x0FC2,
    1167             :         SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_HI                      = 0x0FC2,
    1168             :         SHADOW_RESULT__MM_INNER_ACTUAL_EFFECTIVE_SPADS_SD0_LO                      = 0x0FC3,
    1169             :         SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0                         = 0x0FC4,
    1170             :         SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_HI                      = 0x0FC4,
    1171             :         SHADOW_RESULT__MM_OUTER_ACTUAL_EFFECTIVE_SPADS_SD0_LO                      = 0x0FC5,
    1172             :         SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0                              = 0x0FC6,
    1173             :         SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_HI                           = 0x0FC6,
    1174             :         SHADOW_RESULT__AVG_SIGNAL_COUNT_RATE_MCPS_SD0_LO                           = 0x0FC7,
    1175             :         SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1                              = 0x0FC8,
    1176             :         SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_HI                           = 0x0FC8,
    1177             :         SHADOW_RESULT__DSS_ACTUAL_EFFECTIVE_SPADS_SD1_LO                           = 0x0FC9,
    1178             :         SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1                             = 0x0FCA,
    1179             :         SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_HI                          = 0x0FCA,
    1180             :         SHADOW_RESULT__PEAK_SIGNAL_COUNT_RATE_MCPS_SD1_LO                          = 0x0FCB,
    1181             :         SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1                                 = 0x0FCC,
    1182             :         SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_HI                              = 0x0FCC,
    1183             :         SHADOW_RESULT__AMBIENT_COUNT_RATE_MCPS_SD1_LO                              = 0x0FCD,
    1184             :         SHADOW_RESULT__SIGMA_SD1                                                   = 0x0FCE,
    1185             :         SHADOW_RESULT__SIGMA_SD1_HI                                                = 0x0FCE,
    1186             :         SHADOW_RESULT__SIGMA_SD1_LO                                                = 0x0FCF,
    1187             :         SHADOW_RESULT__PHASE_SD1                                                   = 0x0FD0,
    1188             :         SHADOW_RESULT__PHASE_SD1_HI                                                = 0x0FD0,
    1189             :         SHADOW_RESULT__PHASE_SD1_LO                                                = 0x0FD1,
    1190             :         SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1                      = 0x0FD2,
    1191             :         SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_HI                   = 0x0FD2,
    1192             :         SHADOW_RESULT__FINAL_CROSSTALK_CORRECTED_RANGE_MM_SD1_LO                   = 0x0FD3,
    1193             :         SHADOW_RESULT__SPARE_0_SD1                                                 = 0x0FD4,
    1194             :         SHADOW_RESULT__SPARE_0_SD1_HI                                              = 0x0FD4,
    1195             :         SHADOW_RESULT__SPARE_0_SD1_LO                                              = 0x0FD5,
    1196             :         SHADOW_RESULT__SPARE_1_SD1                                                 = 0x0FD6,
    1197             :         SHADOW_RESULT__SPARE_1_SD1_HI                                              = 0x0FD6,
    1198             :         SHADOW_RESULT__SPARE_1_SD1_LO                                              = 0x0FD7,
    1199             :         SHADOW_RESULT__SPARE_2_SD1                                                 = 0x0FD8,
    1200             :         SHADOW_RESULT__SPARE_2_SD1_HI                                              = 0x0FD8,
    1201             :         SHADOW_RESULT__SPARE_2_SD1_LO                                              = 0x0FD9,
    1202             :         SHADOW_RESULT__SPARE_3_SD1                                                 = 0x0FDA,
    1203             :         SHADOW_RESULT__THRESH_INFO                                                 = 0x0FDB,
    1204             :         SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0                              = 0x0FDC,
    1205             :         SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_3                            = 0x0FDC,
    1206             :         SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_2                            = 0x0FDD,
    1207             :         SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_1                            = 0x0FDE,
    1208             :         SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD0_0                            = 0x0FDF,
    1209             :         SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0                               = 0x0FE0,
    1210             :         SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_3                             = 0x0FE0,
    1211             :         SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_2                             = 0x0FE1,
    1212             :         SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_1                             = 0x0FE2,
    1213             :         SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD0_0                             = 0x0FE3,
    1214             :         SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0                                = 0x0FE4,
    1215             :         SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_3                              = 0x0FE4,
    1216             :         SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_2                              = 0x0FE5,
    1217             :         SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_1                              = 0x0FE6,
    1218             :         SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD0_0                              = 0x0FE7,
    1219             :         SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0                              = 0x0FE8,
    1220             :         SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_3                            = 0x0FE8,
    1221             :         SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_2                            = 0x0FE9,
    1222             :         SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_1                            = 0x0FEA,
    1223             :         SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD0_0                            = 0x0FEB,
    1224             :         SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1                              = 0x0FEC,
    1225             :         SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_3                            = 0x0FEC,
    1226             :         SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_2                            = 0x0FED,
    1227             :         SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_1                            = 0x0FEE,
    1228             :         SHADOW_RESULT_CORE__AMBIENT_WINDOW_EVENTS_SD1_0                            = 0x0FEF,
    1229             :         SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1                               = 0x0FF0,
    1230             :         SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_3                             = 0x0FF0,
    1231             :         SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_2                             = 0x0FF1,
    1232             :         SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_1                             = 0x0FF2,
    1233             :         SHADOW_RESULT_CORE__RANGING_TOTAL_EVENTS_SD1_0                             = 0x0FF3,
    1234             :         SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1                                = 0x0FF4,
    1235             :         SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_3                              = 0x0FF4,
    1236             :         SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_2                              = 0x0FF5,
    1237             :         SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_1                              = 0x0FF6,
    1238             :         SHADOW_RESULT_CORE__SIGNAL_TOTAL_EVENTS_SD1_0                              = 0x0FF7,
    1239             :         SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1                              = 0x0FF8,
    1240             :         SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_3                            = 0x0FF8,
    1241             :         SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_2                            = 0x0FF9,
    1242             :         SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_1                            = 0x0FFA,
    1243             :         SHADOW_RESULT_CORE__TOTAL_PERIODS_ELAPSED_SD1_0                            = 0x0FFB,
    1244             :         SHADOW_RESULT_CORE__SPARE_0                                                = 0x0FFC,
    1245             :         SHADOW_PHASECAL_RESULT__REFERENCE_PHASE_HI                                 = 0x0FFE,
    1246             :         SHADOW_PHASECAL_RESULT__REFERENCE_PHASE_LO                                 = 0x0FFF,
    1247             :     };
    1248             : 
    1249             :     // constructor
    1250             :     AP_RangeFinder_VL53L1X(RangeFinder::RangeFinder_State &_state, AP_RangeFinder_Params &_params, AP_HAL::OwnPtr<AP_HAL::I2CDevice> dev);
    1251             : 
    1252             :     __INITFUNC__ bool init(DistanceMode mode);
    1253             :     void timer();
    1254             : 
    1255             :     // check sensor ID
    1256             :     bool check_id(void);
    1257             : 
    1258             :     // get a reading
    1259             :     bool get_reading(uint16_t &reading_cm);
    1260             :     AP_HAL::OwnPtr<AP_HAL::I2CDevice> dev;
    1261             : 
    1262             :     // value used in measurement timing budget calculations
    1263             :     // assumes PresetMode is LOWPOWER_AUTONOMOUS
    1264             :     //
    1265             :     // vhv = LOWPOWER_AUTO_VHV_LOOP_DURATION_US + LOWPOWERAUTO_VHV_LOOP_BOUND
    1266             :     //       (tuning parm default) * LOWPOWER_AUTO_VHV_LOOP_DURATION_US
    1267             :     //     = 245 + 3 * 245 = 980
    1268             :     // TimingGuard = LOWPOWER_AUTO_OVERHEAD_BEFORE_A_RANGING +
    1269             :     //               LOWPOWER_AUTO_OVERHEAD_BETWEEN_A_B_RANGING + vhv
    1270             :     //             = 1448 + 2100 + 980 = 4528
    1271             :     static const uint32_t TimingGuard = 4528;
    1272             : 
    1273             :     // value in DSS_CONFIG__TARGET_TOTAL_RATE_MCPS register,
    1274             :     // used in DSS calculations
    1275             :     static const uint16_t TargetRate = 0x0A00;
    1276             : 
    1277             :     uint16_t fast_osc_frequency;
    1278             :     uint16_t osc_calibrate_val;
    1279             :     uint32_t sum_mm;
    1280             :     uint32_t counter;
    1281             :     bool calibrated;
    1282             : 
    1283             :     bool read_register(uint16_t reg, uint8_t &value) WARN_IF_UNUSED;
    1284             :     bool read_register16(uint16_t reg, uint16_t &value) WARN_IF_UNUSED;
    1285             :     bool write_register(uint16_t reg, uint8_t value) WARN_IF_UNUSED;
    1286             :     bool write_register16(uint16_t reg, uint16_t value) WARN_IF_UNUSED;
    1287             :     bool write_register32(uint16_t reg, uint32_t value) WARN_IF_UNUSED;
    1288             :     bool dataReady(void);
    1289             :     bool reset(void) WARN_IF_UNUSED;
    1290             :     bool setDistanceMode(DistanceMode distance_mode) WARN_IF_UNUSED;
    1291             :     bool setMeasurementTimingBudget(uint32_t budget_us) WARN_IF_UNUSED;
    1292             :     bool getMeasurementTimingBudget(uint32_t &budget) WARN_IF_UNUSED;
    1293             :     bool startContinuous(uint32_t period_ms) WARN_IF_UNUSED;
    1294             :     uint32_t decodeTimeout(uint16_t reg_val);
    1295             :     uint16_t encodeTimeout(uint32_t timeout_mclks);
    1296             :     uint32_t timeoutMclksToMicroseconds(uint32_t timeout_mclks, uint32_t macro_period_us);
    1297             :     uint32_t timeoutMicrosecondsToMclks(uint32_t timeout_us, uint32_t macro_period_us);
    1298             :     uint32_t calcMacroPeriod(uint8_t vcsel_period) const;
    1299             :     bool setupManualCalibration(void);
    1300             : };
    1301             : 
    1302             : #endif  // AP_RANGEFINDER_VL53L1X_ENABLED

Generated by: LCOV version 1.14