286 #include <ti/control/mmwavelink/include/rl_datatypes.h> 298 #if defined(WIN32) || defined(WIN32_) || defined(_MSC_VER) 299 #define MMWL_EXPORT __declspec(dllexport) 305 #define RL_MMWAVELINK_VERSION "1.2.0.1.24.9.18" 306 #define RL_MMWAVELINK_VERSION_MAJOR (1U) 307 #define RL_MMWAVELINK_VERSION_MINOR (2U) 308 #define RL_MMWAVELINK_VERSION_BUILD (0U) 309 #define RL_MMWAVELINK_VERSION_DEBUG (1U) 310 #define RL_MMWAVELINK_VERSION_DAY (24U) 311 #define RL_MMWAVELINK_VERSION_MONTH (9U) 312 #define RL_MMWAVELINK_VERSION_YEAR (18U) 315 #define RL_RET_CODE_OK ((rlReturnVal_t)0) 316 #define RL_RET_CODE_PROTOCOL_ERROR (-1) 317 #define RL_RET_CODE_INVALID_INPUT (-2) 318 #define RL_RET_CODE_SELF_ERROR (-3) 319 #define RL_RET_CODE_RADAR_IF_ERROR (-4) 320 #define RL_RET_CODE_MALLOC_ERROR (-5) 321 #define RL_RET_CODE_CRC_FAILED (-6) 323 #define RL_RET_CODE_CHKSUM_FAILED (-7) 325 #define RL_RET_CODE_RESP_TIMEOUT (-8) 327 #define RL_RET_CODE_FATAL_ERROR (-9) 329 #define RL_RET_CODE_RADAR_OSIF_ERROR (-10) 330 #define RL_RET_CODE_INVALID_STATE_ERROR (-11) 331 #define RL_RET_CODE_API_NOT_SUPPORTED (-12) 332 #define RL_RET_CODE_MSGID_MISMATCHED (-13) 334 #define RL_RET_CODE_NULL_PTR (-14) 335 #define RL_RET_CODE_INTERFACE_CB_NULL (-15) 338 #define RL_RET_CODE_INVLD_OPCODE (1U) 339 #define RL_RET_CODE_INVLD_NUM_SB (2U) 340 #define RL_RET_CODE_INVLD_SB_ID (3U) 341 #define RL_RET_CODE_INVLD_SB_LEN (4U) 342 #define RL_RET_CODE_SB_INVL_DATA (5U) 343 #define RL_RET_CODE_SB_PROCESS_ERR (6U) 344 #define RL_RET_CODE_MISMATCH_FILE_CRC (7U) 345 #define RL_RET_CODE_MISMATCH_FILE_TYPE (8U) 348 #define RL_RET_CODE_FRAME_ALREADY_STARTED (20U) 350 #define RL_RET_CODE_FRAME_ALREADY_ENDED (21U) 352 #define RL_RET_CODE_FRAME_CFG_NOT_RECVD (22U) 354 #define RL_RET_CODE_FRAME_TRIG_INVL_IN (23U) 358 #define RL_RET_CODE_CH_CFG_RX_INVAL_IN (24U) 360 #define RL_RET_CODE_CH_CFG_TX_INVAL_IN (25U) 362 #define RL_RET_CODE_CH_CFG_CASC_INVAL_IN (26U) 366 #define RL_RET_CODE_ADC_BITS_INVAL_IN (27U) 368 #define RL_RET_CODE_ADC_FORM_INVAL_IN (28U) 372 #define RL_RET_CODE_LP_ADC_INVAL_IN (29U) 376 #define RL_RET_CODE_DYN_PS_INVAL_IN (30U) 380 #define RL_RET_CODE_HSI_DIV_INVAL_IN (31U) 381 #define RL_RET_CODE_RESERVED0 (32U) 382 #define RL_RET_CODE_HSI_DIV_INVAL_1IN (33U) 384 #define RL_RET_CODE_HSI_DIV_INVAL_2IN (34U) 388 #define RL_RET_CODE_PF_IND_INVAL_IN (35U) 389 #define RL_RET_CODE_PF_START_FREQ_INVAL_IN (36U) 391 #define RL_RET_CODE_PF_IDLE_TIME_INVAL_IN (37U) 392 #define RL_RET_CODE_PF_IDLE_TIME_1INVAL_IN (38U) 394 #define RL_RET_CODE_PF_ADC_START_INVAL_IN (39U) 395 #define RL_RET_CODE_PF_RAMP_END_INVAL_IN (40U) 396 #define RL_RET_CODE_PF_RAMP_END_1INVAL_IN (41U) 398 #define RL_RET_CODE_PF_TX0_INVAL_IN (42U) 400 #define RL_RET_CODE_PF_TX1_INVAL_IN (43U) 402 #define RL_RET_CODE_PF_TX2_INVAL_IN (44U) 404 #define RL_RET_CODE_RESERVED1 (45U) 405 #define RL_RET_CODE_PF_FREQ_SLOPE_1INVAL_IN (46U) 407 #define RL_RET_CODE_PF_TX_START_INVAL_IN (47U) 409 #define RL_RET_CODE_PF_NUM_ADC_SMAP_INVAL_IN (48U) 411 #define RL_RET_CODE_PF_DFE_SAMP_RATE_INVAL_IN (49U) 413 #define RL_RET_CODE_PF_HPF1_CF_INVAL_IN (50U) 414 #define RL_RET_CODE_PF_HPF2_CF_INVAL_IN (51U) 415 #define RL_RET_CODE_PF_RX_GAIN_INVAL_IN (52U) 417 #define RL_RET_CODE_RESERVED2 (53U) 418 #define RL_RET_CODE_RESERVED3 (54U) 419 #define RL_RET_CODE_RESERVED4 (55U) 420 #define RL_RET_CODE_RESERVED5 (56U) 421 #define RL_RET_CODE_RESERVED6 (57U) 422 #define RL_RET_CODE_RESERVED7 (58U) 425 #define RL_RET_CODE_CHIRP_START_INVAL_IN (59U) 426 #define RL_RET_CODE_CHIRP_END_INVAL_IN (60U) 427 #define RL_RET_CODE_CHIRP_END_1INVAL_IN (61U) 428 #define RL_RET_CODE_CHIRP_PF_IND_INVAL_IN (62U) 429 #define RL_RET_CODE_CHIRP_PF_IND_1INVAL_IN (63U) 431 #define RL_RET_CODE_CHIRP_START_FREQ_INVAL_IN (64U) 432 #define RL_RET_CODE_CHIRP_SLOPE_INVAL_IN (65U) 433 #define RL_RET_CODE_CHIRP_SLOPE_1INVAL_IN (66U) 435 #define RL_RET_CODE_CHIRP_IDLE_TIME_INVAL_IN (67U) 436 #define RL_RET_CODE_CHIRP_ADC_START_INVAL_IN (68U) 437 #define RL_RET_CODE_CHIRP_ADC_START_1INVAL_IN (69U) 439 #define RL_RET_CODE_CHIRP_TX_ENA_INVAL_IN (70U) 440 #define RL_RET_CODE_CHIRP_TX_ENA_1INVAL_IN (71U) 445 #define RL_RET_CODE_FRAME_CHIRP_STR_INVAL_IN (72U) 446 #define RL_RET_CODE_FRAME_CHIRP_END_INVAL_IN (73U) 447 #define RL_RET_CODE_FRAME_CHIRP_END_1INVAL_IN (74U) 448 #define RL_RET_CODE_FRAME_CHIRP_END_2INVAL_IN (75U) 450 #define RL_RET_CODE_FRAME_CHIRP_PF_INVAL_IN (76U) 452 #define RL_RET_CODE_FRAME_CHIRP_LOOPS_INVAL_IN (77U) 453 #define RL_RET_CODE_RESERVED8 (78U) 454 #define RL_RET_CODE_FRAME_PERIOD_INVAL_IN (79U) 456 #define RL_RET_CODE_FRAME_PERIOD_1INVAL_IN (80U) 457 #define RL_RET_CODE_FRAME_TRIG_SEL_INVAL_IN (81U) 458 #define RL_RET_CODE_FRAME_TRIG_DELAY_INVAL_IN (82U) 459 #define RL_RET_CODE_FRAME_IS_ONGOING (83U) 462 #define RL_RET_CODE_AFRAME_NUM_SUBF_INVAL_IN (84U) 463 #define RL_RET_CODE_AFRAME_FORCE_PF_INVAL_IN (85U) 465 #define RL_RET_CODE_AFRAME_PF_IND_INVAL_IN (86U) 466 #define RL_RET_CODE_AFRAME_PF_IND_1INVAL_IN (87U) 468 #define RL_RET_CODE_AFRAME_CHIRP_STR_INVAL_IN (88U) 469 #define RL_RET_CODE_AFRAME_NCHIRP_INVAL_IN (89U) 471 #define RL_RET_CODE_AFRAME_NCHIRP_1INVAL_IN (90U) 473 #define RL_RET_CODE_AFRAME_CHIRP_PF_INVAL_IN (91U) 475 #define RL_RET_CODE_AFRAME_CHIRP_LOOPS_INVAL_IN (92U) 477 #define RL_RET_CODE_AFRAME_BURST_PERIOD_INVAL_IN (93U) 479 #define RL_RET_CODE_AFRAME_BURST_PER_1INVAL_IN (94U) 480 #define RL_RET_CODE_AFRAME_BURST_STIND_INVAL_IN (95U) 482 #define RL_RET_CODE_AFRAME_BURST_SIND_1INVAL_IN (96U) 486 #define RL_RET_CODE_AFRAME_NUM_BURSTS_INVAL_IN (97U) 488 #define RL_RET_CODE_AFRAME_BURST_LOOPS_INVAL_IN (98U) 490 #define RL_RET_CODE_AFRAME_SF_PERIOD_INVAL_IN (99U) 492 #define RL_RET_CODE_AFRAME_SF_PERIOD_1INVAL_IN (100U) 495 #define RL_RET_CODE_RESERVED9 (101U) 496 #define RL_RET_CODE_AFRAME_TRIG_SEL_INVAL_IN (102U) 497 #define RL_RET_CODE_AFRAME_TRIG_DELAY_INVAL_IN (103U) 498 #define RL_RET_CODE_AFRAME_IS_ONGOING (104U) 501 #define RL_RET_CODE_TS_POS_VECY_INVAL_IN (105U) 502 #define RL_RET_CODE_RESERVED10 (106U) 503 #define RL_RET_CODE_TS_VEL_VECXYZ_INVAL_IN (107U) 506 #define RL_RET_CODE_TS_SIG_LEVEL_INVAL_IN (108U) 507 #define RL_RET_CODE_TS_RX_ANT_POS_INVAL_IN (109U) 508 #define RL_RET_CODE_RESERVED11 (110U) 511 #define RL_RET_CODE_PROG_FILT_STARTINDX_INVALID (111U) 513 #define RL_RET_CODE_PROG_FILT_PROFILE_INVALID (112U) 514 #define RL_RET_CODE_PROG_FILT_UNSUPPORTED_DEV (113U) 517 #define RL_RET_CODE_PERCHIRPPHSHIFT_UNSUPPORTED_DEV (114U) 518 #define RL_RET_CODE_PERCHIRPPHSHIFT_STIND (115U) 519 #define RL_RET_CODE_PERCHIRPPHSHIFT_ENIND (116U) 520 #define RL_RET_CODE_PERCHIRPPHSHIFT_WRONG_STIND (117U) 523 #define RL_RET_CODE_RF_INIT_NOT_DONE (118U) 525 #define RL_RET_CODE_FREQ_LIMIT_OUT_RANGE (119U) 527 #define RL_RET_CODE_CAL_MON_TIME_INVALID (120U) 528 #define RL_RET_CODE_RUN_CAL_PERIOD_INVALID (121U) 529 #define RL_RET_CODE_CONT_STREAM_MODE_EN (122U) 531 #define RL_RET_CODE_RX_GAIN_BOOT_CAL_NOT_DONE (123U) 534 #define RL_RET_CODE_LO_DIST_BOOT_CAL_NOT_DONE (124U) 537 #define RL_RET_CODE_TX_PWR_BOOT_CAL_NOT_DONE (125U) 540 #define RL_RET_CODE_PROG_FILTR_UNSUPPORTED_DFEMODE (126U) 541 #define RL_RET_CODE_ADC_BITS_FULL_SCALE_REDUC_INVAL (127U) 545 #define RL_RET_CODE_CH_CFG_DEV_VRNT_CASC_INVAL_IN (130U) 550 #define RL_RET_CODE_INVAL_LOOPBACK_TYPE (132U) 551 #define RL_RET_CODE_INVAL_LOOPBACK_BURST_IND (133U) 552 #define RL_RET_CODE_INVAL_LOOPBACK_CONFIG (134U) 553 #define RL_RET_CODE_DYN_CHIRP_INVAL_SEG (135U) 554 #define RL_RET_CODE_DYN_PERCHIRP_PHSHFT_INVA_SEG (136U) 555 #define RL_RET_CODE_INVALID_CAL_CHUNK_ID (137U) 556 #define RL_RET_CODE_INVALID_CAL_CHUNK_DATA (138U) 559 #define RL_RET_CODE_RX02_RF_TURN_OFF_TIME_INVALID (139U) 561 #define RL_RET_CODE_RX13_RF_TURN_OFF_TIME_INVALID (140U) 563 #define RL_RET_CODE_RX02_BB_TURN_OFF_TIME_INVALID (141U) 565 #define RL_RET_CODE_RX13_BB_TURN_OFF_TIME_INVALID (142U) 567 #define RL_RET_CODE_RX02_RF_PREENABLE_TIME_INVALID (143U) 569 #define RL_RET_CODE_RX13_RF_PREENABLE_TIME_INVALID (144U) 571 #define RL_RET_CODE_RX02_BB_PREENABLE_TIME_INVALID (145U) 573 #define RL_RET_CODE_RX13_BB_PREENABLE_TIME_INVALID (146U) 575 #define RL_RET_CODE_RX02_RF_TURN_ON_TIME_INVALID (147U) 577 #define RL_RET_CODE_RX13_RF_TURN_ON_TIME_INVALID (148U) 579 #define RL_RET_CODE_RX02_BB_TURN_ON_TIME_INVALID (149U) 581 #define RL_RET_CODE_RX13_BB_TURN_ON_TIME_INVALID (150U) 583 #define RL_RET_CODE_RX_LO_TURN_OFF_TIME_INVALID (151U) 585 #define RL_RET_CODE_TX_LO_TURN_OFF_TIME_INVALID (152U) 587 #define RL_RET_CODE_RX_LO_TURN_ON_TIME_INVALID (153U) 589 #define RL_RET_CODE_TX_LO_TURN_ON_TIME_INVALID (154U) 591 #define RL_RET_CODE_SUBFRAME_TRIGGER_INVALID (155U) 596 #define RL_RET_CODE_REGULAR_ADC_MODE_INVALID (156U) 598 #define RL_RET_CODE_CHIRP_ROW_SELECT_INVAL_IN (159U) 601 #define RL_RET_CODE_DEVICE_NOT_ASILB_TYPE (250U) 602 #define RL_RET_CODE_FRAME_ONGOING (251U) 605 #define RL_RET_CODE_INVLD_REPO_MODE (252U) 606 #define RL_RET_CODE_INVLD_PROFILE_ID (253U) 608 #define RL_RET_CODE_INVLD_PROFILE (254U) 610 #define RL_RET_CODE_INVLD_EXTSIG_SETLTIME (255U) 612 #define RL_RET_CODE_INVLD_NO_RX_ENABLED (256U) 613 #define RL_RET_CODE_INVLD_TX0_NOT_ENABLED (257U) 614 #define RL_RET_CODE_INVLD_TX1_NOT_ENABLED (258U) 615 #define RL_RET_CODE_INVLD_TX2_NOT_ENABLED (259U) 616 #define RL_RET_CODE_MON_INVALID_RF_BIT_MASK (260U) 617 #define RL_RET_CODE_RESERVED12 (261U) 618 #define RL_RET_CODE_RESERVED13 (262U) 619 #define RL_RET_CODE_MON_TX_EN_CHK_FAIL (263U) 620 #define RL_RET_CODE_MON_RX_CH_EN_CHK_FAIL (264U) 621 #define RL_RET_CODE_MON_TX_CH_PS_LB (265U) 624 #define RL_RET_CODE_INVLD_SAT_MON_SEL (266U) 625 #define RL_RET_CODE_INVLD_SAT_MON_PRI_SLICE_DUR (267U) 628 #define RL_RET_CODE_INVLD_SAT_MON_NUM_SLICES (268U) 630 #define RL_RET_CODE_INVLD_SIG_IMG_SLICENUM (269U) 632 #define RL_RET_CODE_INVLD_SIG_IMG_NUMSAMPPERSLICE (270U) 636 #define RL_RET_CODE_INVLD_SYNTH_L1_LIN (271U) 637 #define RL_RET_CODE_INVLD_SYNTH_L2_LIN (272U) 638 #define RL_RET_CODE_INVLD_SYNTH_N_LIN (273U) 639 #define RL_RET_CODE_INVLD_SYNTH_MON_START_TIME (274U) 640 #define RL_RET_CODE_INVLD_SYNTH_MON_LIN_RAM_ADDR (275U) 641 #define RL_RET_CODE_LDO_BYPASSED (279U) 643 #define RL_RET_CODE_INVLD_SIG_IMG_BAND_MONTR (280U) 645 #define RL_RET_CODE_ANALOG_MONITOR_NOT_SUPPORTED (281U) 646 #define RL_RET_CODE_ISSUE_TO_ENABLE_CASCASE_MODE (282U) 649 #define RL_RET_CODE_RX_SAT_MON_NOT_SUPPORTED (283U) 651 #define RL_RET_CODE_CHIRP_FAIL (290U) 652 #define RL_RET_CODE_PD_PWR_LVL (291U) 654 #define RL_RET_CODE_ADC_PWR_LVL (292U) 655 #define RL_RET_CODE_NOISE_FIG_LOW (293U) 656 #define RL_RET_CODE_PD_CDS_ON_FAIL (294U) 658 #define RL_RET_CODE_PGA_GAIN_FAIL (295U) 661 #define RL_RET_CODE_RX_CHAN_EN_OOR (1001U) 662 #define RL_RET_CODE_NUM_ADC_BITS_OOR (1002U) 663 #define RL_RET_CODE_ADC_OUT_FMT_OOR (1003U) 664 #define RL_RET_CODE_IQ_SWAP_SEL_OOR (1004U) 666 #define RL_RET_CODE_CHAN_INTERLEAVE_OOR (1005U) 670 #define RL_RET_CODE_DATA_INTF_SEL_OOR (1006U) 671 #define RL_RET_CODE_DATA_FMT_PKT0_INVALID (1007U) 673 #define RL_RET_CODE_DATA_FMT_PKT1_INVALID (1008U) 677 #define RL_RET_CODE_LANE_ENABLE_OOR (1009U) 678 #define RL_RET_CODE_LANE_ENABLE_INVALID (1010U) 681 #define RL_RET_CODE_LANE_CLK_CFG_OOR (1011U) 682 #define RL_RET_CODE_LANE_CLK_CFG_INVALID (1012U) 683 #define RL_RET_CODE_DATA_RATE_OOR (1013U) 686 #define RL_RET_CODE_LANE_FMT_MAP_OOR (1014U) 687 #define RL_RET_CODE_LANE_PARAM_CFG_OOR (1015U) 690 #define RL_RET_CODE_CONT_STREAM_MODE_OOR (1016U) 692 #define RL_RET_CODE_CONT_STREAM_MODE_INVALID (1017U) 696 #define RL_RET_CODE_LANE0_POS_POL_OOR (1018U) 697 #define RL_RET_CODE_LANE1_POS_POL_OOR (1019U) 698 #define RL_RET_CODE_LANE2_POS_POL_OOR (1020U) 699 #define RL_RET_CODE_LANE3_POS_POL_OOR (1021U) 700 #define RL_RET_CODE_CLOCK_POS_OOR (1022U) 703 #define RL_RET_CODE_HALF_WORDS_PER_CHIRP_OOR (1023U) 706 #define RL_RET_CODE_NUM_SUBFRAMES_OOR (1024U) 708 #define RL_RET_CODE_SF1_TOT_NUM_CHIRPS_OOR (1025U) 709 #define RL_RET_CODE_SF1_NUM_ADC_SAMP_OOR (1026U) 711 #define RL_RET_CODE_SF1_NUM_CHIRPS_OOR (1027U) 714 #define RL_RET_CODE_SF2_TOT_NUM_CHIRPS_OOR (1028U) 716 #define RL_RET_CODE_SF2_NUM_ADC_SAMP_OOR (1029U) 718 #define RL_RET_CODE_SF2_NUM_CHIRPS_OOR (1030U) 721 #define RL_RET_CODE_SF3_TOT_NUM_CHIRPS_OOR (1031U) 723 #define RL_RET_CODE_SF3_NUM_ADC_SAMP_OOR (1032U) 725 #define RL_RET_CODE_SF3_NUM_CHIRPS_OOR (1033U) 728 #define RL_RET_CODE_SF4_TOT_NUM_CHIRPS_OOR (1034U) 730 #define RL_RET_CODE_SF4_NUM_ADC_SAMP_OOR (1035U) 732 #define RL_RET_CODE_SF4_NUM_CHIRPS_OOR (1036U) 734 #define RL_RET_CODE_MCUCLOCK_CTRL_OOR (1040U) 735 #define RL_RET_CODE_MCUCLOCK_SRC_OOR (1041U) 737 #define RL_RET_CODE_PMICCLOCK_CTRL_OOR (1042U) 738 #define RL_RET_CODE_PMICCLOCK_SRC_OOR (1043U) 739 #define RL_RET_CODE_PMICMODE_SELECT_OOR (1044U) 740 #define RL_RET_CODE_PMICFREQ_SLOPE_OOR (1045U) 741 #define RL_RET_CODE_PMICCLK_DITHER_EN_OOR (1046U) 743 #define RL_RET_CODE_TESTPATTERN_EN_OOR (1047U) 745 #define RL_RET_CODE_LFAULTTEST_UNSUPPORTED_OOR (1048U) 753 #define RL_DISABLE_LOGGING 1 756 #define RL_OSI_RET_CODE_OK (0) 757 #define RL_IF_RET_CODE_OK (0) 759 #ifdef RL_EXTENDED_MESSAGE 762 #define RL_MAX_SIZE_MSG (2044U) 764 #define RL_MAX_SIZE_MSG (256U) 778 #define RL_DEVICE_MAP_NATIVE (0U) 779 #define RL_DEVICE_MAP_CASCADED_1 (1U) 780 #define RL_DEVICE_MAP_CASCADED_2 (2U) 781 #define RL_DEVICE_MAP_CASCADED_3 (4U) 782 #define RL_DEVICE_MAP_CASCADED_4 (8U) 785 #define RL_DEVICE_MAP_CASCADED_ALL (RL_DEVICE_MAP_CASCADED_1 |\ 786 RL_DEVICE_MAP_CASCADED_2 |\ 787 RL_DEVICE_MAP_CASCADED_3 |\ 788 RL_DEVICE_MAP_CASCADED_4) 791 #define RL_DEVICE_INDEX_INTERNAL_BSS (0U) 792 #define RL_DEVICE_INDEX_INTERNAL_DSS_MSS (1U) 793 #define RL_DEVICE_INDEX_INTERNAL_HOST (2U) 796 #define RL_DEVICE_MAP_INTERNAL_BSS (RL_DEVICE_MAP_CASCADED_1) 798 #define RL_DEVICE_MAP_INTERNAL_DSS_MSS (RL_DEVICE_MAP_CASCADED_2) 799 #define RL_DEVICE_MAP_INTERNAL_HOST (RL_DEVICE_MAP_CASCADED_3) 802 #define RL_DEVICE_CONNECTED_MAX (4U) 807 #define RL_CRC_TYPE_16BIT_CCITT (0U) 808 #define RL_CRC_TYPE_32BIT (1U) 809 #define RL_CRC_TYPE_64BIT_ISO (2U) 810 #define RL_CRC_TYPE_NO_CRC (3U) 815 #define RL_PLATFORM_HOST (0x0U) 816 #define RL_PLATFORM_MSS (0x1U) 817 #define RL_PLATFORM_DSS (0x2U) 822 #define RL_AR_DEVICETYPE_12XX (0x0U) 823 #define RL_AR_DEVICETYPE_14XX (0x1U) 824 #define RL_AR_DEVICETYPE_16XX (0x2U) 825 #define RL_AR_DEVICETYPE_18XX (0x3U) 826 #define RL_AR_DEVICETYPE_68XX (0x4U) 831 #define RL_DBG_LEVEL_NONE ((rlUInt8_t)0U) 832 #define RL_DBG_LEVEL_ERROR ((rlUInt8_t)1U) 833 #define RL_DBG_LEVEL_WARNING ((rlUInt8_t)2U) 834 #define RL_DBG_LEVEL_INFO ((rlUInt8_t)3U) 835 #define RL_DBG_LEVEL_DEBUG ((rlUInt8_t)4U) 836 #define RL_DBG_LEVEL_VERBOSE ((rlUInt8_t)5U) 841 #define RL_SENSOR_ANTENA_ONE (0U) 842 #define RL_SENSOR_ANTENA_TWO (1U) 843 #define RL_SENSOR_ANTENA_THREE (2U) 844 #define RL_SENSOR_ANTENA_FOUR (3U) 845 #define RL_SENSOR_IFORCE (4U) 846 #define RL_SENSOR_VSENSE (5U) 847 #define RL_SENSOR_IFORCEBUF (6U) 848 #define RL_SENSOR_RESERVED0 (7U) 849 #define RL_SENSOR_RESERVED1 (8U) 850 #define RL_SENSOR_RESERVED2 (9U) 851 #define RL_SENSOR_RESERVED3 (10U) 852 #define RL_SENSOR_RESERVED4 (11U) 853 #define RL_MAX_GPADC_SENSORS (12U) 858 #define RL_SWAP_32(x) (((x) & 0x0000FFFFU)<<16U)|(((x) & 0xFFFF0000U)>>16U); 875 typedef rlInt32_t rlReturnVal_t;
880 typedef rlUInt8_t rlCrcType_t;
887 typedef void (*RL_P_OSI_SPAWN_ENTRY)(
const void* pValue);
892 typedef void (*RL_P_EVENT_HANDLER)(rlUInt8_t deviceIndex,
void* pValue);
897 typedef struct rlComIfCbs
911 rlComIfHdl_t (*rlComIfOpen)(rlUInt8_t deviceIndex, rlUInt32_t flags);
926 rlInt32_t (*rlComIfRead)(rlComIfHdl_t fd, rlUInt8_t *pBuff, rlUInt16_t len);
941 rlInt32_t (*rlComIfWrite)(rlComIfHdl_t fd, rlUInt8_t *pBuff, rlUInt16_t len);
954 rlInt32_t (*rlComIfClose)(rlComIfHdl_t fd);
960 typedef struct rlOsiMutexCbs
974 rlInt32_t (*rlOsiMutexCreate)(rlOsiMutexHdl_t* mutexHdl, rlInt8_t* name);
988 rlInt32_t (*rlOsiMutexLock)(rlOsiMutexHdl_t* mutexHdl, rlOsiTime_t timeout);
1001 rlInt32_t (*rlOsiMutexUnLock)(rlOsiMutexHdl_t* mutexHdl);
1014 rlInt32_t (*rlOsiMutexDelete)(rlOsiMutexHdl_t* mutexHdl);
1020 typedef struct rlOsiSemCbs
1034 rlInt32_t (*rlOsiSemCreate)(rlOsiSemHdl_t* semHdl, rlInt8_t* name);
1048 rlInt32_t (*rlOsiSemWait)(rlOsiSemHdl_t* semHdl, rlOsiTime_t timeout);
1061 rlInt32_t (*rlOsiSemSignal)(rlOsiSemHdl_t* semHdl);
1074 rlInt32_t (*rlOsiSemDelete)(rlOsiSemHdl_t* semHdl);
1080 typedef struct rlOsiMsgQCbs
1097 rlInt32_t (*rlOsiSpawn)(RL_P_OSI_SPAWN_ENTRY pEntry,
const void* pValue, rlUInt32_t flags);
1104 typedef struct rlOsiCbs
1109 rlOsiMutexCbs_t mutex;
1117 rlOsiMsgQCbs_t queue;
1123 typedef struct rlEventCbs
1140 void (*rlAsyncEvent)(rlUInt8_t devIndex, rlUInt16_t subId, rlUInt16_t subLen,
1141 rlUInt8_t *payload);
1147 typedef struct rlTimerCbs
1149 rlInt32_t (*rlDelay)(rlUInt32_t delay);
1155 typedef struct rlCmdParserCbs
1157 rlInt32_t (*rlCmdParser)(rlUInt8_t rxMsgClass, rlInt32_t inVal);
1158 rlInt32_t (*rlPostCnysStep)(rlUInt8_t devIndex);
1164 typedef struct rlCrcCbs
1182 rlInt32_t (*rlComputeCRC)(rlUInt8_t* data, rlUInt32_t dataLen, rlUInt8_t crcType,
1189 typedef struct rlDeviceCtrlCbs
1203 rlInt32_t (*rlDeviceEnable)(rlUInt8_t deviceIndex);
1217 rlInt32_t (*rlDeviceDisable)(rlUInt8_t deviceIndex);
1229 void (*rlDeviceMaskHostIrq)(rlComIfHdl_t fd);
1241 void (*rlDeviceUnMaskHostIrq)(rlComIfHdl_t fd);
1259 rlInt32_t (*rlDeviceWaitIrqStatus)(rlComIfHdl_t fd, rlUInt8_t highLow);
1272 rlUInt16_t (*rlCommIfAssertIrq)(rlUInt8_t highLow);
1291 rlInt32_t (*rlRegisterInterruptHandler)(rlUInt8_t deviceIndex,
1292 RL_P_EVENT_HANDLER pHandler,
void* pValue);
1297 typedef rlInt32_t (*rlPrintFptr)(
const rlInt8_t* format, ...);
1302 typedef struct rlDbgCb
1317 rlPrintFptr rlPrint;
1327 typedef struct rlClientCbs
1332 rlComIfCbs_t comIfCb;
1340 rlEventCbs_t eventCb;
1344 rlDeviceCtrlCbs_t devCtrlCb;
1361 rlCrcType_t crcType;
1367 rlUInt32_t ackTimeout;
1378 rlUInt8_t arDevType;
1390 typedef struct rlInitComplete
1395 rlUInt32_t powerUpTime;
1432 rlUInt64_t powerUpStatus;
1472 rlUInt64_t bootTestStatus;
1478 typedef struct rlStartComplete
1516 rlUInt32_t powerUpTime;
1520 rlUInt32_t reserved0;
1524 rlUInt32_t reserved1;
1531 typedef struct rlMssEsmFault
1568 rlUInt32_t esmGrp1Err;
1604 rlUInt32_t esmGrp2Err;
1608 rlUInt32_t reserved;
1617 typedef struct rlMssBootErrStatus
1622 rlUInt32_t powerUpTime;
1659 rlUInt64_t powerUpStatus;
1699 rlUInt64_t bootTestStatus;
1706 typedef struct rlMssLatentFaultReport
1744 rlUInt32_t testStatusFlg;
1748 rlUInt32_t reserved;
1756 typedef struct rlMssPeriodicTestStatus
1765 rlUInt32_t testStatusFlg;
1769 rlUInt32_t reserved;
1777 typedef struct rlMssRfErrStatus
1788 rlUInt32_t errStatusFlg;
1792 rlUInt32_t reserved;
1798 typedef struct rlBssEsmFault
1825 rlUInt32_t esmGrp1Err;
1861 rlUInt32_t esmGrp2Err;
1869 typedef struct rlVmonErrStatus
1871 #ifndef MMWL_BIG_ENDIAN 1878 rlUInt8_t faultType;
1882 rlUInt8_t reserved0;
1887 rlUInt8_t reserved0;
1894 rlUInt8_t faultType;
1899 rlUInt16_t reserved1;
1912 rlUInt32_t faultSig;
1916 rlUInt32_t reserved2;
1925 typedef struct rlRcvAdcData
1930 rlUInt16_t remChunks;
1934 rlSInt8_t adcData[220U];
1940 typedef struct rlRfInitComplete
1963 rlUInt32_t calibStatus;
1968 rlUInt32_t calibUpdate;
1974 rlUInt16_t temperature;
1978 rlUInt16_t reserved0;
1984 rlUInt32_t timeStamp;
1988 rlUInt32_t reserved1;
1996 typedef struct rlRfRunTimeCalibReport
2017 rlUInt32_t calibErrorFlag;
2023 rlUInt32_t calibUpdateStatus;
2029 rlInt16_t temperature;
2033 rlUInt16_t reserved0;
2039 rlUInt32_t timeStamp;
2043 rlUInt32_t reserved1;
2049 typedef struct rlRfApllCalDone
2051 rlUInt16_t apllClCalStatus;
2055 rlUInt16_t cccTolerance;
2059 rlUInt16_t cccCount0;
2063 rlUInt16_t measFreqCount;
2067 rlUInt32_t cccCount1;
2073 typedef struct rlRfTempData
2082 rlInt16_t tmpRx0Sens;
2086 rlInt16_t tmpRx1Sens;
2090 rlInt16_t tmpRx2Sens;
2094 rlInt16_t tmpRx3Sens;
2098 rlInt16_t tmpTx0Sens;
2102 rlInt16_t tmpTx1Sens;
2106 rlInt16_t tmpTx2Sens;
2110 rlInt16_t tmpPmSens;
2114 rlInt16_t tmpDig0Sens;
2120 rlInt16_t tmpDig1Sens;
2127 typedef struct rlCpuFault
2129 #ifndef MMWL_BIG_ENDIAN 2137 rlUInt8_t faultType;
2141 rlUInt8_t reserved0;
2146 rlUInt8_t reserved0;
2154 rlUInt8_t faultType;
2169 rlUInt32_t faultPrevLR;
2173 rlUInt32_t faultSpsr;
2182 rlUInt32_t faultAddr;
2195 rlUInt16_t faultErrStatus;
2196 #ifndef MMWL_BIG_ENDIAN 2203 rlUInt8_t faultErrSrc;
2209 rlUInt8_t faultAxiErrType;
2215 rlUInt8_t faultAccType;
2222 rlUInt8_t faultRecovType;
2229 rlUInt8_t faultAxiErrType;
2236 rlUInt8_t faultErrSrc;
2243 rlUInt8_t faultRecovType;
2249 rlUInt8_t faultAccType;
2254 rlUInt16_t reserved1;
2260 typedef struct rlFwVersionParam
2262 #ifndef MMWL_BIG_ENDIAN 2266 rlUInt8_t hwVarient;
2306 rlUInt8_t patchMajor;
2310 rlUInt8_t patchMinor;
2314 rlUInt8_t patchYear;
2318 rlUInt8_t patchMonth;
2328 rlUInt8_t patchBuildDebug;
2337 rlUInt8_t hwVarient;
2373 rlUInt8_t patchMinor;
2377 rlUInt8_t patchMajor;
2381 rlUInt8_t patchMonth;
2385 rlUInt8_t patchYear;
2391 rlUInt8_t patchBuildDebug;
2402 typedef struct rlSwVersionParam
2404 #ifndef MMWL_BIG_ENDIAN 2476 typedef struct rlVersion
2495 typedef struct rlGpAdcData
2514 typedef struct rlRecvdGpAdcData
2525 typedef struct rlAnalogFaultReportData
2527 #ifndef MMWL_BIG_ENDIAN 2535 rlUInt8_t faultType;
2539 rlUInt8_t reserved0;
2544 rlUInt8_t reserved0;
2552 rlUInt8_t faultType;
2557 rlUInt16_t reserved1;
2567 rlUInt32_t faultSig;
2571 rlUInt32_t reserved2;
2578 typedef struct rlCalMonTimingErrorReportData
2592 rlUInt16_t timingFailCode;
2593 rlUInt16_t reserved;
2599 typedef struct rlDigLatentFaultReportData
2633 rlUInt32_t digMonLatentFault;
2640 typedef struct rlMonReportHdrData
2645 rlUInt32_t fttiCount;
2653 rlUInt16_t reserved0;
2657 rlUInt32_t reserved1;
2664 typedef struct rlDigPeriodicReportData
2675 rlUInt32_t digMonPeriodicStatus;
2681 rlUInt32_t timeStamp;
2690 typedef struct rlMonTempReportData
2704 rlUInt16_t statusFlags;
2708 rlUInt16_t errorCode;
2726 rlInt16_t tempValues[10U];
2730 rlUInt32_t reserved;
2736 rlUInt32_t timeStamp;
2745 typedef struct rlMonRxGainPhRep
2758 rlUInt16_t statusFlags;
2762 rlUInt16_t errorCode;
2763 #ifndef MMWL_BIG_ENDIAN 2767 rlUInt8_t profIndex;
2771 rlUInt8_t reserved0;
2776 rlUInt8_t reserved0;
2780 rlUInt8_t profIndex;
2785 rlUInt16_t reserved1;
2800 rlUInt16_t rxGainVal[12U];
2815 rlUInt16_t rxPhaseVal[12U];
2819 rlUInt32_t reserved2;
2823 rlUInt32_t reserved3;
2829 rlUInt32_t timeStamp;
2839 typedef struct rlMonRxNoiseFigRep
2849 rlUInt16_t statusFlags;
2853 rlUInt16_t errorCode;
2854 #ifndef MMWL_BIG_ENDIAN 2858 rlUInt8_t profIndex;
2862 rlUInt8_t reserved0;
2867 rlUInt8_t reserved0;
2871 rlUInt8_t profIndex;
2876 rlUInt16_t reserved1;
2890 rlUInt16_t rxNoiseFigVal[12U];
2894 rlUInt32_t reserved2;
2898 rlUInt32_t reserved3;
2902 rlUInt32_t reserved4;
2908 rlUInt32_t timeStamp;
2917 typedef struct rlMonRxIfStageRep
2929 rlUInt16_t statusFlags;
2933 rlUInt16_t errorCode;
2934 #ifndef MMWL_BIG_ENDIAN 2938 rlUInt8_t profIndex;
2942 rlUInt8_t reserved0;
2947 rlUInt8_t reserved0;
2951 rlUInt8_t profIndex;
2956 rlUInt16_t reserved1;
2957 #ifndef MMWL_BIG_ENDIAN 2974 rlInt8_t hpfCutOffFreqEr[8U];
2992 rlInt8_t lpfCutOffFreqEr[8U];
3006 rlInt8_t rxIfaGainErVal[8U];
3017 rlUInt8_t reserved2;
3036 rlInt8_t hpfCutOffFreqEr[8U];
3054 rlInt8_t lpfCutOffFreqEr[8U];
3068 rlInt8_t rxIfaGainErVal[8U];
3073 rlUInt8_t reserved2;
3084 rlUInt16_t reserved3;
3088 rlUInt32_t reserved4;
3093 rlUInt32_t timeStamp;
3103 typedef struct rlMonTxPowRep
3114 rlUInt16_t statusFlags;
3118 rlUInt16_t errorCode;
3119 #ifndef MMWL_BIG_ENDIAN 3123 rlUInt8_t profIndex;
3127 rlUInt8_t reserved0;
3132 rlUInt8_t reserved0;
3136 rlUInt8_t profIndex;
3141 rlUInt16_t reserved1;
3153 rlInt16_t txPowVal[3U];
3157 rlUInt16_t reserved2;
3163 rlUInt32_t timeStamp;
3174 typedef struct rlMonTxBallBreakRep
3184 rlUInt16_t statusFlags;
3188 rlUInt16_t errorCode;
3193 rlInt16_t txReflCoefVal;
3197 rlUInt16_t reserved0;
3201 rlUInt32_t reserved1;
3207 rlUInt32_t timeStamp;
3216 typedef struct rlMonTxGainPhaMisRep
3227 rlUInt16_t statusFlags;
3231 rlUInt16_t errorCode;
3232 #ifndef MMWL_BIG_ENDIAN 3236 rlUInt8_t profIndex;
3240 rlUInt8_t reserved0;
3245 rlUInt8_t reserved0;
3249 rlUInt8_t profIndex;
3254 rlUInt16_t reserved1;
3267 rlInt16_t txGainVal[9U];
3281 rlUInt16_t txPhaVal[9U];
3285 rlUInt32_t reserved2;
3289 rlUInt32_t reserved3;
3294 rlUInt32_t timeStamp;
3304 typedef struct rlMonTxBpmRep
3315 rlUInt16_t statusFlags;
3319 rlUInt16_t errorCode;
3320 #ifndef MMWL_BIG_ENDIAN 3324 rlUInt8_t profIndex;
3331 rlUInt8_t phaseShifterMonVal2Msb;
3339 rlUInt8_t phaseShifterMonVal2Msb;
3343 rlUInt8_t profIndex;
3349 rlUInt16_t phaseShifterMonVal1;
3355 rlUInt16_t txBpmPhaDiff;
3356 #ifndef MMWL_BIG_ENDIAN 3363 rlInt8_t txBpmAmpDiff;
3370 rlUInt8_t phaseShifterMonVal2Lsb;
3378 rlUInt8_t phaseShifterMonVal2Lsb;
3385 rlInt8_t txBpmAmpDiff;
3392 rlUInt32_t timeStamp;
3401 typedef struct rlMonSynthFreqRep
3411 rlUInt16_t statusFlags;
3415 rlUInt16_t errorCode;
3416 #ifndef MMWL_BIG_ENDIAN 3420 rlUInt8_t profIndex;
3424 rlUInt8_t reserved0;
3429 rlUInt8_t reserved0;
3433 rlUInt8_t profIndex;
3438 rlUInt16_t reserved1;
3446 rlInt32_t maxFreqErVal;
3455 rlUInt32_t freqFailCnt;
3459 rlUInt32_t reserved2;
3463 rlUInt32_t reserved3;
3469 rlUInt32_t timeStamp;
3478 typedef struct rlMonExtAnaSigRep
3493 rlUInt16_t statusFlags;
3497 rlUInt16_t errorCode;
3509 rlInt16_t extAnaSigVal[6U];
3513 rlUInt32_t reserved;
3519 rlUInt32_t timeStamp;
3528 typedef struct rlMonTxIntAnaSigRep
3539 rlUInt16_t statusFlags;
3543 rlUInt16_t errorCode;
3544 #ifndef MMWL_BIG_ENDIAN 3548 rlUInt8_t profIndex;
3552 rlUInt8_t reserved0;
3557 rlUInt8_t reserved0;
3561 rlUInt8_t profIndex;
3566 rlUInt16_t reserved1;
3572 rlUInt32_t timeStamp;
3581 typedef struct rlMonRxIntAnaSigRep
3602 rlUInt16_t statusFlags;
3606 rlUInt16_t errorCode;
3607 #ifndef MMWL_BIG_ENDIAN 3611 rlUInt8_t profIndex;
3615 rlUInt8_t reserved0;
3620 rlUInt8_t reserved0;
3624 rlUInt8_t profIndex;
3629 rlUInt16_t reserved1;
3635 rlUInt32_t timeStamp;
3644 typedef struct rlMonPmclkloIntAnaSigRep
3657 rlUInt16_t statusFlags;
3661 rlUInt16_t errorCode;
3662 #ifndef MMWL_BIG_ENDIAN 3666 rlUInt8_t profIndex;
3671 rlInt8_t sync20GPower;
3677 rlInt8_t sync20GPower;
3681 rlUInt8_t profIndex;
3686 rlUInt16_t reserved;
3692 rlUInt32_t timeStamp;
3701 typedef struct rlMonGpadcIntAnaSigRep
3712 rlUInt16_t statusFlags;
3716 rlUInt16_t errorCode;
3722 rlInt16_t gpadcRef1Val;
3728 rlUInt16_t gpadcRef2Val;
3732 rlUInt32_t reserved;
3738 rlUInt32_t timeStamp;
3747 typedef struct rlMonPllConVoltRep
3763 rlUInt16_t statusFlags;
3767 rlUInt16_t errorCode;
3787 rlInt16_t pllContVoltVal[8U];
3791 rlUInt32_t reserved;
3797 rlUInt32_t timeStamp;
3806 typedef struct rlMonDccClkFreqRep
3821 rlUInt16_t statusFlags;
3825 rlUInt16_t errorCode;
3840 rlUInt16_t freqMeasVal[8U];
3844 rlUInt32_t reserved;
3850 rlUInt32_t timeStamp;
3860 typedef struct rlMonRxMixrInPwrRep
3873 rlUInt16_t statusFlags;
3877 rlUInt16_t errorCode;
3879 #ifndef MMWL_BIG_ENDIAN 3883 rlUInt8_t profIndex;
3887 rlUInt8_t reserved0;
3892 rlUInt8_t reserved0;
3896 rlUInt8_t profIndex;
3901 rlUInt16_t reserved1;
3914 rlUInt32_t rxMixInVolt;
3918 rlUInt32_t reserved2;
3923 rlUInt32_t timeStamp;
3927 #include <ti/control/mmwavelink/include/rl_device.h> 3928 #include <ti/control/mmwavelink/include/rl_sensor.h> 3929 #include <ti/control/mmwavelink/include/rl_monitoring.h> 3930 #include <ti/control/mmwavelink/include/rl_protocol.h> 3931 #include <ti/control/mmwavelink/include/rl_messages.h> This is the Monitoring report which RadarSS sends to the host, containing information about the relat...
mmWaveLink RF Run time calibration report for event RL_RF_AE_RUN_TIME_CALIB_REPORT_SB ...
This async event is sent periodically to indicate the status of periodic digital monitoring tests...
mmWaveLink client callback structure
This is the Monitoring report which RadarSS sends to the host, containing the measured RX noise figur...
mmWaveLink RF Init Complete data structure for event RL_RF_AE_INITCALIBSTATUS_SB
Sensors GPADC measurement data for event RL_RF_AE_GPADC_MEAS_DATA_SB.
Structure to hold the BSS ESM Fault data strucutre for event RL_RF_AE_ESMFAULT_SB.
mmWaveLink firmware version structure
Structure to hold the test status report of the latent fault tests data strucutre for event RL_DEV_AE...
Communication interface(SPI, MailBox, UART etc) callback functions.
mmWaveLink CRC callback function
Calibration monitoring timing error data for event RL_RF_AE_MON_TIMING_FAIL_REPORT_SB.
This async event is in response to the command (RL_DEV_CONFIG_SET_MSG: RL_DEV_RX_DATA_PATH_CONF_SET_S...
This is the Monitoring report which RadarSS sends to the host, containing the measured temperature ne...
mmWaveLink Init Complete data structure for event RL_DEV_AE_MSSPOWERUPDONE_SB
This is the Monitoring report which RadarSS sends to the host, containing information about Internal ...
This API is a Monitoring report which RadarSS sends to the host, containing the measured RX gain and ...
This is the Monitoring report which RadarSS sends to the host, containing the measured TX reflection ...
This is the Monitoring report which RadarSS sends to the host, containing information about Internal ...
This sub block indicates fault in analog supplies or LDO short circuit condition. Once a fault is det...
RF characterization Time and Temperature data structure.
OS semaphore callback functions.
mmWaveLink Device Control, Interrupt callback functions
This is the Monitoring report which RadarSS sends to the host, containing information related to meas...
mmWaveLink Timer callback functions
mmWaveLink debug callback structure
Analog fault strucure for event RL_RF_AE_ANALOG_FAULT_SB.
This is the Monitoring report which RadarSS sends to the host, containing the measured Tx gain and ph...
API APLL closed loop cal Status Get Sub block structure.
This is the Monitoring report which RadarSS sends to the host, containing information about Internal ...
This is the Monitoring report which RadarSS sends to the host, containing information about Internal ...
Structure to hold data strucutre for RF-error status send by MSS for event RL_DEV_AE_MSS_RF_ERROR_STA...
Latent fault digital monitoring status data for event RL_RF_AE_DIG_LATENTFAULT_REPORT_AE_SB.
This is the Monitoring report which RadarSS sends to the host, containing the measured PLL control vo...
GPADC measurement data for sensors.
This is the Monitoring report which the xWR device sends to the host, containing the measured RX mixe...
Structure to hold the MSS Boot error status data strucutre when booted over SPI for event RL_DEV_AE_M...
Structure to hold the MSS ESM Fault data strucutre for event RL_DEV_AE_MSS_ESMFAULT_SB.
The report header includes common information across all enabled monitors like current FTTI number an...
mmwavelink software version structure
mmWaveLink callback functions for Command parser
OS mutex callback functions.
This is the Monitoring report which RadarSS sends to the host, containing the external signal voltage...
Structure to hold the MSS/radarSS CPU Fault data strucutre for event RL_DEV_AE_MSS_CPUFAULT_SB and RL...
mmwavelink version structure
Structure to hold data strucutre for test status of the periodic tests for event RL_DEV_AE_MSS_PERIOD...
This is the Monitoring report which RadarSS sends to the host, containing the measured TX1 BPM error ...
mmWaveLink RF Start Complete data structure for event RL_DEV_AE_RFPOWERUPDONE_SB
mmWaveLink Asynchronous event callback function
This is the Monitoring report which RadarSS sends to the host, containing the measured RX IF filter a...
OS message queue/Spawn callback functions.
This is the Monitoring report which RadarSS sends to the host, containing the measured TX power value...
OS services callback functions.