commit:     d31101abffeb80f0de0e7141f5becbaa6ccc3e61
Author:     Yixun Lan <dlan <AT> gentoo <DOT> org>
AuthorDate: Mon Oct  9 02:55:03 2023 +0000
Commit:     Yixun Lan <dlan <AT> gentoo <DOT> org>
CommitDate: Mon Oct  9 02:57:14 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d31101ab

sys-power/thermald: fix ioctl for reading PSVT

Upstream-PR: https://github.com/intel/thermal_daemon/pull/422
Signed-off-by: Yixun Lan <dlan <AT> gentoo.org>

 .../thermald/files/thermald-2.5.4-ioctl.patch      | 25 ++++++++++
 sys-power/thermald/thermald-2.5.4-r1.ebuild        | 56 ++++++++++++++++++++++
 2 files changed, 81 insertions(+)

diff --git a/sys-power/thermald/files/thermald-2.5.4-ioctl.patch 
b/sys-power/thermald/files/thermald-2.5.4-ioctl.patch
new file mode 100644
index 000000000000..85a4a82218aa
--- /dev/null
+++ b/sys-power/thermald/files/thermald-2.5.4-ioctl.patch
@@ -0,0 +1,25 @@
+diff --git a/src/acpi_thermal_rel_ioct.h b/src/acpi_thermal_rel_ioct.h
+index dd045a9..9b12a69 100644
+--- a/src/acpi_thermal_rel_ioct.h
++++ b/src/acpi_thermal_rel_ioct.h
+@@ -34,17 +34,14 @@
+ #define ACPI_THERMAL_GET_ART  _IOR(ACPI_THERMAL_MAGIC, 6, unsigned long)
+ 
+ /*
+- * ACPI_THERMAL_GET_PSVT_REV = Revision number
+- *   identifies limit type: 1=true proportional limit, 2=depth limit
+  * ACPI_THERMAL_GET_PSVT_COUNT = Number of PSVT entries
+  * ACPI_THERMAL_GET_PSVT_LEN = Total return data size (PSVT count x each
+  * PSVT entry size)
+  * ACPI_THERMAL_GET_PSVT = Get the data as an array of psvt_objects
+  */
+-#define ACPI_THERMAL_GET_PSVT_REV _IOR(ACPI_THERMAL_MAGIC, 7, unsigned long)
+-#define ACPI_THERMAL_GET_PSVT_LEN _IOR(ACPI_THERMAL_MAGIC, 8, unsigned long)
+-#define ACPI_THERMAL_GET_PSVT_COUNT _IOR(ACPI_THERMAL_MAGIC, 9, unsigned long)
+-#define ACPI_THERMAL_GET_PSVT _IOR(ACPI_THERMAL_MAGIC, 10, unsigned long)
++#define ACPI_THERMAL_GET_PSVT_LEN _IOR(ACPI_THERMAL_MAGIC, 7, unsigned long)
++#define ACPI_THERMAL_GET_PSVT_COUNT _IOR(ACPI_THERMAL_MAGIC, 8, unsigned long)
++#define ACPI_THERMAL_GET_PSVT _IOR(ACPI_THERMAL_MAGIC, 9, unsigned long)
+ 
+ #ifndef __KERNEL__
+ #define u64 unsigned long long

diff --git a/sys-power/thermald/thermald-2.5.4-r1.ebuild 
b/sys-power/thermald/thermald-2.5.4-r1.ebuild
new file mode 100644
index 000000000000..d9b0e929bcb5
--- /dev/null
+++ b/sys-power/thermald/thermald-2.5.4-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools linux-info out-of-source systemd
+
+DESCRIPTION="Thermal daemon for Intel architectures"
+HOMEPAGE="https://github.com/intel/thermal_daemon";
+SRC_URI="https://github.com/intel/thermal_daemon/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="
+       dev-libs/dbus-glib:=
+       dev-libs/glib:=
+       dev-libs/libxml2:=
+       dev-libs/libevdev
+       sys-power/upower
+       sys-apps/dbus:="
+DEPEND="${RDEPEND}
+       dev-util/gtk-doc
+       dev-util/glib-utils"
+
+S=${WORKDIR}/thermal_daemon-${PV}
+DOCS=( thermal_daemon_usage.txt README.txt )
+
+CONFIG_CHECK="~PERF_EVENTS_INTEL_RAPL ~X86_INTEL_PSTATE ~INTEL_POWERCLAMP 
~INT340X_THERMAL ~ACPI_THERMAL_REL ~INT3406_THERMAL"
+
+PATCHES=( "${FILESDIR}/${P}-ioctl.patch" )
+
+src_prepare() {
+       sed -i -e '/tdrundir/s@\$localstatedir/run@\$runstatedir@' \
+               configure.ac || die
+
+       default
+       eautoreconf
+}
+
+my_src_configure() {
+       ECONF_SOURCE="${S}" econf \
+               --disable-werror \
+               --runstatedir="${EPREFIX}"/run \
+               --with-dbus-power-group=wheel \
+               --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+}
+
+my_src_install_all() {
+       einstalldocs
+
+       rm -rf "${ED}"/etc/init || die
+       doinitd "${FILESDIR}"/thermald
+}

Reply via email to