palm,
Да. Но по-другому никак. Т.е. это способ, предложенный Олегом (см. здесь). Можно еще сделать изменение в исходниках, и только занижать богомипсы до 200, не трогая clkfreq (использовать другую nvram variable - такой способ применен в dd-wrt и Tomato, и в оригинальной прошивке для 520gu от Asus) - но по сути это примерно одно и то же...
Can you elaborate a bit on what exactly you did? Is it a better fix than this one? What does "cat /proc/cpuinfo" show after the change - what BogoMIPS value?
Thanks!
BogoMIPS=238.38, не изменяется. Лучше этот способ, или нет, не знаю. Но это-тоже способ, и его можно использовать без перепрошивки роутера. А вообще, ИМХО, всё это-косметика, надо с таймером разбираться.
P.S. Может, не совсем правильно понял вопрос. Если можно, то по-русски.
ASUS WL5xx: FW 1.9.2.7-d-rXXXX / обсуждение прошивки [RU] / firmware discussion [EN] | bip irc proxy
ASUS RT-N1x: FW 1.9.2.7-rtn-rXXXX / обсуждение прошивки [RU] / firmware discussion [EN] | fake ident daemon
Так, я, ничего в прошивке не менял. Конкретно:
Собрал 10-ку Олега (тулчейн ASUS+uсlibc Олега), получил исходный код ядра, для компиляции модуля + System.map, для определения адреса tick, т.к. из прошивки не экспортируется. Сравнил /proc/ksyms c System.map, адреса совпадают, значит ядро скомпилино 1 в 1. Взял адрес tick из System.map, скомпилил модуль ядра, код тривиальный, главное:
insmod, rmmod - всё, date показывает, что часы идут правильно.Code:long * ptick = (long *)0x801F68B0; *ptick = 12000; //default 10000
Last edited by palm; 15-05-2009 at 19:20. Reason: опечатка
Last edited by theMIROn; 16-05-2009 at 11:37.
ASUS WL5xx: FW 1.9.2.7-d-rXXXX / обсуждение прошивки [RU] / firmware discussion [EN] | bip irc proxy
ASUS RT-N1x: FW 1.9.2.7-rtn-rXXXX / обсуждение прошивки [RU] / firmware discussion [EN] | fake ident daemon
Насколько, я, понял из своих изысканий, изменение tick-стандартный механизм корректировки часов через вызов adjtimex. Переменная, содержит время в микросекундах, которое, как-бы проходит между 2-мя прерываниями таймера. Часть ПО, использует её, для интерпритации интервала времени, а часть, системную частоту, например, ntp-клиент, всё-равно, вызывается через 2ч. 20мин., вместо 2ч., а date,crond-работают правильно. В целом роутер, как работал, так и работает, ни быстрее, не медленнее, только, что время правильно показывает.
Пляски с бубном, вокруг таймера и исходников, привели к тому, что на WL520GU ( или в какой-то его партии ), ИМХО, процессор работает на частоте 200 МГц, увеличение clkfreq до 240, вызывает, только, неправильную работу таймера ( 83.3 Гц, вместо 100 ). И, как следствие, завышенное показание BogoMIPS в 1.2 раза. Т.е. реальный BogoMIPS ~ 200.
С чем, это может быть связано
Не даёт покоя, что 520gu, работает на частоте 200 МГц, вместо 240. В то же время, судя по постам, на 500gpv2 этого нет, а процессор такой же. По официальным исходникам, процессоры инициализируются одинаково, кварцы тоже, вроде, по 25 МГц. Шаманство с таймингами SDRAM, привело к 16 ноге флэш ( слава богу, пациент ещё жив ). Просьба к владельцам WL-500gpv2, поделитесь своим cpuinfo. Снять, в прошивке Олега, можно так:
Code:cat /proc/cpuinfo > /opt/cpuinfo
Last edited by palm; 08-06-2009 at 17:29. Reason: нашёл загрузчик