Skip to content

Commit

Permalink
konabess: Add support for Snapdragon G3x Gen2
Browse files Browse the repository at this point in the history
  • Loading branch information
libxzr committed Apr 29, 2024
1 parent dfe305b commit 771104c
Show file tree
Hide file tree
Showing 7 changed files with 41 additions and 8 deletions.
13 changes: 11 additions & 2 deletions app/src/main/java/xzr/konabess/ChipInfo.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,16 @@ public enum type {
pineapple,
cliffs_singleBin,
cliffs_7_singleBin,
kalama_sg_singleBin,
unknown
}

public static int getMaxTableLevels(type type) {
if (type == ChipInfo.type.cape_singleBin || type == ChipInfo.type.waipio_singleBin
|| type == ChipInfo.type.kalama || type == ChipInfo.type.diwali
|| type == ChipInfo.type.ukee_singleBin || type == ChipInfo.type.pineapple
|| type == ChipInfo.type.cliffs_singleBin || type == ChipInfo.type.cliffs_7_singleBin)
|| type == ChipInfo.type.cliffs_singleBin || type == ChipInfo.type.cliffs_7_singleBin
|| type == ChipInfo.type.kalama_sg_singleBin)
return 16;
return 11;
}
Expand All @@ -41,7 +43,8 @@ public static boolean shouldIgnoreVoltTable(type type) {
|| type == ChipInfo.type.waipio_singleBin || type == ChipInfo.type.cape_singleBin
|| type == ChipInfo.type.kalama || type == ChipInfo.type.diwali
|| type == ChipInfo.type.ukee_singleBin || type == ChipInfo.type.pineapple
|| type == ChipInfo.type.cliffs_singleBin || type == ChipInfo.type.cliffs_7_singleBin;
|| type == ChipInfo.type.cliffs_singleBin || type == ChipInfo.type.cliffs_7_singleBin
|| type == ChipInfo.type.kalama_sg_singleBin;
}

public static boolean checkChipGeneral(type input) {
Expand Down Expand Up @@ -98,6 +101,8 @@ public static String name2chipdesc(type t, Activity activity) {
return activity.getResources().getString(R.string.sd8sg3);
case cliffs_7_singleBin:
return activity.getResources().getString(R.string.sd7pg3);
case kalama_sg_singleBin:
return activity.getResources().getString(R.string.sdg3xg2);
}
return activity.getResources().getString(R.string.unknown);
}
Expand Down Expand Up @@ -137,6 +142,8 @@ else if (ChipInfo.which == type.pineapple)
else if (ChipInfo.which == type.cliffs_singleBin
|| ChipInfo.which == type.cliffs_7_singleBin)
return rpmh_levels_cliffs.levels;
else if (ChipInfo.which == type.kalama_sg_singleBin)
return rpmh_levels_kalama.levels;

return new int[]{};
}
Expand Down Expand Up @@ -173,6 +180,8 @@ else if (ChipInfo.which == type.pineapple)
else if (ChipInfo.which == type.cliffs_singleBin
|| ChipInfo.which == type.cliffs_7_singleBin)
return rpmh_levels_cliffs.level_str;
else if (ChipInfo.which == type.kalama_sg_singleBin)
return rpmh_levels_kalama.level_str;

return new String[]{};
}
Expand Down
18 changes: 12 additions & 6 deletions app/src/main/java/xzr/konabess/GpuTableEditor.java
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,8 @@ public static void decode() throws Exception {
|| ChipInfo.which == ChipInfo.type.cape_singleBin
|| ChipInfo.which == ChipInfo.type.ukee_singleBin
|| ChipInfo.which == ChipInfo.type.cliffs_singleBin
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin)
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin
|| ChipInfo.which == ChipInfo.type.kalama_sg_singleBin)
&& this_line.equals("qcom,gpu-pwrlevels {")) {
start = i;
if (bin_position < 0)
Expand Down Expand Up @@ -135,7 +136,8 @@ public static void decode() throws Exception {
|| ChipInfo.which == ChipInfo.type.cape_singleBin
|| ChipInfo.which == ChipInfo.type.ukee_singleBin
|| ChipInfo.which == ChipInfo.type.cliffs_singleBin
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin)) {
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin
|| ChipInfo.which == ChipInfo.type.kalama_sg_singleBin)) {
end = i;
if (end >= start) {
decode_bin(lines_in_dts.subList(start, end + 1));
Expand Down Expand Up @@ -248,7 +250,8 @@ public static List<String> genTable() {
|| ChipInfo.which == ChipInfo.type.cape_singleBin
|| ChipInfo.which == ChipInfo.type.ukee_singleBin
|| ChipInfo.which == ChipInfo.type.cliffs_singleBin
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin) {
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin
|| ChipInfo.which == ChipInfo.type.kalama_sg_singleBin) {
lines.add("qcom,gpu-pwrlevels {");
lines.addAll(bins.get(0).header);
for (int pwr_level_id = 0; pwr_level_id < bins.get(0).levels.size(); pwr_level_id++) {
Expand Down Expand Up @@ -449,7 +452,8 @@ private static void offset_initial_level(int bin_id, int offset) throws Exceptio
|| ChipInfo.which == ChipInfo.type.cape_singleBin
|| ChipInfo.which == ChipInfo.type.ukee_singleBin
|| ChipInfo.which == ChipInfo.type.cliffs_singleBin
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin) {
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin
|| ChipInfo.which == ChipInfo.type.kalama_sg_singleBin) {
offset_initial_level_old(offset);
return;
}
Expand Down Expand Up @@ -522,7 +526,8 @@ private static void patch_throttle_level() throws Exception {
|| ChipInfo.which == ChipInfo.type.cape_singleBin
|| ChipInfo.which == ChipInfo.type.ukee_singleBin
|| ChipInfo.which == ChipInfo.type.cliffs_singleBin
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin) {
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin
|| ChipInfo.which == ChipInfo.type.kalama_sg_singleBin) {
patch_throttle_level_old();
return;
}
Expand Down Expand Up @@ -557,7 +562,8 @@ public static int min_level_chip_offset() throws Exception {
|| ChipInfo.which == ChipInfo.type.ukee_singleBin
|| ChipInfo.which == ChipInfo.type.pineapple
|| ChipInfo.which == ChipInfo.type.cliffs_singleBin
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin)
|| ChipInfo.which == ChipInfo.type.cliffs_7_singleBin
|| ChipInfo.which == ChipInfo.type.kalama_sg_singleBin)
return 1;
if (ChipInfo.which == ChipInfo.type.kona || ChipInfo.which == ChipInfo.type.kona_singleBin
|| ChipInfo.which == ChipInfo.type.msmnile || ChipInfo.which == ChipInfo.type.msmnile_singleBin
Expand Down
5 changes: 5 additions & 0 deletions app/src/main/java/xzr/konabess/KonaBessCore.java
Original file line number Diff line number Diff line change
Expand Up @@ -289,6 +289,11 @@ public static void checkDevice(Context context) throws IOException {
dtb.id = i;
dtb.type = ChipInfo.type.cliffs_7_singleBin;
dtbs.add(dtb);
} else if (checkChip(context, i, "KalamaP SG SoC")) {
dtb dtb = new dtb();
dtb.id = i;
dtb.type = ChipInfo.type.kalama_sg_singleBin;
dtbs.add(dtb);
}
}
}
Expand Down
10 changes: 10 additions & 0 deletions app/src/main/java/xzr/konabess/KonaBessStr.java
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@ else if (ChipInfo.which == ChipInfo.type.cliffs_singleBin)
return convert_bins_cliffs(which, activity);
else if (ChipInfo.which == ChipInfo.type.cliffs_7_singleBin)
return convert_bins_cliffs_7(which, activity);
else if (ChipInfo.which == ChipInfo.type.kalama_sg_singleBin)
return convert_bins_kalama_sg(which, activity);

throw new Exception();
}
Expand Down Expand Up @@ -202,6 +204,14 @@ public static String convert_bins_cliffs_7(int which, Activity activity) {
return activity.getResources().getString(R.string.unknown_table) + which;
}

public static String convert_bins_kalama_sg(int which, Activity activity) {
switch (which) {
case 0:
return activity.getResources().getString(R.string.sdg3xg2);
}
return activity.getResources().getString(R.string.unknown_table) + which;
}

public static String convert_level_params(String input, Activity activity) {
input = input.replace("qcom,", "");
if (input.equals("gpu-freq"))
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-de/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -130,4 +130,5 @@
<string name="sd8g3_for_galaxy">Snapdragon 8Gen3 for Galaxy</string>
<string name="sd8sg3">Snapdragon 8sGen3</string>
<string name="sd7pg3">Snapdragon 7+Gen3</string>
<string name="sdg3xg2">Snapdragon G3x Gen2</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-zh-rCN/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -129,4 +129,5 @@
<string name="sd8g3_for_galaxy">骁龙8Gen3 for Galaxy</string>
<string name="sd8sg3">骁龙8sGen3</string>
<string name="sd7pg3">骁龙7+Gen3</string>
<string name="sdg3xg2">骁龙 G3x Gen2</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -129,4 +129,5 @@
<string name="sd8g3_for_galaxy">Snapdragon 8Gen3 for Galaxy</string>
<string name="sd8sg3">Snapdragon 8sGen3</string>
<string name="sd7pg3">Snapdragon 7+Gen3</string>
<string name="sdg3xg2">Snapdragon G3x Gen2</string>
</resources>

0 comments on commit 771104c

Please sign in to comment.