Lines Matching refs:dct
104 static void f15h_select_dct(struct amd64_pvt *pvt, u8 dct) in f15h_select_dct() argument
110 reg |= dct; in f15h_select_dct()
128 static inline int amd64_read_dct_pci_cfg(struct amd64_pvt *pvt, u8 dct, in amd64_read_dct_pci_cfg() argument
133 if (dct || offset >= 0x100) in amd64_read_dct_pci_cfg()
138 if (dct) { in amd64_read_dct_pci_cfg()
156 dct = (dct && pvt->model == 0x30) ? 3 : dct; in amd64_read_dct_pci_cfg()
157 f15h_select_dct(pvt, dct); in amd64_read_dct_pci_cfg()
161 if (dct) in amd64_read_dct_pci_cfg()
400 static void get_cs_base_and_mask(struct amd64_pvt *pvt, int csrow, u8 dct, in get_cs_base_and_mask() argument
407 csbase = pvt->csels[dct].csbases[csrow]; in get_cs_base_and_mask()
408 csmask = pvt->csels[dct].csmasks[csrow]; in get_cs_base_and_mask()
419 csbase = pvt->csels[dct].csbases[csrow]; in get_cs_base_and_mask()
420 csmask = pvt->csels[dct].csmasks[csrow >> 1]; in get_cs_base_and_mask()
435 csbase = pvt->csels[dct].csbases[csrow]; in get_cs_base_and_mask()
436 csmask = pvt->csels[dct].csmasks[csrow >> 1]; in get_cs_base_and_mask()
456 #define for_each_chip_select(i, dct, pvt) \ argument
457 for (i = 0; i < pvt->csels[dct].b_cnt; i++)
459 #define chip_select_base(i, dct, pvt) \ argument
460 pvt->csels[dct].csbases[i]
462 #define for_each_chip_select_mask(i, dct, pvt) \ argument
463 for (i = 0; i < pvt->csels[dct].m_cnt; i++)
1957 static int k8_dbam_to_chip_select(struct amd64_pvt *pvt, u8 dct, in k8_dbam_to_chip_select() argument
1960 u32 dclr = dct ? pvt->dclr1 : pvt->dclr0; in k8_dbam_to_chip_select()
2124 static int f10_dbam_to_chip_select(struct amd64_pvt *pvt, u8 dct, in f10_dbam_to_chip_select() argument
2127 u32 dclr = dct ? pvt->dclr1 : pvt->dclr0; in f10_dbam_to_chip_select()
2140 static int f15_dbam_to_chip_select(struct amd64_pvt *pvt, u8 dct, in f15_dbam_to_chip_select() argument
2149 static int f15_m60h_dbam_to_chip_select(struct amd64_pvt *pvt, u8 dct, in f15_m60h_dbam_to_chip_select() argument
2153 u32 dcsm = pvt->csels[dct].csmasks[cs_mask_nr]; in f15_m60h_dbam_to_chip_select()
2182 static int f16_dbam_to_chip_select(struct amd64_pvt *pvt, u8 dct, in f16_dbam_to_chip_select() argument
2432 static int f10_process_possible_spare(struct amd64_pvt *pvt, u8 dct, int csrow) in f10_process_possible_spare() argument
2436 if (online_spare_swap_done(pvt, dct) && in f10_process_possible_spare()
2437 csrow == online_spare_bad_dramcs(pvt, dct)) { in f10_process_possible_spare()
2439 for_each_chip_select(tmp_cs, dct, pvt) { in f10_process_possible_spare()
2440 if (chip_select_base(tmp_cs, dct, pvt) & 0x2) { in f10_process_possible_spare()
2457 static int f1x_lookup_addr_in_dct(u64 in_addr, u8 nid, u8 dct) in f1x_lookup_addr_in_dct() argument
2471 edac_dbg(1, "input addr: 0x%llx, DCT: %d\n", in_addr, dct); in f1x_lookup_addr_in_dct()
2473 for_each_chip_select(csrow, dct, pvt) { in f1x_lookup_addr_in_dct()
2474 if (!csrow_enabled(csrow, dct, pvt)) in f1x_lookup_addr_in_dct()
2477 get_cs_base_and_mask(pvt, csrow, dct, &cs_base, &cs_mask); in f1x_lookup_addr_in_dct()
2492 cs_found = f10_process_possible_spare(pvt, dct, csrow); in f1x_lookup_addr_in_dct()
3561 static u32 get_csrow_nr_pages(struct amd64_pvt *pvt, u8 dct, int csrow_nr_orig) in get_csrow_nr_pages() argument
3563 u32 dbam = dct ? pvt->dbam1 : pvt->dbam0; in get_csrow_nr_pages()
3571 cs_mode = f17_get_cs_mode(csrow_nr >> 1, dct, pvt); in get_csrow_nr_pages()
3574 nr_pages = pvt->ops->dbam_to_cs(pvt, dct, cs_mode, csrow_nr); in get_csrow_nr_pages()
3578 csrow_nr_orig, dct, cs_mode); in get_csrow_nr_pages()
4181 int cs = 0, dct = 0; in instance_has_memory() local
4183 for (dct = 0; dct < fam_type->max_mcs; dct++) { in instance_has_memory()
4184 for_each_chip_select(cs, dct, pvt) in instance_has_memory()
4185 cs_enabled |= csrow_enabled(cs, dct, pvt); in instance_has_memory()