Lines Matching refs:adev

37 static void amdgpu_atombios_lookup_i2c_gpio_quirks(struct amdgpu_device *adev,  in amdgpu_atombios_lookup_i2c_gpio_quirks()  argument
87 struct amdgpu_i2c_bus_rec amdgpu_atombios_lookup_i2c_gpio(struct amdgpu_device *adev, in amdgpu_atombios_lookup_i2c_gpio() argument
90 struct atom_context *ctx = adev->mode_info.atom_context; in amdgpu_atombios_lookup_i2c_gpio()
110 amdgpu_atombios_lookup_i2c_gpio_quirks(adev, gpio, i); in amdgpu_atombios_lookup_i2c_gpio()
124 void amdgpu_atombios_i2c_init(struct amdgpu_device *adev) in amdgpu_atombios_i2c_init() argument
126 struct atom_context *ctx = adev->mode_info.atom_context; in amdgpu_atombios_i2c_init()
143 amdgpu_atombios_lookup_i2c_gpio_quirks(adev, gpio, i); in amdgpu_atombios_i2c_init()
149 adev->i2c_bus[i] = amdgpu_i2c_create(adev->ddev, &i2c, stmp); in amdgpu_atombios_i2c_init()
158 amdgpu_atombios_lookup_gpio(struct amdgpu_device *adev, in amdgpu_atombios_lookup_gpio() argument
161 struct atom_context *ctx = adev->mode_info.atom_context; in amdgpu_atombios_lookup_gpio()
197 amdgpu_atombios_get_hpd_info_from_gpio(struct amdgpu_device *adev, in amdgpu_atombios_get_hpd_info_from_gpio() argument
205 reg = amdgpu_display_hpd_get_gpio_reg(adev); in amdgpu_atombios_get_hpd_info_from_gpio()
237 static bool amdgpu_atombios_apply_quirks(struct amdgpu_device *adev, in amdgpu_atombios_apply_quirks() argument
272 bool amdgpu_atombios_get_connector_info_from_object_table(struct amdgpu_device *adev) in amdgpu_atombios_get_connector_info_from_object_table() argument
274 struct amdgpu_mode_info *mode_info = &adev->mode_info; in amdgpu_atombios_get_connector_info_from_object_table()
379 amdgpu_display_add_encoder(adev, encoder_obj, in amdgpu_atombios_get_connector_info_from_object_table()
424 amdgpu_atombios_lookup_i2c_gpio(adev, in amdgpu_atombios_get_connector_info_from_object_table()
486 ddc_bus = amdgpu_atombios_lookup_i2c_gpio(adev, in amdgpu_atombios_get_connector_info_from_object_table()
494 gpio = amdgpu_atombios_lookup_gpio(adev, in amdgpu_atombios_get_connector_info_from_object_table()
496 hpd = amdgpu_atombios_get_hpd_info_from_gpio(adev, &gpio); in amdgpu_atombios_get_connector_info_from_object_table()
518 (adev, le16_to_cpu(path->usDeviceTag), &connector_type, in amdgpu_atombios_get_connector_info_from_object_table()
522 amdgpu_display_add_connector(adev, in amdgpu_atombios_get_connector_info_from_object_table()
533 amdgpu_link_encoder_connector(adev->ddev); in amdgpu_atombios_get_connector_info_from_object_table()
547 int amdgpu_atombios_get_clock_info(struct amdgpu_device *adev) in amdgpu_atombios_get_clock_info() argument
549 struct amdgpu_mode_info *mode_info = &adev->mode_info; in amdgpu_atombios_get_clock_info()
558 struct amdgpu_pll *ppll = &adev->clock.ppll[0]; in amdgpu_atombios_get_clock_info()
559 struct amdgpu_pll *spll = &adev->clock.spll; in amdgpu_atombios_get_clock_info()
560 struct amdgpu_pll *mpll = &adev->clock.mpll; in amdgpu_atombios_get_clock_info()
611 adev->clock.ppll[i] = *ppll; in amdgpu_atombios_get_clock_info()
659 adev->clock.default_sclk = in amdgpu_atombios_get_clock_info()
661 adev->clock.default_mclk = in amdgpu_atombios_get_clock_info()
673 adev->clock.default_dispclk = in amdgpu_atombios_get_clock_info()
676 if (adev->clock.default_dispclk < 53900) { in amdgpu_atombios_get_clock_info()
678 adev->clock.default_dispclk / 100); in amdgpu_atombios_get_clock_info()
679 adev->clock.default_dispclk = 60000; in amdgpu_atombios_get_clock_info()
681 adev->clock.dp_extclk = in amdgpu_atombios_get_clock_info()
683 adev->clock.current_dispclk = adev->clock.default_dispclk; in amdgpu_atombios_get_clock_info()
685 adev->clock.max_pixel_clock = le16_to_cpu(firmware_info->info.usMaxPixelClock); in amdgpu_atombios_get_clock_info()
686 if (adev->clock.max_pixel_clock == 0) in amdgpu_atombios_get_clock_info()
687 adev->clock.max_pixel_clock = 40000; in amdgpu_atombios_get_clock_info()
690 adev->mode_info.firmware_flags = in amdgpu_atombios_get_clock_info()
696 adev->pm.current_sclk = adev->clock.default_sclk; in amdgpu_atombios_get_clock_info()
697 adev->pm.current_mclk = adev->clock.default_mclk; in amdgpu_atombios_get_clock_info()
711 static void amdgpu_atombios_get_igp_ss_overrides(struct amdgpu_device *adev, in amdgpu_atombios_get_igp_ss_overrides() argument
715 struct amdgpu_mode_info *mode_info = &adev->mode_info; in amdgpu_atombios_get_igp_ss_overrides()
815 bool amdgpu_atombios_get_asic_ss_info(struct amdgpu_device *adev, in amdgpu_atombios_get_asic_ss_info() argument
819 struct amdgpu_mode_info *mode_info = &adev->mode_info; in amdgpu_atombios_get_asic_ss_info()
828 if (!(adev->mode_info.firmware_flags & ATOM_BIOS_INFO_MEMORY_CLOCK_SS_SUPPORT)) in amdgpu_atombios_get_asic_ss_info()
832 if (!(adev->mode_info.firmware_flags & ATOM_BIOS_INFO_ENGINE_CLOCK_SS_SUPPORT)) in amdgpu_atombios_get_asic_ss_info()
904 if (adev->flags & AMD_IS_APU) in amdgpu_atombios_get_asic_ss_info()
905 amdgpu_atombios_get_igp_ss_overrides(adev, ss, id); in amdgpu_atombios_get_asic_ss_info()
931 int amdgpu_atombios_get_clock_dividers(struct amdgpu_device *adev, in amdgpu_atombios_get_clock_dividers() argument
944 if (!amdgpu_atom_parse_cmd_header(adev->mode_info.atom_context, index, &frev, &crev)) in amdgpu_atombios_get_clock_dividers()
952 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_get_clock_dividers()
963 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_get_clock_dividers()
979 int amdgpu_atombios_get_memory_pll_dividers(struct amdgpu_device *adev, in amdgpu_atombios_get_memory_pll_dividers() argument
991 if (!amdgpu_atom_parse_cmd_header(adev->mode_info.atom_context, index, &frev, &crev)) in amdgpu_atombios_get_memory_pll_dividers()
1004 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_get_memory_pll_dividers()
1030 uint32_t amdgpu_atombios_get_engine_clock(struct amdgpu_device *adev) in amdgpu_atombios_get_engine_clock() argument
1035 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_get_engine_clock()
1039 uint32_t amdgpu_atombios_get_memory_clock(struct amdgpu_device *adev) in amdgpu_atombios_get_memory_clock() argument
1044 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_get_memory_clock()
1048 void amdgpu_atombios_set_engine_clock(struct amdgpu_device *adev, in amdgpu_atombios_set_engine_clock() argument
1056 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_set_engine_clock()
1059 void amdgpu_atombios_set_memory_clock(struct amdgpu_device *adev, in amdgpu_atombios_set_memory_clock() argument
1065 if (adev->flags & AMD_IS_APU) in amdgpu_atombios_set_memory_clock()
1070 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_set_memory_clock()
1073 void amdgpu_atombios_set_engine_dram_timings(struct amdgpu_device *adev, in amdgpu_atombios_set_engine_dram_timings() argument
1089 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_set_engine_dram_timings()
1099 void amdgpu_atombios_set_voltage(struct amdgpu_device *adev, in amdgpu_atombios_set_voltage() argument
1107 if (!amdgpu_atom_parse_cmd_header(adev->mode_info.atom_context, index, &frev, &crev)) in amdgpu_atombios_set_voltage()
1135 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_set_voltage()
1138 int amdgpu_atombios_get_leakage_id_from_vbios(struct amdgpu_device *adev, in amdgpu_atombios_get_leakage_id_from_vbios() argument
1145 if (!amdgpu_atom_parse_cmd_header(adev->mode_info.atom_context, index, &frev, &crev)) in amdgpu_atombios_get_leakage_id_from_vbios()
1155 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_get_leakage_id_from_vbios()
1167 int amdgpu_atombios_get_leakage_vddc_based_on_leakage_params(struct amdgpu_device *adev, in amdgpu_atombios_get_leakage_vddc_based_on_leakage_params() argument
1182 if (!amdgpu_atom_parse_data_header(adev->mode_info.atom_context, index, &size, in amdgpu_atombios_get_leakage_vddc_based_on_leakage_params()
1187 (adev->mode_info.atom_context->bios + data_offset); in amdgpu_atombios_get_leakage_vddc_based_on_leakage_params()
1198 (adev->mode_info.atom_context->bios + data_offset + in amdgpu_atombios_get_leakage_vddc_based_on_leakage_params()
1201 (adev->mode_info.atom_context->bios + data_offset + in amdgpu_atombios_get_leakage_vddc_based_on_leakage_params()
1204 (adev->mode_info.atom_context->bios + data_offset + in amdgpu_atombios_get_leakage_vddc_based_on_leakage_params()
1207 (adev->mode_info.atom_context->bios + data_offset + in amdgpu_atombios_get_leakage_vddc_based_on_leakage_params()
1210 (adev->mode_info.atom_context->bios + data_offset + in amdgpu_atombios_get_leakage_vddc_based_on_leakage_params()
1258 int amdgpu_atombios_get_voltage_evv(struct amdgpu_device *adev, in amdgpu_atombios_get_voltage_evv() argument
1264 u32 count = adev->pm.dpm.dyn_state.vddc_dependency_on_sclk.count; in amdgpu_atombios_get_voltage_evv()
1268 if (adev->pm.dpm.dyn_state.vddc_dependency_on_sclk.entries[entry_id].v == in amdgpu_atombios_get_voltage_evv()
1280 cpu_to_le32(adev->pm.dpm.dyn_state.vddc_dependency_on_sclk.entries[entry_id].clk); in amdgpu_atombios_get_voltage_evv()
1282 amdgpu_atom_execute_table(adev->mode_info.atom_context, index, (uint32_t *)&args); in amdgpu_atombios_get_voltage_evv()
1320 amdgpu_atombios_is_voltage_gpio(struct amdgpu_device *adev, in amdgpu_atombios_is_voltage_gpio() argument
1328 if (amdgpu_atom_parse_data_header(adev->mode_info.atom_context, index, &size, in amdgpu_atombios_is_voltage_gpio()
1331 (adev->mode_info.atom_context->bios + data_offset); in amdgpu_atombios_is_voltage_gpio()
1355 int amdgpu_atombios_get_voltage_table(struct amdgpu_device *adev, in amdgpu_atombios_get_voltage_table() argument
1366 if (amdgpu_atom_parse_data_header(adev->mode_info.atom_context, index, &size, in amdgpu_atombios_get_voltage_table()
1369 (adev->mode_info.atom_context->bios + data_offset); in amdgpu_atombios_get_voltage_table()
1426 int amdgpu_atombios_init_mc_reg_table(struct amdgpu_device *adev, in amdgpu_atombios_init_mc_reg_table() argument
1438 if (amdgpu_atom_parse_data_header(adev->mode_info.atom_context, index, &size, in amdgpu_atombios_init_mc_reg_table()
1441 (adev->mode_info.atom_context->bios + data_offset); in amdgpu_atombios_init_mc_reg_table()
1517 void amdgpu_atombios_scratch_regs_lock(struct amdgpu_device *adev, bool lock) in amdgpu_atombios_scratch_regs_lock() argument
1534 void amdgpu_atombios_scratch_regs_init(struct amdgpu_device *adev) in amdgpu_atombios_scratch_regs_init() argument
1554 void amdgpu_atombios_scratch_regs_save(struct amdgpu_device *adev) in amdgpu_atombios_scratch_regs_save() argument
1559 adev->bios_scratch[i] = RREG32(mmBIOS_SCRATCH_0 + i); in amdgpu_atombios_scratch_regs_save()
1562 void amdgpu_atombios_scratch_regs_restore(struct amdgpu_device *adev) in amdgpu_atombios_scratch_regs_restore() argument
1567 WREG32(mmBIOS_SCRATCH_0 + i, adev->bios_scratch[i]); in amdgpu_atombios_scratch_regs_restore()