Umio-Yasuno / libdrm-amdgpu-sys-rs

libdrm_amdgpu bindings for Rust, and some methods ported from Mesa3D
MIT License
12 stars 1 forks source link

Draft: VbiosParser, PPTable #8

Closed Umio-Yasuno closed 6 months ago

Umio-Yasuno commented 6 months ago
dump

VBIOS info:
name: [E451 N23 XL A0 8GB 500e/500m 0.9V/1.35V]
pn: [113-2451LMH-U03]
ver: [020.003.000.030.000000]
date: [2022/02/17 22:31]
vbios size: 45568
atom_rom_header_v2_2 {
    table_header: atom_common_table_header {
        structuresize: 0x2C,
        format_revision: 0x2,
        content_revision: 0x3,
    },
    atom_bios_string: [
        0x41,
        0x54,
        0x4F,
        0x4D,
    ],
    bios_segment_address: 0xC000,
    protectedmodeoffset: 0x2CC3,
    configfilenameoffset: 0x2E5,
    crc_block_offset: 0x399,
    vbios_bootupmessageoffset: 0x239,
    int10_offset: 0x2CF6,
    pcibusdevinitcode: 0x0,
    iobaseaddress: 0x0,
    subsystem_vendor_id: 0x1DA2,
    subsystem_id: 0xE451,
    pci_info_offset: 0x374,
    masterhwfunction_offset: 0xAA60,
    masterdatatable_offset: 0x3CC,
    reserved: 0x0,
    pspdirtableoffset: 0xAD4,
}
atom_master_data_table_v2_1 {
    table_header: atom_common_table_header {
        structuresize: 0x4A,
        format_revision: 0x2,
        content_revision: 0x1,
    },
    listOfdatatables: atom_master_list_of_data_tables_v2_1 {
        utilitypipeline: 0x0,
        multimedia_info: 0x0,
        smc_dpm_info: 0x8A4,
        sw_datatable3: 0x1FE8,
        firmwareinfo: 0x838,
        sw_datatable5: 0x213C,
        lcd_info: 0x418,
        sw_datatable7: 0x474,
        smu_info: 0x9CC,
        sw_datatable9: 0xAC0,
        sw_datatable10: 0x0,
        vram_usagebyfirmware: 0xCAC,
        gpio_pin_lut: 0x670,
        sw_datatable13: 0x2170,
        gfx_info: 0xCB8,
        powerplayinfo: 0x2220,
        sw_datatable16: 0x0,
        sw_datatable17: 0x220C,
        sw_datatable18: 0xD10,
        sw_datatable19: 0x0,
        sw_datatable20: 0xD30,
        sw_datatable21: 0xD44,
        displayobjectinfo: 0x7B0,
        indirectioaccess: 0x1FE0,
        umc_info: 0xD50,
        sw_datatable25: 0x0,
        sw_datatable26: 0x0,
        dce_info: 0x6DC,
        vram_info: 0xDA0,
        sw_datatable29: 0x0,
        integratedsysteminfo: 0x0,
        asic_profiling_info: 0x0,
        voltageobject_info: 0x1F74,
        sw_datatable33: 0x0,
        sw_datatable34: 0x0,
    },
}
firmwareinfo: atom_firmware_info_v3_4 {
    table_header: atom_common_table_header {
        structuresize: 108,
        format_revision: 3,
        content_revision: 4,
    },
    firmware_revision: 335740958,
    bootup_sclk_in10khz: 50000,
    bootup_mclk_in10khz: 9700,
    firmware_capability: 283649,
    main_call_parser_entry: 0,
    bios_scratch_reg_startaddr: 76,
    bootup_vddc_mv: 800,
    bootup_vddci_mv: 675,
    bootup_mvddc_mv: 1250,
    bootup_vddgfx_mv: 800,
    mem_module_id: 3,
    coolingsolution_id: 0,
    reserved1: [
        0,
        0,
    ],
    mc_baseaddr_high: 128,
    mc_baseaddr_low: 0,
    board_i2c_feature_id: 0,
    board_i2c_feature_gpio_id: 0,
    board_i2c_feature_slave_addr: 0,
    ras_rom_i2c_slave_addr: 0,
    bootup_mvddq_mv: 0,
    bootup_mvpp_mv: 0,
    zfbstartaddrin16mb: 0,
    pplib_pptable_id: 0,
    mvdd_ratio: 1500,
    hw_bootup_vddgfx_mv: 900,
    hw_bootup_vddc_mv: 900,
    hw_bootup_mvddc_mv: 1350,
    hw_bootup_vddci_mv: 900,
    maco_pwrlimit_mw: 0,
    usb_pwrlimit_mw: 0,
    fw_reserved_size_in_kb: 3072,
    pspbl_init_done_reg_addr: 90209,
    pspbl_init_done_value: 2147483648,
    pspbl_init_done_check_timeout: 6000000,
    reserved: [
        0,
        0,
    ],
}
smu_11_0_7 ppt: smu_11_0_7_powerplay_table {
    header: atom_common_table_header {
        structuresize: 2470,
        format_revision: 18,
        content_revision: 0,
    },
    table_revision: 2,
    table_size: 802,
    golden_pp_id: 2500,
    golden_revision: 17299,
    format_id: 131,
    platform_caps: 8,
    thermal_controller_type: 28,
    small_power_limit1: 0,
    small_power_limit2: 0,
    boost_power_limit: 0,
    software_shutdown_temp: 118,
    reserve: [
        0,
        0,
        0,
        0,
        0,
        0,
        1,
        0,
    ],
    power_saving_clock: smu_11_0_7_power_saving_clock_table {
        revision: 1,
        reserve: [
            0,
            0,
            0,
        ],
        count: 13,
        max: [
            2750,
            1280,
            875,
            1800,
            1250,
            1429,
            1250,
            1429,
            1200,
            1217,
            1217,
            810,
            1217,
            0,
            0,
            0,
        ],
        min: [
            500,
            418,
            97,
            500,
            572,
            690,
            572,
            690,
            418,
            487,
            487,
            300,
            487,
            0,
            0,
            0,
        ],
    },
    overdrive_table: smu_11_0_7_overdrive_table {
        revision: 129,
        reserve: [
            0,
            0,
            0,
        ],
        feature_count: 16,
        setting_count: 30,
        cap: [
            1,
            1,
            1,
            1,
            1,
            1,
            1,
            1,
            1,
            1,
            1,
            1,
            1,
            1,
            1,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        max: [
            2900,
            2900,
            0,
            0,
            0,
            2900,
            950,
            950,
            20,
            3600,
            3600,
            110,
            110,
            1,
            1,
            1,
            1,
            1,
            100,
            100,
            100,
            100,
            100,
            100,
            100,
            100,
            100,
            100,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        min: [
            500,
            500,
            0,
            0,
            0,
            500,
            674,
            674,
            6,
            25,
            1000,
            25,
            50,
            0,
            0,
            0,
            0,
            0,
            25,
            10,
            25,
            10,
            25,
            10,
            25,
            10,
            25,
            10,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        pm_setting: [
            6,
            0,
            6,
            0,
            95,
            95,
            95,
            95,
            4500,
            4500,
            1750,
            1750,
            6000,
            6000,
            2250,
            2250,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
    },
    smc_pptable: PPTable_t {
        Version: 6,
        FeaturesToRun: [
            2743074303,
            276451,
        ],
        SocketPowerLimitAc: [
            100,
            0,
            0,
            0,
        ],
        SocketPowerLimitAcTau: [
            0,
            0,
            0,
            0,
        ],
        SocketPowerLimitDc: [
            100,
            0,
            0,
            0,
        ],
        SocketPowerLimitDcTau: [
            0,
            0,
            0,
            0,
        ],
        TdcLimit: [
            100,
            18,
        ],
        TdcLimitTau: [
            0,
            0,
        ],
        TemperatureLimit: [
            100,
            110,
            100,
            115,
            115,
            115,
            115,
            0,
            0,
            0,
        ],
        FitLimit: 0,
        TotalPowerConfig: 1,
        TotalPowerPadding: [
            0,
            0,
            0,
        ],
        ApccPlusResidencyLimit: 10,
        SmnclkDpmFreq: [
            0,
            0,
        ],
        SmnclkDpmVoltage: [
            0,
            0,
        ],
        PaddingAPCC: 0,
        PerPartDroopVsetGfxDfll: [
            3000,
            3400,
            3800,
            4200,
            4800,
        ],
        PaddingPerPartDroop: 0,
        ThrottlerControlMask: 14348,
        FwDStateMask: 16383,
        UlvVoltageOffsetSoc: 50,
        UlvVoltageOffsetGfx: 100,
        MinVoltageUlvGfx: 0,
        MinVoltageUlvSoc: 3000,
        SocLIVmin: 3000,
        PaddingLIVmin: 50,
        GceaLinkMgrIdleThreshold: 0,
        paddingRlcUlvParams: [
            0,
            0,
            0,
        ],
        MinVoltageGfx: 3094,
        MinVoltageSoc: 3050,
        MaxVoltageGfx: 4600,
        MaxVoltageSoc: 4200,
        LoadLineResistanceGfx: 128,
        LoadLineResistanceSoc: 256,
        VDDGFX_TVmin: 55,
        VDDSOC_TVmin: 55,
        VDDGFX_Vmin_HiTemp: 3094,
        VDDGFX_Vmin_LoTemp: 3094,
        VDDSOC_Vmin_HiTemp: 3050,
        VDDSOC_Vmin_LoTemp: 3050,
        VDDGFX_TVminHystersis: 5,
        VDDSOC_TVminHystersis: 5,
        DpmDescriptor: [
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1065353216,
                    b: 0,
                },
                SsCurve: QuadraticInt_t {
                    a: 1040782648,
                    b: 3185885944,
                    c: 1059593262,
                },
                SsFmin: 417,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1066049470,
                    b: 1048240456,
                },
                SsCurve: QuadraticInt_t {
                    a: 989485303,
                    b: 1055723094,
                    c: 1051416047,
                },
                SsFmin: 418,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 1,
                NumDiscreteLevels: 4,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1067072881,
                    b: 1042871747,
                },
                SsCurve: QuadraticInt_t {
                    a: 991646208,
                    b: 1057216266,
                    c: 1049905091,
                },
                SsFmin: 97,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1065353216,
                    b: 0,
                },
                SsCurve: QuadraticInt_t {
                    a: 987080121,
                    b: 1054515134,
                    c: 1048743772,
                },
                SsFmin: 500,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1067198710,
                    b: 1042066440,
                },
                SsCurve: QuadraticInt_t {
                    a: 991903907,
                    b: 1057316930,
                    c: 1048730350,
                },
                SsFmin: 572,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1065504211,
                    b: 1045086339,
                },
                SsCurve: QuadraticInt_t {
                    a: 987595517,
                    b: 1054783570,
                    c: 1048731021,
                },
                SsFmin: 690,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1067198710,
                    b: 1042066440,
                },
                SsCurve: QuadraticInt_t {
                    a: 991903907,
                    b: 1057316930,
                    c: 1048730350,
                },
                SsFmin: 572,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1065504211,
                    b: 1045086339,
                },
                SsCurve: QuadraticInt_t {
                    a: 987595517,
                    b: 1054783570,
                    c: 1048731021,
                },
                SsFmin: 690,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1066995705,
                    b: 1050253722,
                },
                SsCurve: QuadraticInt_t {
                    a: 992677001,
                    b: 1057635697,
                    c: 1048732699,
                },
                SsFmin: 418,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1066947052,
                    b: 1041328243,
                },
                SsCurve: QuadraticInt_t {
                    a: 991818007,
                    b: 1057283375,
                    c: 1048731021,
                },
                SsFmin: 487,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1066947052,
                    b: 1041328243,
                },
                SsCurve: QuadraticInt_t {
                    a: 991818007,
                    b: 1057283375,
                    c: 1048731021,
                },
                SsFmin: 487,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1060622041,
                    b: 1060773036,
                },
                SsCurve: QuadraticInt_t {
                    a: 0,
                    b: 1049585988,
                    c: 1058224577,
                },
                SsFmin: 300,
                Padding16: 0,
            },
            DpmDescriptor_t {
                VoltageMode: 0,
                SnapToDiscrete: 0,
                NumDiscreteLevels: 2,
                Padding: 0,
                ConversionToAvfsClk: LinearInt_t {
                    m: 1066947052,
                    b: 1041328243,
                },
                SsCurve: QuadraticInt_t {
                    a: 991818007,
                    b: 1057283375,
                    c: 1048731021,
                },
                SsFmin: 487,
                Padding16: 0,
            },
        ],
        FreqTableGfx: [
            500,
            2750,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        FreqTableVclk: [
            690,
            1429,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        FreqTableDclk: [
            572,
            1250,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        FreqTableSocclk: [
            418,
            1280,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        FreqTableUclk: [
            97,
            542,
            676,
            875,
        ],
        FreqTableDcefclk: [
            418,
            1200,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        FreqTableDispclk: [
            487,
            1217,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        FreqTablePixclk: [
            487,
            1217,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        FreqTablePhyclk: [
            300,
            810,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        FreqTableDtbclk: [
            487,
            1217,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        FreqTableFclk: [
            500,
            1800,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        Paddingclks: 0,
        PerPartDroopModelGfxDfll: [
            DroopInt_t {
                a: 1065431230,
                b: 1028389654,
                c: 3177848987,
            },
            DroopInt_t {
                a: 1065431230,
                b: 1028389654,
                c: 3177848987,
            },
            DroopInt_t {
                a: 1065431230,
                b: 1028389654,
                c: 3177848987,
            },
            DroopInt_t {
                a: 1063394644,
                b: 1038710997,
                c: 3183121059,
            },
            DroopInt_t {
                a: 1059510047,
                b: 1039918957,
                c: 1043637459,
            },
        ],
        DcModeMaxFreq: [
            2750,
            1280,
            875,
            1800,
            1250,
            1429,
            1250,
            1429,
            1200,
            1217,
            1217,
            810,
            1217,
        ],
        FreqTableUclkDiv: [
            0,
            3,
            3,
            3,
        ],
        FclkBoostFreq: 1800,
        FclkParamPadding: 0,
        Mp0clkFreq: [
            332,
            506,
        ],
        Mp0DpmVoltage: [
            2800,
            3200,
        ],
        MemVddciVoltage: [
            2700,
            3400,
            3400,
            3400,
        ],
        MemMvddVoltage: [
            5000,
            5400,
            5400,
            5400,
        ],
        GfxclkFgfxoffEntry: 700,
        GfxclkFinit: 800,
        GfxclkFidle: 700,
        GfxclkSource: 1,
        GfxclkPadding: 0,
        GfxGpoSubFeatureMask: 1,
        GfxGpoEnabledWorkPolicyMask: 2,
        GfxGpoDisabledWorkPolicyMask: 93,
        GfxGpoPadding: [
            0,
        ],
        GfxGpoVotingAllow: 1,
        GfxGpoPadding32: [
            0,
            0,
            0,
            0,
        ],
        GfxDcsFopt: 0,
        GfxDcsFclkFopt: 0,
        GfxDcsUclkFopt: 0,
        DcsGfxOffVoltage: 0,
        DcsMinGfxOffTime: 0,
        DcsMaxGfxOffTime: 0,
        DcsMinCreditAccum: 0,
        DcsExitHysteresis: 0,
        DcsTimeout: 0,
        DcsParamPadding: [
            0,
            0,
            0,
            0,
            0,
        ],
        FlopsPerByteTable: [
            4332,
            4228,
            4124,
            4021,
            3917,
            3813,
            3710,
            3606,
            3502,
            3399,
            3295,
            3191,
            2906,
            2621,
            2336,
            2051,
        ],
        LowestUclkReservedForUlv: 0,
        PaddingMem: [
            0,
            0,
            0,
        ],
        UclkDpmPstates: [
            3,
            2,
            1,
            0,
        ],
        UclkDpmSrcFreqRange: UclkDpmChangeRange_t {
            Fmin: 0,
            Fmax: 0,
        },
        UclkDpmTargFreqRange: UclkDpmChangeRange_t {
            Fmin: 0,
            Fmax: 0,
        },
        UclkDpmMidstepFreq: 0,
        UclkMidstepPadding: 0,
        PcieGenSpeed: [
            0,
            3,
        ],
        PcieLaneCount: [
            1,
            4,
        ],
        LclkFreq: [
            81,
            619,
        ],
        FanStopTemp: 50,
        FanStartTemp: 60,
        FanGain: [
            0,
            400,
            400,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        FanPwmMin: 15,
        FanAcousticLimitRpm: 1800,
        FanThrottlingRpm: 3600,
        FanMaximumRpm: 3600,
        MGpuFanBoostLimitRpm: 0,
        FanTargetTemperature: 86,
        FanTargetGfxclk: 500,
        FanPadding16: 0,
        FanTempInputSelect: 1,
        FanPadding: 0,
        FanZeroRpmEnable: 1,
        FanTachEdgePerRev: 2,
        FuzzyFan_ErrorSetDelta: 0,
        FuzzyFan_ErrorRateSetDelta: 0,
        FuzzyFan_PwmSetDelta: 0,
        FuzzyFan_Reserved: 0,
        OverrideAvfsGb: [
            0,
            0,
        ],
        dBtcGbGfxDfllModelSelect: 3,
        Padding8_Avfs: 0,
        qAvfsGb: [
            QuadraticInt_t {
                a: 0,
                b: 0,
                c: 0,
            },
            QuadraticInt_t {
                a: 0,
                b: 0,
                c: 0,
            },
        ],
        dBtcGbGfxPll: DroopInt_t {
            a: 1032188015,
            b: 3178342908,
            c: 1035799814,
        },
        dBtcGbGfxDfll: DroopInt_t {
            a: 0,
            b: 0,
            c: 0,
        },
        dBtcGbSoc: DroopInt_t {
            a: 1041968461,
            b: 1025114741,
            c: 3162985715,
        },
        qAgingGb: [
            LinearInt_t {
                m: 0,
                b: 0,
            },
            LinearInt_t {
                m: 0,
                b: 0,
            },
        ],
        PiecewiseLinearDroopIntGfxDfll: PiecewiseLinearDroopInt_t {
            Fset: [
                0,
                0,
                0,
                0,
                0,
            ],
            Vdroop: [
                0,
                0,
                0,
                0,
                0,
            ],
        },
        qStaticVoltageOffset: [
            QuadraticInt_t {
                a: 0,
                b: 0,
                c: 0,
            },
            QuadraticInt_t {
                a: 0,
                b: 0,
                c: 0,
            },
        ],
        DcTol: [
            225,
            225,
        ],
        DcBtcEnabled: [
            1,
            1,
        ],
        Padding8_GfxBtc: [
            0,
            0,
        ],
        DcBtcMin: [
            0,
            0,
        ],
        DcBtcMax: [
            225,
            225,
        ],
        DcBtcGb: [
            25,
            25,
        ],
        XgmiDpmPstates: [
            0,
            0,
        ],
        XgmiDpmSpare: [
            0,
            0,
        ],
        DebugOverrides: 0,
        ReservedEquation0: QuadraticInt_t {
            a: 0,
            b: 0,
            c: 0,
        },
        ReservedEquation1: QuadraticInt_t {
            a: 0,
            b: 0,
            c: 0,
        },
        ReservedEquation2: QuadraticInt_t {
            a: 0,
            b: 0,
            c: 0,
        },
        ReservedEquation3: QuadraticInt_t {
            a: 0,
            b: 0,
            c: 0,
        },
        CustomerVariant: 0,
        VcBtcEnabled: 1,
        VcBtcVminT0: 2900,
        VcBtcFixedVminAgingOffset: 52,
        VcBtcVmin2PsmDegrationGb: 0,
        VcBtcPsmA: 1078293902,
        VcBtcPsmB: 1047032496,
        VcBtcVminA: 1099196006,
        VcBtcVminB: 1053545411,
        LedGpio: 0,
        GfxPowerStagesGpio: 0,
        SkuReserved: [
            196611000,
            209718400,
            14745800,
            225,
            0,
            0,
            0,
            0,
        ],
        GamingClk: [
            1845,
            2044,
            2491,
            1845,
            2044,
            2491,
        ],
        I2cControllers: [
            I2cControllerConfig_t {
                Enabled: 0,
                Speed: 0,
                SlaveAddress: 0,
                ControllerPort: 0,
                ControllerName: 0,
                ThermalThrotter: 0,
                I2cProtocol: 0,
                PaddingConfig: 0,
            },
            I2cControllerConfig_t {
                Enabled: 0,
                Speed: 0,
                SlaveAddress: 0,
                ControllerPort: 0,
                ControllerName: 0,
                ThermalThrotter: 0,
                I2cProtocol: 26,
                PaddingConfig: 1,
            },
            I2cControllerConfig_t {
                Enabled: 1,
                Speed: 245,
                SlaveAddress: 173,
                ControllerPort: 128,
                ControllerName: 25,
                ThermalThrotter: 8,
                I2cProtocol: 104,
                PaddingConfig: 1,
            },
            I2cControllerConfig_t {
                Enabled: 1,
                Speed: 5,
                SlaveAddress: 72,
                ControllerPort: 28,
                ControllerName: 220,
                ThermalThrotter: 3,
                I2cProtocol: 11,
                PaddingConfig: 0,
            },
            I2cControllerConfig_t {
                Enabled: 0,
                Speed: 0,
                SlaveAddress: 192,
                ControllerPort: 208,
                ControllerName: 224,
                ThermalThrotter: 240,
                I2cProtocol: 165,
                PaddingConfig: 1,
            },
            I2cControllerConfig_t {
                Enabled: 1,
                Speed: 170,
                SlaveAddress: 25,
                ControllerPort: 0,
                ControllerName: 0,
                ThermalThrotter: 0,
                I2cProtocol: 116,
                PaddingConfig: 1,
            },
            I2cControllerConfig_t {
                Enabled: 1,
                Speed: 5,
                SlaveAddress: 255,
                ControllerPort: 255,
                ControllerName: 255,
                ThermalThrotter: 255,
                I2cProtocol: 50,
                PaddingConfig: 1,
            },
            I2cControllerConfig_t {
                Enabled: 1,
                Speed: 175,
                SlaveAddress: 0,
                ControllerPort: 0,
                ControllerName: 0,
                ThermalThrotter: 142,
                I2cProtocol: 1,
                PaddingConfig: 0,
            },
            I2cControllerConfig_t {
                Enabled: 0,
                Speed: 0,
                SlaveAddress: 23,
                ControllerPort: 0,
                ControllerName: 0,
                ThermalThrotter: 0,
                I2cProtocol: 23,
                PaddingConfig: 0,
            },
            I2cControllerConfig_t {
                Enabled: 0,
                Speed: 0,
                SlaveAddress: 146,
                ControllerPort: 87,
                ControllerName: 43,
                ThermalThrotter: 5,
                I2cProtocol: 0,
                PaddingConfig: 0,
            },
            I2cControllerConfig_t {
                Enabled: 1,
                Speed: 0,
                SlaveAddress: 101,
                ControllerPort: 0,
                ControllerName: 110,
                ThermalThrotter: 0,
                I2cProtocol: 116,
                PaddingConfig: 0,
            },
            I2cControllerConfig_t {
                Enabled: 1,
                Speed: 0,
                SlaveAddress: 111,
                ControllerPort: 0,
                ControllerName: 105,
                ThermalThrotter: 0,
                I2cProtocol: 100,
                PaddingConfig: 0,
            },
            I2cControllerConfig_t {
                Enabled: 1,
                Speed: 0,
                SlaveAddress: 103,
                ControllerPort: 0,
                ControllerName: 97,
                ThermalThrotter: 0,
                I2cProtocol: 105,
                PaddingConfig: 0,
            },
            I2cControllerConfig_t {
                Enabled: 1,
                Speed: 0,
                SlaveAddress: 32,
                ControllerPort: 0,
                ControllerName: 97,
                ThermalThrotter: 0,
                I2cProtocol: 116,
                PaddingConfig: 0,
            },
            I2cControllerConfig_t {
                Enabled: 1,
                Speed: 0,
                SlaveAddress: 77,
                ControllerPort: 0,
                ControllerName: 101,
                ThermalThrotter: 0,
                I2cProtocol: 109,
                PaddingConfig: 0,
            },
            I2cControllerConfig_t {
                Enabled: 1,
                Speed: 0,
                SlaveAddress: 114,
                ControllerPort: 0,
                ControllerName: 121,
                ThermalThrotter: 0,
                I2cProtocol: 0,
                PaddingConfig: 0,
            },
        ],
        GpioScl: 110,
        GpioSda: 0,
        FchUsbPdSlaveAddr: 0,
        I2cSpare: [
            0,
        ],
        VddGfxVrMapping: 0,
        VddSocVrMapping: 0,
        VddMem0VrMapping: 36,
        VddMem1VrMapping: 109,
        GfxUlvPhaseSheddingMask: 76,
        SocUlvPhaseSheddingMask: 175,
        VddciUlvPhaseSheddingMask: 0,
        MvddUlvPhaseSheddingMask: 1,
        GfxMaxCurrent: 36352,
        GfxOffset: 4,
        Padding_TelemetryGfx: 0,
        SocMaxCurrent: 0,
        SocOffset: 23,
        Padding_TelemetrySoc: 0,
        Mem0MaxCurrent: 0,
        Mem0Offset: 23,
        Padding_TelemetryMem0: 0,
        Mem1MaxCurrent: 0,
        Mem1Offset: -30,
        Padding_TelemetryMem1: 1,
        MvddRatio: 1323,
        AcDcGpio: 84,
        AcDcPolarity: 0,
        VR0HotGpio: 95,
        VR0HotPolarity: 0,
        VR1HotGpio: 77,
        VR1HotPolarity: 0,
        GthrGpio: 69,
        GthrPolarity: 0,
        LedPin0: 77,
        LedPin1: 0,
        LedPin2: 49,
        LedEnableMask: 0,
        LedPcie: 32,
        LedError: 0,
        LedSpare1: [
            1,
            0,
        ],
        PllGfxclkSpreadEnabled: 1,
        PllGfxclkSpreadPercent: 0,
        PllGfxclkSpreadFreq: 110,
        DfllGfxclkSpreadEnabled: 1,
        DfllGfxclkSpreadPercent: 0,
        DfllGfxclkSpreadFreq: 67,
        UclkSpreadPadding: 1,
        UclkSpreadFreq: 110,
        FclkSpreadEnabled: 1,
        FclkSpreadPercent: 0,
        FclkSpreadFreq: 114,
        MemoryChannelEnabled: 7077999,
        DramBitWidth: 32,
        PaddingMem1: [
            0,
            1,
            0,
        ],
        TotalBoardPower: 97,
        BoardPowerPadding: 1,
        XgmiLinkSpeed: [
            110,
            0,
            0,
            0,
        ],
        XgmiLinkWidth: [
            110,
            0,
            0,
            0,
        ],
        XgmiFclkFreq: [
            0,
            27870,
            44890,
            512,
        ],
        XgmiSocVoltage: [
            35840,
            1,
            0,
            24,
        ],
        HsrEnabled: 0,
        VddqOffEnabled: 0,
        PaddingUmcFlags: [
            0,
            0,
        ],
        UclkSpreadPercent: [
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        BoardReserved: [
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            0,
        ],
        MmHubPadding: [
            0,
            0,
            0,
            0,
            0,
            0,
            0,
            102629376,
        ],
    },
}