• Home
  • Raw
  • Download

Lines Matching +full:version +full:- +full:major

1 // SPDX-License-Identifier: GPL-2.0-only
3 * Match running platform with pre-defined OPP values for CPUFreq
43 * struct sti_cpufreq_ddata - ST CPUFreq Driver Data
56 struct device_node *np = ddata.cpu->of_node; in sti_cpufreq_fetch_major()
65 dev_err(dev, "No major number offset provided in %pOF [%d]\n", in sti_cpufreq_fetch_major()
72 dev_err(dev, "Failed to read major number from syscon [%d]\n", in sti_cpufreq_fetch_major()
83 struct device_node *np = dev->of_node; in sti_cpufreq_fetch_minor()
88 ret = of_property_read_u32_index(np, "st,syscfg-eng", in sti_cpufreq_fetch_minor()
154 struct device_node *np = dev->of_node; in sti_cpufreq_set_opp_info()
157 unsigned int version[VERSION_ELEMENTS]; in sti_cpufreq_set_opp_info() local
158 int pcode, substrate, major, minor; in sti_cpufreq_set_opp_info() local
166 return -ENODEV; in sti_cpufreq_set_opp_info()
169 ret = of_property_read_u32_index(np, "st,syscfg-eng", in sti_cpufreq_set_opp_info()
197 major = sti_cpufreq_fetch_major(); in sti_cpufreq_set_opp_info()
198 if (major < 0) { in sti_cpufreq_set_opp_info()
199 dev_err(dev, "Failed to obtain major version\n"); in sti_cpufreq_set_opp_info()
200 /* Use default major number */ in sti_cpufreq_set_opp_info()
201 major = DEFAULT_VERSION; in sti_cpufreq_set_opp_info()
206 dev_err(dev, "Failed to obtain minor version\n"); in sti_cpufreq_set_opp_info()
219 version[0] = BIT(major); in sti_cpufreq_set_opp_info()
220 version[1] = BIT(minor); in sti_cpufreq_set_opp_info()
221 version[2] = BIT(substrate); in sti_cpufreq_set_opp_info()
223 opp_table = dev_pm_opp_set_supported_hw(dev, version, VERSION_ELEMENTS); in sti_cpufreq_set_opp_info()
229 dev_dbg(dev, "pcode: %d major: %d minor: %d substrate: %d\n", in sti_cpufreq_set_opp_info()
230 pcode, major, minor, substrate); in sti_cpufreq_set_opp_info()
231 dev_dbg(dev, "version[0]: %x version[1]: %x version[2]: %x\n", in sti_cpufreq_set_opp_info()
232 version[0], version[1], version[2]); in sti_cpufreq_set_opp_info()
240 struct device_node *np = dev->of_node; in sti_cpufreq_fetch_syscon_registers()
248 ddata.syscfg_eng = syscon_regmap_lookup_by_phandle(np, "st,syscfg-eng"); in sti_cpufreq_fetch_syscon_registers()
250 dev_err(dev, "\"st,syscfg-eng\" not supplied\n"); in sti_cpufreq_fetch_syscon_registers()
264 return -ENODEV; in sti_cpufreq_init()
272 if (!of_get_property(ddata.cpu->of_node, "operating-points-v2", NULL)) { in sti_cpufreq_init()
273 dev_err(ddata.cpu, "OPP-v2 not supported\n"); in sti_cpufreq_init()
289 platform_device_register_simple("cpufreq-dt", -1, NULL, 0); in sti_cpufreq_init()