summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaulo Matias2021-12-05 15:59:28 -0300
committerPaulo Matias2021-12-05 15:59:28 -0300
commit55fe4319bc5cd8ee6436f8932b955eb6f5203e2d (patch)
treeaab1e9b562ddaa5a8e1c4f91d0c392e1e056547d
downloadaur-55fe4319bc5cd8ee6436f8932b955eb6f5203e2d.tar.gz
first commit
-rw-r--r--.SRCINFO32
-rw-r--r--.gitignore4
-rw-r--r--PKGBUILD55
-rw-r--r--dkms.conf12
-rw-r--r--kernel-5.15-compat.patch22
-rw-r--r--nodbus-exit-code.patch13
-rw-r--r--xmm7360.service14
7 files changed, 152 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..ba2da0beed76
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,32 @@
+pkgbase = xmm7360-pci-git
+ pkgdesc = Driver for the Fibocom L850-GL / Intel XMM7360 LTE modem
+ pkgver = r219.b28714b
+ pkgrel = 1
+ url = https://github.com/xmm7360/xmm7360-pci
+ arch = x86_64
+ license = BSD
+ license = GPL
+ makedepends = python
+ source = git+https://github.com/xmm7360/xmm7360-pci
+ source = dkms.conf
+ source = xmm7360.service
+ source = kernel-5.15-compat.patch
+ source = nodbus-exit-code.patch
+ sha256sums = SKIP
+ sha256sums = 2400211ef89ab0003db5ad2ffaf2bc9306c33d0d259f57f1457a4bc688a4c41f
+ sha256sums = 1c541d039c4ee26502b6efa5aea4c788359036f34299db1dc808cbfb803bfe8e
+ sha256sums = 2347cbf69ad32c33eae11546865355a2fc3b0a2ae747c70057e1ca142957edf3
+ sha256sums = b5e98c712fff07040426f632e45c594c288e6adb2ecda06b31e2387d6284fa82
+
+pkgname = xmm7360-pci-dkms-git
+ pkgdesc = Driver for the Fibocom L850-GL / Intel XMM7360 LTE modem – module sources
+ depends = dkms
+ provides = XMM7360-PCI-MODULE
+
+pkgname = xmm7360-pci-utils-git
+ pkgdesc = Driver for the Fibocom L850-GL / Intel XMM7360 LTE modem – utilities only
+ depends = XMM7360-PCI-MODULE
+ depends = dbus-python
+ depends = python-pyroute2
+ depends = python-configargparse
+ backup = etc/xmm7360
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..d66e8121cb4f
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*.pkg.tar.zst
+/src
+/pkg
+/xmm7360-pci
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..e55a6be261bc
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,55 @@
+_pkgbase=xmm7360-pci
+pkgbase=xmm7360-pci-git
+pkgname=(xmm7360-pci-dkms-git xmm7360-pci-utils-git)
+pkgver=r219.b28714b
+pkgrel=1
+pkgdesc='Driver for the Fibocom L850-GL / Intel XMM7360 LTE modem'
+arch=('x86_64')
+url="https://github.com/xmm7360/xmm7360-pci"
+license=(BSD GPL)
+makedepends=(python)
+source=("git+$url"
+ "dkms.conf"
+ "xmm7360.service"
+ "kernel-5.15-compat.patch"
+ "nodbus-exit-code.patch")
+sha256sums=('SKIP'
+ '2400211ef89ab0003db5ad2ffaf2bc9306c33d0d259f57f1457a4bc688a4c41f'
+ '1c541d039c4ee26502b6efa5aea4c788359036f34299db1dc808cbfb803bfe8e'
+ '2347cbf69ad32c33eae11546865355a2fc3b0a2ae747c70057e1ca142957edf3'
+ 'b5e98c712fff07040426f632e45c594c288e6adb2ecda06b31e2387d6284fa82')
+
+pkgver() {
+ cd ${_pkgbase}
+ printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
+}
+
+prepare() {
+ cd ${_pkgbase}
+ patch -p1 -i'' "${srcdir}"/kernel-5.15-compat.patch
+ patch -p1 -i'' "${srcdir}"/nodbus-exit-code.patch
+}
+
+build() {
+ cd ${_pkgbase}
+ python -m compileall -o1 rpc
+}
+
+package_xmm7360-pci-dkms-git() {
+ pkgdesc+=" – module sources"
+ depends=(dkms)
+ provides=(XMM7360-PCI-MODULE)
+ cd ${_pkgbase}
+ install -Dm644 "${srcdir}"/dkms.conf xmm7360.c Makefile -t "${pkgdir}"/usr/src/${pkgbase}-${pkgver}/
+}
+
+package_xmm7360-pci-utils-git() {
+ pkgdesc+=" – utilities only"
+ depends=(XMM7360-PCI-MODULE dbus-python python-pyroute2 python-configargparse)
+ backup=(etc/xmm7360)
+ cd ${_pkgbase}
+ install -d "${pkgdir}"/usr/lib/${pkgbase}
+ cp --preserve=mode -R rpc "${pkgdir}"/usr/lib/${pkgbase}
+ install -Dm644 "$srcdir"/xmm7360.service -t "${pkgdir}"/usr/lib/systemd/system
+ install -Dm644 xmm7360.ini.sample "${pkgdir}"/etc/xmm7360
+}
diff --git a/dkms.conf b/dkms.conf
new file mode 100644
index 000000000000..55c12dc220dd
--- /dev/null
+++ b/dkms.conf
@@ -0,0 +1,12 @@
+PACKAGE_NAME="xmm7360"
+PACKAGE_VERSION="0"
+
+# Items below here should not have to change with each driver version
+MAKE[0]="make KERNEL_DIR=${kernel_source_dir} default"
+CLEAN="make clean"
+
+BUILT_MODULE_NAME[0]="$PACKAGE_NAME"
+DEST_MODULE_LOCATION[0]="/extra"
+
+REMAKE_INITRD="no"
+AUTOINSTALL="yes"
diff --git a/kernel-5.15-compat.patch b/kernel-5.15-compat.patch
new file mode 100644
index 000000000000..a6946df42647
--- /dev/null
+++ b/kernel-5.15-compat.patch
@@ -0,0 +1,22 @@
+diff --git a/xmm7360.c b/xmm7360.c
+index ccd149d..5a4dc74 100644
+--- a/xmm7360.c
++++ b/xmm7360.c
+@@ -1272,7 +1272,7 @@ static int xmm7360_tty_write(struct tty_struct *tty,
+ return written;
+ }
+
+-static int xmm7360_tty_write_room(struct tty_struct *tty)
++static unsigned int xmm7360_tty_write_room(struct tty_struct *tty)
+ {
+ struct queue_pair *qp = tty->driver_data;
+ if (!xmm7360_qp_can_write(qp))
+@@ -1555,7 +1555,7 @@ static void xmm7360_exit(void)
+ pci_unregister_driver(&xmm7360_driver);
+ unregister_chrdev_region(xmm_base, 8);
+ tty_unregister_driver(xmm7360_tty_driver);
+- put_tty_driver(xmm7360_tty_driver);
++ tty_driver_kref_put(xmm7360_tty_driver);
+ }
+
+ module_init(xmm7360_init);
diff --git a/nodbus-exit-code.patch b/nodbus-exit-code.patch
new file mode 100644
index 000000000000..b082dce97136
--- /dev/null
+++ b/nodbus-exit-code.patch
@@ -0,0 +1,13 @@
+diff --git a/rpc/open_xdatachannel.py b/rpc/open_xdatachannel.py
+index 553f76f..d4186e1 100755
+--- a/rpc/open_xdatachannel.py
++++ b/rpc/open_xdatachannel.py
+@@ -122,7 +122,7 @@ csr_req = pscr['body'][:-6] + dcr['body'] + b'\x02\x04\0\0\0\0'
+ r.execute('UtaRPCPSConnectSetupReq', csr_req)
+
+ if not cfg.dbus:
+- sys.exit(1)
++ sys.exit(0)
+
+ myconnection = None
+ system_bus = dbus.SystemBus()
diff --git a/xmm7360.service b/xmm7360.service
new file mode 100644
index 000000000000..dd25fa1e630a
--- /dev/null
+++ b/xmm7360.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=XMM7360 Modem Init
+After=NetworkManager.service
+Requires=multi-user.target systemd-user-sessions.service dev-ttyXMM1.device
+
+[Service]
+Type=oneshot
+ExecStart=/usr/lib/xmm7360-pci-git/rpc/open_xdatachannel.py -c /etc/xmm7360
+RemainAfterExit=yes
+TimeoutSec=60
+
+
+[Install]
+WantedBy=graphical.target