перед применением разгона подумайте о последствях и внимательно перечетайте тему
Кто управляет частотой CPU?
Частотой управляет демон apmd через ipm-функции ядра, реализованные в linux-2.4.17/arch/arm/mach-ezx/dvfs.c.
Можно ли изменить частоту CPU?
Так как известно смещение, по которому в apmd лежат структуры, описывающие частоту и напряжение ядра pxa под различной нагрузкой, то их можно легко изменить. В стандартном используется 3 частоты (104 мгц под нагрузкой x<=35%, 208 мгц под нагрузкой 35%<x<=80%, 312 мгц под нагрузкой >80%). Все эти частоты можно изменить по своему усмотрению.
Как изменить частоту CPU?
Начало массива структур ipm_config находится по смещению 0x46a8. Можно поменять частоту самому, можно взять пропатченый apmd.
Как установить пропатченый apmd?
Есть несколько способов заменить apmd, как и любой другой файл, находящийся в read-only группе. Во-первых, можно просто пересобрать группу с замененным и прошить ее. Этот способ удобен когда нужно произвести замену один раз и навсегда. В нашем же случае удобно заменять файл при загрузке системы - тогда в любой момент можно будет легко откатится на оригинальный apmd. Делается это через mount - стандартную утилиту linux (да и других *nix-подобных систем). Как это делать, наверняка многие знают - неоднакратно описывалось на форуме. Но не стоит делать это в startup.txt - его запуск производится позже чем запуск apmd, то есть замена apmd через этот файл не даст никакого эффекта. Необходимо воспользоваться автозапуском, который вызывается раньше, чем apmd. К моему удивлению, не все пользовательские модификации прошивок имеют возможность автозапуска через подобный файл, поэтому рекомендую пользоваться The One от товарища whitemoto, которая подоный файл имеет. Называется он startup_test.txt. Все что нужно сделать для замены apmd таким способом - скопировать патченый apmd в /ezxlocal и добавить в /ezxlocal/startup_test.txt следующие строки:
#!/bin/bash
mount --bind /ezxlocal/apmd /usr/bin/apmd
Файл создавайте с unix-переносами строк (из-за DOS переносов у многих наблюдались проблемы).
Как посмотреть, на какой частоте работает CPU?
Достаточно посмотреть /proc/cpuinfo - в строке BogoMIPS: будет число, приближенно равное текущей частоте в мегагерцах. Более подробно можно посмотреть с помощью модуля ядра clock.o.
А как насчет напряжения?
Напряжение тоже можно менять аналогично частоте.
Почему иногда частота равна 312mhz, хотя стоит патченый apmd?
Нужно прошить это ядро чтобы частота регулировалась только apmd.
Вот apmd, с частотой 416mhz и напряжением 1.5v на всех нагрузках: apmd_416_all
для того чтобы вслучии неудочного разгона реанимировать тело без бубна
Прога для редактирования apmd
Сообщение отредактировал hobbit19 - 24.7.2007, 18:44
Кто управляет частотой CPU?
Частотой управляет демон apmd через ipm-функции ядра, реализованные в linux-2.4.17/arch/arm/mach-ezx/dvfs.c.
Можно ли изменить частоту CPU?
Так как известно смещение, по которому в apmd лежат структуры, описывающие частоту и напряжение ядра pxa под различной нагрузкой, то их можно легко изменить. В стандартном используется 3 частоты (104 мгц под нагрузкой x<=35%, 208 мгц под нагрузкой 35%<x<=80%, 312 мгц под нагрузкой >80%). Все эти частоты можно изменить по своему усмотрению.
Как изменить частоту CPU?
Начало массива структур ipm_config находится по смещению 0x46a8. Можно поменять частоту самому, можно взять пропатченый apmd.
Как установить пропатченый apmd?
Есть несколько способов заменить apmd, как и любой другой файл, находящийся в read-only группе. Во-первых, можно просто пересобрать группу с замененным и прошить ее. Этот способ удобен когда нужно произвести замену один раз и навсегда. В нашем же случае удобно заменять файл при загрузке системы - тогда в любой момент можно будет легко откатится на оригинальный apmd. Делается это через mount - стандартную утилиту linux (да и других *nix-подобных систем). Как это делать, наверняка многие знают - неоднакратно описывалось на форуме. Но не стоит делать это в startup.txt - его запуск производится позже чем запуск apmd, то есть замена apmd через этот файл не даст никакого эффекта. Необходимо воспользоваться автозапуском, который вызывается раньше, чем apmd. К моему удивлению, не все пользовательские модификации прошивок имеют возможность автозапуска через подобный файл, поэтому рекомендую пользоваться The One от товарища whitemoto, которая подоный файл имеет. Называется он startup_test.txt. Все что нужно сделать для замены apmd таким способом - скопировать патченый apmd в /ezxlocal и добавить в /ezxlocal/startup_test.txt следующие строки:
Код
#!/bin/bash
mount --bind /ezxlocal/apmd /usr/bin/apmd
Файл создавайте с unix-переносами строк (из-за DOS переносов у многих наблюдались проблемы).
Как посмотреть, на какой частоте работает CPU?
Достаточно посмотреть /proc/cpuinfo - в строке BogoMIPS: будет число, приближенно равное текущей частоте в мегагерцах. Более подробно можно посмотреть с помощью модуля ядра clock.o.
А как насчет напряжения?
Напряжение тоже можно менять аналогично частоте.
Почему иногда частота равна 312mhz, хотя стоит патченый apmd?
Нужно прошить это ядро чтобы частота регулировалась только apmd.
Вот apmd, с частотой 416mhz и напряжением 1.5v на всех нагрузках: apmd_416_all
для того чтобы вслучии неудочного разгона реанимировать тело без бубна
Цитата
Советую дописывать в авторан строку, которая монтирует apmd только при наличии флешки, дыбы в случае зависания просто вынуть флешку.
Например:
if [ -e /mmc/mmca1/.system/xxx.xxx ] ; then
if [ -e /ezxlocal/apmd ] ; then
mount --bind /ezxlocal/apmd /usr/bin/apmd
else
rm /ezxlocal/apmd
fi
fi
В этом случае apmd будет монтироваться только если будет вставлена флешка, на которой в папке .system будет находиться файл xxx.xxx
Например:
if [ -e /mmc/mmca1/.system/xxx.xxx ] ; then
if [ -e /ezxlocal/apmd ] ; then
mount --bind /ezxlocal/apmd /usr/bin/apmd
else
rm /ezxlocal/apmd
fi
fi
В этом случае apmd будет монтироваться только если будет вставлена флешка, на которой в папке .system будет находиться файл xxx.xxx
Прога для редактирования apmd
Сообщение отредактировал hobbit19 - 24.7.2007, 18:44