0 votos

¿Cuál es el valor predeterminado de la CPU Freq gobernador del SAMSUNG GALAXY S4 GT-I9500 versión Octacore?

He estado jugando con CPUFreq gobernadores de los octacore versión del Samsung Galaxy S4 y me olvidé de lo que era el gobernador dispositivo se ha configurado para operar a través de Samsung?

1voto

LieX Puntos141

El valor predeterminado gobernador en el GT-I9500 se llama "ondemand-sec". Estoy ejecutando el XXUEMJ9 firmware (Android 4.3). Es una versión modificada del gobernador ondemand. Aquí está una lista en /sys/devices/system/cpu/cpufreq:

root@ja3g:/sys/devices/system/cpu/cpufreq # ls -al
drwxr-xr-x    5 0        0                0 Nov 14 12:38 .
drwxr-xr-x    9 0        0                0 Nov 14 12:38 ..
drwxr-xr-x    2 0        0                0 Nov 14 12:38 iks-cpufreq
drwxr-xr-x    2 0        0                0 Nov 14 12:38 ondemand
drwxrwxrwx    2 0        0                0 Nov 14 12:39 ondemand-sec

root@ja3g:/sys/devices/system/cpu/cpu0/cpufreq # cat scaling_governor          
ondemand-sec

De Frecuencias De Las Asignaciones De

Como para que la frecuencia activa que los núcleos, no recuerdo si se puede consultar a través de la sysfs, pero sí que recuerdo:

  • Por debajo de 600 Mhz, sólo el A7 núcleos están activos, y pueden ejecutarse en un factor 2x. Por ejemplo, a 400 Mhz, el A7 núcleos corriendo a 800 Mhz.
  • Por encima de 600 Mhz, sólo la A15 núcleos están activos, y pueden ejecutarse en un 1x factor. Por ejemplo, a 1.2 Ghz, la A15 núcleos corriendo a 1.2 Ghz.

La asignación de frecuencia se pueden encontrar en las fuentes del kernel en drivers/cpufreq/exynos-ikcs-cpufreq.c, alrededor de la línea ~56:

#define ACTUAL_FREQ(x, cur) ((cur == CA7) ? (x) << 1 : (x))
#define VIRT_FREQ(x, cur) ((cur == CA7) ? (x) >> 1 : (x))

La primera línea se encuentra la frecuencia real de la base. Si el núcleo es un A7, a continuación realizamos un bitshift en el virtual "frecuencia" por 1 a la izquierda. Este es, en efecto, una multiplicación por 2.

Gran parte del resto del código se refiere a la consulta de la CPU compatible frecuencias de cada tipo de núcleo y combinación de ellos para darle la resultante cpufreq (ver tabla cpufreq_merge_tables de la función alrededor de la línea 197).

Más info sobre cómo esto se puede encontrar en esta serie de diapositivas por Linaro.

Core Estado

Se puede comprobar que los núcleos están activos mediante un nodo de dispositivo en /dev/bL_status.

root@ja3g:/dev # cat bL_status
        0 1 2 3 L2 CCI
[A15]   0 0 0 0  0
[A7]    1 1 1 1  1

El resultado anterior indica que sólo el A7 núcleos están activos.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by: