linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] isdn: icn: remove a #warning
@ 2016-03-02 19:06 Arnd Bergmann
  2016-03-02 19:06 ` [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging Arnd Bergmann
  0 siblings, 1 reply; 28+ messages in thread
From: Arnd Bergmann @ 2016-03-02 19:06 UTC (permalink / raw)
  To: Karsten Keil
  Cc: linux-arm-kernel, Arnd Bergmann, David S. Miller, netdev, linux-kernel

The icn driver currently produces an unconditional #warning whenever
we build it, introduced by Karsten Keil back in 2003:

 #warning TODO test headroom or use skb->nb to flag ACK

Karsten's original commit (from BitKeeper) contains this description:

    - here are lot of bugs left, so ISDN is not stable yet but
      I think it's really time to fix it, even if it need some cycles
      to get it right (normally I'm only send patches if it works 100% for
      me).
    - I add some additional #warnings to address places which need fixing
      (I hope that some of the other ISDN developer jump in)

Apparently this has not happened, and it is unlikely that it ever will,
given that the driver doesn't seem to work. No substantial bug fixes
other than janitorial cleanups have happened in the driver since then,
and I see no indication that anyone who patched it had the hardware.

We should probably either remove the driver, or remove all of i4l,
but for now, this shuts up the distracting #warning by turning it
into a comment.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Link: http://git.meleeweb.net/linux.git/commit/?id=b0deac0886b0056765afd149e9834373b38e096b
---
 drivers/isdn/icn/icn.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/isdn/icn/icn.c b/drivers/isdn/icn/icn.c
index 358a574d9e8b..46d957c34be1 100644
--- a/drivers/isdn/icn/icn.c
+++ b/drivers/isdn/icn/icn.c
@@ -718,7 +718,7 @@ icn_sendbuf(int channel, int ack, struct sk_buff *skb, icn_card *card)
 			return 0;
 		if (card->sndcount[channel] > ICN_MAX_SQUEUE)
 			return 0;
-#warning TODO test headroom or use skb->nb to flag ACK
+		/* TODO test headroom or use skb->nb to flag ACK */
 		nskb = skb_clone(skb, GFP_ATOMIC);
 		if (nskb) {
 			/* Push ACK flag as one
-- 
2.7.0

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-02 19:06 [PATCH 1/2] isdn: icn: remove a #warning Arnd Bergmann
@ 2016-03-02 19:06 ` Arnd Bergmann
  2016-03-03  8:30   ` isdn
                     ` (3 more replies)
  0 siblings, 4 replies; 28+ messages in thread
From: Arnd Bergmann @ 2016-03-02 19:06 UTC (permalink / raw)
  To: Karsten Keil, Greg Kroah-Hartman
  Cc: linux-arm-kernel, Arnd Bergmann, Jonathan Corbet,
	David S. Miller, netdev, linux-doc, linux-kernel, devel

The icn, act2000 and pcbit drivers are all for very old hardware,
and it is highly unlikely that anyone is actually still using them
on modern kernels, if at all.

All three drivers apparently are for hardware that predates PCI
being the common connector, as they are ISA-only and active
PCI ISDN cards were widely available in the 1990s.

Looking through the git logs, it I cannot find any indication of a
patch to any of these drivers that has been tested on real hardware,
only cleanups or global API changes.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 Documentation/isdn/00-INDEX                                 |  8 --------
 drivers/isdn/Makefile                                       |  3 ---
 drivers/isdn/i4l/Kconfig                                    | 10 ----------
 drivers/staging/Kconfig                                     |  2 ++
 drivers/staging/Makefile                                    |  1 +
 .../staging/i4l/Documentation}/README.act2000               |  0
 .../isdn => drivers/staging/i4l/Documentation}/README.icn   |  0
 .../isdn => drivers/staging/i4l/Documentation}/README.pcbit |  0
 .../isdn => drivers/staging/i4l/Documentation}/README.sc    |  0
 drivers/staging/i4l/Kconfig                                 | 13 +++++++++++++
 drivers/staging/i4l/Makefile                                |  5 +++++
 drivers/staging/i4l/TODO                                    |  3 +++
 drivers/{isdn => staging/i4l}/act2000/Kconfig               |  0
 drivers/{isdn => staging/i4l}/act2000/Makefile              |  0
 drivers/{isdn => staging/i4l}/act2000/act2000.h             |  0
 drivers/{isdn => staging/i4l}/act2000/act2000_isa.c         |  0
 drivers/{isdn => staging/i4l}/act2000/act2000_isa.h         |  0
 drivers/{isdn => staging/i4l}/act2000/capi.c                |  0
 drivers/{isdn => staging/i4l}/act2000/capi.h                |  0
 drivers/{isdn => staging/i4l}/act2000/module.c              |  0
 drivers/{isdn => staging/i4l}/icn/Kconfig                   |  0
 drivers/{isdn => staging/i4l}/icn/Makefile                  |  0
 drivers/{isdn => staging/i4l}/icn/icn.c                     |  0
 drivers/{isdn => staging/i4l}/icn/icn.h                     |  0
 drivers/{isdn => staging/i4l}/pcbit/Kconfig                 |  0
 drivers/{isdn => staging/i4l}/pcbit/Makefile                |  0
 drivers/{isdn => staging/i4l}/pcbit/callbacks.c             |  0
 drivers/{isdn => staging/i4l}/pcbit/callbacks.h             |  0
 drivers/{isdn => staging/i4l}/pcbit/capi.c                  |  0
 drivers/{isdn => staging/i4l}/pcbit/capi.h                  |  0
 drivers/{isdn => staging/i4l}/pcbit/drv.c                   |  0
 drivers/{isdn => staging/i4l}/pcbit/edss1.c                 |  0
 drivers/{isdn => staging/i4l}/pcbit/edss1.h                 |  0
 drivers/{isdn => staging/i4l}/pcbit/layer2.c                |  0
 drivers/{isdn => staging/i4l}/pcbit/layer2.h                |  0
 drivers/{isdn => staging/i4l}/pcbit/module.c                |  0
 drivers/{isdn => staging/i4l}/pcbit/pcbit.h                 |  0
 37 files changed, 24 insertions(+), 21 deletions(-)
 rename {Documentation/isdn => drivers/staging/i4l/Documentation}/README.act2000 (100%)
 rename {Documentation/isdn => drivers/staging/i4l/Documentation}/README.icn (100%)
 rename {Documentation/isdn => drivers/staging/i4l/Documentation}/README.pcbit (100%)
 rename {Documentation/isdn => drivers/staging/i4l/Documentation}/README.sc (100%)
 create mode 100644 drivers/staging/i4l/Kconfig
 create mode 100644 drivers/staging/i4l/Makefile
 create mode 100644 drivers/staging/i4l/TODO
 rename drivers/{isdn => staging/i4l}/act2000/Kconfig (100%)
 rename drivers/{isdn => staging/i4l}/act2000/Makefile (100%)
 rename drivers/{isdn => staging/i4l}/act2000/act2000.h (100%)
 rename drivers/{isdn => staging/i4l}/act2000/act2000_isa.c (100%)
 rename drivers/{isdn => staging/i4l}/act2000/act2000_isa.h (100%)
 rename drivers/{isdn => staging/i4l}/act2000/capi.c (100%)
 rename drivers/{isdn => staging/i4l}/act2000/capi.h (100%)
 rename drivers/{isdn => staging/i4l}/act2000/module.c (100%)
 rename drivers/{isdn => staging/i4l}/icn/Kconfig (100%)
 rename drivers/{isdn => staging/i4l}/icn/Makefile (100%)
 rename drivers/{isdn => staging/i4l}/icn/icn.c (100%)
 rename drivers/{isdn => staging/i4l}/icn/icn.h (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/Kconfig (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/Makefile (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/callbacks.c (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/callbacks.h (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/capi.c (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/capi.h (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/drv.c (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/edss1.c (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/edss1.h (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/layer2.c (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/layer2.h (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/module.c (100%)
 rename drivers/{isdn => staging/i4l}/pcbit/pcbit.h (100%)

diff --git a/Documentation/isdn/00-INDEX b/Documentation/isdn/00-INDEX
index e87e336f590e..2d1889b6c1fa 100644
--- a/Documentation/isdn/00-INDEX
+++ b/Documentation/isdn/00-INDEX
@@ -16,8 +16,6 @@ README.FAQ
 	- general info for FAQ.
 README.HiSax
 	- info on the HiSax driver which replaces the old teles.
-README.act2000
-	- info on driver for IBM ACT-2000 card.
 README.audio
 	- info for running audio over ISDN.
 README.avmb1
@@ -34,14 +32,8 @@ README.hfc-pci
 	- info on hfc-pci based cards.
 README.hysdn
         - info on driver for Hypercope active HYSDN cards
-README.icn
-	- info on the ICN-ISDN-card and its driver.
 README.mISDN
 	- info on the Modular ISDN subsystem (mISDN)
-README.pcbit
-	- info on the PCBIT-D ISDN adapter and driver.
-README.sc
-	- info on driver for Spellcaster cards.
 README.syncppp
 	- info on running Sync PPP over ISDN.
 README.x25
diff --git a/drivers/isdn/Makefile b/drivers/isdn/Makefile
index 91c81965e7ca..c32e45826c2c 100644
--- a/drivers/isdn/Makefile
+++ b/drivers/isdn/Makefile
@@ -8,9 +8,6 @@ obj-$(CONFIG_MISDN)			+= mISDN/
 obj-$(CONFIG_ISDN)			+= hardware/
 obj-$(CONFIG_ISDN_DIVERSION)		+= divert/
 obj-$(CONFIG_ISDN_DRV_HISAX)		+= hisax/
-obj-$(CONFIG_ISDN_DRV_ICN)		+= icn/
-obj-$(CONFIG_ISDN_DRV_PCBIT)		+= pcbit/
 obj-$(CONFIG_ISDN_DRV_LOOP)		+= isdnloop/
-obj-$(CONFIG_ISDN_DRV_ACT2000)		+= act2000/
 obj-$(CONFIG_HYSDN)			+= hysdn/
 obj-$(CONFIG_ISDN_DRV_GIGASET)		+= gigaset/
diff --git a/drivers/isdn/i4l/Kconfig b/drivers/isdn/i4l/Kconfig
index f5b714cd7618..68e54d9f2f53 100644
--- a/drivers/isdn/i4l/Kconfig
+++ b/drivers/isdn/i4l/Kconfig
@@ -123,16 +123,6 @@ comment "ISDN4Linux hardware drivers"
 
 source "drivers/isdn/hisax/Kconfig"
 
-
-menu "Active cards"
-
-source "drivers/isdn/icn/Kconfig"
-
-source "drivers/isdn/pcbit/Kconfig"
-
-source "drivers/isdn/act2000/Kconfig"
-
-endmenu
 # end ISDN_I4L
 endif
 
diff --git a/drivers/staging/Kconfig b/drivers/staging/Kconfig
index 5f9a97a77393..ff894bc63b3b 100644
--- a/drivers/staging/Kconfig
+++ b/drivers/staging/Kconfig
@@ -104,4 +104,6 @@ source "drivers/staging/wilc1000/Kconfig"
 
 source "drivers/staging/most/Kconfig"
 
+source "drivers/staging/i4l/Kconfig"
+
 endif # STAGING
diff --git a/drivers/staging/Makefile b/drivers/staging/Makefile
index b3920c224013..8242923371ad 100644
--- a/drivers/staging/Makefile
+++ b/drivers/staging/Makefile
@@ -41,3 +41,4 @@ obj-$(CONFIG_FB_TFT)		+= fbtft/
 obj-$(CONFIG_FSL_MC_BUS)	+= fsl-mc/
 obj-$(CONFIG_WILC1000)		+= wilc1000/
 obj-$(CONFIG_MOST)		+= most/
+obj-$(CONFIG_ISDN_I4L)		+= i4l/
diff --git a/Documentation/isdn/README.act2000 b/drivers/staging/i4l/Documentation/README.act2000
similarity index 100%
rename from Documentation/isdn/README.act2000
rename to drivers/staging/i4l/Documentation/README.act2000
diff --git a/Documentation/isdn/README.icn b/drivers/staging/i4l/Documentation/README.icn
similarity index 100%
rename from Documentation/isdn/README.icn
rename to drivers/staging/i4l/Documentation/README.icn
diff --git a/Documentation/isdn/README.pcbit b/drivers/staging/i4l/Documentation/README.pcbit
similarity index 100%
rename from Documentation/isdn/README.pcbit
rename to drivers/staging/i4l/Documentation/README.pcbit
diff --git a/Documentation/isdn/README.sc b/drivers/staging/i4l/Documentation/README.sc
similarity index 100%
rename from Documentation/isdn/README.sc
rename to drivers/staging/i4l/Documentation/README.sc
diff --git a/drivers/staging/i4l/Kconfig b/drivers/staging/i4l/Kconfig
new file mode 100644
index 000000000000..920216e88de7
--- /dev/null
+++ b/drivers/staging/i4l/Kconfig
@@ -0,0 +1,13 @@
+#
+# Old ISDN4Linux config
+#
+menu "Old ISDN4Linux (deprecated)"
+	depends on ISDN_I4L
+
+source "drivers/staging/i4l/icn/Kconfig"
+
+source "drivers/staging/i4l/pcbit/Kconfig"
+
+source "drivers/staging/i4l/act2000/Kconfig"
+
+endmenu
diff --git a/drivers/staging/i4l/Makefile b/drivers/staging/i4l/Makefile
new file mode 100644
index 000000000000..158b87093db5
--- /dev/null
+++ b/drivers/staging/i4l/Makefile
@@ -0,0 +1,5 @@
+# Makefile for the old ISDN I4L subsystem and device drivers.
+
+obj-$(CONFIG_ISDN_DRV_ICN)		+= icn/
+obj-$(CONFIG_ISDN_DRV_PCBIT)		+= pcbit/
+obj-$(CONFIG_ISDN_DRV_ACT2000)		+= act2000/
diff --git a/drivers/staging/i4l/TODO b/drivers/staging/i4l/TODO
new file mode 100644
index 000000000000..6fe2c08bec7a
--- /dev/null
+++ b/drivers/staging/i4l/TODO
@@ -0,0 +1,3 @@
+* The icn, pcbit and act2000 drivers are dead, remove them in 2017
+  after another longterm kernel has been released, just in the
+  unlikely case someone still has this hardware.
diff --git a/drivers/isdn/act2000/Kconfig b/drivers/staging/i4l/act2000/Kconfig
similarity index 100%
rename from drivers/isdn/act2000/Kconfig
rename to drivers/staging/i4l/act2000/Kconfig
diff --git a/drivers/isdn/act2000/Makefile b/drivers/staging/i4l/act2000/Makefile
similarity index 100%
rename from drivers/isdn/act2000/Makefile
rename to drivers/staging/i4l/act2000/Makefile
diff --git a/drivers/isdn/act2000/act2000.h b/drivers/staging/i4l/act2000/act2000.h
similarity index 100%
rename from drivers/isdn/act2000/act2000.h
rename to drivers/staging/i4l/act2000/act2000.h
diff --git a/drivers/isdn/act2000/act2000_isa.c b/drivers/staging/i4l/act2000/act2000_isa.c
similarity index 100%
rename from drivers/isdn/act2000/act2000_isa.c
rename to drivers/staging/i4l/act2000/act2000_isa.c
diff --git a/drivers/isdn/act2000/act2000_isa.h b/drivers/staging/i4l/act2000/act2000_isa.h
similarity index 100%
rename from drivers/isdn/act2000/act2000_isa.h
rename to drivers/staging/i4l/act2000/act2000_isa.h
diff --git a/drivers/isdn/act2000/capi.c b/drivers/staging/i4l/act2000/capi.c
similarity index 100%
rename from drivers/isdn/act2000/capi.c
rename to drivers/staging/i4l/act2000/capi.c
diff --git a/drivers/isdn/act2000/capi.h b/drivers/staging/i4l/act2000/capi.h
similarity index 100%
rename from drivers/isdn/act2000/capi.h
rename to drivers/staging/i4l/act2000/capi.h
diff --git a/drivers/isdn/act2000/module.c b/drivers/staging/i4l/act2000/module.c
similarity index 100%
rename from drivers/isdn/act2000/module.c
rename to drivers/staging/i4l/act2000/module.c
diff --git a/drivers/isdn/icn/Kconfig b/drivers/staging/i4l/icn/Kconfig
similarity index 100%
rename from drivers/isdn/icn/Kconfig
rename to drivers/staging/i4l/icn/Kconfig
diff --git a/drivers/isdn/icn/Makefile b/drivers/staging/i4l/icn/Makefile
similarity index 100%
rename from drivers/isdn/icn/Makefile
rename to drivers/staging/i4l/icn/Makefile
diff --git a/drivers/isdn/icn/icn.c b/drivers/staging/i4l/icn/icn.c
similarity index 100%
rename from drivers/isdn/icn/icn.c
rename to drivers/staging/i4l/icn/icn.c
diff --git a/drivers/isdn/icn/icn.h b/drivers/staging/i4l/icn/icn.h
similarity index 100%
rename from drivers/isdn/icn/icn.h
rename to drivers/staging/i4l/icn/icn.h
diff --git a/drivers/isdn/pcbit/Kconfig b/drivers/staging/i4l/pcbit/Kconfig
similarity index 100%
rename from drivers/isdn/pcbit/Kconfig
rename to drivers/staging/i4l/pcbit/Kconfig
diff --git a/drivers/isdn/pcbit/Makefile b/drivers/staging/i4l/pcbit/Makefile
similarity index 100%
rename from drivers/isdn/pcbit/Makefile
rename to drivers/staging/i4l/pcbit/Makefile
diff --git a/drivers/isdn/pcbit/callbacks.c b/drivers/staging/i4l/pcbit/callbacks.c
similarity index 100%
rename from drivers/isdn/pcbit/callbacks.c
rename to drivers/staging/i4l/pcbit/callbacks.c
diff --git a/drivers/isdn/pcbit/callbacks.h b/drivers/staging/i4l/pcbit/callbacks.h
similarity index 100%
rename from drivers/isdn/pcbit/callbacks.h
rename to drivers/staging/i4l/pcbit/callbacks.h
diff --git a/drivers/isdn/pcbit/capi.c b/drivers/staging/i4l/pcbit/capi.c
similarity index 100%
rename from drivers/isdn/pcbit/capi.c
rename to drivers/staging/i4l/pcbit/capi.c
diff --git a/drivers/isdn/pcbit/capi.h b/drivers/staging/i4l/pcbit/capi.h
similarity index 100%
rename from drivers/isdn/pcbit/capi.h
rename to drivers/staging/i4l/pcbit/capi.h
diff --git a/drivers/isdn/pcbit/drv.c b/drivers/staging/i4l/pcbit/drv.c
similarity index 100%
rename from drivers/isdn/pcbit/drv.c
rename to drivers/staging/i4l/pcbit/drv.c
diff --git a/drivers/isdn/pcbit/edss1.c b/drivers/staging/i4l/pcbit/edss1.c
similarity index 100%
rename from drivers/isdn/pcbit/edss1.c
rename to drivers/staging/i4l/pcbit/edss1.c
diff --git a/drivers/isdn/pcbit/edss1.h b/drivers/staging/i4l/pcbit/edss1.h
similarity index 100%
rename from drivers/isdn/pcbit/edss1.h
rename to drivers/staging/i4l/pcbit/edss1.h
diff --git a/drivers/isdn/pcbit/layer2.c b/drivers/staging/i4l/pcbit/layer2.c
similarity index 100%
rename from drivers/isdn/pcbit/layer2.c
rename to drivers/staging/i4l/pcbit/layer2.c
diff --git a/drivers/isdn/pcbit/layer2.h b/drivers/staging/i4l/pcbit/layer2.h
similarity index 100%
rename from drivers/isdn/pcbit/layer2.h
rename to drivers/staging/i4l/pcbit/layer2.h
diff --git a/drivers/isdn/pcbit/module.c b/drivers/staging/i4l/pcbit/module.c
similarity index 100%
rename from drivers/isdn/pcbit/module.c
rename to drivers/staging/i4l/pcbit/module.c
diff --git a/drivers/isdn/pcbit/pcbit.h b/drivers/staging/i4l/pcbit/pcbit.h
similarity index 100%
rename from drivers/isdn/pcbit/pcbit.h
rename to drivers/staging/i4l/pcbit/pcbit.h
-- 
2.7.0

^ permalink raw reply related	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-02 19:06 ` [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging Arnd Bergmann
@ 2016-03-03  8:30   ` isdn
  2016-03-04 15:24     ` Arnd Bergmann
  2016-03-03 22:22   ` David Miller
                     ` (2 subsequent siblings)
  3 siblings, 1 reply; 28+ messages in thread
From: isdn @ 2016-03-03  8:30 UTC (permalink / raw)
  To: Arnd Bergmann, Greg Kroah-Hartman
  Cc: linux-arm-kernel, Jonathan Corbet, David S. Miller, netdev,
	linux-doc, linux-kernel, devel

Hi Arnd,
I fully agree and ack.
Thanks for the work.
Am 02.03.2016 um 20:06 schrieb Arnd Bergmann:
> The icn, act2000 and pcbit drivers are all for very old hardware,
> and it is highly unlikely that anyone is actually still using them
> on modern kernels, if at all.
> 
> All three drivers apparently are for hardware that predates PCI
> being the common connector, as they are ISA-only and active
> PCI ISDN cards were widely available in the 1990s.
> 
> Looking through the git logs, it I cannot find any indication of a
> patch to any of these drivers that has been tested on real hardware,
> only cleanups or global API changes.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  Documentation/isdn/00-INDEX                                 |  8 --------
>  drivers/isdn/Makefile                                       |  3 ---
>  drivers/isdn/i4l/Kconfig                                    | 10 ----------
>  drivers/staging/Kconfig                                     |  2 ++
>  drivers/staging/Makefile                                    |  1 +
>  .../staging/i4l/Documentation}/README.act2000               |  0
>  .../isdn => drivers/staging/i4l/Documentation}/README.icn   |  0
>  .../isdn => drivers/staging/i4l/Documentation}/README.pcbit |  0
>  .../isdn => drivers/staging/i4l/Documentation}/README.sc    |  0
>  drivers/staging/i4l/Kconfig                                 | 13 +++++++++++++
>  drivers/staging/i4l/Makefile                                |  5 +++++
>  drivers/staging/i4l/TODO                                    |  3 +++
>  drivers/{isdn => staging/i4l}/act2000/Kconfig               |  0
>  drivers/{isdn => staging/i4l}/act2000/Makefile              |  0
>  drivers/{isdn => staging/i4l}/act2000/act2000.h             |  0
>  drivers/{isdn => staging/i4l}/act2000/act2000_isa.c         |  0
>  drivers/{isdn => staging/i4l}/act2000/act2000_isa.h         |  0
>  drivers/{isdn => staging/i4l}/act2000/capi.c                |  0
>  drivers/{isdn => staging/i4l}/act2000/capi.h                |  0
>  drivers/{isdn => staging/i4l}/act2000/module.c              |  0
>  drivers/{isdn => staging/i4l}/icn/Kconfig                   |  0
>  drivers/{isdn => staging/i4l}/icn/Makefile                  |  0
>  drivers/{isdn => staging/i4l}/icn/icn.c                     |  0
>  drivers/{isdn => staging/i4l}/icn/icn.h                     |  0
>  drivers/{isdn => staging/i4l}/pcbit/Kconfig                 |  0
>  drivers/{isdn => staging/i4l}/pcbit/Makefile                |  0
>  drivers/{isdn => staging/i4l}/pcbit/callbacks.c             |  0
>  drivers/{isdn => staging/i4l}/pcbit/callbacks.h             |  0
>  drivers/{isdn => staging/i4l}/pcbit/capi.c                  |  0
>  drivers/{isdn => staging/i4l}/pcbit/capi.h                  |  0
>  drivers/{isdn => staging/i4l}/pcbit/drv.c                   |  0
>  drivers/{isdn => staging/i4l}/pcbit/edss1.c                 |  0
>  drivers/{isdn => staging/i4l}/pcbit/edss1.h                 |  0
>  drivers/{isdn => staging/i4l}/pcbit/layer2.c                |  0
>  drivers/{isdn => staging/i4l}/pcbit/layer2.h                |  0
>  drivers/{isdn => staging/i4l}/pcbit/module.c                |  0
>  drivers/{isdn => staging/i4l}/pcbit/pcbit.h                 |  0
>  37 files changed, 24 insertions(+), 21 deletions(-)
>  rename {Documentation/isdn => drivers/staging/i4l/Documentation}/README.act2000 (100%)
>  rename {Documentation/isdn => drivers/staging/i4l/Documentation}/README.icn (100%)
>  rename {Documentation/isdn => drivers/staging/i4l/Documentation}/README.pcbit (100%)
>  rename {Documentation/isdn => drivers/staging/i4l/Documentation}/README.sc (100%)
>  create mode 100644 drivers/staging/i4l/Kconfig
>  create mode 100644 drivers/staging/i4l/Makefile
>  create mode 100644 drivers/staging/i4l/TODO
>  rename drivers/{isdn => staging/i4l}/act2000/Kconfig (100%)
>  rename drivers/{isdn => staging/i4l}/act2000/Makefile (100%)
>  rename drivers/{isdn => staging/i4l}/act2000/act2000.h (100%)
>  rename drivers/{isdn => staging/i4l}/act2000/act2000_isa.c (100%)
>  rename drivers/{isdn => staging/i4l}/act2000/act2000_isa.h (100%)
>  rename drivers/{isdn => staging/i4l}/act2000/capi.c (100%)
>  rename drivers/{isdn => staging/i4l}/act2000/capi.h (100%)
>  rename drivers/{isdn => staging/i4l}/act2000/module.c (100%)
>  rename drivers/{isdn => staging/i4l}/icn/Kconfig (100%)
>  rename drivers/{isdn => staging/i4l}/icn/Makefile (100%)
>  rename drivers/{isdn => staging/i4l}/icn/icn.c (100%)
>  rename drivers/{isdn => staging/i4l}/icn/icn.h (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/Kconfig (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/Makefile (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/callbacks.c (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/callbacks.h (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/capi.c (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/capi.h (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/drv.c (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/edss1.c (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/edss1.h (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/layer2.c (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/layer2.h (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/module.c (100%)
>  rename drivers/{isdn => staging/i4l}/pcbit/pcbit.h (100%)
> 
> diff --git a/Documentation/isdn/00-INDEX b/Documentation/isdn/00-INDEX
> index e87e336f590e..2d1889b6c1fa 100644
> --- a/Documentation/isdn/00-INDEX
> +++ b/Documentation/isdn/00-INDEX
> @@ -16,8 +16,6 @@ README.FAQ
>  	- general info for FAQ.
>  README.HiSax
>  	- info on the HiSax driver which replaces the old teles.
> -README.act2000
> -	- info on driver for IBM ACT-2000 card.
>  README.audio
>  	- info for running audio over ISDN.
>  README.avmb1
> @@ -34,14 +32,8 @@ README.hfc-pci
>  	- info on hfc-pci based cards.
>  README.hysdn
>          - info on driver for Hypercope active HYSDN cards
> -README.icn
> -	- info on the ICN-ISDN-card and its driver.
>  README.mISDN
>  	- info on the Modular ISDN subsystem (mISDN)
> -README.pcbit
> -	- info on the PCBIT-D ISDN adapter and driver.
> -README.sc
> -	- info on driver for Spellcaster cards.
>  README.syncppp
>  	- info on running Sync PPP over ISDN.
>  README.x25
> diff --git a/drivers/isdn/Makefile b/drivers/isdn/Makefile
> index 91c81965e7ca..c32e45826c2c 100644
> --- a/drivers/isdn/Makefile
> +++ b/drivers/isdn/Makefile
> @@ -8,9 +8,6 @@ obj-$(CONFIG_MISDN)			+= mISDN/
>  obj-$(CONFIG_ISDN)			+= hardware/
>  obj-$(CONFIG_ISDN_DIVERSION)		+= divert/
>  obj-$(CONFIG_ISDN_DRV_HISAX)		+= hisax/
> -obj-$(CONFIG_ISDN_DRV_ICN)		+= icn/
> -obj-$(CONFIG_ISDN_DRV_PCBIT)		+= pcbit/
>  obj-$(CONFIG_ISDN_DRV_LOOP)		+= isdnloop/
> -obj-$(CONFIG_ISDN_DRV_ACT2000)		+= act2000/
>  obj-$(CONFIG_HYSDN)			+= hysdn/
>  obj-$(CONFIG_ISDN_DRV_GIGASET)		+= gigaset/
> diff --git a/drivers/isdn/i4l/Kconfig b/drivers/isdn/i4l/Kconfig
> index f5b714cd7618..68e54d9f2f53 100644
> --- a/drivers/isdn/i4l/Kconfig
> +++ b/drivers/isdn/i4l/Kconfig
> @@ -123,16 +123,6 @@ comment "ISDN4Linux hardware drivers"
>  
>  source "drivers/isdn/hisax/Kconfig"
>  
> -
> -menu "Active cards"
> -
> -source "drivers/isdn/icn/Kconfig"
> -
> -source "drivers/isdn/pcbit/Kconfig"
> -
> -source "drivers/isdn/act2000/Kconfig"
> -
> -endmenu
>  # end ISDN_I4L
>  endif
>  
> diff --git a/drivers/staging/Kconfig b/drivers/staging/Kconfig
> index 5f9a97a77393..ff894bc63b3b 100644
> --- a/drivers/staging/Kconfig
> +++ b/drivers/staging/Kconfig
> @@ -104,4 +104,6 @@ source "drivers/staging/wilc1000/Kconfig"
>  
>  source "drivers/staging/most/Kconfig"
>  
> +source "drivers/staging/i4l/Kconfig"
> +
>  endif # STAGING
> diff --git a/drivers/staging/Makefile b/drivers/staging/Makefile
> index b3920c224013..8242923371ad 100644
> --- a/drivers/staging/Makefile
> +++ b/drivers/staging/Makefile
> @@ -41,3 +41,4 @@ obj-$(CONFIG_FB_TFT)		+= fbtft/
>  obj-$(CONFIG_FSL_MC_BUS)	+= fsl-mc/
>  obj-$(CONFIG_WILC1000)		+= wilc1000/
>  obj-$(CONFIG_MOST)		+= most/
> +obj-$(CONFIG_ISDN_I4L)		+= i4l/
> diff --git a/Documentation/isdn/README.act2000 b/drivers/staging/i4l/Documentation/README.act2000
> similarity index 100%
> rename from Documentation/isdn/README.act2000
> rename to drivers/staging/i4l/Documentation/README.act2000
> diff --git a/Documentation/isdn/README.icn b/drivers/staging/i4l/Documentation/README.icn
> similarity index 100%
> rename from Documentation/isdn/README.icn
> rename to drivers/staging/i4l/Documentation/README.icn
> diff --git a/Documentation/isdn/README.pcbit b/drivers/staging/i4l/Documentation/README.pcbit
> similarity index 100%
> rename from Documentation/isdn/README.pcbit
> rename to drivers/staging/i4l/Documentation/README.pcbit
> diff --git a/Documentation/isdn/README.sc b/drivers/staging/i4l/Documentation/README.sc
> similarity index 100%
> rename from Documentation/isdn/README.sc
> rename to drivers/staging/i4l/Documentation/README.sc
> diff --git a/drivers/staging/i4l/Kconfig b/drivers/staging/i4l/Kconfig
> new file mode 100644
> index 000000000000..920216e88de7
> --- /dev/null
> +++ b/drivers/staging/i4l/Kconfig
> @@ -0,0 +1,13 @@
> +#
> +# Old ISDN4Linux config
> +#
> +menu "Old ISDN4Linux (deprecated)"
> +	depends on ISDN_I4L
> +
> +source "drivers/staging/i4l/icn/Kconfig"
> +
> +source "drivers/staging/i4l/pcbit/Kconfig"
> +
> +source "drivers/staging/i4l/act2000/Kconfig"
> +
> +endmenu
> diff --git a/drivers/staging/i4l/Makefile b/drivers/staging/i4l/Makefile
> new file mode 100644
> index 000000000000..158b87093db5
> --- /dev/null
> +++ b/drivers/staging/i4l/Makefile
> @@ -0,0 +1,5 @@
> +# Makefile for the old ISDN I4L subsystem and device drivers.
> +
> +obj-$(CONFIG_ISDN_DRV_ICN)		+= icn/
> +obj-$(CONFIG_ISDN_DRV_PCBIT)		+= pcbit/
> +obj-$(CONFIG_ISDN_DRV_ACT2000)		+= act2000/
> diff --git a/drivers/staging/i4l/TODO b/drivers/staging/i4l/TODO
> new file mode 100644
> index 000000000000..6fe2c08bec7a
> --- /dev/null
> +++ b/drivers/staging/i4l/TODO
> @@ -0,0 +1,3 @@
> +* The icn, pcbit and act2000 drivers are dead, remove them in 2017
> +  after another longterm kernel has been released, just in the
> +  unlikely case someone still has this hardware.
> diff --git a/drivers/isdn/act2000/Kconfig b/drivers/staging/i4l/act2000/Kconfig
> similarity index 100%
> rename from drivers/isdn/act2000/Kconfig
> rename to drivers/staging/i4l/act2000/Kconfig
> diff --git a/drivers/isdn/act2000/Makefile b/drivers/staging/i4l/act2000/Makefile
> similarity index 100%
> rename from drivers/isdn/act2000/Makefile
> rename to drivers/staging/i4l/act2000/Makefile
> diff --git a/drivers/isdn/act2000/act2000.h b/drivers/staging/i4l/act2000/act2000.h
> similarity index 100%
> rename from drivers/isdn/act2000/act2000.h
> rename to drivers/staging/i4l/act2000/act2000.h
> diff --git a/drivers/isdn/act2000/act2000_isa.c b/drivers/staging/i4l/act2000/act2000_isa.c
> similarity index 100%
> rename from drivers/isdn/act2000/act2000_isa.c
> rename to drivers/staging/i4l/act2000/act2000_isa.c
> diff --git a/drivers/isdn/act2000/act2000_isa.h b/drivers/staging/i4l/act2000/act2000_isa.h
> similarity index 100%
> rename from drivers/isdn/act2000/act2000_isa.h
> rename to drivers/staging/i4l/act2000/act2000_isa.h
> diff --git a/drivers/isdn/act2000/capi.c b/drivers/staging/i4l/act2000/capi.c
> similarity index 100%
> rename from drivers/isdn/act2000/capi.c
> rename to drivers/staging/i4l/act2000/capi.c
> diff --git a/drivers/isdn/act2000/capi.h b/drivers/staging/i4l/act2000/capi.h
> similarity index 100%
> rename from drivers/isdn/act2000/capi.h
> rename to drivers/staging/i4l/act2000/capi.h
> diff --git a/drivers/isdn/act2000/module.c b/drivers/staging/i4l/act2000/module.c
> similarity index 100%
> rename from drivers/isdn/act2000/module.c
> rename to drivers/staging/i4l/act2000/module.c
> diff --git a/drivers/isdn/icn/Kconfig b/drivers/staging/i4l/icn/Kconfig
> similarity index 100%
> rename from drivers/isdn/icn/Kconfig
> rename to drivers/staging/i4l/icn/Kconfig
> diff --git a/drivers/isdn/icn/Makefile b/drivers/staging/i4l/icn/Makefile
> similarity index 100%
> rename from drivers/isdn/icn/Makefile
> rename to drivers/staging/i4l/icn/Makefile
> diff --git a/drivers/isdn/icn/icn.c b/drivers/staging/i4l/icn/icn.c
> similarity index 100%
> rename from drivers/isdn/icn/icn.c
> rename to drivers/staging/i4l/icn/icn.c
> diff --git a/drivers/isdn/icn/icn.h b/drivers/staging/i4l/icn/icn.h
> similarity index 100%
> rename from drivers/isdn/icn/icn.h
> rename to drivers/staging/i4l/icn/icn.h
> diff --git a/drivers/isdn/pcbit/Kconfig b/drivers/staging/i4l/pcbit/Kconfig
> similarity index 100%
> rename from drivers/isdn/pcbit/Kconfig
> rename to drivers/staging/i4l/pcbit/Kconfig
> diff --git a/drivers/isdn/pcbit/Makefile b/drivers/staging/i4l/pcbit/Makefile
> similarity index 100%
> rename from drivers/isdn/pcbit/Makefile
> rename to drivers/staging/i4l/pcbit/Makefile
> diff --git a/drivers/isdn/pcbit/callbacks.c b/drivers/staging/i4l/pcbit/callbacks.c
> similarity index 100%
> rename from drivers/isdn/pcbit/callbacks.c
> rename to drivers/staging/i4l/pcbit/callbacks.c
> diff --git a/drivers/isdn/pcbit/callbacks.h b/drivers/staging/i4l/pcbit/callbacks.h
> similarity index 100%
> rename from drivers/isdn/pcbit/callbacks.h
> rename to drivers/staging/i4l/pcbit/callbacks.h
> diff --git a/drivers/isdn/pcbit/capi.c b/drivers/staging/i4l/pcbit/capi.c
> similarity index 100%
> rename from drivers/isdn/pcbit/capi.c
> rename to drivers/staging/i4l/pcbit/capi.c
> diff --git a/drivers/isdn/pcbit/capi.h b/drivers/staging/i4l/pcbit/capi.h
> similarity index 100%
> rename from drivers/isdn/pcbit/capi.h
> rename to drivers/staging/i4l/pcbit/capi.h
> diff --git a/drivers/isdn/pcbit/drv.c b/drivers/staging/i4l/pcbit/drv.c
> similarity index 100%
> rename from drivers/isdn/pcbit/drv.c
> rename to drivers/staging/i4l/pcbit/drv.c
> diff --git a/drivers/isdn/pcbit/edss1.c b/drivers/staging/i4l/pcbit/edss1.c
> similarity index 100%
> rename from drivers/isdn/pcbit/edss1.c
> rename to drivers/staging/i4l/pcbit/edss1.c
> diff --git a/drivers/isdn/pcbit/edss1.h b/drivers/staging/i4l/pcbit/edss1.h
> similarity index 100%
> rename from drivers/isdn/pcbit/edss1.h
> rename to drivers/staging/i4l/pcbit/edss1.h
> diff --git a/drivers/isdn/pcbit/layer2.c b/drivers/staging/i4l/pcbit/layer2.c
> similarity index 100%
> rename from drivers/isdn/pcbit/layer2.c
> rename to drivers/staging/i4l/pcbit/layer2.c
> diff --git a/drivers/isdn/pcbit/layer2.h b/drivers/staging/i4l/pcbit/layer2.h
> similarity index 100%
> rename from drivers/isdn/pcbit/layer2.h
> rename to drivers/staging/i4l/pcbit/layer2.h
> diff --git a/drivers/isdn/pcbit/module.c b/drivers/staging/i4l/pcbit/module.c
> similarity index 100%
> rename from drivers/isdn/pcbit/module.c
> rename to drivers/staging/i4l/pcbit/module.c
> diff --git a/drivers/isdn/pcbit/pcbit.h b/drivers/staging/i4l/pcbit/pcbit.h
> similarity index 100%
> rename from drivers/isdn/pcbit/pcbit.h
> rename to drivers/staging/i4l/pcbit/pcbit.h
> 

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-02 19:06 ` [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging Arnd Bergmann
  2016-03-03  8:30   ` isdn
@ 2016-03-03 22:22   ` David Miller
  2016-03-03 22:33     ` Greg KH
  2016-03-05  3:19   ` kbuild test robot
  2017-01-03 15:24   ` Greg Kroah-Hartman
  3 siblings, 1 reply; 28+ messages in thread
From: David Miller @ 2016-03-03 22:22 UTC (permalink / raw)
  To: arnd
  Cc: isdn, gregkh, linux-arm-kernel, corbet, netdev, linux-doc,
	linux-kernel, devel

From: Arnd Bergmann <arnd@arndb.de>
Date: Wed,  2 Mar 2016 20:06:46 +0100

> The icn, act2000 and pcbit drivers are all for very old hardware,
> and it is highly unlikely that anyone is actually still using them
> on modern kernels, if at all.
> 
> All three drivers apparently are for hardware that predates PCI
> being the common connector, as they are ISA-only and active
> PCI ISDN cards were widely available in the 1990s.
> 
> Looking through the git logs, it I cannot find any indication of a
> patch to any of these drivers that has been tested on real hardware,
> only cleanups or global API changes.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Greg, can you please take these two patches?

Thanks!

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-03 22:22   ` David Miller
@ 2016-03-03 22:33     ` Greg KH
  0 siblings, 0 replies; 28+ messages in thread
From: Greg KH @ 2016-03-03 22:33 UTC (permalink / raw)
  To: David Miller
  Cc: arnd, isdn, linux-arm-kernel, corbet, netdev, linux-doc,
	linux-kernel, devel

On Thu, Mar 03, 2016 at 05:22:22PM -0500, David Miller wrote:
> From: Arnd Bergmann <arnd@arndb.de>
> Date: Wed,  2 Mar 2016 20:06:46 +0100
> 
> > The icn, act2000 and pcbit drivers are all for very old hardware,
> > and it is highly unlikely that anyone is actually still using them
> > on modern kernels, if at all.
> > 
> > All three drivers apparently are for hardware that predates PCI
> > being the common connector, as they are ISA-only and active
> > PCI ISDN cards were widely available in the 1990s.
> > 
> > Looking through the git logs, it I cannot find any indication of a
> > patch to any of these drivers that has been tested on real hardware,
> > only cleanups or global API changes.
> > 
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
> Greg, can you please take these two patches?

will do

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-03  8:30   ` isdn
@ 2016-03-04 15:24     ` Arnd Bergmann
  2016-03-04 16:18       ` Paul Bolle
                         ` (2 more replies)
  0 siblings, 3 replies; 28+ messages in thread
From: Arnd Bergmann @ 2016-03-04 15:24 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: isdn, Greg Kroah-Hartman, devel, linux-doc, netdev,
	Jonathan Corbet, linux-kernel, David S. Miller

On Thursday 03 March 2016 09:30:38 isdn@linux-pingi.de wrote:
> Hi Arnd,
> I fully agree and ack.
> Thanks for the work.
> 

I actually did more patches that I ended up not submitting:

* move hisax to staging
* remove i4l support from gigaset
* move i4l core to staging

while I initially thought that i4l as a whole is not just unmaintained
but also more or less unused, patch 19cebbcb04c8 ("isdn: Partially
revert debug format string usage clean up") came in that indicated that
there are still users that even send patches for hisax, and that
made me doubt whether we could consider it obsolete enough.

Any thoughts on this? If you like, I can send those too.

My main motivation was to not have to fix up the ippp implementation
when I move the compat ioctl handler from fs/compat_ioctl.c
into drivers/net/ppp/ppp_generic.c, but I guess I can do that
anyway as it seems that i4l never worked properly in compat mode.

	Arnd

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-04 15:24     ` Arnd Bergmann
@ 2016-03-04 16:18       ` Paul Bolle
  2016-03-04 16:32         ` Arnd Bergmann
  2016-03-05 13:08         ` Tilman Schmidt
  2016-03-04 18:18       ` isdn
  2016-03-07  6:57       ` Holger Schurig
  2 siblings, 2 replies; 28+ messages in thread
From: Paul Bolle @ 2016-03-04 16:18 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Tilman Schmidt, Christoph Biedl, linux-arm-kernel, isdn,
	Greg Kroah-Hartman, devel, linux-doc, netdev, Jonathan Corbet,
	linux-kernel, David S. Miller

[Added Tilman and Christoph.]

On vr, 2016-03-04 at 16:24 +0100, Arnd Bergmann wrote:
> I actually did more patches that I ended up not submitting:
> 
> * move hisax to staging
> * remove i4l support from gigaset

For the record: I have no reason to object a patch that does that. (I'm
not aware anyone complained when gigaset switched its default from i4l
to capi. By now all relevant distributions should use our capi driver.)

> * move i4l core to staging

On a local tree I have two (draft) patches that do some related
preliminary work:
- isdnhdlc: move into separate directory
- mISDN: NETJet: stop selecting ISDN_I4L

These trivial patches untangle mISDN and i4l. Perhaps you did something
similar in your "move i4l core to staging".

> while I initially thought that i4l as a whole is not just unmaintained
> but also more or less unused, patch 19cebbcb04c8 ("isdn: Partially
> revert debug format string usage clean up") came in that indicated
> that
> there are still users that even send patches for hisax, and that
> made me doubt whether we could consider it obsolete enough.

See also commit 3460baa62068 ("PCI: Fix minimum allocation address
overwrite").

> Any thoughts on this? If you like, I can send those too.

For my part I'm surprised that anyone is still using it. But apparently
the hardware that required commit 19cebbcb04c8 and 3460baa62068  (which
I'm unfamiliar with) is still operational. And since there never has
been, as far as I know, a global i4l to capi migration nor a global i4l
(and capi) to mISDN migration it might be that some people are stuck on
i4l drivers for their hardware. Perhaps that explains Cristoph's
commits.

> My main motivation was to not have to fix up the ippp implementation
> when I move the compat ioctl handler from fs/compat_ioctl.c
> into drivers/net/ppp/ppp_generic.c, but I guess I can do that
> anyway as it seems that i4l never worked properly in compat mode.


Paul Bolle

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-04 16:18       ` Paul Bolle
@ 2016-03-04 16:32         ` Arnd Bergmann
  2016-03-07  8:33           ` Paul Bolle
  2016-03-05 13:08         ` Tilman Schmidt
  1 sibling, 1 reply; 28+ messages in thread
From: Arnd Bergmann @ 2016-03-04 16:32 UTC (permalink / raw)
  To: Paul Bolle
  Cc: Tilman Schmidt, Christoph Biedl, linux-arm-kernel, isdn,
	Greg Kroah-Hartman, devel, linux-doc, netdev, Jonathan Corbet,
	linux-kernel, David S. Miller

On Friday 04 March 2016 17:18:23 Paul Bolle wrote:
> [Added Tilman and Christoph.]
> 
> On vr, 2016-03-04 at 16:24 +0100, Arnd Bergmann wrote:
> > I actually did more patches that I ended up not submitting:
> > 
> > * move hisax to staging
> > * remove i4l support from gigaset
> 
> For the record: I have no reason to object a patch that does that. (I'm
> not aware anyone complained when gigaset switched its default from i4l
> to capi. By now all relevant distributions should use our capi driver.)

Ok.

> > * move i4l core to staging
> 
> On a local tree I have two (draft) patches that do some related
> preliminary work:
> - isdnhdlc: move into separate directory
> - mISDN: NETJet: stop selecting ISDN_I4L
> 
> These trivial patches untangle mISDN and i4l. Perhaps you did something
> similar in your "move i4l core to staging".

Yes, I have the same thing. I didn't mention it here as it should
be completely non-controversial.

A third patch moves the capidrv source from drivers/isdn/capi/
into the i4l directory.

> > Any thoughts on this? If you like, I can send those too.
> 
> For my part I'm surprised that anyone is still using it. But apparently
> the hardware that required commit 19cebbcb04c8 and 3460baa62068  (which
> I'm unfamiliar with) is still operational. And since there never has
> been, as far as I know, a global i4l to capi migration nor a global i4l
> (and capi) to mISDN migration it might be that some people are stuck on
> i4l drivers for their hardware. Perhaps that explains Cristoph's
> commits.

My understanding is that it's not about the hardware, and that all
devices that people actually use with hisax should also with with
mISDN.

Instead, the only argument I've heard about keeping i4l and hisax
around (indefinitely) is that existing user space tools are written
for i4l and not ported to mISDN. They work fine with CAPI drivers
using capidrv.ko, but there is no i4l emulation on top of mISDN.

	Arnd

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-04 15:24     ` Arnd Bergmann
  2016-03-04 16:18       ` Paul Bolle
@ 2016-03-04 18:18       ` isdn
  2016-03-04 21:00         ` Arnd Bergmann
  2016-03-07  6:57       ` Holger Schurig
  2 siblings, 1 reply; 28+ messages in thread
From: isdn @ 2016-03-04 18:18 UTC (permalink / raw)
  To: Arnd Bergmann, linux-arm-kernel
  Cc: Greg Kroah-Hartman, devel, linux-doc, netdev, Jonathan Corbet,
	linux-kernel, David S. Miller

Am 04.03.2016 um 16:24 schrieb Arnd Bergmann:
> On Thursday 03 March 2016 09:30:38 isdn@linux-pingi.de wrote:
>> Hi Arnd,
>> I fully agree and ack.
>> Thanks for the work.
>>
> 
> I actually did more patches that I ended up not submitting:
> 
> * move hisax to staging
> * remove i4l support from gigaset
> * move i4l core to staging
> 
> while I initially thought that i4l as a whole is not just unmaintained
> but also more or less unused, patch 19cebbcb04c8 ("isdn: Partially
> revert debug format string usage clean up") came in that indicated that
> there are still users that even send patches for hisax, and that
> made me doubt whether we could consider it obsolete enough.
> 
> Any thoughts on this? If you like, I can send those too.

I4L is still in use on some sides and here is no 100% replacement (net
via RAW IP mode, terminal via X.75).

This week I got some question from a big retail chain  in Germany about
migration. I never know that they are  using this stuff (for initial
setup of remote shops).

So I would not drop i4l yet, maybe we should propose this for 2018.
I4L is not so usefull for NT mode, which is very popular nowadays for
gateways into the new full IP world. Some design ins with mISDN here,
mostly in the embedded area.

> 
> My main motivation was to not have to fix up the ippp implementation
> when I move the compat ioctl handler from fs/compat_ioctl.c
> into drivers/net/ppp/ppp_generic.c, but I guess I can do that
> anyway as it seems that i4l never worked properly in compat mode.
> 
> 	Arnd
> 
> 
> 
> 
> 

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-04 18:18       ` isdn
@ 2016-03-04 21:00         ` Arnd Bergmann
  0 siblings, 0 replies; 28+ messages in thread
From: Arnd Bergmann @ 2016-03-04 21:00 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: isdn, devel, Jonathan Corbet, Greg Kroah-Hartman, linux-doc,
	linux-kernel, netdev, David S. Miller

On Friday 04 March 2016 19:18:49 isdn@linux-pingi.de wrote:
> Am 04.03.2016 um 16:24 schrieb Arnd Bergmann:
> > On Thursday 03 March 2016 09:30:38 isdn@linux-pingi.de wrote:
> >> Hi Arnd,
> >> I fully agree and ack.
> >> Thanks for the work.
> >>
> > 
> > I actually did more patches that I ended up not submitting:
> > 
> > * move hisax to staging
> > * remove i4l support from gigaset
> > * move i4l core to staging
> > 
> > while I initially thought that i4l as a whole is not just unmaintained
> > but also more or less unused, patch 19cebbcb04c8 ("isdn: Partially
> > revert debug format string usage clean up") came in that indicated that
> > there are still users that even send patches for hisax, and that
> > made me doubt whether we could consider it obsolete enough.
> > 
> > Any thoughts on this? If you like, I can send those too.
> 
> I4L is still in use on some sides and here is no 100% replacement (net
> via RAW IP mode, terminal via X.75).

I see.

> This week I got some question from a big retail chain  in Germany about
> migration. I never know that they are  using this stuff (for initial
> setup of remote shops).

Just for more background, do you know how old the kernel is that they
(or other i4l users you know of) are currently using?

> So I would not drop i4l yet, maybe we should propose this for 2018.
> I4L is not so usefull for NT mode, which is very popular nowadays for
> gateways into the new full IP world. Some design ins with mISDN here,
> mostly in the embedded area.

Ok, with a planned 2018 removal date I think we can consider moving
it all to staging now, that would give at least everyone who still uses
modern kernels a warning ahead of time so they can either plan the
migration away from i4l (or away from ISDN in other cases), as well as
a chance for us to hear about any remaining active users and whether
they need a later removal date.

In the TODO file for the active ISDN drivers, I have listed 2017
after the longterm kernel as the date for the projected removal.
If we decide to move the rest of I4L to staging with a date of
2018 (after the longterm release), that gives users at least until
2020 before they stop seeing upstream bug fixes for a kernel with
an included i4l, and many are probably stuck with running unsupported
older kernels anyway.

For reference, the currently largest provider of ISDN phone lines
is Deutsche Telekom, and they plan to disconnect their last user
in 2018, while Vodafone Germany said they will continue their service
until 2022, but my interpretation of their website fine print is that
this is only true for expensive S2M connections that few people use.

	Arnd

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-02 19:06 ` [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging Arnd Bergmann
  2016-03-03  8:30   ` isdn
  2016-03-03 22:22   ` David Miller
@ 2016-03-05  3:19   ` kbuild test robot
  2017-01-03 15:24   ` Greg Kroah-Hartman
  3 siblings, 0 replies; 28+ messages in thread
From: kbuild test robot @ 2016-03-05  3:19 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: kbuild-all, Karsten Keil, Greg Kroah-Hartman, linux-arm-kernel,
	Arnd Bergmann, Jonathan Corbet, David S. Miller, netdev,
	linux-doc, linux-kernel, devel

[-- Attachment #1: Type: text/plain, Size: 4626 bytes --]

Hi Arnd,

[auto build test WARNING on staging/staging-testing]
[also build test WARNING on v4.5-rc6 next-20160304]
[if your patch is applied to the wrong git tree, please drop us a note to help improving the system]

url:    https://github.com/0day-ci/linux/commits/Arnd-Bergmann/isdn-icn-remove-a-warning/20160303-031435
config: m68k-allyesconfig (attached as .config)
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=m68k 

All warnings (new ones prefixed by >>):

   In file included from arch/m68k/include/asm/io_mm.h:26:0,
                    from arch/m68k/include/asm/io.h:4,
                    from include/linux/io.h:25,
                    from drivers/staging/i4l/icn/icn.h:41,
                    from drivers/staging/i4l/icn/icn.c:12:
   drivers/staging/i4l/icn/icn.c: In function 'icn_shiftout':
   arch/m68k/include/asm/raw_io.h:43:32: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
    #define out_8(addr,b) (void)((*(__force volatile u8 *) (addr)) = (b))
                                   ^
   arch/m68k/include/asm/io_mm.h:396:72: note: in expansion of macro 'out_8'
    #define outb(val, port) ((port) < 1024 ? isa_rom_outb((val), (port)) : out_8((port), (val)))
                                                                           ^
>> drivers/staging/i4l/icn/icn.h:59:16: note: in expansion of macro 'outb'
    #define OUTB_P outb
                   ^
>> drivers/staging/i4l/icn/icn.c:89:3: note: in expansion of macro 'OUTB_P'
      OUTB_P((u_char) ((val >> s) & 1) ? 0xff : 0, port);
      ^

vim +/outb +59 drivers/staging/i4l/icn/icn.h

^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  35  #ifdef __KERNEL__
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  36  /* Kernel includes */
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  37  
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  38  #include <linux/errno.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  39  #include <linux/fs.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  40  #include <linux/major.h>
2584cf83 drivers/isdn/icn/icn.h Dan Williams   2015-08-10 @41  #include <linux/io.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  42  #include <linux/kernel.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  43  #include <linux/signal.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  44  #include <linux/slab.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  45  #include <linux/mm.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  46  #include <linux/mman.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  47  #include <linux/ioport.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  48  #include <linux/timer.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  49  #include <linux/wait.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  50  #include <linux/delay.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  51  #include <linux/isdnif.h>
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  52  
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  53  #endif                          /* __KERNEL__ */
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  54  
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  55  /* some useful macros for debugging */
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  56  #ifdef ICN_DEBUG_PORT
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  57  #define OUTB_P(v, p) {printk(KERN_DEBUG "icn: outb_p(0x%02x,0x%03x)\n", v, p); outb_p(v, p);}
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  58  #else
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16 @59  #define OUTB_P outb
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  60  #endif
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  61  
^1da177e drivers/isdn/icn/icn.h Linus Torvalds 2005-04-16  62  /* Defaults for Port-Address and shared-memory */

:::::: The code at line 59 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <torvalds@ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds@ppc970.osdl.org>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/octet-stream, Size: 35839 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-04 16:18       ` Paul Bolle
  2016-03-04 16:32         ` Arnd Bergmann
@ 2016-03-05 13:08         ` Tilman Schmidt
  2016-03-07  8:48           ` Paul Bolle
  1 sibling, 1 reply; 28+ messages in thread
From: Tilman Schmidt @ 2016-03-05 13:08 UTC (permalink / raw)
  To: Paul Bolle, Arnd Bergmann
  Cc: Christoph Biedl, linux-arm-kernel, isdn, Greg Kroah-Hartman,
	devel, linux-doc, netdev, Jonathan Corbet, linux-kernel,
	David S. Miller


[-- Attachment #1.1: Type: text/plain, Size: 3310 bytes --]

Am 04.03.2016 um 17:18 schrieb Paul Bolle:
> [Added Tilman and Christoph.]
> 
> On vr, 2016-03-04 at 16:24 +0100, Arnd Bergmann wrote:
>> I actually did more patches that I ended up not submitting:
>>
>> * move hisax to staging
>> * remove i4l support from gigaset
> 
> For the record: I have no reason to object a patch that does that. (I'm
> not aware anyone complained when gigaset switched its default from i4l
> to capi. By now all relevant distributions should use our capi driver.)

No objection from me either. When the Gigaset driver is built for CAPI
it can still be used from i4l applications via capidrv with no loss of
functionality. That was a primary goal of the CAPI port.

>> * move i4l core to staging

That's a different story. Removing i4l support will actually remove a
userspace visible feature.

> On a local tree I have two (draft) patches that do some related
> preliminary work:
> - isdnhdlc: move into separate directory
> - mISDN: NETJet: stop selecting ISDN_I4L
> 
> These trivial patches untangle mISDN and i4l.

That would be a good thing regardless of any decision on the future of
the i4l userspace interface.

> For my part I'm surprised that anyone is still using it. But apparently
> the hardware that required commit 19cebbcb04c8 and 3460baa62068  (which
> I'm unfamiliar with) is still operational. And since there never has
> been, as far as I know, a global i4l to capi migration nor a global i4l
> (and capi) to mISDN migration it might be that some people are stuck on
> i4l drivers for their hardware. Perhaps that explains Cristoph's
> commits.

The trouble is that mISDN never cared about migration or backward
compatibility. So while users of i4l applications have no problem with
i4l drivers being ported to CAPI and dropping native i4l support, they
do have a problem with drivers making that move to mISDN.

That is the situation of the hisax driver today. mISDN started as a
project to migrate hisax to CAPI but regrettably dropped that goal in
favor of a newly invented API leaving old i4l based applications behind.
As a consequence, owners of HiSAX type adapters are in fact stuck with
the old hisax driver if they want to continue using i4l userspace tools.

In my opinion, i4l, capidrv and hisax need to stay in the supported part
for the time being as they are still actively used. Native i4l support
can and should be dropped for hardware with CAPI drivers (ie. gigaset)
but not for hardware with only mISDN drivers (ie. hisax). And finally,
ISDN_CAPI_CAPIDRV should be enabled automatically if both ISDN_I4L and
ISDN_CAPI are enabled, ie. something like:

--- a/drivers/isdn/capi/Kconfig
+++ b/drivers/isdn/capi/Kconfig
@@ -27,8 +27,8 @@ config ISDN_CAPI_MIDDLEWARE
          your ISP, say Y here.

 config ISDN_CAPI_CAPIDRV
-       tristate "CAPI2.0 capidrv interface support"
-       depends on ISDN_I4L
+       tristate
+       default ISDN_I4L
        help
          This option provides the glue code to hook up CAPI driven cards to
          the legacy isdn4linux link layer.  If you have a card which is


Jm2c,
Tilman

-- 
Tilman Schmidt                              E-Mail: tilman@imap.cc
Bonn, Germany
Nous, on a des fleurs et des bougies pour nous protéger.


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-04 15:24     ` Arnd Bergmann
  2016-03-04 16:18       ` Paul Bolle
  2016-03-04 18:18       ` isdn
@ 2016-03-07  6:57       ` Holger Schurig
  2016-03-19 10:27         ` Tilman Schmidt
  2 siblings, 1 reply; 28+ messages in thread
From: Holger Schurig @ 2016-03-07  6:57 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: linux-arm-kernel, devel, isdn, Jonathan Corbet,
	Greg Kroah-Hartman, linux-doc, linux-kernel, netdev,
	David S. Miller

I know that in Germany a good amount of land-line telephone line are
still using ISDN. Some telco company try to move people to IP only, but
this is currently still a process.

Especially company line are using ISDN still, and there are some Linux
programs that act on then, e.g. Asterisk and derived PBX software has
ISDN support which is actively used.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-04 16:32         ` Arnd Bergmann
@ 2016-03-07  8:33           ` Paul Bolle
  0 siblings, 0 replies; 28+ messages in thread
From: Paul Bolle @ 2016-03-07  8:33 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Tilman Schmidt, Christoph Biedl, linux-arm-kernel, isdn,
	Greg Kroah-Hartman, devel, linux-doc, netdev, Jonathan Corbet,
	linux-kernel, David S. Miller

On vr, 2016-03-04 at 17:32 +0100, Arnd Bergmann wrote:
> A third patch moves the capidrv source from drivers/isdn/capi/
> into the i4l directory.

I see. Why exactly?

Thanks,


Paul Bolle

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-05 13:08         ` Tilman Schmidt
@ 2016-03-07  8:48           ` Paul Bolle
  2016-03-09 22:10             ` Tilman Schmidt
  0 siblings, 1 reply; 28+ messages in thread
From: Paul Bolle @ 2016-03-07  8:48 UTC (permalink / raw)
  To: Tilman Schmidt, Arnd Bergmann
  Cc: Christoph Biedl, linux-arm-kernel, isdn, Greg Kroah-Hartman,
	devel, linux-doc, netdev, Jonathan Corbet, linux-kernel,
	David S. Miller

On za, 2016-03-05 at 14:08 +0100, Tilman Schmidt wrote:
> As a consequence, owners of HiSAX type adapters are in fact stuck with
> the old hisax driver if they want to continue using i4l userspace
> tools.

Do you know whether or not mISDN tools offer functionality comparable to
i4l tools?


Paul Bolle

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-07  8:48           ` Paul Bolle
@ 2016-03-09 22:10             ` Tilman Schmidt
  2016-03-10 10:53               ` isdn
  0 siblings, 1 reply; 28+ messages in thread
From: Tilman Schmidt @ 2016-03-09 22:10 UTC (permalink / raw)
  To: Paul Bolle, Arnd Bergmann
  Cc: Christoph Biedl, linux-arm-kernel, isdn, Greg Kroah-Hartman,
	devel, linux-doc, netdev, Jonathan Corbet, linux-kernel,
	David S. Miller


[-- Attachment #1.1: Type: text/plain, Size: 789 bytes --]

Am 07.03.2016 um 09:48 schrieb Paul Bolle:
> On za, 2016-03-05 at 14:08 +0100, Tilman Schmidt wrote:
>> As a consequence, owners of HiSAX type adapters are in fact stuck with
>> the old hisax driver if they want to continue using i4l userspace
>> tools.
> 
> Do you know whether or not mISDN tools offer functionality comparable to
> i4l tools?

AFAICS they don't. mISDN seems very much geared towards voice use, for
example with Asterisk. The entire topic of ISDN data connections appears
to be missing. I don't see how someone currently using i4l for Internet
dial-in (either client or server side) could migrate to mISDN.

-- 
Tilman Schmidt                              E-Mail: tilman@imap.cc
Bonn, Germany
Nous, on a des fleurs et des bougies pour nous protéger.


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-09 22:10             ` Tilman Schmidt
@ 2016-03-10 10:53               ` isdn
  2016-03-10 12:58                 ` Paul Bolle
  0 siblings, 1 reply; 28+ messages in thread
From: isdn @ 2016-03-10 10:53 UTC (permalink / raw)
  To: Tilman Schmidt, Paul Bolle, Arnd Bergmann
  Cc: Christoph Biedl, linux-arm-kernel, Greg Kroah-Hartman, devel,
	linux-doc, netdev, Jonathan Corbet, linux-kernel,
	David S. Miller

Am 09.03.2016 um 23:10 schrieb Tilman Schmidt:
> Am 07.03.2016 um 09:48 schrieb Paul Bolle:
>> On za, 2016-03-05 at 14:08 +0100, Tilman Schmidt wrote:
>>> As a consequence, owners of HiSAX type adapters are in fact stuck with
>>> the old hisax driver if they want to continue using i4l userspace
>>> tools.
>>
>> Do you know whether or not mISDN tools offer functionality comparable to
>> i4l tools?
> 
> AFAICS they don't. mISDN seems very much geared towards voice use, for
> example with Asterisk. The entire topic of ISDN data connections appears
> to be missing. I don't see how someone currently using i4l for Internet
> dial-in (either client or server side) could migrate to mISDN.
> 

Not true.
mISDN with CAPI support works just fine with pppd and pppdcapiplugin and
the CAPI works for all mISDN HW.

Following I4L services are not supported:

- RAW IP dialin/dialout
- termnal connections via X75 (e.g. dialin via minicom on a remote machine).
- isdndivert

RAW IP was very popular in the nineties because of easy to setup and low
protocol overhead, but very insecure, since only authorization was done
by the phone numbers. This was not a such big issue in the nineties,
since it was hard to get a public line with the allowance to send any
numbers.
Today this is no problem to get the allowance (if you can get a new ISDN
line at all - which is more a problem today).
Terminal connection where only used seldom, more as last resort or for
debuging.
isdndivert was used to manage call redirections, it could be easely
replaced by an mISDN or CAPI application, but here were not so much
requests for it. Since Telekom offers callredirection in their Web
customer center here is no much need anyways.


Karsten

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-10 10:53               ` isdn
@ 2016-03-10 12:58                 ` Paul Bolle
  2016-03-10 16:41                   ` isdn
  0 siblings, 1 reply; 28+ messages in thread
From: Paul Bolle @ 2016-03-10 12:58 UTC (permalink / raw)
  To: isdn
  Cc: Tilman Schmidt, Arnd Bergmann, Christoph Biedl, linux-arm-kernel,
	Greg Kroah-Hartman, devel, linux-doc, netdev, Jonathan Corbet,
	linux-kernel, David S. Miller

Hi Karsten,

On do, 2016-03-10 at 11:53 +0100, isdn@linux-pingi.de wrote:
> mISDN with CAPI support works just fine with pppd and pppdcapiplugin
> and the CAPI works for all mISDN HW.

In the mainline tree the mISDN and CAPI stacks are effectively separate.
Do you perhaps refer to a mISDN + Asterisk + chan-capi setup? (That's
the closest to mISDN with CAPI support that I could find. Did I miss
something?)

Thanks,


Paul Bolle

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-10 12:58                 ` Paul Bolle
@ 2016-03-10 16:41                   ` isdn
  2016-03-11 20:04                     ` Tilman Schmidt
  0 siblings, 1 reply; 28+ messages in thread
From: isdn @ 2016-03-10 16:41 UTC (permalink / raw)
  To: Paul Bolle
  Cc: Tilman Schmidt, Arnd Bergmann, Christoph Biedl, linux-arm-kernel,
	Greg Kroah-Hartman, devel, linux-doc, netdev, Jonathan Corbet,
	linux-kernel, David S. Miller

Am 10.03.2016 um 13:58 schrieb Paul Bolle:
> Hi Karsten,
> 
> On do, 2016-03-10 at 11:53 +0100, isdn@linux-pingi.de wrote:
>> mISDN with CAPI support works just fine with pppd and pppdcapiplugin
>> and the CAPI works for all mISDN HW.
> 
> In the mainline tree the mISDN and CAPI stacks are effectively separate.
> Do you perhaps refer to a mISDN + Asterisk + chan-capi setup? (That's
> the closest to mISDN with CAPI support that I could find. Did I miss
> something?)

http://listserv.isdn4linux.de/pipermail/isdn4linux/2012-January/005580.html

Since 2012 mISDN has a cAPI20 interface, pure in userspace.
Everything is in the capi20 subdirectory of mISDNuser.
The capi20 support need to be enabled with ./configure.

Has nothing to do with Asterisk, but for FAX it is useing the same DSP
library, spandsp.

Best
Karsten Keil

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-10 16:41                   ` isdn
@ 2016-03-11 20:04                     ` Tilman Schmidt
  0 siblings, 0 replies; 28+ messages in thread
From: Tilman Schmidt @ 2016-03-11 20:04 UTC (permalink / raw)
  To: isdn, Paul Bolle
  Cc: Arnd Bergmann, Christoph Biedl, linux-arm-kernel,
	Greg Kroah-Hartman, devel, linux-doc, netdev, Jonathan Corbet,
	linux-kernel, David S. Miller


[-- Attachment #1.1: Type: text/plain, Size: 1297 bytes --]

Am 10.03.2016 um 17:41 schrieb isdn@linux-pingi.de:
> Am 10.03.2016 um 13:58 schrieb Paul Bolle:
>> On do, 2016-03-10 at 11:53 +0100, isdn@linux-pingi.de wrote:
>>> mISDN with CAPI support works just fine with pppd and pppdcapiplugin
>>> and the CAPI works for all mISDN HW.
>>
>> In the mainline tree the mISDN and CAPI stacks are effectively separate.

Correct.

> Since 2012 mISDN has a cAPI20 interface, pure in userspace.

To expand: The documented interface for CAPI 2.0 applications is the
shared library libcapi20.so. Originally that library just interfaced to
the kernel CAPI subsystem through /dev/capi20. Later it was extended to
support different access paths to ISDN devices:
- via /dev/capi20 and kernel CAPI as before
- over the network and a remote CAPI server running rcapid
- over the network to FRITZ!Box router via AVM's CAPI-over-TCP service
- last but not least, via the mISDNcapid daemon and mISDN

Of course this cuts off anything that doesn't pass through libcapi20.so,
including applications that (against the standard) access /dev/capi20
directly but also the capidrv.ko i4l compatibility shim.

-- 
Tilman Schmidt                              E-Mail: tilman@imap.cc
Bonn, Germany
Nous, on a des fleurs et des bougies pour nous protéger.


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-07  6:57       ` Holger Schurig
@ 2016-03-19 10:27         ` Tilman Schmidt
  0 siblings, 0 replies; 28+ messages in thread
From: Tilman Schmidt @ 2016-03-19 10:27 UTC (permalink / raw)
  To: Holger Schurig, Arnd Bergmann
  Cc: linux-arm-kernel, devel, isdn, Jonathan Corbet,
	Greg Kroah-Hartman, linux-doc, linux-kernel, netdev,
	David S. Miller


[-- Attachment #1.1: Type: text/plain, Size: 653 bytes --]

Am 07.03.2016 um 07:57 schrieb Holger Schurig:
> I know that in Germany a good amount of land-line telephone line are
> still using ISDN. [...]
> Especially company line are using ISDN still, and there are some Linux
> programs that act on then, e.g. Asterisk and derived PBX software has
> ISDN support which is actively used.

AFAIK none of these uses I4L anymore. Asterisk dropped I4L support with
version 2 if my memory is correct and nowadays uses CAPI, mISDN or its
own DAHDI interface.

-- 
Tilman Schmidt                              E-Mail: tilman@imap.cc
Bonn, Germany
Nous, on a des fleurs et des bougies pour nous protéger.


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2016-03-02 19:06 ` [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging Arnd Bergmann
                     ` (2 preceding siblings ...)
  2016-03-05  3:19   ` kbuild test robot
@ 2017-01-03 15:24   ` Greg Kroah-Hartman
  2017-01-03 21:19     ` Arnd Bergmann
  3 siblings, 1 reply; 28+ messages in thread
From: Greg Kroah-Hartman @ 2017-01-03 15:24 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Karsten Keil, linux-arm-kernel, Jonathan Corbet, David S. Miller,
	netdev, linux-doc, linux-kernel, devel

On Wed, Mar 02, 2016 at 08:06:46PM +0100, Arnd Bergmann wrote:
> The icn, act2000 and pcbit drivers are all for very old hardware,
> and it is highly unlikely that anyone is actually still using them
> on modern kernels, if at all.
> 
> All three drivers apparently are for hardware that predates PCI
> being the common connector, as they are ISA-only and active
> PCI ISDN cards were widely available in the 1990s.
> 
> Looking through the git logs, it I cannot find any indication of a
> patch to any of these drivers that has been tested on real hardware,
> only cleanups or global API changes.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Acked-by: Karsten Keil <isdn@linux-pingi.de>

This patch got added in the 4.6 kernel release.  As I am now taking
patches for 4.11-rc1, I figure it is time to just delete the
drivers/staging/i4l/ directory now, given that no one has really done
anything with it.  If people show up that wish to maintain it, I'll be
glad to revert it, or if someone really screams in the next week.
Otherwise it's time to just move on :)

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2017-01-03 15:24   ` Greg Kroah-Hartman
@ 2017-01-03 21:19     ` Arnd Bergmann
  2017-01-03 21:54       ` Paul Bolle
  2017-01-05 21:19       ` Greg Kroah-Hartman
  0 siblings, 2 replies; 28+ messages in thread
From: Arnd Bergmann @ 2017-01-03 21:19 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: Greg Kroah-Hartman, devel, Karsten Keil, linux-doc, netdev,
	Jonathan Corbet, linux-kernel, David S. Miller

On Tuesday, January 3, 2017 4:24:36 PM CET Greg Kroah-Hartman wrote:
> On Wed, Mar 02, 2016 at 08:06:46PM +0100, Arnd Bergmann wrote:
> > The icn, act2000 and pcbit drivers are all for very old hardware,
> > and it is highly unlikely that anyone is actually still using them
> > on modern kernels, if at all.
> > 
> > All three drivers apparently are for hardware that predates PCI
> > being the common connector, as they are ISA-only and active
> > PCI ISDN cards were widely available in the 1990s.
> > 
> > Looking through the git logs, it I cannot find any indication of a
> > patch to any of these drivers that has been tested on real hardware,
> > only cleanups or global API changes.
> > 
> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > Acked-by: Karsten Keil <isdn@linux-pingi.de>
> 
> This patch got added in the 4.6 kernel release.  As I am now taking
> patches for 4.11-rc1, I figure it is time to just delete the
> drivers/staging/i4l/ directory now, given that no one has really done
> anything with it.  If people show up that wish to maintain it, I'll be
> glad to revert it, or if someone really screams in the next week.
> Otherwise it's time to just move on 

Sounds good to me. My original series contained four more patches that
I did not post again after there was some concern[1] that we did not
come to a conclusion on:

isdn: gigaset: remove i4l code
isdn: move isdnhdlc out of i4l
isdn: i4l: move hisax driver to staging
isdn: move i4l to staging

I can post those as well, at least I think the first two are helpful
for untangling i4l from the rest of ISDN.  I also still think that
moving hisax and i4l to staging is reasonable given the state of
that code, even if there are a couple of users today.

	Arnd

[1] https://lkml.org/lkml/2016/3/4/762

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2017-01-03 21:19     ` Arnd Bergmann
@ 2017-01-03 21:54       ` Paul Bolle
  2017-01-03 22:25         ` Arnd Bergmann
  2017-01-05 21:19       ` Greg Kroah-Hartman
  1 sibling, 1 reply; 28+ messages in thread
From: Paul Bolle @ 2017-01-03 21:54 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Greg Kroah-Hartman, devel, Karsten Keil, linux-doc, netdev,
	Jonathan Corbet, linux-kernel, David S. Miller, linux-arm-kernel

On Tue, 2017-01-03 at 22:19 +0100, Arnd Bergmann wrote:
> Sounds good to me. My original series contained four more patches that
> I did not post again after there was some concern[1] that we did not
> come to a conclusion on:
> 
> isdn: gigaset: remove i4l code

Let me repeat that I'm fine with a patch that does that.

> isdn: move isdnhdlc out of i4l
> isdn: i4l: move hisax driver to staging
> isdn: move i4l to staging
> 
> I can post those as well, at least I think the first two are helpful
> for untangling i4l from the rest of ISDN.  I also still think that
> moving hisax and i4l to staging is reasonable given the state of
> that code, even if there are a couple of users today.

There are? And even if there are: is there any reason to expect that moving
the rest of i4l to staging will result in anything other than a stream of
checkpatch cleanups?

How often did a bunch of drivers re-enter the tree after being sent to
staging?


Paul Bolle

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2017-01-03 21:54       ` Paul Bolle
@ 2017-01-03 22:25         ` Arnd Bergmann
  2017-01-03 22:57           ` Paul Bolle
  0 siblings, 1 reply; 28+ messages in thread
From: Arnd Bergmann @ 2017-01-03 22:25 UTC (permalink / raw)
  To: Paul Bolle
  Cc: Greg Kroah-Hartman, devel, Karsten Keil, linux-doc, netdev,
	Jonathan Corbet, linux-kernel, David S. Miller, linux-arm-kernel

On Tuesday, January 3, 2017 10:54:19 PM CET Paul Bolle wrote:
> On Tue, 2017-01-03 at 22:19 +0100, Arnd Bergmann wrote:
> > isdn: move isdnhdlc out of i4l
> > isdn: i4l: move hisax driver to staging
> > isdn: move i4l to staging
> > 
> > I can post those as well, at least I think the first two are helpful
> > for untangling i4l from the rest of ISDN.  I also still think that
> > moving hisax and i4l to staging is reasonable given the state of
> > that code, even if there are a couple of users today.
> 
> There are? And even if there are: is there any reason to expect that moving
> the rest of i4l to staging will result in anything other than a stream of
> checkpatch cleanups?

To clarify: Karsten's concern was about the loss of features that are
present in i4l but not in mISDN. There were active users of those features
last year, so I assumed that there are still a few this year. However,
whether any of those users would ever need to move to a 4.11 kernel or
newer is an entirely different question.

As far as I'm concerned, we are totally fine as long as there exists a
longterm supported kernel that has i4l in drivers/staging. If we move
i4l to staging for v4.11 with the intention of removing it after the
2018 longterm release (i.e. after Deutsche Telekom turns off their
ISDN network), that gives us at least until 2020. I assume there will
be at least one older kernel with a longer end-of-support date.

> How often did a bunch of drivers re-enter the tree after being sent to
> staging?

Greg can probably answer that. I'm sure it's either never or very rare.
The only case of removed code coming back later is arch/h8300, which
was removed in 2013 and replaced with a much nicer implementation
in 2015.

	Arnd

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2017-01-03 22:25         ` Arnd Bergmann
@ 2017-01-03 22:57           ` Paul Bolle
  2017-01-03 23:03             ` Arnd Bergmann
  0 siblings, 1 reply; 28+ messages in thread
From: Paul Bolle @ 2017-01-03 22:57 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Greg Kroah-Hartman, devel, Karsten Keil, linux-doc, netdev,
	Jonathan Corbet, linux-kernel, David S. Miller, linux-arm-kernel

On Tue, 2017-01-03 at 23:25 +0100, Arnd Bergmann wrote:
> As far as I'm concerned, we are totally fine as long as there exists a
> longterm supported kernel that has i4l in drivers/staging.

Or in drivers/isdn, right?


Paul Bolle

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2017-01-03 22:57           ` Paul Bolle
@ 2017-01-03 23:03             ` Arnd Bergmann
  0 siblings, 0 replies; 28+ messages in thread
From: Arnd Bergmann @ 2017-01-03 23:03 UTC (permalink / raw)
  To: Paul Bolle
  Cc: Greg Kroah-Hartman, devel, Karsten Keil, linux-doc, netdev,
	Jonathan Corbet, linux-kernel, David S. Miller, linux-arm-kernel

On Tuesday, January 3, 2017 11:57:36 PM CET Paul Bolle wrote:
> On Tue, 2017-01-03 at 23:25 +0100, Arnd Bergmann wrote:
> > As far as I'm concerned, we are totally fine as long as there exists a
> > longterm supported kernel that has i4l in drivers/staging.
> 
> Or in drivers/isdn, right?

Right, I was assuming that we would first move it to staging and then
delete it, both at future points in time that we can debate. With the
existing longterm kernels that have i4l in drivers/isdn, the few remaining
users still have access to a supported kernel release until at least
2020.

	Arnd

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging
  2017-01-03 21:19     ` Arnd Bergmann
  2017-01-03 21:54       ` Paul Bolle
@ 2017-01-05 21:19       ` Greg Kroah-Hartman
  1 sibling, 0 replies; 28+ messages in thread
From: Greg Kroah-Hartman @ 2017-01-05 21:19 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: linux-arm-kernel, devel, Karsten Keil, Jonathan Corbet,
	linux-doc, linux-kernel, netdev, David S. Miller

On Tue, Jan 03, 2017 at 10:19:29PM +0100, Arnd Bergmann wrote:
> On Tuesday, January 3, 2017 4:24:36 PM CET Greg Kroah-Hartman wrote:
> > On Wed, Mar 02, 2016 at 08:06:46PM +0100, Arnd Bergmann wrote:
> > > The icn, act2000 and pcbit drivers are all for very old hardware,
> > > and it is highly unlikely that anyone is actually still using them
> > > on modern kernels, if at all.
> > > 
> > > All three drivers apparently are for hardware that predates PCI
> > > being the common connector, as they are ISA-only and active
> > > PCI ISDN cards were widely available in the 1990s.
> > > 
> > > Looking through the git logs, it I cannot find any indication of a
> > > patch to any of these drivers that has been tested on real hardware,
> > > only cleanups or global API changes.
> > > 
> > > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> > > Acked-by: Karsten Keil <isdn@linux-pingi.de>
> > 
> > This patch got added in the 4.6 kernel release.  As I am now taking
> > patches for 4.11-rc1, I figure it is time to just delete the
> > drivers/staging/i4l/ directory now, given that no one has really done
> > anything with it.  If people show up that wish to maintain it, I'll be
> > glad to revert it, or if someone really screams in the next week.
> > Otherwise it's time to just move on 
> 
> Sounds good to me.

Ok, now deleted!

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2017-01-05 21:19 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-02 19:06 [PATCH 1/2] isdn: icn: remove a #warning Arnd Bergmann
2016-03-02 19:06 ` [PATCH 2/2] isdn: i4l: move active-isdn drivers to staging Arnd Bergmann
2016-03-03  8:30   ` isdn
2016-03-04 15:24     ` Arnd Bergmann
2016-03-04 16:18       ` Paul Bolle
2016-03-04 16:32         ` Arnd Bergmann
2016-03-07  8:33           ` Paul Bolle
2016-03-05 13:08         ` Tilman Schmidt
2016-03-07  8:48           ` Paul Bolle
2016-03-09 22:10             ` Tilman Schmidt
2016-03-10 10:53               ` isdn
2016-03-10 12:58                 ` Paul Bolle
2016-03-10 16:41                   ` isdn
2016-03-11 20:04                     ` Tilman Schmidt
2016-03-04 18:18       ` isdn
2016-03-04 21:00         ` Arnd Bergmann
2016-03-07  6:57       ` Holger Schurig
2016-03-19 10:27         ` Tilman Schmidt
2016-03-03 22:22   ` David Miller
2016-03-03 22:33     ` Greg KH
2016-03-05  3:19   ` kbuild test robot
2017-01-03 15:24   ` Greg Kroah-Hartman
2017-01-03 21:19     ` Arnd Bergmann
2017-01-03 21:54       ` Paul Bolle
2017-01-03 22:25         ` Arnd Bergmann
2017-01-03 22:57           ` Paul Bolle
2017-01-03 23:03             ` Arnd Bergmann
2017-01-05 21:19       ` Greg Kroah-Hartman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).