Merge pull request #2489 from Sparticuz/mainline

merge dev into mainline-3566
This commit is contained in:
Alex 2023-12-04 09:34:40 -07:00 committed by GitHub
commit c916ac76ee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
81 changed files with 461 additions and 172552 deletions

View file

@ -34,7 +34,7 @@ if [ ! -d "/storage/roms/ports/PortMaster" ]; then
fi
#We dont use tasksetter, delete it
if [ ! -f /storage/roms/ports/PortMaster/tasksetter ]; then
if [ -f /storage/roms/ports/PortMaster/tasksetter ]; then
rm -r /storage/roms/ports/PortMaster/tasksetter
fi
@ -65,6 +65,9 @@ else
xmlstarlet ed --inplace --subnode "/gameList/folder[last()]" --type elem -n hidden -v "true" /storage/roms/ports/gamelist.xml
fi
#Make sure permissions are correct in the PortMaster folder
chmod 755 /storage/roms/ports/PortMaster/* -R
#Start PortMaster
@LIBEGL@
cd /storage/roms/ports/PortMaster

View file

@ -26,7 +26,7 @@ if [ "${OPENGLES_SUPPORT}" = yes ]; then
fi
if [ "${DISPLAYSERVER}" = "wl" ]; then
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xorg-server xrandr libXi"
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xwayland xrandr libXi"
PKG_CONFIGURE_OPTS_TARGET+=" -DENABLE_X11=ON \
-DENABLE_EGL=ON"
fi

View file

@ -18,7 +18,7 @@ PKG_BUILD_FLAGS="+lto"
configure_package() {
# Displayserver Support
if [ "${DISPLAYSERVER}" = "x11" ]; then
PKG_DEPENDS_TARGET+=" xorg-server"
PKG_DEPENDS_TARGET+=" xwayland"
elif [ "${DISPLAYSERVER}" = "wl" ]; then
PKG_DEPENDS_TARGET+=" wayland"
fi

View file

@ -2,16 +2,25 @@
# Copyright (C) 2022-present - The JELOS Project (https://github.com/JustEnoughLinuxOS)
PKG_NAME="citra-sa"
PKG_VERSION="9b2a592"
PKG_LICENSE="MPLv2"
PKG_SITE="https://github.com/citra-emu/citra"
PKG_URL="${PKG_SITE}.git"
PKG_DEPENDS_TARGET="toolchain ffmpeg mesa SDL2 boost zlib libusb boost zstd control-gen"
PKG_LONGDESC="Citra 3DS emulator"
PKG_TOOLCHAIN="cmake"
GET_HANDLER_SUPPORT="git"
PKG_PATCH_DIRS+="${DEVICE}"
case ${DEVICE} in
S922X)
PKG_URL="${PKG_SITE}.git"
PKG_VERSION="9b2a592"
;;
*)
PKG_URL="${PKG_SITE}.git"
PKG_VERSION="875f5eaad5d3e1a6303cdb9d767dd5d4ac86d988"
;;
esac
if [ ! "${OPENGL}" = "no" ]; then
PKG_DEPENDS_TARGET+=" ${OPENGL} glu libglvnd"
fi

View file

@ -34,7 +34,7 @@ if [ "${OPENGLES_SUPPORT}" = yes ]; then
fi
if [ "${DISPLAYSERVER}" = "wl" ]; then
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xorg-server xrandr libXi"
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xwayland xrandr libXi"
PKG_CMAKE_OPTS_TARGET+=" -DENABLE_WAYLAND=ON \
-DENABLE_X11=ON"
else

View file

@ -38,7 +38,7 @@ if [ "${OPENGLES_SUPPORT}" = yes ]; then
fi
if [ "${DISPLAYSERVER}" = "wl" ]; then
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xorg-server xrandr libXi"
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xwayland xrandr libXi"
PKG_CMAKE_OPTS_TARGET+=" -DUSE_WAYLAND=ON"
fi

View file

@ -29,7 +29,7 @@ if [ "${OPENGLES_SUPPORT}" = yes ]; then
fi
if [ "${DISPLAYSERVER}" = "wl" ]; then
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xorg-server xrandr libXi"
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xwayland xrandr libXi"
fi
if [ "${VULKAN_SUPPORT}" = "yes" ]

View file

@ -24,7 +24,7 @@ if [ "${OPENGLES_SUPPORT}" = yes ]; then
fi
if [ "${DISPLAYSERVER}" = "wl" ]; then
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xorg-server xrandr libXi"
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xwayland xrandr libXi"
PKG_CMAKE_OPTS_TARGET+=" -DENABLE_WAYLAND=ON \
-DENABLE_X11=OFF"
fi

View file

@ -9,7 +9,7 @@ PKG_LICENSE="GPL-2.0-or-later"
PKG_SITE="https://rpcs3.net"
PKG_URL="https://github.com/RPCS3/rpcs3.git"
PKG_DEPENDS_HOST="toolchain:host"
PKG_DEPENDS_TARGET="toolchain linux glibc systemd pulseaudio mesa xorg-server libevdev curl ffmpeg libpng zlib glew-cmake libSM SDL2 enet qt5 rpcs3-sa:host vulkan-headers vulkan-loader vulkan-tools libp11-kit yamlcpp openal-soft soundtouch"
PKG_DEPENDS_TARGET="toolchain linux glibc systemd pulseaudio mesa xwayland libevdev curl ffmpeg libpng zlib glew-cmake libSM SDL2 enet qt5 rpcs3-sa:host vulkan-headers vulkan-loader vulkan-tools libp11-kit yamlcpp openal-soft soundtouch"
PKG_LONGDESC="RPCS3 is an experimental open-source Sony PlayStation 3 emulator and debugger."
GET_HANDLER_SUPPORT="git"
PKG_GIT_CLONE_BRANCH="master"

View file

@ -2,7 +2,7 @@
# Copyright (C) 2022-present - The JELOS Project (https://github.com/JustEnoughLinuxOS)
PKG_NAME="yuzu-sa"
PKG_VERSION="767c4b5a992bfeeae9194bc9f5a3dc63996645df"
PKG_VERSION="5fb1a83e4cbb43f5bb2e07d003e544dca580e0de"
PKG_ARCH="x86_64"
PKG_LICENSE="GPLv3"
PKG_SITE="https://github.com/yuzu-emu/yuzu"
@ -22,7 +22,7 @@ if [ "${OPENGLES_SUPPORT}" = yes ]; then
fi
if [ "${DISPLAYSERVER}" = "wl" ]; then
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xorg-server xrandr libXi"
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xwayland xrandr libXi"
fi
if [ "${VULKAN_SUPPORT}" = "yes" ]

View file

@ -35,11 +35,14 @@ ln -sf /storage/roms/bios/yuzu/keys /storage/.config/yuzu/keys
AF=$(get_setting anisotropic_filtering switch "${GAME}")
AA=$(get_setting anti_aliasing switch "${GAME}")
ASPECT=$(get_setting aspect_ratio switch "${GAME}")
ASTCD=$(get_setting astc_decoding_method switch "${GAME}")
CACCURACY=$(get_setting cpu_accuracy switch "${GAME}")
GACCURACY=$(get_setting gpu_accuracy switch "${GAME}")
GRENDERER=$(get_setting graphics_backend switch "${GAME}")
IRES=$(get_setting internal_resolution switch "${GAME}")
PFILTER=$(get_setting pixel_filter switch "${GAME}")
RUMBLE=$(get_setting rumble switch "${GAME}")
RUMBLESTR=$(get_setting rumble_strength switch "${GAME}")
SDOCK=$(get_setting switch_mode switch "${GAME}")
SUI=$(get_setting start_ui switch "${GAME}")
VSYNC=$(get_setting vsync switch "${GAME}")
@ -102,6 +105,33 @@ ln -sf /storage/roms/bios/yuzu/keys /storage/.config/yuzu/keys
sed -i '/^aspect_ratio=/c\aspect_ratio=4' /storage/.config/yuzu/qt-config.ini
fi
#ASTC Acceleration (default to 1/GPU)
sed -i '/^accelerate_astc\\default=/c\accelerate_astc\\default=false' /storage/.config/yuzu/qt-config.ini
if [ "$ASTCD" = "0" ]
then
sed -i '/^accelerate_astc=/c\accelerate_astc=0' /storage/.config/yuzu/qt-config.ini
elif [ "$ASTCD" = "2" ]
then
sed -i '/^accelerate_astc=/c\accelerate_astc=2' /storage/.config/yuzu/qt-config.ini
else
sed -i '/^accelerate_astc=/c\accelerate_astc=1' /storage/.config/yuzu/qt-config.ini
fi
#GPU Accuracy
sed -i '/^cpu_accuracy\\default=/c\cpu_accuracy\\default=false' /storage/.config/yuzu/qt-config.ini
if [ "$CACCURACY" = "1" ]
then
sed -i '/^cpu_accuracy=/c\cpu_accuracy=1' /storage/.config/yuzu/qt-config.ini
elif [ "$CACCURACY" = "2" ]
then
sed -i '/^cpu_accuracy=/c\cpu_accuracy=2' /storage/.config/yuzu/qt-config.ini
elif [ "$CACCURACY" = "3" ]
then
sed -i '/^cpu_accuracy=/c\cpu_accuracy=3' /storage/.config/yuzu/qt-config.ini
else
sed -i '/^cpu_accuracy=/c\cpu_accuracy=0' /storage/.config/yuzu/qt-config.ini
fi
#GPU Accuracy
sed -i '/^gpu_accuracy\\default=/c\gpu_accuracy\\default=false' /storage/.config/yuzu/qt-config.ini
if [ "$GACCURACY" = "0" ]
@ -181,6 +211,25 @@ ln -sf /storage/roms/bios/yuzu/keys /storage/.config/yuzu/keys
sed -i '/^vibration_enabled=/c\vibration_enabled=true' /storage/.config/yuzu/qt-config.ini
fi
#RUMBLE STRENGTH
sed -i '/^player_0_vibration_strength\\default=/c\player_0_vibration_strength\\default=false' /storage/.config/yuzu/qt-config.ini
if [ "$RUMBLESTR" = "100" ]
then
sed -i '/^player_0_vibration_strength=/c\player_0_vibration_strength=100' /storage/.config/yuzu/qt-config.ini
fi
if [ "$RUMBLESTR" = "75" ]
then
sed -i '/^player_0_vibration_strength=/c\player_0_vibration_strength=75' /storage/.config/yuzu/qt-config.ini
fi
if [ "$RUMBLESTR" = "50" ]
then
sed -i '/^player_0_vibration_strength=/c\player_0_vibration_strength=50' /storage/.config/yuzu/qt-config.ini
fi
if [ "$RUMBLESTR" = "25" ]
then
sed -i '/^player_0_vibration_strength=/c\player_0_vibration_strength=25' /storage/.config/yuzu/qt-config.ini
fi
#Switch Mode
sed -i '/^use_docked_mode\\default=/c\use_docked_mode\\default=false' /storage/.config/yuzu/qt-config.ini
if [ "$SDOCK" = "0" ]
@ -203,6 +252,10 @@ ln -sf /storage/roms/bios/yuzu/keys /storage/.config/yuzu/keys
sed -i '/^use_vsync=/c\use_vsync=true' /storage/.config/yuzu/qt-config.ini
fi
#Never ask to confrim close
sed -i '/^confirmStop\\default=/c\confirmStop\\default=false' /storage/.config/yuzu/qt-config.ini
sed -i '/^confirmStop=/c\confirmStop=3' /storage/.config/yuzu/qt-config.ini
#Link .config/yuzu to .local
rm -rf /storage/.local/share/yuzu
ln -sf /storage/.config/yuzu /storage/.local/share/yuzu

View file

@ -11,7 +11,7 @@ PKG_SHORTDESC="GLEW - The OpenGL Extension Wrangler Library"
PKG_TOOLCHAIN="cmake"
if [ "${DISPLAYSERVER}" = "wl" ]; then
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xorg-server xrandr libXi libX11"
PKG_DEPENDS_TARGET+=" wayland ${WINDOWMANAGER} xwayland xrandr libXi libX11"
PKG_CMAKE_OPTS_TARGET+=" -DGLEW_X11=ON"
fi

View file

@ -2,7 +2,7 @@
# Copyright (C) 2022-present - The JELOS Project (https://github.com/JustEnoughLinuxOS)
PKG_NAME="libmali-vulkan"
PKG_VERSION="r40p0-01eac0"
PKG_VERSION="r46p0-01eac1"
PKG_LICENSE="mali_driver"
PKG_ARCH="arm aarch64"
PKG_SITE="https://developer.arm.com/downloads/-/mali-drivers/user-space"

View file

@ -100,6 +100,11 @@ else
PKG_MESON_OPTS_TARGET+=" -Dvulkan-drivers="
fi
pre_configure_target() {
TARGET_CFLAGS=$(echo ${TARGET_CFLAGS} | sed -e "s|-Ofast|-O3|")
TARGET_CXXFLAGS=$(echo ${TARGET_CXXFLAGS} | sed -e "s|-Ofast|-O3|")
}
post_makeinstall_target() {
case ${DEVICE} in
S922X)

View file

View file

View file

View file

View file

0
packages/hardware/quirks/platforms/RK3399/040-affinity Normal file → Executable file
View file

View file

@ -0,0 +1,23 @@
#!/bin/sh
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2023 JELOS (https://github.com/JustEnoughLinuxOS)
### Restore previous governors before going to sleep
. /etc/profile
### Grab the old governors.
OLD_CPU_FREQ=$(get_setting "sleep.cpugovernor")
if [ ! -n "${OLD_CPU_FREQ}" ]; then
OLD_CPU_FREQ="schedutil"
fi
OLD_GPU_FREQ=$(get_setting "sleep.gpugovernor")
if [ ! -n "${OLD_GPU_FREQ}" ]; then
OLD_GPU_FREQ="simple_ondemand"
fi
# Restore old governors.
set_cpu_gov "${OLD_CPU_FREQ}"
set_dmc_gov "${OLD_CPU_FREQ}"
set_gpu_gov "${OLD_GPU_FREQ}"

View file

@ -0,0 +1,19 @@
#!/bin/sh
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2023 JELOS (https://github.com/JustEnoughLinuxOS)
# Store current freq governors and set governors to powersave.
. /etc/profile
### Get the current cpu and gpu governor, save for when the device wakes from sleep.
CUR_CPU_FREQ="$(cat ${CPU_FREQ}/scaling_governor)"
CUR_GPU_FREQ="$(cat ${GPU_FREQ}/governor)"
set_setting sleep.cpugovernor "${CUR_CPU_FREQ}"
set_setting sleep.gpugovernor "${CUR_GPU_FREQ}"
### Set all governors to powersave
set_cpu_gov powersave
set_dmc_gov powersave
set_gpu_gov powersave

View file

@ -4,6 +4,7 @@
# Minimal OS variable loading for performance
. /etc/profile.d/001-functions
. /etc/profile.d/030-powerfunctions
. /etc/profile.d/099-freqfunctions
tocon "Setting performance mode..."

View file

@ -176,6 +176,7 @@ system.hostname=@DEVICENAME@
system.language=en_US
system.loglevel=none
system.power.audio=1
system.merged.storage=0
system.power.cpu=1
system.power.pcie=0
system.power.rtpm=0

View file

@ -69,7 +69,6 @@ EOF
cp ${PKG_DIR}/sources/scripts/* ${INSTALL}/usr/bin
chmod 0755 ${INSTALL}/usr/bin/* 2>/dev/null ||:
enable_service jelos-automount.service
### Fix and migrate to autostart package
enable_service jelos-autostart.service

View file

@ -73,8 +73,12 @@ sed -i 's~"pulse"~"alsathread"~g' /storage/.config/retroarch/retroarch.cfg
### 20231114 - Update hosts.conf
grep "127.0.0.1" /storage/.config/hosts.conf >/dev/null 2>&1 || cp /usr/config/hosts.conf /storage/.config/
### 20231127 - Migrate games to overlayfs
systemctl stop storage-roms.mount
### 20231127 - Migrate games to overlayfs (updated 20231203)
NULL=$(cat /proc/mounts | grep -v -e "/storage/roms" 2>/dev/null | grep ${1})
if [ ! "$?" = 0 ]
then
umount /storage/roms
fi
GAMECOUNT=$(find /storage/roms -type f | wc -l)
if [ "${GAMECOUNT}" -gt 20 ] && \
[ ! -e "/storage/.migrated_games" ]
@ -91,7 +95,43 @@ then
else
echo "Game weight too low (${GAMECOUNT}) or content already migrated." >>${LOG}
fi
systemctl start storage-roms.mount
### Migration part 2
for GAMES in /storage/games-internal /storage/games-external
do
COUNT=$(find ${GAMES}/roms 2>/dev/null| wc -l)
if [ "${COUNT}" -lt 10 ]
then
mkdir -p "${GAMES}/roms" 2>/dev/null
mv "${GAMES}/"* "${GAMES}/roms/" 2>/dev/null
fi
done
systemctl restart jelos-automount
### 20231129 - Don't default to performance.
EPP=$(get_setting system.power.epp)
if [ -z "${EPP}" ] || \
[ "${EPP}" = "performance" ]
then
EPP="balance_performance"
set_setting system.power.epp ${EPP}
fi
### 20231130 - Replace smb.conf for new overlay mechanism.
cp -f /usr/config/smb.conf /storage/.config
### 20231202 - Remove stale profile bits if they exist.
for FILE in 001-deviceconfig 99-mixer
do
rm -rf ${FILE} 2>/dev/null
done
### 20231203 - Disable merged storage by default.
MERGED_STORAGE=$(get_setting system.merged.storage)
if [ -z "${MERGED_STORAGE}" ]
then
set_setting system.merged.storage 0
fi
### 20231129 - Don't default to performance.
EPP=$(get_setting system.power.epp)

View file

@ -5,11 +5,58 @@
. /etc/profile
. /etc/os-release
### Vars
UPDATE_ROOT="/storage/.update"
MOUNT_GAMES=$(get_setting system.automount)
GAMES_DEVICE=$(get_setting system.gamesdevice)
MS_ENABLED=$(get_setting system.merged.storage)
MS_DEVICE=$(get_setting system.merged.device)
### Default to the external storage device.
MOUNT_PATH="/storage/games-external"
OVERLAY_PATH="/storage/roms"
MS_PATH="/storage/roms"
function unmount() {
log $0 "Unmount ${1}."
umount -f "${1}" 2>/dev/null ||:
}
function start_ms() {
### Entrypoint will be either games card found (external), or not found (internal).
MOUNT_PATH="/storage/games-${1}"
### Determine if internal or external is the primary target by configuration.
case ${MS_DEVICE} in
internal)
LOWER="internal"
UPPER="external"
;;
*)
LOWER="external"
UPPER="internal"
;;
esac
if [ -e "/storage/.ms_unsupported" ] || \
[ "${MS_ENABLED}" = 0 ]
then
log $0 "Executing bind mount of ${MOUNT_PATH} to ${MS_PATH}"
mount --bind ${MOUNT_PATH}/roms ${MS_PATH}
exit 0
else
log $0 "Enabling merged storage of /storage/games-${LOWER} and /storage/games-${UPPER} to ${MS_PATH}."
for DIR in /storage/games-${UPPER}/.tmp/games-workdir /storage/games-${LOWER}/roms /storage/games-${UPPER}/roms
do
if [ ! -d "${DIR}" ]
then
mkdir -p "${DIR}"
fi
done
mount overlay -t overlay -o lowerdir=/storage/games-${LOWER}/roms,upperdir=/storage/games-${UPPER}/roms,workdir=/storage/games-${UPPER}/.tmp/games-workdir ${MS_PATH}
fi
}
start_overlay() {
if [ -e "/storage/.overlay_unsupported" ]
@ -36,41 +83,45 @@ then
set_setting system.automount 1
elif [[ "${MOUNT_GAMES}" == "0" ]]
then
start_overlay
start_ms internal
exit 0
fi
function create_game_dirs() {
systemd-tmpfiles --create /usr/lib/tmpfiles.d/JELOS-system-dirs.conf >/dev/null 2>&1 ||:
}
function load_modules() {
for MODULE in exfat vfat
do
lsmod | grep ${MODULE} 2>/dev/null
lsmod | grep ${MODULE} >/dev/null 2>&1
if [ ! $? = 0 ]
then
log $0 "Loading ${MODULE}."
modprobe ${MODULE} 2>/dev/null
modprobe ${MODULE} >/dev/null 2>&1
fi
done
}
function mount_games() {
local MOUNT_PATH="/storage/games-external"
FSTYPE=$(blkid -o export ${1} | awk 'BEGIN {FS="="} /TYPE/ {print $2}')
case ${FSTYPE} in
ext4)
log $0 "Found supported partition for overlayfs."
if [ -e "/storage/.overlay_unsupported" ]
if [ -e "/storage/.ms_unsupported" ]
then
rm -f /storage/.overlay_unsupported
rm -f /storage/.ms_unsupported
fi
touch /storage/.overlay_supported
set_setting system.merged.storage 1
touch /storage/.ms_supported
;;
*)
log $0 "Partition does not support overlayfs, disabling."
if [ -e "/storage/.overlay_supported" ]
if [ -e "/storage/.ms_supported" ]
then
rm -f /storage/.overlay_supported
rm -f /storage/.ms_supported
fi
touch /storage/.overlay_unsupported
touch /storage/.ms_unsupported
;;
esac
@ -85,21 +136,28 @@ function mount_games() {
[ -e "${1}" ] && \
[ ! -e "/storage/.please_resize_me" ]
then
### Udevil shouldn't mount it this early, but just in-case.
umount /var/media/* 2>/dev/null
log $0 "Checking filesystem ${1}."
fsck -Mly ${1} >/dev/null 2>&1
log $0 "Mounting ${1} on ${MOUNT_PATH}"
/usr/bin/busybox mount ${1} ${MOUNT_PATH} >/dev/null 2>&1
fi
start_overlay
start_ms external
create_game_dirs
exit 0
}
find_games() {
if /usr/bin/busybox mountpoint -q /storage ; then
function find_games() {
if /usr/bin/busybox mountpoint -q /storage
then
for DEV in $(for dev in mmcblk[0-9] sd[a-z] nvme[0-9]; do blkid | grep ${dev} | awk 'BEGIN {FS=":"}; /ext4/ || /fat/ {print $1}' | sort -r; done)
do
ROOTDEV=$(echo ${DEV} | sed -e "s#^/.*/##g" -e "s#p[0-9].*\$##g")
log $0 "Inspecting ${DEV}."
SIZE=$(awk '/'${ROOTDEV}'$/ {print $3}' /proc/partitions)
if (( ${SIZE} <= 8388608 ))
then
@ -113,25 +171,31 @@ find_games() {
# Assume this is an android boot device and ignore it.
continue
fi
# Udevil might mount it, and we shouldn't care if it does.
NULL=$(cat /proc/mounts | grep -v -e "/var/media" 2>/dev/null | grep ${DEV})
if [ ! "$?" = "0" ] && \
[ -e "${DEV}" ] && \
if [ -e "${DEV}" ] && \
[ ! -e "/storage/.please_resize_me" ]
then
GAMES_DEVICE=${DEV}
log $0 "Found ${DEV} available to mount."
mount_games "${DEV}"
break
else
log $0 "${DEV} not available."
fi
done
# If we're here there is no external storage to use, but we want to start the overlay anyway.
start_overlay
log $0 "Could not find external card to mount, assume internal."
start_ms internal
create_game_dirs
exit 0
fi
}
## Main..
load_modules
### Unmount any existing storage before beginning operations.
unmount /storage/games-external
unmount /storage/roms
if [ -e "${GAMES_DEVICE}" ]
then
mount_games ${GAMES_DEVICE}

View file

@ -0,0 +1,11 @@
#!/bin/bash
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2023 JELOS (https://github.com/JustEnoughLinuxOS)
. /etc/profile
for STORAGE in /storage/games-internal /storage/games-external
do
find ${STORAGE} -type d -empty -delete
done
reboot

0
packages/jelos/sources/scripts/led_flash Normal file → Executable file
View file

0
packages/jelos/sources/scripts/runemu.sh Normal file → Executable file
View file

0
packages/jelos/sources/scripts/volume Normal file → Executable file
View file

View file

@ -8,7 +8,6 @@ Type=oneshot
Environment=HOME=/storage
EnvironmentFile=/etc/profile
ExecStart=/usr/bin/automount
ExecStartPost=systemd-tmpfiles --create /usr/lib/tmpfiles.d/JELOS-system-dirs.conf
RemainAfterExit=yes
[Install]

View file

@ -4,10 +4,10 @@
PKG_NAME="linux"
PKG_LICENSE="GPL"
PKG_VERSION="6.6.3"
PKG_VERSION="6.6.4"
PKG_URL="https://www.kernel.org/pub/linux/kernel/v6.x/${PKG_NAME}-${PKG_VERSION}.tar.xz"
PKG_SITE="http://www.kernel.org"
PKG_DEPENDS_HOST="ccache:host rsync:host openssl:host"
PKG_DEPENDS_HOST="ccache:host rsync:host openssl:host rdfind:host"
PKG_DEPENDS_TARGET="toolchain linux:host kmod:host cpio:host xz:host keyutils ncurses openssl:host wireless-regdb ${KERNEL_EXTRA_DEPENDS_TARGET}"
PKG_NEED_UNPACK="${LINUX_DEPENDS} $(get_pkg_directory initramfs) $(get_pkg_variable initramfs PKG_NEED_UNPACK)"
PKG_LONGDESC="This package contains a precompiled kernel image and the modules."

View file

@ -0,0 +1,17 @@
diff -rupN linux.orig/drivers/gpu/drm/drm_panel_orientation_quirks.c linux/drivers/gpu/drm/drm_panel_orientation_quirks.c
--- linux.orig/drivers/gpu/drm/drm_panel_orientation_quirks.c 2023-11-28 17:20:18.000000000 +0000
+++ linux/drivers/gpu/drm/drm_panel_orientation_quirks.c 2023-11-30 15:33:54.949480402 +0000
@@ -336,6 +336,13 @@ static const struct dmi_system_id orient
DMI_EXACT_MATCH(DMI_PRODUCT_VERSION, "IdeaPad Duet 3 10IGL5"),
},
.driver_data = (void *)&lcd1200x1920_rightside_up,
+ }, { /* Lenovo Legion Go */
+ .matches = {
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+ DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "83E1"),
+ DMI_EXACT_MATCH(DMI_PRODUCT_VERSION, "Legion Go 8APU1"),
+ },
+ .driver_data = (void *)&lcd1600x2560_leftside_up,
}, { /* Lenovo Yoga Book X90F / X90L */
.matches = {
DMI_EXACT_MATCH(DMI_SYS_VENDOR, "Intel Corporation"),

View file

@ -218,4 +218,4 @@
<players>1</players>
<image>./images/yuzu.svg</image>
</game>
</gameList>
</gameList>

View file

@ -43,6 +43,9 @@ then
done
fi
### Start the automount service
systemctl start jelos-automount
### Run common start scripts
for script in /usr/lib/autostart/common/*
do

View file

@ -119,7 +119,7 @@ allowed_media_dirs = /var/media, /media, /run/media/$USER
# allowed_devices = /dev/*
# WARNING: ALLOWING USERS TO MOUNT DEVICES OUTSIDE OF /dev CAN CAUSE SERIOUS
# SECURITY PROBLEMS. DO NOT ALLOW DEVICES IN /dev/shm
allowed_devices = /dev/sd* /dev/nvme*
allowed_devices = /dev/sd*, /dev/nvme*
# allowed_internal_devices causes udevil to treat any listed block devices as

View file

@ -549,6 +549,11 @@
<cores>
<core name="yuzu-sa">
<features>
<feature name="astc decoding method">
<choice name="gpu" value="1"/>
<choice name="cpu" value="0"/>
<choice name="cpu asynchronous" value="2"/>
</feature>
<feature name="anisotropic filtering">
<choice name="off" value="0"/>
<choice name="2x" value="1"/>
@ -567,6 +572,12 @@
<choice name="16/10" value="3"/>
<choice name="stretch" value="4"/>
</feature>
<feature name="cpu accuracy">
<choice name="auto" value="0"/>
<choice name="accurate" value="1"/>
<choice name="unsafe" value="2"/>
<choice name="paranoid" value="3"/>
</feature>
<feature name="gpu accuracy">
<choice name="low" value="0"/>
<choice name="medium" value="1"/>
@ -593,6 +604,12 @@
<choice name="off" value="0"/>
<choice name="on" value="1"/>
</feature>
<feature name="rumble strength">
<choice name="100%" value="100"/>
<choice name="75%" value="75"/>
<choice name="50%" value="50"/>
<choice name="25%" value="25"/>
</feature>
<feature name="switch mode">
<choice name="handheld" value="0"/>
<choice name="docked" value="1"/>

View file

@ -3,7 +3,7 @@
# Copyright (C) 2023 JELOS (https://github.com/JustEnoughLinuxOS)
PKG_NAME="emulationstation"
PKG_VERSION="ac666f2"
PKG_VERSION="adc7cb5"
PKG_GIT_CLONE_BRANCH="main"
PKG_REV="1"
PKG_ARCH="any"

View file

@ -1,13 +0,0 @@
[Unit]
Description=Overlays directory
After=systemd-tmpfiles-setup.service
DefaultDependencies=no
[Mount]
What=none
Where=/storage/roms
Type=overlay
Options=lowerdir=/storage/games-external,upperdir=/storage/games-internal,workdir=/storage/.tmp/games-workdir
[Install]
WantedBy=jelos.target

View file

@ -14,7 +14,7 @@ GOTO="exit"
# mount or umount for hdds
LABEL="harddisk"
ACTION=="add", PROGRAM="/usr/bin/sh -c '/usr/bin/grep -E ^/dev/%k\ /proc/mounts || true'", RESULT=="", RUN+="/usr/bin/systemctl stop storage-roms.mount", RUN+="/usr/bin/systemctl restart jelos-automount.service"
ACTION=="add", PROGRAM="/usr/bin/sh -c '/usr/bin/grep -E ^/dev/%k\ /proc/mounts || true'", RESULT=="", RUN+="/usr/bin/systemctl restart jelos-automount.service"
GOTO="exit"
# Exit

View file

@ -6,11 +6,11 @@ PKG_VERSION=""
PKG_LICENSE="OSS"
PKG_SITE="http://www.X.org"
PKG_URL=""
PKG_DEPENDS_TARGET="toolchain xorg-server"
PKG_DEPENDS_TARGET="toolchain xwayland"
PKG_SECTION="virtual"
PKG_LONGDESC="X11 is the Windowing system"
# Additional packages we need for using xorg-server:
# Additional packages we need for using xwayland:
# Fonts
PKG_DEPENDS_TARGET="${PKG_DEPENDS_TARGET} encodings font-xfree86-type1 font-bitstream-type1 font-misc-misc"

View file

@ -6,7 +6,7 @@ PKG_VERSION="0.16.2"
PKG_LICENSE="MIT"
PKG_SITE="https://gitlab.freedesktop.org/wlroots/wlroots/"
PKG_URL="https://gitlab.freedesktop.org/wlroots/wlroots/-/archive/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain libinput libxkbcommon pixman libdrm wayland wayland-protocols seatd xorg-server"
PKG_DEPENDS_TARGET="toolchain libinput libxkbcommon pixman libdrm wayland wayland-protocols seatd xwayland"
PKG_LONGDESC="A modular Wayland compositor library"
configure_package() {

View file

@ -3,8 +3,7 @@
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libinput"
PKG_VERSION="1.23.0"
PKG_SHA256="fad7011705a21f500229199f789f3e3e794b4c9826b70073745cdaec23bc1d0b"
PKG_VERSION="1.24.0"
PKG_LICENSE="GPL"
PKG_SITE="https://www.freedesktop.org/wiki/Software/libinput/"
PKG_URL="https://gitlab.freedesktop.org/libinput/libinput/-/archive/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.bz2"

View file

@ -3,7 +3,7 @@
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libxkbcommon"
PKG_VERSION="1.5.0"
PKG_VERSION="1.6.0"
PKG_LICENSE="MIT"
PKG_SITE="https://xkbcommon.org"
PKG_URL="https://xkbcommon.org/download/${PKG_NAME}-${PKG_VERSION}.tar.xz"

View file

@ -2,13 +2,13 @@
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="weston"
PKG_VERSION="68e2a606c056c8453c770263f41f34cd68bdc9d0" # 12.0.2 +
PKG_VERSION="12.0.3"
PKG_LICENSE="MIT"
PKG_SITE="https://wayland.freedesktop.org/"
#PKG_URL="https://gitlab.freedesktop.org/wayland/weston/-/archive/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
PKG_URL="https://gitlab.freedesktop.org/wayland/weston.git"
PKG_DEPENDS_TARGET="toolchain wayland wayland-protocols libdrm libxkbcommon libxcb-cursor libinput cairo pango libjpeg-turbo dbus seatd glu ${OPENGL} libX11 xorg-server libXcursor xkbcomp setxkbmap cairo xterm"
PKG_URL="https://gitlab.freedesktop.org/wayland/weston/-/archive/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
#PKG_URL="https://gitlab.freedesktop.org/wayland/weston.git"
PKG_DEPENDS_TARGET="toolchain wayland wayland-protocols libdrm libxkbcommon libxcb-cursor libinput cairo pango libjpeg-turbo dbus seatd glu ${OPENGL} libX11 xwayland libXcursor xkbcomp setxkbmap cairo xterm"
PKG_LONGDESC="Reference implementation of a Wayland compositor"
PKG_PATCH_DIRS+="${DEVICE}"

View file

@ -7,7 +7,7 @@ PKG_VERSION="11.0.3"
PKG_LICENSE="MIT"
PKG_SITE="https://wayland.freedesktop.org/"
PKG_URL="https://gitlab.freedesktop.org/wayland/weston/-/archive/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
PKG_DEPENDS_TARGET="toolchain wayland wayland-protocols libdrm libxkbcommon libxcb-cursor libinput pipewire cairo pango libjpeg-turbo dbus seatd glu ${OPENGL} libX11 xorg-server libXcursor xkbcomp setxkbmap cairo xterm"
PKG_DEPENDS_TARGET="toolchain wayland wayland-protocols libdrm libxkbcommon libxcb-cursor libinput pipewire cairo pango libjpeg-turbo dbus seatd glu ${OPENGL} libX11 xwayland libXcursor xkbcomp setxkbmap cairo xterm"
PKG_LONGDESC="Reference implementation of a Wayland compositor"
PKG_PATCH_DIRS+="${DEVICE}"

View file

@ -6,7 +6,7 @@ PKG_VERSION="379"
PKG_LICENSE="MIT"
PKG_SITE="http://invisible-mirror.net/archives/xterm"
PKG_URL="${PKG_SITE}/${PKG_NAME}-${PKG_VERSION}.tgz"
PKG_DEPENDS_TARGET="toolchain ncurses xorg-server libXaw libXpm"
PKG_DEPENDS_TARGET="toolchain ncurses xwayland libXaw libXpm"
PKG_LONGDESC="Terminal emulator for X11."

View file

@ -8,7 +8,7 @@ PKG_SHA256="8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0"
PKG_LICENSE="OSS"
PKG_SITE="http://www.X.org"
PKG_URL="http://xorg.freedesktop.org/archive/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain xorg-server util-macros libevdev mtdev systemd"
PKG_DEPENDS_TARGET="toolchain xwayland util-macros libevdev mtdev systemd"
PKG_LONGDESC="Evdev is an Xorg input driver for Linux's generic event devices."
PKG_TOOLCHAIN="autotools"

View file

@ -8,7 +8,7 @@ PKG_SHA256="1446ba20a22bc968b5a4a0b4dbc3b8e037c50d9c59ac75fa3f7fc506c58c1abb"
PKG_LICENSE="MIT"
PKG_SITE="https://www.freedesktop.org/wiki/Software/libinput/"
PKG_URL="https://xorg.freedesktop.org/archive/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain libinput xorg-server"
PKG_DEPENDS_TARGET="toolchain libinput xwayland"
PKG_LONGDESC="This is an X driver based on libinput."
PKG_TOOLCHAIN="autotools"

View file

@ -7,7 +7,7 @@ PKG_SHA256="b8fa4aab913fc63754bbd6439e020658c412743a055201ddf212760593962c38"
PKG_LICENSE="GPL"
PKG_SITE="https://lists.freedesktop.org/mailman/listinfo/xorg"
PKG_URL="https://xorg.freedesktop.org/archive/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain xorg-server libXi libXext libevdev"
PKG_DEPENDS_TARGET="toolchain xwayland libXi libXext libevdev"
PKG_LONGDESC="Synaptics touchpad driver for X.Org."
PKG_TOOLCHAIN="autotools"

View file

@ -9,7 +9,7 @@ PKG_ARCH="x86_64"
PKG_LICENSE="OSS"
PKG_SITE="https://www.x.org/wiki/RadeonFeature/"
PKG_URL="https://www.x.org/archive/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain libdrm xorg-server"
PKG_DEPENDS_TARGET="toolchain libdrm xwayland"
PKG_LONGDESC="Xorg driver for AMD Radeon GPUs using the amdgpu kernel driver."
PKG_TOOLCHAIN="autotools"

View file

@ -9,7 +9,7 @@ PKG_ARCH="x86_64"
PKG_LICENSE="OSS"
PKG_SITE="https://www.x.org/wiki/RadeonFeature/"
PKG_URL="http://xorg.freedesktop.org/archive/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain xorg-server"
PKG_DEPENDS_TARGET="toolchain xwayland"
PKG_LONGDESC="ATI/AMD Radeon video driver for the Xorg X server."
PKG_TOOLCHAIN="autotools"

View file

@ -9,7 +9,7 @@ PKG_ARCH="x86_64"
PKG_LICENSE="OSS"
PKG_SITE="https://www.x.org/wiki/IntelGraphicsDriver/"
PKG_URL="https://gitlab.freedesktop.org/xorg/driver/${PKG_NAME}/-/archive/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain libXcomposite libXxf86vm libXdamage libdrm util-macros systemd xorg-server"
PKG_DEPENDS_TARGET="toolchain libXcomposite libXxf86vm libXdamage libdrm util-macros systemd xwayland"
PKG_LONGDESC="Open-source Xorg graphics driver for Intel graphics."
PKG_TOOLCHAIN="autotools"

View file

@ -9,7 +9,7 @@ PKG_ARCH="x86_64"
PKG_LICENSE="nonfree"
PKG_SITE="https://www.nvidia.com/en-us/drivers/unix/"
PKG_URL="http://us.download.nvidia.com/XFree86/Linux-x86_64/${PKG_VERSION}/NVIDIA-Linux-x86_64-${PKG_VERSION}-no-compat32.run"
PKG_DEPENDS_TARGET="util-macros xorg-server libvdpau"
PKG_DEPENDS_TARGET="util-macros xwayland libvdpau"
PKG_NEED_UNPACK="${LINUX_DEPENDS}"
PKG_LONGDESC="The Xorg driver for NVIDIA GPUs supporting the GeForce 500 Series & older devices."

View file

@ -12,7 +12,7 @@ PKG_ARCH="x86_64"
PKG_LICENSE="nonfree"
PKG_SITE="https://www.nvidia.com/en-us/drivers/unix/"
PKG_URL="http://us.download.nvidia.com/XFree86/Linux-x86_64/${PKG_VERSION}/NVIDIA-Linux-x86_64-${PKG_VERSION}-no-compat32.run"
PKG_DEPENDS_TARGET="util-macros xorg-server libvdpau libglvnd"
PKG_DEPENDS_TARGET="util-macros xwayland libvdpau libglvnd"
PKG_LONGDESC="The Xorg driver for NVIDIA GPUs supporting the GeForce 600 Series & above."
PKG_TOOLCHAIN="manual"

View file

@ -9,7 +9,7 @@ PKG_ARCH="x86_64"
PKG_LICENSE="OSS"
PKG_SITE="https://www.vmware.com"
PKG_URL="https://xorg.freedesktop.org/releases/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain mesa libX11 xorg-server"
PKG_DEPENDS_TARGET="toolchain mesa libX11 xwayland"
PKG_LONGDESC="xf86-video-vmware: The Xorg driver for vmware video"
PKG_TOOLCHAIN="autotools"

View file

@ -1,22 +0,0 @@
From 7b147dfef7a2ce8247710660d2b95d84100aaad7 Mon Sep 17 00:00:00 2001
From: SupervisedThinking <supervisedthinking@gmail.com>
Date: Tue, 19 Oct 2021 18:22:38 +0200
Subject: [PATCH] Detect GPUs as "radeon" instead "ati"
---
hw/xfree86/common/xf86pciBus.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c
index aeeed8be66..5c22bd4080 100644
--- a/hw/xfree86/common/xf86pciBus.c
+++ b/hw/xfree86/common/xf86pciBus.c
@@ -1106,7 +1106,7 @@ xf86VideoPtrToDriverList(struct pci_device *dev, XF86MatchedDrivers *md)
driverList[0] = "ast";
break;
case 0x1002:
- driverList[0] = "ati";
+ driverList[0] = "radeon";
break;
case 0x102c:
driverList[0] = "chips";

View file

@ -1,90 +0,0 @@
From aff7aded0cc546491b29b37b093846921ab7378a Mon Sep 17 00:00:00 2001
From: SupervisedThinking <supervisedthinking@gmail.com>
Date: Tue, 19 Oct 2021 18:23:20 +0200
Subject: [PATCH] Fedora extra modes list added by Adam Jackson
<ajax@redhat.com>
---
hw/xfree86/common/extramodes | 59 ++++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)
diff --git a/hw/xfree86/common/extramodes b/hw/xfree86/common/extramodes
index 006b5cba17..3caa3bf015 100644
--- a/hw/xfree86/common/extramodes
+++ b/hw/xfree86/common/extramodes
@@ -3,16 +3,75 @@
//
// $XFree86: xc/programs/Xserver/hw/xfree86/etc/extramodes,v 1.5 2002/06/05 19:43:05 dawes Exp $
//
+// NOTE: Please keep all video modes sorted in order of X res, then Y res for
+// ease of maintenance and readability.
# 832x624 @ 75Hz (74.55Hz) (fix if the official/Apple spec is different) hsync: 49.725kHz
ModeLine "832x624" 57.284 832 864 928 1152 624 625 628 667 -Hsync -Vsync
+# 1152x864 @ 60.00 Hz (GTF) hsync: 53.70 kHz; pclk: 81.62 MHz
+Modeline "1152x864" 81.62 1152 1216 1336 1520 864 865 868 895 -HSync +Vsync
+
+# 1152x864 @ 70.00 Hz (GTF) hsync: 63.00 kHz; pclk: 96.77 MHz
+Modeline "1152x864" 96.77 1152 1224 1344 1536 864 865 868 900 -HSync +Vsync
+
+# 1152x864 @ 75.00 Hz (GTF) hsync: 67.65 kHz; pclk: 104.99 MHz
+Modeline "1152x864" 104.99 1152 1224 1352 1552 864 865 868 902 -HSync +Vsync
+
+# 1152x864 @ 85.00 Hz (GTF) hsync: 77.10 kHz; pclk: 119.65 MHz
+Modeline "1152x864" 119.65 1152 1224 1352 1552 864 865 868 907 -HSync +Vsync
+
+# 1152x864 @ 85Hz (Red Hat custom modeline)
+ModeLine "1152x864" 121.5 1152 1216 1344 1568 864 865 868 911 +hsync -vsync
+
+# 1152x864 @ 100.00 Hz (GTF) hsync: 91.50 kHz; pclk: 143.47 MHz
+Modeline "1152x864" 143.47 1152 1232 1360 1568 864 865 868 915 -HSync +Vsync
+
+# 1360x768 59.96 Hz (CVT) hsync: 47.37 kHz; pclk: 72.00 MHz
+Modeline "1360x768" 72.00 1360 1408 1440 1520 768 771 781 790 +hsync -vsync
+
+# 1360x768 59.80 Hz (CVT) hsync: 47.72 kHz; pclk: 84.75 MHz
+Modeline "1360x768" 84.75 1360 1432 1568 1776 768 771 781 798 -hsync +vsync
+
# 1400x1050 @ 60Hz (VESA GTF) hsync: 65.5kHz
ModeLine "1400x1050" 122.0 1400 1488 1640 1880 1050 1052 1064 1082 +hsync +vsync
+# 1400x1050 @ 70.00 Hz (GTF) hsync: 76.51 kHz; pclk: 145.06 MHz
+Modeline "1400x1050" 145.06 1400 1496 1648 1896 1050 1051 1054 1093 -HSync +Vsync
+
# 1400x1050 @ 75Hz (VESA GTF) hsync: 82.2kHz
ModeLine "1400x1050" 155.8 1400 1464 1784 1912 1050 1052 1064 1090 +hsync +vsync
+# 1400x1050 @ 85.00 Hz (GTF) hsync: 93.76 kHz; pclk: 179.26 MHz
+Modeline "1400x1050" 179.26 1400 1504 1656 1912 1050 1051 1054 1103 -HSync +Vsync
+
+# 1440x900 @ 60.00 Hz (CVT) field rate 59.89 Hz; hsync: 55.93 kHz; pclk: 106.50 MHz
+Modeline "1440x900" 106.50 1440 1520 1672 1904 900 903 909 934 -HSync +Vsync
+
+# 1600x1024 for SGI 1600 SW
+ModeLine "1600x1024" 103.125 1600 1600 1656 1664 1024 1024 1029 1030 +Hsync +Vsync
+
+# 1680x1050 59.88 Hz (CVT 1.76MA-R) hsync: 64.67 kHz; pclk: 119.00 MHz
+Modeline "1680x1050" 119.00 1680 1728 1760 1840 1050 1053 1059 1080 +hsync -vsync
+
+# 1680x1050 59.95 Hz (CVT 1.76MA) hsync: 65.29 kHz; pclk: 146.25 MHz
+Modeline "1680x1050" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync
+
+# 1680x1050 69.88 Hz (CVT) hsync: 76.58 kHz; pclk: 174.00 MHz
+Modeline "1680x1050" 174.00 1680 1800 1976 2272 1050 1053 1059 1096 -hsync +vsync
+
+# 1680x1050 74.89 Hz (CVT 1.76MA) hsync: 82.31 kHz; pclk: 187.00 MHz
+Modeline "1680x1050" 187.00 1680 1800 1976 2272 1050 1053 1059 1099 -hsync +vsync
+
+# 1680x1050 84.94 Hz (CVT 1.76MA) hsync: 93.86 kHz; pclk: 214.75 MHz
+Modeline "1680x1050" 214.75 1680 1808 1984 2288 1050 1053 1059 1105 -hsync +vsync
+
+# 1920x1080 59.93 Hz (CVT 2.07M9-R) hsync: 66.59 kHz; pclk: 138.50 MHz
+Modeline "1920x1080" 138.50 1920 1968 2000 2080 1080 1083 1088 1111 +hsync -vsync
+
+# 1920x1200 59.95 Hz (CVT 2.30MA-R) hsync: 74.04 kHz; pclk: 154.00 MHz
+Modeline "1920x1200" 154.00 1920 1968 2000 2080 1200 1203 1209 1235 +hsync -vsync
+
# 1920x1440 @ 85Hz (VESA GTF) hsync: 128.5kHz
Modeline "1920x1440" 341.35 1920 2072 2288 2656 1440 1441 1444 1512 -hsync +vsync

View file

@ -1,37 +1,22 @@
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
# Copyright (C) 2023-present JELOS (https://github.com/JustEnoughLinuxOS/distribution)
PKG_NAME="xorg-server"
PKG_VERSION="7b1758936bd644020a560f2739ad7a50fbb87b17"
PKG_NAME="xwayland"
PKG_VERSION="7883646a8f208a1db4cb98f8b295c7f862da3b2a"
PKG_LICENSE="OSS"
PKG_SITE="https://gitlab.freedesktop.org/xorg/xserver"
PKG_URL="${PKG_SITE}.git"
PKG_DEPENDS_TARGET="toolchain util-macros font-util xorgproto libpciaccess libX11 libXfont2 libXinerama libxcvt libxshmfence libxkbfile libdrm openssl freetype pixman systemd xorg-launch-helper"
PKG_GIT_CLONE_BRANCH="xwayland-23.2"
PKG_DEPENDS_TARGET="toolchain util-macros font-util xorgproto libpciaccess libX11 libXfont2 libXinerama libxcvt libxshmfence libxkbfile libdrm openssl freetype pixman systemd xorg-launch-helper wayland libglvnd"
PKG_NEED_UNPACK="$(get_pkg_directory xf86-video-nvidia) $(get_pkg_directory xf86-video-nvidia-legacy)"
PKG_LONGDESC="X.Org Server is the free and open-source implementation of the X Window System display server."
get_graphicdrivers
if [ "${DISPLAYSERVER}" = "wl" ]
then
PKG_DEPENDS_TARGET+=" wayland libglvnd"
PKG_MESON_OPTS_TARGET+=" -Dxorg=false \
-Dxwayland=true \
-Dglamor=true"
else
PKG_MESON_OPTS_TARGET+=" -Dxorg=true \
-Dxwayland=false"
fi
PKG_MESON_OPTS_TARGET+=" -Dxephyr=false \
-Dxnest=false \
-Dxvfb=false \
-Dxwin=false \
-Dxquartz=false \
PKG_MESON_OPTS_TARGET+=" -Dxvfb=false \
-Dbuilder_addr=${BUILDER_NAME} \
-Dlog_dir="/var/log" \
-Dmodule_dir=${XORG_PATH_MODULES} \
-Ddefault_font_path="/usr/share/fonts/misc,built-ins" \
-Dxdmcp=false \
-Dxdm-auth-1=false \
@ -46,13 +31,6 @@ PKG_MESON_OPTS_TARGET+=" -Dxephyr=false \
-Dlisten_tcp=false \
-Dlisten_unix=true \
-Dlisten_local=false \
-Dint10=x86emu \
-Dpciaccess=true \
-Dudev=true \
-Dudev_kms=true \
-Dhal=false \
-Dsystemd_logind=false \
-Dvgahw=true \
-Ddpms=true \
-Dxf86bigfont=false \
-Dscreensaver=false \
@ -62,16 +40,10 @@ PKG_MESON_OPTS_TARGET+=" -Dxephyr=false \
-Dxinerama=true \
-Dxcsecurity=false \
-Dxv=true \
-Dxvmc=false \
-Ddga=true \
-Dlinux_apm=false \
-Dlinux_acpi=false \
-Dmitshm=true \
-Dsha1="libcrypto" \
-Ddri2=true \
-Ddri3=true \
-Ddrm=true \
-Dxpbproxy=false \
-Dlibunwind=false \
-Ddocs=false \
-Ddevel-docs=false"
@ -79,7 +51,6 @@ PKG_MESON_OPTS_TARGET+=" -Dxephyr=false \
if [ ! "${OPENGL}" = "no" ]; then
PKG_DEPENDS_TARGET+=" ${OPENGL} libepoxy"
PKG_MESON_OPTS_TARGET+=" -Dglx=true \
-Ddri1=true \
-Dglamor=true"
else
PKG_MESON_OPTS_TARGET+=" -Dglx=false \
@ -94,25 +65,4 @@ fi
post_makeinstall_target() {
rm -rf ${INSTALL}/var/cache/xkb
mkdir -p ${INSTALL}/usr/lib/xorg
cp -P ${PKG_DIR}/scripts/xorg-configure ${INSTALL}/usr/lib/xorg
sed -i -e "s|@NVIDIA_VERSION@|$(get_pkg_version xf86-video-nvidia)|g" ${INSTALL}/usr/lib/xorg/xorg-configure
sed -i -e "s|@NVIDIA_LEGACY_VERSION@|$(get_pkg_version xf86-video-nvidia-legacy)|g" ${INSTALL}/usr/lib/xorg/xorg-configure
if [ ! "${OPENGL}" = "no" ]; then
if [ -f ${INSTALL}/usr/lib/xorg/modules/extensions/libglx.so ]; then
mv ${INSTALL}/usr/lib/xorg/modules/extensions/libglx.so \
${INSTALL}/usr/lib/xorg/modules/extensions/libglx_mesa.so # rename for cooperate with nvidia drivers
ln -sf /var/lib/libglx.so ${INSTALL}/usr/lib/xorg/modules/extensions/libglx.so
fi
fi
mkdir -p ${INSTALL}/etc/X11
if find_file_path config/xorg.conf; then
cp ${FOUND_PATH} ${INSTALL}/etc/X11
fi
}
#post_install() {
# enable_service xorg.service
#}

View file

@ -6415,23 +6415,6 @@ CONFIG_PM_OPP=y
# CONFIG_MOST is not set
# CONFIG_PECI is not set
# CONFIG_HTE is not set
CONFIG_MALI_MIDGARD=y
CONFIG_MALI_PLATFORM_NAME="meson"
CONFIG_MALI_REAL_HW=y
#
# Platform specific options
#
# end of Platform specific options
CONFIG_MALI_DEVFREQ=y
CONFIG_MALI_GATOR_SUPPORT=y
# CONFIG_MALI_MIDGARD_ENABLE_TRACE is not set
# CONFIG_MALI_ARBITER_SUPPORT is not set
# CONFIG_MALI_DMA_BUF_MAP_ON_DEMAND is not set
# CONFIG_MALI_DMA_BUF_LEGACY_COMPAT is not set
# CONFIG_MALI_EXPERT is not set
# CONFIG_MALI_ARBITRATION is not set
# end of Device Drivers
#

View file

@ -74,7 +74,7 @@
# for a list of additional drivers see packages/linux-drivers
# Space separated list is supported,
# e.g. ADDITIONAL_DRIVERS="DRIVER1 DRIVER2"
ADDITIONAL_DRIVERS="RTL8812AU RTL8821AU RTL8821CU RTL88x2BU RTL8188EU"
ADDITIONAL_DRIVERS="mali-bifrost RTL8812AU RTL8821AU RTL8821CU RTL88x2BU RTL8188EU"
# build and install driver addons (yes / no)
DRIVER_ADDONS_SUPPORT="no"

View file

@ -7,7 +7,7 @@
PKG_NAME="linux"
PKG_LICENSE="GPL"
PKG_SITE="https://github.com/JustEnoughLinuxOS"
PKG_DEPENDS_HOST="ccache:host rsync:host openssl:host"
PKG_DEPENDS_HOST="ccache:host rsync:host openssl:host rdfind:host"
PKG_DEPENDS_TARGET="toolchain linux:host cpio:host kmod:host xz:host wireless-regdb keyutils util-linux binutils ncurses openssl:host ${KERNEL_EXTRA_DEPENDS_TARGET}"
PKG_DEPENDS_INIT="toolchain"
PKG_NEED_UNPACK="${LINUX_DEPENDS} $(get_pkg_directory initramfs) $(get_pkg_variable initramfs PKG_NEED_UNPACK)"
@ -18,7 +18,7 @@ PKG_PATCH_DIRS+="${DEVICE}"
case ${DEVICE} in
S922X*)
PKG_VERSION="6.1.64"
PKG_VERSION="6.1.65"
PKG_URL="https://www.kernel.org/pub/linux/kernel/v6.x/${PKG_NAME}-${PKG_VERSION}.tar.xz"
;;
esac

View file

@ -1,9 +1,9 @@
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
new file mode 100644
index 000000000000..f42ebb59a59c
index 000000000000..6d0453220212
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
@@ -0,0 +1,1001 @@
@@ -0,0 +1,997 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2022 Neil Armstrong <narmstrong@kernel.org>
@ -384,10 +384,6 @@ index 000000000000..f42ebb59a59c
+ opp-1800000000 {
+ opp-microvolt = <987500>;
+ };
+ opp-1908000000 {
+ opp-hz = /bits/ 64 <1908000000>;
+ opp-microvolt = <1050000>;
+ };
+};
+
+/* RK818 only supports 12.5mV steps, round up the values */

View file

@ -1,12 +0,0 @@
diff -rupN linux.orig/drivers/gpu/drm/drm_panel_orientation_quirks.c linux/drivers/gpu/drm/drm_panel_orientation_quirks.c
--- linux.orig/drivers/gpu/drm/drm_panel_orientation_quirks.c 2023-09-12 12:02:57.953624819 +0000
+++ linux/drivers/gpu/drm/drm_panel_orientation_quirks.c 2023-09-12 12:03:27.490291628 +0000
@@ -477,7 +477,7 @@ EXPORT_SYMBOL(drm_get_panel_orientation_
/* There are no quirks for non x86 devices yet */
int drm_get_panel_orientation_quirk(int width, int height)
{
- return DRM_MODE_PANEL_ORIENTATION_UNKNOWN;
+ return DRM_MODE_PANEL_ORIENTATION_LEFT_UP;
}
EXPORT_SYMBOL(drm_get_panel_orientation_quirk);

View file

@ -0,0 +1,23 @@
diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c
index f3964060a044..dc1ffb3a098b 100644
--- a/sound/soc/soc-pcm.c
+++ b/sound/soc/soc-pcm.c
@@ -41,9 +41,6 @@ static inline int _soc_pcm_ret(struct snd_soc_pcm_runtime *rtd,
case -ENOTSUPP:
break;
default:
- dev_err(rtd->dev,
- "ASoC: error at %s on %s: %d\n",
- func, rtd->dai_link->name, ret);
}
return ret;
@@ -2438,8 +2435,6 @@ static int dpcm_fe_dai_prepare(struct snd_pcm_substream *substream)
/* there is no point preparing this FE if there are no BEs */
if (list_empty(&fe->dpcm[stream].be_clients)) {
- dev_err(fe->dev, "ASoC: no backend DAIs enabled for %s\n",
- fe->dai_link->name);
ret = -EINVAL;
goto out;
}

View file

@ -0,0 +1,25 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2023 JELOS (https://github.com/JustEnoughLinuxOS)
PKG_NAME="mali-bifrost"
PKG_VERSION="r46p0-01eac0"
PKG_LICENSE="GPL"
PKG_SITE="https://developer.arm.com/downloads/-/mali-drivers/bifrost-kernel"
PKG_URL="https://developer.arm.com/-/media/Files/downloads/mali-drivers/kernel/mali-bifrost-gpu/BX304L01B-SW-99002-${PKG_VERSION}.tar"
PKG_LONGDESC="mali-bifrost: Linux drivers for Mali Bifrost GPUs"
PKG_DEPENDS_TARGET="toolchain linux"
PKG_NEED_UNPACK="${LINUX_DEPENDS}"
PKG_TOOLCHAIN="manual"
PKG_IS_KERNEL_PKG="yes"
make_target() {
kernel_make KDIR=$(kernel_path) -C ${PKG_BUILD} \
CONFIG_MALI_MIDGARD=m CONFIG_MALI_PLATFORM_NAME=meson CONFIG_MALI_REAL_HW=y CONFIG_MALI_DEVFREQ=y CONFIG_MALI_GATOR_SUPPORT=y
}
makeinstall_target() {
DRIVER_DIR=${PKG_BUILD}/product/kernel/drivers/gpu/arm/midgard
mkdir -p ${INSTALL}/$(get_full_module_dir)/${PKG_NAME}
cp ${DRIVER_DIR}/mali_kbase.ko ${INSTALL}/$(get_full_module_dir)/${PKG_NAME}
}

View file

@ -0,0 +1,19 @@
diff --git a/driver/product/kernel/drivers/gpu/arm/midgard/Makefile b/driver/product/kernel/drivers/gpu/arm/midgard/Makefile
index a3ba2b2..3ed9ccf 100644
--- a/product/kernel/drivers/gpu/arm/midgard/Makefile
+++ b/product/kernel/drivers/gpu/arm/midgard/Makefile
@@ -228,14 +228,6 @@ ifeq ($(MALI_KCONFIG_EXT_PREFIX),)
EXTRA_CFLAGS += -DCONFIG_MALI_NO_MALI_DEFAULT_GPU='\"$(CONFIG_MALI_NO_MALI_DEFAULT_GPU)\"'
endif
-#
-# KBUILD_EXTRA_SYMBOLS to prevent warnings about unknown functions
-#
-BASE_SYMBOLS = $(M)/../../base/arm/Module.symvers
-
-EXTRA_SYMBOLS += \
- $(BASE_SYMBOLS)
-
CFLAGS_MODULE += -Wall -Werror
# The following were added to align with W=1 in scripts/Makefile.extrawarn

View file

@ -0,0 +1,12 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2023 JELOS (https://github.com/JustEnoughLinuxOS)
export
MALI_KBASE_SRC_DIR = $(CURDIR)/product/kernel/drivers/gpu/arm/midgard
all:
$(MAKE) -C $(MALI_KBASE_SRC_DIR) all
clean:
$(MAKE) -C $(MALI_KBASE_SRC_DIR) clean

View file

@ -1,15 +1,15 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 6.1.28 Kernel Configuration
# Linux/arm64 6.1.64 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="aarch64-libreelec-linux-gnueabi-gcc-12.3.0 (GCC) 12.3.0"
CONFIG_CC_IS_GCC=y
CONFIG_GCC_VERSION=120300
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
CONFIG_AS_VERSION=24000
CONFIG_AS_VERSION=24100
CONFIG_LD_IS_BFD=y
CONFIG_LD_VERSION=24000
CONFIG_LD_VERSION=24100
CONFIG_LLD_VERSION=0
CONFIG_CC_CAN_LINK=y
CONFIG_CC_CAN_LINK_STATIC=y
@ -196,7 +196,7 @@ CONFIG_SCHED_AUTOGROUP=y
# CONFIG_SYSFS_DEPRECATED is not set
CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_INITRAMFS_SOURCE="@INITRAMFS_SOURCE@"
CONFIG_INITRAMFS_ROOT_UID=0
CONFIG_INITRAMFS_ROOT_GID=0
CONFIG_RD_GZIP=y
@ -340,6 +340,7 @@ CONFIG_ARCH_ROCKCHIP=y
#
# ARM errata workarounds via the alternatives framework
#
CONFIG_AMPERE_ERRATUM_AC03_CPU_38=y
CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y
CONFIG_ARM64_ERRATUM_826319=y
CONFIG_ARM64_ERRATUM_827319=y
@ -370,6 +371,7 @@ CONFIG_ARM64_ERRATUM_2054223=y
CONFIG_ARM64_ERRATUM_2067961=y
CONFIG_ARM64_ERRATUM_2441009=y
CONFIG_ARM64_ERRATUM_2457168=y
CONFIG_ARM64_ERRATUM_2966298=y
CONFIG_CAVIUM_ERRATUM_22375=y
CONFIG_CAVIUM_ERRATUM_23154=y
CONFIG_CAVIUM_ERRATUM_27456=y
@ -569,14 +571,14 @@ CONFIG_CPU_FREQ_STAT=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL=y
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
CONFIG_CPU_FREQ_GOV_USERSPACE=y
# CONFIG_CPU_FREQ_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
# CONFIG_CPU_FREQ_GOV_CONSERVATIVE is not set
CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
#
@ -930,6 +932,7 @@ CONFIG_ARCH_HAS_PTE_SPECIAL=y
# CONFIG_ANON_VMA_NAME is not set
# CONFIG_USERFAULTFD is not set
# CONFIG_LRU_GEN is not set
CONFIG_LOCK_MM_AND_FIND_VMA=y
#
# Data Access Monitoring
@ -1999,12 +2002,13 @@ CONFIG_WLCORE=m
# CONFIG_WLCORE_SDIO is not set
# CONFIG_WLAN_VENDOR_ZYDAS is not set
CONFIG_WLAN_VENDOR_QUANTENNA=y
CONFIG_ESP8089=m
CONFIG_ESP8089_DEBUG_FS=y
# CONFIG_MAC80211_HWSIM is not set
CONFIG_USB_NET_RNDIS_WLAN=m
# CONFIG_VIRT_WIFI is not set
# CONFIG_WAN is not set
CONFIG_ESP8089=m
CONFIG_ESP8089_DEBUG_FS=y
#
# Wireless WAN
#
@ -3282,7 +3286,7 @@ CONFIG_VIDEO_CX25840=m
# Graphics support
#
CONFIG_DRM=y
CONFIG_DRM_MIPI_DBI=y
CONFIG_DRM_MIPI_DBI=m
CONFIG_DRM_MIPI_DSI=y
# CONFIG_DRM_DEBUG_MM is not set
CONFIG_DRM_KMS_HELPER=y
@ -4815,8 +4819,8 @@ CONFIG_DEVFREQ_GOV_PASSIVE=y
#
# DEVFREQ Drivers
#
CONFIG_ARM_ROCKCHIP_BUS_DEVFREQ=y
CONFIG_ARM_RK3399_DMC_DEVFREQ=y
CONFIG_ARM_ROCKCHIP_BUS_DEVFREQ=y
CONFIG_PM_DEVFREQ_EVENT=y
CONFIG_DEVFREQ_EVENT_ROCKCHIP_DFI=y
CONFIG_EXTCON=y

View file

@ -7,7 +7,7 @@
PKG_NAME="linux"
PKG_LICENSE="GPL"
PKG_SITE="https://github.com/JustEnoughLinuxOS"
PKG_DEPENDS_HOST="ccache:host rsync:host openssl:host"
PKG_DEPENDS_HOST="ccache:host rsync:host openssl:host rdfind:host"
PKG_DEPENDS_TARGET="toolchain linux:host cpio:host kmod:host xz:host lz4:host wireless-regdb keyutils util-linux binutils ncurses openssl:host ${KERNEL_EXTRA_DEPENDS_TARGET}"
PKG_DEPENDS_INIT="toolchain"
PKG_NEED_UNPACK="${LINUX_DEPENDS} $(get_pkg_directory initramfs) $(get_pkg_variable initramfs PKG_NEED_UNPACK)"
@ -40,7 +40,7 @@ case ${DEVICE} in
PKG_GIT_CLONE_BRANCH="main"
;;
RK33*)
PKG_VERSION="6.1.64"
PKG_VERSION="6.1.65"
PKG_URL="https://www.kernel.org/pub/linux/kernel/v6.x/${PKG_NAME}-${PKG_VERSION}.tar.xz"
;;
esac