core: reorder systemd arguments on reexe
coredump: use %d in kernel core pattern - CVE-2025-4598 Debrand for AlmaLinux
This commit is contained in:
commit
a16881b0de
@ -0,0 +1,48 @@
|
||||
From 5219fc583393eec83ae2f7a1043bc45c16a8f15f Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Wed, 8 Nov 2023 10:56:07 +0100
|
||||
Subject: [PATCH] man: be even clearer that tmpfiles user/group/mode are
|
||||
applied on existing inodes
|
||||
|
||||
I think it was clear already, but let's be even clearer.
|
||||
|
||||
Fixes: #29774
|
||||
(cherry picked from commit 3cb938bd12b3603984b982e9b73e4cabd4a608e3)
|
||||
|
||||
Resolves: RHEL-15051
|
||||
---
|
||||
man/tmpfiles.d.xml | 14 ++++++++------
|
||||
1 file changed, 8 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/man/tmpfiles.d.xml b/man/tmpfiles.d.xml
|
||||
index 379ac9c34f..595b9f6934 100644
|
||||
--- a/man/tmpfiles.d.xml
|
||||
+++ b/man/tmpfiles.d.xml
|
||||
@@ -546,9 +546,10 @@ w- /proc/sys/vm/swappiness - - - - 10</programlisting></para>
|
||||
removed unless applied to a directory. This functionality is particularly useful in conjunction with
|
||||
<varname>Z</varname>.</para>
|
||||
|
||||
- <para>Optionally, if prefixed with <literal>:</literal>, the configured access mode is only used when
|
||||
- creating new inodes. If the inode the line refers to already exists, its access mode is left in place
|
||||
- unmodified.</para>
|
||||
+ <para>By default the access mode of listed inodes is set to the specified mode regardless if it is
|
||||
+ created anew, or already existed. Optionally, if prefixed with <literal>:</literal>, the configured
|
||||
+ access mode is only applied when creating new inodes, and if the inode the line refers to
|
||||
+ already exists, its access mode is left in place unmodified.</para>
|
||||
</refsect2>
|
||||
|
||||
<refsect2>
|
||||
@@ -569,9 +570,10 @@ w- /proc/sys/vm/swappiness - - - - 10</programlisting></para>
|
||||
Resolvability of User and Group Names</ulink> for more information on requirements on system user/group
|
||||
definitions.</para>
|
||||
|
||||
- <para>Optionally, if prefixed with <literal>:</literal>, the configured user/group information is only
|
||||
- used when creating new inodes. If the inode the line refers to already exists, its user/group is left
|
||||
- in place unmodified.</para>
|
||||
+ <para>By default the ownership of listed inodes is set to the specified user/group regardless if it is
|
||||
+ created anew, or already existed. Optionally, if prefixed with <literal>:</literal>, the configured
|
||||
+ user/group information is only applied when creating new inodes, and if the inode the line refers to
|
||||
+ already exists, its user/group is left in place unmodified.</para>
|
||||
</refsect2>
|
||||
|
||||
<refsect2>
|
30
SOURCES/1112-unit-always-return-1-in-log_kill.patch
Normal file
30
SOURCES/1112-unit-always-return-1-in-log_kill.patch
Normal file
@ -0,0 +1,30 @@
|
||||
From 99333a18d1f385ec04f48db63494158adf7a1df8 Mon Sep 17 00:00:00 2001
|
||||
From: msizanoen1 <msizanoen@qtmlabs.xyz>
|
||||
Date: Tue, 7 Feb 2023 20:17:21 +0700
|
||||
Subject: [PATCH] unit: always return 1 in log_kill
|
||||
|
||||
This ensures that cg_kill_items returns the correct value to let the
|
||||
manager know that a process was killed.
|
||||
|
||||
(cherry picked from commit 500cd2e83b8246fbf20d99db898039cfba746223)
|
||||
|
||||
Resolves: RHEL-78170
|
||||
---
|
||||
src/core/unit.c | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/core/unit.c b/src/core/unit.c
|
||||
index 03eb3aaecf..d98ecf4367 100644
|
||||
--- a/src/core/unit.c
|
||||
+++ b/src/core/unit.c
|
||||
@@ -4542,7 +4542,9 @@ static int log_kill(pid_t pid, int sig, void *userdata) {
|
||||
/* Don't log about processes marked with brackets, under the assumption that these are temporary processes
|
||||
only, like for example systemd's own PAM stub process. */
|
||||
if (comm && comm[0] == '(')
|
||||
- return 0;
|
||||
+ /* Although we didn't log anything, as this callback is used in unit_kill_context we must return 1
|
||||
+ * here to let the manager know that a process was killed. */
|
||||
+ return 1;
|
||||
|
||||
log_unit_notice(userdata,
|
||||
"Killing process " PID_FMT " (%s) with signal SIG%s.",
|
@ -0,0 +1,32 @@
|
||||
From 42bbdbf52f4aab3a9d34b3a3ce9fa5b12f43d993 Mon Sep 17 00:00:00 2001
|
||||
From: msizanoen1 <msizanoen@qtmlabs.xyz>
|
||||
Date: Tue, 7 Feb 2023 20:17:21 +0700
|
||||
Subject: [PATCH] ci: enable mkosi workflow for z-stream branches
|
||||
|
||||
rhel-only: ci
|
||||
|
||||
Related: RHEL-79977
|
||||
---
|
||||
.github/workflows/mkosi.yml | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/.github/workflows/mkosi.yml b/.github/workflows/mkosi.yml
|
||||
index f9b6d9ba58..aac559401d 100644
|
||||
--- a/.github/workflows/mkosi.yml
|
||||
+++ b/.github/workflows/mkosi.yml
|
||||
@@ -9,6 +9,7 @@ on:
|
||||
branches:
|
||||
- main
|
||||
- v[0-9]+-stable
|
||||
+ - rhel-9.*.0
|
||||
paths:
|
||||
- '**'
|
||||
- '!README*'
|
||||
@@ -27,6 +28,7 @@ on:
|
||||
branches:
|
||||
- main
|
||||
- v[0-9]+-stable
|
||||
+ - rhel-9.*.0
|
||||
paths:
|
||||
- '**'
|
||||
- '!README*'
|
@ -0,0 +1,29 @@
|
||||
From e43eea1289a3a9a2ff38f6555d367d8d857b89c2 Mon Sep 17 00:00:00 2001
|
||||
From: msizanoen1 <msizanoen@qtmlabs.xyz>
|
||||
Date: Tue, 7 Feb 2023 20:17:21 +0700
|
||||
Subject: [PATCH] ci(mkosi): bump fedora version from 39 to 41
|
||||
|
||||
warning: /var/cache/dnf/fedora-ffabc111530caf27/packages/filesystem-3.18-6.fc39.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 18b8e74c: NOKEY
|
||||
|
||||
Error: GPG check FAILED
|
||||
```
|
||||
|
||||
rhel-only: ci
|
||||
|
||||
Related: RHEL-79977
|
||||
---
|
||||
.github/workflows/mkosi.yml | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/.github/workflows/mkosi.yml b/.github/workflows/mkosi.yml
|
||||
index aac559401d..808ae0148e 100644
|
||||
--- a/.github/workflows/mkosi.yml
|
||||
+++ b/.github/workflows/mkosi.yml
|
||||
@@ -83,6 +83,7 @@ jobs:
|
||||
[Host]
|
||||
ToolsTree=default
|
||||
ToolsTreeDistribution=fedora
|
||||
+ ToolsTreeRelease=41
|
||||
# Sometimes we run on a host with /dev/kvm, but it is broken, so explicitly disable it
|
||||
QemuKvm=no
|
||||
EOF
|
@ -0,0 +1,31 @@
|
||||
From 8a3390f1210561d360c45ee8d4b153d738c7ffb2 Mon Sep 17 00:00:00 2001
|
||||
From: Lukas Nykryn <lnykryn@redhat.com>
|
||||
Date: Mon, 14 Apr 2025 13:49:51 +0200
|
||||
Subject: [PATCH] man: mention that rhel-9.0 net naming scheme is the same as
|
||||
v251
|
||||
|
||||
Due to the rebase in 9.2 it is a bit confusing that we are documenting
|
||||
the newer upstream scheme and it might look 9.0 is based in v255.
|
||||
So let's explicitly mention that the scheme is the same as in v251.
|
||||
|
||||
Resolves: RHEL-86891
|
||||
|
||||
rhel-only: doc
|
||||
---
|
||||
man/systemd.net-naming-scheme.xml | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/man/systemd.net-naming-scheme.xml b/man/systemd.net-naming-scheme.xml
|
||||
index f2077ed02d..b5f4a0bc51 100644
|
||||
--- a/man/systemd.net-naming-scheme.xml
|
||||
+++ b/man/systemd.net-naming-scheme.xml
|
||||
@@ -462,7 +462,8 @@
|
||||
<varlistentry>
|
||||
<term><constant>rhel-9.0</constant></term>
|
||||
|
||||
- <listitem><para>Since version <constant>v247</constant> we no longer set
|
||||
+ <listitem><para>Same as naming scheme <constant>v251</constant>.</para>
|
||||
+ <para>Since version <constant>v247</constant> we no longer set
|
||||
<varname>ID_NET_NAME_SLOT</varname> if we detect that a PCI device associated with a slot is a PCI
|
||||
bridge as that would create naming conflict when there are more child devices on that bridge. Now,
|
||||
this is relaxed and we will use slot information to generate the name based on it but only if
|
@ -0,0 +1,92 @@
|
||||
From 2cec1ae89fbb51915426818e87d4aef2cb728abe Mon Sep 17 00:00:00 2001
|
||||
From: Mario Limonciello <mario.limonciello@amd.com>
|
||||
Date: Fri, 28 Mar 2025 09:19:23 -0500
|
||||
Subject: [PATCH] backlight: Drop support for actual_brightness
|
||||
|
||||
Some AMD systems have support for features like custom brightness
|
||||
curve or adaptive backlight management. These features allow the
|
||||
display driver to adjust the brightness based upon other factors
|
||||
than just the user brightness request.
|
||||
|
||||
The user's brightness request is indicated in the 'brightness' file
|
||||
but the effective result of the logic in the display driver is stored
|
||||
in the 'actual_brightness' file.
|
||||
|
||||
This leads to problems when shutting the system down because the value
|
||||
of 'actual_brightness' may be lower than 'brightness' and the wrong value
|
||||
gets stored for the next boot.
|
||||
|
||||
For example if the brightness a user requested was 150, the actual_brightness
|
||||
might be 130. So the next boot the brightness will be "set" to 130, but the
|
||||
actual brightness might be 115. If the user reboots again it will be set to 115
|
||||
for the next boot but the actual brightness might be 100. That is this gets worse
|
||||
and worse each reboot cycle until the system eventually boots up at minimum
|
||||
brightness.
|
||||
|
||||
Furthermore the kernel documentation indicates that the brightness and
|
||||
actual_brightness files are not guaranteed to be the same values.
|
||||
|
||||
Due to this; drop the use of 'actual_brightness' when saving/restoring brightness
|
||||
and instead rely only upon 'brightness'.
|
||||
|
||||
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
|
||||
|
||||
(cherry picked from commit 9a224c307b36610e3675390eb2620e74d0f4efb0)
|
||||
|
||||
Resolves: RHEL-86714
|
||||
---
|
||||
src/backlight/backlight.c | 35 +----------------------------------
|
||||
1 file changed, 1 insertion(+), 34 deletions(-)
|
||||
|
||||
diff --git a/src/backlight/backlight.c b/src/backlight/backlight.c
|
||||
index b6474d31a7..de5fecd849 100644
|
||||
--- a/src/backlight/backlight.c
|
||||
+++ b/src/backlight/backlight.c
|
||||
@@ -386,46 +386,13 @@ static bool shall_clamp(sd_device *d) {
|
||||
}
|
||||
|
||||
static int read_brightness(sd_device *device, unsigned max_brightness, unsigned *ret_brightness) {
|
||||
- const char *subsystem, *value;
|
||||
+ const char *value;
|
||||
unsigned brightness;
|
||||
int r;
|
||||
|
||||
assert(device);
|
||||
assert(ret_brightness);
|
||||
|
||||
- r = sd_device_get_subsystem(device, &subsystem);
|
||||
- if (r < 0)
|
||||
- return log_device_debug_errno(device, r, "Failed to get subsystem: %m");
|
||||
-
|
||||
- if (streq(subsystem, "backlight")) {
|
||||
- r = sd_device_get_sysattr_value(device, "actual_brightness", &value);
|
||||
- if (r == -ENOENT) {
|
||||
- log_device_debug_errno(device, r, "Failed to read 'actual_brightness' attribute, "
|
||||
- "fall back to use 'brightness' attribute: %m");
|
||||
- goto use_brightness;
|
||||
- }
|
||||
- if (r < 0)
|
||||
- return log_device_debug_errno(device, r, "Failed to read 'actual_brightness' attribute: %m");
|
||||
-
|
||||
- r = safe_atou(value, &brightness);
|
||||
- if (r < 0) {
|
||||
- log_device_debug_errno(device, r, "Failed to parse 'actual_brightness' attribute, "
|
||||
- "fall back to use 'brightness' attribute: %s", value);
|
||||
- goto use_brightness;
|
||||
- }
|
||||
-
|
||||
- if (brightness > max_brightness) {
|
||||
- log_device_debug(device, "actual_brightness=%u is larger than max_brightness=%u, "
|
||||
- "fall back to use 'brightness' attribute", brightness, max_brightness);
|
||||
- goto use_brightness;
|
||||
- }
|
||||
-
|
||||
- log_device_debug(device, "Current actual_brightness is %u", brightness);
|
||||
- *ret_brightness = brightness;
|
||||
- return 0;
|
||||
- }
|
||||
-
|
||||
-use_brightness:
|
||||
r = sd_device_get_sysattr_value(device, "brightness", &value);
|
||||
if (r < 0)
|
||||
return log_device_debug_errno(device, r, "Failed to read 'brightness' attribute: %m");
|
@ -0,0 +1,34 @@
|
||||
From 03b9b0ad5e5b678ba108e8e7b72e773be51a19a7 Mon Sep 17 00:00:00 2001
|
||||
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
||||
Date: Fri, 19 May 2023 04:47:34 +0900
|
||||
Subject: [PATCH] unit: add conditions and deps to make oomd.socket and
|
||||
.service consistent
|
||||
|
||||
Fixes #27690.
|
||||
|
||||
(cherry picked from commit d0e3ae838f5417c7cda1cc32d944a32f55af2e96)
|
||||
|
||||
Resolves: RHEL-90417
|
||||
---
|
||||
units/systemd-oomd.socket | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/units/systemd-oomd.socket b/units/systemd-oomd.socket
|
||||
index 47cd0e7555..70eb6b7bc3 100644
|
||||
--- a/units/systemd-oomd.socket
|
||||
+++ b/units/systemd-oomd.socket
|
||||
@@ -11,7 +11,13 @@
|
||||
Description=Userspace Out-Of-Memory (OOM) Killer Socket
|
||||
Documentation=man:systemd-oomd.service(8)
|
||||
DefaultDependencies=no
|
||||
-Before=sockets.target
|
||||
+Before=sockets.target shutdown.target
|
||||
+Conflicts=shutdown.target
|
||||
+ConditionControlGroupController=v2
|
||||
+ConditionControlGroupController=memory
|
||||
+ConditionPathExists=/proc/pressure/cpu
|
||||
+ConditionPathExists=/proc/pressure/io
|
||||
+ConditionPathExists=/proc/pressure/memory
|
||||
|
||||
[Socket]
|
||||
ListenStream=/run/systemd/oom/io.system.ManagedOOM
|
@ -0,0 +1,55 @@
|
||||
From c51c192f303b3a17e8699c25610a79f1b40a350f Mon Sep 17 00:00:00 2001
|
||||
From: Jan Macku <jamacku@redhat.com>
|
||||
Date: Thu, 12 Jun 2025 12:54:26 +0200
|
||||
Subject: [PATCH] udev/net_id: introduce naming scheme for RHEL-9.7
|
||||
|
||||
rhel-only: policy
|
||||
|
||||
Resolves: RHEL-25516
|
||||
---
|
||||
man/systemd.net-naming-scheme.xml | 6 ++++++
|
||||
src/shared/netif-naming-scheme.c | 1 +
|
||||
src/shared/netif-naming-scheme.h | 1 +
|
||||
3 files changed, 8 insertions(+)
|
||||
|
||||
diff --git a/man/systemd.net-naming-scheme.xml b/man/systemd.net-naming-scheme.xml
|
||||
index b5f4a0bc51..34e8e46459 100644
|
||||
--- a/man/systemd.net-naming-scheme.xml
|
||||
+++ b/man/systemd.net-naming-scheme.xml
|
||||
@@ -520,6 +520,12 @@
|
||||
<listitem><para>Same as naming scheme <constant>rhel-9.5</constant>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
+ <varlistentry>
|
||||
+ <term><constant>rhel-9.7</constant></term>
|
||||
+
|
||||
+ <listitem><para>Same as naming scheme <constant>rhel-9.5</constant>.</para></listitem>
|
||||
+ </varlistentry>
|
||||
+
|
||||
</variablelist>
|
||||
|
||||
<para>By default <constant>rhel-9.0</constant> is used.</para>
|
||||
diff --git a/src/shared/netif-naming-scheme.c b/src/shared/netif-naming-scheme.c
|
||||
index 360a603581..a38c3f1e2f 100644
|
||||
--- a/src/shared/netif-naming-scheme.c
|
||||
+++ b/src/shared/netif-naming-scheme.c
|
||||
@@ -46,6 +46,7 @@ static const NamingScheme naming_schemes[] = {
|
||||
{ "rhel-9.4", NAMING_RHEL_9_4 },
|
||||
{ "rhel-9.5", NAMING_RHEL_9_5 },
|
||||
{ "rhel-9.6", NAMING_RHEL_9_6 },
|
||||
+ { "rhel-9.7", NAMING_RHEL_9_7 },
|
||||
/* … add more schemes here, as the logic to name devices is updated … */
|
||||
|
||||
EXTRA_NET_NAMING_MAP
|
||||
diff --git a/src/shared/netif-naming-scheme.h b/src/shared/netif-naming-scheme.h
|
||||
index c533d0f37f..3cba656707 100644
|
||||
--- a/src/shared/netif-naming-scheme.h
|
||||
+++ b/src/shared/netif-naming-scheme.h
|
||||
@@ -75,6 +75,7 @@ typedef enum NamingSchemeFlags {
|
||||
NAMING_RHEL_9_4 = NAMING_RHEL_9_3,
|
||||
NAMING_RHEL_9_5 = NAMING_RHEL_9_4 & ~NAMING_BRIDGE_MULTIFUNCTION_SLOT,
|
||||
NAMING_RHEL_9_6 = NAMING_RHEL_9_5,
|
||||
+ NAMING_RHEL_9_7 = NAMING_RHEL_9_5,
|
||||
|
||||
EXTRA_NET_NAMING_SCHEMES
|
||||
|
63
SOURCES/1119-Add-a-set-of-assertion-macros-to-tests.h.patch
Normal file
63
SOURCES/1119-Add-a-set-of-assertion-macros-to-tests.h.patch
Normal file
@ -0,0 +1,63 @@
|
||||
From abcac0e79a783e841ae6681899a46e1d9c3d3ab2 Mon Sep 17 00:00:00 2001
|
||||
From: Unique-Usman <usmanakinyemi202@gmail.com>
|
||||
Date: Sat, 16 Mar 2024 04:04:11 +0530
|
||||
Subject: [PATCH] Add a set of assertion macros to tests.h (ASSERT_OK(),
|
||||
ASSERT_EQ(), ASSERT_GE(), ASSERT_LE()) that log the failed condition before
|
||||
crashing and convert test-gpt.c test file to use them
|
||||
|
||||
[dtardon: Only the macro definitions have been backported.]
|
||||
|
||||
(cherry picked from commit e19186359a25ec56d1dd0a68def06aff1bbb19bb)
|
||||
|
||||
Related: RHEL-103753
|
||||
---
|
||||
src/shared/tests.h | 39 +++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 39 insertions(+)
|
||||
|
||||
diff --git a/src/shared/tests.h b/src/shared/tests.h
|
||||
index 3cf34d9bcc..97c83ce434 100644
|
||||
--- a/src/shared/tests.h
|
||||
+++ b/src/shared/tests.h
|
||||
@@ -143,3 +143,42 @@ static inline int run_test_table(void) {
|
||||
DEFINE_TEST_MAIN_FULL(log_level, intro, NULL)
|
||||
#define DEFINE_TEST_MAIN(log_level) \
|
||||
DEFINE_TEST_MAIN_FULL(log_level, NULL, NULL)
|
||||
+
|
||||
+#define ASSERT_OK(expr) \
|
||||
+ ({ \
|
||||
+ int _result = (expr); \
|
||||
+ if (_result < 0) { \
|
||||
+ log_error_errno("Assertion failed: %s (result: %d, error: %m)", #expr, _result); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
+#define ASSERT_EQ(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ int _expr1 = (expr1); \
|
||||
+ int _expr2 = (expr2); \
|
||||
+ if (_expr1 != _expr2) { \
|
||||
+ log_error("Assertion failed: expected %s == %s, but %d != %d", #expr1, #expr2, _expr1, _expr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
+#define ASSERT_GE(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ int _expr1 = (expr1); \
|
||||
+ int _expr2 = (expr2); \
|
||||
+ if (_expr1 < _expr2) { \
|
||||
+ log_error("Assertion failed: expected %s >= %s, but %d < %d", #expr1, #expr2, _expr1, _expr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
+#define ASSERT_LE(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ int _expr1 = (expr1); \
|
||||
+ int _expr2 = (expr2); \
|
||||
+ if (_expr1 > _expr2) { \
|
||||
+ log_error("Assertion failed: expected %s <= %s, but %d > %d", #expr1, #expr2, _expr1, _expr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
133
SOURCES/1120-Follow-up-with-the-PR-31819.patch
Normal file
133
SOURCES/1120-Follow-up-with-the-PR-31819.patch
Normal file
@ -0,0 +1,133 @@
|
||||
From f112f2e2fd1131188e3215d36bdc4c53cf7329dd Mon Sep 17 00:00:00 2001
|
||||
From: Unique-Usman <usmanakinyemi202@gmail.com>
|
||||
Date: Tue, 19 Mar 2024 18:20:29 +0530
|
||||
Subject: [PATCH] Follow up with the PR #31819
|
||||
|
||||
(cherry picked from commit c0cd99eee69fd9c0a66e7167784d01a49f93b13f)
|
||||
|
||||
Related: RHEL-103753
|
||||
---
|
||||
src/basic/macro.h | 13 +++++++
|
||||
src/shared/tests.h | 85 ++++++++++++++++++++++++++++------------------
|
||||
2 files changed, 65 insertions(+), 33 deletions(-)
|
||||
|
||||
diff --git a/src/basic/macro.h b/src/basic/macro.h
|
||||
index c2934f9951..8ed4270a14 100644
|
||||
--- a/src/basic/macro.h
|
||||
+++ b/src/basic/macro.h
|
||||
@@ -466,4 +466,17 @@ assert_cc(sizeof(dummy_t) == 0);
|
||||
((long)(_current_ - _entries_) < (long)ELEMENTSOF(_entries_)) && ({ entry = *_current_; true; }); \
|
||||
_current_++)
|
||||
|
||||
+#define DECIMAL_STR_FMT(x) _Generic((x), \
|
||||
+ char: "%c", \
|
||||
+ bool: "%d", \
|
||||
+ unsigned char: "%d", \
|
||||
+ short: "%hd", \
|
||||
+ unsigned short: "%hu", \
|
||||
+ int: "%d", \
|
||||
+ unsigned: "%u", \
|
||||
+ long: "%ld", \
|
||||
+ unsigned long: "%lu", \
|
||||
+ long long: "%lld", \
|
||||
+ unsigned long long: "%llu")
|
||||
+
|
||||
#include "log.h"
|
||||
diff --git a/src/shared/tests.h b/src/shared/tests.h
|
||||
index 97c83ce434..89248d171a 100644
|
||||
--- a/src/shared/tests.h
|
||||
+++ b/src/shared/tests.h
|
||||
@@ -144,41 +144,60 @@ static inline int run_test_table(void) {
|
||||
#define DEFINE_TEST_MAIN(log_level) \
|
||||
DEFINE_TEST_MAIN_FULL(log_level, NULL, NULL)
|
||||
|
||||
-#define ASSERT_OK(expr) \
|
||||
- ({ \
|
||||
- int _result = (expr); \
|
||||
- if (_result < 0) { \
|
||||
- log_error_errno("Assertion failed: %s (result: %d, error: %m)", #expr, _result); \
|
||||
- abort(); \
|
||||
- } \
|
||||
+#define ASSERT_OK(expr) \
|
||||
+ ({ \
|
||||
+ typeof(expr) _result = (expr); \
|
||||
+ if (_result < 0) { \
|
||||
+ log_error_errno(_result, "%s:%i: Assertion failed: %s: %m", \
|
||||
+ PROJECT_FILE, __LINE__, #expr); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
+/* DECIMAL_STR_FMT() uses _Generic which cannot be used in string concatenation so we have to format the
|
||||
+ * input into strings first and then format those into the final assertion message. */
|
||||
+
|
||||
+#define ASSERT_EQ(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ typeof(expr1) _expr1 = (expr1); \
|
||||
+ typeof(expr2) _expr2 = (expr2); \
|
||||
+ if (_expr1 != _expr2) { \
|
||||
+ char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
+ char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
+ xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
+ xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s == %s\", but \"%s != %s\"", \
|
||||
+ PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
})
|
||||
|
||||
-#define ASSERT_EQ(expr1, expr2) \
|
||||
- ({ \
|
||||
- int _expr1 = (expr1); \
|
||||
- int _expr2 = (expr2); \
|
||||
- if (_expr1 != _expr2) { \
|
||||
- log_error("Assertion failed: expected %s == %s, but %d != %d", #expr1, #expr2, _expr1, _expr2); \
|
||||
- abort(); \
|
||||
- } \
|
||||
+#define ASSERT_GE(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ typeof(expr1) _expr1 = (expr1); \
|
||||
+ typeof(expr2) _expr2 = (expr2); \
|
||||
+ if (_expr1 < _expr2) { \
|
||||
+ char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
+ char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
+ xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
+ xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s >= %s\", but \"%s < %s\"", \
|
||||
+ PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
})
|
||||
|
||||
-#define ASSERT_GE(expr1, expr2) \
|
||||
- ({ \
|
||||
- int _expr1 = (expr1); \
|
||||
- int _expr2 = (expr2); \
|
||||
- if (_expr1 < _expr2) { \
|
||||
- log_error("Assertion failed: expected %s >= %s, but %d < %d", #expr1, #expr2, _expr1, _expr2); \
|
||||
- abort(); \
|
||||
- } \
|
||||
- })
|
||||
-
|
||||
-#define ASSERT_LE(expr1, expr2) \
|
||||
- ({ \
|
||||
- int _expr1 = (expr1); \
|
||||
- int _expr2 = (expr2); \
|
||||
- if (_expr1 > _expr2) { \
|
||||
- log_error("Assertion failed: expected %s <= %s, but %d > %d", #expr1, #expr2, _expr1, _expr2); \
|
||||
- abort(); \
|
||||
- } \
|
||||
+#define ASSERT_LE(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ typeof(expr1) _expr1 = (expr1); \
|
||||
+ typeof(expr2) _expr2 = (expr2); \
|
||||
+ if (_expr1 > _expr2) { \
|
||||
+ char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
+ char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
+ xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
+ xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s <= %s\", but \"%s > %s\"", \
|
||||
+ PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
})
|
@ -0,0 +1,201 @@
|
||||
From a3e559fefefc61c27094fbe8718d29df81a9af6d Mon Sep 17 00:00:00 2001
|
||||
From: Unique-Usman <usmanakinyemi202@gmail.com>
|
||||
Date: Wed, 20 Mar 2024 23:05:55 +0530
|
||||
Subject: [PATCH] Added more ASSERT macro and also make some test file to use
|
||||
them
|
||||
|
||||
[dtardon: Only the macro definitions have been backported.]
|
||||
|
||||
(cherry picked from commit 5f0e4d2fb4188b58dd24c749a732faf6fef1f75b)
|
||||
|
||||
Related: RHEL-103753
|
||||
---
|
||||
src/shared/tests.h | 170 ++++++++++++++++++++++++++++++++++-----------
|
||||
1 file changed, 131 insertions(+), 39 deletions(-)
|
||||
|
||||
diff --git a/src/shared/tests.h b/src/shared/tests.h
|
||||
index 89248d171a..8a3b928dfd 100644
|
||||
--- a/src/shared/tests.h
|
||||
+++ b/src/shared/tests.h
|
||||
@@ -154,50 +154,142 @@ static inline int run_test_table(void) {
|
||||
} \
|
||||
})
|
||||
|
||||
+#define ASSERT_TRUE(expr) \
|
||||
+ ({ \
|
||||
+ if (!(expr)) { \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s\" to be true", \
|
||||
+ PROJECT_FILE, __LINE__, #expr); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
+#define ASSERT_FALSE(expr) \
|
||||
+ ({ \
|
||||
+ if ((expr)) { \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s\" to be false", \
|
||||
+ PROJECT_FILE, __LINE__, #expr); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
+#define ASSERT_NULL(expr) \
|
||||
+ ({ \
|
||||
+ if ((expr) != NULL) { \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s\" to be NULL", \
|
||||
+ PROJECT_FILE, __LINE__, #expr); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
+#define ASSERT_NOT_NULL(expr) \
|
||||
+ ({ \
|
||||
+ if ((expr) == NULL) { \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s\" to be not NULL", \
|
||||
+ PROJECT_FILE, __LINE__, #expr); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
+#define ASSERT_STREQ(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ const char* _expr1 = (expr1); \
|
||||
+ const char* _expr2 = (expr2); \
|
||||
+ if (strcmp(_expr1, _expr2) != 0) { \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s == %s\", but \"%s != %s\"", \
|
||||
+ PROJECT_FILE, __LINE__, #expr1, #expr2, _expr1, _expr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
/* DECIMAL_STR_FMT() uses _Generic which cannot be used in string concatenation so we have to format the
|
||||
* input into strings first and then format those into the final assertion message. */
|
||||
|
||||
-#define ASSERT_EQ(expr1, expr2) \
|
||||
- ({ \
|
||||
- typeof(expr1) _expr1 = (expr1); \
|
||||
- typeof(expr2) _expr2 = (expr2); \
|
||||
- if (_expr1 != _expr2) { \
|
||||
- char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
- char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
- xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
- xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
- log_error("%s:%i: Assertion failed: expected \"%s == %s\", but \"%s != %s\"", \
|
||||
- PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
- abort(); \
|
||||
- } \
|
||||
+#define ASSERT_EQ(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ typeof(expr1) _expr1 = (expr1); \
|
||||
+ typeof(expr2) _expr2 = (expr2); \
|
||||
+ if (_expr1 != _expr2) { \
|
||||
+ char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
+ char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
+ xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
+ xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s == %s\", but \"%s != %s\"", \
|
||||
+ PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
+#define ASSERT_GE(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ typeof(expr1) _expr1 = (expr1); \
|
||||
+ typeof(expr2) _expr2 = (expr2); \
|
||||
+ if (_expr1 < _expr2) { \
|
||||
+ char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
+ char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
+ xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
+ xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s >= %s\", but \"%s < %s\"", \
|
||||
+ PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
+#define ASSERT_LE(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ typeof(expr1) _expr1 = (expr1); \
|
||||
+ typeof(expr2) _expr2 = (expr2); \
|
||||
+ if (_expr1 > _expr2) { \
|
||||
+ char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
+ char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
+ xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
+ xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s <= %s\", but \"%s > %s\"", \
|
||||
+ PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
+ })
|
||||
+
|
||||
+#define ASSERT_NE(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ typeof(expr1) _expr1 = (expr1); \
|
||||
+ typeof(expr2) _expr2 = (expr2); \
|
||||
+ if (_expr1 == _expr2) { \
|
||||
+ char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
+ char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
+ xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
+ xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s != %s\", but \"%s == %s\"", \
|
||||
+ PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
})
|
||||
|
||||
-#define ASSERT_GE(expr1, expr2) \
|
||||
- ({ \
|
||||
- typeof(expr1) _expr1 = (expr1); \
|
||||
- typeof(expr2) _expr2 = (expr2); \
|
||||
- if (_expr1 < _expr2) { \
|
||||
- char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
- char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
- xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
- xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
- log_error("%s:%i: Assertion failed: expected \"%s >= %s\", but \"%s < %s\"", \
|
||||
- PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
- abort(); \
|
||||
- } \
|
||||
+#define ASSERT_GT(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ typeof(expr1) _expr1 = (expr1); \
|
||||
+ typeof(expr2) _expr2 = (expr2); \
|
||||
+ if (!(_expr1 > _expr2)) { \
|
||||
+ char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
+ char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
+ xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
+ xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s > %s\", but \"%s <= %s\"", \
|
||||
+ PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
})
|
||||
|
||||
-#define ASSERT_LE(expr1, expr2) \
|
||||
- ({ \
|
||||
- typeof(expr1) _expr1 = (expr1); \
|
||||
- typeof(expr2) _expr2 = (expr2); \
|
||||
- if (_expr1 > _expr2) { \
|
||||
- char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
- char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
- xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
- xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
- log_error("%s:%i: Assertion failed: expected \"%s <= %s\", but \"%s > %s\"", \
|
||||
- PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
- abort(); \
|
||||
- } \
|
||||
+#define ASSERT_LT(expr1, expr2) \
|
||||
+ ({ \
|
||||
+ typeof(expr1) _expr1 = (expr1); \
|
||||
+ typeof(expr2) _expr2 = (expr2); \
|
||||
+ if (!(_expr1 < _expr2)) { \
|
||||
+ char _sexpr1[DECIMAL_STR_MAX(typeof(expr1))]; \
|
||||
+ char _sexpr2[DECIMAL_STR_MAX(typeof(expr2))]; \
|
||||
+ xsprintf(_sexpr1, DECIMAL_STR_FMT(_expr1), _expr1); \
|
||||
+ xsprintf(_sexpr2, DECIMAL_STR_FMT(_expr2), _expr2); \
|
||||
+ log_error("%s:%i: Assertion failed: expected \"%s < %s\", but \"%s >= %s\"", \
|
||||
+ PROJECT_FILE, __LINE__, #expr1, #expr2, _sexpr1, _sexpr2); \
|
||||
+ abort(); \
|
||||
+ } \
|
||||
})
|
@ -0,0 +1,37 @@
|
||||
From 4ffef1fb9a00978b8f518ad5afd90cf293fe203e Mon Sep 17 00:00:00 2001
|
||||
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
||||
Date: Sun, 20 Jul 2025 02:12:00 +0900
|
||||
Subject: [PATCH] sd-event: drop inotify event from buffer when no event source
|
||||
is triggered
|
||||
|
||||
Even when we receive an inotify event, there is no relevant event source
|
||||
exists. In that case, we need to drop the event from the buffer,
|
||||
otherwise we cannot escape from the loop.
|
||||
|
||||
Fixes #38265.
|
||||
|
||||
(cherry picked from commit 064b9b2bb3544707171662f548677259c3d6aa7f)
|
||||
|
||||
Resolves: RHEL-103753
|
||||
---
|
||||
src/libsystemd/sd-event/sd-event.c | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/libsystemd/sd-event/sd-event.c b/src/libsystemd/sd-event/sd-event.c
|
||||
index f15115c57f..79b2fa6789 100644
|
||||
--- a/src/libsystemd/sd-event/sd-event.c
|
||||
+++ b/src/libsystemd/sd-event/sd-event.c
|
||||
@@ -3579,9 +3579,12 @@ static int event_inotify_data_process(sd_event *e, struct inotify_data *d) {
|
||||
}
|
||||
}
|
||||
|
||||
- /* Something pending now? If so, let's finish, otherwise let's read more. */
|
||||
+ /* Something pending now? If so, let's finish. */
|
||||
if (d->n_pending > 0)
|
||||
return 1;
|
||||
+
|
||||
+ /* otherwise, drop the event and let's read more */
|
||||
+ event_inotify_data_drop(e, d, sz);
|
||||
}
|
||||
|
||||
return 0;
|
63
SOURCES/1123-test-add-test-case-for-issue-38265.patch
Normal file
63
SOURCES/1123-test-add-test-case-for-issue-38265.patch
Normal file
@ -0,0 +1,63 @@
|
||||
From c6bf0ea0855a35977ba4d36c200bfa3756c2d743 Mon Sep 17 00:00:00 2001
|
||||
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
||||
Date: Sun, 20 Jul 2025 01:27:10 +0900
|
||||
Subject: [PATCH] test: add test case for issue #38265
|
||||
|
||||
(cherry picked from commit b92258eb229f84680b91e744e98d72429710770e)
|
||||
|
||||
Related: RHEL-103753
|
||||
---
|
||||
src/libsystemd/sd-event/test-event.c | 35 ++++++++++++++++++++++++++++
|
||||
1 file changed, 35 insertions(+)
|
||||
|
||||
diff --git a/src/libsystemd/sd-event/test-event.c b/src/libsystemd/sd-event/test-event.c
|
||||
index 246658d024..daf2ed3ec1 100644
|
||||
--- a/src/libsystemd/sd-event/test-event.c
|
||||
+++ b/src/libsystemd/sd-event/test-event.c
|
||||
@@ -7,6 +7,7 @@
|
||||
#include "alloc-util.h"
|
||||
#include "exec-util.h"
|
||||
#include "fd-util.h"
|
||||
+#include "fileio.h"
|
||||
#include "fs-util.h"
|
||||
#include "log.h"
|
||||
#include "macro.h"
|
||||
@@ -809,4 +810,38 @@ TEST(inotify_process_buffered_data) {
|
||||
assert_se(sd_event_wait(e, 0) == 0);
|
||||
}
|
||||
|
||||
+static int inotify_handler_issue_38265(sd_event_source *s, const struct inotify_event *event, void *userdata) {
|
||||
+ log_debug("Inotify event: mask=0x%x name=%s", event->mask, event->name);
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+TEST(inotify_issue_38265) {
|
||||
+ _cleanup_(rm_rf_physical_and_freep) char *t = NULL;
|
||||
+ _cleanup_(sd_event_source_unrefp) sd_event_source *a = NULL, *b = NULL;
|
||||
+ _cleanup_(sd_event_unrefp) sd_event *e = NULL;
|
||||
+ _cleanup_free_ char *p = NULL;
|
||||
+
|
||||
+ /* For issue #38265. */
|
||||
+
|
||||
+ ASSERT_OK(mkdtemp_malloc("/tmp/test-inotify-XXXXXX", &t));
|
||||
+
|
||||
+ ASSERT_OK(sd_event_default(&e));
|
||||
+
|
||||
+ /* Create inode data that watches IN_MODIFY */
|
||||
+ ASSERT_OK(sd_event_add_inotify(e, &a, t, IN_CREATE | IN_MODIFY, inotify_handler_issue_38265, NULL));
|
||||
+ ASSERT_OK(sd_event_add_inotify(e, &b, t, IN_CREATE, inotify_handler_issue_38265, NULL));
|
||||
+
|
||||
+ /* Then drop the event source that is interested in IN_MODIFY */
|
||||
+ ASSERT_NULL(a = sd_event_source_unref(a));
|
||||
+
|
||||
+ /* Trigger IN_MODIFY (of course with IN_CREATE) */
|
||||
+ ASSERT_NOT_NULL(p = path_join(t, "hoge"));
|
||||
+ ASSERT_OK(write_string_file(p, "aaa", WRITE_STRING_FILE_CREATE));
|
||||
+
|
||||
+ for (unsigned i = 1; i < 5; i++) {
|
||||
+ log_debug("Running event loop cycle %u to process inotify events...", i);
|
||||
+ ASSERT_OK(sd_event_run(e, USEC_PER_MSEC));
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
DEFINE_TEST_MAIN(LOG_DEBUG);
|
@ -0,0 +1,69 @@
|
||||
From 5ce6e9778a1f9708b4e52d143a0ed044a2a9e815 Mon Sep 17 00:00:00 2001
|
||||
From: Luca Boccassi <luca.boccassi@gmail.com>
|
||||
Date: Sun, 22 Dec 2024 13:31:36 +0000
|
||||
Subject: [PATCH] test: answer 2nd mdadm --create question for compat with new
|
||||
version
|
||||
|
||||
New version of mdadm now asks a second question, so send 'y' twice
|
||||
to it in the test scripts
|
||||
|
||||
[ 5.253483] TEST-64-UDEV-STORAGE.sh[684]: + echo y
|
||||
[ 5.254412] TEST-64-UDEV-STORAGE.sh[685]: + mdadm --create /dev/md/mdmirror --name mdmirror --uuid aaaaaaaa:bbbbbbbb:cccccccc:00000001 /dev/disk/by-id/scsi-0systemd_foobar_deadbeefmdadm0 /dev/disk/by-id/scsi-0systemd_foobar_deadbeefmdadm1 -v -f --level=1 --raid-devices=2
|
||||
[ 5.254759] TEST-64-UDEV-STORAGE.sh[685]: To optimalize recovery speed, it is recommended to enable write-indent bitmap, do you want to enable it now? [y/N]? mdadm: Note: this array has metadata at the start and
|
||||
[ 5.255085] TEST-64-UDEV-STORAGE.sh[685]: may not be suitable as a boot device. If you plan to
|
||||
[ 5.255418] TEST-64-UDEV-STORAGE.sh[685]: store '/boot' on this device please ensure that
|
||||
[ 5.255745] TEST-64-UDEV-STORAGE.sh[685]: your boot-loader understands md/v1.x metadata, or use
|
||||
[ 5.256285] TEST-64-UDEV-STORAGE.sh[685]: --metadata=0.90
|
||||
[ 5.256672] TEST-64-UDEV-STORAGE.sh[685]: mdadm: size set to 64512K
|
||||
[ 5.257063] TEST-64-UDEV-STORAGE.sh[685]: Continue creating array [y/N]? mdadm: create aborted.
|
||||
|
||||
This is backward compatible with the older version that asks just one
|
||||
question
|
||||
|
||||
(cherry picked from commit 16406420ea449b75e70a7dced05d7b98bc0f5376)
|
||||
|
||||
Related: RHEL-79977
|
||||
---
|
||||
test/units/testsuite-64.sh | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/test/units/testsuite-64.sh b/test/units/testsuite-64.sh
|
||||
index f7298ed0d6..c335ee64df 100755
|
||||
--- a/test/units/testsuite-64.sh
|
||||
+++ b/test/units/testsuite-64.sh
|
||||
@@ -888,7 +888,7 @@ testcase_mdadm_basic() {
|
||||
"/dev/disk/by-label/$part_name" # ext4 partition
|
||||
)
|
||||
# Create a simple RAID 1 with an ext4 filesystem
|
||||
- echo y | mdadm --create "$raid_dev" --name "$raid_name" --uuid "$uuid" /dev/disk/by-id/ata-foobar_deadbeefmdadm{0..1} -v -f --level=1 --raid-devices=2
|
||||
+ printf 'y\ny\n' | mdadm --create "$raid_dev" --name "$raid_name" --uuid "$uuid" /dev/disk/by-id/ata-foobar_deadbeefmdadm{0..1} -v -f --level=1 --raid-devices=2
|
||||
udevadm wait --settle --timeout=30 "$raid_dev"
|
||||
mkfs.ext4 -L "$part_name" "$raid_dev"
|
||||
udevadm wait --settle --timeout=30 "${expected_symlinks[@]}"
|
||||
@@ -917,7 +917,7 @@ testcase_mdadm_basic() {
|
||||
"/dev/disk/by-label/$part_name" # ext4 partition
|
||||
)
|
||||
# Create a simple RAID 5 with an ext4 filesystem
|
||||
- echo y | mdadm --create "$raid_dev" --name "$raid_name" --uuid "$uuid" /dev/disk/by-id/ata-foobar_deadbeefmdadm{0..2} -v -f --level=5 --raid-devices=3
|
||||
+ printf 'y\ny\n' | mdadm --create "$raid_dev" --name "$raid_name" --uuid "$uuid" /dev/disk/by-id/ata-foobar_deadbeefmdadm{0..2} -v -f --level=5 --raid-devices=3
|
||||
udevadm wait --settle --timeout=30 "$raid_dev"
|
||||
mkfs.ext4 -L "$part_name" "$raid_dev"
|
||||
udevadm wait --settle --timeout=30 "${expected_symlinks[@]}"
|
||||
@@ -957,7 +957,7 @@ testcase_mdadm_basic() {
|
||||
"/dev/disk/by-id/md-uuid-$uuid-part3"
|
||||
)
|
||||
# Create a simple RAID 10 with an ext4 filesystem
|
||||
- echo y | mdadm --create "$raid_dev" --name "$raid_name" --uuid "$uuid" /dev/disk/by-id/ata-foobar_deadbeefmdadm{0..3} -v -f --level=10 --raid-devices=4
|
||||
+ printf 'y\ny\n' | mdadm --create "$raid_dev" --name "$raid_name" --uuid "$uuid" /dev/disk/by-id/ata-foobar_deadbeefmdadm{0..3} -v -f --level=10 --raid-devices=4
|
||||
udevadm wait --settle --timeout=30 "$raid_dev"
|
||||
# Partition the raid device
|
||||
# Here, 'udevadm lock' is meaningless, as udevd does not lock MD devices.
|
||||
@@ -1010,7 +1010,7 @@ testcase_mdadm_lvm() {
|
||||
"/dev/disk/by-label/$part_name" # ext4 partition
|
||||
)
|
||||
# Create a RAID 10 with LVM + ext4
|
||||
- echo y | mdadm --create "$raid_dev" --name "$raid_name" --uuid "$uuid" /dev/disk/by-id/ata-foobar_deadbeefmdadmlvm{0..3} -v -f --level=10 --raid-devices=4
|
||||
+ printf 'y\ny\n' | mdadm --create "$raid_dev" --name "$raid_name" --uuid "$uuid" /dev/disk/by-id/ata-foobar_deadbeefmdadmlvm{0..3} -v -f --level=10 --raid-devices=4
|
||||
udevadm wait --settle --timeout=30 "$raid_dev"
|
||||
# Create an LVM on the MD
|
||||
lvm pvcreate -y "$raid_dev"
|
@ -0,0 +1,98 @@
|
||||
From 51a75e6643bc9fabd895e859a8abcf36dd371b38 Mon Sep 17 00:00:00 2001
|
||||
From: Luca BRUNO <luca.bruno@coreos.com>
|
||||
Date: Thu, 3 Nov 2022 15:11:00 +0000
|
||||
Subject: [PATCH] sysusers: cross-check user and group names too
|
||||
|
||||
This adds an additional name check when cross-matching new group
|
||||
entries against existing users, which allows coalescing entries
|
||||
matching both ID and name.
|
||||
It provides a small idempotence enhancement when creating groups
|
||||
in cases where matching user entries are in place. By fine-tuning
|
||||
the conflict detection logic, this avoids picking up new random
|
||||
IDs and correctly prefers configuration values instead.
|
||||
|
||||
(cherry picked from commit 4ae3e8c9dbd8aa25c404eb47e4e1962fe9b03c78)
|
||||
|
||||
Resolves: RHEL-72572
|
||||
---
|
||||
src/sysusers/sysusers.c | 28 +++++++++++++++++++---------
|
||||
1 file changed, 19 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/src/sysusers/sysusers.c b/src/sysusers/sysusers.c
|
||||
index 08b005e6be..e2533e0128 100644
|
||||
--- a/src/sysusers/sysusers.c
|
||||
+++ b/src/sysusers/sysusers.c
|
||||
@@ -1175,22 +1175,32 @@ static int add_user(Item *i) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
-static int gid_is_ok(gid_t gid, bool check_with_uid) {
|
||||
+static int gid_is_ok(gid_t gid, const char *groupname, bool check_with_uid) {
|
||||
struct group *g;
|
||||
struct passwd *p;
|
||||
+ Item *user;
|
||||
+ char *username;
|
||||
+
|
||||
+ assert(groupname);
|
||||
|
||||
if (ordered_hashmap_get(todo_gids, GID_TO_PTR(gid)))
|
||||
return 0;
|
||||
|
||||
/* Avoid reusing gids that are already used by a different user */
|
||||
- if (check_with_uid && ordered_hashmap_get(todo_uids, UID_TO_PTR(gid)))
|
||||
- return 0;
|
||||
+ if (check_with_uid) {
|
||||
+ user = ordered_hashmap_get(todo_uids, UID_TO_PTR(gid));
|
||||
+ if (user && !streq(user->name, groupname))
|
||||
+ return 0;
|
||||
+ }
|
||||
|
||||
if (hashmap_contains(database_by_gid, GID_TO_PTR(gid)))
|
||||
return 0;
|
||||
|
||||
- if (check_with_uid && hashmap_contains(database_by_uid, UID_TO_PTR(gid)))
|
||||
- return 0;
|
||||
+ if (check_with_uid) {
|
||||
+ username = hashmap_get(database_by_uid, UID_TO_PTR(gid));
|
||||
+ if (username && !streq(username, groupname))
|
||||
+ return 0;
|
||||
+ }
|
||||
|
||||
if (!arg_root) {
|
||||
errno = 0;
|
||||
@@ -1258,7 +1268,7 @@ static int add_group(Item *i) {
|
||||
|
||||
/* Try to use the suggested numeric GID */
|
||||
if (i->gid_set) {
|
||||
- r = gid_is_ok(i->gid, false);
|
||||
+ r = gid_is_ok(i->gid, i->name, false);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to verify GID " GID_FMT ": %m", i->gid);
|
||||
if (i->id_set_strict) {
|
||||
@@ -1281,7 +1291,7 @@ static int add_group(Item *i) {
|
||||
|
||||
/* Try to reuse the numeric uid, if there's one */
|
||||
if (!i->gid_set && i->uid_set) {
|
||||
- r = gid_is_ok((gid_t) i->uid, true);
|
||||
+ r = gid_is_ok((gid_t) i->uid, i->name, true);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to verify GID " GID_FMT ": %m", i->gid);
|
||||
if (r > 0) {
|
||||
@@ -1299,7 +1309,7 @@ static int add_group(Item *i) {
|
||||
if (c <= 0 || !uid_range_contains(uid_range, c))
|
||||
log_debug("Group ID " GID_FMT " of file not suitable for %s.", c, i->name);
|
||||
else {
|
||||
- r = gid_is_ok(c, true);
|
||||
+ r = gid_is_ok(c, i->name, true);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to verify GID " GID_FMT ": %m", i->gid);
|
||||
else if (r > 0) {
|
||||
@@ -1321,7 +1331,7 @@ static int add_group(Item *i) {
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "No free group ID available for %s.", i->name);
|
||||
|
||||
- r = gid_is_ok(search_uid, true);
|
||||
+ r = gid_is_ok(search_uid, i->name, true);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to verify GID " GID_FMT ": %m", i->gid);
|
||||
else if (r > 0)
|
@ -0,0 +1,51 @@
|
||||
From 02a1fae5ccbb5d9c76db336733aa15d706e4c2df Mon Sep 17 00:00:00 2001
|
||||
From: Luca BRUNO <luca.bruno@coreos.com>
|
||||
Date: Thu, 3 Nov 2022 15:11:01 +0000
|
||||
Subject: [PATCH] test-sysusers: check group creation with matching user entry
|
||||
|
||||
(cherry picked from commit 76ad8ef68d155d8ef4fc5bb59499dc95e39b9dfb)
|
||||
|
||||
Related: RHEL-72572
|
||||
---
|
||||
test/test-sysusers/test-15.expected-group | 1 +
|
||||
test/test-sysusers/test-15.expected-passwd | 1 +
|
||||
test/test-sysusers/test-15.initial-passwd | 1 +
|
||||
test/test-sysusers/test-15.input | 5 +++++
|
||||
4 files changed, 8 insertions(+)
|
||||
create mode 100644 test/test-sysusers/test-15.expected-group
|
||||
create mode 100644 test/test-sysusers/test-15.expected-passwd
|
||||
create mode 100644 test/test-sysusers/test-15.initial-passwd
|
||||
create mode 100644 test/test-sysusers/test-15.input
|
||||
|
||||
diff --git a/test/test-sysusers/test-15.expected-group b/test/test-sysusers/test-15.expected-group
|
||||
new file mode 100644
|
||||
index 0000000000..1dbf9013ee
|
||||
--- /dev/null
|
||||
+++ b/test/test-sysusers/test-15.expected-group
|
||||
@@ -0,0 +1 @@
|
||||
+root:x:0:
|
||||
diff --git a/test/test-sysusers/test-15.expected-passwd b/test/test-sysusers/test-15.expected-passwd
|
||||
new file mode 100644
|
||||
index 0000000000..a880bd497f
|
||||
--- /dev/null
|
||||
+++ b/test/test-sysusers/test-15.expected-passwd
|
||||
@@ -0,0 +1 @@
|
||||
+root::0:0::/root:/bin/sh
|
||||
diff --git a/test/test-sysusers/test-15.initial-passwd b/test/test-sysusers/test-15.initial-passwd
|
||||
new file mode 100644
|
||||
index 0000000000..a880bd497f
|
||||
--- /dev/null
|
||||
+++ b/test/test-sysusers/test-15.initial-passwd
|
||||
@@ -0,0 +1 @@
|
||||
+root::0:0::/root:/bin/sh
|
||||
diff --git a/test/test-sysusers/test-15.input b/test/test-sysusers/test-15.input
|
||||
new file mode 100644
|
||||
index 0000000000..cc46672e7f
|
||||
--- /dev/null
|
||||
+++ b/test/test-sysusers/test-15.input
|
||||
@@ -0,0 +1,5 @@
|
||||
+# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
+# Create proper group when matching user entry is in place.
|
||||
+#
|
||||
+#Type Name ID GECOS HOMEDIR
|
||||
+u root 0 "Super User" /root
|
82
SOURCES/1127-user-sessions-do-not-remove-etc-nologin.patch
Normal file
82
SOURCES/1127-user-sessions-do-not-remove-etc-nologin.patch
Normal file
@ -0,0 +1,82 @@
|
||||
From 01e0a19a9c38f1b935d627c9b02b2950e835b8c5 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
|
||||
Date: Sat, 25 Mar 2023 11:34:47 +0100
|
||||
Subject: [PATCH] user-sessions: do not remove /etc/nologin
|
||||
|
||||
pam_nologin looks for /etc/nologin and /run/nologin.
|
||||
user-sessions creates (and removes) /run/nologin, but also removes
|
||||
/etc/nologin. (This behaviour is unchanged since the introduction
|
||||
of the binary in e92787416c691c3f34f47349e5eae3fa68eae856.)
|
||||
|
||||
By not removing pam_nologin we fully drop compatibility with PAM < 1.1.
|
||||
This has the advantage that now /etc/nologin can be used by administrator to
|
||||
disable user logins, e.g. for extended maintanance. We already specified
|
||||
PAM >= 1.1.2 as dependency, so this was already covered.
|
||||
|
||||
The makes the code match the man page.
|
||||
|
||||
Fixes #26965.
|
||||
|
||||
(cherry picked from commit a78413baae0e999384b535d327203ebf417b1e24)
|
||||
|
||||
Resolves: RHEL-85467
|
||||
---
|
||||
src/shared/fileio-label.c | 12 +++++++++---
|
||||
src/user-sessions/user-sessions.c | 13 +++++--------
|
||||
2 files changed, 14 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/src/shared/fileio-label.c b/src/shared/fileio-label.c
|
||||
index d03b0548ec..572b8f62ad 100644
|
||||
--- a/src/shared/fileio-label.c
|
||||
+++ b/src/shared/fileio-label.c
|
||||
@@ -23,9 +23,15 @@ int write_string_file_atomic_label_ts(const char *fn, const char *line, struct t
|
||||
int create_shutdown_run_nologin_or_warn(void) {
|
||||
int r;
|
||||
|
||||
- /* This is used twice: once in systemd-user-sessions.service, in order to block logins when we actually go
|
||||
- * down, and once in systemd-logind.service when shutdowns are scheduled, and logins are to be turned off a bit
|
||||
- * in advance. We use the same wording of the message in both cases. */
|
||||
+ /* This is used twice: once in systemd-user-sessions.service, in order to block logins when we
|
||||
+ * actually go down, and once in systemd-logind.service when shutdowns are scheduled, and logins are
|
||||
+ * to be turned off a bit in advance. We use the same wording of the message in both cases.
|
||||
+ *
|
||||
+ * Traditionally, there was only /etc/nologin, and we managed that. Then, in PAM 1.1
|
||||
+ * support for /run/nologin was added as alternative
|
||||
+ * (https://github.com/linux-pam/linux-pam/commit/e9e593f6ddeaf975b7fe8446d184e6bc387d450b).
|
||||
+ * 13 years later we stopped managing /etc/nologin, leaving it for the administrator to manage.
|
||||
+ */
|
||||
|
||||
r = write_string_file_atomic_label("/run/nologin",
|
||||
"System is going down. Unprivileged users are not permitted to log in anymore. "
|
||||
diff --git a/src/user-sessions/user-sessions.c b/src/user-sessions/user-sessions.c
|
||||
index 6b7493fd88..37867ee3ed 100644
|
||||
--- a/src/user-sessions/user-sessions.c
|
||||
+++ b/src/user-sessions/user-sessions.c
|
||||
@@ -15,7 +15,7 @@
|
||||
#include "string-util.h"
|
||||
|
||||
static int run(int argc, char *argv[]) {
|
||||
- int r, k;
|
||||
+ int r;
|
||||
|
||||
if (argc != 2)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EINVAL),
|
||||
@@ -29,14 +29,11 @@ static int run(int argc, char *argv[]) {
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
- if (streq(argv[1], "start")) {
|
||||
- r = unlink_or_warn("/run/nologin");
|
||||
- k = unlink_or_warn("/etc/nologin");
|
||||
- if (r < 0)
|
||||
- return r;
|
||||
- return k;
|
||||
+ /* We only touch /run/nologin. See create_shutdown_run_nologin_or_warn() for details. */
|
||||
|
||||
- } else if (streq(argv[1], "stop"))
|
||||
+ if (streq(argv[1], "start"))
|
||||
+ return unlink_or_warn("/run/nologin");
|
||||
+ if (streq(argv[1], "stop"))
|
||||
return create_shutdown_run_nologin_or_warn();
|
||||
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "Unknown verb '%s'.", argv[1]);
|
244
SOURCES/1128-hwdb-f20-micmute.patch
Normal file
244
SOURCES/1128-hwdb-f20-micmute.patch
Normal file
@ -0,0 +1,244 @@
|
||||
From 73601626004ca070c7b8c05153838a31f5c5ad6d Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Mon, 9 Sep 2024 15:56:09 +0200
|
||||
Subject: [PATCH] =?UTF-8?q?hwdb:=20f20=20=E2=86=92=20micmute?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
See: #34323
|
||||
(cherry picked from commit d94efc09060bf627253119573df72799ed65e878)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 52 ++++++++++++++++++++---------------------
|
||||
1 file changed, 26 insertions(+), 26 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 069cd891d7..d616747e97 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -186,7 +186,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnPredator*PH*315-52:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMateB311-31*:pvr*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMateB311R-31*:pvr*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMateB311RN-31*:pvr*
|
||||
- KEYBOARD_KEY_8a=f20 # Microphone mute
|
||||
+ KEYBOARD_KEY_8a=micmute # Microphone mute
|
||||
|
||||
# Travelmate C300
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMate*C3[01]0*:*
|
||||
@@ -200,7 +200,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMate*C3[01]0*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMate*P648-G2-MG*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMate*P648-G3-M*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnTravelMate*P645-S*:*
|
||||
- KEYBOARD_KEY_8a=f20 # Microphone mute button; should be micmute
|
||||
+ KEYBOARD_KEY_8a=micmute # Microphone mute button
|
||||
|
||||
# on some models this isn't brightnessup
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pn*5210*:*
|
||||
@@ -223,7 +223,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnPackard*Bell*:pn*:*
|
||||
|
||||
# Swift SF314-511
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnSwiftSF314-511:pvr*
|
||||
- KEYBOARD_KEY_8a=f20 # Fn+F12, microphone mute
|
||||
+ KEYBOARD_KEY_8a=micmute # Fn+F12, microphone mute
|
||||
|
||||
# Predator PHN16-71
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnPredatorPHN16-71:*
|
||||
@@ -242,7 +242,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-47:pvr*
|
||||
|
||||
# Nitro AN515-58
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-58:pvr*
|
||||
- KEYBOARD_KEY_8a=f20 # Microphone mute button
|
||||
+ KEYBOARD_KEY_8a=micmute # Microphone mute button
|
||||
KEYBOARD_KEY_55=power
|
||||
|
||||
###########################################################
|
||||
@@ -283,11 +283,11 @@ evdev:name:Asus WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
|
||||
evdev:name:Eee PC WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
|
||||
evdev:name:Asus Laptop extra buttons:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
|
||||
KEYBOARD_KEY_6b=f21 # Touchpad Toggle
|
||||
- KEYBOARD_KEY_7c=f20 # Remap micmute to f20
|
||||
+ KEYBOARD_KEY_7c=micmute
|
||||
|
||||
# USB keyboard in Asus FX503VD
|
||||
evdev:input:b0003v0B05p1869*
|
||||
- KEYBOARD_KEY_ff31007c=f20 # Remap micmute to f20
|
||||
+ KEYBOARD_KEY_ff31007c=micmute
|
||||
|
||||
# Asus TF103C misses the home button in its PNP0C40 GPIO resources
|
||||
# causing the volume-button mappings to be off by one, correct this
|
||||
@@ -353,7 +353,7 @@ evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnNV4xPZ:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnV54x_6x_TU:*
|
||||
KEYBOARD_KEY_f7=f21 # Touchpad Toggle
|
||||
KEYBOARD_KEY_f8=f21 # Touchpad Toggle
|
||||
- KEYBOARD_KEY_81=f20 # Fn+4; Mic Mute
|
||||
+ KEYBOARD_KEY_81=micmute # Fn+4; Mic Mute
|
||||
|
||||
###########################################################
|
||||
# Compal
|
||||
@@ -498,17 +498,17 @@ evdev:name:Dell WMI hotkeys:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude*:*
|
||||
evdev:name:Dell WMI hotkeys:dmi:bvn*:bvr*:bd*:svnDell*:pnPrecision*:*
|
||||
# Dell XPS microphone mute
|
||||
evdev:name:Dell WMI hotkeys:dmi:bvn*:bvr*:bd*:svnDell*:pnXPS*:*
|
||||
- KEYBOARD_KEY_100150=f20 # Mic mute toggle, should be micmute
|
||||
+ KEYBOARD_KEY_100150=micmute # Mic mute toggle
|
||||
|
||||
# Dell Latitude privacy microphone mute
|
||||
evdev:name:Dell Privacy Driver:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude*:*
|
||||
# Dell Precision privacy microphone mute
|
||||
evdev:name:Dell Privacy Driver:dmi:bvn*:bvr*:bd*:svnDell*:pnPrecision*:*
|
||||
- KEYBOARD_KEY_120001=f20 # Mic mute toggle, should be micmute
|
||||
+ KEYBOARD_KEY_120001=micmute # Mic mute toggle
|
||||
|
||||
# Dell Professional Sound Bar AE515
|
||||
evdev:input:b0003v413CpA506*
|
||||
- KEYBOARD_KEY_b002f=f20 # Mic mute toggle, should be micmute
|
||||
+ KEYBOARD_KEY_b002f=micmute # Mic mute toggle
|
||||
|
||||
###########################################################
|
||||
# Everex
|
||||
@@ -694,7 +694,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pn*[sS][pP][eE][cC][tT][rR][eE]*x360Convert
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPSpectrex360Convertible13*:*
|
||||
# ENVY x360 13
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPENVYx360Convertible13*:*
|
||||
- KEYBOARD_KEY_82=f20 # Microphone mute button, should be micmute
|
||||
+ KEYBOARD_KEY_82=micmute # Microphone mute button
|
||||
|
||||
# Spectre x360 16 2022
|
||||
evdev:name:Intel HID events:dmi:bvn*:bvr*:bd*:svnHP*:pn*HP[sS][pP][eE][cC][tT][rR][eE]*x3602-in-1*:*
|
||||
@@ -707,7 +707,7 @@ evdev:name:Intel HID events:dmi:bvn*:bvr*:bd*:svnHP*:pnHPENVYx3602-in-1*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnHP*:pnHPElitex21013G3:*
|
||||
KEYBOARD_KEY_f8=unknown # rfkill is also reported by HP Wireless hotkeys
|
||||
KEYBOARD_KEY_64=calendar
|
||||
- KEYBOARD_KEY_81=f20 # Microphone mute button
|
||||
+ KEYBOARD_KEY_81=micmute # Microphone mute button
|
||||
KEYBOARD_KEY_ee=switchvideomode # Switch display outputs
|
||||
KEYBOARD_KEY_92=brightnessdown
|
||||
KEYBOARD_KEY_97=brightnessup
|
||||
@@ -813,7 +813,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHP*ProBook*:*
|
||||
# HP ZBook
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPZBook*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPZBook*:*
|
||||
- KEYBOARD_KEY_81=f20 # Fn+F8; Microphone mute button, should be micmute
|
||||
+ KEYBOARD_KEY_81=micmute # Fn+F8; Microphone mute button
|
||||
|
||||
# HP ZBook Studio G5
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPZBookStudioG5*:*
|
||||
@@ -826,7 +826,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPZBook15G2:*
|
||||
|
||||
# HP ProBook 11 G1
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPProBook11G1:*
|
||||
- KEYBOARD_KEY_81=f20 # Fn+F8; Microphone mute button, should be micmute
|
||||
+ KEYBOARD_KEY_81=micmute # Fn+F8; Microphone mute button
|
||||
KEYBOARD_KEY_d8=f21 # touchpad toggle
|
||||
KEYBOARD_KEY_d9=f21 # touchpad toggle
|
||||
|
||||
@@ -842,7 +842,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPEliteBookFolio1040G2:*
|
||||
# HP EliteBook Folio G1
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP:pnHPEliteBookFolioG1:*
|
||||
KEYBOARD_KEY_64=calendar
|
||||
- KEYBOARD_KEY_81=f20
|
||||
+ KEYBOARD_KEY_81=micmute
|
||||
|
||||
# HP EliteBook 845 G7
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPEliteBook845G7*:pvr*
|
||||
@@ -882,7 +882,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPProBook11G2*:pvr*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnHP*:pnHP*mt44*Mobile*Thin*Client*:*
|
||||
KEYBOARD_KEY_64=calendar # Calendar icon (Fn + F12)
|
||||
KEYBOARD_KEY_6d=displaytoggle # Display icon
|
||||
- KEYBOARD_KEY_81=f20 # Fn+F8; Microphone mute button, should be micmute
|
||||
+ KEYBOARD_KEY_81=micmute # Fn+F8; Microphone mute button
|
||||
KEYBOARD_KEY_85=unknown # lid close; also reported via special evdev
|
||||
KEYBOARD_KEY_f8=wlan # Wireless HW switch button
|
||||
|
||||
@@ -900,7 +900,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP:pnOMEN*:pvr*
|
||||
|
||||
# HP Dev One
|
||||
evdev:atkbd:dmi:*:rvnHP:rn8A78:*
|
||||
- KEYBOARD_KEY_81=f20 # Fn+F8; Microphone mute button
|
||||
+ KEYBOARD_KEY_81=micmute # Fn+F8; Microphone mute button
|
||||
KEYBOARD_KEY_f9=prog1 # Fn+F12; Programmable hotkey
|
||||
|
||||
# HP Victus
|
||||
@@ -937,7 +937,7 @@ evdev:input:b0005v03F0p854Ae044C*
|
||||
|
||||
# Huawei WMI hotkeys driver
|
||||
evdev:name:Huawei WMI hotkeys:dmi:bvn*:bvr*:bd*:svnHUAWEI:*
|
||||
- KEYBOARD_KEY_287=f20 # Microphone mute button, should be micmute
|
||||
+ KEYBOARD_KEY_287=micmute # Microphone mute button
|
||||
|
||||
# Huawei MACH-WX9 and EUL-WX9
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnHUAWEI*:pnMACH-WX9:*
|
||||
@@ -1030,7 +1030,7 @@ evdev:name:ThinkPad Extra Buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
|
||||
KEYBOARD_KEY_15=volumedown
|
||||
KEYBOARD_KEY_16=mute
|
||||
KEYBOARD_KEY_17=prog1
|
||||
- KEYBOARD_KEY_1a=f20 # Microphone mute button; should be micmute
|
||||
+ KEYBOARD_KEY_1a=micmute # Microphone mute button
|
||||
KEYBOARD_KEY_45=bookmarks
|
||||
KEYBOARD_KEY_46=selective_screenshot # Fn + PrtSc, on Windows: Snipping tool
|
||||
KEYBOARD_KEY_4a=prog3 # Fn + Right shift, on Windows: No idea
|
||||
@@ -1051,7 +1051,7 @@ evdev:input:b0003v17EFp6009*
|
||||
KEYBOARD_KEY_09001d=zoom # Fn+Space
|
||||
KEYBOARD_KEY_090011=prog1 # ThinkVantage button
|
||||
KEYBOARD_KEY_090015=camera # Fn+F6 headset/camera VoIP key ??
|
||||
- KEYBOARD_KEY_090010=f20 # Microphone mute button; should be micmute
|
||||
+ KEYBOARD_KEY_090010=micmute # Microphone mute button
|
||||
|
||||
# Lenovo 3000
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*3000*:pvr*
|
||||
@@ -1110,7 +1110,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnIBM*:pn18666TU:*
|
||||
# IdeaPad
|
||||
evdev:name:Ideapad extra buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
|
||||
KEYBOARD_KEY_0d=rfkill # airplane mode switch (toggle all wireless devices)
|
||||
- KEYBOARD_KEY_08=f20 # micmute
|
||||
+ KEYBOARD_KEY_08=micmute
|
||||
KEYBOARD_KEY_42=f23
|
||||
KEYBOARD_KEY_43=f22
|
||||
|
||||
@@ -1120,7 +1120,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*Y550*:pvr*
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*U300s*:pvr*
|
||||
KEYBOARD_KEY_f1=f21
|
||||
- KEYBOARD_KEY_ce=f20 # micmute
|
||||
+ KEYBOARD_KEY_ce=micmute
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO*:pn*IdeaPad*Z370*:pvr*
|
||||
# Lenovo IdeaPad Flex 5
|
||||
@@ -1150,7 +1150,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*Lenovo*V480*:pvr*
|
||||
# Lenovo ThinkCentre M800z/M820z/M920z AIO machines
|
||||
# key_scancode 00 is KEY_MICMUTE
|
||||
evdev:name:Microphone Mute Button:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
|
||||
- KEYBOARD_KEY_00=f20
|
||||
+ KEYBOARD_KEY_00=micmute
|
||||
|
||||
# enhanced USB keyboard
|
||||
evdev:input:b0003v04B3p301B*
|
||||
@@ -1549,7 +1549,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*:*
|
||||
KEYBOARD_KEY_e4=f21 # Fn+F3 Touchpad disable
|
||||
KEYBOARD_KEY_ec=email # envelope button
|
||||
KEYBOARD_KEY_ee=camera # Fn+F6 camera disable
|
||||
- KEYBOARD_KEY_f1=f20 # Microphone mute
|
||||
+ KEYBOARD_KEY_f1=micmute # Microphone mute
|
||||
KEYBOARD_KEY_f2=rotate_display # Rotate screen
|
||||
KEYBOARD_KEY_f6=wlan # satellite dish1
|
||||
KEYBOARD_KEY_f7=brightnessdown # Fn+F4
|
||||
@@ -1664,7 +1664,7 @@ evdev:name:AT Translated Set 2 keyboard:phys:sp/serio*/input*:ev:120013:*
|
||||
KEYBOARD_KEY_f3=f17
|
||||
KEYBOARD_KEY_f2=f18
|
||||
KEYBOARD_KEY_f1=f19
|
||||
- KEYBOARD_KEY_f0=f20 # micmute
|
||||
+ KEYBOARD_KEY_f0=micmute
|
||||
KEYBOARD_KEY_ef=f21
|
||||
KEYBOARD_KEY_ee=chat
|
||||
KEYBOARD_KEY_e4=chat
|
||||
@@ -1783,7 +1783,7 @@ evdev:input:b0003v258Ap001E*
|
||||
|
||||
# Plantronics .Audio 626 DSP
|
||||
evdev:input:b0003v047FpC006*
|
||||
- KEYBOARD_KEY_b002f=f20 # Microphone mute button; should be micmute
|
||||
+ KEYBOARD_KEY_b002f=micmute # Microphone mute button
|
||||
|
||||
###########################################################
|
||||
# Purism
|
432
SOURCES/1129-hwdb-f21-touchpad_toggle.patch
Normal file
432
SOURCES/1129-hwdb-f21-touchpad_toggle.patch
Normal file
@ -0,0 +1,432 @@
|
||||
From ba07b8f34792b0ac0249ab02452f2b419e8e03e3 Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Mon, 9 Sep 2024 16:10:09 +0200
|
||||
Subject: [PATCH] =?UTF-8?q?hwdb:=20f21=20=E2=86=92=20touchpad=5Ftoggle?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Similar to the previous commit.
|
||||
|
||||
(cherry picked from commit 27f33c743f57c0e544d8cccffb719f1b6cc38d23)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 106 ++++++++++++++++++++--------------------
|
||||
1 file changed, 53 insertions(+), 53 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index d616747e97..df578276b2 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -127,7 +127,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svneMachines:pneMachines*E725:*
|
||||
|
||||
# Acer kernel driver
|
||||
evdev:name:Acer WMI hotkeys:dmi:bvn*:bvr*:bd*:svn*:pnAcer*:*
|
||||
- KEYBOARD_KEY_82=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_82=touchpad_toggle # Touchpad toggle
|
||||
|
||||
# Aspire models
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnAspire*:*
|
||||
@@ -251,7 +251,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-58:pvr*
|
||||
|
||||
# Alienware/Dell reserves these keys; safe to apply on all their devices
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAlienware*:pn*:*
|
||||
- KEYBOARD_KEY_81=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_81=touchpad_toggle # Touchpad toggle
|
||||
KEYBOARD_KEY_8a=ejectcd
|
||||
KEYBOARD_KEY_bf=!prog1 # graphics amplifier, cable plug-in event
|
||||
KEYBOARD_KEY_c1=!prog2 # graphics amplifier, undock-button event
|
||||
@@ -268,7 +268,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAlienware*:pnM17xR3:*
|
||||
# Aquarius Cmp NS483
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAquarius*:pnCmp*NS483*:*
|
||||
KEYBOARD_KEY_56=backslash
|
||||
- KEYBOARD_KEY_76=f21 # Touchpad Toggle
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Touchpad Toggle
|
||||
|
||||
###########################################################
|
||||
# Asus
|
||||
@@ -282,7 +282,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnASUS:pn*:*
|
||||
evdev:name:Asus WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
|
||||
evdev:name:Eee PC WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
|
||||
evdev:name:Asus Laptop extra buttons:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
|
||||
- KEYBOARD_KEY_6b=f21 # Touchpad Toggle
|
||||
+ KEYBOARD_KEY_6b=touchpad_toggle # Touchpad Toggle
|
||||
KEYBOARD_KEY_7c=micmute
|
||||
|
||||
# USB keyboard in Asus FX503VD
|
||||
@@ -345,14 +345,14 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnNotebook:pnW65_67SZ:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnNS50_70MU:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnNV4XMB,ME,MZ:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnNS5x_NS7xPU:*
|
||||
- KEYBOARD_KEY_f7=f21 # Touchpad Toggle
|
||||
- KEYBOARD_KEY_f8=f21 # Touchpad Toggle
|
||||
+ KEYBOARD_KEY_f7=touchpad_toggle # Touchpad Toggle
|
||||
+ KEYBOARD_KEY_f8=touchpad_toggle # Touchpad Toggle
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnV5xTNC_TND_TNE:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnNV4xPZ:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnNotebook:pnV54x_6x_TU:*
|
||||
- KEYBOARD_KEY_f7=f21 # Touchpad Toggle
|
||||
- KEYBOARD_KEY_f8=f21 # Touchpad Toggle
|
||||
+ KEYBOARD_KEY_f7=touchpad_toggle # Touchpad Toggle
|
||||
+ KEYBOARD_KEY_f8=touchpad_toggle # Touchpad Toggle
|
||||
KEYBOARD_KEY_81=micmute # Fn+4; Mic Mute
|
||||
|
||||
###########################################################
|
||||
@@ -374,7 +374,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnCompaq*:pn*Evo*N*:*
|
||||
KEYBOARD_KEY_9f=homepage
|
||||
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:svnCompaq:pn*:pvr*:rvn*:rnN14KP6*
|
||||
- KEYBOARD_KEY_76=f21 # Fn+f2 toggle touchpad
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+f2 toggle touchpad
|
||||
|
||||
evdev:input:b0003v049Fp0051*
|
||||
evdev:input:b0003v049Fp008D*
|
||||
@@ -420,12 +420,12 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pn*:*
|
||||
KEYBOARD_KEY_99=nextsong # Front panel next song
|
||||
KEYBOARD_KEY_9a=setup # Tablet tools button
|
||||
KEYBOARD_KEY_9b=switchvideomode # Display toggle button
|
||||
- KEYBOARD_KEY_9e=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_9e=touchpad_toggle # Touchpad toggle
|
||||
KEYBOARD_KEY_a2=playpause # Front panel play/pause
|
||||
KEYBOARD_KEY_a4=stopcd # Front panel stop
|
||||
KEYBOARD_KEY_ed=media # MediaDirect button
|
||||
KEYBOARD_KEY_d8=screenlock # FIXME: Tablet lock button
|
||||
- KEYBOARD_KEY_d9=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_d9=touchpad_toggle # Touchpad toggle
|
||||
|
||||
#
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnInspiron*910:*
|
||||
@@ -467,7 +467,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnStudio*155[78]:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnPrecision*:*
|
||||
KEYBOARD_KEY_88=! # wireless switch
|
||||
- KEYBOARD_KEY_9e=!f21
|
||||
+ KEYBOARD_KEY_9e=!touchpad_toggle
|
||||
|
||||
# Dell Latitude E[67]*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnLatitude*E6*:*
|
||||
@@ -516,7 +516,7 @@ evdev:input:b0003v413CpA506*
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnEverex:pnXT5000*:*
|
||||
KEYBOARD_KEY_5c=media
|
||||
- KEYBOARD_KEY_65=f21 # Fn+F5 Touchpad toggle
|
||||
+ KEYBOARD_KEY_65=touchpad_toggle # Fn+F5 Touchpad toggle
|
||||
KEYBOARD_KEY_67=prog3 # Fan speed control button
|
||||
KEYBOARD_KEY_6f=brightnessup
|
||||
KEYBOARD_KEY_7f=brightnessdown
|
||||
@@ -555,7 +555,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnFUJITSU*:pn*AMILO*Pro*Edition*V3505*:*
|
||||
|
||||
# Amilo Pro v3205
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnFUJITSU*:pn*AMILO*Pro*V3205*:*
|
||||
- KEYBOARD_KEY_f4=f21 # FIXME: silent-mode decrease CPU/GPU clock
|
||||
+ KEYBOARD_KEY_f4=touchpad_toggle # FIXME: silent-mode decrease CPU/GPU clock
|
||||
KEYBOARD_KEY_f7=switchvideomode # Fn+F3
|
||||
|
||||
# Amilo Si 1520
|
||||
@@ -725,8 +725,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2230s*:*
|
||||
|
||||
# Presario
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*Presario*CQ*:*
|
||||
- KEYBOARD_KEY_d8=f21
|
||||
- KEYBOARD_KEY_d9=f21
|
||||
+ KEYBOARD_KEY_d8=touchpad_toggle
|
||||
+ KEYBOARD_KEY_d9=touchpad_toggle
|
||||
|
||||
# 2510p 2530p
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2510p*:*
|
||||
@@ -827,8 +827,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPZBook15G2:*
|
||||
# HP ProBook 11 G1
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPProBook11G1:*
|
||||
KEYBOARD_KEY_81=micmute # Fn+F8; Microphone mute button
|
||||
- KEYBOARD_KEY_d8=f21 # touchpad toggle
|
||||
- KEYBOARD_KEY_d9=f21 # touchpad toggle
|
||||
+ KEYBOARD_KEY_d8=touchpad_toggle # touchpad toggle
|
||||
+ KEYBOARD_KEY_d9=touchpad_toggle # touchpad toggle
|
||||
|
||||
# HP ZBook Studio G4
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP:pnHPZBookStudioG4:*
|
||||
@@ -998,7 +998,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnINVENTEC:pnSYMPHONY*6.0/7.0:*
|
||||
|
||||
# LEAP W502
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnJP-IK:pnLEAPW502:pvr*
|
||||
- KEYBOARD_KEY_76=f21 # touchpad toggle
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # touchpad toggle
|
||||
|
||||
###########################################################
|
||||
# Kvadra
|
||||
@@ -1006,7 +1006,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnJP-IK:pnLEAPW502:pvr*
|
||||
|
||||
# LE14U/LE15U
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnKVADRA*:pn*LE1*U*:*
|
||||
- KEYBOARD_KEY_76=f21 # Fn+F1 Toggle touchpad, sends meta+ctrl+toggle
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F1 Toggle touchpad, sends meta+ctrl+toggle
|
||||
|
||||
###########################################################
|
||||
# Lenovo
|
||||
@@ -1019,7 +1019,7 @@ evdev:name:ThinkPad Extra Buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
|
||||
KEYBOARD_KEY_03=sleep
|
||||
KEYBOARD_KEY_04=wlan
|
||||
KEYBOARD_KEY_06=switchvideomode
|
||||
- KEYBOARD_KEY_07=f21
|
||||
+ KEYBOARD_KEY_07=touchpad_toggle
|
||||
KEYBOARD_KEY_08=f24
|
||||
KEYBOARD_KEY_0b=suspend
|
||||
KEYBOARD_KEY_0f=brightnessup
|
||||
@@ -1044,7 +1044,7 @@ evdev:input:b0003v17EFp6009*
|
||||
KEYBOARD_KEY_090013=battery # Fn+F3
|
||||
KEYBOARD_KEY_090014=wlan # Fn+F5
|
||||
KEYBOARD_KEY_090016=switchvideomode # Fn+F7
|
||||
- KEYBOARD_KEY_090017=f21 # Fn+F8 touchpad toggle
|
||||
+ KEYBOARD_KEY_090017=touchpad_toggle # Fn+F8 touchpad toggle
|
||||
KEYBOARD_KEY_090019=suspend # Fn+F12
|
||||
KEYBOARD_KEY_09001a=brightnessup # Fn+Home
|
||||
KEYBOARD_KEY_09001b=brightnessdown # Fn+End
|
||||
@@ -1073,8 +1073,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pnS10-*:*
|
||||
KEYBOARD_KEY_b9=brightnessup # does nothing in BIOS
|
||||
KEYBOARD_KEY_ba=brightnessdown # does nothing in BIOS
|
||||
KEYBOARD_KEY_f1=camera # BIOS toggles camera power
|
||||
- KEYBOARD_KEY_f2=f21 # touchpad toggle (key alternately emits F2 and F3)
|
||||
- KEYBOARD_KEY_f3=f21
|
||||
+ KEYBOARD_KEY_f2=touchpad_toggle # touchpad toggle (key alternately emits F2 and F3)
|
||||
+ KEYBOARD_KEY_f3=touchpad_toggle
|
||||
|
||||
# Lenovo IdeaPad 5
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:pvrIdeaPad5*:*
|
||||
@@ -1119,7 +1119,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*Y550*:pvr*
|
||||
KEYBOARD_KEY_a3=play
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*U300s*:pvr*
|
||||
- KEYBOARD_KEY_f1=f21
|
||||
+ KEYBOARD_KEY_f1=touchpad_toggle
|
||||
KEYBOARD_KEY_ce=micmute
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO*:pn*IdeaPad*Z370*:pvr*
|
||||
@@ -1141,11 +1141,11 @@ evdev:atkbd:dmi:*:svnLENOVO:*:pvrLenovoYoga300-11IBR:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO*:pn*20378*:pvr*
|
||||
# Lenovo IdeaPad Z500
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO*:pn*5931*:pvr*
|
||||
- KEYBOARD_KEY_f3=f21 # Fn+F6 (toggle touchpad)
|
||||
+ KEYBOARD_KEY_f3=touchpad_toggle # Fn+F6 (toggle touchpad)
|
||||
|
||||
# V480
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*Lenovo*V480*:pvr*
|
||||
- KEYBOARD_KEY_f1=f21
|
||||
+ KEYBOARD_KEY_f1=touchpad_toggle
|
||||
|
||||
# Lenovo ThinkCentre M800z/M820z/M920z AIO machines
|
||||
# key_scancode 00 is KEY_MICMUTE
|
||||
@@ -1165,7 +1165,7 @@ evdev:input:b0003v04B3p301B*
|
||||
|
||||
# Lenovo Ideapad D330-10IGM
|
||||
evdev:name:SIPODEV Lenovo HID Device:dmi:*:svnLENOVO:*:pvrLenovoideapadD330-10IGM:*
|
||||
- KEYBOARD_KEY_70073=f21 # Fn+Supr (Touchpad toggle)
|
||||
+ KEYBOARD_KEY_70073=touchpad_toggle # Fn+Supr (Touchpad toggle)
|
||||
|
||||
evdev:name:SIPODEV Lenovo HID Device Consumer Control:dmi:*:svnLENOVO:*:pvrLenovoideapadD330-10IGM:*
|
||||
KEYBOARD_KEY_c00ff=fn_esc # Fn+Tab (FnLk toggle)
|
||||
@@ -1546,7 +1546,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*:*
|
||||
KEYBOARD_KEY_c2=ejectcd
|
||||
KEYBOARD_KEY_df=sleep # Fn+F12
|
||||
KEYBOARD_KEY_e2=bluetooth # satellite dish2
|
||||
- KEYBOARD_KEY_e4=f21 # Fn+F3 Touchpad disable
|
||||
+ KEYBOARD_KEY_e4=touchpad_toggle # Fn+F3 Touchpad disable
|
||||
KEYBOARD_KEY_ec=email # envelope button
|
||||
KEYBOARD_KEY_ee=camera # Fn+F6 camera disable
|
||||
KEYBOARD_KEY_f1=micmute # Microphone mute
|
||||
@@ -1558,7 +1558,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*:*
|
||||
|
||||
# MSI GF63 toggles touchpad using Fn+F3 where the keyboard key is 29
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMICRO-STAR*:pnGF63*:*
|
||||
- KEYBOARD_KEY_85=f21 # Toggle touchpad, sends meta+ctrl+toggle
|
||||
+ KEYBOARD_KEY_85=touchpad_toggle # Toggle touchpad, sends meta+ctrl+toggle
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMICRO-STAR*:pnGE60*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMICRO-STAR*:pnGE70*:*
|
||||
@@ -1586,7 +1586,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMICRO-STAR*:pnU90/U100:*
|
||||
# Keymaps MSI Prestige And MSI Modern FnKeys and Special keys
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*Prestige*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*Modern*:*
|
||||
- KEYBOARD_KEY_76=f21 # Toggle touchpad, sends meta+ctrl+toggle
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Toggle touchpad, sends meta+ctrl+toggle
|
||||
KEYBOARD_KEY_91=prog1 # Fn+F7 Creation Center, sometime F7
|
||||
KEYBOARD_KEY_f2=rotate_display # Fn+F12 Screen rotation
|
||||
KEYBOARD_KEY_8d=prog3 # Fn+A Change True Color selections
|
||||
@@ -1610,7 +1610,7 @@ evdev:name:AT Translated Set 2 keyboard:dmi:*:svnMicro-StarInternationalCo.,Ltd.
|
||||
|
||||
# VersaPro VG-S
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnNEC:pnPC-VK22TGSGS:pvr*
|
||||
- KEYBOARD_KEY_a8=f21 # Fn+Space touchpad toggle
|
||||
+ KEYBOARD_KEY_a8=touchpad_toggle # Fn+Space touchpad toggle
|
||||
KEYBOARD_KEY_67=brightnessdown # Fn+F7 brightness down
|
||||
KEYBOARD_KEY_65=brightnessup # Fn+F8 brightness up
|
||||
KEYBOARD_KEY_71=battery # Fn+F4 ECO
|
||||
@@ -1623,7 +1623,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnNEC:pnPC-VK22TGSGS:pvr*
|
||||
evdev:input:b0003v15BAp003C*
|
||||
KEYBOARD_KEY_70066=sleep # Fn+F1
|
||||
KEYBOARD_KEY_700f6=wlan # Fn+F2
|
||||
- KEYBOARD_KEY_700c7=f21 # Fn+F3 touchpad toggle
|
||||
+ KEYBOARD_KEY_700c7=touchpad_toggle # Fn+F3 touchpad toggle
|
||||
KEYBOARD_KEY_7006f=brightnessdown # Fn+F7
|
||||
KEYBOARD_KEY_70070=brightnessup # Fn+F8
|
||||
KEYBOARD_KEY_7006e=switchvideomode # Fn+F9
|
||||
@@ -1665,7 +1665,7 @@ evdev:name:AT Translated Set 2 keyboard:phys:sp/serio*/input*:ev:120013:*
|
||||
KEYBOARD_KEY_f2=f18
|
||||
KEYBOARD_KEY_f1=f19
|
||||
KEYBOARD_KEY_f0=micmute
|
||||
- KEYBOARD_KEY_ef=f21
|
||||
+ KEYBOARD_KEY_ef=touchpad_toggle
|
||||
KEYBOARD_KEY_ee=chat
|
||||
KEYBOARD_KEY_e4=chat
|
||||
KEYBOARD_KEY_dd=menu # Frame
|
||||
@@ -1707,7 +1707,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnONKYO*CORPORATION:pnONKYOPC:*
|
||||
KEYBOARD_KEY_f0=media # Fn+R
|
||||
KEYBOARD_KEY_f5=switchvideomode # Fn+E
|
||||
KEYBOARD_KEY_f6=camera # Fn+T
|
||||
- KEYBOARD_KEY_f7=f21 # Fn+Y (touchpad toggle)
|
||||
+ KEYBOARD_KEY_f7=touchpad_toggle # Fn+Y (touchpad toggle)
|
||||
KEYBOARD_KEY_f8=brightnessup # Fn+S
|
||||
KEYBOARD_KEY_f9=brightnessdown # Fn+A
|
||||
KEYBOARD_KEY_fb=wlan # Fn+J
|
||||
@@ -1948,7 +1948,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700T*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:sku*SCAI*:*
|
||||
KEYBOARD_KEY_81=!esc
|
||||
KEYBOARD_KEY_ce=!prog1 # Fn+F1 launch settings
|
||||
- KEYBOARD_KEY_76=f21 # Fn+F5 Touchpad toggle
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F5 Touchpad toggle
|
||||
KEYBOARD_KEY_ae=!volumedown # Fn+F7 volume down
|
||||
KEYBOARD_KEY_b0=!volumeup # Fn+F8 volume up
|
||||
KEYBOARD_KEY_ac=unknown # Fn+F9 multi-level keyboard backlight toggle - handled by samsung-galaxybook
|
||||
@@ -2001,7 +2001,7 @@ evdev:name:Sony Vaio Keys:dmi:bvn*:bvr*:bd*:svnSony*:pnVGN-FW250*:*
|
||||
KEYBOARD_KEY_10=suspend # Fn+F12
|
||||
|
||||
evdev:name:Sony Vaio Keys:dmi:bvn*:bvr*:bd*:svnSony*:pnVPC*:*
|
||||
- KEYBOARD_KEY_05=f21 # Fn+F1 -> KEY_F21 (The actual touchpad toggle)
|
||||
+ KEYBOARD_KEY_05=touchpad_toggle # Fn+F1
|
||||
KEYBOARD_KEY_0d=down # Fn+F9 zoomout
|
||||
KEYBOARD_KEY_0e=up # Fn+F10 zoomin
|
||||
|
||||
@@ -2010,19 +2010,19 @@ evdev:name:Sony Vaio Keys:dmi:bvn*:bvr*:bd*:svnSony*:pnVPC*:*
|
||||
###########################################################
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pn*:*
|
||||
- KEYBOARD_KEY_f7=f21 # Touchpad toggle
|
||||
- KEYBOARD_KEY_f8=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_f7=touchpad_toggle # Touchpad toggle
|
||||
+ KEYBOARD_KEY_f8=touchpad_toggle # Touchpad toggle
|
||||
|
||||
# Pangolin 12
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pnPangolin*:pvrpang12*
|
||||
- KEYBOARD_KEY_76=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Touchpad toggle
|
||||
|
||||
###########################################################
|
||||
# T-bao
|
||||
###########################################################
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnT-bao:pnTbookair:*
|
||||
- KEYBOARD_KEY_76=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Touchpad toggle
|
||||
|
||||
###########################################################
|
||||
# Toshiba
|
||||
@@ -2067,14 +2067,14 @@ evdev:name:Toshiba*input*device:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSATELLITEU940:*
|
||||
KEYBOARD_KEY_13c=brightnessdown
|
||||
KEYBOARD_KEY_13d=brightnessup
|
||||
KEYBOARD_KEY_13e=switchvideomode
|
||||
- KEYBOARD_KEY_13f=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_13f=touchpad_toggle # Touchpad toggle
|
||||
|
||||
# Satellite P75-A7200
|
||||
evdev:name:Toshiba*input*device:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSatellite*P75-A:*
|
||||
KEYBOARD_KEY_13c=brightnessdown
|
||||
KEYBOARD_KEY_13d=brightnessup
|
||||
KEYBOARD_KEY_13e=switchvideomode
|
||||
- KEYBOARD_KEY_13f=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_13f=touchpad_toggle # Touchpad toggle
|
||||
KEYBOARD_KEY_9e=wlan
|
||||
|
||||
# Portege Z830 ACPI quickstart buttons
|
||||
@@ -2085,7 +2085,7 @@ evdev:name:Quickstart Button 2:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnPORTEGEZ830:*
|
||||
KEYBOARD_KEY_1=prog2 # TOSHIBA Presentation button
|
||||
|
||||
evdev:name:Quickstart Button 3:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnPORTEGEZ830:*
|
||||
- KEYBOARD_KEY_1=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_1=touchpad_toggle # Touchpad toggle
|
||||
|
||||
###########################################################
|
||||
# VIA
|
||||
@@ -2099,7 +2099,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnVIA:pnK8N800:*
|
||||
###########################################################
|
||||
|
||||
evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:bd*:svnVIOS:pnLTH17:*
|
||||
- KEYBOARD_KEY_70073=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_70073=touchpad_toggle # Touchpad toggle
|
||||
|
||||
###########################################################
|
||||
# WeiHeng
|
||||
@@ -2107,7 +2107,7 @@ evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:bd*:svnVIOS:pnLTH17:*
|
||||
|
||||
# P325J
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnINET:pnP325J:*
|
||||
- KEYBOARD_KEY_76=f21 # Touchpad toggle
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Touchpad toggle
|
||||
|
||||
###########################################################
|
||||
# Xiaomi
|
||||
@@ -2234,7 +2234,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnViewSonic:pnVPAD10:*
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:bd*:svnPositivoBahia-VAIO:pnVJPW1[12]F11X*:pvr*:*
|
||||
# Vaio FE14 (VJFE41F11X, VJE42F11X, VJFE44F11X, VJFE54F11X)
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:bd*:svnPositivoBahia-VAIO:pnVJFE*:pvr*:*
|
||||
- KEYBOARD_KEY_76=f21 # Fn+F1 toggle touchpad
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F1 toggle touchpad
|
||||
|
||||
# VAIO VJFH52
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:bd*:svnPositivoBahia-VAIO:pnVJFH52F11X*:pvr*:*
|
||||
@@ -2250,23 +2250,23 @@ evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivoTecnologiaSA:pn*:pvr
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivoTecnologiaSA:pn*:pvr*:rvnPositivoTecnologiaSA:rnCF40CM-V2*
|
||||
# Positivo DUO (k116)
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivoTecnologiaSA:pn*:pvr*:rvnPositivoTecnologiaSA:rnK116*
|
||||
- KEYBOARD_KEY_76=f21 # Fn+F1 toggle touchpad
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F1 toggle touchpad
|
||||
|
||||
# Positivo (N14NPE-N, N15NPE-N)
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivo*:pn*:pvr*:rvnPositivo*:rnN1[45]NPE-N*
|
||||
- KEYBOARD_KEY_76=f21 # Fn+F1 toggle touchpad
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F1 toggle touchpad
|
||||
KEYBOARD_KEY_dd=search
|
||||
|
||||
# Positivo (N15EPE, N14EPE)
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivo*:pn*:pvr*:rvnPositivo*:rnN1[45]EPE*
|
||||
- KEYBOARD_KEY_76=f21 # Fn+F1 toggle touchpad
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+F1 toggle touchpad
|
||||
KEYBOARD_KEY_6e=search
|
||||
|
||||
# Positivo (CG15D)
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:svnPositivoTecnologiaSA:pn*:pvr*:rvn*:rnCG15D*
|
||||
# Positivo Motion (N14AP7, N14DP6, N14DP7, N14DP7-V2, N14DP9, N14JP6, N14KP6)
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:svnPositivoTecnologiaSA:pn*:pvr*:rvn*:rnN14[ADJK]P*
|
||||
- KEYBOARD_KEY_76=f21 # Fn+f2 toggle touchpad
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+f2 toggle touchpad
|
||||
KEYBOARD_KEY_67=prog1 # Programmable button
|
||||
KEYBOARD_KEY_68=prog2 # Programmable button
|
||||
KEYBOARD_KEY_69=prog3 # Programmable button
|
||||
@@ -2282,7 +2282,7 @@ evdev:name:SINO WEALTH USB KEYBOARD:dmi:bvn*:bvr*:svnPositivoInformaticaSA:pn*:p
|
||||
evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:br*:svnPositivoTecnologiaSA:pn*:pvr*:rvn*:rnN14EP6*
|
||||
# Positivo Motion (CW14Q01P) (CW14Q01P-V2)
|
||||
evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:svnPositivoTecnologiaSA:pn*:pvr*:rvn*:rnCW14Q01P*
|
||||
- KEYBOARD_KEY_70073=f21 # Fn+f2 toggle touchpad
|
||||
+ KEYBOARD_KEY_70073=touchpad_toggle # Fn+f2 toggle touchpad
|
||||
KEYBOARD_KEY_7006b=prog1 # Programmable button
|
||||
KEYBOARD_KEY_7006c=prog2 # Programmable button
|
||||
KEYBOARD_KEY_7006d=prog3 # Programmable button
|
||||
@@ -2293,7 +2293,7 @@ evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:svnPositivoTecnologiaSA:pn
|
||||
###########################################################
|
||||
# Multilaser Ultra (UL154)
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*bvr*:svnMultilaserIndustrial:pn*:pvr*:rvn*:rnUL154*
|
||||
- KEYBOARD_KEY_76=f21 # Fn+f2 toggle touchpad
|
||||
+ KEYBOARD_KEY_76=touchpad_toggle # Fn+f2 toggle touchpad
|
||||
|
||||
###########################################################
|
||||
# Other
|
171
SOURCES/1130-hwdb-f22-touchpad_on.patch
Normal file
171
SOURCES/1130-hwdb-f22-touchpad_on.patch
Normal file
@ -0,0 +1,171 @@
|
||||
From 2d3ad001325d120ad5435f450f9ebb4f843eb74d Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Mon, 9 Sep 2024 16:12:44 +0200
|
||||
Subject: [PATCH] =?UTF-8?q?hwdb:=20f22=20=E2=86=92=20touchpad=5Fon?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
(cherry picked from commit 7b649a12baa6e3bb7187fd211948d92b0949e4bf)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 34 +++++++++++++++++-----------------
|
||||
1 file changed, 17 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index df578276b2..c3b4a6bddc 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -116,7 +116,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svneMachines:pneMachines*E725:*
|
||||
KEYBOARD_KEY_d9=brightnessup # Fn+Right
|
||||
KEYBOARD_KEY_ee=brightnessup # Fn+Right
|
||||
KEYBOARD_KEY_ef=brightnessdown # Fn+Left
|
||||
- KEYBOARD_KEY_f1=f22 # Fn+F7 Touchpad toggle (off-to-on)
|
||||
+ KEYBOARD_KEY_f1=touchpad_on # Fn+F7 Touchpad toggle (off-to-on)
|
||||
KEYBOARD_KEY_f2=f23 # Fn+F7 Touchpad toggle (on-to-off)
|
||||
KEYBOARD_KEY_f3=prog2 # "P2" programmable button
|
||||
KEYBOARD_KEY_f4=prog1 # "P1" programmable button
|
||||
@@ -666,7 +666,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[pP][aA][vV][iI][lL][iI][oO
|
||||
KEYBOARD_KEY_88=media # FIXME: quick play
|
||||
KEYBOARD_KEY_b7=print
|
||||
KEYBOARD_KEY_d8=!f23 # touchpad off
|
||||
- KEYBOARD_KEY_d9=!f22 # touchpad on
|
||||
+ KEYBOARD_KEY_d9=!touchpad_on # touchpad on
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*Pavilion*dv7*Notebook*PC:*
|
||||
KEYBOARD_KEY_b7=print
|
||||
@@ -733,7 +733,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2510p*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2530p*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*G60*Notebook*PC:*
|
||||
KEYBOARD_KEY_d8=!f23 # touchpad off
|
||||
- KEYBOARD_KEY_d9=!f22 # touchpad on
|
||||
+ KEYBOARD_KEY_d9=!touchpad_on # touchpad on
|
||||
|
||||
# 2570p
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2570p*:*
|
||||
@@ -761,14 +761,14 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2760p*:*
|
||||
KEYBOARD_KEY_92=brightnessdown
|
||||
KEYBOARD_KEY_97=brightnessup
|
||||
KEYBOARD_KEY_d8=!f23 # touchpad off
|
||||
- KEYBOARD_KEY_d9=!f22 # touchpad on
|
||||
+ KEYBOARD_KEY_d9=!touchpad_on # touchpad on
|
||||
KEYBOARD_KEY_b3=brightness_auto # Auto brightness
|
||||
|
||||
# TX2
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[tT][xX]2*:*
|
||||
KEYBOARD_KEY_c2=media
|
||||
KEYBOARD_KEY_d8=!f23 # Toggle touchpad button on tx2 (OFF)
|
||||
- KEYBOARD_KEY_d9=!f22 # Toggle touchpad button on tx2 (ON)
|
||||
+ KEYBOARD_KEY_d9=!touchpad_on # Toggle touchpad button on tx2 (ON)
|
||||
|
||||
# Presario 2100
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnPresario*2100*:*
|
||||
@@ -794,7 +794,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*EliteBook*8460p:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHDX9494NR:*
|
||||
KEYBOARD_KEY_b2=www # Fn+F3
|
||||
KEYBOARD_KEY_d8=!f23 # touchpad off
|
||||
- KEYBOARD_KEY_d9=!f22 # touchpad on
|
||||
+ KEYBOARD_KEY_d9=!touchpad_on # touchpad on
|
||||
|
||||
# HP EliteBook 725 G2
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPLicrice:*
|
||||
@@ -837,7 +837,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP:pnHPZBookStudioG4:*
|
||||
# HP EliteBook Folio 1040 G2
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPEliteBookFolio1040G2:*
|
||||
KEYBOARD_KEY_d8=!f23 # touchpad off
|
||||
- KEYBOARD_KEY_d9=!f22 # touchpad on
|
||||
+ KEYBOARD_KEY_d9=!touchpad_on # touchpad on
|
||||
|
||||
# HP EliteBook Folio G1
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP:pnHPEliteBookFolioG1:*
|
||||
@@ -876,7 +876,7 @@ evdev:atkbd:dmi:bvn*:bvr*:svnHP*:pnHP*ProBook*455*G5*:*
|
||||
# HP ProBook 11G2
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPProBook11G2*:pvr*
|
||||
KEYBOARD_KEY_d8=!f23 # Fn+F2: touchpad off
|
||||
- KEYBOARD_KEY_d9=!f22 # Fn+F2: touchpad on
|
||||
+ KEYBOARD_KEY_d9=!touchpad_on # Fn+F2: touchpad on
|
||||
|
||||
# HP mt44 Mobile Thin Client
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnHP*:pnHP*mt44*Mobile*Thin*Client*:*
|
||||
@@ -1112,7 +1112,7 @@ evdev:name:Ideapad extra buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
|
||||
KEYBOARD_KEY_0d=rfkill # airplane mode switch (toggle all wireless devices)
|
||||
KEYBOARD_KEY_08=micmute
|
||||
KEYBOARD_KEY_42=f23
|
||||
- KEYBOARD_KEY_43=f22
|
||||
+ KEYBOARD_KEY_43=touchpad_on
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*Y550*:pvr*
|
||||
KEYBOARD_KEY_95=media
|
||||
@@ -1596,7 +1596,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*Modern*:*
|
||||
KEYBOARD_KEY_98=unknown # Lid open
|
||||
|
||||
evdev:name:MSI Laptop hotkeys:dmi:bvn*:bvr*:bd*:svn*:pnM[iI][cC][rR][oO]-S[tT][aA][rR]*:*
|
||||
- KEYBOARD_KEY_0213=f22
|
||||
+ KEYBOARD_KEY_0213=touchpad_on
|
||||
KEYBOARD_KEY_0214=f23
|
||||
|
||||
# MSI Claw
|
||||
@@ -1848,7 +1848,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*:*
|
||||
KEYBOARD_KEY_b4=!wlan # Fn+F9 (X60P)
|
||||
KEYBOARD_KEY_c5=!prog3 # Fn+F8 switch power mode (battery/dynamic/performance)
|
||||
KEYBOARD_KEY_d5=!wlan # Fn+F12 wlan/airplane switch
|
||||
- KEYBOARD_KEY_f7=!f22 # Fn+F10 Touchpad on
|
||||
+ KEYBOARD_KEY_f7=!touchpad_on # Fn+F10 Touchpad on
|
||||
KEYBOARD_KEY_f9=!f23 # Fn+F10 Touchpad off
|
||||
|
||||
# Series 3
|
||||
@@ -1862,7 +1862,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*355V[45]*:pvr*
|
||||
KEYBOARD_KEY_89=!brightnessdown # Fn+F2 brightness down
|
||||
KEYBOARD_KEY_88=!brightnessup # Fn+F3 brightness up
|
||||
KEYBOARD_KEY_82=!switchvideomode # Fn+F4 display toggle
|
||||
- KEYBOARD_KEY_f7=!f22 # Fn+F5 touchpad on
|
||||
+ KEYBOARD_KEY_f7=!touchpad_on # Fn+F5 touchpad on
|
||||
KEYBOARD_KEY_f9=!f23 # Fn+F5 touchpad off
|
||||
KEYBOARD_KEY_a0=!mute # Fn+F6 mute
|
||||
KEYBOARD_KEY_ae=!volumedown # Fn+F7 volume down
|
||||
@@ -1938,7 +1938,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pnSQ1US:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*SX20S*:*
|
||||
KEYBOARD_KEY_74=mute
|
||||
KEYBOARD_KEY_75=mute
|
||||
- KEYBOARD_KEY_77=f22 # Touchpad on
|
||||
+ KEYBOARD_KEY_77=touchpad_on # Touchpad on
|
||||
KEYBOARD_KEY_79=f23 # Touchpad off
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700T*:*
|
||||
@@ -2038,7 +2038,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSatellite*A110:*
|
||||
KEYBOARD_KEY_92=stop
|
||||
KEYBOARD_KEY_93=www
|
||||
KEYBOARD_KEY_94=media
|
||||
- KEYBOARD_KEY_9e=f22 # Touchpad on
|
||||
+ KEYBOARD_KEY_9e=touchpad_on # Touchpad on
|
||||
KEYBOARD_KEY_9f=f23 # Touchpad off
|
||||
KEYBOARD_KEY_b9=nextsong
|
||||
KEYBOARD_KEY_d9=brightnessup
|
||||
@@ -2052,7 +2052,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSatellite*M30X:*
|
||||
KEYBOARD_KEY_d9=brightnessup
|
||||
KEYBOARD_KEY_ee=screenlock
|
||||
KEYBOARD_KEY_93=media
|
||||
- KEYBOARD_KEY_9e=f22 # touchpad enable
|
||||
+ KEYBOARD_KEY_9e=touchpad_on # touchpad enable
|
||||
KEYBOARD_KEY_9f=f23 # touchpad disable
|
||||
|
||||
# Satellite P75-A
|
||||
@@ -2134,7 +2134,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnZepto:pnZnote:*
|
||||
KEYBOARD_KEY_95=brightnessdown # Fn+F4 Brightness Down
|
||||
KEYBOARD_KEY_91=brightnessup # Fn+F5 Brightness Up
|
||||
KEYBOARD_KEY_a5=f23 # Fn+F6 Disable Touchpad
|
||||
- KEYBOARD_KEY_a6=f22 # Fn+F6 Enable Touchpad
|
||||
+ KEYBOARD_KEY_a6=touchpad_on # Fn+F6 Enable Touchpad
|
||||
KEYBOARD_KEY_a7=bluetooth # Fn+F10 Enable Bluetooth
|
||||
KEYBOARD_KEY_a9=bluetooth # Fn+F10 Disable Bluetooth
|
||||
KEYBOARD_KEY_f1=wlan # RF Switch Off
|
||||
@@ -2239,7 +2239,7 @@ evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:bd*:svnPositivoBahia-VAIO:
|
||||
# VAIO VJFH52
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:bd*:svnPositivoBahia-VAIO:pnVJFH52F11X*:pvr*:*
|
||||
KEYBOARD_KEY_f7=f23 # Fn+F1 toggle touchpad off
|
||||
- KEYBOARD_KEY_f8=f22 # Fn+F1 toggle touchpad on
|
||||
+ KEYBOARD_KEY_f8=touchpad_on # Fn+F1 toggle touchpad on
|
||||
|
||||
###########################################################
|
||||
# Positivo
|
180
SOURCES/1131-hwdb-f23-touchpad_off.patch
Normal file
180
SOURCES/1131-hwdb-f23-touchpad_off.patch
Normal file
@ -0,0 +1,180 @@
|
||||
From 9348832fc2aa4359cab88bd90f1d1b358fcf0821 Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Mon, 9 Sep 2024 16:14:11 +0200
|
||||
Subject: [PATCH] =?UTF-8?q?hwdb:=20f23=20=E2=86=92=20touchpad=5Foff?=
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
(cherry picked from commit 74cbefe1cd162cb70aea7828e1e8cee7bf27218c)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 36 ++++++++++++++++++------------------
|
||||
1 file changed, 18 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index c3b4a6bddc..43a3232171 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -117,7 +117,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svneMachines:pneMachines*E725:*
|
||||
KEYBOARD_KEY_ee=brightnessup # Fn+Right
|
||||
KEYBOARD_KEY_ef=brightnessdown # Fn+Left
|
||||
KEYBOARD_KEY_f1=touchpad_on # Fn+F7 Touchpad toggle (off-to-on)
|
||||
- KEYBOARD_KEY_f2=f23 # Fn+F7 Touchpad toggle (on-to-off)
|
||||
+ KEYBOARD_KEY_f2=touchpad_off # Fn+F7 Touchpad toggle (on-to-off)
|
||||
KEYBOARD_KEY_f3=prog2 # "P2" programmable button
|
||||
KEYBOARD_KEY_f4=prog1 # "P1" programmable button
|
||||
KEYBOARD_KEY_f5=presentation
|
||||
@@ -665,7 +665,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[tT][aA][bB][lL][eE][tT]*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[pP][aA][vV][iI][lL][iI][oO][nN]*:*
|
||||
KEYBOARD_KEY_88=media # FIXME: quick play
|
||||
KEYBOARD_KEY_b7=print
|
||||
- KEYBOARD_KEY_d8=!f23 # touchpad off
|
||||
+ KEYBOARD_KEY_d8=!touchpad_off # touchpad off
|
||||
KEYBOARD_KEY_d9=!touchpad_on # touchpad on
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*Pavilion*dv7*Notebook*PC:*
|
||||
@@ -676,7 +676,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*Pavilion*dv7*Notebook*PC:
|
||||
|
||||
# Pavilion 13 x360 (Tablet mode and SYSRQ key)
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[pP][aA][vV][iI][lL][iI][oO][nN]*13*x360*:*
|
||||
- KEYBOARD_KEY_d7=!f23 # touchpad off
|
||||
+ KEYBOARD_KEY_d7=!touchpad_off # touchpad off
|
||||
KEYBOARD_KEY_d9=unknown
|
||||
KEYBOARD_KEY_d2=sysrq # Fn+Print = SYSRQ
|
||||
|
||||
@@ -732,7 +732,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*Presario*CQ*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2510p*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2530p*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*G60*Notebook*PC:*
|
||||
- KEYBOARD_KEY_d8=!f23 # touchpad off
|
||||
+ KEYBOARD_KEY_d8=!touchpad_off # touchpad off
|
||||
KEYBOARD_KEY_d9=!touchpad_on # touchpad on
|
||||
|
||||
# 2570p
|
||||
@@ -760,14 +760,14 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2760p*:*
|
||||
KEYBOARD_KEY_87=volumedown
|
||||
KEYBOARD_KEY_92=brightnessdown
|
||||
KEYBOARD_KEY_97=brightnessup
|
||||
- KEYBOARD_KEY_d8=!f23 # touchpad off
|
||||
+ KEYBOARD_KEY_d8=!touchpad_off # touchpad off
|
||||
KEYBOARD_KEY_d9=!touchpad_on # touchpad on
|
||||
KEYBOARD_KEY_b3=brightness_auto # Auto brightness
|
||||
|
||||
# TX2
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[tT][xX]2*:*
|
||||
KEYBOARD_KEY_c2=media
|
||||
- KEYBOARD_KEY_d8=!f23 # Toggle touchpad button on tx2 (OFF)
|
||||
+ KEYBOARD_KEY_d8=!touchpad_off # Toggle touchpad button on tx2 (OFF)
|
||||
KEYBOARD_KEY_d9=!touchpad_on # Toggle touchpad button on tx2 (ON)
|
||||
|
||||
# Presario 2100
|
||||
@@ -793,7 +793,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHP*EliteBook*8460p:*
|
||||
# HDX9494nr
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHDX9494NR:*
|
||||
KEYBOARD_KEY_b2=www # Fn+F3
|
||||
- KEYBOARD_KEY_d8=!f23 # touchpad off
|
||||
+ KEYBOARD_KEY_d8=!touchpad_off # touchpad off
|
||||
KEYBOARD_KEY_d9=!touchpad_on # touchpad on
|
||||
|
||||
# HP EliteBook 725 G2
|
||||
@@ -836,7 +836,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP:pnHPZBookStudioG4:*
|
||||
|
||||
# HP EliteBook Folio 1040 G2
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pnHPEliteBookFolio1040G2:*
|
||||
- KEYBOARD_KEY_d8=!f23 # touchpad off
|
||||
+ KEYBOARD_KEY_d8=!touchpad_off # touchpad off
|
||||
KEYBOARD_KEY_d9=!touchpad_on # touchpad on
|
||||
|
||||
# HP EliteBook Folio G1
|
||||
@@ -875,7 +875,7 @@ evdev:atkbd:dmi:bvn*:bvr*:svnHP*:pnHP*ProBook*455*G5*:*
|
||||
|
||||
# HP ProBook 11G2
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pnHPProBook11G2*:pvr*
|
||||
- KEYBOARD_KEY_d8=!f23 # Fn+F2: touchpad off
|
||||
+ KEYBOARD_KEY_d8=!touchpad_off # Fn+F2: touchpad off
|
||||
KEYBOARD_KEY_d9=!touchpad_on # Fn+F2: touchpad on
|
||||
|
||||
# HP mt44 Mobile Thin Client
|
||||
@@ -1111,7 +1111,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnIBM*:pn18666TU:*
|
||||
evdev:name:Ideapad extra buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
|
||||
KEYBOARD_KEY_0d=rfkill # airplane mode switch (toggle all wireless devices)
|
||||
KEYBOARD_KEY_08=micmute
|
||||
- KEYBOARD_KEY_42=f23
|
||||
+ KEYBOARD_KEY_42=touchpad_off
|
||||
KEYBOARD_KEY_43=touchpad_on
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*Y550*:pvr*
|
||||
@@ -1597,7 +1597,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*Modern*:*
|
||||
|
||||
evdev:name:MSI Laptop hotkeys:dmi:bvn*:bvr*:bd*:svn*:pnM[iI][cC][rR][oO]-S[tT][aA][rR]*:*
|
||||
KEYBOARD_KEY_0213=touchpad_on
|
||||
- KEYBOARD_KEY_0214=f23
|
||||
+ KEYBOARD_KEY_0214=touchpad_off
|
||||
|
||||
# MSI Claw
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnClawA1M:*
|
||||
@@ -1849,7 +1849,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*:*
|
||||
KEYBOARD_KEY_c5=!prog3 # Fn+F8 switch power mode (battery/dynamic/performance)
|
||||
KEYBOARD_KEY_d5=!wlan # Fn+F12 wlan/airplane switch
|
||||
KEYBOARD_KEY_f7=!touchpad_on # Fn+F10 Touchpad on
|
||||
- KEYBOARD_KEY_f9=!f23 # Fn+F10 Touchpad off
|
||||
+ KEYBOARD_KEY_f9=!touchpad_off # Fn+F10 Touchpad off
|
||||
|
||||
# Series 3
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*300E[457]*:*
|
||||
@@ -1863,7 +1863,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*355V[45]*:pvr*
|
||||
KEYBOARD_KEY_88=!brightnessup # Fn+F3 brightness up
|
||||
KEYBOARD_KEY_82=!switchvideomode # Fn+F4 display toggle
|
||||
KEYBOARD_KEY_f7=!touchpad_on # Fn+F5 touchpad on
|
||||
- KEYBOARD_KEY_f9=!f23 # Fn+F5 touchpad off
|
||||
+ KEYBOARD_KEY_f9=!touchpad_off # Fn+F5 touchpad off
|
||||
KEYBOARD_KEY_a0=!mute # Fn+F6 mute
|
||||
KEYBOARD_KEY_ae=!volumedown # Fn+F7 volume down
|
||||
KEYBOARD_KEY_b0=!volumeup # Fn+F8 volume up
|
||||
@@ -1939,7 +1939,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*SX20S*:*
|
||||
KEYBOARD_KEY_74=mute
|
||||
KEYBOARD_KEY_75=mute
|
||||
KEYBOARD_KEY_77=touchpad_on # Touchpad on
|
||||
- KEYBOARD_KEY_79=f23 # Touchpad off
|
||||
+ KEYBOARD_KEY_79=touchpad_off # Touchpad off
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*700T*:*
|
||||
KEYBOARD_KEY_ad=leftmeta
|
||||
@@ -2039,7 +2039,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSatellite*A110:*
|
||||
KEYBOARD_KEY_93=www
|
||||
KEYBOARD_KEY_94=media
|
||||
KEYBOARD_KEY_9e=touchpad_on # Touchpad on
|
||||
- KEYBOARD_KEY_9f=f23 # Touchpad off
|
||||
+ KEYBOARD_KEY_9f=touchpad_off # Touchpad off
|
||||
KEYBOARD_KEY_b9=nextsong
|
||||
KEYBOARD_KEY_d9=brightnessup
|
||||
KEYBOARD_KEY_ee=screenlock
|
||||
@@ -2053,7 +2053,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSatellite*M30X:*
|
||||
KEYBOARD_KEY_ee=screenlock
|
||||
KEYBOARD_KEY_93=media
|
||||
KEYBOARD_KEY_9e=touchpad_on # touchpad enable
|
||||
- KEYBOARD_KEY_9f=f23 # touchpad disable
|
||||
+ KEYBOARD_KEY_9f=touchpad_off # touchpad disable
|
||||
|
||||
# Satellite P75-A
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnSatellite*P75-A:*
|
||||
@@ -2133,7 +2133,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnZepto:pnZnote:*
|
||||
KEYBOARD_KEY_93=switchvideomode # Fn+F3 Toggle Video Output
|
||||
KEYBOARD_KEY_95=brightnessdown # Fn+F4 Brightness Down
|
||||
KEYBOARD_KEY_91=brightnessup # Fn+F5 Brightness Up
|
||||
- KEYBOARD_KEY_a5=f23 # Fn+F6 Disable Touchpad
|
||||
+ KEYBOARD_KEY_a5=touchpad_off # Fn+F6 Disable Touchpad
|
||||
KEYBOARD_KEY_a6=touchpad_on # Fn+F6 Enable Touchpad
|
||||
KEYBOARD_KEY_a7=bluetooth # Fn+F10 Enable Bluetooth
|
||||
KEYBOARD_KEY_a9=bluetooth # Fn+F10 Disable Bluetooth
|
||||
@@ -2238,7 +2238,7 @@ evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:bd*:svnPositivoBahia-VAIO:
|
||||
|
||||
# VAIO VJFH52
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:bvr*:bd*:svnPositivoBahia-VAIO:pnVJFH52F11X*:pvr*:*
|
||||
- KEYBOARD_KEY_f7=f23 # Fn+F1 toggle touchpad off
|
||||
+ KEYBOARD_KEY_f7=touchpad_off # Fn+F1 toggle touchpad off
|
||||
KEYBOARD_KEY_f8=touchpad_on # Fn+F1 toggle touchpad on
|
||||
|
||||
###########################################################
|
109
SOURCES/1132-hwdb-drop-some-now-redundant-mappings.patch
Normal file
109
SOURCES/1132-hwdb-drop-some-now-redundant-mappings.patch
Normal file
@ -0,0 +1,109 @@
|
||||
From b355747f522174cd67995f7d2cd7668482c72193 Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Wed, 11 Dec 2024 15:23:04 +0100
|
||||
Subject: [PATCH] hwdb: drop some now redundant mappings
|
||||
|
||||
According to @jwrdegoede these are now redundant, since the kernel
|
||||
drivers map these correctly already now that the f20/f21/f23 tweaks are
|
||||
gone.
|
||||
|
||||
Hence, let's just drop this.
|
||||
|
||||
All credit to Hans.
|
||||
|
||||
As per: https://github.com/systemd/systemd/pull/34325#pullrequestreview-2495482652
|
||||
|
||||
(cherry picked from commit f5ddba50f5b6282e27d530ff4b479ff1928edf0a)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 34 ----------------------------------
|
||||
1 file changed, 34 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 43a3232171..1566fd006e 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -125,10 +125,6 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svneMachines:pneMachines*E725:*
|
||||
KEYBOARD_KEY_f8=fn
|
||||
KEYBOARD_KEY_f9=prog1 # Launch NTI shadow
|
||||
|
||||
-# Acer kernel driver
|
||||
-evdev:name:Acer WMI hotkeys:dmi:bvn*:bvr*:bd*:svn*:pnAcer*:*
|
||||
- KEYBOARD_KEY_82=touchpad_toggle # Touchpad toggle
|
||||
-
|
||||
# Aspire models
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnAspire*:*
|
||||
KEYBOARD_KEY_84=bluetooth # sent when bluetooth module missing, and key pressed
|
||||
@@ -279,16 +275,6 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnASUS:pn*:*
|
||||
KEYBOARD_KEY_ee=volumedown
|
||||
KEYBOARD_KEY_ef=mute
|
||||
|
||||
-evdev:name:Asus WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
|
||||
-evdev:name:Eee PC WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
|
||||
-evdev:name:Asus Laptop extra buttons:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
|
||||
- KEYBOARD_KEY_6b=touchpad_toggle # Touchpad Toggle
|
||||
- KEYBOARD_KEY_7c=micmute
|
||||
-
|
||||
-# USB keyboard in Asus FX503VD
|
||||
-evdev:input:b0003v0B05p1869*
|
||||
- KEYBOARD_KEY_ff31007c=micmute
|
||||
-
|
||||
# Asus TF103C misses the home button in its PNP0C40 GPIO resources
|
||||
# causing the volume-button mappings to be off by one, correct this
|
||||
evdev:name:gpio-keys:phys:gpio-keys/input0:ev:3:dmi:*:svnASUSTeKCOMPUTERINC.:pnTF103C*:*
|
||||
@@ -935,10 +921,6 @@ evdev:input:b0005v03F0p854Ae044C*
|
||||
# Huawei
|
||||
##########################################################
|
||||
|
||||
-# Huawei WMI hotkeys driver
|
||||
-evdev:name:Huawei WMI hotkeys:dmi:bvn*:bvr*:bd*:svnHUAWEI:*
|
||||
- KEYBOARD_KEY_287=micmute # Microphone mute button
|
||||
-
|
||||
# Huawei MACH-WX9 and EUL-WX9
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnHUAWEI*:pnMACH-WX9:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnHUAWEI*:pnEUL-WX9:*
|
||||
@@ -1030,7 +1012,6 @@ evdev:name:ThinkPad Extra Buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
|
||||
KEYBOARD_KEY_15=volumedown
|
||||
KEYBOARD_KEY_16=mute
|
||||
KEYBOARD_KEY_17=prog1
|
||||
- KEYBOARD_KEY_1a=micmute # Microphone mute button
|
||||
KEYBOARD_KEY_45=bookmarks
|
||||
KEYBOARD_KEY_46=selective_screenshot # Fn + PrtSc, on Windows: Snipping tool
|
||||
KEYBOARD_KEY_4a=prog3 # Fn + Right shift, on Windows: No idea
|
||||
@@ -1110,9 +1091,6 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnIBM*:pn18666TU:*
|
||||
# IdeaPad
|
||||
evdev:name:Ideapad extra buttons:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*:*
|
||||
KEYBOARD_KEY_0d=rfkill # airplane mode switch (toggle all wireless devices)
|
||||
- KEYBOARD_KEY_08=micmute
|
||||
- KEYBOARD_KEY_42=touchpad_off
|
||||
- KEYBOARD_KEY_43=touchpad_on
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*Y550*:pvr*
|
||||
KEYBOARD_KEY_95=media
|
||||
@@ -1595,10 +1573,6 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*Modern*:*
|
||||
KEYBOARD_KEY_97=unknown # Lid close
|
||||
KEYBOARD_KEY_98=unknown # Lid open
|
||||
|
||||
-evdev:name:MSI Laptop hotkeys:dmi:bvn*:bvr*:bd*:svn*:pnM[iI][cC][rR][oO]-S[tT][aA][rR]*:*
|
||||
- KEYBOARD_KEY_0213=touchpad_on
|
||||
- KEYBOARD_KEY_0214=touchpad_off
|
||||
-
|
||||
# MSI Claw
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnClawA1M:*
|
||||
KEYBOARD_KEY_b9=f15 # Right Face Button
|
||||
@@ -1777,14 +1751,6 @@ evdev:input:b0003v258Ap001E*
|
||||
KEYBOARD_KEY_700a6=brightnessup
|
||||
KEYBOARD_KEY_70066=sleep
|
||||
|
||||
-###########################################################
|
||||
-# Plantronics
|
||||
-###########################################################
|
||||
-
|
||||
-# Plantronics .Audio 626 DSP
|
||||
-evdev:input:b0003v047FpC006*
|
||||
- KEYBOARD_KEY_b002f=micmute # Microphone mute button
|
||||
-
|
||||
###########################################################
|
||||
# Purism
|
||||
###########################################################
|
25
SOURCES/1133-hwdb-Add-micmute-for-System76.patch
Normal file
25
SOURCES/1133-hwdb-Add-micmute-for-System76.patch
Normal file
@ -0,0 +1,25 @@
|
||||
From bcd0ba3a3856250b2c2c0a6900cfec960dccb1c9 Mon Sep 17 00:00:00 2001
|
||||
From: Tim Crawford <tcrawford@system76.com>
|
||||
Date: Fri, 3 Jan 2025 11:32:15 -0700
|
||||
Subject: [PATCH] hwdb: Add micmute for System76
|
||||
|
||||
Signed-off-by: Tim Crawford <tcrawford@system76.com>
|
||||
(cherry picked from commit 83154c89952e1e5cb0c2460fa0e1479cf94336a0)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 1566fd006e..4a738d2e15 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -1976,6 +1976,7 @@ evdev:name:Sony Vaio Keys:dmi:bvn*:bvr*:bd*:svnSony*:pnVPC*:*
|
||||
###########################################################
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pn*:*
|
||||
+ KEYBOARD_KEY_81=micmute # Mic mute
|
||||
KEYBOARD_KEY_f7=touchpad_toggle # Touchpad toggle
|
||||
KEYBOARD_KEY_f8=touchpad_toggle # Touchpad toggle
|
||||
|
30
SOURCES/1134-hwdb-Add-newer-System76-Pangolins.patch
Normal file
30
SOURCES/1134-hwdb-Add-newer-System76-Pangolins.patch
Normal file
@ -0,0 +1,30 @@
|
||||
From 052508f86198baf4fd3cdaa598fa10d31c59bd1a Mon Sep 17 00:00:00 2001
|
||||
From: Tim Crawford <tcrawford@system76.com>
|
||||
Date: Fri, 3 Jan 2025 11:43:30 -0700
|
||||
Subject: [PATCH] hwdb: Add newer System76 Pangolins
|
||||
|
||||
Signed-off-by: Tim Crawford <tcrawford@system76.com>
|
||||
(cherry picked from commit bd07786b905ce9e390e7f9ca8826dbe7357e84b1)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 4a738d2e15..f31122ec22 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -1980,8 +1980,11 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pn*:*
|
||||
KEYBOARD_KEY_f7=touchpad_toggle # Touchpad toggle
|
||||
KEYBOARD_KEY_f8=touchpad_toggle # Touchpad toggle
|
||||
|
||||
-# Pangolin 12
|
||||
+# Pangolin
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pnPangolin*:pvrpang12*
|
||||
+evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pnPangolin*:pvrpang13*
|
||||
+evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pnPangolin*:pvrpang14*
|
||||
+evdev:atkbd:dmi:bvn*:bvr*:bd*:svnSystem76*:pnPangolin*:pvrpang15*
|
||||
KEYBOARD_KEY_76=touchpad_toggle # Touchpad toggle
|
||||
|
||||
###########################################################
|
@ -0,0 +1,29 @@
|
||||
From ac89647888650c447c7d24a70dcf79aae7eb4294 Mon Sep 17 00:00:00 2001
|
||||
From: Arnaudv6 <2178699-Arnaudv6@users.noreply.gitlab.com>
|
||||
Date: Mon, 6 Jan 2025 19:02:32 +0100
|
||||
Subject: [PATCH] hwdb: WALTOP International Corp. Slim Tablet Stylus
|
||||
|
||||
(cherry picked from commit a7cdd7fe08704dad04486c1c51a5d38dd4fcddad)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-evdev.hwdb | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-evdev.hwdb b/hwdb.d/60-evdev.hwdb
|
||||
index 65170ae1ce..db9aa7c307 100644
|
||||
--- a/hwdb.d/60-evdev.hwdb
|
||||
+++ b/hwdb.d/60-evdev.hwdb
|
||||
@@ -942,6 +942,12 @@ evdev:input:b0003v172Fp0031*
|
||||
EVDEV_ABS_00=0:10000:400
|
||||
EVDEV_ABS_01=0:6250:400
|
||||
|
||||
+# WALTOP International Corp. Slim Tablet Stylus
|
||||
+evdev:input:b0003v172Fp0034*
|
||||
+ EVDEV_ABS_00=0:20000:80
|
||||
+ EVDEV_ABS_01=0:12500:80
|
||||
+ EVDEV_ABS_24=0:1023:500
|
||||
+
|
||||
# WALTOP International Corp. Graphics Tablet
|
||||
evdev:input:b0003v172Fp0047*
|
||||
EVDEV_ABS_00=0:20000:80
|
@ -0,0 +1,30 @@
|
||||
From 77341a93d6cf1b49c1924fd489868e1befe85387 Mon Sep 17 00:00:00 2001
|
||||
From: honjow <honjow311@gmail.com>
|
||||
Date: Mon, 27 Jan 2025 03:22:19 +0800
|
||||
Subject: [PATCH] hwdb: add MSI Claw 8 AT Keyboard Scancodes (#36180)
|
||||
|
||||
This change maps the right face button to F15 and the left one to F16.
|
||||
Similar to #33669.
|
||||
|
||||
(cherry picked from commit 385ba2a3a34d38167a6493d523b38114629f23a4)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index f31122ec22..f9cdb26be5 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -1573,8 +1573,9 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*Modern*:*
|
||||
KEYBOARD_KEY_97=unknown # Lid close
|
||||
KEYBOARD_KEY_98=unknown # Lid open
|
||||
|
||||
-# MSI Claw
|
||||
+# MSI Claw, MSI Claw 8
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnClawA1M:*
|
||||
+evdev:name:AT Translated Set 2 keyboard:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnClaw8AI+A2VM:*
|
||||
KEYBOARD_KEY_b9=f15 # Right Face Button
|
||||
KEYBOARD_KEY_ba=f16 # Left Face Button
|
||||
|
@ -0,0 +1,80 @@
|
||||
From 6bcf12036819f2d7456ebd95eeb7642579cf089a Mon Sep 17 00:00:00 2001
|
||||
From: 16mc1r <16mc1r@users.noreply.github.com>
|
||||
Date: Mon, 27 Jan 2025 14:01:05 +0100
|
||||
Subject: [PATCH] Adds asus T103HAF rotation matrix to 60-sensor.hwdb (#36177)
|
||||
|
||||
Rotation Matrix to enable correct auto-rotation with
|
||||
[iio-sensor-proxy](https://gitlab.freedesktop.org/hadess/iio-sensor-proxy/)
|
||||
on an Asus Transformer Mini T103HAF with iio-sensor `HID-SENSOR-200073`.
|
||||
- Tested on KDE Plasma Mobile (Fedora 41), details see inxi report.
|
||||
|
||||
Device Details:
|
||||
- low powered 2in1 convertible with 10.1" screen size, 4core atom cpu
|
||||
and 4gb ram. Usefull as x86 based tablet with stylus for annotation and
|
||||
reading.
|
||||
- [official asus website for the
|
||||
device](https://www.asus.com/us/laptops/for-home/everyday-use/asus-transformer-mini-t103/)
|
||||
|
||||
```sh
|
||||
System:
|
||||
Host: ------ Kernel: 6.12.10-200.fc41.x86_64 arch: x86_64 bits: 64
|
||||
Console: pty pts/3 Distro: Fedora Linux 41 (KDE Plasma Mobile)
|
||||
Machine:
|
||||
Type: Detachable System: ASUSTeK product: T103HAF v: 1.0 serial: J1N0CX212087050
|
||||
Mobo: ASUSTeK model: T103HAF v: 1.0 serial: ---------- UEFI: American Megatrends
|
||||
v: T103HAF.306 date: 12/05/2017
|
||||
CPU:
|
||||
Info: quad core model: Intel Atom x5-Z8350 bits: 64
|
||||
Info:
|
||||
Memory: total: 4 GiB
|
||||
```
|
||||
|
||||
```sh
|
||||
P: /devices/pci0000:00/0000:00:0a.0/{33AECD58-B679-4E54-9BD9-A04D34F0C226}/001F:8086:0001.0004/HID-SENSOR-200073.3.auto/iio:device0
|
||||
M: iio:device0
|
||||
R: 0
|
||||
U: iio
|
||||
T: iio_device
|
||||
D: c 234:0
|
||||
N: iio:device0
|
||||
L: 0
|
||||
E: DEVPATH=/devices/pci0000:00/0000:00:0a.0/{33AECD58-B679-4E54-9BD9-A04D34F0C226}/001F:8086:0001.0004/HID-SENSOR-200073.3.auto/iio:device0
|
||||
E: DEVNAME=/dev/iio:device0
|
||||
E: DEVTYPE=iio_device
|
||||
E: MAJOR=234
|
||||
E: MINOR=0
|
||||
E: SUBSYSTEM=iio
|
||||
E: USEC_INITIALIZED=18119681
|
||||
E: ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, -1
|
||||
E: IIO_SENSOR_PROXY_TYPE=iio-poll-accel iio-buffer-accel
|
||||
E: SYSTEMD_WANTS=iio-sensor-proxy.service
|
||||
E: TAGS=:systemd:
|
||||
E: CURRENT_TAGS=:systemd:
|
||||
```
|
||||
- as requested in
|
||||
[60-sensor.hwdb](https://github.com/systemd/systemd/blob/ba0266b376d7cc5205d8a4a3d999aec13c24fe5d/hwdb.d/60-sensor.hwdb#L35)
|
||||
-
|
||||
[udevadm-info_103HAF.txt](https://github.com/user-attachments/files/18550448/udevadm-info_103HAF.txt)
|
||||
|
||||
(cherry picked from commit 61c176744e7ec78b0efc40f8eee7f462539f7464)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-sensor.hwdb | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-sensor.hwdb b/hwdb.d/60-sensor.hwdb
|
||||
index 8d6a670900..26c292a4d7 100644
|
||||
--- a/hwdb.d/60-sensor.hwdb
|
||||
+++ b/hwdb.d/60-sensor.hwdb
|
||||
@@ -156,6 +156,10 @@ sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnT100TAS:*
|
||||
sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pnT200TA:*
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
||||
+# Asus Transformer Mini T103HAF
|
||||
+sensor:modalias:platform:HID-SENSOR-200073*:dmi:*svn*ASUSTeK*:pnT103HAF:*
|
||||
+ ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, -1
|
||||
+
|
||||
sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnTP201SA:*
|
||||
sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pn*E205SA:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
@ -0,0 +1,31 @@
|
||||
From fd5fec13df0476a8a0b1640a700020bd4d194db0 Mon Sep 17 00:00:00 2001
|
||||
From: Trollimpo <85258600+Trollimpo@users.noreply.github.com>
|
||||
Date: Wed, 5 Feb 2025 21:44:14 -0300
|
||||
Subject: [PATCH] hwdb: fix screen rotation for EXO Wings 2in1 w1125 (#36283)
|
||||
|
||||
(cherry picked from commit 5e12894f053e7a3407a929d8d37f05cbd2b71a18)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-sensor.hwdb | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-sensor.hwdb b/hwdb.d/60-sensor.hwdb
|
||||
index 26c292a4d7..869f9221a4 100644
|
||||
--- a/hwdb.d/60-sensor.hwdb
|
||||
+++ b/hwdb.d/60-sensor.hwdb
|
||||
@@ -512,6 +512,14 @@ sensor:modalias:acpi:SMO8500*:dmi:*:svnEstar:pneSTARBEAUTYHDIntelQuadcore:*
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*:svnEVE*:pnEveV:*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
|
||||
|
||||
+#########################################
|
||||
+# Exo
|
||||
+#########################################
|
||||
+
|
||||
+# EXO Wings 2in1 w1125
|
||||
+sensor:modalias:acpi:SMO8500*:dmi:*:svnEXO*:pnWings:*
|
||||
+ ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
+
|
||||
#########################################
|
||||
# Geo Computers
|
||||
#########################################
|
@ -0,0 +1,34 @@
|
||||
From bc6f9ac8329ac385cd3c08209876e9295a8b7bbf Mon Sep 17 00:00:00 2001
|
||||
From: Daniil <10421134+Forbear@users.noreply.github.com>
|
||||
Date: Fri, 7 Feb 2025 10:46:44 +0100
|
||||
Subject: [PATCH] hwdb: XBox Series Elite controller modalias entry has been
|
||||
added. (#36305)
|
||||
|
||||
Change was requested in response on #36297.
|
||||
The reason for that change is that XBox Series Elite controller has
|
||||
exact 4 buttons identified as keyboard key sets.
|
||||
While it detects using USB connection without any issues, wireless
|
||||
connection ends with assumption that it's a keyboard.
|
||||
|
||||
(cherry picked from commit d7c86fea6b7d7ae3313356e84304392c463fd7e6)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-input-id.hwdb | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-input-id.hwdb b/hwdb.d/60-input-id.hwdb
|
||||
index dfb035de2a..6a53cc3b4c 100644
|
||||
--- a/hwdb.d/60-input-id.hwdb
|
||||
+++ b/hwdb.d/60-input-id.hwdb
|
||||
@@ -55,6 +55,10 @@
|
||||
id-input:modalias:input:b0003v28bdp0078*
|
||||
ID_INPUT_TABLET=1
|
||||
|
||||
+# XBox Series Elite controller
|
||||
+id-input:modalias:input:b0005v045Ep0B22e0517*
|
||||
+ ID_INPUT_JOYSTICK=1
|
||||
+
|
||||
# Lite-On Tech IBM USB Travel Keyboard with Ultra Nav Mouse
|
||||
id-input:modalias:input:b0003v04B3p301Ee0100-e0,1,2,4*
|
||||
ID_INPUT_POINTINGSTICK=1
|
@ -0,0 +1,27 @@
|
||||
From c12a8dcf23bf70724fdb67c33764a784795a8529 Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Schwartz <matthew.schwartz@linux.dev>
|
||||
Date: Sat, 8 Feb 2025 12:14:53 -0800
|
||||
Subject: [PATCH] hwdb: add front button support for MSI Claw 7 AI+ A2VM
|
||||
|
||||
(cherry picked from commit 88a0a543144c6e8002a0d582570e171159a5a675)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index f9cdb26be5..dc50f1cf8c 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -1573,8 +1573,9 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*Modern*:*
|
||||
KEYBOARD_KEY_97=unknown # Lid close
|
||||
KEYBOARD_KEY_98=unknown # Lid open
|
||||
|
||||
-# MSI Claw, MSI Claw 8
|
||||
+# MSI Claw A1M, MSI Claw 7 AI+ A2VM, MSI Claw 8 AI+ A2VM
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnClawA1M:*
|
||||
+evdev:name:AT Translated Set 2 keyboard:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnClaw7AI+A2VM:*
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:*:svnMicro-StarInternationalCo.,Ltd.:pnClaw8AI+A2VM:*
|
||||
KEYBOARD_KEY_b9=f15 # Right Face Button
|
||||
KEYBOARD_KEY_ba=f16 # Left Face Button
|
@ -0,0 +1,90 @@
|
||||
From 90f9c768313ebf279b82f036b2cd5939fde88f15 Mon Sep 17 00:00:00 2001
|
||||
From: Enrico Tagliavini <enrico.tagliavini@gmail.com>
|
||||
Date: Sun, 9 Feb 2025 14:44:46 +0100
|
||||
Subject: [PATCH] hwdb: add accel orientation and location for the BMAX Y14
|
||||
|
||||
The BMAX MaxBook Y14 has 2 acceleromenter sensors, one seems to be in
|
||||
the display, the other in the base. With the default ACCEL_MOUNT_MATRIX
|
||||
monitor-sensor would report the display to be rotate of 180 degrees
|
||||
compared to its real position, i.e. upside down when normal and vice
|
||||
versa. Left up and right up are also swapped.
|
||||
|
||||
Correcting the ACCEL_MOUNT_MATRIX for the display sensor solves the
|
||||
issue and monitor-sensor reports the correct values.
|
||||
|
||||
For the Y13 model the Z axis value was also inverted. For the Y14 to
|
||||
work correctly, this is not necessary, but I'm not sure how to double
|
||||
check this.
|
||||
|
||||
Sensors info:
|
||||
|
||||
P: /devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-KIOX010A:00/iio:device0
|
||||
M: iio:device0
|
||||
R: 0
|
||||
U: iio
|
||||
T: iio_device
|
||||
D: c 237:0
|
||||
N: iio:device0
|
||||
L: 0
|
||||
E: DEVPATH=/devices/pci0000:00/0000:00:15.0/i2c_designware.0/i2c-0/i2c-KIOX010A:00/iio:device0
|
||||
E: SUBSYSTEM=iio
|
||||
E: DEVNAME=/dev/iio:device0
|
||||
E: DEVTYPE=iio_device
|
||||
E: MAJOR=237
|
||||
E: MINOR=0
|
||||
E: USEC_INITIALIZED=25931869
|
||||
E: IIO_SENSOR_PROXY_TYPE=iio-poll-accel iio-buffer-accel
|
||||
E: SYSTEMD_WANTS=iio-sensor-proxy.service
|
||||
E: TAGS=:systemd:
|
||||
E: CURRENT_TAGS=:systemd:
|
||||
|
||||
P: /devices/pci0000:00/0000:00:15.3/i2c_designware.3/i2c-3/i2c-KIOX020A:00/iio:device1
|
||||
M: iio:device1
|
||||
R: 1
|
||||
U: iio
|
||||
T: iio_device
|
||||
D: c 237:1
|
||||
N: iio:device1
|
||||
L: 0
|
||||
E: DEVPATH=/devices/pci0000:00/0000:00:15.3/i2c_designware.3/i2c-3/i2c-KIOX020A:00/iio:device1
|
||||
E: SUBSYSTEM=iio
|
||||
E: DEVNAME=/dev/iio:device1
|
||||
E: DEVTYPE=iio_device
|
||||
E: MAJOR=237
|
||||
E: MINOR=1
|
||||
E: USEC_INITIALIZED=26000295
|
||||
E: IIO_SENSOR_PROXY_TYPE=iio-poll-accel iio-buffer-accel
|
||||
E: SYSTEMD_WANTS=iio-sensor-proxy.service
|
||||
E: TAGS=:systemd:
|
||||
E: CURRENT_TAGS=:systemd:
|
||||
|
||||
accel-display
|
||||
acpi:KIOX010A:KIOX010A:
|
||||
dmi:bvnAmericanMegatrendsInternational,LLC.:bvr5.00_002:bd05/13/2024:br5.27:efr1.1:svnAMI:pnIntel:pvrDefaultstring:rvnAMI:rnIntel:rvrDefaultstring:cvnDefaultstring:ct31:cvrDefaultstring:skuH8Y6:
|
||||
|
||||
accel-base
|
||||
acpi:KIOX020A:KIOX020A:
|
||||
|
||||
(cherry picked from commit 1740bbc98b44a5debce667571235418311136a04)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-sensor.hwdb | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-sensor.hwdb b/hwdb.d/60-sensor.hwdb
|
||||
index 869f9221a4..b1e029dc14 100644
|
||||
--- a/hwdb.d/60-sensor.hwdb
|
||||
+++ b/hwdb.d/60-sensor.hwdb
|
||||
@@ -242,6 +242,11 @@ sensor:modalias:acpi:KIOX010A:*:dmi:*:svnAMI:*:skuH2M6:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, -1
|
||||
ACCEL_LOCATION=display
|
||||
|
||||
+# BMAX MaxBook Y14
|
||||
+sensor:modalias:acpi:KIOX010A:*:dmi:*:svnAMI:*:skuH8Y6:*
|
||||
+ ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
+ ACCEL_LOCATION=display
|
||||
+
|
||||
#########################################
|
||||
# BUSH
|
||||
#########################################
|
24
SOURCES/1142-hwdb.d-add-support-for-Akoya-P15645.patch
Normal file
24
SOURCES/1142-hwdb.d-add-support-for-Akoya-P15645.patch
Normal file
@ -0,0 +1,24 @@
|
||||
From d8ab7c5a0d3d8b3a82604d7c1abf135050f4957f Mon Sep 17 00:00:00 2001
|
||||
From: fishears <f1she4rs@gmail.com>
|
||||
Date: Fri, 14 Feb 2025 13:45:36 +0000
|
||||
Subject: [PATCH] hwdb.d: add support for Akoya P15645
|
||||
|
||||
(cherry picked from commit 8ac7e25aabaaa8f316d6b4d382c49b13fc3a6622)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index dc50f1cf8c..34e302910a 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -1471,6 +1471,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMAXDATA:pnPro*7000*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnMEDION*:pnS3409*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnMedion*:pnAkoya*:*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnMedion*:pnP6669*:*
|
||||
+evdev:atkbd:dmi:bvn*:bvr*:svnMEDION*:pnP15645MD61587*:*
|
||||
KEYBOARD_KEY_a0=!mute
|
||||
KEYBOARD_KEY_ae=!volumedown
|
||||
KEYBOARD_KEY_b0=!volumeup
|
@ -0,0 +1,73 @@
|
||||
From 7fba37c3dc73710022ad152899099604e20b331f Mon Sep 17 00:00:00 2001
|
||||
From: Volodymyr Shkriabets <vshcryabets@gmail.com>
|
||||
Date: Sat, 15 Feb 2025 00:39:50 +0000
|
||||
Subject: [PATCH] hwdb.d: add ANP09 Intel n100 tablet sensor configuration
|
||||
(#36390)
|
||||
|
||||
I propose fix for ACCEL_MOUNT_MATRIX for popular on China markets Intel
|
||||
n100 7" tablet. I can't find any information about manufacturer.
|
||||
|
||||
P:
|
||||
/devices/pci0000:00/0000:00:15.3/i2c_designware.3/i2c-14/i2c-BOSC0200:00
|
||||
M: i2c-BOSC0200:00
|
||||
R: 00
|
||||
J: +i2c:i2c-BOSC0200:00
|
||||
U: i2c
|
||||
V: bmc150_accel_i2c
|
||||
E:
|
||||
DEVPATH=/devices/pci0000:00/0000:00:15.3/i2c_designware.3/i2c-14/i2c-BOSC0200:00
|
||||
E: SUBSYSTEM=i2c
|
||||
E: DRIVER=bmc150_accel_i2c
|
||||
E: MODALIAS=acpi:BOSC0200:BOSC0200:
|
||||
E: USEC_INITIALIZED=3546649
|
||||
E: ID_VENDOR_FROM_DATABASE=BOS
|
||||
|
||||
P:
|
||||
/devices/pci0000:00/0000:00:15.3/i2c_designware.3/i2c-14/i2c-BOSC0200:00/iio:device0
|
||||
M: iio:device0
|
||||
R: 0
|
||||
J: c238:0
|
||||
U: iio
|
||||
T: iio_device
|
||||
D: c 238:0
|
||||
N: iio:device0
|
||||
L: 0
|
||||
E:
|
||||
DEVPATH=/devices/pci0000:00/0000:00:15.3/i2c_designware.3/i2c-14/i2c-BOSC0200:00/iio:device0
|
||||
E: SUBSYSTEM=iio
|
||||
E: DEVNAME=/dev/iio:device0
|
||||
E: DEVTYPE=iio_device
|
||||
E: MAJOR=238
|
||||
E: MINOR=0
|
||||
E: USEC_INITIALIZED=3556556
|
||||
E: ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, -1
|
||||
E: IIO_SENSOR_PROXY_TYPE=iio-poll-accel iio-buffer-accel
|
||||
E: SYSTEMD_WANTS=iio-sensor-proxy.service
|
||||
E: TAGS=:systemd:
|
||||
E: CURRENT_TAGS=:systemd:
|
||||
|
||||
DMI tablet string
|
||||
|
||||
dmi:bvnAmericanMegatrendsInternational,LLC.:bvrANP09_INTEL001:bd08/16/2024:br5.27:efr0.0:svn:pn:pvrDefaultstring:rvn:rn:rvrDefaultstring:cvnDefaultstring:ct10:cvrDefaultstring:sku:
|
||||
(cherry picked from commit f6209ca4d79cbdb801a7231cd8e62a4a0925f77a)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-sensor.hwdb | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-sensor.hwdb b/hwdb.d/60-sensor.hwdb
|
||||
index b1e029dc14..7e0e9ed47c 100644
|
||||
--- a/hwdb.d/60-sensor.hwdb
|
||||
+++ b/hwdb.d/60-sensor.hwdb
|
||||
@@ -1231,3 +1231,10 @@ sensor:modalias:acpi:KIOX000A*:dmi:*:svnWortmann_AG:pnTERRA_PAD_1061:*
|
||||
#########################################
|
||||
sensor:modalias:acpi:BMA250E*:dmi:*:svnYOURS:pnY8W81:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
||||
+
|
||||
+#########################################
|
||||
+# Unknown manufacturer
|
||||
+#########################################
|
||||
+# ANP09 Intel N100 based 7-inch tablet
|
||||
+sensor:modalias:acpi:BOSC0200*:dmi:bvnAmericanMegatrendsInternational,LLC.:bvrANP09_INTEL001:*
|
||||
+ ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, -1
|
@ -0,0 +1,31 @@
|
||||
From f45096f25ba40b700b14090b6cddaffec3b712ca Mon Sep 17 00:00:00 2001
|
||||
From: KidGrimes <159489264+KidGrimes@users.noreply.github.com>
|
||||
Date: Fri, 21 Feb 2025 18:27:53 -0300
|
||||
Subject: [PATCH] hwdb: add axis range corrections for the Lenovo Yoga Slim 7
|
||||
14ARE05
|
||||
|
||||
(cherry picked from commit 81cb404a92b17a87111eb555792c947934a52b3e)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-evdev.hwdb | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-evdev.hwdb b/hwdb.d/60-evdev.hwdb
|
||||
index db9aa7c307..2e18f71e5b 100644
|
||||
--- a/hwdb.d/60-evdev.hwdb
|
||||
+++ b/hwdb.d/60-evdev.hwdb
|
||||
@@ -772,6 +772,13 @@ evdev:name:ETPS/2 Elantech Touchpad:dmi:*svnLENOVO:*pvrLenovoG580**
|
||||
EVDEV_ABS_35=-170:2950:24
|
||||
EVDEV_ABS_36=-591:700:25
|
||||
|
||||
+# Lenovo Yoga Slim 7 14ARE05
|
||||
+evdev:name:ELAN0634:00 04F3:3124 Touchpad:dmi:*svnLENOVO:*pvrYogaSlim714ARE05**
|
||||
+ EVDEV_ABS_00=::31
|
||||
+ EVDEV_ABS_01=::30
|
||||
+ EVDEV_ABS_35=::31
|
||||
+ EVDEV_ABS_36=::30
|
||||
+
|
||||
#########################################
|
||||
# Microsoft
|
||||
#########################################
|
@ -0,0 +1,30 @@
|
||||
From 5ea19e780cd0556e8224306ee33fa5f07f8dac35 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jaroslav=20=C5=A0karvada?= <jskarvad@redhat.com>
|
||||
Date: Wed, 26 Feb 2025 23:46:42 +0100
|
||||
Subject: [PATCH] hwdb: add GOLD WARRIOR SIM PhoenixRC 10411R
|
||||
|
||||
Fixes #36522
|
||||
|
||||
(cherry picked from commit 9d7b2daef05d782f301dc34b0650dab208c5b98c)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-input-id.hwdb | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-input-id.hwdb b/hwdb.d/60-input-id.hwdb
|
||||
index 6a53cc3b4c..c4c5be112d 100644
|
||||
--- a/hwdb.d/60-input-id.hwdb
|
||||
+++ b/hwdb.d/60-input-id.hwdb
|
||||
@@ -51,6 +51,11 @@
|
||||
|
||||
# Sort by brand, model
|
||||
|
||||
+# GOLD WARRIOR SIM PhoenixRC 10411R
|
||||
+id-input:modalias:input:b0003v1781p0898*
|
||||
+ ID_INPUT_ACCELEROMETER=
|
||||
+ ID_INPUT_JOYSTICK=1
|
||||
+
|
||||
# XP-PEN STAR 06
|
||||
id-input:modalias:input:b0003v28bdp0078*
|
||||
ID_INPUT_TABLET=1
|
@ -0,0 +1,32 @@
|
||||
From deb601b7d78914c1d821799f33111285d370006d Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jaroslav=20=C5=A0karvada?= <jskarvad@redhat.com>
|
||||
Date: Sat, 1 Mar 2025 13:16:24 +0100
|
||||
Subject: [PATCH] hwdb: add Code Mercenaries Hard- und Software GmbH Virtual RC
|
||||
USB
|
||||
|
||||
It's official VRC USB dongle. Make it work in SDL apps, wine,
|
||||
Steam, ... and fix the erratic mouse events when the dongle is in use.
|
||||
|
||||
(cherry picked from commit d8af5c262cac79e5866b7d5c45cf7a78c755b2cd)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-input-id.hwdb | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-input-id.hwdb b/hwdb.d/60-input-id.hwdb
|
||||
index c4c5be112d..823d856c31 100644
|
||||
--- a/hwdb.d/60-input-id.hwdb
|
||||
+++ b/hwdb.d/60-input-id.hwdb
|
||||
@@ -51,6 +51,11 @@
|
||||
|
||||
# Sort by brand, model
|
||||
|
||||
+# Code Mercenaries Hard- und Software GmbH Virtual RC USB
|
||||
+id-input:modalias:input:b0003v07C0p1125*
|
||||
+ ID_INPUT_MOUSE=
|
||||
+ ID_INPUT_JOYSTICK=1
|
||||
+
|
||||
# GOLD WARRIOR SIM PhoenixRC 10411R
|
||||
id-input:modalias:input:b0003v1781p0898*
|
||||
ID_INPUT_ACCELEROMETER=
|
@ -0,0 +1,27 @@
|
||||
From 28c5462685b11b13c94af75b4b0c1369b8e4af9f Mon Sep 17 00:00:00 2001
|
||||
From: Chris Grant <grantgj@gmail.com>
|
||||
Date: Sun, 2 Mar 2025 01:14:22 +1300
|
||||
Subject: [PATCH] hwdb: Add accel orientation quirk for the GPD Pocket 4
|
||||
|
||||
(cherry picked from commit 5bc576225a3d34bc5f4571e96112b19daacb37cb)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-sensor.hwdb | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-sensor.hwdb b/hwdb.d/60-sensor.hwdb
|
||||
index 7e0e9ed47c..385c4300ef 100644
|
||||
--- a/hwdb.d/60-sensor.hwdb
|
||||
+++ b/hwdb.d/60-sensor.hwdb
|
||||
@@ -590,6 +590,10 @@ sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:bvr5.11:bd05/25/201
|
||||
sensor:modalias:acpi:MXC6655*:dmi:*:svnGPD:pnG1621-02:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
|
||||
+# GPD Pocket 4
|
||||
+sensor:modalias:acpi:MXC6655*:dmi:*:svnGPD:pnG1628-04:*
|
||||
+ ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
+
|
||||
# GPD WinMax2
|
||||
sensor:modalias:acpi:BMI0160*:dmi:*:svnGPD:pnG1619*:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
|
@ -0,0 +1,28 @@
|
||||
From d8ce41be07bb49fe8de466a2aac678ca5fd6d782 Mon Sep 17 00:00:00 2001
|
||||
From: Harrison Vanderbyl <33416119+harrisonvanderbyl@users.noreply.github.com>
|
||||
Date: Tue, 4 Mar 2025 15:15:23 +1100
|
||||
Subject: [PATCH] hwdb: add rotation profile matrix for Rog Ally X (2024)
|
||||
(#36591)
|
||||
|
||||
(cherry picked from commit 7fff71328e36b734be6b7e17eb7998dcb754bb13)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-sensor.hwdb | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-sensor.hwdb b/hwdb.d/60-sensor.hwdb
|
||||
index 385c4300ef..9561fefa89 100644
|
||||
--- a/hwdb.d/60-sensor.hwdb
|
||||
+++ b/hwdb.d/60-sensor.hwdb
|
||||
@@ -189,6 +189,10 @@ sensor:modalias:acpi:SMO8500*:dmi:*svn*ASUSTeK*:*pn*TP300LAB:*
|
||||
sensor:modalias:acpi:BOSC0200*:dmi:*svn*ASUSTeK*:*pn*TP412UA:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
+# ASUS ROG Ally X (2024)
|
||||
+sensor:modalias:acpi:BOSC0200*:dmi:*svn*ASUSTeK*:*pn*RC72LA:*
|
||||
+ ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, -1
|
||||
+
|
||||
sensor:modalias:acpi:BOSC0200*:dmi:*svn*ASUSTeK*:pn*BR1100FKA:*
|
||||
ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, -1
|
||||
|
@ -0,0 +1,43 @@
|
||||
From 5e1b1df1b15141dfe5355ad960cac7fa78451cbd Mon Sep 17 00:00:00 2001
|
||||
From: Sonia Zorba <zonia3000@gmail.com>
|
||||
Date: Tue, 18 Mar 2025 02:25:51 +0200
|
||||
Subject: [PATCH] hwdb: fix backspace not working on HP Pavilion laptop
|
||||
(#36777)
|
||||
|
||||
PR #34685 moved the handling of keys 66/65 from specific models to
|
||||
generic HP laptops.
|
||||
|
||||
Key 66 has been linked to the `pickup_phone` function; however, this
|
||||
action key is not available on all HP laptop models, particularly older
|
||||
versions. On my HP Pavilion laptop, key 66 is mapped to the `backspace`
|
||||
function, which caused the backspace key to stop working after the
|
||||
change.
|
||||
|
||||
The following PR fixes the issue on my **HP Pavilion Laptop 15-eg0xxx**.
|
||||
I have placed the modifications under the Pavilion section, but I cannot
|
||||
guarantee that this solution will apply to all Pavilion models.
|
||||
|
||||
Additionally, I have included a line that checks for "HP" instead of
|
||||
solely searching for "Hewlett-Packard," as my model is simply labeled as
|
||||
HP.
|
||||
|
||||
(cherry picked from commit 147511c643886543a79aa8d036380ea86c38cfa4)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 34e302910a..f758d202d1 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -649,6 +649,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[tT][aA][bB][lL][eE][tT]*:*
|
||||
|
||||
# Pavilion
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*[pP][aA][vV][iI][lL][iI][oO][nN]*:*
|
||||
+evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHP*:pn*[pP][aA][vV][iI][lL][iI][oO][nN]*:*
|
||||
+ KEYBOARD_KEY_66=backspace
|
||||
KEYBOARD_KEY_88=media # FIXME: quick play
|
||||
KEYBOARD_KEY_b7=print
|
||||
KEYBOARD_KEY_d8=!touchpad_off # touchpad off
|
@ -0,0 +1,35 @@
|
||||
From e3c0622fa3adb29d3dfb7b4793e36ebd9e3ab81e Mon Sep 17 00:00:00 2001
|
||||
From: Werner Sembach <wse@tuxedocomputers.com>
|
||||
Date: Wed, 2 Apr 2025 18:47:12 +0200
|
||||
Subject: [PATCH] hwdb/keyboard: Map FN key on TUXEDO NB02 devices
|
||||
|
||||
Map the FN key of TUXEDO NB02 devices that produces a scancode unrecognized by
|
||||
the Linux kernel.
|
||||
|
||||
Signed-off-by: Werner Sembach <wse@tuxedocomputers.com>
|
||||
(cherry picked from commit c47f16ea9633cd69f60e555abcbdb3e9000e1aef)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index f758d202d1..31664216fa 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -2062,6 +2062,14 @@ evdev:name:Quickstart Button 2:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnPORTEGEZ830:*
|
||||
evdev:name:Quickstart Button 3:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnPORTEGEZ830:*
|
||||
KEYBOARD_KEY_1=touchpad_toggle # Touchpad toggle
|
||||
|
||||
+###########################################################
|
||||
+# TUXEDO Computers
|
||||
+###########################################################
|
||||
+
|
||||
+# TUXEDO Computers notebooks with board_vendor NB02
|
||||
+evdev:atkbd:dmi:*:svnTUXEDO:*:rvnNB02:*
|
||||
+ KEYBOARD_KEY_f8=fn
|
||||
+
|
||||
###########################################################
|
||||
# VIA
|
||||
###########################################################
|
28
SOURCES/1151-hwdb-add-G-Mode-key-support-37175.patch
Normal file
28
SOURCES/1151-hwdb-add-G-Mode-key-support-37175.patch
Normal file
@ -0,0 +1,28 @@
|
||||
From e89fe5cd3549a08113191efcd35c462191220b45 Mon Sep 17 00:00:00 2001
|
||||
From: Marcos Alano <mhalano@users.noreply.github.com>
|
||||
Date: Fri, 18 Apr 2025 05:43:26 -0300
|
||||
Subject: [PATCH] hwdb: add G-Mode key support (#37175)
|
||||
|
||||
Add G-Mode key, usually Fn+F9.
|
||||
|
||||
Closes #30824
|
||||
|
||||
(cherry picked from commit ae042183832bae0eecdb32877c568d5c9d67e646)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 31664216fa..aed5edc1f8 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -383,6 +383,7 @@ evdev:name:gpio-keys:phys:gpio-keys/input0:ev:3:dmi:bvn*:bvr*:bd*:svncube:pni1-T
|
||||
###########################################################
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pn*:*
|
||||
+ KEYBOARD_KEY_68=prog2 # G-Mode (Dell-specific)
|
||||
KEYBOARD_KEY_81=playpause # Play/Pause
|
||||
KEYBOARD_KEY_82=stopcd # Stop
|
||||
KEYBOARD_KEY_83=previoussong # Previous song
|
@ -0,0 +1,31 @@
|
||||
From 79400d753dea52ba136b8c4ab35c9e886d39d9c5 Mon Sep 17 00:00:00 2001
|
||||
From: Werner Sembach <wse@tuxedocomputers.com>
|
||||
Date: Thu, 24 Apr 2025 23:29:53 +0200
|
||||
Subject: [PATCH] hwdb/keyboard: Map FN key on TUXEDO InfinityFlex 14 Gen1
|
||||
|
||||
Map the FN key of TUXEDO InfinityFlex 14 Gen1 that wrongly produces the F23
|
||||
scancode by default.
|
||||
|
||||
Signed-off-by: Werner Sembach <wse@tuxedocomputers.com>
|
||||
(cherry picked from commit d2502f55a2d9dc13f82cc1551a0639843fefb69e)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index aed5edc1f8..9e00d7cd83 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -2071,6 +2071,10 @@ evdev:name:Quickstart Button 3:dmi:bvn*:bvr*:bd*:svnTOSHIBA*:pnPORTEGEZ830:*
|
||||
evdev:atkbd:dmi:*:svnTUXEDO:*:rvnNB02:*
|
||||
KEYBOARD_KEY_f8=fn
|
||||
|
||||
+# TUXEDO InfinityFlex 14 Gen1
|
||||
+evdev:atkbd:dmi:*:svnTUXEDO:*:rnDN50Z-140HC-YD:*
|
||||
+ KEYBOARD_KEY_6e=fn
|
||||
+
|
||||
###########################################################
|
||||
# VIA
|
||||
###########################################################
|
27
SOURCES/1153-hwdb-add-HP-150-Wired-Mouse-37341.patch
Normal file
27
SOURCES/1153-hwdb-add-HP-150-Wired-Mouse-37341.patch
Normal file
@ -0,0 +1,27 @@
|
||||
From 4a5c10586ec811b6e2034003aa70f5417908b350 Mon Sep 17 00:00:00 2001
|
||||
From: madroach <christopher@gmerlin.de>
|
||||
Date: Mon, 5 May 2025 14:34:33 +0200
|
||||
Subject: [PATCH] hwdb: add HP 150 Wired Mouse (#37341)
|
||||
|
||||
(cherry picked from commit a2bd93c2e8a2fb00d50be0da17876bcb2271cdfb)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-mouse.hwdb | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/70-mouse.hwdb b/hwdb.d/70-mouse.hwdb
|
||||
index 6e2a588a5d..d054aeffe6 100644
|
||||
--- a/hwdb.d/70-mouse.hwdb
|
||||
+++ b/hwdb.d/70-mouse.hwdb
|
||||
@@ -329,6 +329,10 @@ mouse:usb:v093ap2510:name:PIXART USB OPTICAL MOUSE:*
|
||||
mouse:usb:v03f0p0641:name:PixArt HP X1200 USB Optical Mouse:*
|
||||
MOUSE_DPI=1100@125
|
||||
|
||||
+# HP 150 Wired Mouse
|
||||
+mouse:usb:v03f0p6a41:name:PixArt HP USB Optical Mouse:
|
||||
+ MOUSE_DPI=1700@132
|
||||
+
|
||||
##########################################
|
||||
# IBM
|
||||
##########################################
|
25
SOURCES/1154-Add-emulated-release-to-G-Mode-key.patch
Normal file
25
SOURCES/1154-Add-emulated-release-to-G-Mode-key.patch
Normal file
@ -0,0 +1,25 @@
|
||||
From baf17f5a854fcb02c1f42cbf3ccbd5ef72d3fd1e Mon Sep 17 00:00:00 2001
|
||||
From: Marcos Alano <marcoshalano@gmail.com>
|
||||
Date: Thu, 8 May 2025 07:28:16 -0300
|
||||
Subject: [PATCH] Add emulated release to G-Mode key
|
||||
|
||||
(cherry picked from commit fb8149234aa70b9f7132cee0ffe4b58f410f947e)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 9e00d7cd83..781856b0df 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -383,7 +383,7 @@ evdev:name:gpio-keys:phys:gpio-keys/input0:ev:3:dmi:bvn*:bvr*:bd*:svncube:pni1-T
|
||||
###########################################################
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pn*:*
|
||||
- KEYBOARD_KEY_68=prog2 # G-Mode (Dell-specific)
|
||||
+ KEYBOARD_KEY_68=!prog2 # G-Mode (Dell-specific)
|
||||
KEYBOARD_KEY_81=playpause # Play/Pause
|
||||
KEYBOARD_KEY_82=stopcd # Stop
|
||||
KEYBOARD_KEY_83=previoussong # Previous song
|
34
SOURCES/1155-hwdb-keyboard-Add-Alienware-special-keys.patch
Normal file
34
SOURCES/1155-hwdb-keyboard-Add-Alienware-special-keys.patch
Normal file
@ -0,0 +1,34 @@
|
||||
From 564d33c3d83c7873ad93f83408fc5b11a19bd73a Mon Sep 17 00:00:00 2001
|
||||
From: Kurt Borja <kuurtb@gmail.com>
|
||||
Date: Thu, 8 May 2025 04:37:55 -0300
|
||||
Subject: [PATCH] hwdb: keyboard: Add Alienware special keys
|
||||
|
||||
Add Alienware *Performance mode* toggle key and *Macro* keys.
|
||||
|
||||
Signed-off-by: Kurt Borja <kuurtb@gmail.com>
|
||||
(cherry picked from commit 15450ba214ea1f3277a2d2e24bcce5956ee651af)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 781856b0df..210af0f5fc 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -247,8 +247,14 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-58:pvr*
|
||||
|
||||
# Alienware/Dell reserves these keys; safe to apply on all their devices
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAlienware*:pn*:*
|
||||
+ KEYBOARD_KEY_68=!prog3 # Fn+f1 Performance mode toggle
|
||||
KEYBOARD_KEY_81=touchpad_toggle # Touchpad toggle
|
||||
KEYBOARD_KEY_8a=ejectcd
|
||||
+ KEYBOARD_KEY_92=macro1 # Fn+f2
|
||||
+ KEYBOARD_KEY_93=macro2 # Fn+f3
|
||||
+ KEYBOARD_KEY_94=macro3 # Fn+f4
|
||||
+ KEYBOARD_KEY_95=macro4 # Fn+f5
|
||||
+ KEYBOARD_KEY_96=macro5 # Fn+f6
|
||||
KEYBOARD_KEY_bf=!prog1 # graphics amplifier, cable plug-in event
|
||||
KEYBOARD_KEY_c1=!prog2 # graphics amplifier, undock-button event
|
||||
KEYBOARD_KEY_c2=!power # graphics amplifier, surprise undock event
|
61
SOURCES/1156-hwdb-add-bladeRF-SDR-devices.patch
Normal file
61
SOURCES/1156-hwdb-add-bladeRF-SDR-devices.patch
Normal file
@ -0,0 +1,61 @@
|
||||
From 51290af49590da383dad12377aa55335c1b492c0 Mon Sep 17 00:00:00 2001
|
||||
From: Ryan Thompson <ryan.thompson@nuand.com>
|
||||
Date: Mon, 12 May 2025 18:05:20 -0500
|
||||
Subject: [PATCH] hwdb: add bladeRF SDR devices
|
||||
|
||||
Add hwdb entries for bladeRF 1.x, legacy 1.x, and 2.0 micro devices to
|
||||
enable non-root access through preexisting ID_SOFTWARE_RADIO tag.
|
||||
|
||||
References #20561
|
||||
|
||||
(cherry picked from commit 951e8cb06037d5b67c0ac86f56bcbd73f4fb2d7b)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-software-radio.hwdb | 24 ++++++++++++++++++++++++
|
||||
hwdb.d/meson.build | 1 +
|
||||
2 files changed, 25 insertions(+)
|
||||
create mode 100644 hwdb.d/70-software-radio.hwdb
|
||||
|
||||
diff --git a/hwdb.d/70-software-radio.hwdb b/hwdb.d/70-software-radio.hwdb
|
||||
new file mode 100644
|
||||
index 0000000000..c6afcffdc3
|
||||
--- /dev/null
|
||||
+++ b/hwdb.d/70-software-radio.hwdb
|
||||
@@ -0,0 +1,24 @@
|
||||
+# This file is part of systemd.
|
||||
+#
|
||||
+# Database for software-defined radio devices that should be accessible to the seat owner.
|
||||
+#
|
||||
+# To add local entries, copy this file to
|
||||
+# /etc/udev/hwdb.d/
|
||||
+# and add your rules there. To load the new rules execute (as root):
|
||||
+# systemd-hwdb update
|
||||
+# udevadm trigger
|
||||
+
|
||||
+################
|
||||
+# Nuand
|
||||
+################
|
||||
+# bladeRF 1.x
|
||||
+usb:v2CF0p5246*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# bladeRF 1.x (legacy)
|
||||
+usb:v1D50p6066*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# bladeRF 2.0 micro
|
||||
+usb:v2CF0p5250*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
diff --git a/hwdb.d/meson.build b/hwdb.d/meson.build
|
||||
index bae76296b7..5ed49e877a 100644
|
||||
--- a/hwdb.d/meson.build
|
||||
+++ b/hwdb.d/meson.build
|
||||
@@ -34,6 +34,7 @@ hwdb_files_test = files(
|
||||
'70-mouse.hwdb',
|
||||
'70-pda.hwdb',
|
||||
'70-pointingstick.hwdb',
|
||||
+ '70-software-radio.hwdb',
|
||||
'70-sound-card.hwdb',
|
||||
'70-touchpad.hwdb',
|
||||
'80-ieee1394-unit-function.hwdb')
|
@ -0,0 +1,24 @@
|
||||
From 25e6cac1d38eee0a37ded79e5821878135dd4a79 Mon Sep 17 00:00:00 2001
|
||||
From: Ryan Thompson <ryan.thompson@nuand.com>
|
||||
Date: Mon, 12 May 2025 19:37:16 -0500
|
||||
Subject: [PATCH] hwdb: append ID_SOFTWARE_RADIO to hwdb parser
|
||||
|
||||
(cherry picked from commit eea9ba8409efd5f8540d9e83a5096ac0a34d6a9f)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/parse_hwdb.py | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/hwdb.d/parse_hwdb.py b/hwdb.d/parse_hwdb.py
|
||||
index bac5dcc4c8..7dd996e1ee 100755
|
||||
--- a/hwdb.d/parse_hwdb.py
|
||||
+++ b/hwdb.d/parse_hwdb.py
|
||||
@@ -177,6 +177,7 @@ def property_grammar():
|
||||
('ID_INPUT_TRACKBALL', id_input_setting),
|
||||
('ID_SIGNAL_ANALYZER', Or((Literal('0'), Literal('1')))),
|
||||
('ID_HARDWARE_WALLET', Or((Literal('0'), Literal('1')))),
|
||||
+ ('ID_SOFTWARE_RADIO', Or((Literal('0'), Literal('1')))),
|
||||
('POINTINGSTICK_SENSITIVITY', INTEGER),
|
||||
('ID_INPUT_JOYSTICK_INTEGRATION', Or(('internal', 'external'))),
|
||||
('ID_INPUT_TOUCHPAD_INTEGRATION', Or(('internal', 'external'))),
|
148
SOURCES/1158-hwdb.d-reword-and-simplify-boilerplate-texts.patch
Normal file
148
SOURCES/1158-hwdb.d-reword-and-simplify-boilerplate-texts.patch
Normal file
@ -0,0 +1,148 @@
|
||||
From 9150ab86eb104c4ffa39aa8af992236997fc792b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
|
||||
Date: Wed, 14 May 2025 17:31:57 +0200
|
||||
Subject: [PATCH] hwdb.d: reword and simplify boilerplate texts
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Let's keep things simple and uniform. We put a dot at the
|
||||
end of some commands… This is obviously correct, but might confuse
|
||||
some poor user.
|
||||
|
||||
(cherry picked from commit 16acf66cf6985a87a5650cb1fa7b56be42505c62)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-autosuspend.hwdb | 5 ++---
|
||||
hwdb.d/60-evdev.hwdb | 5 ++---
|
||||
hwdb.d/60-input-id.hwdb | 5 ++---
|
||||
hwdb.d/60-keyboard.hwdb | 5 ++---
|
||||
hwdb.d/60-sensor.hwdb | 3 +--
|
||||
hwdb.d/70-joystick.hwdb | 5 ++---
|
||||
hwdb.d/70-touchpad.hwdb | 2 +-
|
||||
7 files changed, 12 insertions(+), 18 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/60-autosuspend.hwdb b/hwdb.d/60-autosuspend.hwdb
|
||||
index 1bdc041bb9..af7d8ba567 100644
|
||||
--- a/hwdb.d/60-autosuspend.hwdb
|
||||
+++ b/hwdb.d/60-autosuspend.hwdb
|
||||
@@ -14,13 +14,12 @@
|
||||
# systemd-hwdb update
|
||||
# udevadm trigger /dev/…
|
||||
#
|
||||
-# If your changes are generally applicable, preferably send them as a pull
|
||||
-# request to
|
||||
+# If your changes are generally applicable, send them as a pull request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
# udevadm info
|
||||
-# the device.
|
||||
+# for the device.
|
||||
#
|
||||
# Allowed properties are:
|
||||
# ID_AUTOSUSPEND=1
|
||||
diff --git a/hwdb.d/60-evdev.hwdb b/hwdb.d/60-evdev.hwdb
|
||||
index 2e18f71e5b..47f1c2d2d2 100644
|
||||
--- a/hwdb.d/60-evdev.hwdb
|
||||
+++ b/hwdb.d/60-evdev.hwdb
|
||||
@@ -38,12 +38,11 @@
|
||||
# where /dev/input/eventXX is the device in question. If in doubt, simply use
|
||||
# /dev/input/event* to reload all input rules.
|
||||
#
|
||||
-# If your changes are generally applicable, preferably send them as a pull
|
||||
-# request to
|
||||
+# If your changes are generally applicable, send them as a pull request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
-# udevadm info /dev/input/eventXX.
|
||||
+# udevadm info /dev/input/eventXX
|
||||
#
|
||||
# Allowed properties are:
|
||||
# EVDEV_ABS_<axis>=<min>:<max>:<res>:<fuzz>:<flat>
|
||||
diff --git a/hwdb.d/60-input-id.hwdb b/hwdb.d/60-input-id.hwdb
|
||||
index 823d856c31..88fec6e043 100644
|
||||
--- a/hwdb.d/60-input-id.hwdb
|
||||
+++ b/hwdb.d/60-input-id.hwdb
|
||||
@@ -14,12 +14,11 @@
|
||||
# where /dev/input/eventXX is the device in question. If in
|
||||
# doubt, simply use /dev/input/event* to reload all input rules.
|
||||
#
|
||||
-# If your changes are generally applicable, preferably send them as a pull
|
||||
-# request to
|
||||
+# If your changes are generally applicable, send them as a pull request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
-# udevadm info /dev/input/eventXX.
|
||||
+# udevadm info /dev/input/eventXX
|
||||
#
|
||||
# This file must only be used where the input_id builtin assigns the wrong
|
||||
# properties or lacks the assignment of some properties. This is almost always
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 210af0f5fc..0ed4478399 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -51,12 +51,11 @@
|
||||
# where /dev/input/eventXX is the keyboard in question. If in doubt, simply use
|
||||
# /dev/input/event* to reload all input rules.
|
||||
#
|
||||
-# If your changes are generally applicable, preferably send them as a pull
|
||||
-# request to
|
||||
+# If your changes are generally applicable, send them as a pull request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
-# udevadm info /dev/input/eventXX.
|
||||
+# udevadm info /dev/input/eventXX
|
||||
|
||||
# ######################### KEY MAPPING ######################################
|
||||
#
|
||||
diff --git a/hwdb.d/60-sensor.hwdb b/hwdb.d/60-sensor.hwdb
|
||||
index 9561fefa89..b25dda8959 100644
|
||||
--- a/hwdb.d/60-sensor.hwdb
|
||||
+++ b/hwdb.d/60-sensor.hwdb
|
||||
@@ -27,8 +27,7 @@
|
||||
# udevadm trigger -v -p DEVNAME=/dev/iio:deviceXXX
|
||||
# where /dev/iio:deviceXXX is the device in question.
|
||||
#
|
||||
-# If your changes are generally applicable, preferably send them as a pull
|
||||
-# request to
|
||||
+# If your changes are generally applicable, send them as a pull request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
diff --git a/hwdb.d/70-joystick.hwdb b/hwdb.d/70-joystick.hwdb
|
||||
index 8e942c8c1b..e2008676e9 100644
|
||||
--- a/hwdb.d/70-joystick.hwdb
|
||||
+++ b/hwdb.d/70-joystick.hwdb
|
||||
@@ -18,12 +18,11 @@
|
||||
# where /dev/input/eventXX is the joystick in question. If in
|
||||
# doubt, simply use /dev/input/event* to reload all input rules.
|
||||
#
|
||||
-# If your changes are generally applicable, preferably send them as a pull
|
||||
-# request to
|
||||
+# If your changes are generally applicable, send them as a pull request to
|
||||
# https://github.com/systemd/systemd
|
||||
# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
# include your new rules, a description of the device, and the output of
|
||||
-# udevadm info /dev/input/eventXX.
|
||||
+# udevadm info /dev/input/eventXX
|
||||
#
|
||||
# Permitted keys:
|
||||
# Specify if a joystick is a built-in one or external:
|
||||
diff --git a/hwdb.d/70-touchpad.hwdb b/hwdb.d/70-touchpad.hwdb
|
||||
index 262bca3a19..83089bba28 100644
|
||||
--- a/hwdb.d/70-touchpad.hwdb
|
||||
+++ b/hwdb.d/70-touchpad.hwdb
|
||||
@@ -26,7 +26,7 @@
|
||||
# udevadm info /dev/input/eventXX.
|
||||
#
|
||||
# Permitted keys:
|
||||
-# Specify if a touchpad is a built-in one or external:
|
||||
+# Specify whether a touchpad is a built-in one or external:
|
||||
# ID_INPUT_TOUCHPAD_INTEGRATION=internal|external
|
||||
|
||||
touchpad:i8042:*
|
@ -0,0 +1,195 @@
|
||||
From 943457fdb22abc318e259de12939f37793b4b646 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
|
||||
Date: Wed, 14 May 2025 17:44:25 +0200
|
||||
Subject: [PATCH] hwdb.d: update/expand boilerplate on various hwdb files
|
||||
|
||||
We don't want to encourage people to copy the whole files. The
|
||||
boilerplate text that recommends an override file rather than a
|
||||
full copy appeared first in 0213a26f656d72ac83eb201f2104726fcfe60eaa,
|
||||
but was added in other places in 57bb707d48131f4daad2b1b746eab586eb66b4f3.
|
||||
|
||||
Directly inspired by 951e8cb06037d5b67c0ac86f56bcbd73f4fb2d7b, but
|
||||
the wrong boilerplate was added in other places too.
|
||||
|
||||
(cherry picked from commit 97f7b74f97d20daf13021eb748399ecafd15f520)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-av-production.hwdb | 20 ++++++++++++++++----
|
||||
hwdb.d/70-hardware-wallets.hwdb | 20 ++++++++++++++++----
|
||||
hwdb.d/70-lights.hwdb | 24 ++++++++++++++++++------
|
||||
hwdb.d/70-software-radio.hwdb | 21 +++++++++++++++++----
|
||||
hwdb.d/70-sound-card.hwdb | 20 ++++++++++++++++----
|
||||
5 files changed, 83 insertions(+), 22 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/70-av-production.hwdb b/hwdb.d/70-av-production.hwdb
|
||||
index f7cc349822..dc3fddf0e0 100644
|
||||
--- a/hwdb.d/70-av-production.hwdb
|
||||
+++ b/hwdb.d/70-av-production.hwdb
|
||||
@@ -3,13 +3,25 @@
|
||||
# Database for AV production controllers that should be accessible to the seat owner.
|
||||
#
|
||||
# This covers DJ tables, music-oriented key pads, and streaming-oriented key pads
|
||||
-# such as Elgato Stream Deck
|
||||
+# such as Elgato Stream Deck.
|
||||
#
|
||||
-# To add local entries, copy this file to
|
||||
-# /etc/udev/hwdb.d/
|
||||
+# The lookup keys are $MODALIAS strings, see udev's hwdb builtin.
|
||||
+#
|
||||
+# To add local entries, create a new file
|
||||
+# /etc/udev/hwdb.d/71-av-production-local.hwdb
|
||||
# and add your rules there. To load the new rules execute (as root):
|
||||
# systemd-hwdb update
|
||||
-# udevadm trigger
|
||||
+# udevadm trigger /dev/…
|
||||
+#
|
||||
+# If your changes are generally applicable, send them as a pull request to
|
||||
+# https://github.com/systemd/systemd
|
||||
+# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
+# include your new rules, a description of the device, and the output of
|
||||
+# udevadm info
|
||||
+# for the device.
|
||||
+#
|
||||
+# Allowed properties are:
|
||||
+# ID_AV_PRODUCTION_CONTROLLER=1
|
||||
|
||||
################
|
||||
# Ableton
|
||||
diff --git a/hwdb.d/70-hardware-wallets.hwdb b/hwdb.d/70-hardware-wallets.hwdb
|
||||
index 77d8bfa92d..24983f3f92 100644
|
||||
--- a/hwdb.d/70-hardware-wallets.hwdb
|
||||
+++ b/hwdb.d/70-hardware-wallets.hwdb
|
||||
@@ -1,12 +1,24 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# Database for Hardware Wallets that should be accessible to the seat owner.
|
||||
-##
|
||||
-# To add local entries, copy this file to
|
||||
-# /etc/udev/hwdb.d/
|
||||
+#
|
||||
+# The lookup keys are $MODALIAS strings, see udev's hwdb builtin.
|
||||
+#
|
||||
+# To add local entries, create a new file
|
||||
+# /etc/udev/hwdb.d/71-hardware-wallets-local.hwdb
|
||||
# and add your rules there. To load the new rules execute (as root):
|
||||
# systemd-hwdb update
|
||||
-# udevadm trigger
|
||||
+# udevadm trigger /dev/…
|
||||
+#
|
||||
+# If your changes are generally applicable, send them as a pull request to
|
||||
+# https://github.com/systemd/systemd
|
||||
+# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
+# include your new rules, a description of the device, and the output of
|
||||
+# udevadm info
|
||||
+# for the device.
|
||||
+#
|
||||
+# Allowed properties are:
|
||||
+# ID_HARDWARE_WALLET=1
|
||||
|
||||
################
|
||||
# Trezor Hardware Wallets
|
||||
diff --git a/hwdb.d/70-lights.hwdb b/hwdb.d/70-lights.hwdb
|
||||
index 7811be61f5..70c152c8b8 100644
|
||||
--- a/hwdb.d/70-lights.hwdb
|
||||
+++ b/hwdb.d/70-lights.hwdb
|
||||
@@ -1,14 +1,26 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
-# Database for remote controllable lights that should be accessible to the seat owner,
|
||||
-# such as Bluetooth or USB lights that are used in conjuction with the computer like
|
||||
-# streaming lights.
|
||||
+# Database for remote controllable lights that should be accessible to the seat
|
||||
+# owner, such as Bluetooth or USB lights that are used in conjuction with the
|
||||
+# computer like streaming lights.
|
||||
#
|
||||
-# To add local entries, copy this file to
|
||||
-# /etc/udev/hwdb.d/
|
||||
+# The lookup keys are $MODALIAS strings, see udev's hwdb builtin.
|
||||
+#
|
||||
+# To add local entries, create a new file
|
||||
+# /etc/udev/hwdb.d/71-lights-local.hwdb
|
||||
# and add your rules there. To load the new rules execute (as root):
|
||||
# systemd-hwdb update
|
||||
-# udevadm trigger
|
||||
+# udevadm trigger /dev/…
|
||||
+#
|
||||
+# If your changes are generally applicable, send them as a pull request to
|
||||
+# https://github.com/systemd/systemd
|
||||
+# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
+# include your new rules, a description of the device, and the output of
|
||||
+# udevadm info
|
||||
+# for the device.
|
||||
+#
|
||||
+# Allowed properties are:
|
||||
+# ID_AV_LIGHTS=1
|
||||
|
||||
################
|
||||
# Logitech
|
||||
diff --git a/hwdb.d/70-software-radio.hwdb b/hwdb.d/70-software-radio.hwdb
|
||||
index c6afcffdc3..3b578d464f 100644
|
||||
--- a/hwdb.d/70-software-radio.hwdb
|
||||
+++ b/hwdb.d/70-software-radio.hwdb
|
||||
@@ -1,12 +1,25 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
-# Database for software-defined radio devices that should be accessible to the seat owner.
|
||||
+# Database for software-defined radio devices that should be accessible to the
|
||||
+# seat owner.
|
||||
#
|
||||
-# To add local entries, copy this file to
|
||||
-# /etc/udev/hwdb.d/
|
||||
+# The lookup keys are $MODALIAS strings, see udev's hwdb builtin.
|
||||
+#
|
||||
+# To add local entries, create a new file
|
||||
+# /etc/udev/hwdb.d/71-software-radio-local.hwdb
|
||||
# and add your rules there. To load the new rules execute (as root):
|
||||
# systemd-hwdb update
|
||||
-# udevadm trigger
|
||||
+# udevadm trigger /dev/…
|
||||
+#
|
||||
+# If your changes are generally applicable, send them as a pull request to
|
||||
+# https://github.com/systemd/systemd
|
||||
+# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
+# include your new rules, a description of the device, and the output of
|
||||
+# udevadm info
|
||||
+# for the device.
|
||||
+#
|
||||
+# Allowed properties are:
|
||||
+# ID_SOFTWARE_RADIO=1
|
||||
|
||||
################
|
||||
# Nuand
|
||||
diff --git a/hwdb.d/70-sound-card.hwdb b/hwdb.d/70-sound-card.hwdb
|
||||
index a7ea8c64ee..762993dbf0 100644
|
||||
--- a/hwdb.d/70-sound-card.hwdb
|
||||
+++ b/hwdb.d/70-sound-card.hwdb
|
||||
@@ -1,12 +1,24 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
-# Database of sound hardware that gets misdetected
|
||||
+# Database of sound hardware that gets misdetected.
|
||||
#
|
||||
-# To add local entries, copy this file to
|
||||
-# /etc/udev/hwdb.d/
|
||||
+# The lookup keys are $MODALIAS strings, see udev's hwdb builtin.
|
||||
+#
|
||||
+# To add local entries, create a new file
|
||||
+# /etc/udev/hwdb.d/71-sound-card-local.hwdb
|
||||
# and add your rules there. To load the new rules execute (as root):
|
||||
# systemd-hwdb update
|
||||
-# udevadm trigger
|
||||
+# udevadm trigger /dev/…
|
||||
+#
|
||||
+# If your changes are generally applicable, send them as a pull request to
|
||||
+# https://github.com/systemd/systemd
|
||||
+# or create a bug report on https://github.com/systemd/systemd/issues and
|
||||
+# include your new rules, a description of the device, and the output of
|
||||
+# udevadm info
|
||||
+# for the device.
|
||||
+#
|
||||
+# Allowed properties are:
|
||||
+# SOUND_FORM_FACTOR
|
||||
|
||||
###########################################################
|
||||
# Corsair
|
108
SOURCES/1160-hwdb-say-that-settings-can-be-also-set-to-0.patch
Normal file
108
SOURCES/1160-hwdb-say-that-settings-can-be-also-set-to-0.patch
Normal file
@ -0,0 +1,108 @@
|
||||
From 596eef645ec638ac2ac07e706c71baba934fbc26 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
|
||||
Date: Wed, 14 May 2025 17:59:34 +0200
|
||||
Subject: [PATCH] hwdb: say that settings can be also set to 0
|
||||
|
||||
We recommend that users create overriddes. This creates the problem that there
|
||||
is no syntax to unset a property. Thus, the user needs to just set the property
|
||||
to "something else" in the override file. But then the blurb saying that
|
||||
"VAR=1" (or "VAR=0" in some cases) is the only allowed value can be confusing.
|
||||
Say that both 0 and 1 can be set, since this documentation is also intended
|
||||
for end users.
|
||||
|
||||
In our files, we generally don't want the override values anywhere. But we
|
||||
have a test which checks the rvalue, which should be enough.
|
||||
|
||||
(cherry picked from commit 9282a85ed73e294bb67c4935ce65d588ed9315c7)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-autosuspend.hwdb | 4 ++--
|
||||
hwdb.d/60-seat.hwdb | 2 +-
|
||||
hwdb.d/70-av-production.hwdb | 2 +-
|
||||
hwdb.d/70-hardware-wallets.hwdb | 2 +-
|
||||
hwdb.d/70-lights.hwdb | 2 +-
|
||||
hwdb.d/70-software-radio.hwdb | 2 +-
|
||||
6 files changed, 7 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/60-autosuspend.hwdb b/hwdb.d/60-autosuspend.hwdb
|
||||
index af7d8ba567..f564c6aed9 100644
|
||||
--- a/hwdb.d/60-autosuspend.hwdb
|
||||
+++ b/hwdb.d/60-autosuspend.hwdb
|
||||
@@ -22,9 +22,9 @@
|
||||
# for the device.
|
||||
#
|
||||
# Allowed properties are:
|
||||
-# ID_AUTOSUSPEND=1
|
||||
+# ID_AUTOSUSPEND=0|1
|
||||
# ID_AUTOSUSPEND_DELAY_MS=####
|
||||
-# ID_PERSIST=0
|
||||
+# ID_PERSIST=0|1
|
||||
#
|
||||
# ID_AUTOSUSPEND_DELAY_MS adjusts the delay for autosuspend to something
|
||||
# different than the kernel default of 2000ms.
|
||||
diff --git a/hwdb.d/60-seat.hwdb b/hwdb.d/60-seat.hwdb
|
||||
index 927ea025a2..4b1fc2c1bb 100644
|
||||
--- a/hwdb.d/60-seat.hwdb
|
||||
+++ b/hwdb.d/60-seat.hwdb
|
||||
@@ -8,7 +8,7 @@
|
||||
# device, and not the (parent) PCI device, is tagged with 'master-of-seat'.
|
||||
#
|
||||
# Allowed properties are:
|
||||
-# ID_TAG_MASTER_OF_SEAT=1
|
||||
+# ID_TAG_MASTER_OF_SEAT=0|1
|
||||
|
||||
#########################################
|
||||
# eXtreme Graphic Innovation (XGI)
|
||||
diff --git a/hwdb.d/70-av-production.hwdb b/hwdb.d/70-av-production.hwdb
|
||||
index dc3fddf0e0..fee74729c4 100644
|
||||
--- a/hwdb.d/70-av-production.hwdb
|
||||
+++ b/hwdb.d/70-av-production.hwdb
|
||||
@@ -21,7 +21,7 @@
|
||||
# for the device.
|
||||
#
|
||||
# Allowed properties are:
|
||||
-# ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+# ID_AV_PRODUCTION_CONTROLLER=0|1
|
||||
|
||||
################
|
||||
# Ableton
|
||||
diff --git a/hwdb.d/70-hardware-wallets.hwdb b/hwdb.d/70-hardware-wallets.hwdb
|
||||
index 24983f3f92..94fe332872 100644
|
||||
--- a/hwdb.d/70-hardware-wallets.hwdb
|
||||
+++ b/hwdb.d/70-hardware-wallets.hwdb
|
||||
@@ -18,7 +18,7 @@
|
||||
# for the device.
|
||||
#
|
||||
# Allowed properties are:
|
||||
-# ID_HARDWARE_WALLET=1
|
||||
+# ID_HARDWARE_WALLET=0|1
|
||||
|
||||
################
|
||||
# Trezor Hardware Wallets
|
||||
diff --git a/hwdb.d/70-lights.hwdb b/hwdb.d/70-lights.hwdb
|
||||
index 70c152c8b8..a7753710ed 100644
|
||||
--- a/hwdb.d/70-lights.hwdb
|
||||
+++ b/hwdb.d/70-lights.hwdb
|
||||
@@ -20,7 +20,7 @@
|
||||
# for the device.
|
||||
#
|
||||
# Allowed properties are:
|
||||
-# ID_AV_LIGHTS=1
|
||||
+# ID_AV_LIGHTS=0|1
|
||||
|
||||
################
|
||||
# Logitech
|
||||
diff --git a/hwdb.d/70-software-radio.hwdb b/hwdb.d/70-software-radio.hwdb
|
||||
index 3b578d464f..cbe1539861 100644
|
||||
--- a/hwdb.d/70-software-radio.hwdb
|
||||
+++ b/hwdb.d/70-software-radio.hwdb
|
||||
@@ -19,7 +19,7 @@
|
||||
# for the device.
|
||||
#
|
||||
# Allowed properties are:
|
||||
-# ID_SOFTWARE_RADIO=1
|
||||
+# ID_SOFTWARE_RADIO=0|1
|
||||
|
||||
################
|
||||
# Nuand
|
35
SOURCES/1161-hwdb-add-Analog-Devices-PLUTO-SDR.patch
Normal file
35
SOURCES/1161-hwdb-add-Analog-Devices-PLUTO-SDR.patch
Normal file
@ -0,0 +1,35 @@
|
||||
From 256d8c333f0ec514411cd175ccf80e9b9d7e24ff Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Nuno=20S=C3=A1?= <nuno.sa@analog.com>
|
||||
Date: Thu, 15 May 2025 09:46:16 +0100
|
||||
Subject: [PATCH] hwdb: add Analog Devices PLUTO SDR
|
||||
|
||||
Add hwdb entries for ADI PLUTO. Note that when in DFU (Device Firmware
|
||||
mode) mode, the pid is different. Thus, the two entries.
|
||||
|
||||
We also want to make sure that no AT commands are sent to us and so we
|
||||
set 'ID_MM_DEVICE_IGNORE=1'.
|
||||
|
||||
(cherry picked from commit ab8e0c6c7c2884ab7a112d76ae8f4c2d8bdd63c0)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-software-radio.hwdb | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/70-software-radio.hwdb b/hwdb.d/70-software-radio.hwdb
|
||||
index cbe1539861..1e5aa1dc87 100644
|
||||
--- a/hwdb.d/70-software-radio.hwdb
|
||||
+++ b/hwdb.d/70-software-radio.hwdb
|
||||
@@ -35,3 +35,12 @@ usb:v1D50p6066*
|
||||
# bladeRF 2.0 micro
|
||||
usb:v2CF0p5250*
|
||||
ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# ADI pluto SDR
|
||||
+usb:v0456pB673*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+ ID_MM_DEVICE_IGNORE=1
|
||||
+
|
||||
+# ADI pluto DFU
|
||||
+usb:v0456pB674*
|
||||
+ ID_SOFTWARE_RADIO=1
|
@ -0,0 +1,24 @@
|
||||
From 867310be9614a345fdf0b451e966ada21fe1dff7 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Nuno=20S=C3=A1?= <nuno.sa@analog.com>
|
||||
Date: Thu, 15 May 2025 09:48:30 +0100
|
||||
Subject: [PATCH] hwdb: append ID_MM_DEVICE_IGNORE to hwdb parser
|
||||
|
||||
(cherry picked from commit 42957adf5ce9adee0a5850de7498646f15ccd3b9)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/parse_hwdb.py | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/hwdb.d/parse_hwdb.py b/hwdb.d/parse_hwdb.py
|
||||
index 7dd996e1ee..60022e3095 100755
|
||||
--- a/hwdb.d/parse_hwdb.py
|
||||
+++ b/hwdb.d/parse_hwdb.py
|
||||
@@ -178,6 +178,7 @@ def property_grammar():
|
||||
('ID_SIGNAL_ANALYZER', Or((Literal('0'), Literal('1')))),
|
||||
('ID_HARDWARE_WALLET', Or((Literal('0'), Literal('1')))),
|
||||
('ID_SOFTWARE_RADIO', Or((Literal('0'), Literal('1')))),
|
||||
+ ('ID_MM_DEVICE_IGNORE', Or((Literal('0'), Literal('1')))),
|
||||
('POINTINGSTICK_SENSITIVITY', INTEGER),
|
||||
('ID_INPUT_JOYSTICK_INTEGRATION', Or(('internal', 'external'))),
|
||||
('ID_INPUT_TOUCHPAD_INTEGRATION', Or(('internal', 'external'))),
|
201820
SOURCES/1163-hwdb-run-update-hwdb.patch
Normal file
201820
SOURCES/1163-hwdb-run-update-hwdb.patch
Normal file
File diff suppressed because it is too large
Load Diff
177
SOURCES/1164-hwdb-run-update-hwdb-autosuspend.patch
Normal file
177
SOURCES/1164-hwdb-run-update-hwdb-autosuspend.patch
Normal file
@ -0,0 +1,177 @@
|
||||
From 846f1805871f3923cc52749ec559e7654b83ec26 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
|
||||
Date: Thu, 15 May 2025 10:47:40 +0200
|
||||
Subject: [PATCH] hwdb: run "update-hwdb-autosuspend"
|
||||
|
||||
As usual, mostly additions and a few removals.
|
||||
|
||||
(cherry picked from commit 7bd6626a43a69493523600b1862e5909ed8ae319)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-autosuspend-fingerprint-reader.hwdb | 51 ++++++++++++++++---
|
||||
1 file changed, 44 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/60-autosuspend-fingerprint-reader.hwdb b/hwdb.d/60-autosuspend-fingerprint-reader.hwdb
|
||||
index 813343d08d..d5b7b01fbe 100644
|
||||
--- a/hwdb.d/60-autosuspend-fingerprint-reader.hwdb
|
||||
+++ b/hwdb.d/60-autosuspend-fingerprint-reader.hwdb
|
||||
@@ -162,8 +162,11 @@ usb:v04F3p0C82*
|
||||
usb:v04F3p0C88*
|
||||
usb:v04F3p0C8C*
|
||||
usb:v04F3p0C8D*
|
||||
+usb:v04F3p0C98*
|
||||
usb:v04F3p0C99*
|
||||
+usb:v04F3p0C9D*
|
||||
usb:v04F3p0C9F*
|
||||
+usb:v04F3p0CA3*
|
||||
ID_AUTOSUSPEND=1
|
||||
ID_PERSIST=0
|
||||
|
||||
@@ -176,6 +179,9 @@ usb:v1C7Ap0603*
|
||||
usb:v2808p9E48*
|
||||
usb:v2808pD979*
|
||||
usb:v2808pA959*
|
||||
+usb:v2808pA99A*
|
||||
+usb:v2808pA57A*
|
||||
+usb:v2808pA78A*
|
||||
ID_AUTOSUSPEND=1
|
||||
ID_PERSIST=0
|
||||
|
||||
@@ -187,6 +193,7 @@ usb:v10A5pD805*
|
||||
usb:v10A5pD205*
|
||||
usb:v10A5p9524*
|
||||
usb:v10A5p9544*
|
||||
+usb:v10A5pC844*
|
||||
ID_AUTOSUSPEND=1
|
||||
ID_PERSIST=0
|
||||
|
||||
@@ -200,6 +207,7 @@ usb:v27C6p609C*
|
||||
usb:v27C6p60A2*
|
||||
usb:v27C6p60A4*
|
||||
usb:v27C6p60BC*
|
||||
+usb:v27C6p60C2*
|
||||
usb:v27C6p6304*
|
||||
usb:v27C6p631C*
|
||||
usb:v27C6p633C*
|
||||
@@ -238,25 +246,29 @@ usb:v0BDAp5816*
|
||||
|
||||
# Supported by libfprint driver synaptics
|
||||
usb:v06CBp00BD*
|
||||
+usb:v06CBp00C2*
|
||||
+usb:v06CBp00C4*
|
||||
+usb:v06CBp00C6*
|
||||
usb:v06CBp00DF*
|
||||
+usb:v06CBp00F0*
|
||||
usb:v06CBp00F9*
|
||||
usb:v06CBp00FC*
|
||||
-usb:v06CBp00C2*
|
||||
-usb:v06CBp00C4*
|
||||
usb:v06CBp0100*
|
||||
-usb:v06CBp00F0*
|
||||
usb:v06CBp0103*
|
||||
+usb:v06CBp0104*
|
||||
+usb:v06CBp0106*
|
||||
+usb:v06CBp0107*
|
||||
+usb:v06CBp0108*
|
||||
usb:v06CBp0123*
|
||||
usb:v06CBp0124*
|
||||
usb:v06CBp0126*
|
||||
usb:v06CBp0129*
|
||||
-usb:v06CBp0168*
|
||||
usb:v06CBp015F*
|
||||
-usb:v06CBp0104*
|
||||
+usb:v06CBp0168*
|
||||
+usb:v06CBp016C*
|
||||
usb:v06CBp0173*
|
||||
-usb:v06CBp0106*
|
||||
+usb:v06CBp0174*
|
||||
usb:v06CBp019D*
|
||||
-usb:v06CBp00C6*
|
||||
ID_AUTOSUSPEND=1
|
||||
ID_PERSIST=0
|
||||
|
||||
@@ -325,7 +337,10 @@ usb:v138Ap0091*
|
||||
ID_PERSIST=0
|
||||
|
||||
# Known unsupported devices
|
||||
+usb:v0A5Cp5802*
|
||||
usb:v047Dp00F2*
|
||||
+usb:v047Dp8054*
|
||||
+usb:v047Dp8055*
|
||||
usb:v04E8p730B*
|
||||
usb:v04F3p036B*
|
||||
usb:v04F3p0C00*
|
||||
@@ -333,16 +348,25 @@ usb:v04F3p0C4C*
|
||||
usb:v04F3p0C57*
|
||||
usb:v04F3p0C5E*
|
||||
usb:v04F3p0C5A*
|
||||
+usb:v04F3p0C60*
|
||||
usb:v04F3p0C6C*
|
||||
usb:v04F3p0C70*
|
||||
usb:v04F3p0C72*
|
||||
usb:v04F3p0C77*
|
||||
+usb:v04F3p0C7C*
|
||||
+usb:v04F3p0C7F*
|
||||
+usb:v04F3p0C80*
|
||||
+usb:v04F3p0C85*
|
||||
+usb:v04F3p0C90*
|
||||
usb:v04F3p2706*
|
||||
usb:v04F3p3032*
|
||||
usb:v04F3p3057*
|
||||
usb:v04F3p3104*
|
||||
usb:v04F3p310D*
|
||||
usb:v04F3p3128*
|
||||
+usb:v04F3p0C8A*
|
||||
+usb:v05BAp000E*
|
||||
+usb:v06CBp0051*
|
||||
usb:v06CBp0081*
|
||||
usb:v06CBp0088*
|
||||
usb:v06CBp008A*
|
||||
@@ -362,6 +386,7 @@ usb:v06CBp00E4*
|
||||
usb:v06CBp00E7*
|
||||
usb:v06CBp00E9*
|
||||
usb:v06CBp00FD*
|
||||
+usb:v06CBp00FF*
|
||||
usb:v0A5Cp5801*
|
||||
usb:v0A5Cp5805*
|
||||
usb:v0A5Cp5834*
|
||||
@@ -381,6 +406,8 @@ usb:v0BDAp5812*
|
||||
usb:v10A5p0007*
|
||||
usb:v10A5p9200*
|
||||
usb:v10A5p9800*
|
||||
+usb:v10A5pA120*
|
||||
+usb:v10A5pA900*
|
||||
usb:v10A5pE340*
|
||||
usb:v1188p9545*
|
||||
usb:v138Ap0007*
|
||||
@@ -401,7 +428,11 @@ usb:v16D1p1027*
|
||||
usb:v1C7Ap0300*
|
||||
usb:v1C7Ap0575*
|
||||
usb:v1C7Ap0576*
|
||||
+usb:v1C7Ap0584*
|
||||
usb:v1C7Ap0577*
|
||||
+usb:v1C7Ap057E*
|
||||
+usb:v2541p0236*
|
||||
+usb:v2541p9711*
|
||||
usb:v27C6p5042*
|
||||
usb:v27C6p5110*
|
||||
usb:v27C6p5117*
|
||||
@@ -430,11 +461,17 @@ usb:v27C6p5740*
|
||||
usb:v27C6p5E0A*
|
||||
usb:v27C6p581A*
|
||||
usb:v27C6p589A*
|
||||
+usb:v27C6p5F10*
|
||||
usb:v27C6p6382*
|
||||
usb:v2808p9338*
|
||||
+usb:v2808p9348*
|
||||
usb:v2808p93A9*
|
||||
+usb:v2808pA658*
|
||||
+usb:v2808pC652*
|
||||
usb:v298Dp2020*
|
||||
usb:v298Dp2033*
|
||||
+usb:v2DF0p0003*
|
||||
+usb:v3274p8012*
|
||||
usb:v3538p0930*
|
||||
ID_AUTOSUSPEND=1
|
||||
ID_PERSIST=0
|
26
SOURCES/1165-hwdb-add-missing-PLUTO-SDR-vendor-name.patch
Normal file
26
SOURCES/1165-hwdb-add-missing-PLUTO-SDR-vendor-name.patch
Normal file
@ -0,0 +1,26 @@
|
||||
From 7869113a7cafeee620dc9409c6920bc1d4de8fd1 Mon Sep 17 00:00:00 2001
|
||||
From: AsciiWolf <drusek@redhat.com>
|
||||
Date: Fri, 16 May 2025 12:14:36 +0200
|
||||
Subject: [PATCH] hwdb: add missing PLUTO SDR vendor name
|
||||
|
||||
(cherry picked from commit b2ef1818e68c455e08fb74421e37f325cea5a419)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-software-radio.hwdb | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/70-software-radio.hwdb b/hwdb.d/70-software-radio.hwdb
|
||||
index 1e5aa1dc87..1347f284e6 100644
|
||||
--- a/hwdb.d/70-software-radio.hwdb
|
||||
+++ b/hwdb.d/70-software-radio.hwdb
|
||||
@@ -36,6 +36,9 @@ usb:v1D50p6066*
|
||||
usb:v2CF0p5250*
|
||||
ID_SOFTWARE_RADIO=1
|
||||
|
||||
+#################
|
||||
+# Analog Devices
|
||||
+#################
|
||||
# ADI pluto SDR
|
||||
usb:v0456pB673*
|
||||
ID_SOFTWARE_RADIO=1
|
47
SOURCES/1166-hwdb-add-Ettus-Research-SDR-devices.patch
Normal file
47
SOURCES/1166-hwdb-add-Ettus-Research-SDR-devices.patch
Normal file
@ -0,0 +1,47 @@
|
||||
From 222a298a261a22fb09808d6761c8fdc9567961ce Mon Sep 17 00:00:00 2001
|
||||
From: AsciiWolf <drusek@redhat.com>
|
||||
Date: Thu, 22 May 2025 13:04:07 +0200
|
||||
Subject: [PATCH] hwdb: add Ettus Research SDR devices
|
||||
|
||||
(cherry picked from commit 9dad00ef94e6207642f04496c56a4123a396530c)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-software-radio.hwdb | 27 +++++++++++++++++++++++++++
|
||||
1 file changed, 27 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/70-software-radio.hwdb b/hwdb.d/70-software-radio.hwdb
|
||||
index 1347f284e6..4bf7301251 100644
|
||||
--- a/hwdb.d/70-software-radio.hwdb
|
||||
+++ b/hwdb.d/70-software-radio.hwdb
|
||||
@@ -47,3 +47,30 @@ usb:v0456pB673*
|
||||
# ADI pluto DFU
|
||||
usb:v0456pB674*
|
||||
ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+#################
|
||||
+# Ettus Research
|
||||
+#################
|
||||
+# USRP1
|
||||
+usb:vFFFEp0002*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# B100
|
||||
+usb:v2500p0002*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# B200
|
||||
+usb:v2500p0020*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+usb:v2500p0021*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+usb:v2500p0022*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+usb:v3923p7813*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+usb:v3923p7814*
|
||||
+ ID_SOFTWARE_RADIO=1
|
227
SOURCES/1167-hwdb-add-RTL-SDR-devices.patch
Normal file
227
SOURCES/1167-hwdb-add-RTL-SDR-devices.patch
Normal file
@ -0,0 +1,227 @@
|
||||
From 2a0901252c43514b613f77b80f3db45ca4314b34 Mon Sep 17 00:00:00 2001
|
||||
From: AsciiWolf <mail@asciiwolf.com>
|
||||
Date: Fri, 23 May 2025 14:28:16 +0200
|
||||
Subject: [PATCH] hwdb: add RTL-SDR devices
|
||||
|
||||
(cherry picked from commit f6f8c6e9fd79dd90600035d11884584be0a404b0)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-software-radio.hwdb | 183 ++++++++++++++++++++++++++++++++--
|
||||
1 file changed, 177 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/70-software-radio.hwdb b/hwdb.d/70-software-radio.hwdb
|
||||
index 4bf7301251..74510bc4ee 100644
|
||||
--- a/hwdb.d/70-software-radio.hwdb
|
||||
+++ b/hwdb.d/70-software-radio.hwdb
|
||||
@@ -21,9 +21,9 @@
|
||||
# Allowed properties are:
|
||||
# ID_SOFTWARE_RADIO=0|1
|
||||
|
||||
-################
|
||||
+##########################################
|
||||
# Nuand
|
||||
-################
|
||||
+##########################################
|
||||
# bladeRF 1.x
|
||||
usb:v2CF0p5246*
|
||||
ID_SOFTWARE_RADIO=1
|
||||
@@ -36,9 +36,9 @@ usb:v1D50p6066*
|
||||
usb:v2CF0p5250*
|
||||
ID_SOFTWARE_RADIO=1
|
||||
|
||||
-#################
|
||||
+##########################################
|
||||
# Analog Devices
|
||||
-#################
|
||||
+##########################################
|
||||
# ADI pluto SDR
|
||||
usb:v0456pB673*
|
||||
ID_SOFTWARE_RADIO=1
|
||||
@@ -48,9 +48,9 @@ usb:v0456pB673*
|
||||
usb:v0456pB674*
|
||||
ID_SOFTWARE_RADIO=1
|
||||
|
||||
-#################
|
||||
+##########################################
|
||||
# Ettus Research
|
||||
-#################
|
||||
+##########################################
|
||||
# USRP1
|
||||
usb:vFFFEp0002*
|
||||
ID_SOFTWARE_RADIO=1
|
||||
@@ -74,3 +74,174 @@ usb:v3923p7813*
|
||||
|
||||
usb:v3923p7814*
|
||||
ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+##########################################
|
||||
+# RTL-SDR
|
||||
+##########################################
|
||||
+# original RTL2832U vid/pid (hama nano, for example)
|
||||
+usb:v0BDAp2832*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# RTL2832U OEM vid/pid, e.g. ezcap EzTV668 (E4000), Newsky TV28T (E4000/R820T) etc.
|
||||
+usb:v0BDAp2838*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# DigitalNow Quad DVB-T PCI-E card (4x FC0012?)
|
||||
+usb:v0413p6680*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Leadtek WinFast DTV Dongle mini D (FC0012)
|
||||
+usb:v0413p6F0F*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Genius TVGo DVB-T03 USB dongle (Ver. B)
|
||||
+usb:v0458p707F*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec Cinergy T Stick Black (rev 1) (FC0012)
|
||||
+usb:v0CCDp00A9*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec NOXON rev 1 (FC0013)
|
||||
+usb:v0CCDp00B3*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec Deutschlandradio DAB Stick (FC0013)
|
||||
+usb:v0CCDp00B4*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec NOXON DAB Stick - Radio Energy (FC0013)
|
||||
+usb:v0CCDp00B5*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec Media Broadcast DAB Stick (FC0013)
|
||||
+usb:v0CCDp00B7*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec BR DAB Stick (FC0013)
|
||||
+usb:v0CCDp00B8*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec WDR DAB Stick (FC0013)
|
||||
+usb:v0CCDp00B9*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec MuellerVerlag DAB Stick (FC0013)
|
||||
+usb:v0CCDp00C0*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec Fraunhofer DAB Stick (FC0013)
|
||||
+usb:v0CCDp00C6*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec Cinergy T Stick RC (Rev.3) (E4000)
|
||||
+usb:v0CCDp00D3*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec T Stick PLUS (E4000)
|
||||
+usb:v0CCDp00D7*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Terratec NOXON rev 2 (E4000)
|
||||
+usb:v0CCDp00E0*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# PixelView PV-DT235U(RN) (FC0012)
|
||||
+usb:v1554p5020*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Astrometa DVB-T/DVB-T2 (R828D)
|
||||
+usb:v15F4p0131*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# HanfTek DAB+FM+DVB-T
|
||||
+usb:v15F4p0133*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Compro Videomate U620F (E4000)
|
||||
+usb:v185Bp0620*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Compro Videomate U650F (E4000)
|
||||
+usb:v185Bp0650*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Compro Videomate U680F (E4000)
|
||||
+usb:v185Bp0680*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# GIGABYTE GT-U7300 (FC0012)
|
||||
+usb:v1B80pD393*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# DIKOM USB-DVBT HD
|
||||
+usb:v1B80pD394*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Peak 102569AGPK (FC0012)
|
||||
+usb:v1B80pD395*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# KWorld KW-UB450-T USB DVB-T Pico TV (TUA9001)
|
||||
+usb:v1B80pD397*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Zaapa ZT-MINDVBZP (FC0012)
|
||||
+usb:v1B80pD398*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# SVEON STV20 DVB-T USB & FM (FC0012)
|
||||
+usb:v1B80pD39D*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Twintech UT-40 (FC0013)
|
||||
+usb:v1B80pD3A4*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# ASUS U3100MINI_PLUS_V2 (FC0013)
|
||||
+usb:v1B80pD3A8*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# SVEON STV27 DVB-T USB & FM (FC0013)
|
||||
+usb:v1B80pD3AF*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# SVEON STV21 DVB-T USB & FM
|
||||
+usb:v1B80pD3B0*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Dexatek DK DVB-T Dongle (Logilink VG0002A) (FC2580)
|
||||
+usb:v1D19p1101*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Dexatek DK DVB-T Dongle (MSI DigiVox mini II V3.0)
|
||||
+usb:v1D19p1102*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Dexatek DK 5217 DVB-T Dongle (FC2580)
|
||||
+usb:v1D19p1103*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# MSI DigiVox Micro HD (FC2580)
|
||||
+usb:v1D19p1104*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Sweex DVB-T USB (FC0012)
|
||||
+usb:v1F4DpA803*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# GTek T803 (FC0012)
|
||||
+usb:v1F4DpB803*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# Lifeview LV5TDeluxe (FC0012)
|
||||
+usb:v1F4DpC803*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# MyGica TD312 (FC0012)
|
||||
+usb:v1F4DpD286*
|
||||
+ ID_SOFTWARE_RADIO=1
|
||||
+
|
||||
+# PROlectrix DV107669 (FC0012)
|
||||
+usb:v1F4DpD803*
|
||||
+ ID_SOFTWARE_RADIO=1
|
@ -0,0 +1,36 @@
|
||||
From f72100d5ae2aab418b2a80ee6e34187451d25c64 Mon Sep 17 00:00:00 2001
|
||||
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
||||
Date: Sat, 24 May 2025 00:13:02 +0900
|
||||
Subject: [PATCH] hwdb: merge entries for Ettus Research B200
|
||||
|
||||
Follow-up for 9dad00ef94e6207642f04496c56a4123a396530c.
|
||||
|
||||
(cherry picked from commit c2fcfda20f2336bcb9bd2cc01938f9211f3c9a29)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-software-radio.hwdb | 8 --------
|
||||
1 file changed, 8 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/70-software-radio.hwdb b/hwdb.d/70-software-radio.hwdb
|
||||
index 74510bc4ee..b005309101 100644
|
||||
--- a/hwdb.d/70-software-radio.hwdb
|
||||
+++ b/hwdb.d/70-software-radio.hwdb
|
||||
@@ -61,17 +61,9 @@ usb:v2500p0002*
|
||||
|
||||
# B200
|
||||
usb:v2500p0020*
|
||||
- ID_SOFTWARE_RADIO=1
|
||||
-
|
||||
usb:v2500p0021*
|
||||
- ID_SOFTWARE_RADIO=1
|
||||
-
|
||||
usb:v2500p0022*
|
||||
- ID_SOFTWARE_RADIO=1
|
||||
-
|
||||
usb:v3923p7813*
|
||||
- ID_SOFTWARE_RADIO=1
|
||||
-
|
||||
usb:v3923p7814*
|
||||
ID_SOFTWARE_RADIO=1
|
||||
|
@ -0,0 +1,86 @@
|
||||
From 565fc0f8f5d4daf769ccf928a1d8353c27f29e21 Mon Sep 17 00:00:00 2001
|
||||
From: tuxmainy <magic-github@damage.devloop.de>
|
||||
Date: Mon, 26 May 2025 20:50:04 +0000
|
||||
Subject: [PATCH] hwdb: make Saitek PLC Pro Flight Rudder Pedals a joystick
|
||||
(#37601)
|
||||
|
||||
Fuzzy logic on joystick vs. advanced keyboard detection thinks the
|
||||
rudders are a keyboard. Adding this forces udev to use this device as
|
||||
joystick.
|
||||
|
||||
```
|
||||
P: /devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:06A3:0763.000D/input/input22/event3
|
||||
M: event3
|
||||
R: 3
|
||||
U: input
|
||||
D: c 13:67
|
||||
N: input/event3
|
||||
L: 0
|
||||
S: input/by-id/usb-Saitek_Saitek_Pro_Flight_Rudder_Pedals-event-joystick
|
||||
S: input/by-path/pci-0000:00:14.0-usbv2-0:3:1.0-event-joystick
|
||||
S: input/by-path/pci-0000:00:14.0-usb-0:3:1.0-event-joystick
|
||||
E: DEVPATH=/devices/pci0000:00/0000:00:14.0/usb1/1-3/1-3:1.0/0003:06A3:0763.000D/input/input22/event3
|
||||
E: DEVNAME=/dev/input/event3
|
||||
E: MAJOR=13
|
||||
E: MINOR=67
|
||||
E: SUBSYSTEM=input
|
||||
E: USEC_INITIALIZED=10981053700
|
||||
E: ID_INPUT=1
|
||||
E: ID_INPUT_JOYSTICK=1
|
||||
E: ID_BUS=usb
|
||||
E: ID_MODEL=Saitek_Pro_Flight_Rudder_Pedals
|
||||
E: ID_MODEL_ENC=Saitek\x20Pro\x20Flight\x20Rudder\x20Pedals
|
||||
E: ID_MODEL_ID=0763
|
||||
E: ID_SERIAL=Saitek_Saitek_Pro_Flight_Rudder_Pedals
|
||||
E: ID_VENDOR=Saitek
|
||||
E: ID_VENDOR_ENC=Saitek
|
||||
E: ID_VENDOR_ID=06a3
|
||||
E: ID_REVISION=0101
|
||||
E: ID_TYPE=hid
|
||||
E: ID_USB_MODEL=Saitek_Pro_Flight_Rudder_Pedals
|
||||
E: ID_USB_MODEL_ENC=Saitek\x20Pro\x20Flight\x20Rudder\x20Pedals
|
||||
E: ID_USB_MODEL_ID=0763
|
||||
E: ID_USB_SERIAL=Saitek_Saitek_Pro_Flight_Rudder_Pedals
|
||||
E: ID_USB_VENDOR=Saitek
|
||||
E: ID_USB_VENDOR_ENC=Saitek
|
||||
E: ID_USB_VENDOR_ID=06a3
|
||||
E: ID_USB_REVISION=0101
|
||||
E: ID_USB_TYPE=hid
|
||||
E: ID_USB_INTERFACES=:030000:
|
||||
E: ID_USB_INTERFACE_NUM=00
|
||||
E: ID_USB_DRIVER=usbhid
|
||||
E: ID_PATH_WITH_USB_REVISION=pci-0000:00:14.0-usbv2-0:3:1.0
|
||||
E: ID_PATH=pci-0000:00:14.0-usb-0:3:1.0
|
||||
E: ID_PATH_TAG=pci-0000_00_14_0-usb-0_3_1_0
|
||||
E: ID_FOR_SEAT=input-pci-0000_00_14_0-usb-0_3_1_0
|
||||
E: LIBINPUT_DEVICE_GROUP=3/6a3/763:usb-0000:00:14.0-3
|
||||
E: DEVLINKS=/dev/input/by-id/usb-Saitek_Saitek_Pro_Flight_Rudder_Pedals-event-joystick /dev/input/by-path/pci-0000:00:14.0-usbv2-0:3:1.0-event-joystick /dev/input/by-path/pci-0000:00:14.>
|
||||
E: TAGS=:seat:uaccess:
|
||||
E: CURRENT_TAGS=:seat:uaccess:
|
||||
```
|
||||
|
||||
```
|
||||
Bus 001 Device 013: ID 06a3:0763 Saitek PLC Pro Flight Rudder Pedals
|
||||
```
|
||||
|
||||
Closes #34642.
|
||||
|
||||
(cherry picked from commit 554d5882b7eb9b6e3a9a918513c6c2c59617f5cd)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-input-id.hwdb | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-input-id.hwdb b/hwdb.d/60-input-id.hwdb
|
||||
index 88fec6e043..6730ac9efa 100644
|
||||
--- a/hwdb.d/60-input-id.hwdb
|
||||
+++ b/hwdb.d/60-input-id.hwdb
|
||||
@@ -102,3 +102,7 @@ id-input:modalias:input:b0003v26CEp01A2*
|
||||
ID_INPUT_JOYSTICK=
|
||||
ID_INPUT_KEY=
|
||||
ID_INPUT=
|
||||
+
|
||||
+# Saitek PLC Pro Flight Rudder Pedals
|
||||
+id-input:modalias:input:b0003v06A3p0763*
|
||||
+ ID_INPUT_JOYSTICK=1
|
33
SOURCES/1170-hwdb-fix-touchpad-for-ASUS-X1504ZA-37696.patch
Normal file
33
SOURCES/1170-hwdb-fix-touchpad-for-ASUS-X1504ZA-37696.patch
Normal file
@ -0,0 +1,33 @@
|
||||
From daa6aeacda465fa701f109ea2a5180663ad24f7b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Micha=C5=82=20Moczulski?= <Michalmoczulski1a@gmail.com>
|
||||
Date: Mon, 2 Jun 2025 22:12:07 +0200
|
||||
Subject: [PATCH] hwdb: fix touchpad for ASUS X1504ZA (#37696)
|
||||
|
||||
Added udev rule generated by `libinput measure fuzz --fuzz=8`, which
|
||||
fixes my touchpad.
|
||||
|
||||
(cherry picked from commit f1851809516dc40497d22e658074992cfd28fccc)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-evdev.hwdb | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-evdev.hwdb b/hwdb.d/60-evdev.hwdb
|
||||
index 47f1c2d2d2..145b10e63a 100644
|
||||
--- a/hwdb.d/60-evdev.hwdb
|
||||
+++ b/hwdb.d/60-evdev.hwdb
|
||||
@@ -219,6 +219,13 @@ evdev:name:ELAN1401:00 04F3:30DC Touchpad:dmi:*:svnASUSTeKCOMPUTERINC.:pnZenBook
|
||||
EVDEV_ABS_35=:::8
|
||||
EVDEV_ABS_36=:::8
|
||||
|
||||
+# ASUS X1504ZA
|
||||
+evdev:name:ASUP1301:00 093A:2009 Touchpad:dmi:*:svnASUSTeKCOMPUTERINC.*:pvr1.0*:
|
||||
+ EVDEV_ABS_00=:::8
|
||||
+ EVDEV_ABS_01=:::8
|
||||
+ EVDEV_ABS_35=:::8
|
||||
+ EVDEV_ABS_36=:::8
|
||||
+
|
||||
#########################################
|
||||
# Avita
|
||||
#########################################
|
65
SOURCES/1171-hwdb-add-support-for-Loupedeck-devices.patch
Normal file
65
SOURCES/1171-hwdb-add-support-for-Loupedeck-devices.patch
Normal file
@ -0,0 +1,65 @@
|
||||
From 0a1fdcb0980fb8797032f84473ef273ed9832715 Mon Sep 17 00:00:00 2001
|
||||
From: tytan652 <tytan652@tytanium.xyz>
|
||||
Date: Thu, 5 Jun 2025 11:26:58 +0200
|
||||
Subject: [PATCH] hwdb: add support for Loupedeck devices
|
||||
|
||||
Razer has partnered with Loupedeck to develop some devices.
|
||||
|
||||
Add support for the following devices:
|
||||
- Loupedeck CT
|
||||
- Loupedeck Live
|
||||
- Loupedeck Live S
|
||||
- Razer Stream Controller
|
||||
- Razer Stream Controller X
|
||||
|
||||
(cherry picked from commit 1c814f35000c239c6078c072eef02f2e1c82e5cc)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-av-production.hwdb | 26 ++++++++++++++++++++++++++
|
||||
1 file changed, 26 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/70-av-production.hwdb b/hwdb.d/70-av-production.hwdb
|
||||
index fee74729c4..e423bd600e 100644
|
||||
--- a/hwdb.d/70-av-production.hwdb
|
||||
+++ b/hwdb.d/70-av-production.hwdb
|
||||
@@ -121,6 +121,21 @@ usb:v06F8pB107*
|
||||
usb:v0C26p001E*
|
||||
ID_AV_PRODUCTION_CONTROLLER=1
|
||||
|
||||
+####################
|
||||
+# Loupedeck
|
||||
+####################
|
||||
+# CT
|
||||
+usb:v2EC2p0003*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
+# Live
|
||||
+usb:v2EC2p0004*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
+# Live S
|
||||
+usb:v2EC2p0006*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
#####################
|
||||
# Native Instruments
|
||||
#####################
|
||||
@@ -200,6 +215,17 @@ usb:v17CCp1130*
|
||||
usb:v2B73p0005*
|
||||
ID_AV_PRODUCTION_CONTROLLER=1
|
||||
|
||||
+####################
|
||||
+# Razer
|
||||
+####################
|
||||
+# Stream Controller
|
||||
+usb:v1532p0D06*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
+# Stream Controller X
|
||||
+usb:v1532p0D09*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
####################
|
||||
# SunSDR
|
||||
####################
|
27
SOURCES/1172-hwdb-Acer-Nitro-ANV15-51-Mic-Toggle.patch
Normal file
27
SOURCES/1172-hwdb-Acer-Nitro-ANV15-51-Mic-Toggle.patch
Normal file
@ -0,0 +1,27 @@
|
||||
From 51cbe4238d9e83fcccea721ea4bb81db88529630 Mon Sep 17 00:00:00 2001
|
||||
From: SoloSaravanan <SoloSaravanan@proton.me>
|
||||
Date: Thu, 5 Jun 2025 18:36:23 +0530
|
||||
Subject: [PATCH] hwdb: Acer Nitro ANV15-51 Mic Toggle
|
||||
|
||||
(cherry picked from commit 4344ef73a03415a9e4e1866e05039804971b1358)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 0ed4478399..22772e7bfa 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -240,6 +240,10 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-58:pvr*
|
||||
KEYBOARD_KEY_8a=micmute # Microphone mute button
|
||||
KEYBOARD_KEY_55=power
|
||||
|
||||
+# Nitro ANV15-51
|
||||
+evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*ANV*15-51:pvr*
|
||||
+ KEYBOARD_KEY_66=micmute # Microphone mute button
|
||||
+
|
||||
###########################################################
|
||||
# Alienware
|
||||
###########################################################
|
@ -0,0 +1,67 @@
|
||||
From e70f9608a2e182836818fb3c11ec2a5b860d39cc Mon Sep 17 00:00:00 2001
|
||||
From: Craig McLure <craig@mclure.net>
|
||||
Date: Tue, 10 Jun 2025 05:52:18 +0100
|
||||
Subject: [PATCH] hwdb: Added Beacn and TC-Helicon Audio controllers (#37798)
|
||||
|
||||
This adds the TC-Helicon and Beacn audio devices as AV production hardware,
|
||||
so that user-space can communicate with them and monitor their inputs.
|
||||
|
||||
(cherry picked from commit 89c8d8bdd1aacf8a65571749c1410d1a9218d1db)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-av-production.hwdb | 34 ++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 34 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/70-av-production.hwdb b/hwdb.d/70-av-production.hwdb
|
||||
index e423bd600e..aa23af6add 100644
|
||||
--- a/hwdb.d/70-av-production.hwdb
|
||||
+++ b/hwdb.d/70-av-production.hwdb
|
||||
@@ -30,6 +30,29 @@
|
||||
usb:v2982p1967*
|
||||
ID_AV_PRODUCTION_CONTROLLER=1
|
||||
|
||||
+####################
|
||||
+# Beacn
|
||||
+####################
|
||||
+# Beacn Mic
|
||||
+usb:v33AEp0001*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
+# Beacn Studio
|
||||
+usb:v33AEp0003*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
+# Beacn Studio (PC2 Port)
|
||||
+usb:v33AEp4003*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
+# Beacn Mix
|
||||
+usb:v33AEp0004*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
+# Beacn Mix Create
|
||||
+usb:v33AEp0007*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
################
|
||||
# Contour
|
||||
################
|
||||
@@ -233,6 +256,17 @@ usb:v1532p0D09*
|
||||
usb:v1FC9p0003*
|
||||
ID_AV_PRODUCTION_CONTROLLER=1
|
||||
|
||||
+####################
|
||||
+# TC-Helicon
|
||||
+####################
|
||||
+# GoXLR
|
||||
+usb:v1220p8FE4*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
+# GoXLR Mini
|
||||
+usb:v1220p8FE0*
|
||||
+ ID_AV_PRODUCTION_CONTROLLER=1
|
||||
+
|
||||
####################
|
||||
# Xencelabs
|
||||
####################
|
@ -0,0 +1,26 @@
|
||||
From d2ee46bc021b174de5f5d55425791c5068415d73 Mon Sep 17 00:00:00 2001
|
||||
From: Oliver Schramm <oliver.schramm97@gmail.com>
|
||||
Date: Sun, 22 Jun 2025 13:51:51 +0200
|
||||
Subject: [PATCH] hwdb: Add support for Lenovo IdeaPad Slim 5 series
|
||||
|
||||
Signed-off-by: Oliver Schramm <oliver.schramm97@gmail.com>
|
||||
(cherry picked from commit 16fe095178230ff276ac44958d7295d73eb35652)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 22772e7bfa..5882ffd9e3 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -1115,6 +1115,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnLENOVO*:pn*IdeaPad*U300s*:pvr*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO*:pn*IdeaPad*Z370*:pvr*
|
||||
# Lenovo IdeaPad Flex 5
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO:*:pvrIdeaPadFlex5*
|
||||
+# Lenovo IdeaPad Slim 5
|
||||
+evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO:*:pvrIdeaPadSlim5*
|
||||
# Lenovo Yoga S940 (9th gen)
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO:pn81Q7*:pvrLenovoYogaS940:*
|
||||
# Lenovo ThinkBook 16G6IRL
|
113
SOURCES/1175-hwdb-Add-hwbd-definitions-for-maker-tools.patch
Normal file
113
SOURCES/1175-hwdb-Add-hwbd-definitions-for-maker-tools.patch
Normal file
@ -0,0 +1,113 @@
|
||||
From 29cba709aec7f84d72cfb420b643fe0df44c5ded Mon Sep 17 00:00:00 2001
|
||||
From: Bastien Nocera <hadess@hadess.net>
|
||||
Date: Sat, 21 Jun 2025 20:01:18 +0200
|
||||
Subject: [PATCH] hwdb: Add hwbd definitions for maker tools
|
||||
|
||||
As originally added back in 2016 in 68ea57b21d4d ("Added support
|
||||
for 3D printers to uaccess (ID_MAKER_TOOL)").
|
||||
|
||||
The first devices added would be 3D printers compatible with Flashprint
|
||||
from Flashforge, as listed in this connector plugin:
|
||||
https://github.com/Mrnt/OctoPrint-FlashForge/blob/master/octoprint_flashforge/__init__.py#L28
|
||||
|
||||
See https://github.com/flathub/com.flashforge.FlashPrint/issues/59
|
||||
|
||||
(cherry picked from commit 3dcb56f5e0fe4d937a003bf89496a27b52c5c69e)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-maker-tools.hwdb | 72 ++++++++++++++++++++++++++++++++++++++
|
||||
hwdb.d/parse_hwdb.py | 1 +
|
||||
2 files changed, 73 insertions(+)
|
||||
create mode 100644 hwdb.d/70-maker-tools.hwdb
|
||||
|
||||
diff --git a/hwdb.d/70-maker-tools.hwdb b/hwdb.d/70-maker-tools.hwdb
|
||||
new file mode 100644
|
||||
index 0000000000..acbd61de02
|
||||
--- /dev/null
|
||||
+++ b/hwdb.d/70-maker-tools.hwdb
|
||||
@@ -0,0 +1,72 @@
|
||||
+# This file is part of systemd.
|
||||
+#
|
||||
+# Database for maker tools, like CNCs, laser cutters, 3D printers,
|
||||
+# or any other so called "maker tools" and and that should be
|
||||
+# accessible to the seat owner.
|
||||
+#
|
||||
+# Permitted keys:
|
||||
+# Specify if a device is a maker tool
|
||||
+# ID_MAKER_TOOL=1|0
|
||||
+
|
||||
+###########################################################
|
||||
+# Dremel
|
||||
+###########################################################
|
||||
+# Dremel IdeaBuilder 3D20
|
||||
+usb:v2A89p8889*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+# Dremel IdeaBuilder 3D45
|
||||
+usb:v2A89p888D*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+###########################################################
|
||||
+# Flashforge
|
||||
+###########################################################
|
||||
+# Flashforge Dreamer
|
||||
+usb:v2B71p0001*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+# Flashforge Finder v1
|
||||
+usb:v2B71p0002*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+# Flashforge Guider II
|
||||
+usb:v2B71p0004*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+# Flashforge Inventor
|
||||
+usb:v2B71p0005*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+# Flashforge Finder v2
|
||||
+usb:v2B71p0007*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+# Flashforge Guider IIs
|
||||
+usb:v2B71p0009*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+# Flashforge Dreamer NX
|
||||
+usb:v2B71p000A*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+# Flashforge Creator Max
|
||||
+usb:v2B71p00E7*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+# Flashforge Finder v2.12
|
||||
+usb:v2B71p00EE*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+# FlashForge Creator Pro 2
|
||||
+usb:v2B71p000E*
|
||||
+ ID_MAKER_TOOL=1
|
||||
+
|
||||
+###########################################################
|
||||
+# PowerSpec
|
||||
+###########################################################
|
||||
+# PowerSpec Ultra 3DPrinter
|
||||
+usb:v0315p0001*
|
||||
+usb:v2B71p00F6*
|
||||
+usb:v2B71p00FF
|
||||
+ ID_MAKER_TOOL=1
|
||||
diff --git a/hwdb.d/parse_hwdb.py b/hwdb.d/parse_hwdb.py
|
||||
index 60022e3095..9a599e735c 100755
|
||||
--- a/hwdb.d/parse_hwdb.py
|
||||
+++ b/hwdb.d/parse_hwdb.py
|
||||
@@ -176,6 +176,7 @@ def property_grammar():
|
||||
('ID_INPUT_TOUCHSCREEN', id_input_setting),
|
||||
('ID_INPUT_TRACKBALL', id_input_setting),
|
||||
('ID_SIGNAL_ANALYZER', Or((Literal('0'), Literal('1')))),
|
||||
+ ('ID_MAKER_TOOL', Or((Literal('0'), Literal('1')))),
|
||||
('ID_HARDWARE_WALLET', Or((Literal('0'), Literal('1')))),
|
||||
('ID_SOFTWARE_RADIO', Or((Literal('0'), Literal('1')))),
|
||||
('ID_MM_DEVICE_IGNORE', Or((Literal('0'), Literal('1')))),
|
@ -0,0 +1,32 @@
|
||||
From 88ecb9f92eeb25d47d5975507b84d75bce45458b Mon Sep 17 00:00:00 2001
|
||||
From: Andy Shevchenko <andy.shevchenko@gmail.com>
|
||||
Date: Fri, 27 Jun 2025 01:08:45 +0300
|
||||
Subject: [PATCH] hwdb: Add accel orientation quirk for the Microtech e-tab Pro
|
||||
|
||||
Signed-off-by: Andy Shevchenko <andy.shevchenko@gmail.com>
|
||||
(cherry picked from commit 318c4f7b810e8271b9a418fba9a526ff28a942ca)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-sensor.hwdb | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-sensor.hwdb b/hwdb.d/60-sensor.hwdb
|
||||
index b25dda8959..8f6afb88bc 100644
|
||||
--- a/hwdb.d/60-sensor.hwdb
|
||||
+++ b/hwdb.d/60-sensor.hwdb
|
||||
@@ -866,6 +866,14 @@ sensor:modalias:acpi:KIOX000A*:dmi:*:rvnMETAPHYUNI:rnMetawillBook01:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, -1
|
||||
ACCEL_LOCATION=display
|
||||
|
||||
+#########################################
|
||||
+# Microtech
|
||||
+#########################################
|
||||
+
|
||||
+# Microtech e-tab Pro
|
||||
+sensor:modalias:acpi:KIOX000A*:dmi:*:svnMicrotech:pne-tabPro:*
|
||||
+ ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
+
|
||||
#########################################
|
||||
# MPMAN
|
||||
#########################################
|
@ -0,0 +1,26 @@
|
||||
From b18673b603c04b8b02da067f7f68ba04d2f99afe Mon Sep 17 00:00:00 2001
|
||||
From: AsciiWolf <mail@asciiwolf.com>
|
||||
Date: Sat, 5 Jul 2025 23:32:09 +0200
|
||||
Subject: [PATCH] hwdb: add 70-maker-tools.hwdb to meson.build
|
||||
|
||||
The hwdb file was not added there in 3dcb56f5e0fe4d937a003bf89496a27b52c5c69e for some reason
|
||||
|
||||
(cherry picked from commit cdbc500faa7cc95eee4c7ac5344127c5e1709e71)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/meson.build | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/hwdb.d/meson.build b/hwdb.d/meson.build
|
||||
index 5ed49e877a..e95ccda8c7 100644
|
||||
--- a/hwdb.d/meson.build
|
||||
+++ b/hwdb.d/meson.build
|
||||
@@ -31,6 +31,7 @@ hwdb_files_test = files(
|
||||
'70-cameras.hwdb',
|
||||
'70-hardware-wallets.hwdb',
|
||||
'70-joystick.hwdb',
|
||||
+ '70-maker-tools.hwdb',
|
||||
'70-mouse.hwdb',
|
||||
'70-pda.hwdb',
|
||||
'70-pointingstick.hwdb',
|
23
SOURCES/1178-hwdb-fix-typo-in-70-maker-tools.hwdb.patch
Normal file
23
SOURCES/1178-hwdb-fix-typo-in-70-maker-tools.hwdb.patch
Normal file
@ -0,0 +1,23 @@
|
||||
From eab61c92672cdee71a09aaa0df81bc6648d5bcf3 Mon Sep 17 00:00:00 2001
|
||||
From: AsciiWolf <mail@asciiwolf.com>
|
||||
Date: Sat, 5 Jul 2025 23:44:08 +0200
|
||||
Subject: [PATCH] hwdb: fix typo in 70-maker-tools.hwdb
|
||||
|
||||
(cherry picked from commit 225de2729da2b51531083fa0f88351b192db7b23)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/70-maker-tools.hwdb | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hwdb.d/70-maker-tools.hwdb b/hwdb.d/70-maker-tools.hwdb
|
||||
index acbd61de02..86b738bfaa 100644
|
||||
--- a/hwdb.d/70-maker-tools.hwdb
|
||||
+++ b/hwdb.d/70-maker-tools.hwdb
|
||||
@@ -68,5 +68,5 @@ usb:v2B71p000E*
|
||||
# PowerSpec Ultra 3DPrinter
|
||||
usb:v0315p0001*
|
||||
usb:v2B71p00F6*
|
||||
-usb:v2B71p00FF
|
||||
+usb:v2B71p00FF*
|
||||
ID_MAKER_TOOL=1
|
21435
SOURCES/1179-hwdb-update.patch
Normal file
21435
SOURCES/1179-hwdb-update.patch
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,28 @@
|
||||
From 0f88bbb9eca500c74512c9e024b1f379d1ec9859 Mon Sep 17 00:00:00 2001
|
||||
From: luc-salles <lucasadrianosalles4@hotmail.com>
|
||||
Date: Wed, 23 Jul 2025 11:30:26 -0400
|
||||
Subject: [PATCH] Fix Positivo K116J search key and www shortcut
|
||||
|
||||
(cherry picked from commit 53b1d3fd48586e0a6129a08729da2e7b81986f06)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 5882ffd9e3..6955e56381 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -2287,6 +2287,11 @@ evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:svnPositivoTecnologiaSA:pn
|
||||
KEYBOARD_KEY_7006d=prog3 # Programmable button
|
||||
KEYBOARD_KEY_7006e=prog4 # Programmable button
|
||||
|
||||
+# Positivo (K116J)
|
||||
+evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivo*:pn*:pvr*:rvnPositivo*:rnK116J*
|
||||
+ KEYBOARD_KEY_69=www
|
||||
+ KEYBOARD_KEY_6e=search
|
||||
+
|
||||
###########################################################
|
||||
# Multilaser
|
||||
###########################################################
|
@ -0,0 +1,29 @@
|
||||
From 0a8d4cca6bf0269145995afd03604bae1a2c6c23 Mon Sep 17 00:00:00 2001
|
||||
From: SoloSaravanan <SoloSaravanan@proton.me>
|
||||
Date: Wed, 30 Jul 2025 10:37:56 +0530
|
||||
Subject: [PATCH] hwdb: Acer Nitro ANV15-51 Nitro Sense Toggle
|
||||
|
||||
This fixes Acer Nitro ANV15-51 Nitro sense toggle
|
||||
|
||||
Event: time 1753852156.475850, -------------- SYN_REPORT ------------
|
||||
Event: time 1753852156.565054, type 4 (EV_MSC), code 4 (MSC_SCAN), value f5
|
||||
Event: time 1753852156.565054, type 1 (EV_KEY), code 148 (KEY_PROG1), value 0
|
||||
(cherry picked from commit 2c1881f42cbe4bed7b02749dfff7f9f58f507f00)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 6955e56381..b48b001917 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -243,6 +243,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-58:pvr*
|
||||
# Nitro ANV15-51
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*ANV*15-51:pvr*
|
||||
KEYBOARD_KEY_66=micmute # Microphone mute button
|
||||
+ KEYBOARD_KEY_f5=prog1 # NitroSense button
|
||||
|
||||
###########################################################
|
||||
# Alienware
|
267
SOURCES/1182-hwdb-several-cleanups.patch
Normal file
267
SOURCES/1182-hwdb-several-cleanups.patch
Normal file
@ -0,0 +1,267 @@
|
||||
From e33a8c64912494e5a0be51d97bab7c9a9ecd6515 Mon Sep 17 00:00:00 2001
|
||||
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
||||
Date: Fri, 1 Aug 2025 05:08:06 +0900
|
||||
Subject: [PATCH] hwdb: several cleanups
|
||||
|
||||
- drop trailing spaces,
|
||||
- replace tabs with spaces,
|
||||
- align comments.
|
||||
|
||||
(cherry picked from commit c574e32fb9498179b4d164a3152cc3ba36812df2)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 100 ++++++++++++++++++++--------------------
|
||||
hwdb.d/60-sensor.hwdb | 8 ++--
|
||||
2 files changed, 54 insertions(+), 54 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index b48b001917..0ac71d64f7 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -155,8 +155,8 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnAspireA317-33:*
|
||||
# Acer Aspire One AO532h
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnAO532h:*
|
||||
KEYBOARD_KEY_84=bluetooth
|
||||
- KEYBOARD_KEY_ce=unknown # Brightness Up, also emitted by acpi-video, ignore
|
||||
- KEYBOARD_KEY_ef=unknown # Brightness Down, also emitted by acpi-video, ignore
|
||||
+ KEYBOARD_KEY_ce=unknown # Brightness Up, also emitted by acpi-video, ignore
|
||||
+ KEYBOARD_KEY_ef=unknown # Brightness Down, also emitted by acpi-video, ignore
|
||||
|
||||
# Acer Aspire One AOD270 (Atom N2600) and its Packard Bell Dot SC rebrand
|
||||
evdev:name:Acer WMI hotkeys:dmi:bvn*:bvr*:bd*:svnAcer*:pnAOD270*:*
|
||||
@@ -165,8 +165,8 @@ evdev:name:Acer WMI hotkeys:dmi:*:svnPackardBell:pndots:*:rvnPackardBell:rnSJE01
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnAOD270*:*
|
||||
evdev:atkbd:dmi:*:svnPackardBell:pndots:*:rvnPackardBell:rnSJE01_CT:*
|
||||
- KEYBOARD_KEY_ce=unknown # Brightness Up, also emitted by acpi-video, ignore
|
||||
- KEYBOARD_KEY_ef=unknown # Brightness Down, also emitted by acpi-video, ignore
|
||||
+ KEYBOARD_KEY_ce=unknown # Brightness Up, also emitted by acpi-video, ignore
|
||||
+ KEYBOARD_KEY_ef=unknown # Brightness Down, also emitted by acpi-video, ignore
|
||||
|
||||
# Predator PT314-52s
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnPredator*PT314-52s:pvr*
|
||||
@@ -243,7 +243,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-58:pvr*
|
||||
# Nitro ANV15-51
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*ANV*15-51:pvr*
|
||||
KEYBOARD_KEY_66=micmute # Microphone mute button
|
||||
- KEYBOARD_KEY_f5=prog1 # NitroSense button
|
||||
+ KEYBOARD_KEY_f5=prog1 # NitroSense button
|
||||
|
||||
###########################################################
|
||||
# Alienware
|
||||
@@ -304,10 +304,10 @@ evdev:name:gpio-keys:phys:gpio-keys/input0:ev:100003:dmi:*:svnASUSTeKCOMPUTERINC
|
||||
# All four of these buttons generate a multi-scancode sequence
|
||||
# consisting of Left_Meta, Right_Ctrl and another scancode.
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAYANEO:pnKUN:pvr*
|
||||
- KEYBOARD_KEY_18=f15 # LC (next to the left shoulder button)
|
||||
- KEYBOARD_KEY_20=f16 # RC (next to the right shoulder button)
|
||||
- KEYBOARD_KEY_28=f17 # Ayaneo (lower-right corner of screen)
|
||||
- KEYBOARD_KEY_30=f18 # Touchpad Mode (top-right corner of screen)
|
||||
+ KEYBOARD_KEY_18=f15 # LC (next to the left shoulder button)
|
||||
+ KEYBOARD_KEY_20=f16 # RC (next to the right shoulder button)
|
||||
+ KEYBOARD_KEY_28=f17 # Ayaneo (lower-right corner of screen)
|
||||
+ KEYBOARD_KEY_30=f18 # Touchpad Mode (top-right corner of screen)
|
||||
|
||||
# Most AYANEO devices expose an AT Translated Set 2 Keyboard
|
||||
# for either three or four additional buttons not available
|
||||
@@ -316,10 +316,10 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAYANEO:pnKUN:pvr*
|
||||
# depend on the model, but the final scancode is always the
|
||||
# same.
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:*:svnAYANEO:*
|
||||
- KEYBOARD_KEY_66=f15 # LC (All models)
|
||||
- KEYBOARD_KEY_67=f16 # RC (All models)
|
||||
- KEYBOARD_KEY_68=f17 # Ayaneo (All models)
|
||||
- KEYBOARD_KEY_69=f18 # Touchpad Mode (Kun only)
|
||||
+ KEYBOARD_KEY_66=f15 # LC (All models)
|
||||
+ KEYBOARD_KEY_67=f16 # RC (All models)
|
||||
+ KEYBOARD_KEY_68=f17 # Ayaneo (All models)
|
||||
+ KEYBOARD_KEY_69=f18 # Touchpad Mode (Kun only)
|
||||
|
||||
###########################################################
|
||||
# BenQ
|
||||
@@ -433,10 +433,10 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnInspiron*1210:*
|
||||
|
||||
# Dell Inspiron 11 3168
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnInspiron11-3168:pvr*
|
||||
- KEYBOARD_KEY_c7=!home # Fn-LeftArrow
|
||||
- KEYBOARD_KEY_cf=!end # Fn-RightArrow
|
||||
- KEYBOARD_KEY_c9=!pageup # Fn-UpArrow
|
||||
- KEYBOARD_KEY_d1=!pagedown # Fn-DownArrow
|
||||
+ KEYBOARD_KEY_c7=!home # Fn-LeftArrow
|
||||
+ KEYBOARD_KEY_cf=!end # Fn-RightArrow
|
||||
+ KEYBOARD_KEY_c9=!pageup # Fn-UpArrow
|
||||
+ KEYBOARD_KEY_d1=!pagedown # Fn-DownArrow
|
||||
|
||||
# Dell Inspiron 1520 and Latitude 2110
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pnInspiron*1520:*
|
||||
@@ -505,7 +505,7 @@ evdev:name:Dell Privacy Driver:dmi:bvn*:bvr*:bd*:svnDell*:pnPrecision*:*
|
||||
|
||||
# Dell Professional Sound Bar AE515
|
||||
evdev:input:b0003v413CpA506*
|
||||
- KEYBOARD_KEY_b002f=micmute # Mic mute toggle
|
||||
+ KEYBOARD_KEY_b002f=micmute # Mic mute toggle
|
||||
|
||||
###########################################################
|
||||
# Everex
|
||||
@@ -704,10 +704,10 @@ evdev:name:Intel HID events:dmi:bvn*:bvr*:bd*:svnHP*:pnHPENVYx3602-in-1*:*
|
||||
|
||||
# HP Elite x2 1013 G3
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnHP*:pnHPElitex21013G3:*
|
||||
- KEYBOARD_KEY_f8=unknown # rfkill is also reported by HP Wireless hotkeys
|
||||
+ KEYBOARD_KEY_f8=unknown # rfkill is also reported by HP Wireless hotkeys
|
||||
KEYBOARD_KEY_64=calendar
|
||||
- KEYBOARD_KEY_81=micmute # Microphone mute button
|
||||
- KEYBOARD_KEY_ee=switchvideomode # Switch display outputs
|
||||
+ KEYBOARD_KEY_81=micmute # Microphone mute button
|
||||
+ KEYBOARD_KEY_ee=switchvideomode # Switch display outputs
|
||||
KEYBOARD_KEY_92=brightnessdown
|
||||
KEYBOARD_KEY_97=brightnessup
|
||||
|
||||
@@ -742,14 +742,14 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2570p*:*
|
||||
evdev:atkbd:dmi:bvncoreboot:bvr*:bd*:svnHewlett-Packard*:pn*EliteBook2170p:*
|
||||
evdev:atkbd:dmi:bvncoreboot:bvr*:bd*:svnHP*:pn*EliteBook2170p:*
|
||||
KEYBOARD_KEY_66=backspace
|
||||
- KEYBOARD_KEY_be=battery # Fn+F2
|
||||
- KEYBOARD_KEY_d7=switchvideomode # Fn+F4
|
||||
- KEYBOARD_KEY_a3=mute # Fn+F5
|
||||
- KEYBOARD_KEY_a1=volumedown # Fn+F6
|
||||
- KEYBOARD_KEY_a2=volumeup # Fn+F7
|
||||
- KEYBOARD_KEY_a4=brightnessdown # Fn+F9
|
||||
- KEYBOARD_KEY_c3=brightnessup # Fn+F10
|
||||
- KEYBOARD_KEY_e3=wlan # Fn+F12
|
||||
+ KEYBOARD_KEY_be=battery # Fn+F2
|
||||
+ KEYBOARD_KEY_d7=switchvideomode # Fn+F4
|
||||
+ KEYBOARD_KEY_a3=mute # Fn+F5
|
||||
+ KEYBOARD_KEY_a1=volumedown # Fn+F6
|
||||
+ KEYBOARD_KEY_a2=volumeup # Fn+F7
|
||||
+ KEYBOARD_KEY_a4=brightnessdown # Fn+F9
|
||||
+ KEYBOARD_KEY_c3=brightnessup # Fn+F10
|
||||
+ KEYBOARD_KEY_e3=wlan # Fn+F12
|
||||
|
||||
# Elitebook 2760p
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnHewlett-Packard*:pn*2760p*:*
|
||||
@@ -1127,8 +1127,8 @@ evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO:pn21KH*:pvrThinkBook16G6IRL:*
|
||||
KEYBOARD_KEY_b0=!volumeup
|
||||
|
||||
evdev:atkbd:dmi:*:svnLENOVO:*:pvrLenovoYoga300-11IBR:*
|
||||
- KEYBOARD_KEY_62=unknown # Touchpad on, also emitted by "Ideapad extra buttons", ignore
|
||||
- KEYBOARD_KEY_63=unknown # Touchpad off, also emitted by "Ideapad extra buttons", ignore
|
||||
+ KEYBOARD_KEY_62=unknown # Touchpad on, also emitted by "Ideapad extra buttons", ignore
|
||||
+ KEYBOARD_KEY_63=unknown # Touchpad off, also emitted by "Ideapad extra buttons", ignore
|
||||
|
||||
# Lenovo Y50-70
|
||||
evdev:atkbd:dmi:bvn*:bvr*:svnLENOVO*:pn*20378*:pvr*
|
||||
@@ -1274,10 +1274,10 @@ evdev:input:b0003v046Dp0056*
|
||||
evdev:input:b0003v046Dp0057*
|
||||
KEYBOARD_KEY_c1041=battery # Battery icon (Fn + F1)
|
||||
|
||||
-#KEYBOARD_KEY_c101d=scrolldown # Button below scrollwheel (see note above)
|
||||
-#KEYBOARD_KEY_c101e=scrollup # Button above scrollwheel (see note above)
|
||||
-#KEYBOARD_KEY_c1022=scrollleft # Left click on scroll-wheel (see note above)
|
||||
-#KEYBOARD_KEY_c1024=scrollright # Right click on scroll-wheel (see note above)
|
||||
+#KEYBOARD_KEY_c101d=scrolldown # Button below scrollwheel (see note above)
|
||||
+#KEYBOARD_KEY_c101e=scrollup # Button above scrollwheel (see note above)
|
||||
+#KEYBOARD_KEY_c1022=scrollleft # Left click on scroll-wheel (see note above)
|
||||
+#KEYBOARD_KEY_c1024=scrollright # Right click on scroll-wheel (see note above)
|
||||
|
||||
# MX3200 keyboard (27 MHz, modelnumber Y-RAV80)
|
||||
evdev:input:b0003v046Dp005C*
|
||||
@@ -1802,7 +1802,7 @@ evdev:input:b0003v258Ap001E*
|
||||
###########################################################
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn*:pn*:pvr*:rvnQuanta:rn30B7:rvr65.2B:*
|
||||
- KEYBOARD_KEY_88=media # "quick play
|
||||
+ KEYBOARD_KEY_88=media # quick play
|
||||
|
||||
###########################################################
|
||||
# Redmi
|
||||
@@ -1842,17 +1842,17 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*200E[45]*:*
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*356V[45]*:pvr*
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*355V[45]*:pvr*
|
||||
- KEYBOARD_KEY_ce=!prog1 # Fn+F1 launch control setting
|
||||
- KEYBOARD_KEY_89=!brightnessdown # Fn+F2 brightness down
|
||||
- KEYBOARD_KEY_88=!brightnessup # Fn+F3 brightness up
|
||||
- KEYBOARD_KEY_82=!switchvideomode # Fn+F4 display toggle
|
||||
- KEYBOARD_KEY_f7=!touchpad_on # Fn+F5 touchpad on
|
||||
- KEYBOARD_KEY_f9=!touchpad_off # Fn+F5 touchpad off
|
||||
- KEYBOARD_KEY_a0=!mute # Fn+F6 mute
|
||||
- KEYBOARD_KEY_ae=!volumedown # Fn+F7 volume down
|
||||
- KEYBOARD_KEY_b0=!volumeup # Fn+F8 volume up
|
||||
- KEYBOARD_KEY_b3=!prog2 # Fn+F11 toggle fan/cool mode
|
||||
- KEYBOARD_KEY_d5=!wlan # Fn+F12 toggle wifi
|
||||
+ KEYBOARD_KEY_ce=!prog1 # Fn+F1 launch control setting
|
||||
+ KEYBOARD_KEY_89=!brightnessdown # Fn+F2 brightness down
|
||||
+ KEYBOARD_KEY_88=!brightnessup # Fn+F3 brightness up
|
||||
+ KEYBOARD_KEY_82=!switchvideomode # Fn+F4 display toggle
|
||||
+ KEYBOARD_KEY_f7=!touchpad_on # Fn+F5 touchpad on
|
||||
+ KEYBOARD_KEY_f9=!touchpad_off # Fn+F5 touchpad off
|
||||
+ KEYBOARD_KEY_a0=!mute # Fn+F6 mute
|
||||
+ KEYBOARD_KEY_ae=!volumedown # Fn+F7 volume down
|
||||
+ KEYBOARD_KEY_b0=!volumeup # Fn+F8 volume up
|
||||
+ KEYBOARD_KEY_b3=!prog2 # Fn+F11 toggle fan/cool mode
|
||||
+ KEYBOARD_KEY_d5=!wlan # Fn+F12 toggle wifi
|
||||
|
||||
# Series 5
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn[sS][aA][mM][sS][uU][nN][gG]*:pn*530U*:*
|
||||
@@ -2290,8 +2290,8 @@ evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:svnPositivoTecnologiaSA:pn
|
||||
|
||||
# Positivo (K116J)
|
||||
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivo*:pn*:pvr*:rvnPositivo*:rnK116J*
|
||||
- KEYBOARD_KEY_69=www
|
||||
- KEYBOARD_KEY_6e=search
|
||||
+ KEYBOARD_KEY_69=www
|
||||
+ KEYBOARD_KEY_6e=search
|
||||
|
||||
###########################################################
|
||||
# Multilaser
|
||||
@@ -2332,7 +2332,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDIXONSP:pnDIXON*:*
|
||||
# The layout must be an xkb compatible layout (defined with XKB_FIXED_LAYOUT),
|
||||
# with an accompanying variant (defined with XKB_FIXED_VARIANT) if necessary.
|
||||
|
||||
-# Yubico Yubico Yubikey II"
|
||||
+# Yubico Yubico Yubikey II
|
||||
evdev:input:b0003v1050p0010*
|
||||
# Yubico Yubikey NEO OTP+CCID
|
||||
evdev:input:b0003v1050p0111*
|
||||
diff --git a/hwdb.d/60-sensor.hwdb b/hwdb.d/60-sensor.hwdb
|
||||
index 8f6afb88bc..d242025bd2 100644
|
||||
--- a/hwdb.d/60-sensor.hwdb
|
||||
+++ b/hwdb.d/60-sensor.hwdb
|
||||
@@ -157,7 +157,7 @@ sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pnT200TA:*
|
||||
|
||||
# Asus Transformer Mini T103HAF
|
||||
sensor:modalias:platform:HID-SENSOR-200073*:dmi:*svn*ASUSTeK*:pnT103HAF:*
|
||||
- ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, -1
|
||||
+ ACCEL_MOUNT_MATRIX=0, -1, 0; 1, 0, 0; 0, 0, -1
|
||||
|
||||
sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:*pnTP201SA:*
|
||||
sensor:modalias:acpi:INVN6500*:dmi:*svnASUSTeK*:pn*E205SA:*
|
||||
@@ -524,7 +524,7 @@ sensor:modalias:acpi:KIOX000A*:dmi:*:svnEVE*:pnEveV:*
|
||||
# Exo
|
||||
#########################################
|
||||
|
||||
-# EXO Wings 2in1 w1125
|
||||
+# EXO Wings 2in1 w1125
|
||||
sensor:modalias:acpi:SMO8500*:dmi:*:svnEXO*:pnWings:*
|
||||
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
|
||||
|
||||
@@ -654,7 +654,7 @@ sensor:modalias:acpi:SMO8840*:dmi:*:svnHUAWEI:pnBOHK-WAX9X:*
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:*:svnTobefilledbyO.E.M.:pnTW891:pvrTobefilledbyO.E.M.:rvnTobefilledbyO.E.M.:rnTW891:rvr1.0:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
-# I.T.Works TW701 7" windows tablet, same hw as Trekstor ST70416-6
|
||||
+# I.T.Works TW701 7 inch windows tablet, same hw as Trekstor ST70416-6
|
||||
sensor:modalias:acpi:BMA250*:dmi:*:bvritWORKS.G.WI71C.JGBMRB*:*:svnInsyde:pni71c:*
|
||||
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
|
||||
|
||||
@@ -908,7 +908,7 @@ sensor:modalias:acpi:KIOX010A*:dmi:*:svnCompletElectroServSA:pnMY8312:*
|
||||
# Nuvision (TMax)
|
||||
#########################################
|
||||
|
||||
-# Nuvision/TMAX 8" Windows signature edition. TM800W560L
|
||||
+# Nuvision/TMAX 8 inch Windows signature edition. TM800W560L
|
||||
sensor:modalias:acpi:KIOX000A*:dmi:*:svnTMAX:pnTM800W560L:*
|
||||
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1
|
||||
|
@ -0,0 +1,46 @@
|
||||
From 07da5b008f5908a418c799946a2cb968a14f269b Mon Sep 17 00:00:00 2001
|
||||
From: RocketDev <ma2014119@outlook.com>
|
||||
Date: Fri, 1 Aug 2025 01:31:11 +0800
|
||||
Subject: [PATCH] hwdb: disable Asus ROG keyboards sending poweroff
|
||||
|
||||
Asus ROG keyboards seems to send power off key code when keyboard wake
|
||||
up. Reserve the key codes could suppress this problem.
|
||||
|
||||
Devices added: ROG Falchion & ROG Scope
|
||||
|
||||
Based on the work by Jon Nettleton:
|
||||
https://gist.github.com/jnettlet/afb20a048b8720f3b4eb8506d8b05643
|
||||
|
||||
(cherry picked from commit 6428c0f48028e09bf5b750fb3fd1f4a3dac7e24e)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 15 +++++++++++++++
|
||||
1 file changed, 15 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 0ac71d64f7..86535bc41b 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -285,6 +285,21 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnASUS:pn*:*
|
||||
KEYBOARD_KEY_ee=volumedown
|
||||
KEYBOARD_KEY_ef=mute
|
||||
|
||||
+# Asus ROG series
|
||||
+# Prevents the keyboard from sending POWER and SLEEP key presses
|
||||
+# when the keyboard goes to sleep.
|
||||
+evdev:input:b*v0B05p*e0111*
|
||||
+ KEYBOARD_KEY_10081=reserved
|
||||
+ KEYBOARD_KEY_10082=reserved
|
||||
+ KEYBOARD_KEY_70070=reserved
|
||||
+ KEYBOARD_KEY_70071=reserved
|
||||
+ KEYBOARD_KEY_70072=reserved
|
||||
+ KEYBOARD_KEY_70073=reserved
|
||||
+ KEYBOARD_KEY_70074=reserved
|
||||
+ KEYBOARD_KEY_70075=reserved
|
||||
+ KEYBOARD_KEY_70076=reserved
|
||||
+ KEYBOARD_KEY_70077=reserved
|
||||
+
|
||||
# Asus TF103C misses the home button in its PNP0C40 GPIO resources
|
||||
# causing the volume-button mappings to be off by one, correct this
|
||||
evdev:name:gpio-keys:phys:gpio-keys/input0:ev:3:dmi:*:svnASUSTeKCOMPUTERINC.:pnTF103C*:*
|
2782
SOURCES/1184-hwdb-update.patch
Normal file
2782
SOURCES/1184-hwdb-update.patch
Normal file
File diff suppressed because it is too large
Load Diff
35
SOURCES/1185-hwdb-update-autosuspend-rules.patch
Normal file
35
SOURCES/1185-hwdb-update-autosuspend-rules.patch
Normal file
@ -0,0 +1,35 @@
|
||||
From b5ea631d1dd70a29933a9114fc4155e0a409015d Mon Sep 17 00:00:00 2001
|
||||
From: Luca Boccassi <luca.boccassi@gmail.com>
|
||||
Date: Mon, 4 Aug 2025 12:25:07 +0100
|
||||
Subject: [PATCH] hwdb: update autosuspend rules
|
||||
|
||||
ninja -C build update-hwdb-autosuspend
|
||||
|
||||
(cherry picked from commit ff08fca8df34aa39c9c6641098110b00472af318)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-autosuspend-fingerprint-reader.hwdb | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-autosuspend-fingerprint-reader.hwdb b/hwdb.d/60-autosuspend-fingerprint-reader.hwdb
|
||||
index d5b7b01fbe..eb25c6bd1e 100644
|
||||
--- a/hwdb.d/60-autosuspend-fingerprint-reader.hwdb
|
||||
+++ b/hwdb.d/60-autosuspend-fingerprint-reader.hwdb
|
||||
@@ -259,6 +259,8 @@ usb:v06CBp0104*
|
||||
usb:v06CBp0106*
|
||||
usb:v06CBp0107*
|
||||
usb:v06CBp0108*
|
||||
+usb:v06CBp0109*
|
||||
+usb:v06CBp010A*
|
||||
usb:v06CBp0123*
|
||||
usb:v06CBp0124*
|
||||
usb:v06CBp0126*
|
||||
@@ -269,6 +271,7 @@ usb:v06CBp016C*
|
||||
usb:v06CBp0173*
|
||||
usb:v06CBp0174*
|
||||
usb:v06CBp019D*
|
||||
+usb:v06CBp019F*
|
||||
ID_AUTOSUSPEND=1
|
||||
ID_PERSIST=0
|
||||
|
@ -0,0 +1,24 @@
|
||||
From b80e1fcbc643bd40749187104b843a1fd4ecb2a7 Mon Sep 17 00:00:00 2001
|
||||
From: novenary <novenary@kwak.zip>
|
||||
Date: Wed, 6 Aug 2025 10:42:49 +0300
|
||||
Subject: [PATCH] hwdb: set touchpad resolution for ThinkPad T14 Gen2a
|
||||
|
||||
(cherry picked from commit 98f5d7f33a10cf057bf9bb954975128cc20c5bbc)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-evdev.hwdb | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/hwdb.d/60-evdev.hwdb b/hwdb.d/60-evdev.hwdb
|
||||
index 145b10e63a..23caebe4b9 100644
|
||||
--- a/hwdb.d/60-evdev.hwdb
|
||||
+++ b/hwdb.d/60-evdev.hwdb
|
||||
@@ -749,6 +749,7 @@ evdev:name:AlpsPS/2 ALPS GlidePoint:dmi:*svnLENOVO:*pvrLenovoU41-70:*
|
||||
# Lenovo Thinkpad T490 and T14/P14s Gen1/2
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*:svnLENOVO:*pvrThinkPadT490:*
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*:svnLENOVO:*pvrThinkPadT14Gen1:*
|
||||
+evdev:name:SynPS/2 Synaptics TouchPad:dmi:*:svnLENOVO:*pvrThinkPadT14Gen2a:*
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*:svnLENOVO:*pvrThinkPadP14sGen1:*
|
||||
evdev:name:SynPS/2 Synaptics TouchPad:dmi:*:svnLENOVO:*pvrThinkPadP14sGen2a:*
|
||||
EVDEV_ABS_00=::44
|
@ -0,0 +1,45 @@
|
||||
From bbb497db692f2d0671a11d9e5d4210e09597923e Mon Sep 17 00:00:00 2001
|
||||
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
||||
Date: Thu, 7 Aug 2025 00:01:12 +0900
|
||||
Subject: [PATCH] Revert "hwdb: disable Asus ROG keyboards sending poweroff"
|
||||
|
||||
This reverts commit 6428c0f48028e09bf5b750fb3fd1f4a3dac7e24e.
|
||||
|
||||
The rule seems to match not only keyboard itself but other devices.
|
||||
Let's revert the change, and consider better way later.
|
||||
|
||||
Fixes #38502.
|
||||
|
||||
(cherry picked from commit 33275ce383745f0538a01adb2d13e080f0da5e8b)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 15 ---------------
|
||||
1 file changed, 15 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 86535bc41b..0ac71d64f7 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -285,21 +285,6 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnASUS:pn*:*
|
||||
KEYBOARD_KEY_ee=volumedown
|
||||
KEYBOARD_KEY_ef=mute
|
||||
|
||||
-# Asus ROG series
|
||||
-# Prevents the keyboard from sending POWER and SLEEP key presses
|
||||
-# when the keyboard goes to sleep.
|
||||
-evdev:input:b*v0B05p*e0111*
|
||||
- KEYBOARD_KEY_10081=reserved
|
||||
- KEYBOARD_KEY_10082=reserved
|
||||
- KEYBOARD_KEY_70070=reserved
|
||||
- KEYBOARD_KEY_70071=reserved
|
||||
- KEYBOARD_KEY_70072=reserved
|
||||
- KEYBOARD_KEY_70073=reserved
|
||||
- KEYBOARD_KEY_70074=reserved
|
||||
- KEYBOARD_KEY_70075=reserved
|
||||
- KEYBOARD_KEY_70076=reserved
|
||||
- KEYBOARD_KEY_70077=reserved
|
||||
-
|
||||
# Asus TF103C misses the home button in its PNP0C40 GPIO resources
|
||||
# causing the volume-button mappings to be off by one, correct this
|
||||
evdev:name:gpio-keys:phys:gpio-keys/input0:ev:3:dmi:*:svnASUSTeKCOMPUTERINC.:pnTF103C*:*
|
@ -0,0 +1,35 @@
|
||||
From 8a0b521e28aba1b3f3c106cf278235b9bcf2d4ee Mon Sep 17 00:00:00 2001
|
||||
From: Vasiliy Kovalev <kovalev@altlinux.org>
|
||||
Date: Sun, 10 Aug 2025 10:24:19 +0300
|
||||
Subject: [PATCH] hwdb: Add launch emoji keyboard mapping for Asus M1607KA
|
||||
|
||||
By default, pressing Fn+F8 maps the scancode to KEY_BLUETOOTH (in evtest,
|
||||
MSC_SCAN 7e -> KEY_BLUETOOTH). Windows/the manufacturer may intercept the
|
||||
same scancode to execute "Launch Emoji keyboard."
|
||||
On Linux, we get the "raw" KEY_BLUETOOTH code, which is unacceptable.
|
||||
|
||||
prog1 is already reserved by default for launching MyAsus (a Windows
|
||||
application) with the Fn+F12 combination, so we will use prog2.
|
||||
|
||||
Signed-off-by: Vasiliy Kovalev <kovalev@altlinux.org>
|
||||
(cherry picked from commit 8557ea5daa1205489e77467f6acdad47b9338c28)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 0ac71d64f7..3a2add4486 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -285,6 +285,9 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnASUS:pn*:*
|
||||
KEYBOARD_KEY_ee=volumedown
|
||||
KEYBOARD_KEY_ef=mute
|
||||
|
||||
+evdev:name:Asus WMI hotkeys:dmi:bvn*:bvr*:bd*:svnASUS*:pn*M1607KA*:*
|
||||
+ KEYBOARD_KEY_7e=prog2 # Fn+F8, launch emoji keyboard
|
||||
+
|
||||
# Asus TF103C misses the home button in its PNP0C40 GPIO resources
|
||||
# causing the volume-button mappings to be off by one, correct this
|
||||
evdev:name:gpio-keys:phys:gpio-keys/input0:ev:3:dmi:*:svnASUSTeKCOMPUTERINC.:pnTF103C*:*
|
@ -0,0 +1,39 @@
|
||||
From aa72a7a7c681931e666a41aa5a4dd0f41f287e09 Mon Sep 17 00:00:00 2001
|
||||
From: Marcos Alano <marcoshalano@gmail.com>
|
||||
Date: Sat, 9 Aug 2025 07:52:27 -0300
|
||||
Subject: [PATCH] Enable KEY_PERFORMANCE key present on Linux 6.17
|
||||
|
||||
Note, this change does not require the kernel running on the host is
|
||||
equal or newer than 6.17. But systemd-udevd needs to be built with the
|
||||
kernel headers with KEY_PERFORMANCE, and the relevant kernel header is
|
||||
already updated by the previous commit.
|
||||
|
||||
(cherry picked from commit d5f65056ee5dea588c168ce64c0dbbc0344d60c8)
|
||||
|
||||
Resolves: RHEL-72697
|
||||
---
|
||||
hwdb.d/60-keyboard.hwdb | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/hwdb.d/60-keyboard.hwdb b/hwdb.d/60-keyboard.hwdb
|
||||
index 3a2add4486..465d527817 100644
|
||||
--- a/hwdb.d/60-keyboard.hwdb
|
||||
+++ b/hwdb.d/60-keyboard.hwdb
|
||||
@@ -251,7 +251,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*ANV*15-51:pvr*
|
||||
|
||||
# Alienware/Dell reserves these keys; safe to apply on all their devices
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAlienware*:pn*:*
|
||||
- KEYBOARD_KEY_68=!prog3 # Fn+f1 Performance mode toggle
|
||||
+ KEYBOARD_KEY_68=!performance # Fn+f1 Performance mode toggle
|
||||
KEYBOARD_KEY_81=touchpad_toggle # Touchpad toggle
|
||||
KEYBOARD_KEY_8a=ejectcd
|
||||
KEYBOARD_KEY_92=macro1 # Fn+f2
|
||||
@@ -396,7 +396,7 @@ evdev:name:gpio-keys:phys:gpio-keys/input0:ev:3:dmi:bvn*:bvr*:bd*:svncube:pni1-T
|
||||
###########################################################
|
||||
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pn*:*
|
||||
- KEYBOARD_KEY_68=!prog2 # G-Mode (Dell-specific)
|
||||
+ KEYBOARD_KEY_68=!performance # G-Mode (Dell-specific)
|
||||
KEYBOARD_KEY_81=playpause # Play/Pause
|
||||
KEYBOARD_KEY_82=stopcd # Stop
|
||||
KEYBOARD_KEY_83=previoussong # Previous song
|
@ -0,0 +1,119 @@
|
||||
From 51b21b29997e2724433111e6ac695d5dc654a6b3 Mon Sep 17 00:00:00 2001
|
||||
From: "Todd C. Miller" <Todd.Miller@sudo.ws>
|
||||
Date: Tue, 6 May 2025 16:39:14 -0600
|
||||
Subject: [PATCH] flush_ports: flush POSIX message queues properly
|
||||
|
||||
On Linux, read() on a message queue descriptor returns the message
|
||||
queue statistics, not the actual message queue data. We need to use
|
||||
mq_receive() to drain the queues instead.
|
||||
|
||||
Fixes a problem where a POSIX message queue socket unit with messages
|
||||
in the queue at shutdown time could result in a hang on reboot/shutdown.
|
||||
|
||||
(cherry picked from commit ffb6adb76367d5ab7d43937ccaac5947717b5b78)
|
||||
|
||||
Resolves: RHEL-90860
|
||||
---
|
||||
src/basic/socket-util.c | 49 +++++++++++++++++++++++++++++++++++++++++
|
||||
src/basic/socket-util.h | 1 +
|
||||
src/core/socket.c | 8 +++++--
|
||||
3 files changed, 56 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/basic/socket-util.c b/src/basic/socket-util.c
|
||||
index 1d86ca3f55..c33a26acef 100644
|
||||
--- a/src/basic/socket-util.c
|
||||
+++ b/src/basic/socket-util.c
|
||||
@@ -3,6 +3,7 @@
|
||||
#include <arpa/inet.h>
|
||||
#include <errno.h>
|
||||
#include <limits.h>
|
||||
+#include <mqueue.h>
|
||||
#include <net/if.h>
|
||||
#include <netdb.h>
|
||||
#include <netinet/ip.h>
|
||||
@@ -1209,6 +1210,54 @@ int flush_accept(int fd) {
|
||||
}
|
||||
}
|
||||
|
||||
+ssize_t flush_mqueue(int fd) {
|
||||
+ _cleanup_free_ char *buf = NULL;
|
||||
+ struct mq_attr attr;
|
||||
+ ssize_t count = 0;
|
||||
+ int r;
|
||||
+
|
||||
+ assert(fd >= 0);
|
||||
+
|
||||
+ /* Similar to flush_fd() but flushes all messages from a POSIX message queue. */
|
||||
+
|
||||
+ for (;;) {
|
||||
+ ssize_t l;
|
||||
+
|
||||
+ r = fd_wait_for_event(fd, POLLIN, /* timeout= */ 0);
|
||||
+ if (r < 0) {
|
||||
+ if (r == -EINTR)
|
||||
+ continue;
|
||||
+
|
||||
+ return r;
|
||||
+ }
|
||||
+ if (r == 0)
|
||||
+ return count;
|
||||
+
|
||||
+ if (!buf) {
|
||||
+ /* Buffer must be at least as large as mq_msgsize. */
|
||||
+ if (mq_getattr(fd, &attr) < 0)
|
||||
+ return -errno;
|
||||
+
|
||||
+ buf = malloc(attr.mq_msgsize);
|
||||
+ if (!buf)
|
||||
+ return -ENOMEM;
|
||||
+ }
|
||||
+
|
||||
+ l = mq_receive(fd, buf, attr.mq_msgsize, /* msg_prio = */ NULL);
|
||||
+ if (l < 0) {
|
||||
+ if (errno == EINTR)
|
||||
+ continue;
|
||||
+
|
||||
+ if (errno == EAGAIN)
|
||||
+ return count;
|
||||
+
|
||||
+ return -errno;
|
||||
+ }
|
||||
+
|
||||
+ count += l;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
struct cmsghdr* cmsg_find(struct msghdr *mh, int level, int type, socklen_t length) {
|
||||
struct cmsghdr *cmsg;
|
||||
|
||||
diff --git a/src/basic/socket-util.h b/src/basic/socket-util.h
|
||||
index 61bf8ff32b..4fbc732322 100644
|
||||
--- a/src/basic/socket-util.h
|
||||
+++ b/src/basic/socket-util.h
|
||||
@@ -186,6 +186,7 @@ int receive_one_fd(int transport_fd, int flags);
|
||||
ssize_t next_datagram_size_fd(int fd);
|
||||
|
||||
int flush_accept(int fd);
|
||||
+ssize_t flush_mqueue(int fd);
|
||||
|
||||
#define CMSG_FOREACH(cmsg, mh) \
|
||||
for ((cmsg) = CMSG_FIRSTHDR(mh); (cmsg); (cmsg) = CMSG_NXTHDR((mh), (cmsg)))
|
||||
diff --git a/src/core/socket.c b/src/core/socket.c
|
||||
index 65b07e70fd..7abae70255 100644
|
||||
--- a/src/core/socket.c
|
||||
+++ b/src/core/socket.c
|
||||
@@ -2284,8 +2284,12 @@ static void flush_ports(Socket *s) {
|
||||
if (p->fd < 0)
|
||||
continue;
|
||||
|
||||
- (void) flush_accept(p->fd);
|
||||
- (void) flush_fd(p->fd);
|
||||
+ if (p->type == SOCKET_MQUEUE)
|
||||
+ (void) flush_mqueue(p->fd);
|
||||
+ else {
|
||||
+ (void) flush_accept(p->fd);
|
||||
+ (void) flush_fd(p->fd);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,125 @@
|
||||
From 1ff8791c68726c97d745ed0c8ec8f1f6f97255cf Mon Sep 17 00:00:00 2001
|
||||
From: Li Tian <litian@redhat.com>
|
||||
Date: Wed, 16 Jul 2025 11:41:22 +0800
|
||||
Subject: [PATCH] kernel-install: add --entry-type=type1|type2 option to
|
||||
kernel-install
|
||||
|
||||
Both kernel-core and kernel-uki-virt call kernel-install
|
||||
upon removal. Need an additional argument to avoid complete
|
||||
removal for both traditional kernel and UKI.
|
||||
|
||||
And because kernel-install in RHEL9 is a shell script,
|
||||
we need a specific solution.
|
||||
|
||||
Signed-off-by: Li Tian <litian@redhat.com>
|
||||
|
||||
(cherry picked from commit b6d499768394297b1d313cdc72dab0720dc315f6)
|
||||
|
||||
Resolves: RHEL-83932
|
||||
---
|
||||
shell-completion/bash/kernel-install | 14 ++++++++++++++
|
||||
src/kernel-install/50-depmod.install | 6 ++++++
|
||||
src/kernel-install/90-loaderentry.install | 5 +++++
|
||||
src/kernel-install/90-uki-copy.install | 5 +++++
|
||||
src/kernel-install/test-kernel-install.sh | 7 +++++++
|
||||
5 files changed, 37 insertions(+)
|
||||
|
||||
diff --git a/shell-completion/bash/kernel-install b/shell-completion/bash/kernel-install
|
||||
index 4708777507..a06ffb471a 100644
|
||||
--- a/shell-completion/bash/kernel-install
|
||||
+++ b/shell-completion/bash/kernel-install
|
||||
@@ -20,6 +20,15 @@ _kernel_install() {
|
||||
local comps
|
||||
local MACHINE_ID
|
||||
local cur=${COMP_WORDS[COMP_CWORD]}
|
||||
+ local prev=${COMP_WORDS[COMP_CWORD-1]}
|
||||
+ local entry_types="type1 type2 all"
|
||||
+
|
||||
+ case "$prev" in
|
||||
+ --entry-type)
|
||||
+ COMPREPLY=( $(compgen -W "$entry_types" -- "$cur") )
|
||||
+ return 0
|
||||
+ ;;
|
||||
+ esac
|
||||
|
||||
case $COMP_CWORD in
|
||||
1)
|
||||
@@ -41,6 +50,11 @@ _kernel_install() {
|
||||
;;
|
||||
esac
|
||||
|
||||
+ if [[ "${COMP_WORDS[1]}" == "remove" ]] && [[ $cur == -* ]]; then
|
||||
+ COMPREPLY=( $(compgen -W '--entry-type' -- "$cur") )
|
||||
+ return 0
|
||||
+ fi
|
||||
+
|
||||
COMPREPLY=( $(compgen -W '$comps' -- "$cur") )
|
||||
return 0
|
||||
}
|
||||
diff --git a/src/kernel-install/50-depmod.install b/src/kernel-install/50-depmod.install
|
||||
index 43bd87c7ed..a3e06c3dbf 100755
|
||||
--- a/src/kernel-install/50-depmod.install
|
||||
+++ b/src/kernel-install/50-depmod.install
|
||||
@@ -31,6 +31,12 @@ case "$COMMAND" in
|
||||
exec depmod -a "$KERNEL_VERSION"
|
||||
;;
|
||||
remove)
|
||||
+ [ "$KERNEL_INSTALL_BOOT_ENTRY_TYPE" = "type2" ] || \
|
||||
+ [ "$KERNEL_INSTALL_BOOT_ENTRY_TYPE" = "type1" ] && \
|
||||
+ [ -d "/lib/modules/$KERNEL_VERSION/kernel" ] && \
|
||||
+ echo "Multiple entry types exist, not removing modules.dep or associated files." && \
|
||||
+ exit 0
|
||||
+
|
||||
[ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
|
||||
echo "Removing /lib/modules/${KERNEL_VERSION}/modules.dep and associated files"
|
||||
exec rm -f \
|
||||
diff --git a/src/kernel-install/90-loaderentry.install b/src/kernel-install/90-loaderentry.install
|
||||
index 41a05534b9..896231e784 100755
|
||||
--- a/src/kernel-install/90-loaderentry.install
|
||||
+++ b/src/kernel-install/90-loaderentry.install
|
||||
@@ -41,6 +41,11 @@ fi
|
||||
|
||||
case "$COMMAND" in
|
||||
remove)
|
||||
+ if [ -f "/lib/modules/$KERNEL_VERSION/vmlinuz" ] && [ "$KERNEL_INSTALL_BOOT_ENTRY_TYPE" = "type2" ]; then
|
||||
+ [ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
|
||||
+ echo "BOOT_ENTRY_TYPE=type2, not removing loader entries."
|
||||
+ exit 0
|
||||
+ fi
|
||||
[ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
|
||||
echo "Removing $BOOT_ROOT/loader/entries/$ENTRY_TOKEN-$KERNEL_VERSION*.conf"
|
||||
exec rm -f \
|
||||
diff --git a/src/kernel-install/90-uki-copy.install b/src/kernel-install/90-uki-copy.install
|
||||
index d443c4b401..c35cd53592 100755
|
||||
--- a/src/kernel-install/90-uki-copy.install
|
||||
+++ b/src/kernel-install/90-uki-copy.install
|
||||
@@ -33,6 +33,11 @@ UKI_DIR="$BOOT_ROOT/EFI/Linux"
|
||||
|
||||
case "$COMMAND" in
|
||||
remove)
|
||||
+ if [ "$KERNEL_INSTALL_BOOT_ENTRY_TYPE" = "type1" ]; then
|
||||
+ [ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
|
||||
+ echo "BOOT_ENTRY_TYPE=type1, not removing UKI related."
|
||||
+ exit 0
|
||||
+ fi
|
||||
[ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
|
||||
echo "Removing $UKI_DIR/$ENTRY_TOKEN-$KERNEL_VERSION*.efi"
|
||||
exec rm -f \
|
||||
diff --git a/src/kernel-install/test-kernel-install.sh b/src/kernel-install/test-kernel-install.sh
|
||||
index 3b9ff76e60..23f3c2cf4a 100755
|
||||
--- a/src/kernel-install/test-kernel-install.sh
|
||||
+++ b/src/kernel-install/test-kernel-install.sh
|
||||
@@ -54,6 +54,13 @@ test ! -f "$entry"
|
||||
test ! -f "$BOOT_ROOT/the-token/1.1.1/linux"
|
||||
test ! -f "$BOOT_ROOT/the-token/1.1.1/initrd"
|
||||
|
||||
+# Test --entry-type options
|
||||
+"$kernel_install" -v add 1.1.1 "$D/sources/linux" "$D/sources/initrd"
|
||||
+"$kernel_install" -v remove 1.1.1 --entry-type=type1
|
||||
+test ! -e "$entry"
|
||||
+test ! -e "$BOOT_ROOT/the-token/1.1.1/linux"
|
||||
+test ! -e "$BOOT_ROOT/the-token/1.1.1/initrd"
|
||||
+
|
||||
# Invoke kernel-install as installkernel
|
||||
ln -s --relative -v "$kernel_install" "$D/sources/installkernel"
|
||||
"$D/sources/installkernel" -v 1.1.2 "$D/sources/linux" System.map /somedirignored
|
@ -0,0 +1,56 @@
|
||||
From a2d2e9bfc825c42d398c4d012dd73d7e389c2980 Mon Sep 17 00:00:00 2001
|
||||
From: Li Tian <litian@redhat.com>
|
||||
Date: Fri, 18 Jul 2025 09:11:29 +0800
|
||||
Subject: [PATCH] kernel-install: add --entry-type=type1|type2 option to
|
||||
kernel-install.in
|
||||
|
||||
Both kernel-core and kernel-uki-virt call kernel-install
|
||||
upon removal. Need an additional argument to avoid complete
|
||||
removal for both traditional kernel and UKI.
|
||||
|
||||
And because kernel-install in RHEL9 is a shell script,
|
||||
we need a specific solution.
|
||||
|
||||
Signed-off-by: Li Tian <litian@redhat.com>
|
||||
|
||||
(cherry picked from commit 19d4040d71da15d0a91d0be854e5125fa6042870)
|
||||
|
||||
Resolves: RHEL-83932
|
||||
---
|
||||
src/kernel-install/kernel-install.in | 14 +++++++++++++-
|
||||
1 file changed, 13 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/kernel-install/kernel-install.in b/src/kernel-install/kernel-install.in
|
||||
index 105bd54acc..d16c5652bd 100755
|
||||
--- a/src/kernel-install/kernel-install.in
|
||||
+++ b/src/kernel-install/kernel-install.in
|
||||
@@ -26,9 +26,11 @@ usage()
|
||||
{
|
||||
echo "Usage:"
|
||||
echo " kernel-install [OPTIONS...] add KERNEL-VERSION KERNEL-IMAGE [INITRD-FILE...]"
|
||||
- echo " kernel-install [OPTIONS...] remove KERNEL-VERSION"
|
||||
+ echo " kernel-install [OPTIONS...] remove KERNEL-VERSION [--entry-type...]"
|
||||
echo " kernel-install [OPTIONS...] inspect"
|
||||
echo "Options:"
|
||||
+ echo " --entry-type type1|type2|all"
|
||||
+ echo " Operate only on the specified bootloader entry type"
|
||||
echo " -h, --help Print this help and exit"
|
||||
echo " --version Print version string and exit"
|
||||
echo " -v, --verbose Increase verbosity"
|
||||
@@ -371,6 +373,16 @@ case "$COMMAND" in
|
||||
;;
|
||||
|
||||
remove)
|
||||
+ if [ "$1" = "--entry-type" ]; then
|
||||
+ shift
|
||||
+ if [ "$1" = "type1" ] || [ "$1" = "type2" ]; then
|
||||
+ export KERNEL_INSTALL_BOOT_ENTRY_TYPE="$1"
|
||||
+ elif [ "$1" != "all" ]; then
|
||||
+ echo "Error: invalid --entry-type '$1'" >&2
|
||||
+ exit 1
|
||||
+ fi
|
||||
+ fi
|
||||
+
|
||||
for f in $KERNEL_INSTALL_PLUGINS; do
|
||||
log_verbose "+$f remove $KERNEL_VERSION $ENTRY_DIR_ABS"
|
||||
err=0
|
37
SOURCES/1193-kernel-install-do-not-mix-and.patch
Normal file
37
SOURCES/1193-kernel-install-do-not-mix-and.patch
Normal file
@ -0,0 +1,37 @@
|
||||
From 805c757b16ee8ec65ea9bad9318de3c845490f19 Mon Sep 17 00:00:00 2001
|
||||
From: Li Tian <litian@redhat.com>
|
||||
Date: Fri, 18 Jul 2025 09:16:20 +0800
|
||||
Subject: [PATCH] kernel-install: do not mix || and &&
|
||||
|
||||
This also slightly updates log message, and make it shown only when
|
||||
verbose mode is enabled.
|
||||
|
||||
Signed-off-by: Li Tian <litian@redhat.com>
|
||||
|
||||
(cherry picked from commit 9026f17907553b42257e9cc26969143795ae0f44)
|
||||
|
||||
Resolves: RHEL-83932
|
||||
---
|
||||
src/kernel-install/50-depmod.install | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/kernel-install/50-depmod.install b/src/kernel-install/50-depmod.install
|
||||
index a3e06c3dbf..4cfea578fd 100755
|
||||
--- a/src/kernel-install/50-depmod.install
|
||||
+++ b/src/kernel-install/50-depmod.install
|
||||
@@ -31,11 +31,11 @@ case "$COMMAND" in
|
||||
exec depmod -a "$KERNEL_VERSION"
|
||||
;;
|
||||
remove)
|
||||
- [ "$KERNEL_INSTALL_BOOT_ENTRY_TYPE" = "type2" ] || \
|
||||
- [ "$KERNEL_INSTALL_BOOT_ENTRY_TYPE" = "type1" ] && \
|
||||
- [ -d "/lib/modules/$KERNEL_VERSION/kernel" ] && \
|
||||
- echo "Multiple entry types exist, not removing modules.dep or associated files." && \
|
||||
+ if [ -n "$KERNEL_INSTALL_BOOT_ENTRY_TYPE" ] && [ -d "/lib/modules/$KERNEL_VERSION/kernel" ]; then
|
||||
+ [ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
|
||||
+ echo "Multiple entry types may exist, not removing modules.dep or associated files."
|
||||
exit 0
|
||||
+ fi
|
||||
|
||||
[ "$KERNEL_INSTALL_VERBOSE" -gt 0 ] && \
|
||||
echo "Removing /lib/modules/${KERNEL_VERSION}/modules.dep and associated files"
|
@ -0,0 +1,39 @@
|
||||
From 756f152c2a8671711fa44de39401a328a97ce345 Mon Sep 17 00:00:00 2001
|
||||
From: Li Tian <litian@redhat.com>
|
||||
Date: Fri, 18 Jul 2025 09:18:17 +0800
|
||||
Subject: [PATCH] man/kernel-install: mention --entry-type= option in the man
|
||||
page
|
||||
|
||||
Signed-off-by: Li Tian <litian@redhat.com>
|
||||
|
||||
(cherry picked from commit a87b6c2c5a59561d79f40b166b416545449108db)
|
||||
|
||||
Resolves: RHEL-83932
|
||||
---
|
||||
man/kernel-install.xml | 13 +++++++++++++
|
||||
1 file changed, 13 insertions(+)
|
||||
|
||||
diff --git a/man/kernel-install.xml b/man/kernel-install.xml
|
||||
index 4d91b7b20b..4b4360ed7f 100644
|
||||
--- a/man/kernel-install.xml
|
||||
+++ b/man/kernel-install.xml
|
||||
@@ -174,6 +174,19 @@
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
+ <varlistentry>
|
||||
+ <term><option>--entry-type=type1|type2|all</option></term>
|
||||
+ <listitem>
|
||||
+ <para>
|
||||
+ Controls the type of entries handled by the command. This is typically useful when multiple types
|
||||
+ of boot entries with the same kernel version are installed, and only one should be removed. When
|
||||
+ <literal>type1</literal> or <literal>type2</literal> is specified, each plugin is invoked with
|
||||
+ <varname>$KERNEL_INSTALL_BOOT_ENTRY_TYPE</varname> environment variable with the specified
|
||||
+ value. When <literal>all</literal> is specified, the environment variable will not be set.
|
||||
+ Defaults to <literal>all</literal>.
|
||||
+ </para>
|
||||
+ </listitem>
|
||||
+ </varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-v</option></term>
|
||||
<term><option>--verbose</option></term>
|
388
SOURCES/1195-cgroup-add-support-for-memory.peak.patch
Normal file
388
SOURCES/1195-cgroup-add-support-for-memory.peak.patch
Normal file
@ -0,0 +1,388 @@
|
||||
From 6908cae6db2ca758861bd39d2ad0ac28da1b5372 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Schmaus <flo@geekplace.eu>
|
||||
Date: Mon, 6 Nov 2023 13:15:55 +0100
|
||||
Subject: [PATCH] cgroup: add support for memory.peak
|
||||
|
||||
Linux's Control Group v2 interfaces exposes memory.peak, which contains the
|
||||
"max memory usage recorded for the cgroup and its descendants since the
|
||||
creation of the cgroup."
|
||||
|
||||
This commit adds a new property "MemoryPeak" for units and makes "systemctl
|
||||
show" display this value if it is available.
|
||||
|
||||
Fixes #29878.
|
||||
|
||||
Signed-off-by: Florian Schmaus <flo@geekplace.eu>
|
||||
(cherry picked from commit 6c71db763cb482c30870359dd3d188a6aa23c4da)
|
||||
|
||||
Related: RHEL-95797
|
||||
---
|
||||
man/org.freedesktop.systemd1.xml | 36 +++++++++++++++++++++
|
||||
src/core/cgroup.c | 54 ++++++++++++++++++++++++++++++++
|
||||
src/core/cgroup.h | 1 +
|
||||
src/core/dbus-unit.c | 24 ++++++++++++++
|
||||
src/core/unit.c | 1 +
|
||||
src/core/unit.h | 3 ++
|
||||
src/systemctl/systemctl-show.c | 10 +++++-
|
||||
7 files changed, 128 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/man/org.freedesktop.systemd1.xml b/man/org.freedesktop.systemd1.xml
|
||||
index 78781b6ed3..e7b9b0a127 100644
|
||||
--- a/man/org.freedesktop.systemd1.xml
|
||||
+++ b/man/org.freedesktop.systemd1.xml
|
||||
@@ -2629,6 +2629,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryCurrent = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
+ readonly t MemoryPeak = ...;
|
||||
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryAvailable = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t CPUUsageNSec = ...;
|
||||
@@ -3204,6 +3206,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||
|
||||
<!--property MemoryCurrent is not documented!-->
|
||||
|
||||
+ <!--property MemoryPeak is not documented!-->
|
||||
+
|
||||
<!--property CPUUsageNSec is not documented!-->
|
||||
|
||||
<!--property EffectiveCPUs is not documented!-->
|
||||
@@ -3784,6 +3788,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryCurrent"/>
|
||||
|
||||
+ <variablelist class="dbus-property" generated="True" extra-ref="MemoryPeak"/>
|
||||
+
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAvailable"/>
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUUsageNSec"/>
|
||||
@@ -4521,6 +4527,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryCurrent = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
+ readonly t MemoryPeak = ...;
|
||||
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryAvailable = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t CPUUsageNSec = ...;
|
||||
@@ -5118,6 +5126,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||
|
||||
<!--property MemoryCurrent is not documented!-->
|
||||
|
||||
+ <!--property MemoryPeak is not documented!-->
|
||||
+
|
||||
<!--property CPUUsageNSec is not documented!-->
|
||||
|
||||
<!--property EffectiveCPUs is not documented!-->
|
||||
@@ -5690,6 +5700,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryCurrent"/>
|
||||
|
||||
+ <variablelist class="dbus-property" generated="True" extra-ref="MemoryPeak"/>
|
||||
+
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAvailable"/>
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUUsageNSec"/>
|
||||
@@ -6316,6 +6328,8 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryCurrent = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
+ readonly t MemoryPeak = ...;
|
||||
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryAvailable = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t CPUUsageNSec = ...;
|
||||
@@ -6841,6 +6855,8 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||
|
||||
<!--property MemoryCurrent is not documented!-->
|
||||
|
||||
+ <!--property MemoryPeak is not documented!-->
|
||||
+
|
||||
<!--property CPUUsageNSec is not documented!-->
|
||||
|
||||
<!--property EffectiveCPUs is not documented!-->
|
||||
@@ -7331,6 +7347,8 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryCurrent"/>
|
||||
|
||||
+ <variablelist class="dbus-property" generated="True" extra-ref="MemoryPeak"/>
|
||||
+
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAvailable"/>
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUUsageNSec"/>
|
||||
@@ -8084,6 +8102,8 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryCurrent = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
+ readonly t MemoryPeak = ...;
|
||||
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryAvailable = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t CPUUsageNSec = ...;
|
||||
@@ -8595,6 +8615,8 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||
|
||||
<!--property MemoryCurrent is not documented!-->
|
||||
|
||||
+ <!--property MemoryPeak is not documented!-->
|
||||
+
|
||||
<!--property CPUUsageNSec is not documented!-->
|
||||
|
||||
<!--property EffectiveCPUs is not documented!-->
|
||||
@@ -9071,6 +9093,8 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryCurrent"/>
|
||||
|
||||
+ <variablelist class="dbus-property" generated="True" extra-ref="MemoryPeak"/>
|
||||
+
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAvailable"/>
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUUsageNSec"/>
|
||||
@@ -9683,6 +9707,8 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryCurrent = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
+ readonly t MemoryPeak = ...;
|
||||
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryAvailable = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t CPUUsageNSec = ...;
|
||||
@@ -9836,6 +9862,8 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||
|
||||
<!--property MemoryCurrent is not documented!-->
|
||||
|
||||
+ <!--property MemoryPeak is not documented!-->
|
||||
+
|
||||
<!--property CPUUsageNSec is not documented!-->
|
||||
|
||||
<!--property EffectiveCPUs is not documented!-->
|
||||
@@ -9992,6 +10020,8 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryCurrent"/>
|
||||
|
||||
+ <variablelist class="dbus-property" generated="True" extra-ref="MemoryPeak"/>
|
||||
+
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAvailable"/>
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUUsageNSec"/>
|
||||
@@ -10174,6 +10204,8 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryCurrent = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
+ readonly t MemoryPeak = ...;
|
||||
+ @org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t MemoryAvailable = ...;
|
||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||
readonly t CPUUsageNSec = ...;
|
||||
@@ -10347,6 +10379,8 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||
|
||||
<!--property MemoryCurrent is not documented!-->
|
||||
|
||||
+ <!--property MemoryPeak is not documented!-->
|
||||
+
|
||||
<!--property CPUUsageNSec is not documented!-->
|
||||
|
||||
<!--property EffectiveCPUs is not documented!-->
|
||||
@@ -10533,6 +10567,8 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryCurrent"/>
|
||||
|
||||
+ <variablelist class="dbus-property" generated="True" extra-ref="MemoryPeak"/>
|
||||
+
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAvailable"/>
|
||||
|
||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUUsageNSec"/>
|
||||
diff --git a/src/core/cgroup.c b/src/core/cgroup.c
|
||||
index 7d6b1119be..7a1aed3874 100644
|
||||
--- a/src/core/cgroup.c
|
||||
+++ b/src/core/cgroup.c
|
||||
@@ -3716,6 +3716,60 @@ int unit_get_memory_current(Unit *u, uint64_t *ret) {
|
||||
return cg_get_attribute_as_uint64("memory", u->cgroup_path, r > 0 ? "memory.current" : "memory.usage_in_bytes", ret);
|
||||
}
|
||||
|
||||
+static int unit_get_memory_peak_raw(Unit *u, uint64_t *ret) {
|
||||
+ int r;
|
||||
+
|
||||
+ assert(u);
|
||||
+ assert(ret);
|
||||
+
|
||||
+ if (!u->cgroup_path)
|
||||
+ return -ENODATA;
|
||||
+
|
||||
+ /* The root cgroup doesn't expose this information. */
|
||||
+ if (unit_has_host_root_cgroup(u))
|
||||
+ return -ENODATA;
|
||||
+
|
||||
+ if ((u->cgroup_realized_mask & CGROUP_MASK_MEMORY) == 0)
|
||||
+ return -ENODATA;
|
||||
+
|
||||
+ r = cg_all_unified();
|
||||
+ if (r < 0)
|
||||
+ return r;
|
||||
+ if (!r)
|
||||
+ return -ENODATA;
|
||||
+
|
||||
+ return cg_get_attribute_as_uint64("memory", u->cgroup_path, "memory.peak", ret);
|
||||
+}
|
||||
+
|
||||
+int unit_get_memory_peak(Unit *u, uint64_t *ret) {
|
||||
+ uint64_t bytes;
|
||||
+ int r;
|
||||
+
|
||||
+ assert(u);
|
||||
+ assert(ret);
|
||||
+
|
||||
+ if (!UNIT_CGROUP_BOOL(u, memory_accounting))
|
||||
+ return -ENODATA;
|
||||
+
|
||||
+ r = unit_get_memory_peak_raw(u, &bytes);
|
||||
+ if (r == -ENODATA && u->memory_peak_last != UINT64_MAX) {
|
||||
+ /* If we can't get the memory peak anymore (because the cgroup was already removed, for example),
|
||||
+ * use our cached value. */
|
||||
+
|
||||
+ if (ret)
|
||||
+ *ret = u->memory_peak_last;
|
||||
+ return 0;
|
||||
+ }
|
||||
+ if (r < 0)
|
||||
+ return r;
|
||||
+
|
||||
+ u->memory_peak_last = bytes;
|
||||
+ if (ret)
|
||||
+ *ret = bytes;
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
int unit_get_tasks_current(Unit *u, uint64_t *ret) {
|
||||
assert(u);
|
||||
assert(ret);
|
||||
diff --git a/src/core/cgroup.h b/src/core/cgroup.h
|
||||
index 4413eeaaa0..314b723cfd 100644
|
||||
--- a/src/core/cgroup.h
|
||||
+++ b/src/core/cgroup.h
|
||||
@@ -292,6 +292,7 @@ int unit_watch_all_pids(Unit *u);
|
||||
int unit_synthesize_cgroup_empty_event(Unit *u);
|
||||
|
||||
int unit_get_memory_current(Unit *u, uint64_t *ret);
|
||||
+int unit_get_memory_peak(Unit *u, uint64_t *ret);
|
||||
int unit_get_memory_available(Unit *u, uint64_t *ret);
|
||||
int unit_get_tasks_current(Unit *u, uint64_t *ret);
|
||||
int unit_get_cpu_usage(Unit *u, nsec_t *ret);
|
||||
diff --git a/src/core/dbus-unit.c b/src/core/dbus-unit.c
|
||||
index 9d3c3be4e9..22a29ba0cb 100644
|
||||
--- a/src/core/dbus-unit.c
|
||||
+++ b/src/core/dbus-unit.c
|
||||
@@ -1072,6 +1072,29 @@ static int property_get_current_memory(
|
||||
return sd_bus_message_append(reply, "t", sz);
|
||||
}
|
||||
|
||||
+static int property_get_peak_memory(
|
||||
+ sd_bus *bus,
|
||||
+ const char *path,
|
||||
+ const char *interface,
|
||||
+ const char *property,
|
||||
+ sd_bus_message *reply,
|
||||
+ void *userdata,
|
||||
+ sd_bus_error *error) {
|
||||
+
|
||||
+ uint64_t sz = UINT64_MAX;
|
||||
+ Unit *u = ASSERT_PTR(userdata);
|
||||
+ int r;
|
||||
+
|
||||
+ assert(bus);
|
||||
+ assert(reply);
|
||||
+
|
||||
+ r = unit_get_memory_peak(u, &sz);
|
||||
+ if (r < 0 && r != -ENODATA)
|
||||
+ log_unit_warning_errno(u, r, "Failed to get memory.peak attribute: %m");
|
||||
+
|
||||
+ return sd_bus_message_append(reply, "t", sz);
|
||||
+}
|
||||
+
|
||||
static int property_get_available_memory(
|
||||
sd_bus *bus,
|
||||
const char *path,
|
||||
@@ -1537,6 +1560,7 @@ const sd_bus_vtable bus_unit_cgroup_vtable[] = {
|
||||
SD_BUS_PROPERTY("ControlGroup", "s", property_get_cgroup, 0, 0),
|
||||
SD_BUS_PROPERTY("ControlGroupId", "t", NULL, offsetof(Unit, cgroup_id), 0),
|
||||
SD_BUS_PROPERTY("MemoryCurrent", "t", property_get_current_memory, 0, 0),
|
||||
+ SD_BUS_PROPERTY("MemoryPeak", "t", property_get_peak_memory, 0, 0),
|
||||
SD_BUS_PROPERTY("MemoryAvailable", "t", property_get_available_memory, 0, 0),
|
||||
SD_BUS_PROPERTY("CPUUsageNSec", "t", property_get_cpu_usage, 0, 0),
|
||||
SD_BUS_PROPERTY("EffectiveCPUs", "ay", property_get_cpuset_cpus, 0, 0),
|
||||
diff --git a/src/core/unit.c b/src/core/unit.c
|
||||
index d98ecf4367..0f60fe061c 100644
|
||||
--- a/src/core/unit.c
|
||||
+++ b/src/core/unit.c
|
||||
@@ -111,6 +111,7 @@ Unit* unit_new(Manager *m, size_t size) {
|
||||
u->ref_uid = UID_INVALID;
|
||||
u->ref_gid = GID_INVALID;
|
||||
u->cpu_usage_last = NSEC_INFINITY;
|
||||
+ u->memory_peak_last = UINT64_MAX;
|
||||
u->cgroup_invalidated_mask |= CGROUP_MASK_BPF_FIREWALL;
|
||||
u->failure_action_exit_status = u->success_action_exit_status = -1;
|
||||
|
||||
diff --git a/src/core/unit.h b/src/core/unit.h
|
||||
index e79b5322b4..4bb85b55be 100644
|
||||
--- a/src/core/unit.h
|
||||
+++ b/src/core/unit.h
|
||||
@@ -360,6 +360,9 @@ typedef struct Unit {
|
||||
nsec_t cpu_usage_base;
|
||||
nsec_t cpu_usage_last; /* the most recently read value */
|
||||
|
||||
+ /* Most recently read value of memory.peak */
|
||||
+ uint64_t memory_peak_last;
|
||||
+
|
||||
/* The current counter of OOM kills initiated by systemd-oomd */
|
||||
uint64_t managed_oom_kill_last;
|
||||
|
||||
diff --git a/src/systemctl/systemctl-show.c b/src/systemctl/systemctl-show.c
|
||||
index 24c7d564b8..03d53bc13c 100644
|
||||
--- a/src/systemctl/systemctl-show.c
|
||||
+++ b/src/systemctl/systemctl-show.c
|
||||
@@ -245,6 +245,7 @@ typedef struct UnitStatusInfo {
|
||||
|
||||
/* CGroup */
|
||||
uint64_t memory_current;
|
||||
+ uint64_t memory_peak;
|
||||
uint64_t memory_min;
|
||||
uint64_t memory_low;
|
||||
uint64_t memory_high;
|
||||
@@ -697,7 +698,8 @@ static void print_status_info(
|
||||
if (i->memory_current != UINT64_MAX) {
|
||||
printf(" Memory: %s", FORMAT_BYTES(i->memory_current));
|
||||
|
||||
- if (i->memory_min > 0 || i->memory_low > 0 ||
|
||||
+ if (i->memory_peak != CGROUP_LIMIT_MAX ||
|
||||
+ i->memory_min > 0 || i->memory_low > 0 ||
|
||||
i->memory_high != CGROUP_LIMIT_MAX || i->memory_max != CGROUP_LIMIT_MAX ||
|
||||
i->memory_swap_max != CGROUP_LIMIT_MAX ||
|
||||
i->memory_available != CGROUP_LIMIT_MAX ||
|
||||
@@ -733,6 +735,10 @@ static void print_status_info(
|
||||
printf("%savailable: %s", prefix, FORMAT_BYTES(i->memory_available));
|
||||
prefix = " ";
|
||||
}
|
||||
+ if (i->memory_peak != CGROUP_LIMIT_MAX) {
|
||||
+ printf("%speak: %s", prefix, FORMAT_BYTES(i->memory_peak));
|
||||
+ prefix = " ";
|
||||
+ }
|
||||
printf(")");
|
||||
}
|
||||
printf("\n");
|
||||
@@ -1927,6 +1933,7 @@ static int show_one(
|
||||
{ "Where", "s", NULL, offsetof(UnitStatusInfo, where) },
|
||||
{ "What", "s", NULL, offsetof(UnitStatusInfo, what) },
|
||||
{ "MemoryCurrent", "t", NULL, offsetof(UnitStatusInfo, memory_current) },
|
||||
+ { "MemoryPeak", "t", NULL, offsetof(UnitStatusInfo, memory_peak) },
|
||||
{ "MemoryAvailable", "t", NULL, offsetof(UnitStatusInfo, memory_available) },
|
||||
{ "DefaultMemoryMin", "t", NULL, offsetof(UnitStatusInfo, default_memory_min) },
|
||||
{ "DefaultMemoryLow", "t", NULL, offsetof(UnitStatusInfo, default_memory_low) },
|
||||
@@ -1970,6 +1977,7 @@ static int show_one(
|
||||
.memory_max = CGROUP_LIMIT_MAX,
|
||||
.memory_swap_max = CGROUP_LIMIT_MAX,
|
||||
.memory_limit = UINT64_MAX,
|
||||
+ .memory_peak = CGROUP_LIMIT_MAX,
|
||||
.memory_available = CGROUP_LIMIT_MAX,
|
||||
.cpu_usage_nsec = UINT64_MAX,
|
||||
.tasks_current = UINT64_MAX,
|
@ -0,0 +1,50 @@
|
||||
From 4bc77bad350313fa1137597d7e388660901e1a5a Mon Sep 17 00:00:00 2001
|
||||
From: Florian Schmaus <flo@geekplace.eu>
|
||||
Date: Mon, 6 Nov 2023 17:24:14 +0100
|
||||
Subject: [PATCH] core: include peak memory in unit_log_resources()
|
||||
|
||||
Signed-off-by: Florian Schmaus <flo@geekplace.eu>
|
||||
(cherry picked from commit 0531bded79dcdde93f2b076f86c40d02b81a18b9)
|
||||
|
||||
Related: RHEL-95797
|
||||
---
|
||||
src/core/unit.c | 19 +++++++++++++++++++
|
||||
1 file changed, 19 insertions(+)
|
||||
|
||||
diff --git a/src/core/unit.c b/src/core/unit.c
|
||||
index 0f60fe061c..56580b1716 100644
|
||||
--- a/src/core/unit.c
|
||||
+++ b/src/core/unit.c
|
||||
@@ -2238,6 +2238,7 @@ static int unit_log_resources(Unit *u) {
|
||||
size_t n_message_parts = 0, n_iovec = 0;
|
||||
char* message_parts[1 + 2 + 2 + 1], *t;
|
||||
nsec_t nsec = NSEC_INFINITY;
|
||||
+ uint64_t memory_peak = UINT64_MAX;
|
||||
int r;
|
||||
const char* const ip_fields[_CGROUP_IP_ACCOUNTING_METRIC_MAX] = {
|
||||
[CGROUP_IP_INGRESS_BYTES] = "IP_METRIC_INGRESS_BYTES",
|
||||
@@ -2281,6 +2282,24 @@ static int unit_log_resources(Unit *u) {
|
||||
nsec > NOTICEWORTHY_CPU_NSEC);
|
||||
}
|
||||
|
||||
+ (void) unit_get_memory_peak(u, &memory_peak);
|
||||
+ if (memory_peak != UINT64_MAX) {
|
||||
+ /* Format peak memory for inclusion in the structured log message */
|
||||
+ if (asprintf(&t, "MEMORY_PEAK=%" PRIu64, memory_peak) < 0) {
|
||||
+ r = log_oom();
|
||||
+ goto finish;
|
||||
+ }
|
||||
+ iovec[n_iovec++] = IOVEC_MAKE_STRING(t);
|
||||
+
|
||||
+ /* Format peak memory for inclusion in the human language message string */
|
||||
+ t = strjoin(FORMAT_BYTES(memory_peak), " memory peak");
|
||||
+ if (!t) {
|
||||
+ r = log_oom();
|
||||
+ goto finish;
|
||||
+ }
|
||||
+ message_parts[n_message_parts++] = t;
|
||||
+ }
|
||||
+
|
||||
for (CGroupIOAccountingMetric k = 0; k < _CGROUP_IO_ACCOUNTING_METRIC_MAX; k++) {
|
||||
uint64_t value = UINT64_MAX;
|
||||
|
53
SOURCES/1197-run-include-peak-memory-in-output.patch
Normal file
53
SOURCES/1197-run-include-peak-memory-in-output.patch
Normal file
@ -0,0 +1,53 @@
|
||||
From 989e3c2990ea0c4a43d5d0aed3ed2e5b05c6ca57 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Schmaus <flo@geekplace.eu>
|
||||
Date: Mon, 6 Nov 2023 17:28:41 +0100
|
||||
Subject: [PATCH] run: include peak memory in output
|
||||
|
||||
Fixes #28542.
|
||||
|
||||
Signed-off-by: Florian Schmaus <flo@geekplace.eu>
|
||||
(cherry picked from commit 324ec6b5d2033fae4dc3e087473d27010d948f65)
|
||||
|
||||
Related: RHEL-95797
|
||||
---
|
||||
src/run/run.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/src/run/run.c b/src/run/run.c
|
||||
index 627a6b11da..9ddb90595b 100644
|
||||
--- a/src/run/run.c
|
||||
+++ b/src/run/run.c
|
||||
@@ -987,6 +987,7 @@ typedef struct RunContext {
|
||||
uint64_t inactive_enter_usec;
|
||||
char *result;
|
||||
uint64_t cpu_usage_nsec;
|
||||
+ uint64_t memory_peak;
|
||||
uint64_t ip_ingress_bytes;
|
||||
uint64_t ip_egress_bytes;
|
||||
uint64_t io_read_bytes;
|
||||
@@ -1048,6 +1049,7 @@ static int run_context_update(RunContext *c, const char *path) {
|
||||
{ "ExecMainCode", "i", NULL, offsetof(RunContext, exit_code) },
|
||||
{ "ExecMainStatus", "i", NULL, offsetof(RunContext, exit_status) },
|
||||
{ "CPUUsageNSec", "t", NULL, offsetof(RunContext, cpu_usage_nsec) },
|
||||
+ { "MemoryPeak", "t", NULL, offsetof(RunContext, memory_peak) },
|
||||
{ "IPIngressBytes", "t", NULL, offsetof(RunContext, ip_ingress_bytes) },
|
||||
{ "IPEgressBytes", "t", NULL, offsetof(RunContext, ip_egress_bytes) },
|
||||
{ "IOReadBytes", "t", NULL, offsetof(RunContext, io_read_bytes) },
|
||||
@@ -1238,6 +1240,7 @@ static int start_transient_service(
|
||||
if (arg_wait || arg_stdio != ARG_STDIO_NONE) {
|
||||
_cleanup_(run_context_free) RunContext c = {
|
||||
.cpu_usage_nsec = NSEC_INFINITY,
|
||||
+ .memory_peak = UINT64_MAX,
|
||||
.ip_ingress_bytes = UINT64_MAX,
|
||||
.ip_egress_bytes = UINT64_MAX,
|
||||
.io_read_bytes = UINT64_MAX,
|
||||
@@ -1333,6 +1336,9 @@ static int start_transient_service(
|
||||
log_info("CPU time consumed: %s",
|
||||
FORMAT_TIMESPAN(DIV_ROUND_UP(c.cpu_usage_nsec, NSEC_PER_USEC), USEC_PER_MSEC));
|
||||
|
||||
+ if (c.memory_peak != UINT64_MAX)
|
||||
+ log_info("Memory peak: %s", FORMAT_BYTES(c.memory_peak));
|
||||
+
|
||||
if (c.ip_ingress_bytes != UINT64_MAX)
|
||||
log_info("IP traffic received: %s", FORMAT_BYTES(c.ip_ingress_bytes));
|
||||
|
@ -0,0 +1,92 @@
|
||||
From f53755c29ce0d41d716d35e6d98e638a654b7f55 Mon Sep 17 00:00:00 2001
|
||||
From: Luca Boccassi <bluca@debian.org>
|
||||
Date: Fri, 20 Jan 2023 23:00:38 +0000
|
||||
Subject: [PATCH] core: ensure init.scope is realized after drop-ins have been
|
||||
loaded
|
||||
|
||||
If we add a drop-in for init.scope (e.g.: to set some memory limit),
|
||||
it will be loaded long after the cgroup has already been realized.
|
||||
Do it again when creating the special unit.
|
||||
|
||||
(cherry picked from commit 020b2e41ea776cff73392da8084a0725b590d245)
|
||||
|
||||
Resolves: RHEL-103488
|
||||
---
|
||||
src/core/cgroup.c | 2 +-
|
||||
src/core/cgroup.h | 1 +
|
||||
src/core/scope.c | 4 ++++
|
||||
test/TEST-55-OOMD/test.sh | 6 ++++++
|
||||
test/units/testsuite-55.sh | 3 +++
|
||||
5 files changed, 15 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/core/cgroup.c b/src/core/cgroup.c
|
||||
index 7a1aed3874..dcf9177f6f 100644
|
||||
--- a/src/core/cgroup.c
|
||||
+++ b/src/core/cgroup.c
|
||||
@@ -2471,7 +2471,7 @@ static bool unit_has_mask_enables_realized(
|
||||
((u->cgroup_enabled_mask | enable_mask) & CGROUP_MASK_V2) == (u->cgroup_enabled_mask & CGROUP_MASK_V2);
|
||||
}
|
||||
|
||||
-static void unit_add_to_cgroup_realize_queue(Unit *u) {
|
||||
+void unit_add_to_cgroup_realize_queue(Unit *u) {
|
||||
assert(u);
|
||||
|
||||
if (u->in_cgroup_realize_queue)
|
||||
diff --git a/src/core/cgroup.h b/src/core/cgroup.h
|
||||
index 314b723cfd..d620ebf1a4 100644
|
||||
--- a/src/core/cgroup.h
|
||||
+++ b/src/core/cgroup.h
|
||||
@@ -262,6 +262,7 @@ int unit_realize_cgroup(Unit *u);
|
||||
void unit_prune_cgroup(Unit *u);
|
||||
int unit_watch_cgroup(Unit *u);
|
||||
int unit_watch_cgroup_memory(Unit *u);
|
||||
+void unit_add_to_cgroup_realize_queue(Unit *u);
|
||||
|
||||
void unit_release_cgroup(Unit *u);
|
||||
/* Releases the cgroup only if it is recursively empty.
|
||||
diff --git a/src/core/scope.c b/src/core/scope.c
|
||||
index 087ac2853a..4e1a954c6c 100644
|
||||
--- a/src/core/scope.c
|
||||
+++ b/src/core/scope.c
|
||||
@@ -784,6 +784,10 @@ static void scope_enumerate_perpetual(Manager *m) {
|
||||
|
||||
unit_add_to_load_queue(u);
|
||||
unit_add_to_dbus_queue(u);
|
||||
+ /* Enqueue an explicit cgroup realization here. Unlike other cgroups this one already exists and is
|
||||
+ * populated (by us, after all!) already, even when we are not in a reload cycle. Hence we cannot
|
||||
+ * apply the settings at creation time anymore, but let's at least apply them asynchronously. */
|
||||
+ unit_add_to_cgroup_realize_queue(u);
|
||||
}
|
||||
|
||||
static const char* const scope_result_table[_SCOPE_RESULT_MAX] = {
|
||||
diff --git a/test/TEST-55-OOMD/test.sh b/test/TEST-55-OOMD/test.sh
|
||||
index 4dc414294c..4032896061 100755
|
||||
--- a/test/TEST-55-OOMD/test.sh
|
||||
+++ b/test/TEST-55-OOMD/test.sh
|
||||
@@ -16,6 +16,12 @@ test_append_files() {
|
||||
|
||||
cat >>"${initdir:?}/etc/fstab" <<EOF
|
||||
UUID=$(blkid -o value -s UUID "${LOOPDEV}p2") none swap defaults 0 0
|
||||
+EOF
|
||||
+
|
||||
+ mkdir -p "${initdir:?}/etc/systemd/system/init.scope.d/"
|
||||
+ cat >>"${initdir:?}/etc/systemd/system/init.scope.d/test-55-oomd.conf" <<EOF
|
||||
+[Scope]
|
||||
+MemoryHigh=10G
|
||||
EOF
|
||||
)
|
||||
}
|
||||
diff --git a/test/units/testsuite-55.sh b/test/units/testsuite-55.sh
|
||||
index 8fa1d01fd0..0887eac08f 100755
|
||||
--- a/test/units/testsuite-55.sh
|
||||
+++ b/test/units/testsuite-55.sh
|
||||
@@ -5,6 +5,9 @@ set -o pipefail
|
||||
|
||||
systemd-analyze log-level debug
|
||||
|
||||
+# Ensure that the init.scope.d drop-in is applied on boot
|
||||
+test "$(cat /sys/fs/cgroup/init.scope/memory.high)" != "max"
|
||||
+
|
||||
# Loose checks to ensure the environment has the necessary features for systemd-oomd
|
||||
[[ -e /proc/pressure ]] || echo "no PSI" >>/skipped
|
||||
cgroup_type="$(stat -fc %T /sys/fs/cgroup/)"
|
@ -0,0 +1,74 @@
|
||||
From 24ce505814d3c30ae17e34512521e6e87a5336e1 Mon Sep 17 00:00:00 2001
|
||||
From: Michal Sekletar <msekleta@redhat.com>
|
||||
Date: Wed, 7 Sep 2022 17:37:34 +0200
|
||||
Subject: [PATCH] core: add possibility to not track certain unit types
|
||||
|
||||
(cherry picked from commit 88e4bfa62bd2561e04a90dc009e7a3865e0878fb)
|
||||
|
||||
Resolves: RHEL-89796
|
||||
---
|
||||
docs/ENVIRONMENT.md | 9 +++++++++
|
||||
src/core/unit.c | 18 ++++++++++++++++++
|
||||
2 files changed, 27 insertions(+)
|
||||
|
||||
diff --git a/docs/ENVIRONMENT.md b/docs/ENVIRONMENT.md
|
||||
index 51b1e851ff..54b779d312 100644
|
||||
--- a/docs/ENVIRONMENT.md
|
||||
+++ b/docs/ENVIRONMENT.md
|
||||
@@ -272,6 +272,15 @@ All tools:
|
||||
it is either set to `system` or `user` depending on whether the NSS/PAM
|
||||
module is called by systemd in `--system` or `--user` mode.
|
||||
|
||||
+* `$SYSTEMD_SUPPORT_DEVICE`, `$SYSTEMD_SUPPORT_MOUNT`, `$SYSTEMD_SUPPORT_SWAP` -
|
||||
+ can be set to `0` to mark respective unit type as unsupported. Generally,
|
||||
+ having less units saves system resources so these options might be useful
|
||||
+ for cases where we don't need to track given unit type, e.g. `--user` manager
|
||||
+ often doesn't need to deal with device or swap units because they are
|
||||
+ handled by the `--system` manager (PID 1). Note that setting certain unit
|
||||
+ type as unsupported may not prevent loading some units of that type if they
|
||||
+ are referenced by other units of another supported type.
|
||||
+
|
||||
`systemd-remount-fs`:
|
||||
|
||||
* `$SYSTEMD_REMOUNT_ROOT_RW=1` — if set and no entry for the root directory
|
||||
diff --git a/src/core/unit.c b/src/core/unit.c
|
||||
index 56580b1716..0d65880ac7 100644
|
||||
--- a/src/core/unit.c
|
||||
+++ b/src/core/unit.c
|
||||
@@ -22,6 +22,7 @@
|
||||
#include "dbus-unit.h"
|
||||
#include "dbus.h"
|
||||
#include "dropin.h"
|
||||
+#include "env-util.h"
|
||||
#include "escape.h"
|
||||
#include "execute.h"
|
||||
#include "fd-util.h"
|
||||
@@ -4853,11 +4854,28 @@ int unit_setup_dynamic_creds(Unit *u) {
|
||||
}
|
||||
|
||||
bool unit_type_supported(UnitType t) {
|
||||
+ static int8_t cache[_UNIT_TYPE_MAX] = {}; /* -1: disabled, 1: enabled: 0: don't know */
|
||||
+ int r;
|
||||
+
|
||||
if (_unlikely_(t < 0))
|
||||
return false;
|
||||
if (_unlikely_(t >= _UNIT_TYPE_MAX))
|
||||
return false;
|
||||
|
||||
+ if (cache[t] == 0) {
|
||||
+ char *e;
|
||||
+
|
||||
+ e = strjoina("SYSTEMD_SUPPORT_", unit_type_to_string(t));
|
||||
+
|
||||
+ r = getenv_bool(ascii_strupper(e));
|
||||
+ if (r < 0 && r != -ENXIO)
|
||||
+ log_debug_errno(r, "Failed to parse $%s, ignoring: %m", e);
|
||||
+
|
||||
+ cache[t] = r == 0 ? -1 : 1;
|
||||
+ }
|
||||
+ if (cache[t] < 0)
|
||||
+ return false;
|
||||
+
|
||||
if (!unit_vtable[t]->supported)
|
||||
return true;
|
||||
|
@ -0,0 +1,54 @@
|
||||
From b0134d872f6f7dd6b310d4791cb10dd78c0126fe Mon Sep 17 00:00:00 2001
|
||||
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
||||
Date: Tue, 18 Mar 2025 15:50:43 +0900
|
||||
Subject: [PATCH] tree-wide: check more log message format in log_struct() and
|
||||
friends
|
||||
|
||||
This introduce LOG_ITEM() macro that checks arbitrary formats in
|
||||
log_struct().
|
||||
Then, drop _printf_ attribute from log_struct_internal(), as it does not
|
||||
help so much, and compiler checked only the first format string.
|
||||
|
||||
Hopefully, this silences false-positive warnings by Coverity.
|
||||
|
||||
[dtardon: Backported just the new macros, not their use across the
|
||||
source tree. I could easily avoid doing it at all, but the macros might
|
||||
be useful for future backports.]
|
||||
|
||||
(cherry picked from commit 3cf6a3a3d4acf8347ccd0250274f517e6b2e9fe6)
|
||||
|
||||
Related: RHEL-100353
|
||||
---
|
||||
src/basic/log.h | 8 ++++++--
|
||||
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/basic/log.h b/src/basic/log.h
|
||||
index c51941c141..153c3571b6 100644
|
||||
--- a/src/basic/log.h
|
||||
+++ b/src/basic/log.h
|
||||
@@ -146,7 +146,7 @@ int log_struct_internal(
|
||||
const char *file,
|
||||
int line,
|
||||
const char *func,
|
||||
- const char *format, ...) _printf_(6,0) _sentinel_;
|
||||
+ const char *format, ...) _sentinel_;
|
||||
|
||||
int log_oom_internal(
|
||||
int level,
|
||||
@@ -305,11 +305,15 @@ bool log_on_console(void) _pure_;
|
||||
/* Do a fake formatting of the message string to let the scanner verify the arguments against the format
|
||||
* message. The variable will never be set to true, but we don't tell the compiler that :) */
|
||||
extern bool _log_message_dummy;
|
||||
-# define LOG_MESSAGE(fmt, ...) "MESSAGE=%.0d" fmt, (_log_message_dummy && printf(fmt, ##__VA_ARGS__)), ##__VA_ARGS__
|
||||
+# define LOG_ITEM(fmt, ...) "%.0d" fmt, (_log_message_dummy && printf(fmt, ##__VA_ARGS__)), ##__VA_ARGS__
|
||||
+# define LOG_MESSAGE(fmt, ...) LOG_ITEM("MESSAGE=" fmt, ##__VA_ARGS__)
|
||||
#else
|
||||
+# define LOG_ITEM(fmt, ...) fmt, ##__VA_ARGS__
|
||||
# define LOG_MESSAGE(fmt, ...) "MESSAGE=" fmt, ##__VA_ARGS__
|
||||
#endif
|
||||
|
||||
+#define LOG_MESSAGE_ID(id) LOG_ITEM("MESSAGE_ID=" id)
|
||||
+
|
||||
void log_received_signal(int level, const struct signalfd_siginfo *si);
|
||||
|
||||
/* If turned on, any requests for a log target involving "syslog" will be implicitly upgraded to the equivalent journal target */
|
29
SOURCES/1201-build-add-some-coloring-to-version-output.patch
Normal file
29
SOURCES/1201-build-add-some-coloring-to-version-output.patch
Normal file
@ -0,0 +1,29 @@
|
||||
From 907ba128ec81e8821433c2bdfed84169cd9c644b Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Mon, 23 Jan 2023 16:23:45 +0100
|
||||
Subject: [PATCH] build: add some coloring to --version output
|
||||
|
||||
Make it easier to discern enabled and disabled build options.
|
||||
|
||||
[dtardon: I picked just the def. of log_oom_warning(), as we don't
|
||||
really need the rest.]
|
||||
|
||||
(cherry picked from commit 4453ebe4db0511d25bed1040930ea6430c1bed91)
|
||||
|
||||
Related: RHEL-100353
|
||||
---
|
||||
src/basic/log.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/basic/log.h b/src/basic/log.h
|
||||
index 153c3571b6..3527336278 100644
|
||||
--- a/src/basic/log.h
|
||||
+++ b/src/basic/log.h
|
||||
@@ -296,6 +296,7 @@ int log_emergency_level(void);
|
||||
|
||||
#define log_oom() log_oom_internal(LOG_ERR, PROJECT_FILE, __LINE__, __func__)
|
||||
#define log_oom_debug() log_oom_internal(LOG_DEBUG, PROJECT_FILE, __LINE__, __func__)
|
||||
+#define log_oom_warning() log_oom_internal(LOG_WARNING, PROJECT_FILE, __LINE__, __func__)
|
||||
|
||||
bool log_on_console(void) _pure_;
|
||||
|
@ -0,0 +1,48 @@
|
||||
From 6973805b33c02c9613ca71003489c428fe1e894e Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Wed, 18 Jun 2025 11:47:06 +0200
|
||||
Subject: [PATCH] core: output log cycle path in one log message, not many
|
||||
|
||||
Fixes: #35642
|
||||
(cherry picked from commit 201647e3f2ff04fbaebc1901431b7ff610f995fb)
|
||||
|
||||
Related: RHEL-100353
|
||||
---
|
||||
src/core/transaction.c | 23 ++++++++++++++++-------
|
||||
1 file changed, 16 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/src/core/transaction.c b/src/core/transaction.c
|
||||
index bb51f51318..747c9101e3 100644
|
||||
--- a/src/core/transaction.c
|
||||
+++ b/src/core/transaction.c
|
||||
@@ -393,14 +393,23 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
|
||||
|
||||
unit_ids = merge_unit_ids(j->manager->unit_log_field, array); /* ignore error */
|
||||
|
||||
- STRV_FOREACH_PAIR(unit_id, job_type, array)
|
||||
- /* logging for j not k here to provide a consistent narrative */
|
||||
+ size_t m = strv_length(array);
|
||||
+
|
||||
+ _cleanup_free_ char *cycle_path_text = strdup("Found ordering cycle");
|
||||
+ if (m > 0) {
|
||||
+ (void) strextendf(&cycle_path_text, " on %s/%s", array[0], array[1]);
|
||||
+ if (m > 2)
|
||||
+ (void) strextendf(&cycle_path_text, "; has dependency on %s/%s", array[2], array[3]);
|
||||
+ }
|
||||
+
|
||||
+ STRV_FOREACH_PAIR(unit_id, job_type, strv_skip(array, 4))
|
||||
+ (void) strextendf(&cycle_path_text, ", %s/%s", *unit_id, *job_type);
|
||||
+
|
||||
+ /* logging for j not k here to provide a consistent narrative */
|
||||
+ if (cycle_path_text)
|
||||
log_struct(LOG_WARNING,
|
||||
- LOG_UNIT_MESSAGE(j->unit,
|
||||
- "Found %s on %s/%s",
|
||||
- unit_id == array ? "ordering cycle" : "dependency",
|
||||
- *unit_id, *job_type),
|
||||
- "%s", strna(unit_ids));
|
||||
+ LOG_UNIT_MESSAGE(j->unit, "%s", cycle_path_text),
|
||||
+ LOG_ITEM("%s", strna(unit_ids)));
|
||||
|
||||
if (delete) {
|
||||
const char *status;
|
@ -0,0 +1,74 @@
|
||||
From c0f5bfe59f56321ebf62b73724b4a6a12e176946 Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Wed, 18 Jun 2025 11:47:25 +0200
|
||||
Subject: [PATCH] core: make log cycle messages recognizable via message IDs
|
||||
|
||||
(cherry picked from commit 5bbad6244ffc3849511c6ca652a27f1af550c599)
|
||||
|
||||
Resolves: RHEL-100353
|
||||
---
|
||||
src/core/transaction.c | 9 +++++++--
|
||||
src/systemd/sd-messages.h | 9 +++++++++
|
||||
2 files changed, 16 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/core/transaction.c b/src/core/transaction.c
|
||||
index 747c9101e3..2d4c48b82a 100644
|
||||
--- a/src/core/transaction.c
|
||||
+++ b/src/core/transaction.c
|
||||
@@ -3,6 +3,8 @@
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
|
||||
+#include "sd-messages.h"
|
||||
+
|
||||
#include "alloc-util.h"
|
||||
#include "bus-common-errors.h"
|
||||
#include "bus-error.h"
|
||||
@@ -409,6 +411,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
|
||||
if (cycle_path_text)
|
||||
log_struct(LOG_WARNING,
|
||||
LOG_UNIT_MESSAGE(j->unit, "%s", cycle_path_text),
|
||||
+ LOG_MESSAGE_ID(SD_MESSAGE_UNIT_ORDERING_CYCLE_STR),
|
||||
LOG_ITEM("%s", strna(unit_ids)));
|
||||
|
||||
if (delete) {
|
||||
@@ -419,7 +422,8 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
|
||||
"Job %s/%s deleted to break ordering cycle starting with %s/%s",
|
||||
delete->unit->id, job_type_to_string(delete->type),
|
||||
j->unit->id, job_type_to_string(j->type)),
|
||||
- "%s", strna(unit_ids));
|
||||
+ LOG_MESSAGE_ID(SD_MESSAGE_DELETING_JOB_BECAUSE_ORDERING_CYCLE_STR),
|
||||
+ LOG_ITEM("%s", strna(unit_ids)));
|
||||
|
||||
if (log_get_show_color())
|
||||
status = ANSI_HIGHLIGHT_RED " SKIP " ANSI_NORMAL;
|
||||
@@ -438,7 +442,8 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
|
||||
log_struct(LOG_ERR,
|
||||
LOG_UNIT_MESSAGE(j->unit, "Unable to break cycle starting with %s/%s",
|
||||
j->unit->id, job_type_to_string(j->type)),
|
||||
- "%s", strna(unit_ids));
|
||||
+ LOG_MESSAGE_ID(SD_MESSAGE_CANT_BREAK_ORDERING_CYCLE_STR),
|
||||
+ LOG_ITEM("%s", strna(unit_ids)));
|
||||
|
||||
return sd_bus_error_setf(e, BUS_ERROR_TRANSACTION_ORDER_IS_CYCLIC,
|
||||
"Transaction order is cyclic. See system logs for details.");
|
||||
diff --git a/src/systemd/sd-messages.h b/src/systemd/sd-messages.h
|
||||
index 51241c9426..67765c0f05 100644
|
||||
--- a/src/systemd/sd-messages.h
|
||||
+++ b/src/systemd/sd-messages.h
|
||||
@@ -192,6 +192,15 @@ _SD_BEGIN_DECLARATIONS;
|
||||
#define SD_MESSAGE_TPM_PCR_EXTEND SD_ID128_MAKE(3f,7d,5e,f3,e5,4f,43,02,b4,f0,b1,43,bb,27,0c,ab)
|
||||
#define SD_MESSAGE_TPM_PCR_EXTEND_STR SD_ID128_MAKE_STR(3f,7d,5e,f3,e5,4f,43,02,b4,f0,b1,43,bb,27,0c,ab)
|
||||
|
||||
+#define SD_MESSAGE_UNIT_ORDERING_CYCLE SD_ID128_MAKE(f2,7a,3f,94,40,6a,47,83,b9,46,a9,bc,84,9e,94,52)
|
||||
+#define SD_MESSAGE_UNIT_ORDERING_CYCLE_STR SD_ID128_MAKE_STR(f2,7a,3f,94,40,6a,47,83,b9,46,a9,bc,84,9e,94,52)
|
||||
+
|
||||
+#define SD_MESSAGE_DELETING_JOB_BECAUSE_ORDERING_CYCLE SD_ID128_MAKE(50,84,36,75,42,f7,47,2d,bc,6a,94,12,5d,5d,eb,ce)
|
||||
+#define SD_MESSAGE_DELETING_JOB_BECAUSE_ORDERING_CYCLE_STR SD_ID128_MAKE_STR(50,84,36,75,42,f7,47,2d,bc,6a,94,12,5d,5d,eb,ce)
|
||||
+
|
||||
+#define SD_MESSAGE_CANT_BREAK_ORDERING_CYCLE SD_ID128_MAKE(b3,11,2d,da,d1,90,45,53,8c,76,68,5b,a5,91,8a,80)
|
||||
+#define SD_MESSAGE_CANT_BREAK_ORDERING_CYCLE_STR SD_ID128_MAKE_STR(b3,11,2d,da,d1,90,45,53,8c,76,68,5b,a5,91,8a,80)
|
||||
+
|
||||
_SD_END_DECLARATIONS;
|
||||
|
||||
#endif
|
@ -0,0 +1,41 @@
|
||||
From 637b4c312f2dfbf2fadf6829550502359d195678 Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Wed, 18 Jun 2025 11:48:39 +0200
|
||||
Subject: [PATCH] core: change ordering cycle log message log levels
|
||||
|
||||
Let's downgrade the log message about our attempts to deal with an
|
||||
ordering cycle to warning, because this is a "positive" thing, we try to
|
||||
improve an earlier error.
|
||||
|
||||
OTOH increase the log level when we first log about the cycle to error,
|
||||
since that highlights the actual problem.
|
||||
|
||||
(cherry picked from commit fe458ad68e2813823c381c4010bad201f5e2c2be)
|
||||
|
||||
Related: RHEL-100353
|
||||
---
|
||||
src/core/transaction.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/core/transaction.c b/src/core/transaction.c
|
||||
index 2d4c48b82a..2dd3c1bac3 100644
|
||||
--- a/src/core/transaction.c
|
||||
+++ b/src/core/transaction.c
|
||||
@@ -409,7 +409,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
|
||||
|
||||
/* logging for j not k here to provide a consistent narrative */
|
||||
if (cycle_path_text)
|
||||
- log_struct(LOG_WARNING,
|
||||
+ log_struct(LOG_ERR,
|
||||
LOG_UNIT_MESSAGE(j->unit, "%s", cycle_path_text),
|
||||
LOG_MESSAGE_ID(SD_MESSAGE_UNIT_ORDERING_CYCLE_STR),
|
||||
LOG_ITEM("%s", strna(unit_ids)));
|
||||
@@ -417,7 +417,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
|
||||
if (delete) {
|
||||
const char *status;
|
||||
/* logging for j not k here to provide a consistent narrative */
|
||||
- log_struct(LOG_ERR,
|
||||
+ log_struct(LOG_WARNING,
|
||||
LOG_UNIT_MESSAGE(j->unit,
|
||||
"Job %s/%s deleted to break ordering cycle starting with %s/%s",
|
||||
delete->unit->id, job_type_to_string(delete->type),
|
25
SOURCES/1205-core-cast-log_oom-got-void.patch
Normal file
25
SOURCES/1205-core-cast-log_oom-got-void.patch
Normal file
@ -0,0 +1,25 @@
|
||||
From bcd3816f09ac86fc438c89377fef0f27fa25c57b Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Wed, 18 Jun 2025 11:51:45 +0200
|
||||
Subject: [PATCH] core: cast log_oom() got void
|
||||
|
||||
(cherry picked from commit 6650e21349273a5274ce00d689ed881d2976a6e7)
|
||||
|
||||
Related: RHEL-100353
|
||||
---
|
||||
src/core/transaction.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/core/transaction.c b/src/core/transaction.c
|
||||
index 2dd3c1bac3..3f62cfd79b 100644
|
||||
--- a/src/core/transaction.c
|
||||
+++ b/src/core/transaction.c
|
||||
@@ -382,7 +382,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
|
||||
|
||||
/* For logging below */
|
||||
if (strv_push_pair(&array, k->unit->id, (char*) job_type_to_string(k->type)) < 0)
|
||||
- log_oom();
|
||||
+ (void) log_oom_warning();
|
||||
|
||||
if (!delete && hashmap_get(tr->jobs, k->unit) && !unit_matters_to_anchor(k->unit, k))
|
||||
/* Ok, we can drop this one, so let's do so. */
|
@ -0,0 +1,26 @@
|
||||
From 115bb1c4d76b4b2ccd9f400b342facb610ec820d Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Thu, 19 Jun 2025 10:15:35 +0200
|
||||
Subject: [PATCH] core: when removing a job from a transaction, include in
|
||||
structured log message which
|
||||
|
||||
(cherry picked from commit becbd2ec4e00aafb656ebc4b2977c1f62adc2ee8)
|
||||
|
||||
Related: RHEL-100353
|
||||
---
|
||||
src/core/transaction.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/src/core/transaction.c b/src/core/transaction.c
|
||||
index 3f62cfd79b..f61ab26bf8 100644
|
||||
--- a/src/core/transaction.c
|
||||
+++ b/src/core/transaction.c
|
||||
@@ -423,6 +423,8 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
|
||||
delete->unit->id, job_type_to_string(delete->type),
|
||||
j->unit->id, job_type_to_string(j->type)),
|
||||
LOG_MESSAGE_ID(SD_MESSAGE_DELETING_JOB_BECAUSE_ORDERING_CYCLE_STR),
|
||||
+ LOG_ITEM("DELETED_UNIT=%s", delete->unit->id),
|
||||
+ LOG_ITEM("DELETED_TYPE=%s", job_type_to_string(delete->type)),
|
||||
LOG_ITEM("%s", strna(unit_ids)));
|
||||
|
||||
if (log_get_show_color())
|
@ -0,0 +1,73 @@
|
||||
From 9af2c41e6a7d3f6034326f30e35c324c7e02274b Mon Sep 17 00:00:00 2001
|
||||
From: Lennart Poettering <lennart@poettering.net>
|
||||
Date: Thu, 19 Jun 2025 10:15:49 +0200
|
||||
Subject: [PATCH] catalog: add entries for the order cycle log messages
|
||||
|
||||
Fixes: #35642
|
||||
(cherry picked from commit e4003f2d9cb93d09d99b87a3d2f68cb0889ecbe8)
|
||||
|
||||
Related: RHEL-100353
|
||||
---
|
||||
catalog/systemd.catalog.in | 52 ++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 52 insertions(+)
|
||||
|
||||
diff --git a/catalog/systemd.catalog.in b/catalog/systemd.catalog.in
|
||||
index 4c29128f71..86d7067f6f 100644
|
||||
--- a/catalog/systemd.catalog.in
|
||||
+++ b/catalog/systemd.catalog.in
|
||||
@@ -539,3 +539,55 @@ Platform Configuration Register (PCR) @PCR@, on banks @BANKS@.
|
||||
Whenever the system transitions to a new runtime phase, a different string is
|
||||
extended into the specified PCR, to ensure that security policies for TPM-bound
|
||||
secrets and other resources are limited to specific phases of the runtime.
|
||||
+
|
||||
+-- f27a3f94406a4783b946a9bc849e9452
|
||||
+Subject: Unit ordering cycle found
|
||||
+Defined-By: systemd
|
||||
+Support: %SUPPORT_URL%
|
||||
+Documentation: man:systemd(1)
|
||||
+
|
||||
+A unit transaction was initiated that contains an ordering cycle, i.e. some
|
||||
+unit that was requested to be started (either directly, or indirectly due to a
|
||||
+requirement dependency such as Wants= or Requires=) is ordered before some
|
||||
+other unit (via After=/Before=), but that latter unit is also ordered before
|
||||
+the former by some dependency (either directly or indirectly).
|
||||
+
|
||||
+Ordering cycles consist of at least two units, but might involve many
|
||||
+more. They generally indicate a bug in the unit definitions, as a unit
|
||||
+conceptually cannot be run both before and after some other unit, it must be
|
||||
+strictly ordered either before or after.
|
||||
+
|
||||
+The ordering cycle is shown in the log message. An attempt will be made to
|
||||
+remove unit jobs from the transaction in order to make the transaction succeed
|
||||
+at least partially. Note that such cycle breaking is not going to correct the
|
||||
+issue, it is just an attempt to make the outcome less problematic.
|
||||
+
|
||||
+The correct fix is to analyze the cycle in question and then break the cycle at
|
||||
+the right place by removing the right After= or Before= lines from one or more
|
||||
+of the involved unit files.
|
||||
+
|
||||
+-- 5084367542f7472dbc6a94125d5debce
|
||||
+Subject: Unit job deleted due to an ordering cycle
|
||||
+Defined-By: systemd
|
||||
+Support: %SUPPORT_URL%
|
||||
+Documentation: man:systemd(1)
|
||||
+
|
||||
+In order to address an ordering cycle between units that have been added to a
|
||||
+transaction a job has been removed from the transaction.
|
||||
+
|
||||
+The removed job is '@DELETED_TYPE@' for unit @DELETED_UNIT@.
|
||||
+
|
||||
+The removal of the job is done in order to minimize the negative effect of an
|
||||
+ordering cycle — it is not going to fix the underlying problem, which is a bug
|
||||
+in the involved unit files. The deleted job might be fundamental for the other
|
||||
+units in the transaction to operate, which hence might fail.
|
||||
+
|
||||
+-- b3112ddad19045538c76685ba5918a80
|
||||
+Subject: Unable to break ordering cycle between units
|
||||
+Defined-By: systemd
|
||||
+Support: %SUPPORT_URL%
|
||||
+Documentation: man:systemd(1)
|
||||
+
|
||||
+It has been attempted to break an ordering cycle between units for which jobs
|
||||
+have been enqueued as part of a transaction, but this was not successful. The
|
||||
+transaction will fail.
|
@ -0,0 +1,46 @@
|
||||
From d281329eaba88a8ea16bda1c4216ee2d73376d90 Mon Sep 17 00:00:00 2001
|
||||
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
||||
Date: Tue, 18 Mar 2025 15:50:43 +0900
|
||||
Subject: [PATCH] tree-wide: check more log message format in log_struct() and
|
||||
friends
|
||||
|
||||
This introduce LOG_ITEM() macro that checks arbitrary formats in
|
||||
log_struct().
|
||||
Then, drop _printf_ attribute from log_struct_internal(), as it does not
|
||||
help so much, and compiler checked only the first format string.
|
||||
|
||||
Hopefully, this silences false-positive warnings by Coverity.
|
||||
|
||||
[dtardon: Backported just the immediate fix for a compiler warning.]
|
||||
|
||||
(cherry picked from commit 3cf6a3a3d4acf8347ccd0250274f517e6b2e9fe6)
|
||||
|
||||
Related: RHEL-100353
|
||||
---
|
||||
src/basic/log.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/src/basic/log.c b/src/basic/log.c
|
||||
index 2e1642dc20..20bf45170c 100644
|
||||
--- a/src/basic/log.c
|
||||
+++ b/src/basic/log.c
|
||||
@@ -959,7 +959,9 @@ int log_struct_internal(
|
||||
iovec[n++] = IOVEC_MAKE_STRING(header);
|
||||
|
||||
va_start(ap, format);
|
||||
+ DISABLE_WARNING_FORMAT_NONLITERAL;
|
||||
r = log_format_iovec(iovec, ELEMENTSOF(iovec), &n, true, error, format, ap);
|
||||
+ REENABLE_WARNING;
|
||||
if (r < 0)
|
||||
fallback = true;
|
||||
else {
|
||||
@@ -993,7 +995,9 @@ int log_struct_internal(
|
||||
errno = ERRNO_VALUE(error);
|
||||
|
||||
va_copy(aq, ap);
|
||||
+ DISABLE_WARNING_FORMAT_NONLITERAL;
|
||||
(void) vsnprintf(buf, sizeof buf, format, aq);
|
||||
+ REENABLE_WARNING;
|
||||
va_end(aq);
|
||||
|
||||
if (startswith(buf, "MESSAGE=")) {
|
@ -0,0 +1,46 @@
|
||||
From 218ce1e8353ba19e2886adb98379ba6c82f9692b Mon Sep 17 00:00:00 2001
|
||||
From: Mike Yuan <me@yhndnzj.com>
|
||||
Date: Mon, 30 Jun 2025 17:57:08 +0200
|
||||
Subject: [PATCH] core/transaction: do not attempt to log "n/a" as a journal
|
||||
field
|
||||
|
||||
Follow-up for 3cf6a3a3d4acf8347ccd0250274f517e6b2e9fe6
|
||||
|
||||
(cherry picked from commit 1c8d653d2b8a82ed3944f03c2dea25ad1e2cc967)
|
||||
|
||||
Related: RHEL-100353
|
||||
---
|
||||
src/core/transaction.c | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/core/transaction.c b/src/core/transaction.c
|
||||
index f61ab26bf8..f527fbf017 100644
|
||||
--- a/src/core/transaction.c
|
||||
+++ b/src/core/transaction.c
|
||||
@@ -412,7 +412,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
|
||||
log_struct(LOG_ERR,
|
||||
LOG_UNIT_MESSAGE(j->unit, "%s", cycle_path_text),
|
||||
LOG_MESSAGE_ID(SD_MESSAGE_UNIT_ORDERING_CYCLE_STR),
|
||||
- LOG_ITEM("%s", strna(unit_ids)));
|
||||
+ LOG_ITEM("%s", strempty(unit_ids)));
|
||||
|
||||
if (delete) {
|
||||
const char *status;
|
||||
@@ -425,7 +425,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
|
||||
LOG_MESSAGE_ID(SD_MESSAGE_DELETING_JOB_BECAUSE_ORDERING_CYCLE_STR),
|
||||
LOG_ITEM("DELETED_UNIT=%s", delete->unit->id),
|
||||
LOG_ITEM("DELETED_TYPE=%s", job_type_to_string(delete->type)),
|
||||
- LOG_ITEM("%s", strna(unit_ids)));
|
||||
+ LOG_ITEM("%s", strempty(unit_ids)));
|
||||
|
||||
if (log_get_show_color())
|
||||
status = ANSI_HIGHLIGHT_RED " SKIP " ANSI_NORMAL;
|
||||
@@ -445,7 +445,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
|
||||
LOG_UNIT_MESSAGE(j->unit, "Unable to break cycle starting with %s/%s",
|
||||
j->unit->id, job_type_to_string(j->type)),
|
||||
LOG_MESSAGE_ID(SD_MESSAGE_CANT_BREAK_ORDERING_CYCLE_STR),
|
||||
- LOG_ITEM("%s", strna(unit_ids)));
|
||||
+ LOG_ITEM("%s", strempty(unit_ids)));
|
||||
|
||||
return sd_bus_error_setf(e, BUS_ERROR_TRANSACTION_ORDER_IS_CYCLIC,
|
||||
"Transaction order is cyclic. See system logs for details.");
|
@ -0,0 +1,97 @@
|
||||
From d9281e6450d2cca3ea5e7eed61d95b8ff0fcca0b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
|
||||
Date: Sat, 16 Sep 2023 10:08:12 +0200
|
||||
Subject: [PATCH] basic/parse-util: add helper to parse bounded unsigned values
|
||||
|
||||
"parse_range" is already used for stuff like "a-b", so use "bounded" here to
|
||||
avoid confusion.
|
||||
---
|
||||
src/basic/parse-util.c | 15 +++++++++++++++
|
||||
src/basic/parse-util.h | 3 ++-
|
||||
src/test/test-parse-util.c | 26 ++++++++++++++++++++++++++
|
||||
3 files changed, 43 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/basic/parse-util.c b/src/basic/parse-util.c
|
||||
index 3b3efb0..c1c25fd 100644
|
||||
--- a/src/basic/parse-util.c
|
||||
+++ b/src/basic/parse-util.c
|
||||
@@ -390,6 +390,21 @@ int safe_atou_full(const char *s, unsigned base, unsigned *ret_u) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
+int safe_atou_bounded(const char *s, unsigned min, unsigned max, unsigned *ret) {
|
||||
+ unsigned v;
|
||||
+ int r;
|
||||
+
|
||||
+ r = safe_atou(s, &v);
|
||||
+ if (r < 0)
|
||||
+ return r;
|
||||
+
|
||||
+ if (v < min || v > max)
|
||||
+ return -ERANGE;
|
||||
+
|
||||
+ *ret = v;
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
int safe_atoi(const char *s, int *ret_i) {
|
||||
unsigned base = 0;
|
||||
char *x = NULL;
|
||||
diff --git a/src/basic/parse-util.h b/src/basic/parse-util.h
|
||||
index 8d8d523..7e1517c 100644
|
||||
--- a/src/basic/parse-util.h
|
||||
+++ b/src/basic/parse-util.h
|
||||
@@ -28,11 +28,12 @@ int parse_errno(const char *t);
|
||||
#define SAFE_ATO_MASK_FLAGS(base) ((base) & ~SAFE_ATO_ALL_FLAGS)
|
||||
|
||||
int safe_atou_full(const char *s, unsigned base, unsigned *ret_u);
|
||||
-
|
||||
static inline int safe_atou(const char *s, unsigned *ret_u) {
|
||||
return safe_atou_full(s, 0, ret_u);
|
||||
}
|
||||
|
||||
+int safe_atou_bounded(const char *s, unsigned min, unsigned max, unsigned *ret);
|
||||
+
|
||||
int safe_atoi(const char *s, int *ret_i);
|
||||
int safe_atolli(const char *s, long long int *ret_i);
|
||||
|
||||
diff --git a/src/test/test-parse-util.c b/src/test/test-parse-util.c
|
||||
index 388d0fe..3bf237b 100644
|
||||
--- a/src/test/test-parse-util.c
|
||||
+++ b/src/test/test-parse-util.c
|
||||
@@ -417,6 +417,32 @@ TEST(parse_range) {
|
||||
assert_se(upper == 9999);
|
||||
}
|
||||
|
||||
+TEST(safe_atou_bounded) {
|
||||
+ int r;
|
||||
+ unsigned x;
|
||||
+
|
||||
+ r = safe_atou_bounded("12345", 12, 20000, &x);
|
||||
+ assert_se(r == 0);
|
||||
+ assert_se(x == 12345);
|
||||
+
|
||||
+ r = safe_atou_bounded("12", 12, 20000, &x);
|
||||
+ assert_se(r == 0);
|
||||
+ assert_se(x == 12);
|
||||
+
|
||||
+ r = safe_atou_bounded("20000", 12, 20000, &x);
|
||||
+ assert_se(r == 0);
|
||||
+ assert_se(x == 20000);
|
||||
+
|
||||
+ r = safe_atou_bounded("-1", 12, 20000, &x);
|
||||
+ assert_se(r == -ERANGE);
|
||||
+
|
||||
+ r = safe_atou_bounded("11", 12, 20000, &x);
|
||||
+ assert_se(r == -ERANGE);
|
||||
+
|
||||
+ r = safe_atou_bounded("20001", 12, 20000, &x);
|
||||
+ assert_se(r == -ERANGE);
|
||||
+}
|
||||
+
|
||||
TEST(safe_atolli) {
|
||||
int r;
|
||||
long long l;
|
||||
--
|
||||
2.47.1
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user