Add OGU quirks
This commit is contained in:
parent
d955c45bd7
commit
db9c26b68f
5 changed files with 368 additions and 8 deletions
11
packages/hardware/quirks/devices/Hardkernel ODROID-GO-Ultra/001-hardwareinit
Executable file
11
packages/hardware/quirks/devices/Hardkernel ODROID-GO-Ultra/001-hardwareinit
Executable file
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/bash
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
|
||||||
|
|
||||||
|
. /etc/profile
|
||||||
|
|
||||||
|
cat <<EOF >/storage/.config/sleep.conf.d/sleep.conf
|
||||||
|
[Sleep]
|
||||||
|
AllowSuspend=yes
|
||||||
|
SuspendState=freeze
|
||||||
|
EOF
|
28
packages/hardware/quirks/devices/Hardkernel ODROID-GO-Ultra/002-deviceconfig
Executable file
28
packages/hardware/quirks/devices/Hardkernel ODROID-GO-Ultra/002-deviceconfig
Executable file
|
@ -0,0 +1,28 @@
|
||||||
|
#!/bin/bash
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
|
||||||
|
|
||||||
|
cat <<EOF >/storage/.config/profile.d/001-deviceconfig
|
||||||
|
# Device Features
|
||||||
|
DEVICE_HAS_FAN=false
|
||||||
|
DEVICE_VOLUMECTL=true
|
||||||
|
DEVICE_AUDIO_MIXER="Master"
|
||||||
|
DEVICE_POWER_LED=false
|
||||||
|
DEVICE_PLAYBACK_PATH_SPK="SPK"
|
||||||
|
DEVICE_PLAYBACK_PATH_HP="HP"
|
||||||
|
DEVICE_BRIGHTNESS="128"
|
||||||
|
SPLASH_LOADER="plymouth"
|
||||||
|
UI_SERVICE="weston.service"
|
||||||
|
|
||||||
|
# GPIOS
|
||||||
|
DEVICE_TEMP_SENSOR="/sys/devices/virtual/thermal/thermal_zone*/temp"
|
||||||
|
|
||||||
|
# FREQ Governors
|
||||||
|
CPU_FREQ=("/sys/devices/system/cpu/cpufreq/policy0" "/sys/devices/system/cpu/cpufreq/policy2")
|
||||||
|
GPU_FREQ=("/sys/devices/platform/soc/ffe40000.gpu/devfreq/ffe40000.gpu/governor")
|
||||||
|
|
||||||
|
# Volume Keys
|
||||||
|
DEVICE_KEY_VOLUMEDOWN=114
|
||||||
|
DEVICE_KEY_VOLUMEUP=115
|
||||||
|
DEVICE_VOL_MODIFIER="BTN_MODE"
|
||||||
|
EOF
|
317
packages/hardware/quirks/devices/Hardkernel ODROID-GO-Ultra/003-audio
Executable file
317
packages/hardware/quirks/devices/Hardkernel ODROID-GO-Ultra/003-audio
Executable file
|
@ -0,0 +1,317 @@
|
||||||
|
#!/bin/bash
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
|
||||||
|
|
||||||
|
. /etc/profile
|
||||||
|
|
||||||
|
### Set a custom device so we don't clobber it.
|
||||||
|
set-audio set "(0:0)"
|
||||||
|
set-audio esset "Master"
|
||||||
|
|
||||||
|
cat <<EOF >/storage/.config/asound.conf
|
||||||
|
ctl.!default {
|
||||||
|
type hw
|
||||||
|
card 0
|
||||||
|
}
|
||||||
|
|
||||||
|
pcm.!default {
|
||||||
|
type plug
|
||||||
|
slave.pcm "softvol"
|
||||||
|
}
|
||||||
|
|
||||||
|
pcm.softvol {
|
||||||
|
type softvol
|
||||||
|
slave.pcm "dmixer"
|
||||||
|
control {
|
||||||
|
name "Pre-Amp"
|
||||||
|
card 0
|
||||||
|
}
|
||||||
|
min_dB -5.0
|
||||||
|
max_dB 20.0
|
||||||
|
resolution 6
|
||||||
|
}
|
||||||
|
|
||||||
|
pcm.dmixer {
|
||||||
|
type dmix
|
||||||
|
ipc_key 1024
|
||||||
|
slave {
|
||||||
|
pcm "hw:0,0"
|
||||||
|
period_time 0
|
||||||
|
period_size 4096
|
||||||
|
buffer_size 131072
|
||||||
|
rate 176400
|
||||||
|
}
|
||||||
|
bindings {
|
||||||
|
0 0
|
||||||
|
1 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
if [ ! -e "/storage/.config/asound.state" ]
|
||||||
|
then
|
||||||
|
cat <<EOF >/storage/.config/asound.state
|
||||||
|
state.Ultra {
|
||||||
|
control.1 {
|
||||||
|
iface MIXER
|
||||||
|
name 'Master Playback Volume'
|
||||||
|
value.0 0
|
||||||
|
value.1 0
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type INTEGER
|
||||||
|
count 2
|
||||||
|
range '0 - 255'
|
||||||
|
dbmin -9500
|
||||||
|
dbmax 0
|
||||||
|
dbvalue.0 -9500
|
||||||
|
dbvalue.1 -9500
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.2 {
|
||||||
|
iface MIXER
|
||||||
|
name 'Master Capture Volume'
|
||||||
|
value.0 0
|
||||||
|
value.1 0
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type INTEGER
|
||||||
|
count 2
|
||||||
|
range '0 - 255'
|
||||||
|
dbmin -9500
|
||||||
|
dbmax 0
|
||||||
|
dbvalue.0 -9500
|
||||||
|
dbvalue.1 -9500
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.3 {
|
||||||
|
iface MIXER
|
||||||
|
name 'Mic Capture Gain'
|
||||||
|
value.0 6
|
||||||
|
value.1 6
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type INTEGER
|
||||||
|
count 2
|
||||||
|
range '0 - 15'
|
||||||
|
dbmin -1800
|
||||||
|
dbmax 2700
|
||||||
|
dbvalue.0 0
|
||||||
|
dbvalue.1 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.4 {
|
||||||
|
iface MIXER
|
||||||
|
name 'TDMOUT_B Lane 0 Volume'
|
||||||
|
value.0 0
|
||||||
|
value.1 0
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type INTEGER
|
||||||
|
count 2
|
||||||
|
range '0 - 255'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.5 {
|
||||||
|
iface MIXER
|
||||||
|
name 'TDMOUT_B Lane 1 Volume'
|
||||||
|
value.0 0
|
||||||
|
value.1 0
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type INTEGER
|
||||||
|
count 2
|
||||||
|
range '0 - 255'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.6 {
|
||||||
|
iface MIXER
|
||||||
|
name 'TDMOUT_B Lane 2 Volume'
|
||||||
|
value.0 6
|
||||||
|
value.1 6
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type INTEGER
|
||||||
|
count 2
|
||||||
|
range '0 - 255'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.7 {
|
||||||
|
iface MIXER
|
||||||
|
name 'TDMOUT_B Lane 3 Volume'
|
||||||
|
value.0 0
|
||||||
|
value.1 0
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type INTEGER
|
||||||
|
count 2
|
||||||
|
range '0 - 255'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.8 {
|
||||||
|
iface MIXER
|
||||||
|
name 'TDMOUT_B Gain Enable Switch'
|
||||||
|
value false
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type BOOLEAN
|
||||||
|
count 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.9 {
|
||||||
|
iface MIXER
|
||||||
|
name 'FRDDR_A SRC 1 EN Switch'
|
||||||
|
value true
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type BOOLEAN
|
||||||
|
count 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.10 {
|
||||||
|
iface MIXER
|
||||||
|
name 'FRDDR_A SRC 2 EN Switch'
|
||||||
|
value false
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type BOOLEAN
|
||||||
|
count 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.11 {
|
||||||
|
iface MIXER
|
||||||
|
name 'FRDDR_A SRC 3 EN Switch'
|
||||||
|
value false
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type BOOLEAN
|
||||||
|
count 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.12 {
|
||||||
|
iface MIXER
|
||||||
|
name 'FRDDR_A SINK 1 SEL'
|
||||||
|
value 'OUT 2'
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type ENUMERATED
|
||||||
|
count 1
|
||||||
|
item.0 'OUT 0'
|
||||||
|
item.1 'OUT 1'
|
||||||
|
item.2 'OUT 2'
|
||||||
|
item.3 'OUT 3'
|
||||||
|
item.4 'OUT 4'
|
||||||
|
item.5 'OUT 5'
|
||||||
|
item.6 'OUT 6'
|
||||||
|
item.7 'OUT 7'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.13 {
|
||||||
|
iface MIXER
|
||||||
|
name 'FRDDR_A SINK 2 SEL'
|
||||||
|
value 'OUT 0'
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type ENUMERATED
|
||||||
|
count 1
|
||||||
|
item.0 'OUT 0'
|
||||||
|
item.1 'OUT 1'
|
||||||
|
item.2 'OUT 2'
|
||||||
|
item.3 'OUT 3'
|
||||||
|
item.4 'OUT 4'
|
||||||
|
item.5 'OUT 5'
|
||||||
|
item.6 'OUT 6'
|
||||||
|
item.7 'OUT 7'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.14 {
|
||||||
|
iface MIXER
|
||||||
|
name 'FRDDR_A SINK 3 SEL'
|
||||||
|
value 'OUT 0'
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type ENUMERATED
|
||||||
|
count 1
|
||||||
|
item.0 'OUT 0'
|
||||||
|
item.1 'OUT 1'
|
||||||
|
item.2 'OUT 2'
|
||||||
|
item.3 'OUT 3'
|
||||||
|
item.4 'OUT 4'
|
||||||
|
item.5 'OUT 5'
|
||||||
|
item.6 'OUT 6'
|
||||||
|
item.7 'OUT 7'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.15 {
|
||||||
|
iface MIXER
|
||||||
|
name 'TODDR_A SRC SEL'
|
||||||
|
value 'IN 0'
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type ENUMERATED
|
||||||
|
count 1
|
||||||
|
item.0 'IN 0'
|
||||||
|
item.1 'IN 1'
|
||||||
|
item.2 'IN 2'
|
||||||
|
item.3 'IN 3'
|
||||||
|
item.4 'IN 4'
|
||||||
|
item.5 'IN 5'
|
||||||
|
item.6 'IN 6'
|
||||||
|
item.7 'IN 7'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.16 {
|
||||||
|
iface MIXER
|
||||||
|
name 'Playback Mux'
|
||||||
|
value HP
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type ENUMERATED
|
||||||
|
count 1
|
||||||
|
item.0 HP
|
||||||
|
item.1 SPK
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.17 {
|
||||||
|
iface MIXER
|
||||||
|
name 'TDMIN_B SRC SEL'
|
||||||
|
value 'IN 0'
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type ENUMERATED
|
||||||
|
count 1
|
||||||
|
item.0 'IN 0'
|
||||||
|
item.1 'IN 1'
|
||||||
|
item.2 'IN 2'
|
||||||
|
item.3 'IN 3'
|
||||||
|
item.4 'IN 4'
|
||||||
|
item.5 'IN 5'
|
||||||
|
item.6 'IN 6'
|
||||||
|
item.7 'IN 7'
|
||||||
|
item.8 'IN 8'
|
||||||
|
item.9 'IN 9'
|
||||||
|
item.10 'IN 10'
|
||||||
|
item.11 'IN 11'
|
||||||
|
item.12 'IN 12'
|
||||||
|
item.13 'IN 13'
|
||||||
|
item.14 'IN 14'
|
||||||
|
item.15 'IN 15'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
control.18 {
|
||||||
|
iface MIXER
|
||||||
|
name 'TDMOUT_B SRC SEL'
|
||||||
|
value 'IN 0'
|
||||||
|
comment {
|
||||||
|
access 'read write'
|
||||||
|
type ENUMERATED
|
||||||
|
count 1
|
||||||
|
item.0 'IN 0'
|
||||||
|
item.1 'IN 1'
|
||||||
|
item.2 'IN 2'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
alsactl --file /storage/.config/asound.state restore
|
||||||
|
fi
|
|
@ -1,20 +1,24 @@
|
||||||
# Device definition file for the Hardkernel Odroid Go Uptra Device
|
# Device definition file for the Hardkernel Odroid Go Ultra Device
|
||||||
|
|
||||||
# Device Features
|
# Device Features
|
||||||
|
DEVICE_HAS_FAN=false
|
||||||
DEVICE_VOLUMECTL=true
|
DEVICE_VOLUMECTL=true
|
||||||
DEVICE_AUDIO_MIXER="PCM"
|
DEVICE_AUDIO_MIXER="Master"
|
||||||
|
DEVICE_POWER_LED=false
|
||||||
DEVICE_PLAYBACK_PATH_SPK="SPK"
|
DEVICE_PLAYBACK_PATH_SPK="SPK"
|
||||||
DEVICE_PLAYBACK_PATH_HP="HP"
|
DEVICE_PLAYBACK_PATH_HP="HP"
|
||||||
UI_SERVICE="weston.service"
|
|
||||||
DEVICE_BRIGHTNESS="128"
|
DEVICE_BRIGHTNESS="128"
|
||||||
SPLASH_LOADER="plymouth"
|
SPLASH_LOADER="plymouth"
|
||||||
|
UI_SERVICE="weston.service"
|
||||||
|
|
||||||
# GPIOS
|
# GPIOS
|
||||||
DEVICE_TEMP_SENSOR="/sys/devices/virtual/thermal/thermal_zone*/temp"
|
DEVICE_TEMP_SENSOR="/sys/devices/virtual/thermal/thermal_zone*/temp"
|
||||||
|
|
||||||
# FREQ Governors
|
# FREQ Governors
|
||||||
CPU_FREQ=("/sys/devices/system/cpu/cpufreq/policy0" "/sys/devices/system/cpu/cpufreq/policy2")
|
CPU_FREQ=("/sys/devices/system/cpu/cpufreq/policy0" "/sys/devices/system/cpu/cpufreq/policy2")
|
||||||
|
GPU_FREQ=("/sys/devices/platform/soc/ffe40000.gpu/devfreq/ffe40000.gpu/governor")
|
||||||
|
|
||||||
# Affinity
|
# Volume Keys
|
||||||
SLOW_CORES="taskset -c 0-3"
|
DEVICE_KEY_VOLUMEDOWN=114
|
||||||
FAST_CORES="taskset -c 4-5"
|
DEVICE_KEY_VOLUMEUP=115
|
||||||
|
DEVICE_VOL_MODIFIER="BTN_MODE"
|
||||||
|
|
|
@ -32,7 +32,7 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi linux/ar
|
||||||
operating-points-v2 = <&gpu_opp_table>;
|
operating-points-v2 = <&gpu_opp_table>;
|
||||||
diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts linux/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
|
diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts linux/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
|
||||||
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts 1970-01-01 00:00:00.000000000 +0000
|
--- linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts 1970-01-01 00:00:00.000000000 +0000
|
||||||
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts 2023-04-01 15:14:24.576697726 +0000
|
+++ linux/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts 2023-04-01 22:27:41.191489675 +0000
|
||||||
@@ -0,0 +1,957 @@
|
@@ -0,0 +1,957 @@
|
||||||
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||||
+/*
|
+/*
|
||||||
|
@ -125,7 +125,7 @@ diff -rupN linux.orig/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
|
||||||
+
|
+
|
||||||
+ gpio_keys: volume-keys {
|
+ gpio_keys: volume-keys {
|
||||||
+ compatible = "gpio-keys-polled";
|
+ compatible = "gpio-keys-polled";
|
||||||
+ poll-interval = <200>;
|
+ poll-interval = <10>;
|
||||||
+ autorepeat;
|
+ autorepeat;
|
||||||
+
|
+
|
||||||
+ volume-up-button {
|
+ volume-up-button {
|
||||||
|
|
Loading…
Reference in a new issue