Lines Matching refs:table

1174 …tc_get_max_clock_from_voltage_dependency_table(struct radeon_clock_voltage_dependency_table *table,  in btc_get_max_clock_from_voltage_dependency_table()  argument
1179 if ((table == NULL) || (table->count == 0)) { in btc_get_max_clock_from_voltage_dependency_table()
1184 for (i = 0; i < table->count; i++) { in btc_get_max_clock_from_voltage_dependency_table()
1185 if (clock < table->entries[i].clk) in btc_get_max_clock_from_voltage_dependency_table()
1186 clock = table->entries[i].clk; in btc_get_max_clock_from_voltage_dependency_table()
1191 void btc_apply_voltage_dependency_rules(struct radeon_clock_voltage_dependency_table *table, in btc_apply_voltage_dependency_rules() argument
1196 if ((table == NULL) || (table->count == 0)) in btc_apply_voltage_dependency_rules()
1199 for (i= 0; i < table->count; i++) { in btc_apply_voltage_dependency_rules()
1200 if (clock <= table->entries[i].clk) { in btc_apply_voltage_dependency_rules()
1201 if (*voltage < table->entries[i].v) in btc_apply_voltage_dependency_rules()
1202 *voltage = (u16)((table->entries[i].v < max_voltage) ? in btc_apply_voltage_dependency_rules()
1203 table->entries[i].v : max_voltage); in btc_apply_voltage_dependency_rules()
1296 static u16 btc_find_voltage(struct atom_voltage_table *table, u16 voltage) in btc_find_voltage() argument
1300 for (i = 0; i < table->count; i++) { in btc_find_voltage()
1301 if (voltage <= table->entries[i].value) in btc_find_voltage()
1302 return table->entries[i].value; in btc_find_voltage()
1305 return table->entries[table->count - 1].value; in btc_find_voltage()
1398 RV770_SMC_STATETABLE *table) in btc_populate_ulv_state() argument
1407 &table->ULVState.levels[0], in btc_populate_ulv_state()
1410 table->ULVState.levels[0].arbValue = MC_CG_ARB_FREQ_F0; in btc_populate_ulv_state()
1411 table->ULVState.levels[0].ACIndex = 1; in btc_populate_ulv_state()
1413 table->ULVState.levels[1] = table->ULVState.levels[0]; in btc_populate_ulv_state()
1414 table->ULVState.levels[2] = table->ULVState.levels[0]; in btc_populate_ulv_state()
1416 table->ULVState.flags |= PPSMC_SWSTATE_FLAG_DC; in btc_populate_ulv_state()
1427 RV770_SMC_STATETABLE *table) in btc_populate_smc_acpi_state() argument
1429 int ret = cypress_populate_smc_acpi_state(rdev, table); in btc_populate_smc_acpi_state()
1432 table->ACPIState.levels[0].ACIndex = 0; in btc_populate_smc_acpi_state()
1433 table->ACPIState.levels[1].ACIndex = 0; in btc_populate_smc_acpi_state()
1434 table->ACPIState.levels[2].ACIndex = 0; in btc_populate_smc_acpi_state()
1632 RV770_SMC_STATETABLE *table = &pi->smc_statetable; in btc_init_smc_table() local
1635 memset(table, 0, sizeof(RV770_SMC_STATETABLE)); in btc_init_smc_table()
1637 cypress_populate_smc_voltage_tables(rdev, table); in btc_init_smc_table()
1642 table->thermalProtectType = PPSMC_THERMAL_PROTECT_TYPE_INTERNAL; in btc_init_smc_table()
1645 table->thermalProtectType = PPSMC_THERMAL_PROTECT_TYPE_NONE; in btc_init_smc_table()
1648 table->thermalProtectType = PPSMC_THERMAL_PROTECT_TYPE_EXTERNAL; in btc_init_smc_table()
1653 table->systemFlags |= PPSMC_SYSTEMFLAG_GPIO_DC; in btc_init_smc_table()
1656 table->systemFlags |= PPSMC_SYSTEMFLAG_REGULATOR_HOT; in btc_init_smc_table()
1659 table->systemFlags |= PPSMC_SYSTEMFLAG_STEPVDDC; in btc_init_smc_table()
1662 table->systemFlags |= PPSMC_SYSTEMFLAG_GDDR5; in btc_init_smc_table()
1664 ret = cypress_populate_smc_initial_state(rdev, radeon_boot_state, table); in btc_init_smc_table()
1672 ret = btc_populate_smc_acpi_state(rdev, table); in btc_init_smc_table()
1677 ret = btc_populate_ulv_state(rdev, table); in btc_init_smc_table()
1682 table->driverState = table->initialState; in btc_init_smc_table()
1686 (u8 *)table, in btc_init_smc_table()
1901 static void btc_set_valid_flag(struct evergreen_mc_reg_table *table) in btc_set_valid_flag() argument
1905 for (i = 0; i < table->last; i++) { in btc_set_valid_flag()
1906 for (j = 1; j < table->num_entries; j++) { in btc_set_valid_flag()
1907 if (table->mc_reg_table_entry[j-1].mc_data[i] != in btc_set_valid_flag()
1908 table->mc_reg_table_entry[j].mc_data[i]) { in btc_set_valid_flag()
1909 table->valid_flag |= (1 << i); in btc_set_valid_flag()
1917 struct evergreen_mc_reg_table *table) in btc_set_mc_special_registers() argument
1923 for (i = 0, j = table->last; i < table->last; i++) { in btc_set_mc_special_registers()
1924 switch (table->mc_reg_address[i].s1) { in btc_set_mc_special_registers()
1927 table->mc_reg_address[j].s1 = MC_PMG_CMD_EMRS >> 2; in btc_set_mc_special_registers()
1928 table->mc_reg_address[j].s0 = MC_SEQ_PMG_CMD_EMRS_LP >> 2; in btc_set_mc_special_registers()
1929 for (k = 0; k < table->num_entries; k++) { in btc_set_mc_special_registers()
1930 table->mc_reg_table_entry[k].mc_data[j] = in btc_set_mc_special_registers()
1932 ((table->mc_reg_table_entry[k].mc_data[i] & 0xffff0000) >> 16); in btc_set_mc_special_registers()
1940 table->mc_reg_address[j].s1 = MC_PMG_CMD_MRS >> 2; in btc_set_mc_special_registers()
1941 table->mc_reg_address[j].s0 = MC_SEQ_PMG_CMD_MRS_LP >> 2; in btc_set_mc_special_registers()
1942 for (k = 0; k < table->num_entries; k++) { in btc_set_mc_special_registers()
1943 table->mc_reg_table_entry[k].mc_data[j] = in btc_set_mc_special_registers()
1945 (table->mc_reg_table_entry[k].mc_data[i] & 0x0000ffff); in btc_set_mc_special_registers()
1947 table->mc_reg_table_entry[k].mc_data[j] |= 0x100; in btc_set_mc_special_registers()
1956 table->mc_reg_address[j].s1 = MC_PMG_CMD_MRS1 >> 2; in btc_set_mc_special_registers()
1957 table->mc_reg_address[j].s0 = MC_SEQ_PMG_CMD_MRS1_LP >> 2; in btc_set_mc_special_registers()
1958 for (k = 0; k < table->num_entries; k++) { in btc_set_mc_special_registers()
1959 table->mc_reg_table_entry[k].mc_data[j] = in btc_set_mc_special_registers()
1961 (table->mc_reg_table_entry[k].mc_data[i] & 0x0000ffff); in btc_set_mc_special_registers()
1973 table->last = j; in btc_set_mc_special_registers()
1978 static void btc_set_s0_mc_reg_index(struct evergreen_mc_reg_table *table) in btc_set_s0_mc_reg_index() argument
1983 for (i = 0; i < table->last; i++) { in btc_set_s0_mc_reg_index()
1984 table->mc_reg_address[i].s0 = in btc_set_s0_mc_reg_index()
1985 btc_check_s0_mc_reg_index(table->mc_reg_address[i].s1, &address) ? in btc_set_s0_mc_reg_index()
1986 address : table->mc_reg_address[i].s1; in btc_set_s0_mc_reg_index()
1990 static int btc_copy_vbios_mc_reg_table(struct atom_mc_reg_table *table, in btc_copy_vbios_mc_reg_table() argument
1995 if (table->last > SMC_EVERGREEN_MC_REGISTER_ARRAY_SIZE) in btc_copy_vbios_mc_reg_table()
1998 if (table->num_entries > MAX_AC_TIMING_ENTRIES) in btc_copy_vbios_mc_reg_table()
2001 for (i = 0; i < table->last; i++) in btc_copy_vbios_mc_reg_table()
2002 eg_table->mc_reg_address[i].s1 = table->mc_reg_address[i].s1; in btc_copy_vbios_mc_reg_table()
2003 eg_table->last = table->last; in btc_copy_vbios_mc_reg_table()
2005 for (i = 0; i < table->num_entries; i++) { in btc_copy_vbios_mc_reg_table()
2007 table->mc_reg_table_entry[i].mclk_max; in btc_copy_vbios_mc_reg_table()
2008 for(j = 0; j < table->last; j++) in btc_copy_vbios_mc_reg_table()
2010 table->mc_reg_table_entry[i].mc_data[j]; in btc_copy_vbios_mc_reg_table()
2012 eg_table->num_entries = table->num_entries; in btc_copy_vbios_mc_reg_table()
2020 struct atom_mc_reg_table *table; in btc_initialize_mc_reg_table() local
2025 table = kzalloc(sizeof(struct atom_mc_reg_table), GFP_KERNEL); in btc_initialize_mc_reg_table()
2026 if (!table) in btc_initialize_mc_reg_table()
2042 ret = radeon_atom_init_mc_reg_table(rdev, module_index, table); in btc_initialize_mc_reg_table()
2047 ret = btc_copy_vbios_mc_reg_table(table, eg_table); in btc_initialize_mc_reg_table()
2061 kfree(table); in btc_initialize_mc_reg_table()