/* ------------------------------------------------------------------------*//** * @FUNCTION cpu_init * @BRIEF init local cpuinfo variables * @RETURNS 0 on success * OMAPCONF_ERR_ARG * @param[in] none * @DESCRIPTION init local cpuinfo variables *//*------------------------------------------------------------------------ */ void cpu_init(void) { cpu_forced_set(0); cpu_set(OMAP_MAX); cpu_revision_set(REV_ES_MAX); cpu_device_type_set(DEV_TYPE_MAX); cpu_silicon_type_set(SILICON_TYPE_MAX); cpu_full_name_set(); }
/* ------------------------------------------------------------------------*//** * @FUNCTION cpu_force * @BRIEF Force cpu detection. * @RETURNS 0 on success * OMAPCONF_ERR_ARG * @param[in] forced_cpu: name of the force cpu * @DESCRIPTION Force cpu detection. *//*------------------------------------------------------------------------ */ int cpu_force(char *forced_cpu) { if (forced_cpu == NULL) { fprintf(stderr, "%s(): forced_cpu == NULL!\n", __func__); return OMAPCONF_ERR_ARG; } cpu_init(); if (strcmp(forced_cpu, "omap5430") == 0) { cpu_forced_set(1); cpu_set(OMAP_5430); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES1_0); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp(forced_cpu, "omap5432") == 0) { cpu_forced_set(1); cpu_set(OMAP_5432); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES1_0); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp(forced_cpu, "omap4430") == 0) { cpu_forced_set(1); cpu_set(OMAP_4430); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES2_2); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp(forced_cpu, "omap4460") == 0) { cpu_forced_set(1); cpu_set(OMAP_4460); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES1_1); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp(forced_cpu, "omap4470") == 0) { cpu_forced_set(1); cpu_set(OMAP_4470); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES1_0); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else { return OMAPCONF_ERR_ARG; } cpu_forced_set(1); return 0; }
/* ------------------------------------------------------------------------*//** * @FUNCTION cpu_force * @BRIEF Force cpu detection. * @RETURNS 0 on success * OMAPCONF_ERR_ARG * @param[in] forced_cpu: name of the force cpu * @DESCRIPTION Force cpu detection. *//*------------------------------------------------------------------------ */ int cpu_force(char *forced_cpu) { if (forced_cpu == NULL) { fprintf(stderr, "%s(): forced_cpu == NULL!\n", __func__); return OMAPCONF_ERR_ARG; } cpu_init(); if (strcmp(forced_cpu, "dra72x") == 0) { cpu_forced_set(1); cpu_set(DRA_72X); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES1_1); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp(forced_cpu, "dra75x") == 0) { cpu_forced_set(1); cpu_set(DRA_75X); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES1_1); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp (forced_cpu, "am3352") == 0) { cpu_forced_set(1); cpu_set(AM_3352); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES2_1); cpu_package_type_set(ZCZ); cpu_full_name_set(); } else if (strcmp (forced_cpu, "am3354") == 0) { cpu_forced_set(1); cpu_set(AM_3354); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES2_1); cpu_package_type_set(ZCZ); cpu_full_name_set(); } else if (strcmp (forced_cpu, "am3356") == 0) { cpu_forced_set(1); cpu_set(AM_3356); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES2_1); cpu_package_type_set(ZCZ); cpu_full_name_set(); } else if (strcmp (forced_cpu, "am3357") == 0) { cpu_forced_set(1); cpu_set(AM_3357); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES2_1); cpu_package_type_set(ZCZ); cpu_full_name_set(); } else if (strcmp (forced_cpu, "am3358") == 0) { cpu_forced_set(1); cpu_set(AM_3358); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES2_1); cpu_package_type_set(ZCZ); cpu_full_name_set(); } else if (strcmp (forced_cpu, "am3359") == 0) { cpu_forced_set(1); cpu_set(AM_3359); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES2_1); cpu_package_type_set(ZCZ); cpu_full_name_set(); } else if (strcmp (forced_cpu, "am335x") == 0) { cpu_forced_set(1); cpu_set(AM_335X); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES2_1); cpu_package_type_set(ZCZ); cpu_full_name_set(); } else if (strcmp (forced_cpu, "am437x") == 0) { cpu_forced_set(1); cpu_set(AM_437X); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES1_2); cpu_full_name_set(); } else if (strcmp(forced_cpu, "omap5430") == 0) { cpu_forced_set(1); cpu_set(OMAP_5430); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES2_0); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp(forced_cpu, "omap5430es1") == 0) { cpu_forced_set(1); cpu_set(OMAP_5430); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES1_0); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp(forced_cpu, "omap5432") == 0) { cpu_forced_set(1); cpu_set(OMAP_5432); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES2_0); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp(forced_cpu, "omap5432es1") == 0) { cpu_forced_set(1); cpu_set(OMAP_5432); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES1_0); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp(forced_cpu, "omap4430") == 0) { cpu_forced_set(1); cpu_set(OMAP_4430); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES2_2); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp(forced_cpu, "omap4460") == 0) { cpu_forced_set(1); cpu_set(OMAP_4460); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES1_1); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else if (strcmp(forced_cpu, "omap4470") == 0) { cpu_forced_set(1); cpu_set(OMAP_4470); cpu_device_type_set(DEV_GP); cpu_revision_set(REV_ES1_0); cpu_silicon_type_set(STANDARD_PERF_SI); cpu_full_name_set(); } else { return OMAPCONF_ERR_ARG; } cpu_forced_set(1); return 0; }