Compare commits

...
Author SHA1 Message Date
Dan Kluser daa2e49608 Increase timeout for builds 2026-07-29 08:41:46 +02:00
Andy Nguyen b18c595597 config: update to 7.1.4 2026-07-21 21:48:01 +02:00
rmux be4fdf3fe9 PS5: Buzzer: fix crash in snd_event (#31) 2026-07-21 21:09:50 +02:00
John Törnblom 5a1171fb6d readme: document a couple of unsupported hdmi features (#30)
* readme: document lack of monitor swap support

* readme: document lack of hdmi cec support
2026-07-16 19:51:06 +02:00
rmux dc1a568126 x86/cpu/amd: set Oberon CPU model name (family 0x17, model 0x46) (#29) 2026-07-08 13:15:00 +02:00
4 changed files with 43 additions and 13 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86 7.1.3 Kernel Configuration
# Linux/x86 7.1.4 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (Ubuntu 15.2.0-16ubuntu1) 15.2.0"
CONFIG_CC_IS_GCC=y
+1 -1
View File
@@ -21,7 +21,7 @@ on:
jobs:
build:
runs-on: self-hosted
timeout-minutes: 120
timeout-minutes: 720
permissions:
contents: write
+2
View File
@@ -31,3 +31,5 @@ sudo make install
- screen save does not work properly
- hdmi audio output does not work on some monitors
- hdmi 1440p and 2160p video output does not work on some monitors
- monitor swap is not supported
- hdmi cec is not supported
+39 -11
View File
@@ -106,6 +106,21 @@ index dafbf581c515..791687363cbf 100644
X86_NR_SUBARCHS,
};
diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c
index 31f01e9c7114..ec3c32893cca 100644
--- a/arch/x86/kernel/cpu/amd.c
+++ b/arch/x86/kernel/cpu/amd.c
@@ -1163,6 +1163,10 @@ static void init_amd(struct cpuinfo_x86 *c)
/* AMD CPUs don't need fencing after x2APIC/TSC_DEADLINE MSR writes. */
clear_cpu_cap(c, X86_FEATURE_APIC_MSRS_FENCE);
+ if (c->x86 == 0x17 && c->x86_model == 0x46)
+ strscpy(c->x86_model_id, "AMD Custom Zen 2 (Oberon)",
+ sizeof(c->x86_model_id));
+
/* Enable Translation Cache Extension */
if (cpu_has(c, X86_FEATURE_TCE))
msr_set_bit(MSR_EFER, _EFER_TCE);
diff --git a/arch/x86/kernel/head64.c b/arch/x86/kernel/head64.c
index fd28b53dbac5..569fc764d267 100644
--- a/arch/x86/kernel/head64.c
@@ -139,7 +154,7 @@ index cb9852ad6098..83bb0cf9e40b 100644
return true;
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 0550359ed798..297ac533e017 100644
index 88f0e3fd8919..970eb7dad09c 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -114,7 +114,11 @@ EXPORT_SYMBOL_FOR_KVM_INTERNAL(kvm_host);
@@ -1093,7 +1108,7 @@ index 000000000000..39cc76f39e06
+
+#endif
diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index 830fefb342c6..380bc421583d 100644
index cc6392f8d98c..ba246af47b7c 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -67,6 +67,10 @@ static struct usb_driver btusb_driver;
@@ -1134,7 +1149,7 @@ index 830fefb342c6..380bc421583d 100644
/* Intel Bluetooth devices */
{ USB_DEVICE(0x8087, 0x0025), .driver_info = BTUSB_INTEL_COMBINED },
@@ -4055,6 +4072,10 @@ static int btusb_probe(struct usb_interface *intf,
@@ -4067,6 +4084,10 @@ static int btusb_probe(struct usb_interface *intf,
(intf->cur_altsetting->desc.bInterfaceNumber != 2))
return -ENODEV;
@@ -1145,7 +1160,7 @@ index 830fefb342c6..380bc421583d 100644
ifnum_base = intf->cur_altsetting->desc.bInterfaceNumber;
if (!id->driver_info) {
@@ -4344,6 +4365,12 @@ static int btusb_probe(struct usb_interface *intf,
@@ -4355,6 +4376,12 @@ static int btusb_probe(struct usb_interface *intf,
if (id->driver_info & BTUSB_INVALID_LE_STATES)
hci_set_quirk(hdev, HCI_QUIRK_BROKEN_LE_STATES);
@@ -1158,7 +1173,7 @@ index 830fefb342c6..380bc421583d 100644
if (id->driver_info & BTUSB_DIGIANSWER) {
data->cmdreq_type = USB_TYPE_VENDOR;
hci_set_quirk(hdev, HCI_QUIRK_RESET_ON_CLOSE);
@@ -4400,7 +4427,7 @@ static int btusb_probe(struct usb_interface *intf,
@@ -4411,7 +4438,7 @@ static int btusb_probe(struct usb_interface *intf,
data->diag = NULL;
}
@@ -5329,10 +5344,10 @@ index 000000000000..612aee5b273a
+#endif /* _AUTOSERVO_PARAM_H */
diff --git a/drivers/ps5/buzzer.c b/drivers/ps5/buzzer.c
new file mode 100644
index 000000000000..f48ad6f92534
index 000000000000..5a53c5f719bc
--- /dev/null
+++ b/drivers/ps5/buzzer.c
@@ -0,0 +1,291 @@
@@ -0,0 +1,304 @@
+// SPDX-License-Identifier: GPL-2.0-only
+
+#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
@@ -5349,6 +5364,8 @@ index 000000000000..f48ad6f92534
+#include <linux/kthread.h>
+#include <linux/mutex.h>
+#include <linux/device.h>
+#include <linux/workqueue.h>
+#include <linux/atomic.h>
+#include <linux/ps5.h>
+
+#define BUZZER_IOC_MAGIC 'B'
@@ -5531,11 +5548,21 @@ index 000000000000..f48ad6f92534
+ .mode = 0660,
+};
+
+static atomic_t bell_state = ATOMIC_INIT(PS5_BUZZ_SILENT);
+
+static void bell_work_fn(struct work_struct *w)
+{
+ ps5_buzz_raw(atomic_read(&bell_state));
+}
+static DECLARE_WORK(bell_work, bell_work_fn);
+
+static int snd_event(struct input_dev *dev, unsigned int type,
+ unsigned int code, int value)
+{
+ if (type == EV_SND && code == SND_BELL)
+ ps5_buzz_raw(value ? PS5_BUZZ_SHORT : PS5_BUZZ_SILENT);
+ if (type == EV_SND && code == SND_BELL) {
+ atomic_set(&bell_state, value ? PS5_BUZZ_SHORT : PS5_BUZZ_SILENT);
+ schedule_work(&bell_work);
+ }
+ return 0;
+}
+
@@ -5614,6 +5641,7 @@ index 000000000000..f48ad6f92534
+ play_stop();
+ if (snd_idev)
+ input_unregister_device(snd_idev);
+ cancel_work_sync(&bell_work);
+ sysfs_remove_group(&buzz_misc.this_device->kobj, &buzz_attr_group);
+ misc_deregister(&buzz_misc);
+}
@@ -10507,7 +10535,7 @@ index 000000000000..193ac03a3074
+dma_addr_t xhci_trb_virt_to_dma(struct xhci_segment *seg, union xhci_trb *trb);
+int xhci_handle_events(struct xhci_hcd *xhci, struct xhci_interrupter *ir, bool skip_events);
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
index a54f5b57f205..0d99186ec967 100644
index 15346fdd66bc..e08120bf12c8 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -26,6 +26,7 @@
@@ -10697,7 +10725,7 @@ index 572b1c620c5d..b776491a1241 100644
* When this quirk is set, the HCI_OP_LE_EXT_CREATE_CONN command is
* disabled. This is required for the Actions Semiconductor ATS2851
diff --git a/net/bluetooth/hci_sync.c b/net/bluetooth/hci_sync.c
index df23245d6ccd..1248c3735900 100644
index a3df69bdec1e..7b143f96c947 100644
--- a/net/bluetooth/hci_sync.c
+++ b/net/bluetooth/hci_sync.c
@@ -3787,6 +3787,9 @@ static int hci_read_dev_class_sync(struct hci_dev *hdev)