summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO12
-rw-r--r--0007-kernel-6.0-set_termios-const-ktermios.patch2
-rw-r--r--0008-kernel-6.3-tty_port_operations-int-to-bool.patch35
-rw-r--r--0009-kernel-6.6-struct-tty_operations-size_t.patch21
-rw-r--r--PKGBUILD20
5 files changed, 83 insertions, 7 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 5e43b6eb80aa..cbee54df561e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = connecttech-cti-serial
pkgdesc = tty UART driver for BlueStorm BlueHeat Xtreme/104-Plus Titan and Xtreme/104-Express families
pkgver = 1.46
- pkgrel = 1
+ pkgrel = 2
url = http://connecttech.com/product/pci-express-bluestorm-express/
install = connecttech-cti-serial-install.sh
arch = i686
@@ -19,19 +19,25 @@ pkgbase = connecttech-cti-serial
source = 0005-kernel-5.15-alloc_tty_driver-put_tty_driver.patch
source = 0006-kernel-5.18-bitwise.patch
source = 0007-kernel-6.0-set_termios-const-ktermios.patch
+ source = 0008-kernel-6.3-tty_port_operations-int-to-bool.patch
+ source = 0009-kernel-6.6-struct-tty_operations-size_t.patch
md5sums = 6e56f2b93611e4b0f367aec3a430a8f0
md5sums = 97cd518024af079d1188398af69ca6cb
md5sums = b8a139a882c8aa550f33cd34d2412c45
md5sums = d6cf91270e603716a90ea4120a928f9f
md5sums = e9181275b574a74c6a180129203b3dbf
md5sums = 052753de7460ae2e3cebd9baf3ef8332
- md5sums = 7fc262419c1363af052950ea1312294d
+ md5sums = 8d7e5a3bfb79a0b72b4fa733149c99a9
+ md5sums = 553d7fb803cef90ffa8de4f6f091851c
+ md5sums = ab7e1d84e0a8ea0103fec950d4c828c1
sha256sums = 7c1d8ade5e605bc01f80e2ca0705d048b3c83e32e68422b836f32accb436925f
sha256sums = 3f1c0aec4f287803b0c571ce0258bf16163fed920170fb6eac2ec717f704e3e5
sha256sums = 4b5a12f5122252ccee5aec97c392f2b718284ed0d4b70ee8b506f64fb89eced7
sha256sums = 3b7b66ac199025183fe1b6e7ddb14524b88251ff6f7f739fbc3973dd4f5039d5
sha256sums = 34e3d2061b794ce52fdeed91c09561e03c424572185a65714e1fcff8878ddf9a
sha256sums = 1437ae1873d5ed5215619a96962214ca5131b3629309d21c03a8795225d66273
- sha256sums = bdb5f5c268b3df15d1901a009b62e765e64788e4fbbe853fa069d0712b7ac44a
+ sha256sums = c7545356f49bbabc746d924c88b11e4f634e83a1cdd45a49f82637fd17171931
+ sha256sums = efc1335e6084823ae698d567d4bd4a7a1058eed03cf5a2ec880f19b3c0512826
+ sha256sums = e4ab3bdf32e0b65f9f290289720c327de1ff3d0f3a7c7fe7b92859784dbbf8a0
pkgname = connecttech-cti-serial
diff --git a/0007-kernel-6.0-set_termios-const-ktermios.patch b/0007-kernel-6.0-set_termios-const-ktermios.patch
index a8dfbde989d2..63cd8af56b0e 100644
--- a/0007-kernel-6.0-set_termios-const-ktermios.patch
+++ b/0007-kernel-6.0-set_termios-const-ktermios.patch
@@ -7,7 +7,7 @@ diff -pNaru5 a/serial_core.c b/serial_core.c
}
static void uart_set_termios(struct tty_struct *tty,
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,0,0)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,1,0)
+const
+#endif
struct ktermios *old_termios)
diff --git a/0008-kernel-6.3-tty_port_operations-int-to-bool.patch b/0008-kernel-6.3-tty_port_operations-int-to-bool.patch
new file mode 100644
index 000000000000..e6c7b5625923
--- /dev/null
+++ b/0008-kernel-6.3-tty_port_operations-int-to-bool.patch
@@ -0,0 +1,35 @@
+diff -pNaru5 a/serial_core.c b/serial_core.c
+--- a/serial_core.c 2023-12-18 13:29:22.522209521 -0500
++++ b/serial_core.c 2023-12-18 13:29:42.488180604 -0500
+@@ -1647,11 +1647,15 @@ static void uart_port_shutdown(struct tt
+ * Ensure that the IRQ handler isn't running on another CPU.
+ */
+ synchronize_irq(uport->irq);
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(6,3,0)
+ static int uart_carrier_raised(struct tty_port *port)
++#else
++static bool uart_carrier_raised(struct tty_port *port)
++#endif
+ {
+ struct uart_state *state = container_of(port, struct uart_state, port);
+ struct uart_port *uport = state->uart_port;
+ int mctrl;
+ spin_lock_irq(&uport->lock);
+@@ -1661,11 +1665,15 @@ static int uart_carrier_raised(struct tt
+ if (mctrl & TIOCM_CAR)
+ return 1;
+ return 0;
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(6,3,0)
+ static void uart_dtr_rts(struct tty_port *port, int onoff)
++#else
++static void uart_dtr_rts(struct tty_port *port, bool onoff)
++#endif
+ {
+ struct uart_state *state = container_of(port, struct uart_state, port);
+ struct uart_port *uport = state->uart_port;
+
+ if (onoff)
diff --git a/0009-kernel-6.6-struct-tty_operations-size_t.patch b/0009-kernel-6.6-struct-tty_operations-size_t.patch
new file mode 100644
index 000000000000..7d4fa7ecf44d
--- /dev/null
+++ b/0009-kernel-6.6-struct-tty_operations-size_t.patch
@@ -0,0 +1,21 @@
+diff -pNaru5 a/serial_core.c b/serial_core.c
+--- a/serial_core.c 2023-12-18 13:31:42.354486402 -0500
++++ b/serial_core.c 2023-12-18 13:31:55.024139616 -0500
+@@ -567,12 +567,17 @@ static int uart_put_char(struct tty_stru
+ static void uart_flush_chars(struct tty_struct *tty)
+ {
+ uart_start(tty);
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(6,6,0)
+ static int uart_write(struct tty_struct *tty,
+ const unsigned char *buf, int count)
++#else
++static ssize_t uart_write(struct tty_struct *tty,
++ const unsigned char *buf, size_t count)
++#endif
+ {
+ struct uart_state *state = tty->driver_data;
+ struct uart_port *port;
+ struct circ_buf *circ;
+ unsigned long flags;
diff --git a/PKGBUILD b/PKGBUILD
index d54e5801575c..2345d158bb6d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -15,7 +15,7 @@ _opt_DKMS=1 # This can be toggled between installs
set -u
pkgname='connecttech-cti-serial'
pkgver='1.46'
-pkgrel='1'
+pkgrel='2'
pkgdesc='tty UART driver for BlueStorm BlueHeat Xtreme/104-Plus Titan and Xtreme/104-Express families'
arch=('i686' 'x86_64')
url='http://connecttech.com/product/pci-express-bluestorm-express/'
@@ -36,6 +36,8 @@ source=(
'0005-kernel-5.15-alloc_tty_driver-put_tty_driver.patch'
'0006-kernel-5.18-bitwise.patch'
'0007-kernel-6.0-set_termios-const-ktermios.patch'
+ '0008-kernel-6.3-tty_port_operations-int-to-bool.patch'
+ '0009-kernel-6.6-struct-tty_operations-size_t.patch'
)
_srcdir='.'
md5sums=('6e56f2b93611e4b0f367aec3a430a8f0'
@@ -44,14 +46,18 @@ md5sums=('6e56f2b93611e4b0f367aec3a430a8f0'
'd6cf91270e603716a90ea4120a928f9f'
'e9181275b574a74c6a180129203b3dbf'
'052753de7460ae2e3cebd9baf3ef8332'
- '7fc262419c1363af052950ea1312294d')
+ '8d7e5a3bfb79a0b72b4fa733149c99a9'
+ '553d7fb803cef90ffa8de4f6f091851c'
+ 'ab7e1d84e0a8ea0103fec950d4c828c1')
sha256sums=('7c1d8ade5e605bc01f80e2ca0705d048b3c83e32e68422b836f32accb436925f'
'3f1c0aec4f287803b0c571ce0258bf16163fed920170fb6eac2ec717f704e3e5'
'4b5a12f5122252ccee5aec97c392f2b718284ed0d4b70ee8b506f64fb89eced7'
'3b7b66ac199025183fe1b6e7ddb14524b88251ff6f7f739fbc3973dd4f5039d5'
'34e3d2061b794ce52fdeed91c09561e03c424572185a65714e1fcff8878ddf9a'
'1437ae1873d5ed5215619a96962214ca5131b3629309d21c03a8795225d66273'
- 'bdb5f5c268b3df15d1901a009b62e765e64788e4fbbe853fa069d0712b7ac44a')
+ 'c7545356f49bbabc746d924c88b11e4f634e83a1cdd45a49f82637fd17171931'
+ 'efc1335e6084823ae698d567d4bd4a7a1058eed03cf5a2ec880f19b3c0512826'
+ 'e4ab3bdf32e0b65f9f290289720c327de1ff3d0f3a7c7fe7b92859784dbbf8a0')
if [ "${_opt_DKMS}" -ne 0 ]; then
depends+=('linux' 'dkms' 'linux-headers')
@@ -137,6 +143,14 @@ prepare() {
#diff -pNaru5 'a' 'b' > '0007-kernel-6.0-set_termios-const-ktermios.patch'
patch -d 'driver' -Nup1 -i "${srcdir}/0007-kernel-6.0-set_termios-const-ktermios.patch"
+ #rm -f driver/*.orig; cp -pr 'driver' 'a'; ln -s 'driver' 'b'; false
+ #diff -pNaru5 'a' 'b' > '0008-kernel-6.3-tty_port_operations-int-to-bool.patch'
+ patch -d 'driver' -Nup1 -i "${srcdir}/0008-kernel-6.3-tty_port_operations-int-to-bool.patch"
+
+ #rm -f driver/*.orig; cp -pr 'driver' 'a'; ln -s 'driver' 'b'; false
+ #diff -pNaru5 'a' 'b' > '0009-kernel-6.6-struct-tty_operations-size_t.patch'
+ patch -d 'driver' -Nup1 -i "${srcdir}/0009-kernel-6.6-struct-tty_operations-size_t.patch"
+
pushd 'driver' > /dev/null
# Fix permissions
find -type 'f' -perm '/111' -exec chmod 644 '{}' '+'