1- From 54a49b19e01908431a429bd136dacd30c3db0d02 Mon Sep 17 00:00:00 2001
1+ From f2f8fd2a8dba6f72a03d2aeb0fa66d26974ee735 Mon Sep 17 00:00:00 2001
22From: Aditya Garg <gargaditya08@live.com>
3- Date: Thu, 11 Jul 2024 10:59:04 +0000
3+ Date: Mon, 26 May 2025 07:08:30 +0000
44Subject: [PATCH] Add apple-bce driver
55
66---
@@ -16,20 +16,20 @@ Subject: [PATCH] Add apple-bce driver
1616 drivers/staging/apple-bce/audio/protocol.h | 147 ++++
1717 .../staging/apple-bce/audio/protocol_bce.c | 226 ++++++
1818 .../staging/apple-bce/audio/protocol_bce.h | 72 ++
19- drivers/staging/apple-bce/mailbox.c | 151 ++++
19+ drivers/staging/apple-bce/mailbox.c | 155 ++++
2020 drivers/staging/apple-bce/mailbox.h | 53 ++
2121 drivers/staging/apple-bce/queue.c | 390 +++++++++
2222 drivers/staging/apple-bce/queue.h | 177 ++++
2323 drivers/staging/apple-bce/queue_dma.c | 220 +++++
2424 drivers/staging/apple-bce/queue_dma.h | 50 ++
2525 drivers/staging/apple-bce/vhci/command.h | 204 +++++
26- drivers/staging/apple-bce/vhci/queue.c | 268 +++++++
26+ drivers/staging/apple-bce/vhci/queue.c | 268 ++++++
2727 drivers/staging/apple-bce/vhci/queue.h | 76 ++
2828 drivers/staging/apple-bce/vhci/transfer.c | 661 +++++++++++++++
2929 drivers/staging/apple-bce/vhci/transfer.h | 73 ++
30- drivers/staging/apple-bce/vhci/vhci.c | 759 ++++++++++++++++++
30+ drivers/staging/apple-bce/vhci/vhci.c | 763 ++++++++++++++++++
3131 drivers/staging/apple-bce/vhci/vhci.h | 52 ++
32- 25 files changed, 5639 insertions(+)
32+ 25 files changed, 5647 insertions(+)
3333 create mode 100644 drivers/staging/apple-bce/Makefile
3434 create mode 100644 drivers/staging/apple-bce/apple_bce.c
3535 create mode 100644 drivers/staging/apple-bce/apple_bce.h
@@ -2637,13 +2637,14 @@ index 000000000..14d26c05d
26372637+ #endif //AAUDIO_PROTOCOL_BCE_H
26382638diff --git a/drivers/staging/apple-bce/mailbox.c b/drivers/staging/apple-bce/mailbox.c
26392639new file mode 100644
2640- index 000000000..e24bd3521
2640+ index 000000000..07ce11928
26412641--- /dev/null
26422642+++ b/drivers/staging/apple-bce/mailbox.c
2643- @@ -0,0 +1,151 @@
2643+ @@ -0,0 +1,155 @@
26442644+ #include "mailbox.h"
26452645+ #include <linux/atomic.h>
26462646+ #include "apple_bce.h"
2647+ + #include <linux/version.h>
26472648+
26482649+ #define REG_MBOX_OUT_BASE 0x820
26492650+ #define REG_MBOX_REPLY_COUNTER 0x108
@@ -2764,8 +2765,11 @@ index 000000000..e24bd3521
27642765+ spin_lock_irqsave(&ts->stop_sl, flags);
27652766+ ts->stopped = true;
27662767+ spin_unlock_irqrestore(&ts->stop_sl, flags);
2768+ + #if LINUX_VERSION_CODE < KERNEL_VERSION(6,15,0)
2769+ + del_timer_sync(&ts->timer);
2770+ + #else
27672771+ timer_delete_sync(&ts->timer);
2768- +
2772+ + #endif
27692773+ iowrite32((u32) -2, regb + 2);
27702774+ iowrite32((u32) -1, regb);
27712775+ }
@@ -2792,7 +2796,6 @@ index 000000000..e24bd3521
27922796+ spin_unlock(&ts->stop_sl);
27932797+ local_irq_restore(flags);
27942798+ }
2795- \ No newline at end of file
27962799diff --git a/drivers/staging/apple-bce/mailbox.h b/drivers/staging/apple-bce/mailbox.h
27972800new file mode 100644
27982801index 000000000..f3323f95b
@@ -5029,10 +5032,10 @@ index 000000000..89ecad6bc
50295032+ #endif //BCEDRIVER_TRANSFER_H
50305033diff --git a/drivers/staging/apple-bce/vhci/vhci.c b/drivers/staging/apple-bce/vhci/vhci.c
50315034new file mode 100644
5032- index 000000000..eb26f5500
5035+ index 000000000..3394e0aa2
50335036--- /dev/null
50345037+++ b/drivers/staging/apple-bce/vhci/vhci.c
5035- @@ -0,0 +1,759 @@
5038+ @@ -0,0 +1,763 @@
50365039+ #include "vhci.h"
50375040+ #include "../apple_bce.h"
50385041+ #include "command.h"
@@ -5275,7 +5278,11 @@ index 000000000..eb26f5500
52755278+ return 0;
52765279+ }
52775280+
5281+ + #if LINUX_VERSION_CODE < KERNEL_VERSION(6,8,0)
5282+ + static int bce_vhci_address_device(struct usb_hcd *hcd, struct usb_device *udev)
5283+ + #else
52785284+ static int bce_vhci_address_device(struct usb_hcd *hcd, struct usb_device *udev, unsigned int timeout_ms) //TODO: follow timeout
5285+ + #endif
52795286+ {
52805287+ /* This is the same as enable_device, but instead in the old scheme */
52815288+ return bce_vhci_enable_device(hcd, udev);
@@ -5851,5 +5858,5 @@ index 000000000..6c2e22622
58515858+
58525859+ #endif //BCE_VHCI_H
58535860- -
5854- 2.45.2
5861+ 2.49.0
58555862
0 commit comments