[packages/dahdi-linux] - up to 3.0.0, doesn't build with kernel 5.0
baggins
baggins at pld-linux.org
Sat Mar 9 22:42:19 CET 2019
commit 446f56766abc49dc0ded2240f61c14edce99092b
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Sat Mar 9 22:41:50 2019 +0100
- up to 3.0.0, doesn't build with kernel 5.0
...move-command_timer-functions-to-xbus-core.patch | 97 -------
...building-with-4.15-init_timer-setup_timer.patch | 296 --------------------
dahdi-linux.spec | 14 +-
kernel-4.11.patch | 141 ----------
kernel-4.13.patch | 299 ---------------------
5 files changed, 3 insertions(+), 844 deletions(-)
---
diff --git a/dahdi-linux.spec b/dahdi-linux.spec
index d1ca2cb..a144258 100644
--- a/dahdi-linux.spec
+++ b/dahdi-linux.spec
@@ -35,18 +35,18 @@ exit 1
%define _enable_debug_packages 0
%endif
-%define rel 3
+%define rel 0.1
%define pname dahdi-linux
%define FIRMWARE_URL http://downloads.digium.com/pub/telephony/firmware/releases
Summary: DAHDI telephony device support
Summary(pl.UTF-8): Obsługa urządzeń telefonicznych DAHDI
Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
-Version: 2.11.1
+Version: 3.0.0
Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
License: GPL v2
Group: Base/Kernel
Source0: http://downloads.asterisk.org/pub/telephony/dahdi-linux/releases/dahdi-linux-%{version}.tar.gz
-# Source0-md5: af96917e15eebc36519948133ec7e36b
+# Source0-md5: 496baef9d2a3bec5a3380ade8efdc5e7
Source3: %{FIRMWARE_URL}/dahdi-fw-oct6114-064-1.05.01.tar.gz
# Source3-md5: 88db9b7a07d8392736171b1b3e6bcc66
Source4: %{FIRMWARE_URL}/dahdi-fw-oct6114-128-1.05.01.tar.gz
@@ -57,10 +57,6 @@ Source6: %{FIRMWARE_URL}/dahdi-fw-tc400m-MR6.12.tar.gz
# Source6-md5: 2ea860bb8a9d8ede2858b9557b74ee3c
Source7: %{FIRMWARE_URL}/dahdi-fw-hx8-2.06.tar.gz
# Source7-md5: a7f3886942bb3e9fed349a41b3390c9f
-Patch0: kernel-4.11.patch
-Patch1: kernel-4.13.patch
-Patch2: 0001-xpp-move-command_timer-functions-to-xbus-core.patch
-Patch3: 0002-fix-building-with-4.15-init_timer-setup_timer.patch
URL: http://www.asterisk.org/
%{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
BuildRequires: perl-base
@@ -160,10 +156,6 @@ cd ../..\
%prep
%setup -q -n %{pname}-%{version}
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
for a in %{SOURCE3} %{SOURCE4} %{SOURCE5} %{SOURCE6} %{SOURCE7}; do
ln -s $a drivers/dahdi/firmware
diff --git a/0001-xpp-move-command_timer-functions-to-xbus-core.patch b/0001-xpp-move-command_timer-functions-to-xbus-core.patch
deleted file mode 100644
index b3070b3..0000000
--- a/0001-xpp-move-command_timer-functions-to-xbus-core.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From 529b104aacaa6164d39e955003718bf15edcf08e Mon Sep 17 00:00:00 2001
-From: Tzafrir Cohen <tzafrir.cohen at xorcom.com>
-Date: Mon, 1 Jan 2018 16:06:25 +0200
-Subject: [PATCH 1/2] xpp: move command_timer functions to xbus-core
-
-Would allow to later fully initializing the command_timer in xbus-core.c
-rather than xbus-pcm.c .
----
- drivers/dahdi/xpp/xbus-core.c | 30 ++++++++++++++++++++++++++++++
- drivers/dahdi/xpp/xbus-pcm.c | 30 ------------------------------
- 2 files changed, 30 insertions(+), 30 deletions(-)
-
-diff --git a/drivers/dahdi/xpp/xbus-core.c b/drivers/dahdi/xpp/xbus-core.c
-index 4281f1c..ca129cd 100644
---- a/drivers/dahdi/xpp/xbus-core.c
-+++ b/drivers/dahdi/xpp/xbus-core.c
-@@ -1350,6 +1350,36 @@ err:
- return 0;
- }
-
-+static void xbus_command_timer(unsigned long param)
-+{
-+ xbus_t *xbus = (xbus_t *)param;
-+ struct timeval now;
-+
-+ BUG_ON(!xbus);
-+ do_gettimeofday(&now);
-+ xbus_command_queue_tick(xbus);
-+ if (!xbus->self_ticking) /* Must be 1KHz rate */
-+ mod_timer(&xbus->command_timer, jiffies + 1);
-+}
-+
-+void xbus_set_command_timer(xbus_t *xbus, bool on)
-+{
-+ XBUS_DBG(SYNC, xbus, "%s\n", (on) ? "ON" : "OFF");
-+ if (on) {
-+ if (!timer_pending(&xbus->command_timer)) {
-+ XBUS_DBG(SYNC, xbus, "add_timer\n");
-+ xbus->command_timer.function = xbus_command_timer;
-+ xbus->command_timer.data = (unsigned long)xbus;
-+ xbus->command_timer.expires = jiffies + 1;
-+ add_timer(&xbus->command_timer);
-+ }
-+ } else if (timer_pending(&xbus->command_timer)) {
-+ XBUS_DBG(SYNC, xbus, "del_timer\n");
-+ del_timer(&xbus->command_timer);
-+ }
-+ xbus->self_ticking = !on;
-+}
-+
- bool xbus_setflags(xbus_t *xbus, int flagbit, bool on)
- {
- unsigned long flags;
-diff --git a/drivers/dahdi/xpp/xbus-pcm.c b/drivers/dahdi/xpp/xbus-pcm.c
-index 32f04fa..3f46780 100644
---- a/drivers/dahdi/xpp/xbus-pcm.c
-+++ b/drivers/dahdi/xpp/xbus-pcm.c
-@@ -353,36 +353,6 @@ static void xpp_set_syncer(xbus_t *xbus, bool on)
- (syncer) ? syncer->busname : "NO-SYNC");
- }
-
--static void xbus_command_timer(unsigned long param)
--{
-- xbus_t *xbus = (xbus_t *)param;
-- struct timeval now;
--
-- BUG_ON(!xbus);
-- do_gettimeofday(&now);
-- xbus_command_queue_tick(xbus);
-- if (!xbus->self_ticking) /* Must be 1KHz rate */
-- mod_timer(&xbus->command_timer, jiffies + 1);
--}
--
--void xbus_set_command_timer(xbus_t *xbus, bool on)
--{
-- XBUS_DBG(SYNC, xbus, "%s\n", (on) ? "ON" : "OFF");
-- if (on) {
-- if (!timer_pending(&xbus->command_timer)) {
-- XBUS_DBG(SYNC, xbus, "add_timer\n");
-- xbus->command_timer.function = xbus_command_timer;
-- xbus->command_timer.data = (unsigned long)xbus;
-- xbus->command_timer.expires = jiffies + 1;
-- add_timer(&xbus->command_timer);
-- }
-- } else if (timer_pending(&xbus->command_timer)) {
-- XBUS_DBG(SYNC, xbus, "del_timer\n");
-- del_timer(&xbus->command_timer);
-- }
-- xbus->self_ticking = !on;
--}
--
- /*
- * Called when the Astribank replies to a sync change request
- */
---
-2.11.0
-
diff --git a/0002-fix-building-with-4.15-init_timer-setup_timer.patch b/0002-fix-building-with-4.15-init_timer-setup_timer.patch
deleted file mode 100644
index a624e0d..0000000
--- a/0002-fix-building-with-4.15-init_timer-setup_timer.patch
+++ /dev/null
@@ -1,296 +0,0 @@
-From 19af3ae5af6857402e0e8a3e3b35c81320917454 Mon Sep 17 00:00:00 2001
-From: Tzafrir Cohen <tzafrir.cohen at xorcom.com>
-Date: Mon, 1 Jan 2018 09:50:01 +0200
-Subject: [PATCH 2/2] fix building with 4.15: init_timer / setup_timer
-
-Kernel 4.15 revised the interface for callbacks to timers. For that the
-initialization of timers has changed.
-
-Changes are conditioned on the preprocesson define init_timer that was
-removed.
-
-DAHLIN-359 #close
-
-Signed-off-by: Tzafrir Cohen <tzafrir.cohen at xorcom.com>
----
- drivers/dahdi/dahdi-base.c | 11 ++++++++---
- drivers/dahdi/dahdi_dynamic.c | 13 ++++++++-----
- drivers/dahdi/dahdi_dynamic_ethmf.c | 11 ++++++++---
- drivers/dahdi/wctc4xxp/base.c | 8 +++++++-
- drivers/dahdi/wcte12xp/base.c | 9 ++++++++-
- drivers/dahdi/wcte13xp-base.c | 8 +++++++-
- drivers/dahdi/wcte43x-base.c | 8 +++++++-
- drivers/dahdi/xpp/xbus-core.c | 10 +++++++---
- include/dahdi/kernel.h | 10 ++++++++++
- 9 files changed, 70 insertions(+), 18 deletions(-)
-
-diff --git a/drivers/dahdi/dahdi-base.c b/drivers/dahdi/dahdi-base.c
-index 618754d..c473474 100644
---- a/drivers/dahdi/dahdi-base.c
-+++ b/drivers/dahdi/dahdi-base.c
-@@ -10069,7 +10069,13 @@ static inline unsigned long msecs_processed(const struct core_timer *const ct)
- return atomic_read(&ct->count) * DAHDI_MSECS_PER_CHUNK;
- }
-
--static void coretimer_func(unsigned long param)
-+static void coretimer_func(
-+#ifdef init_timer /* Compatibility for pre 4.15 interface */
-+ unsigned long param
-+#else
-+ struct timer_list *t
-+#endif
-+)
- {
- unsigned long flags;
- unsigned long ms_since_start;
-@@ -10150,8 +10156,7 @@ static void coretimer_func(unsigned long param)
-
- static void coretimer_init(void)
- {
-- init_timer(&core_timer.timer);
-- core_timer.timer.function = coretimer_func;
-+ timer_setup(&core_timer.timer, coretimer_func, 0);
- ktime_get_ts(&core_timer.start_interval);
- atomic_set(&core_timer.count, 0);
- atomic_set(&core_timer.shutdown, 0);
-diff --git a/drivers/dahdi/dahdi_dynamic.c b/drivers/dahdi/dahdi_dynamic.c
-index 0a37e2a..6727bd4 100644
---- a/drivers/dahdi/dahdi_dynamic.c
-+++ b/drivers/dahdi/dahdi_dynamic.c
-@@ -831,7 +831,13 @@ EXPORT_SYMBOL(dahdi_dynamic_unregister_driver);
-
- static struct timer_list alarmcheck;
-
--static void check_for_red_alarm(unsigned long ignored)
-+static void check_for_red_alarm(
-+#ifdef init_timer /* Compatibility for pre 4.15 interface */
-+ unsigned long ignored
-+#else
-+ struct timer_list *ignored
-+#endif
-+)
- {
- int newalarm;
- int alarmchanged = 0;
-@@ -867,10 +873,7 @@ static const struct dahdi_dynamic_ops dahdi_dynamic_ops = {
- static int dahdi_dynamic_init(void)
- {
- /* Start process to check for RED ALARM */
-- init_timer(&alarmcheck);
-- alarmcheck.expires = 0;
-- alarmcheck.data = 0;
-- alarmcheck.function = check_for_red_alarm;
-+ timer_setup(&alarmcheck, check_for_red_alarm, 0);
- /* Check once per second */
- mod_timer(&alarmcheck, jiffies + 1 * HZ);
- #ifdef ENABLE_TASKLETS
-diff --git a/drivers/dahdi/dahdi_dynamic_ethmf.c b/drivers/dahdi/dahdi_dynamic_ethmf.c
-index dec368b..4d7d2f1 100644
---- a/drivers/dahdi/dahdi_dynamic_ethmf.c
-+++ b/drivers/dahdi/dahdi_dynamic_ethmf.c
-@@ -681,7 +681,13 @@ static int ethmf_delay_dec(void)
- * Timer callback function to allow all spans to be added, prior to any of
- * them being used.
- */
--static void timer_callback(unsigned long param)
-+static void timer_callback(
-+#ifdef init_timer /* Compatibility for pre 4.15 interface */
-+ unsigned long ignored
-+#else
-+ struct timer_list *ignored
-+#endif
-+)
- {
- if (ethmf_delay_dec()) {
- if (!atomic_read(&timer_deleted)) {
-@@ -764,9 +770,8 @@ static const struct file_operations ztdethmf_proc_fops = {
-
- static int __init ztdethmf_init(void)
- {
-- init_timer(&timer);
-+ timer_setup(&timer, &timer_callback, 0);
- timer.expires = jiffies + HZ;
-- timer.function = &timer_callback;
- if (!timer_pending(&timer))
- add_timer(&timer);
-
-diff --git a/drivers/dahdi/wctc4xxp/base.c b/drivers/dahdi/wctc4xxp/base.c
-index 0d76d6a..8e0b76b 100644
---- a/drivers/dahdi/wctc4xxp/base.c
-+++ b/drivers/dahdi/wctc4xxp/base.c
-@@ -3701,9 +3701,15 @@ wctc4xxp_send_commands(struct wcdte *wc, struct list_head *to_send)
- }
-
- static void
-+#ifndef init_timer
-+wctc4xxp_watchdog(struct timer_list *t)
-+{
-+ struct wcdte *wc = from_timer(wc, t, watchdog);
-+#else /* Compatibility for pre 4.15 interface */
- wctc4xxp_watchdog(unsigned long data)
- {
- struct wcdte *wc = (struct wcdte *)data;
-+#endif
- struct tcb *cmd, *temp;
- LIST_HEAD(cmds_to_retry);
- const int MAX_RETRIES = 5;
-@@ -4095,7 +4101,7 @@ wctc4xxp_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
- wc->watchdog.data = (unsigned long)wc;
- init_timer(&wc->watchdog);
- # else
-- setup_timer(&wc->watchdog, wctc4xxp_watchdog, (unsigned long)wc);
-+ timer_setup(&wc->watchdog, wctc4xxp_watchdog, 0);
- # endif
-
- /* ------------------------------------------------------------------
-diff --git a/drivers/dahdi/wcte12xp/base.c b/drivers/dahdi/wcte12xp/base.c
-index c327c5f..77e2d2f 100644
---- a/drivers/dahdi/wcte12xp/base.c
-+++ b/drivers/dahdi/wcte12xp/base.c
-@@ -2765,10 +2765,17 @@ static void vpm_check_func(struct work_struct *work)
- return;
- }
-
-+#ifndef init_timer
-+static void te12xp_timer(struct timer_list *t)
-+{
-+ unsigned long flags;
-+ struct t1 *wc = from_timer(wc, t, timer);
-+#else /* Compatibility for pre 4.15 interface */
- static void te12xp_timer(unsigned long data)
- {
- unsigned long flags;
- struct t1 *wc = (struct t1 *)data;
-+#endif
-
- if (unlikely(!test_bit(INITIALIZED, &wc->bit_flags)))
- return;
-@@ -2943,7 +2950,7 @@ static int __devinit te12xp_init_one(struct pci_dev *pdev, const struct pci_devi
- spin_lock_init(&wc->reglock);
- INIT_LIST_HEAD(&wc->active_cmds);
- INIT_LIST_HEAD(&wc->pending_cmds);
-- setup_timer(&wc->timer, te12xp_timer, (unsigned long)wc);
-+ timer_setup(&wc->timer, te12xp_timer, 0);
-
- # if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20)
- INIT_WORK(&wc->timer_work, timer_work_func, wc);
-diff --git a/drivers/dahdi/wcte13xp-base.c b/drivers/dahdi/wcte13xp-base.c
-index c5ebe9d..57e6dac 100644
---- a/drivers/dahdi/wcte13xp-base.c
-+++ b/drivers/dahdi/wcte13xp-base.c
-@@ -2381,9 +2381,15 @@ static void te13x_handle_interrupt(struct wcxb *xb, u32 pending)
- }
- }
-
-+#ifndef init_timer
-+static void te13xp_timer(struct timer_list *t)
-+{
-+ struct t13x *wc = from_timer(wc, t, timer);
-+#else /* Compatibility for pre 4.15 interface */
- static void te13xp_timer(unsigned long data)
- {
- struct t13x *wc = (struct t13x *)data;
-+#endif
-
- if (unlikely(!test_bit(INITIALIZED, &wc->bit_flags)))
- return;
-@@ -2582,7 +2588,7 @@ static int __devinit te13xp_init_one(struct pci_dev *pdev,
- wc->ledstate = -1;
- spin_lock_init(&wc->reglock);
- mutex_init(&wc->lock);
-- setup_timer(&wc->timer, te13xp_timer, (unsigned long)wc);
-+ timer_setup(&wc->timer, te13xp_timer, 0);
-
- # if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20)
- INIT_WORK(&wc->timer_work, timer_work_func, wc);
-diff --git a/drivers/dahdi/wcte43x-base.c b/drivers/dahdi/wcte43x-base.c
-index 3e6159b..af39165 100644
---- a/drivers/dahdi/wcte43x-base.c
-+++ b/drivers/dahdi/wcte43x-base.c
-@@ -3203,9 +3203,15 @@ static void t43x_handle_interrupt(struct wcxb *xb, u32 pending)
- wc->intr_span = 0;
- }
-
-+#ifndef init_timer
-+static void t43x_timer(struct timer_list *t)
-+{
-+ struct t43x *wc = from_timer(wc, t, timer);
-+#else /* Compatibility for pre 4.15 interface */
- static void t43x_timer(unsigned long data)
- {
- struct t43x *wc = (struct t43x *)data;
-+#endif
-
- if (!is_initialized(wc))
- return;
-@@ -3431,7 +3437,7 @@ static int __devinit t43x_init_one(struct pci_dev *pdev,
- goto fail_exit;
-
- mutex_init(&wc->lock);
-- setup_timer(&wc->timer, t43x_timer, (unsigned long)wc);
-+ timer_setup(&wc->timer, t43x_timer, 0);
-
- #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20)
- INIT_WORK(&wc->timer_work, timer_work_func, wc);
-diff --git a/drivers/dahdi/xpp/xbus-core.c b/drivers/dahdi/xpp/xbus-core.c
-index ca129cd..5bd8853 100644
---- a/drivers/dahdi/xpp/xbus-core.c
-+++ b/drivers/dahdi/xpp/xbus-core.c
-@@ -1350,9 +1350,15 @@ err:
- return 0;
- }
-
-+#ifndef init_timer
-+static void xbus_command_timer(struct timer_list *t)
-+{
-+ xbus_t *xbus = from_timer(xbus, t, command_timer);
-+#else
- static void xbus_command_timer(unsigned long param)
- {
- xbus_t *xbus = (xbus_t *)param;
-+#endif
- struct timeval now;
-
- BUG_ON(!xbus);
-@@ -1368,8 +1374,6 @@ void xbus_set_command_timer(xbus_t *xbus, bool on)
- if (on) {
- if (!timer_pending(&xbus->command_timer)) {
- XBUS_DBG(SYNC, xbus, "add_timer\n");
-- xbus->command_timer.function = xbus_command_timer;
-- xbus->command_timer.data = (unsigned long)xbus;
- xbus->command_timer.expires = jiffies + 1;
- add_timer(&xbus->command_timer);
- }
-@@ -1642,7 +1646,7 @@ xbus_t *xbus_new(struct xbus_ops *ops, ushort max_send_size,
- transport_init(xbus, ops, max_send_size, transport_device, priv);
- spin_lock_init(&xbus->lock);
- init_waitqueue_head(&xbus->command_queue_empty);
-- init_timer(&xbus->command_timer);
-+ timer_setup(&xbus->command_timer, xbus_command_timer, 0);
- atomic_set(&xbus->pcm_rx_counter, 0);
- xbus->min_tx_sync = INT_MAX;
- xbus->min_rx_sync = INT_MAX;
-diff --git a/include/dahdi/kernel.h b/include/dahdi/kernel.h
-index c946fa3..bc07ef6 100644
---- a/include/dahdi/kernel.h
-+++ b/include/dahdi/kernel.h
-@@ -1630,6 +1630,16 @@ struct mutex {
- printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__)
- #endif
-
-+
-+#ifdef init_timer /* Compatibility for pre 4.15 interface */
-+#define timer_setup(timer, func, flags) \
-+ do { \
-+ init_timer(timer); \
-+ (timer)->function = (func); \
-+ } while (0)
-+#endif
-+
-+
- /* If KBUILD_MODNAME is not defined in a compilation unit, then the dev_dbg
- * macro will not work properly. */
- #ifndef KBUILD_MODNAME
---
-2.11.0
-
diff --git a/kernel-4.11.patch b/kernel-4.11.patch
deleted file mode 100644
index 2a8cb60..0000000
--- a/kernel-4.11.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-diff -ur dahdi-linux-2.11.1/drivers/dahdi/dahdi-base.c dahdi-linux-2.11.1-4.11/drivers/dahdi/dahdi-base.c
---- dahdi-linux-2.11.1/drivers/dahdi/dahdi-base.c 2016-03-01 23:03:59.000000000 +0100
-+++ dahdi-linux-2.11.1-4.11/drivers/dahdi/dahdi-base.c 2017-05-09 20:34:45.170079849 +0200
-@@ -47,6 +47,9 @@
- #include <linux/kmod.h>
- #include <linux/moduleparam.h>
- #include <linux/sched.h>
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0)
-+#include <linux/sched/signal.h>
-+#endif
- #include <linux/list.h>
- #include <linux/delay.h>
- #include <linux/mutex.h>
-diff -ur dahdi-linux-2.11.1/drivers/dahdi/dahdi_dynamic.c dahdi-linux-2.11.1-4.11/drivers/dahdi/dahdi_dynamic.c
---- dahdi-linux-2.11.1/drivers/dahdi/dahdi_dynamic.c 2016-03-01 23:03:59.000000000 +0100
-+++ dahdi-linux-2.11.1-4.11/drivers/dahdi/dahdi_dynamic.c 2017-05-09 20:38:03.809649973 +0200
-@@ -467,7 +467,11 @@
-
- /* We shouldn't have more than the two references at this point. If
- * we do, there are probably channels that are still opened. */
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,0)
- if (atomic_read(&d->kref.refcount) > 2) {
-+#else
-+ if (kref_read(&d->kref) > 2) {
-+#endif
- dynamic_put(d);
- return -EBUSY;
- }
-diff -ur dahdi-linux-2.11.1/drivers/dahdi/wcaxx-base.c dahdi-linux-2.11.1-4.11/drivers/dahdi/wcaxx-base.c
---- dahdi-linux-2.11.1/drivers/dahdi/wcaxx-base.c 2016-03-01 23:03:59.000000000 +0100
-+++ dahdi-linux-2.11.1-4.11/drivers/dahdi/wcaxx-base.c 2017-05-09 20:39:05.690553708 +0200
-@@ -28,6 +28,9 @@
- #include <linux/init.h>
- #include <linux/pci.h>
- #include <linux/sched.h>
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0)
-+#include <linux/sched/signal.h>
-+#endif
- #include <linux/workqueue.h>
- #include <linux/delay.h>
- #include <linux/moduleparam.h>
-diff -ur dahdi-linux-2.11.1/drivers/dahdi/wctc4xxp/base.c dahdi-linux-2.11.1-4.11/drivers/dahdi/wctc4xxp/base.c
---- dahdi-linux-2.11.1/drivers/dahdi/wctc4xxp/base.c 2016-03-01 23:03:59.000000000 +0100
-+++ dahdi-linux-2.11.1-4.11/drivers/dahdi/wctc4xxp/base.c 2017-05-09 20:40:14.041864392 +0200
-@@ -26,6 +26,10 @@
- #include <linux/slab.h>
- #include <linux/kmod.h>
- #include <linux/sched.h>
-+#include <linux/version.h>
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0)
-+#include <linux/sched/signal.h>
-+#endif
- #include <linux/pci.h>
- #include <linux/interrupt.h>
- #include <linux/delay.h>
-diff -ur dahdi-linux-2.11.1/drivers/dahdi/wctdm24xxp/base.c dahdi-linux-2.11.1-4.11/drivers/dahdi/wctdm24xxp/base.c
---- dahdi-linux-2.11.1/drivers/dahdi/wctdm24xxp/base.c 2016-03-01 23:03:59.000000000 +0100
-+++ dahdi-linux-2.11.1-4.11/drivers/dahdi/wctdm24xxp/base.c 2017-05-09 20:39:47.343067209 +0200
-@@ -44,6 +44,9 @@
- #include <linux/init.h>
- #include <linux/pci.h>
- #include <linux/sched.h>
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0)
-+#include <linux/sched/signal.h>
-+#endif
- #include <linux/interrupt.h>
- #include <linux/workqueue.h>
- #include <linux/delay.h>
-diff -ur dahdi-linux-2.11.1/drivers/dahdi/wcte12xp/base.c dahdi-linux-2.11.1-4.11/drivers/dahdi/wcte12xp/base.c
---- dahdi-linux-2.11.1/drivers/dahdi/wcte12xp/base.c 2016-03-01 23:03:59.000000000 +0100
-+++ dahdi-linux-2.11.1-4.11/drivers/dahdi/wcte12xp/base.c 2017-05-09 20:40:31.216160114 +0200
-@@ -40,6 +40,10 @@
- #include <linux/workqueue.h>
- #include <linux/delay.h>
- #include <linux/sched.h>
-+#include <linux/version.h>
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0)
-+#include <linux/sched/signal.h>
-+#endif
- #include <linux/slab.h>
-
- #include <stdbool.h>
-diff -ur dahdi-linux-2.11.1/drivers/dahdi/wcte43x-base.c dahdi-linux-2.11.1-4.11/drivers/dahdi/wcte43x-base.c
---- dahdi-linux-2.11.1/drivers/dahdi/wcte43x-base.c 2016-03-01 23:03:59.000000000 +0100
-+++ dahdi-linux-2.11.1-4.11/drivers/dahdi/wcte43x-base.c 2017-05-09 20:38:38.996830549 +0200
-@@ -33,6 +33,10 @@
- #include <linux/workqueue.h>
- #include <linux/delay.h>
- #include <linux/sched.h>
-+#include <linux/version.h>
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,11,0)
-+#include <linux/sched/signal.h>
-+#endif
- #include <linux/crc32.h>
- #include <linux/slab.h>
-
-diff -ur dahdi-linux-2.11.1/drivers/dahdi/xpp/xbus-core.c dahdi-linux-2.11.1-4.11/drivers/dahdi/xpp/xbus-core.c
---- dahdi-linux-2.11.1/drivers/dahdi/xpp/xbus-core.c 2016-03-01 23:03:59.000000000 +0100
-+++ dahdi-linux-2.11.1-4.11/drivers/dahdi/xpp/xbus-core.c 2017-05-09 20:41:27.973007253 +0200
-@@ -244,7 +244,11 @@
- {
- struct kref *kref = &xbus->kref;
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,0)
- return atomic_read(&kref->refcount);
-+#else
-+ return kref_read(kref);
-+#endif
- }
-
- /*------------------------- Frame Handling ------------------------*/
-diff -ur dahdi-linux-2.11.1/drivers/dahdi/xpp/xbus-sysfs.c dahdi-linux-2.11.1-4.11/drivers/dahdi/xpp/xbus-sysfs.c
---- dahdi-linux-2.11.1/drivers/dahdi/xpp/xbus-sysfs.c 2016-03-01 23:03:59.000000000 +0100
-+++ dahdi-linux-2.11.1-4.11/drivers/dahdi/xpp/xbus-sysfs.c 2017-05-09 20:42:09.972886067 +0200
-@@ -974,7 +974,11 @@
- return;
- }
- XBUS_DBG(DEVICES, xbus, "going to unregister: refcount=%d\n",
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,0)
- atomic_read(&astribank->kobj.kref.refcount));
-+#else
-+ kref_read(&astribank->kobj.kref));
-+#endif
- BUG_ON(dev_get_drvdata(astribank) != xbus);
- device_unregister(astribank);
- dev_set_drvdata(astribank, NULL);
-diff -ur dahdi-linux-2.11.1/drivers/dahdi/xpp/xpp_dahdi.c dahdi-linux-2.11.1-4.11/drivers/dahdi/xpp/xpp_dahdi.c
---- dahdi-linux-2.11.1/drivers/dahdi/xpp/xpp_dahdi.c 2016-03-01 23:03:59.000000000 +0100
-+++ dahdi-linux-2.11.1-4.11/drivers/dahdi/xpp/xpp_dahdi.c 2017-05-09 20:42:55.336485638 +0200
-@@ -124,7 +124,11 @@
- {
- struct kref *kref = &xpd->kref;
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,11,0)
- return atomic_read(&kref->refcount);
-+#else
-+ return kref_read(kref);
-+#endif
- }
-
- xpd_t *get_xpd(const char *msg, xpd_t *xpd)
diff --git a/kernel-4.13.patch b/kernel-4.13.patch
deleted file mode 100644
index 824e880..0000000
--- a/kernel-4.13.patch
+++ /dev/null
@@ -1,299 +0,0 @@
-Index: dahdi-linux-2.11.1~dfsg/drivers/dahdi/dahdi-sysfs.c
-===================================================================
---- dahdi-linux-2.11.1~dfsg.orig/drivers/dahdi/dahdi-sysfs.c
-+++ dahdi-linux-2.11.1~dfsg/drivers/dahdi/dahdi-sysfs.c
-@@ -214,6 +214,7 @@ static BUS_ATTR_READER(linecompat_show,
- return len;
- }
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
- static struct device_attribute span_dev_attrs[] = {
- __ATTR_RO(name),
- __ATTR_RO(desc),
-@@ -230,6 +231,39 @@ static struct device_attribute span_dev_
- __ATTR_RO(linecompat),
- __ATTR_NULL,
- };
-+#else
-+static DEVICE_ATTR_RO(name);
-+static DEVICE_ATTR_RO(desc);
-+static DEVICE_ATTR_RO(spantype);
-+static DEVICE_ATTR_RO(local_spanno);
-+static DEVICE_ATTR_RO(alarms);
-+static DEVICE_ATTR_RO(lbo);
-+static DEVICE_ATTR_RO(syncsrc);
-+static DEVICE_ATTR_RO(is_digital);
-+static DEVICE_ATTR_RO(is_sync_master);
-+static DEVICE_ATTR_RO(basechan);
-+static DEVICE_ATTR_RO(channels);
-+static DEVICE_ATTR_RO(lineconfig);
-+static DEVICE_ATTR_RO(linecompat);
-+
-+static struct attribute *span_dev_attrs[] = {
-+ &dev_attr_name.attr,
-+ &dev_attr_desc.attr,
-+ &dev_attr_spantype.attr,
-+ &dev_attr_local_spanno.attr,
-+ &dev_attr_alarms.attr,
-+ &dev_attr_lbo.attr,
-+ &dev_attr_syncsrc.attr,
-+ &dev_attr_is_digital.attr,
-+ &dev_attr_is_sync_master.attr,
-+ &dev_attr_basechan.attr,
-+ &dev_attr_channels.attr,
-+ &dev_attr_lineconfig.attr,
-+ &dev_attr_linecompat.attr,
-+ NULL,
-+};
-+ATTRIBUTE_GROUPS(span_dev);
-+#endif
-
- static ssize_t master_span_show(struct device_driver *driver, char *buf)
- {
-@@ -270,10 +304,11 @@ static struct bus_type spans_bus_type =
- .name = "dahdi_spans",
- .match = span_match,
- .uevent = span_uevent,
-- .dev_attrs = span_dev_attrs,
- #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
-+ .dev_attrs = span_dev_attrs,
- .drv_attrs = dahdi_attrs,
- #else
-+ .dev_groups = span_dev_groups,
- .drv_groups = dahdi_groups,
- #endif
- };
-@@ -690,6 +725,7 @@ dahdi_registration_time_show(struct devi
- return count;
- }
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
- static struct device_attribute dahdi_device_attrs[] = {
- __ATTR(manufacturer, S_IRUGO, dahdi_device_manufacturer_show, NULL),
- __ATTR(type, S_IRUGO, dahdi_device_type_show, NULL),
-@@ -704,11 +740,48 @@ static struct device_attribute dahdi_dev
- __ATTR(registration_time, S_IRUGO, dahdi_registration_time_show, NULL),
- __ATTR_NULL,
- };
-+#else
-+static DEVICE_ATTR(manufacturer, S_IRUGO, dahdi_device_manufacturer_show, NULL);
-+static DEVICE_ATTR(type, S_IRUGO, dahdi_device_type_show, NULL);
-+static DEVICE_ATTR(span_count, S_IRUGO, dahdi_device_span_count_show, NULL);
-+static DEVICE_ATTR(hardware_id, S_IRUGO, dahdi_device_hardware_id_show, NULL);
-+static DEVICE_ATTR(location, S_IRUGO, dahdi_device_location_show, NULL);
-+static DEVICE_ATTR(auto_assign, S_IWUSR, NULL, dahdi_device_auto_assign);
-+static DEVICE_ATTR(assign_span, S_IWUSR, NULL, dahdi_device_assign_span);
-+static DEVICE_ATTR(unassign_span, S_IWUSR, NULL, dahdi_device_unassign_span);
-+/*
-+ * Using DEVICE_ATTR for spantype attribute here will conflict with the
-+ * span device attribute definition above. Define it somewhat more
-+ * manually to give it a unique name.
-+ */
-+static struct device_attribute dahdi_dev_attr_spantype =
-+ __ATTR(spantype, S_IWUSR | S_IRUGO, dahdi_spantype_show, dahdi_spantype_store);
-+static DEVICE_ATTR(registration_time, S_IRUGO, dahdi_registration_time_show, NULL);
-+
-+static struct attribute *dahdi_device_attrs[] = {
-+ &dev_attr_manufacturer.attr,
-+ &dev_attr_type.attr,
-+ &dev_attr_span_count.attr,
-+ &dev_attr_hardware_id.attr,
-+ &dev_attr_location.attr,
-+ &dev_attr_auto_assign.attr,
-+ &dev_attr_assign_span.attr,
-+ &dev_attr_unassign_span.attr,
-+ &dahdi_dev_attr_spantype.attr,
-+ &dev_attr_registration_time.attr,
-+ NULL,
-+};
-+ATTRIBUTE_GROUPS(dahdi_device);
-+#endif
-
- static struct bus_type dahdi_device_bus = {
- .name = "dahdi_devices",
- .uevent = device_uevent,
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
- .dev_attrs = dahdi_device_attrs,
-+#else
-+ .dev_groups = dahdi_device_groups,
-+#endif
- };
-
- static void dahdi_sysfs_cleanup(void)
-Index: dahdi-linux-2.11.1~dfsg/drivers/dahdi/dahdi-sysfs-chan.c
-===================================================================
---- dahdi-linux-2.11.1~dfsg.orig/drivers/dahdi/dahdi-sysfs-chan.c
-+++ dahdi-linux-2.11.1~dfsg/drivers/dahdi/dahdi-sysfs-chan.c
-@@ -158,6 +158,7 @@ static BUS_ATTR_READER(ec_state_show, de
- return len;
- }
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
- static struct device_attribute chan_dev_attrs[] = {
- __ATTR_RO(name),
- __ATTR_RO(channo),
-@@ -174,6 +175,39 @@ static struct device_attribute chan_dev_
- __ATTR_RO(in_use),
- __ATTR_NULL,
- };
-+#else
-+static DEVICE_ATTR_RO(name);
-+static DEVICE_ATTR_RO(channo);
-+static DEVICE_ATTR_RO(chanpos);
-+static DEVICE_ATTR_RO(sig);
-+static DEVICE_ATTR_RO(sigcap);
-+static DEVICE_ATTR_RO(alarms);
-+static DEVICE_ATTR_RO(ec_factory);
-+static DEVICE_ATTR_RO(ec_state);
-+static DEVICE_ATTR_RO(blocksize);
-+#ifdef OPTIMIZE_CHANMUTE
-+static DEVICE_ATTR_RO(chanmute);
-+#endif
-+static DEVICE_ATTR_RO(in_use);
-+
-+static struct attribute *chan_dev_attrs[] = {
-+ &dev_attr_name.attr,
-+ &dev_attr_channo.attr,
-+ &dev_attr_chanpos.attr,
-+ &dev_attr_sig.attr,
-+ &dev_attr_sigcap.attr,
-+ &dev_attr_alarms.attr,
-+ &dev_attr_ec_factory.attr,
-+ &dev_attr_ec_state.attr,
-+ &dev_attr_blocksize.attr,
-+#ifdef OPTIMIZE_CHANMUTE
-+ &dev_attr_chanmute.attr,
-+#endif
-+ &dev_attr_in_use.attr,
-+ NULL,
-+};
-+ATTRIBUTE_GROUPS(chan_dev);
-+#endif
-
- static void chan_release(struct device *dev)
- {
-@@ -196,7 +230,11 @@ static int chan_match(struct device *dev
- static struct bus_type chan_bus_type = {
- .name = "dahdi_channels",
- .match = chan_match,
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
- .dev_attrs = chan_dev_attrs,
-+#else
-+ .dev_groups = chan_dev_groups,
-+#endif
- };
-
- static int chan_probe(struct device *dev)
-Index: dahdi-linux-2.11.1~dfsg/drivers/dahdi/xpp/xbus-sysfs.c
-===================================================================
---- dahdi-linux-2.11.1~dfsg.orig/drivers/dahdi/xpp/xbus-sysfs.c
-+++ dahdi-linux-2.11.1~dfsg/drivers/dahdi/xpp/xbus-sysfs.c
-@@ -339,6 +339,7 @@ static DEVICE_ATTR_READER(dahdi_registra
- return len;
- }
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
- static struct device_attribute xbus_dev_attrs[] = {
- __ATTR_RO(connector),
- __ATTR_RO(label),
-@@ -358,6 +359,42 @@ static struct device_attribute xbus_dev_
- dahdi_registration_store),
- __ATTR_NULL,
- };
-+#else
-+static DEVICE_ATTR_RO(connector);
-+static DEVICE_ATTR_RO(label);
-+static DEVICE_ATTR_RO(status);
-+static DEVICE_ATTR_RO(timing);
-+static DEVICE_ATTR_RO(refcount_xbus);
-+static DEVICE_ATTR_RO(waitfor_xpds);
-+static DEVICE_ATTR_RO(driftinfo);
-+static DEVICE_ATTR(cls, S_IWUSR, NULL, cls_store);
-+static DEVICE_ATTR(xbus_state, S_IRUGO | S_IWUSR, xbus_state_show,
-+ xbus_state_store);
-+#ifdef SAMPLE_TICKS
-+static DEVICE_ATTR(samples, S_IWUSR | S_IRUGO, samples_show, samples_store);
-+#endif
-+static DEVICE_ATTR(dahdi_registration, S_IRUGO | S_IWUSR,
-+ dahdi_registration_show,
-+ dahdi_registration_store);
-+
-+static struct attribute *xbus_dev_attrs[] = {
-+ &dev_attr_connector.attr,
-+ &dev_attr_label.attr,
-+ &dev_attr_status.attr,
-+ &dev_attr_timing.attr,
-+ &dev_attr_refcount_xbus.attr,
-+ &dev_attr_waitfor_xpds.attr,
-+ &dev_attr_driftinfo.attr,
-+ &dev_attr_cls.attr,
-+ &dev_attr_xbus_state.attr,
-+#ifdef SAMPLE_TICKS
-+ &dev_attr_samples.attr,
-+#endif
-+ &dev_attr_dahdi_registration.attr,
-+ NULL,
-+};
-+ATTRIBUTE_GROUPS(xbus_dev);
-+#endif
-
- static int astribank_match(struct device *dev, struct device_driver *driver)
- {
-@@ -457,10 +494,11 @@ static struct bus_type toplevel_bus_type
- .name = "astribanks",
- .match = astribank_match,
- .uevent = astribank_uevent,
-- .dev_attrs = xbus_dev_attrs,
- #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
-+ .dev_attrs = xbus_dev_attrs,
- .drv_attrs = xpp_attrs,
- #else
-+ .dev_groups = xbus_dev_groups,
- .drv_groups = xpp_groups,
- #endif
- };
-@@ -744,6 +782,7 @@ static int xpd_match(struct device *dev,
- return 1;
- }
-
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
- static struct device_attribute xpd_dev_attrs[] = {
- __ATTR(chipregs, S_IRUGO | S_IWUSR, chipregs_show, chipregs_store),
- __ATTR(blink, S_IRUGO | S_IWUSR, blink_show, blink_store),
-@@ -754,11 +793,36 @@ static struct device_attribute xpd_dev_a
- __ATTR_RO(refcount_xpd),
- __ATTR_NULL,
- };
-+#else
-+DEVICE_ATTR(chipregs, S_IRUGO | S_IWUSR, chipregs_show, chipregs_store);
-+DEVICE_ATTR(blink, S_IRUGO | S_IWUSR, blink_show, blink_store);
-+DEVICE_ATTR(span, S_IRUGO | S_IWUSR, span_show, span_store);
-+DEVICE_ATTR_RO(type);
-+DEVICE_ATTR_RO(offhook);
-+DEVICE_ATTR_RO(timing_priority);
-+DEVICE_ATTR_RO(refcount_xpd);
-+
-+static struct attribute *xpd_dev_attrs[] = {
-+ &dev_attr_chipregs.attr,
-+ &dev_attr_blink.attr,
-+ &dev_attr_span.attr,
-+ &dev_attr_type.attr,
-+ &dev_attr_offhook.attr,
-+ &dev_attr_timing_priority.attr,
-+ &dev_attr_refcount_xpd.attr,
-+ NULL,
-+};
-+ATTRIBUTE_GROUPS(xpd_dev);
-+#endif
-
- static struct bus_type xpd_type = {
- .name = "xpds",
- .match = xpd_match,
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
- .dev_attrs = xpd_dev_attrs,
-+#else
-+ .dev_groups = xpd_dev_groups,
-+#endif
- };
-
- int xpd_driver_register(struct device_driver *driver)
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/dahdi-linux.git/commitdiff/446f56766abc49dc0ded2240f61c14edce99092b
More information about the pld-cvs-commit
mailing list