• Home
  • Raw
  • Download

Lines Matching refs:c

12 static bool is_loongson(struct cpuinfo_mips *c)  in is_loongson()  argument
14 switch (c->processor_id & PRID_COMP_MASK) { in is_loongson()
16 return ((c->processor_id & PRID_IMP_MASK) == in is_loongson()
27 static u32 get_loongson_fprev(struct cpuinfo_mips *c) in get_loongson_fprev() argument
29 return c->fpu_id & LOONGSON_FPREV_MASK; in get_loongson_fprev()
50 static void probe_uca(struct cpuinfo_mips *c) in probe_uca() argument
53 c->loongson3_cpucfg_data[0] |= LOONGSON_CFG1_LSUCA; in probe_uca()
56 static void decode_loongson_config6(struct cpuinfo_mips *c) in decode_loongson_config6() argument
61 c->loongson3_cpucfg_data[0] |= LOONGSON_CFG1_SFBP; in decode_loongson_config6()
63 c->loongson3_cpucfg_data[0] |= LOONGSON_CFG1_LLEXC; in decode_loongson_config6()
65 c->loongson3_cpucfg_data[0] |= LOONGSON_CFG1_SCRAND; in decode_loongson_config6()
68 static void patch_cpucfg_sel1(struct cpuinfo_mips *c) in patch_cpucfg_sel1() argument
70 u64 ases = c->ases; in patch_cpucfg_sel1()
71 u64 options = c->options; in patch_cpucfg_sel1()
72 u32 data = c->loongson3_cpucfg_data[0]; in patch_cpucfg_sel1()
76 data |= get_loongson_fprev(c) << LOONGSON_CFG1_FPREV_OFFSET; in patch_cpucfg_sel1()
83 c->loongson3_cpucfg_data[0] = data; in patch_cpucfg_sel1()
86 static void patch_cpucfg_sel2(struct cpuinfo_mips *c) in patch_cpucfg_sel2() argument
88 u64 ases = c->ases; in patch_cpucfg_sel2()
89 u64 options = c->options; in patch_cpucfg_sel2()
90 u32 data = c->loongson3_cpucfg_data[1]; in patch_cpucfg_sel2()
104 c->loongson3_cpucfg_data[1] = data; in patch_cpucfg_sel2()
107 static void patch_cpucfg_sel3(struct cpuinfo_mips *c) in patch_cpucfg_sel3() argument
109 u64 ases = c->ases; in patch_cpucfg_sel3()
110 u32 data = c->loongson3_cpucfg_data[2]; in patch_cpucfg_sel3()
121 c->loongson3_cpucfg_data[2] = data; in patch_cpucfg_sel3()
124 void loongson3_cpucfg_synthesize_data(struct cpuinfo_mips *c) in loongson3_cpucfg_synthesize_data() argument
127 if (!is_loongson(c)) in loongson3_cpucfg_synthesize_data()
134 c->loongson3_cpucfg_data[0] = 0; in loongson3_cpucfg_synthesize_data()
135 c->loongson3_cpucfg_data[1] = 0; in loongson3_cpucfg_synthesize_data()
136 c->loongson3_cpucfg_data[2] = 0; in loongson3_cpucfg_synthesize_data()
139 switch (c->processor_id & (PRID_IMP_MASK | PRID_REV_MASK)) { in loongson3_cpucfg_synthesize_data()
144 decode_loongson_config6(c); in loongson3_cpucfg_synthesize_data()
145 probe_uca(c); in loongson3_cpucfg_synthesize_data()
147 c->loongson3_cpucfg_data[0] |= (LOONGSON_CFG1_LSLDR0 | in loongson3_cpucfg_synthesize_data()
150 c->loongson3_cpucfg_data[1] |= (LOONGSON_CFG2_LBT1 | in loongson3_cpucfg_synthesize_data()
153 c->loongson3_cpucfg_data[2] = 0; in loongson3_cpucfg_synthesize_data()
157 c->loongson3_cpucfg_data[0] |= (LOONGSON_CFG1_LSLDR0 | in loongson3_cpucfg_synthesize_data()
160 c->loongson3_cpucfg_data[1] |= (LOONGSON_CFG2_LBT1 | in loongson3_cpucfg_synthesize_data()
162 c->loongson3_cpucfg_data[2] |= ( in loongson3_cpucfg_synthesize_data()
171 c->loongson3_cpucfg_data[0] |= (LOONGSON_CFG1_LSLDR0 | in loongson3_cpucfg_synthesize_data()
174 c->loongson3_cpucfg_data[1] |= (LOONGSON_CFG2_LBT1 | in loongson3_cpucfg_synthesize_data()
176 c->loongson3_cpucfg_data[2] |= ( in loongson3_cpucfg_synthesize_data()
187 decode_loongson_config6(c); in loongson3_cpucfg_synthesize_data()
188 probe_uca(c); in loongson3_cpucfg_synthesize_data()
190 c->loongson3_cpucfg_data[0] |= (LOONGSON_CFG1_CNT64 | in loongson3_cpucfg_synthesize_data()
194 c->loongson3_cpucfg_data[1] |= (LOONGSON_CFG2_LBT1 | in loongson3_cpucfg_synthesize_data()
198 c->loongson3_cpucfg_data[2] |= (LOONGSON_CFG3_LCAM_REV1 | in loongson3_cpucfg_synthesize_data()
215 c->loongson3_cpucfg_data[0] |= LOONGSON_CFG1_CDMAP; in loongson3_cpucfg_synthesize_data()
218 patch_cpucfg_sel1(c); in loongson3_cpucfg_synthesize_data()
219 patch_cpucfg_sel2(c); in loongson3_cpucfg_synthesize_data()
220 patch_cpucfg_sel3(c); in loongson3_cpucfg_synthesize_data()