summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Severance2021-08-10 16:44:07 -0400
committerChris Severance2021-08-10 16:44:07 -0400
commit27e7451d22ae437d565dd9609a0308b908c3616e (patch)
treeb3707c0c54bf1789bcc745ef8192e69ae703acbe
parent6ab1f836add009ee5246394e36d45021e85094a3 (diff)
downloadaur-27e7451d22ae437d565dd9609a0308b908c3616e.tar.gz
autu: Update to 8.00-2 low_latency
-rw-r--r--.SRCINFO9
-rw-r--r--0003-tty_unregister_driver-void.patch31
-rw-r--r--0004-kernel-5.12-tty-low_latency.patch69
-rw-r--r--PKGBUILD22
4 files changed, 125 insertions, 6 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 606e3357f5de..be20c6859f0c 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = nslink
pkgdesc = tty driver and firmware update for Comtrol DeviceMaster, RTS, LT, PRO, 500, UP, RPSH-SI, RPSH, and Serial port Hub console terminal device server
pkgver = 8.00
- pkgrel = 1
+ pkgrel = 2
url = http://www.comtrol.com/
install = nslink-install.sh
arch = i686
@@ -26,14 +26,19 @@ pkgbase = nslink
source = https://downloads.comtrol.com/dev_mstr/rts/utility/linux_firmware_uploader/DM-Firmware-Updater-1.06.tar.gz
source = dmupdate.py.usage.patch
source = 0002-kernel-5.6-proc_dir_entry-proc_ops.patch
+ source = 0003-tty_unregister_driver-void.patch
+ source = 0004-kernel-5.12-tty-low_latency.patch
md5sums = b59906d80268e69a24c211b398ffd10c
md5sums = e3ffb36acfdd321c919e44d477f0774a
md5sums = 581cd5f582ed20c7cf85a4df23a9f78a
md5sums = 36fcfa504772df4aabbde9f23d5459d5
+ md5sums = 7e0659716e30c6e2ff5c16f20aac07be
+ md5sums = 4e0c61dc0c5da4c3125db7ac1e481aac
sha256sums = 092859a3c198f8e3f5083a752eab0af74ef71dce59ed503d120792be13cc5fa3
sha256sums = d21c5eeefdbf08a202a230454f0bf702221686ba3e663eb41852719bb20b75fb
sha256sums = 5a4e2713a8d1fe0eebd94fc843839ce5daa647f9fa7d88f62507e660ae111073
sha256sums = cbaa55f16357688b992a7d7c0f2fb56225edda286d97595918c50e05005d1318
+ sha256sums = 7b7718789a4a23c3f16094f93b9fc0d8a5915e67e6a0aedef17cdb6adb22a1ac
+ sha256sums = a48cdf948f907b00919c3a2dadbaa2c41c28891d689195e072765c39b0b4af49
pkgname = nslink
-
diff --git a/0003-tty_unregister_driver-void.patch b/0003-tty_unregister_driver-void.patch
new file mode 100644
index 000000000000..ef77a9d46b02
--- /dev/null
+++ b/0003-tty_unregister_driver-void.patch
@@ -0,0 +1,31 @@
+--- nslink.c.orig 2020-10-29 11:49:44.000000000 -0400
++++ nslink.c 2021-08-10 16:35:56.677430829 -0400
+@@ -5671,11 +5671,11 @@ int nrp_init(void)
+ return 0;
+ }
+
+ static void nrp_cleanup_module(void)
+ {
+- int retval, i;
++ int i;
+ printk(KERN_INFO "nslink: starting driver module shutdown\n");
+
+ remove_proc_entry("driver/nslink/status",0);
+ remove_proc_entry("driver/nslink/hdlc",0);
+ remove_proc_entry("driver/nslink/ports",0);
+@@ -5697,14 +5697,12 @@ static void nrp_cleanup_module(void)
+
+ for (i = 0; i < numBoxes; i++)
+ free_si_box(i);
+
+ if (driver_registered) {
+- retval = tty_unregister_driver(nslink_driver);
++ tty_unregister_driver(nslink_driver);
+ put_tty_driver(nslink_driver);
+- if (retval)
+- printk(KERN_INFO "nslink: Error %d while trying to unregister Nslink driver\n", -retval);
+ }
+
+ printk(KERN_INFO "nslink: finished driver module shutdown\n");
+ return;
+ }
diff --git a/0004-kernel-5.12-tty-low_latency.patch b/0004-kernel-5.12-tty-low_latency.patch
new file mode 100644
index 000000000000..874accca8f62
--- /dev/null
+++ b/0004-kernel-5.12-tty-low_latency.patch
@@ -0,0 +1,69 @@
+--- nslink.c.orig 2021-08-10 16:38:55.351971026 -0400
++++ nslink.c 2021-08-10 16:40:03.424715195 -0400
+@@ -2505,14 +2505,16 @@ static void init_nr_port(struct si_state
+ info->close_delay = 500; //ms
+ info->baud_rate = 9600;
+ info->baud_base = 0;
+ // don't set low latency flag on MAC-mode ports, or it causes
+ // problems when tty_flip_buffer_push() is called
++#if LINUX_VERSION_CODE < VERSION_CODE(5,12,0)
+ if (low_latency && si->use_tcp)
+ info->port.flags |= ASYNC_LOW_LATENCY;
+ else
+ info->port.flags &= ~ASYNC_LOW_LATENCY;
++#endif
+ info->rx_fifo_disable = rx_fifo_disable;
+
+ // check for invalid RS mode setting
+
+ if (UnitHasOnly232(si->modelID) && (si->rsmode[portnum] != SI_RSMODE_232)) {
+@@ -3311,12 +3313,14 @@ static int set_serial_info(struct nr_por
+ if (new_serial.closing_wait != ASYNC_CLOSING_WAIT_NONE)
+ new_serial.closing_wait *= 10;
+
+ // don't allow low_latency mode in MAC mode since it causes problems
+ // when tty_flip_buffer_push() is called.
++#if LINUX_VERSION_CODE < VERSION_CODE(5,12,0)
+ if (!info->si->use_tcp)
+ new_serial.flags &= ~ASYNC_LOW_LATENCY;
++#endif
+
+ #ifdef CAP_SYS_ADMIN
+ if (!capable(CAP_SYS_ADMIN))
+ #else
+ if (!suser())
+@@ -3333,12 +3337,14 @@ static int set_serial_info(struct nr_por
+ }
+
+ info->baud_base = new_serial.baud_base;
+ info->custom_divisor = new_serial.custom_divisor;
+
++#if LINUX_VERSION_CODE < VERSION_CODE(5,12,0)
+ if (info->tty)
+ nrp_tty_is_low_latency(info->tty) = (info->port.flags & ASYNC_LOW_LATENCY) != 0;
++#endif
+
+ info->inter_char_timeout = new_serial.irq;
+ if (UnitHasNewTimeoutCommands(info->si))
+ info->update_ic_timeout = 1;
+
+@@ -3786,17 +3792,19 @@ static int nrp_write(struct tty_struct *
+
+ end:
+ up(&info->write_sem);
+
+ // Call the routines to send data to hub
++#if LINUX_VERSION_CODE < VERSION_CODE(5,12,0)
+ if (info->tty && nrp_tty_is_low_latency(info->tty)) {
+ info->si->need_to_send = 1;
+ if (info->si->use_tcp == 0)
+ si_timer((callback_param_type)&info->si->timer);
+ else
+ tcp_send_remote_cmds(info->si);
+ }
++#endif
+ #ifdef NSLINK_DEBUG_WRITE
+ printk(KERN_INFO "ret=%d\n", retval);
+ #endif
+
+ return retval;
diff --git a/PKGBUILD b/PKGBUILD
index 753ec463d9ff..03e534dee8b2 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -25,7 +25,7 @@ _opt_defaultmode='660' # default: 620
set -u
pkgname='nslink'
pkgver='8.00'
-pkgrel='1'
+pkgrel='2'
pkgdesc='tty driver and firmware update for Comtrol DeviceMaster, RTS, LT, PRO, 500, UP, RPSH-SI, RPSH, and Serial port Hub console terminal device server'
# UP is not explicitly supported by NS-Link, only by the firmware updater.
_pkgdescshort="Comtrol DeviceMaster ${pkgname} TTY driver"
@@ -49,15 +49,21 @@ source=(
'https://downloads.comtrol.com/dev_mstr/rts/utility/linux_firmware_uploader/DM-Firmware-Updater-1.06.tar.gz'
'dmupdate.py.usage.patch'
'0002-kernel-5.6-proc_dir_entry-proc_ops.patch'
+ '0003-tty_unregister_driver-void.patch'
+ '0004-kernel-5.12-tty-low_latency.patch'
)
md5sums=('b59906d80268e69a24c211b398ffd10c'
'e3ffb36acfdd321c919e44d477f0774a'
'581cd5f582ed20c7cf85a4df23a9f78a'
- '36fcfa504772df4aabbde9f23d5459d5')
+ '36fcfa504772df4aabbde9f23d5459d5'
+ '7e0659716e30c6e2ff5c16f20aac07be'
+ '4e0c61dc0c5da4c3125db7ac1e481aac')
sha256sums=('092859a3c198f8e3f5083a752eab0af74ef71dce59ed503d120792be13cc5fa3'
'd21c5eeefdbf08a202a230454f0bf702221686ba3e663eb41852719bb20b75fb'
'5a4e2713a8d1fe0eebd94fc843839ce5daa647f9fa7d88f62507e660ae111073'
- 'cbaa55f16357688b992a7d7c0f2fb56225edda286d97595918c50e05005d1318')
+ 'cbaa55f16357688b992a7d7c0f2fb56225edda286d97595918c50e05005d1318'
+ '7b7718789a4a23c3f16094f93b9fc0d8a5915e67e6a0aedef17cdb6adb22a1ac'
+ 'a48cdf948f907b00919c3a2dadbaa2c41c28891d689195e072765c39b0b4af49')
if [ "${_opt_DKMS}" -ne 0 ]; then
depends+=('linux' 'dkms' 'linux-headers')
@@ -83,10 +89,18 @@ prepare() {
fi
unset _ver
- #cp nslink.c{,.orig}; false
+ #cp -p nslink.c{,.orig}; false
#diff -pNau5 nslink.c{.orig,} > '0002-kernel-5.6-proc_dir_entry-proc_ops.patch'
#patch -Nbup0 -i "${srcdir}/0002-kernel-5.6-proc_dir_entry-proc_ops.patch"
+ #cp -p nslink.c{,.orig}; false
+ #diff -pNau5 nslink.c{.orig,} > '0003-tty_unregister_driver-void.patch'
+ patch -Nbup0 -i "${srcdir}/0003-tty_unregister_driver-void.patch"
+
+ #cp -p nslink.c{,.orig}; false
+ #diff -pNau5 nslink.c{.orig,} > '0004-kernel-5.12-tty-low_latency.patch'
+ patch -Nbup0 -i "${srcdir}/0004-kernel-5.12-tty-low_latency.patch"
+
# Make package compatible
#cp -p 'install.sh' 'install.sh.Arch' # testmode for diff comparison
sed -e '# Fix some paths' \