summaryrefslogtreecommitdiffstats
path: root/debian/patches-rt/0104-printk-nbcon-Add-driver_enter-driver_exit-console-ca.patch
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--debian/patches-rt/0104-printk-nbcon-Add-driver_enter-driver_exit-console-ca.patch42
1 files changed, 42 insertions, 0 deletions
diff --git a/debian/patches-rt/0104-printk-nbcon-Add-driver_enter-driver_exit-console-ca.patch b/debian/patches-rt/0104-printk-nbcon-Add-driver_enter-driver_exit-console-ca.patch
new file mode 100644
index 000000000..d314cb53d
--- /dev/null
+++ b/debian/patches-rt/0104-printk-nbcon-Add-driver_enter-driver_exit-console-ca.patch
@@ -0,0 +1,42 @@
+From: John Ogness <john.ogness@linutronix.de>
+Date: Fri, 8 Dec 2023 15:54:27 +0000
+Subject: [PATCH 104/134] printk: nbcon: Add driver_enter/driver_exit console
+ callbacks
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/6.6/older/patches-6.6.7-rt18.tar.xz
+
+Console drivers need some mechanism to synchronize between "normal
+driver activity" and console printing. For uart serial drivers it
+is the port lock. Other types of console drivers (network,
+graphics, USB) will need something as well.
+
+Provide 2 new mandatory nbcon console callbacks (driver_enter and
+driver_exit) to allow the consoles drivers to implement the
+appropriate synchronization. The callbacks are also expected to
+disable/enable migration.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/console.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+--- a/include/linux/console.h
++++ b/include/linux/console.h
+@@ -296,6 +296,8 @@ struct nbcon_write_context {
+ * @node: hlist node for the console list
+ *
+ * @write_atomic: Write callback for atomic context
++ * @driver_enter: Callback to begin synchronization with driver code
++ * @driver_exit: Callback to finish synchronization with driver code
+ * @nbcon_state: State for nbcon consoles
+ * @nbcon_seq: Sequence number of the next record for nbcon to print
+ * @pbufs: Pointer to nbcon private buffer
+@@ -323,6 +325,8 @@ struct console {
+ /* nbcon console specific members */
+ bool (*write_atomic)(struct console *con,
+ struct nbcon_write_context *wctxt);
++ void (*driver_enter)(struct console *con, unsigned long *flags);
++ void (*driver_exit)(struct console *con, unsigned long flags);
+ atomic_t __private nbcon_state;
+ atomic_long_t __private nbcon_seq;
+ struct printk_buffers *pbufs;