Skip to content

Instantly share code, notes, and snippets.

@ZephyrLabs
Last active June 15, 2021 14:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ZephyrLabs/c97d5434163f2f302889cf12456fea5a to your computer and use it in GitHub Desktop.
Save ZephyrLabs/c97d5434163f2f302889cf12456fea5a to your computer and use it in GitHub Desktop.
VIM3-A311D overclocking files

To overclock the VIM3 certain modifications must be made, these involve:

  • updating the dtb and kernel to add these new frequencies
  • make sure cpufrequtils in your linux system adapt to these new higher frequencies and modified cpu governer

some notes about the overclocking: voltage in the opp table exceeds the recommended maximum 1.04v as per the amlogic A311D datasheet, this doesn't mean any immediate damage will incur to the CPU as it if you further investigate in the dtb, the maximum permitted voltage is 1.05v

but to make sure we aren't giving too much opportunities for the CPU run at these higher voltages and to conserve system health conservative governer is used, performance governor maybe used for short term testing but DO NOT RUN it for extended periods in this higher voltage

INCASE OF DAMAGE DUE TO FAULT OR LACK OF DUE DILIGENCE, USER IS RESPONSIBLE.

# replace the contents of this file at /etc/default/cpufrequtils
# WARNING: this file will be replaced on board support package upgrade
ENABLE=true
MIN_SPEED=500000
MAX_SPEED=2640000
GOVERNOR=conservative
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
* Copyright (c) 2019 BayLibre, SAS
* Author: Neil Armstrong <narmstrong@baylibre.com>
*/
#include "meson-g12b.dtsi"
/ {
cpu_opp_table_0: opp-table-0 {
compatible = "operating-points-v2";
opp-shared;
opp-100000000 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <731000>;
};
opp-250000000 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <731000>;
};
opp-500000000 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <731000>;
};
opp-667000000 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <731000>;
};
opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <761000>;
};
opp-1200000000 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <781000>;
};
opp-1398000000 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <811000>;
};
opp-1512000000 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <861000>;
};
opp-1608000000 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <901000>;
};
opp-1704000000 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <951000>;
};
opp-1800000000 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <1001000>;
};
opp-1908000000 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <1021000>;
};
opp-2016000000 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <1030000>;
};
opp-2108000000 {
opp-hz = /bits/ 64 <2108000000>;
opp-microvolt = <1030000>;
};
opp-2208000000 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <1040000>;
};
opp-2280000000 {
opp-hz = /bits/ 64 <2280000000>;
opp-microvolt = <1040000>;
};
};
cpub_opp_table_1: opp-table-1 {
compatible = "operating-points-v2";
opp-shared;
opp-100000000 {
opp-hz = /bits/ 64 <100000000>;
opp-microvolt = <731000>;
};
opp-250000000 {
opp-hz = /bits/ 64 <250000000>;
opp-microvolt = <731000>;
};
opp-500000000 {
opp-hz = /bits/ 64 <500000000>;
opp-microvolt = <731000>;
};
opp-667000000 {
opp-hz = /bits/ 64 <667000000>;
opp-microvolt = <731000>;
};
opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <731000>;
};
opp-1200000000 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <751000>;
};
opp-1398000000 {
opp-hz = /bits/ 64 <1398000000>;
opp-microvolt = <771000>;
};
opp-1512000000 {
opp-hz = /bits/ 64 <1512000000>;
opp-microvolt = <771000>;
};
opp-1608000000 {
opp-hz = /bits/ 64 <1608000000>;
opp-microvolt = <781000>;
};
opp-1704000000 {
opp-hz = /bits/ 64 <1704000000>;
opp-microvolt = <791000>;
};
opp-1800000000 {
opp-hz = /bits/ 64 <1800000000>;
opp-microvolt = <831000>;
};
opp-1908000000 {
opp-hz = /bits/ 64 <1908000000>;
opp-microvolt = <861000>;
};
opp-2016000000 {
opp-hz = /bits/ 64 <2016000000>;
opp-microvolt = <911000>;
};
opp-2108000000 {
opp-hz = /bits/ 64 <2108000000>;
opp-microvolt = <951000>;
};
opp-2208000000 {
opp-hz = /bits/ 64 <2208000000>;
opp-microvolt = <1011000>;
};
opp-2316000000 {
opp-hz = /bits/ 64 <2316000000>;
opp-microvolt = <1021000>;
};
opp-2396000000 {
opp-hz = /bits/ 64 <2496000000>;
opp-microvolt = <1030000>;
};
opp-2496000000 {
opp-hz = /bits/ 64 <2496000000>;
opp-microvolt = <1030000>;
};
opp-2580000000 {
opp-hz = /bits/ 64 <2580000000>;
opp-microvolt = <1040000>;
};
opp-2640000000 {
opp-hz = /bits/ 64 <2640000000>;
opp-microvolt = <1040000>;
};
};
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment