Только для Samsung Galaxy S3 с прошивками Jelly Bean
Самое перспективное ядрышко.
Ключевые моменты - оперативки больше, 857мб всего и повышенное быстродействие, имхо пошустрее сияха будет.
Новое alpha36.3 от 26.04.13:
Fixed slice lookup issue on ABB: It's recommended you put your slices back to default before flashing if you changed them to borderline stability values. Please upgrade.
Новое alpha36.1 от 23.04.13:
- Fixed sd card cache size controls. (ramfs repack only)
Обновление 36:
Adaptive Body Bias control (ABB). (Experimental feature)
Body biasing is taking advantage of transistor body effect
for binning the chip depending on its quality. In fact, this is used on the latest Samsung SoCs both for reducing power consumption and validating bad chips by adjusting their electrical characteristics.
The body bias is dictated by the voltage applied to the transistor gate (The usual voltages you're all used to) minus the voltage applied to the transistor body. The resulting bias can change the transistor's electrical characteristics in two possible ways:
Before reading on: A transistor's voltage and operating frequency is defined/limited mostly on is threshold voltage. Wikipedia has a neat visual representation of this; voltage must raise to a certain point for the transistor to be able to switch and operate. This threshold voltage can be highly dependant on temperature, influenced by the body effect, and defined by the manufacturing process. What we're doing nowdays with undervolting is to get as near as possible to the upper bound of this threshold voltage.
читать далее
Forward Body Bias
A FBB is defined when the bias of the gate voltage minus body voltage is positive, meaning the gate voltage is higher than the body voltage. This has the effect of reducing the threshold voltage. By reducing it, you can achieve lower voltages, or be able to clock the transistor higher. However the side-effect of raising the threshold voltage is that you are sacrificing power leakage, meaning that the lower the threshold voltage becomes, the higher leakage current in the transistor becomes. This leakage power rises exponentially with a linear lowering of the threshold voltage. This is what is called static transistor leakage.
Reverse Body Bias
A RBB is defined when the bias of gate voltage minus body voltage is negative, meaning the gate voltage is lower than the body voltage. it has the direct opposite effect of FBB, it raises the threshold voltage thus you would need a higher gate voltage for switching, but however you also dramatically decrease static leakage.
What happens is that you want to use RBB when idling, and a reduced RBB, or even FBB at very high clocks.
Samsung currently uses this on top of voltage scaling to bin their chips. Here's an excerpt of the stock body biasing on the 4412 Prime chip (I'm using that one as an example as it has better adjusted ABB values over the Rev 1.1 chips).
You can read out you ASV group in /sys/devices/system/abb/abb_info now.
I have rewritten the ABB scaling logic/driver for CPU, GPU, MIF and INT voltages.
In the current implementation, since it would be insane to have paired-up gate-body voltages divides the frequency range in several slices; even Samsung uses only three voltage ranges on the DVFS scale. I divided the frequency ranges as follows:
CPU: Divided into four slices, with frequency ranges of 200], 800], 1600] and [1600 Mhz.
GPU: Three slices: 160], 533] and [533 Mhz.
MIF and INT: Both only two slices with the bottom frequencies for each as middle-threshold.
As mentioned above, controls can be found in /sys/devices/system/abb/ and the entries are self-explanatory. You can also change the frequency slice limits per sysfs, however in STweaks I only included the voltages for each slice only for now.
Disclaimer
{ And that's about it in that regard. I have tried testing things over last couple of weeks, but I haven't come to a solid conclusion yet beyond what's presented by the stock characteristics: It's up to you people to do some advanced testing on the matter. My limited empirical testing in terms of voltages tells me it works as intended, but if a user with advanced measuring equipment would do similar testing to what I did back on the 4210 it would be perfect. }
zRAM: Switched over from LZO to Snappy compression algorithm, this provides much faster compression and decompression than the LZO implementation which was in the current kernel. I updated the Snappy libraries to the latest original CSNAPPY implementation, so this is extremely new.
Some kernel internal updates to speed up hotplugging and improve I/O latencies.
A correctly (Unlike basically every other kernel out there till now) applied load averaging patch regarding fixing a Moir pattern in the scheduler load calculations which was floating around.
Fixed mono and equalizer switches in the sound engine. (Thanks to sorgelig for beating me to it)
Fixed led controls to behave correctly with user-space apps.
mDNIe digital brightness reduction:
You can now lower the brightness to basically nothing via this: it uses the mDNIe engine to digitally remove luminance from the RGB channel values, as opposed to reducing brightness via a proper backlight/display driver. The side effect of this is that you lose colour resolution somewhat, but is a practical and working method to reduce the too bright minimum values of our displays.
You have three configurables:
A reduction rate which you want to apply, this is the intensity of the darkening you want to achieve.
The take-over point; the backlight driver gets fed brightness values from 0-255 (In reality values below 20 have no effect). The take-over point is the point where the digital brightness reduction starts, on a reverse scale. The reduction is applied linearly from 0, (Full reduction taking place), to the take-over point (Zero reduction). The stock slider doesn't go below 20 in the interface, so practically the full reduction rate is never applied unless you use a third-party brightness controller app, just to keep that in mind, but in practice it doesn't matter.
Auto-brightness input-delta: This is needed because the stock framework is retarded in the values it forwards to the kernel, you can adjust this to avoid having brightness reduction when you don't want it on auto-brightness.
Somebody needs to edit config_autoBrightnessLevels, config_autoBrightnessLcdBacklightValues in framework-res.apk\res\values\arrays.xml to fix this.
Optionally, if you use a third-party app like Custom Auto Brightness which allows backlight values of down to 0, you can avoid this problem.
The register hook needs to be enabled to be able to use this function.
Increased the maximum brightness by 50 candela: the manual controls were limited to 250cd as maximum as opposed to 300cd which was only usable during auto-brightness, and unusable for any third-party apps.
Unaligned memory access throughout the kernel when applicable.
Switched over to GCC 4.7.3 Linaro toolchain for compiling.
Гугл перевод
Тело смещения использует в своих интересах транзистора тела
для биннинге чипа в зависимости от его качества. На самом деле, это используется на последних SoCs Samsung как для снижения энергопотребления и проверки плохо чипов путем корректировки их электрические характеристики.
Тело смещения диктуется напряжение, подаваемое на затвор транзистора (напряжения вы все привыкли) минус напряжение, подаваемое на транзистор тела. В результате смещения можете изменить электрические характеристики транзистора в двух возможных способов:
Прежде чем продолжать чтение: напряжение транзистора и рабочей частоты определяется / ограничена в основном на это пороговое напряжение. Википедии есть опрятный визуальное представление этого; напряжения должны поднять до определенного момента для транзистора, чтобы иметь возможность переключаться и работать. Это пороговое напряжение может быть в значительной степени зависит от температуры, зависит от тела эффект, и определяется производственного процесса. То, что мы делаем с Undervolting наших дней, чтобы получить как можно ближе к верхней границе этого порога напряжения.
Имея это в виду:
Прямого смещения тела
FBB определяется при смещении напряжения затвора минус тело напряжение является положительным, то есть напряжение на затворе выше, чем тело напряжения. Это имеет эффект снижения порогового напряжения. Сведя ее, можно добиться более низких напряжениях, или быть в состоянии часами транзистора выше. Однако побочным эффектом повышения пороговое напряжение является то, что вы ущерба для мощности утечки, то есть ниже порогового напряжения, тем больший ток утечки в транзисторе становится. Эта утечка мощности возрастает экспоненциально с линейным снижением порогового напряжения. Это то, что называется статическим утечки транзистора.
Обратное смещение тела
RBB определяется при смещении напряжения затвора минус тело напряжение является отрицательным, то есть напряжение на затворе ниже, чем тело напряжения. она имеет прямо противоположный эффект FBB, он повышает порог напряжения таким образом, Вы должны были бы выше ворот напряжения для переключения, но все же вы также значительно уменьшить статическую утечки.
Что происходит, что вы хотите использовать БОР на холостом ходу, и снижение БОР, или даже FBB при очень высоких часы.
Samsung в настоящее время использует это сверху масштабирования напряжения бен свои фишки. Вот выдержка фондового смещения тела на 4412 Премьер-чипе (я использую, что она в качестве примера, как это лучше регулировать ABB значения за Rev 1.1 стружка).
Вы можете прочитать, что Вы ASV группой в / системы / устройства / системы / ABB / abb_info сейчас.
Я переписал логику масштабирования ABB / драйвер для CPU, GPU, MIF и INT напряжений.
В текущей реализации, так как оно было бы безумием, чтобы иметь Парные меры ворот тела напряжения делит частотный диапазон в несколько ломтиков, и даже Samsung использует только три диапазона напряжений на DVFS масштабе. Я разделил диапазоны частот следующим образом:
Процессор: разделить на четыре ломтика, с диапазонами частот 200], 800], 1600] и [1600 МГц.
GPU: Три ломтика: 160], 533] и [533 МГц.
MIF и INT: И всего двух пластин с нижней частоты для каждого со средним уровнем порога.
Как упоминалось выше, элементы управления могут быть найдены в / системы / устройства / системы / ABB / записи и не требуют пояснений. Вы также можете изменять частоту среза в пределах Sysfs, однако в STweaks я только включены напряжений для каждого слоя только сейчас.
Отказ
{И это о нем в этом отношении. Я попытался тестирования вещей за последние пару недель, но я не пришел к твердому заключению еще сверх того, что представленные фондовом характеристики: тебе и карты в руки людей, чтобы сделать некоторые дополнительные тестирования по данному вопросу. Мой ограниченный эмпирической проверке с точки зрения напряжений говорит мне, что работает как положено, но если пользователь с современным оборудованием измерительных будет делать подобное тестирование, что я сделал еще на 4210 это было бы прекрасно. }
zRAM: перешли от LZO для Snappy алгоритм сжатия, что обеспечивает гораздо быстрее, компрессии и декомпрессии, чем реализация LZO который был в текущее ядро. Я обновил Snappy библиотек до последней оригинальной CSNAPPY реализации, так что это очень новая.
Некоторые ядра внутреннего обновления, чтобы ускорить и улучшить горячей замены в I / O задержки.
Правильно (в отличие от любой другой в основном ядра там до сих пор) приложенная нагрузка усреднения патч относительно фиксации муар в расчетах планировщик нагрузки, которая плавала вокруг.
Исправлена моно эквалайзер и переключатели в звуке двигателя. (Спасибо sorgelig за избиение меня к нему)
Исправлена привели управления правильно вести себя с пользовательского пространства приложения.
mDNIe цифрового уменьшения яркости:
Теперь можно уменьшить яркость в основном ничего через это: он использует mDNIe двигатель в цифровом удалить яркости от значений цветового канала, в отличие от снижения яркости через надлежащий подсветки / драйвер дисплея. Побочным эффектом этого является то, что вы потеряете несколько цветовое разрешение, а практический и рабочий метод снижения слишком яркий минимальные значения наших дисплеев.
У вас есть три configurables:
Снижение ставки которого вы хотите применить, это интенсивность затемнения вы хотите достичь.
Берущей на себя точку; подсветки водитель получает подаются значения яркости в диапазоне 0-255 (на самом деле значения ниже 20 не имеют никакого эффекта). Берущей на себя это точка, где цифровое подавление яркости начинается, на обратном масштабе. Снижение применяется линейно от 0, (полная сокращение происходит), в приемной над точкой (Zero сокращения). Фондовый слайдер не опускается ниже 20 в интерфейсе, так что практически полное снижение ставки никогда не применяется, если вы используете сторонние приложения Регулятор яркости, лишь бы сохранить это в виду, но на практике это не имеет значения.
Автоматическая настройка яркости входного-треугольник: Это необходимо, потому что фондовый рамках замедляется в ценности, которые он направляет в ядро, вы можете изменить это, чтобы избежать уменьшения яркости, когда вы не хотите его на авто-яркости.
Кто-то должен редактировать config_autoBrightnessLevels, config_autoBrightnessLcdBacklightValues в рамки-res.apk \ RES \ значениями \ arrays.xml, чтобы исправить это.
При необходимости, если вы используете сторонние приложения, такие как пользовательские яркости Auto, которая позволяет подсветки значения до 0, вы можете избежать этой проблемы.
Крюк регистра должна быть включена, чтобы иметь возможность использовать эту функцию.
Увеличена максимальная яркость на 50 кандел: ручное управление было ограничено 250 кд как максимальные, в отличие от 300 кд которое было использовать только во время авто-яркость, и не может использоваться для любых сторонних приложений.
Unaligned доступа к памяти В ядре, когда это применимо.
Переключился на GCC 4.7.3 Линаро набора инструментов для компиляции.
Совместимость: sgs3 с прошивками jelly bean
Root: обязателен
Установка: CWM
Дата обновления: 26.04.13
с 4.2.2 дружит?
0 ответить