netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] isdn: deprecate non-mISDN drivers
@ 2019-04-23 15:11 Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 1/5] isdn: gigaset: remove i4l support Arnd Bergmann
                   ` (14 more replies)
  0 siblings, 15 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

When isdn4linux came up in the context of another patch series, I
remembered that we had discussed removing it a while ago.

It turns out that the suggestion from Karsten Keil wa to remove I4L
in 2018 after the last public ISDN networks are shut down. This has
happened now (with a very small number of exceptions), so I guess it's
time to try again.

We currently have three ISDN stacks in the kernel: the original
isdn4linux, the newer CAPI, and finally mISDN stack.

As far as I can tell, anyone using ISDN with mainline kernel drivers in
the past few years uses mISDN, and this is typically used for voice-only
PBX installations that don't require a public network.

The older stacks support additional features for data networks, but those
typically make no sense any more if there is no network to connect to.

My proposal for this time is to kill off isdn4linux entirely, as it seems
to have been unusable for quite a while. This code has been abandoned
for many years and it does get in the way of maintenance.

CAPI in turn is not quite as obsolete, but as I have been unable to find
any users, I would suggest moving it to drivers/staging while we
figure out if anyone is using it. If not, it can then be removed
as well. If it turns out that there are users that are on 5.x kernels
or need to update to them, we can decide to leave parts of it for
longer, or move them back.

If anyone is still using isdn4linux and CAPI with modern kernels, please
speak up now.

      Arnd

[1] https://patchwork.kernel.org/patch/8484861/#17900371

Arnd Bergmann (5):
  isdn: gigaset: remove i4l support
  isdn: remove hisax driver
  isdn: remove isdn4linux
  isdn: hdlc: move into mISDN
  isdn: move capi drivers to staging

 Documentation/isdn/HiSax.cert                 |   96 -
 Documentation/isdn/INTERFACE                  |  759 ----
 Documentation/isdn/INTERFACE.fax              |  163 -
 Documentation/isdn/README                     |  599 ---
 Documentation/isdn/README.FAQ                 |   26 -
 Documentation/isdn/README.HiSax               |  659 ---
 Documentation/isdn/README.audio               |  138 -
 Documentation/isdn/README.concap              |  259 --
 Documentation/isdn/README.diversion           |  127 -
 Documentation/isdn/README.fax                 |   45 -
 Documentation/isdn/README.hfc-pci             |   41 -
 Documentation/isdn/README.syncppp             |   58 -
 Documentation/isdn/README.x25                 |  184 -
 Documentation/isdn/syncPPP.FAQ                |  224 -
 Documentation/process/changes.rst             |   16 +-
 MAINTAINERS                                   |   18 +-
 drivers/isdn/Kconfig                          |   53 -
 drivers/isdn/Makefile                         |    7 -
 drivers/isdn/capi/capidrv.c                   | 2525 -----------
 drivers/isdn/capi/capidrv.h                   |  140 -
 drivers/isdn/divert/Makefile                  |    9 -
 drivers/isdn/divert/divert_init.c             |   82 -
 drivers/isdn/divert/divert_procfs.c           |  336 --
 drivers/isdn/divert/isdn_divert.c             |  846 ----
 drivers/isdn/divert/isdn_divert.h             |  132 -
 drivers/isdn/gigaset/dummyll.c                |   77 -
 drivers/isdn/gigaset/i4l.c                    |  695 ---
 drivers/isdn/hardware/Makefile                |    1 -
 drivers/isdn/hardware/mISDN/Kconfig           |    7 +-
 drivers/isdn/hardware/mISDN/Makefile          |    2 +
 .../isdn/{i4l => hardware/mISDN}/isdnhdlc.c   |    2 +-
 .../isdn/hardware/mISDN/isdnhdlc.h            |    0
 drivers/isdn/hardware/mISDN/netjet.c          |    2 +-
 drivers/isdn/hisax/Kconfig                    |  422 --
 drivers/isdn/hisax/Makefile                   |   60 -
 drivers/isdn/hisax/amd7930_fn.c               |  794 ----
 drivers/isdn/hisax/amd7930_fn.h               |   37 -
 drivers/isdn/hisax/arcofi.c                   |  131 -
 drivers/isdn/hisax/arcofi.h                   |   27 -
 drivers/isdn/hisax/asuscom.c                  |  423 --
 drivers/isdn/hisax/avm_a1.c                   |  307 --
 drivers/isdn/hisax/avm_a1p.c                  |  267 --
 drivers/isdn/hisax/avm_pci.c                  |  904 ----
 drivers/isdn/hisax/avma1_cs.c                 |  162 -
 drivers/isdn/hisax/bkm_a4t.c                  |  358 --
 drivers/isdn/hisax/bkm_a8.c                   |  433 --
 drivers/isdn/hisax/bkm_ax.h                   |  119 -
 drivers/isdn/hisax/callc.c                    | 1792 --------
 drivers/isdn/hisax/config.c                   | 1993 ---------
 drivers/isdn/hisax/diva.c                     | 1282 ------
 drivers/isdn/hisax/elsa.c                     | 1245 ------
 drivers/isdn/hisax/elsa_cs.c                  |  218 -
 drivers/isdn/hisax/elsa_ser.c                 |  659 ---
 drivers/isdn/hisax/enternow_pci.c             |  420 --
 drivers/isdn/hisax/fsm.c                      |  161 -
 drivers/isdn/hisax/fsm.h                      |   61 -
 drivers/isdn/hisax/gazel.c                    |  691 ---
 drivers/isdn/hisax/hfc4s8s_l1.c               | 1584 -------
 drivers/isdn/hisax/hfc4s8s_l1.h               |   89 -
 drivers/isdn/hisax/hfc_2bds0.c                | 1078 -----
 drivers/isdn/hisax/hfc_2bds0.h                |  128 -
 drivers/isdn/hisax/hfc_2bs0.c                 |  591 ---
 drivers/isdn/hisax/hfc_2bs0.h                 |   60 -
 drivers/isdn/hisax/hfc_pci.c                  | 1755 --------
 drivers/isdn/hisax/hfc_pci.h                  |  235 --
 drivers/isdn/hisax/hfc_sx.c                   | 1517 -------
 drivers/isdn/hisax/hfc_sx.h                   |  196 -
 drivers/isdn/hisax/hfc_usb.c                  | 1608 -------
 drivers/isdn/hisax/hfc_usb.h                  |  208 -
 drivers/isdn/hisax/hfcscard.c                 |  261 --
 drivers/isdn/hisax/hisax.h                    | 1352 ------
 drivers/isdn/hisax/hisax_cfg.h                |   66 -
 drivers/isdn/hisax/hisax_debug.h              |   80 -
 drivers/isdn/hisax/hisax_fcpcipnp.c           | 1024 -----
 drivers/isdn/hisax/hisax_fcpcipnp.h           |   58 -
 drivers/isdn/hisax/hisax_if.h                 |   66 -
 drivers/isdn/hisax/hisax_isac.c               |  895 ----
 drivers/isdn/hisax/hisax_isac.h               |   46 -
 drivers/isdn/hisax/hscx.c                     |  277 --
 drivers/isdn/hisax/hscx.h                     |   41 -
 drivers/isdn/hisax/hscx_irq.c                 |  294 --
 drivers/isdn/hisax/icc.c                      |  680 ---
 drivers/isdn/hisax/icc.h                      |   72 -
 drivers/isdn/hisax/ipac.h                     |   29 -
 drivers/isdn/hisax/ipacx.c                    |  913 ----
 drivers/isdn/hisax/ipacx.h                    |  162 -
 drivers/isdn/hisax/isac.c                     |  681 ---
 drivers/isdn/hisax/isac.h                     |   70 -
 drivers/isdn/hisax/isar.c                     | 1910 ---------
 drivers/isdn/hisax/isar.h                     |  222 -
 drivers/isdn/hisax/isdnl1.c                   |  930 ----
 drivers/isdn/hisax/isdnl1.h                   |   32 -
 drivers/isdn/hisax/isdnl2.c                   | 1839 --------
 drivers/isdn/hisax/isdnl2.h                   |   25 -
 drivers/isdn/hisax/isdnl3.c                   |  594 ---
 drivers/isdn/hisax/isdnl3.h                   |   42 -
 drivers/isdn/hisax/isurf.c                    |  305 --
 drivers/isdn/hisax/ix1_micro.c                |  316 --
 drivers/isdn/hisax/jade.c                     |  305 --
 drivers/isdn/hisax/jade.h                     |  134 -
 drivers/isdn/hisax/jade_irq.c                 |  238 --
 drivers/isdn/hisax/l3_1tr6.c                  |  932 ----
 drivers/isdn/hisax/l3_1tr6.h                  |  164 -
 drivers/isdn/hisax/l3dss1.c                   | 3227 --------------
 drivers/isdn/hisax/l3dss1.h                   |  124 -
 drivers/isdn/hisax/l3ni1.c                    | 3182 --------------
 drivers/isdn/hisax/l3ni1.h                    |  136 -
 drivers/isdn/hisax/lmgr.c                     |   50 -
 drivers/isdn/hisax/mic.c                      |  235 --
 drivers/isdn/hisax/netjet.c                   |  985 -----
 drivers/isdn/hisax/netjet.h                   |   69 -
 drivers/isdn/hisax/niccy.c                    |  380 --
 drivers/isdn/hisax/nj_s.c                     |  294 --
 drivers/isdn/hisax/nj_u.c                     |  258 --
 drivers/isdn/hisax/q931.c                     | 1513 -------
 drivers/isdn/hisax/s0box.c                    |  260 --
 drivers/isdn/hisax/saphir.c                   |  296 --
 drivers/isdn/hisax/sedlbauer.c                |  873 ----
 drivers/isdn/hisax/sedlbauer_cs.c             |  209 -
 drivers/isdn/hisax/sportster.c                |  267 --
 drivers/isdn/hisax/st5481.h                   |  529 ---
 drivers/isdn/hisax/st5481_b.c                 |  380 --
 drivers/isdn/hisax/st5481_d.c                 |  780 ----
 drivers/isdn/hisax/st5481_init.c              |  221 -
 drivers/isdn/hisax/st5481_usb.c               |  659 ---
 drivers/isdn/hisax/tei.c                      |  465 --
 drivers/isdn/hisax/teleint.c                  |  334 --
 drivers/isdn/hisax/teles0.c                   |  364 --
 drivers/isdn/hisax/teles3.c                   |  498 ---
 drivers/isdn/hisax/teles_cs.c                 |  200 -
 drivers/isdn/hisax/telespci.c                 |  349 --
 drivers/isdn/hisax/w6692.c                    | 1085 -----
 drivers/isdn/hisax/w6692.h                    |  184 -
 drivers/isdn/i4l/Kconfig                      |  128 -
 drivers/isdn/i4l/Makefile                     |   20 -
 drivers/isdn/i4l/isdn_audio.c                 |  711 ----
 drivers/isdn/i4l/isdn_audio.h                 |   44 -
 drivers/isdn/i4l/isdn_bsdcomp.c               |  930 ----
 drivers/isdn/i4l/isdn_common.c                | 2368 -----------
 drivers/isdn/i4l/isdn_common.h                |   47 -
 drivers/isdn/i4l/isdn_concap.c                |   99 -
 drivers/isdn/i4l/isdn_concap.h                |   11 -
 drivers/isdn/i4l/isdn_net.c                   | 3198 --------------
 drivers/isdn/i4l/isdn_net.h                   |  151 -
 drivers/isdn/i4l/isdn_ppp.c                   | 3053 --------------
 drivers/isdn/i4l/isdn_ppp.h                   |   41 -
 drivers/isdn/i4l/isdn_tty.c                   | 3756 -----------------
 drivers/isdn/i4l/isdn_tty.h                   |  120 -
 drivers/isdn/i4l/isdn_ttyfax.c                | 1123 -----
 drivers/isdn/i4l/isdn_ttyfax.h                |   17 -
 drivers/isdn/i4l/isdn_v110.c                  |  625 ---
 drivers/isdn/i4l/isdn_v110.h                  |   29 -
 drivers/isdn/i4l/isdn_x25iface.c              |  332 --
 drivers/isdn/i4l/isdn_x25iface.h              |   30 -
 drivers/isdn/isdnloop/Makefile                |    5 -
 drivers/isdn/isdnloop/isdnloop.c              | 1528 -------
 drivers/isdn/isdnloop/isdnloop.h              |  112 -
 drivers/staging/Kconfig                       |    2 +
 drivers/staging/Makefile                      |    1 +
 .../staging/isdn/Documentation}/CREDITS       |    0
 .../isdn/Documentation}/INTERFACE.CAPI        |    0
 .../staging/isdn/Documentation}/README.avmb1  |    0
 .../isdn/Documentation}/README.gigaset        |   36 +-
 .../staging/isdn/Documentation}/README.hysdn  |    0
 drivers/staging/isdn/Kconfig                  |   28 +
 drivers/staging/isdn/Makefile                 |    9 +
 drivers/staging/isdn/TODO                     |   22 +
 .../hardware => staging/isdn}/avm/Kconfig     |    0
 .../hardware => staging/isdn}/avm/Makefile    |    2 +
 .../hardware => staging/isdn}/avm/avm_cs.c    |    0
 .../hardware => staging/isdn}/avm/avmcard.h   |    0
 .../{isdn/hardware => staging/isdn}/avm/b1.c  |    0
 .../hardware => staging/isdn}/avm/b1dma.c     |    0
 .../hardware => staging/isdn}/avm/b1isa.c     |    0
 .../hardware => staging/isdn}/avm/b1pci.c     |    0
 .../hardware => staging/isdn}/avm/b1pcmcia.c  |    0
 .../{isdn/hardware => staging/isdn}/avm/c4.c  |    0
 .../hardware => staging/isdn}/avm/t1isa.c     |    0
 .../hardware => staging/isdn}/avm/t1pci.c     |    0
 drivers/{ => staging}/isdn/capi/Kconfig       |    9 -
 drivers/{ => staging}/isdn/capi/Makefile      |    2 +
 drivers/{ => staging}/isdn/capi/capi.c        |    0
 drivers/{ => staging}/isdn/capi/capilib.c     |    0
 drivers/{ => staging}/isdn/capi/capiutil.c    |    0
 drivers/{ => staging}/isdn/capi/kcapi.c       |    0
 drivers/{ => staging}/isdn/capi/kcapi.h       |    0
 drivers/{ => staging}/isdn/capi/kcapi_proc.c  |    0
 drivers/{ => staging}/isdn/gigaset/Kconfig    |   22 +-
 drivers/{ => staging}/isdn/gigaset/Makefile   |    7 +-
 .../{ => staging}/isdn/gigaset/asyncdata.c    |    0
 .../{ => staging}/isdn/gigaset/bas-gigaset.c  |    0
 drivers/{ => staging}/isdn/gigaset/capi.c     |    0
 drivers/{ => staging}/isdn/gigaset/common.c   |    0
 drivers/{ => staging}/isdn/gigaset/ev-layer.c |    0
 drivers/{ => staging}/isdn/gigaset/gigaset.h  |    0
 .../{ => staging}/isdn/gigaset/interface.c    |    0
 drivers/{ => staging}/isdn/gigaset/isocdata.c |    0
 drivers/{ => staging}/isdn/gigaset/proc.c     |    0
 .../{ => staging}/isdn/gigaset/ser-gigaset.c  |    0
 .../{ => staging}/isdn/gigaset/usb-gigaset.c  |    0
 drivers/{ => staging}/isdn/hysdn/Kconfig      |    0
 drivers/{ => staging}/isdn/hysdn/Makefile     |    2 +
 drivers/{ => staging}/isdn/hysdn/boardergo.c  |    0
 drivers/{ => staging}/isdn/hysdn/boardergo.h  |    0
 drivers/{ => staging}/isdn/hysdn/hycapi.c     |    0
 drivers/{ => staging}/isdn/hysdn/hysdn_boot.c |    0
 drivers/{ => staging}/isdn/hysdn/hysdn_defs.h |    0
 drivers/{ => staging}/isdn/hysdn/hysdn_init.c |    0
 drivers/{ => staging}/isdn/hysdn/hysdn_net.c  |    0
 drivers/{ => staging}/isdn/hysdn/hysdn_pof.h  |    0
 .../{ => staging}/isdn/hysdn/hysdn_procconf.c |    0
 .../{ => staging}/isdn/hysdn/hysdn_proclog.c  |    0
 .../{ => staging}/isdn/hysdn/hysdn_sched.c    |    0
 drivers/{ => staging}/isdn/hysdn/ince1pc.h    |    0
 .../staging/isdn/include}/linux/b1lli.h       |    0
 .../staging/isdn/include}/linux/gigaset_dev.h |    0
 .../isdn/include}/linux/isdn/capilli.h        |    0
 .../isdn/include}/linux/isdn/capiutil.h       |    0
 .../isdn/include}/uapi/linux/isdn/capicmd.h   |    0
 include/linux/concap.h                        |  112 -
 include/linux/isdn.h                          |  473 ---
 include/linux/isdn_divertif.h                 |   35 -
 include/linux/isdn_ppp.h                      |  194 -
 include/linux/isdnif.h                        |  505 ---
 include/linux/wanrouter.h                     |   11 -
 include/uapi/linux/isdn.h                     |  144 -
 include/uapi/linux/isdn_divertif.h            |   31 -
 include/uapi/linux/isdn_ppp.h                 |   68 -
 include/uapi/linux/isdnif.h                   |   57 -
 include/uapi/linux/wanrouter.h                |   18 -
 230 files changed, 102 insertions(+), 83970 deletions(-)
 delete mode 100644 Documentation/isdn/HiSax.cert
 delete mode 100644 Documentation/isdn/INTERFACE
 delete mode 100644 Documentation/isdn/INTERFACE.fax
 delete mode 100644 Documentation/isdn/README
 delete mode 100644 Documentation/isdn/README.FAQ
 delete mode 100644 Documentation/isdn/README.HiSax
 delete mode 100644 Documentation/isdn/README.audio
 delete mode 100644 Documentation/isdn/README.concap
 delete mode 100644 Documentation/isdn/README.diversion
 delete mode 100644 Documentation/isdn/README.fax
 delete mode 100644 Documentation/isdn/README.hfc-pci
 delete mode 100644 Documentation/isdn/README.syncppp
 delete mode 100644 Documentation/isdn/README.x25
 delete mode 100644 Documentation/isdn/syncPPP.FAQ
 delete mode 100644 drivers/isdn/capi/capidrv.c
 delete mode 100644 drivers/isdn/capi/capidrv.h
 delete mode 100644 drivers/isdn/divert/Makefile
 delete mode 100644 drivers/isdn/divert/divert_init.c
 delete mode 100644 drivers/isdn/divert/divert_procfs.c
 delete mode 100644 drivers/isdn/divert/isdn_divert.c
 delete mode 100644 drivers/isdn/divert/isdn_divert.h
 delete mode 100644 drivers/isdn/gigaset/dummyll.c
 delete mode 100644 drivers/isdn/gigaset/i4l.c
 rename drivers/isdn/{i4l => hardware/mISDN}/isdnhdlc.c (99%)
 rename include/linux/isdn/hdlc.h => drivers/isdn/hardware/mISDN/isdnhdlc.h (100%)
 delete mode 100644 drivers/isdn/hisax/Kconfig
 delete mode 100644 drivers/isdn/hisax/Makefile
 delete mode 100644 drivers/isdn/hisax/amd7930_fn.c
 delete mode 100644 drivers/isdn/hisax/amd7930_fn.h
 delete mode 100644 drivers/isdn/hisax/arcofi.c
 delete mode 100644 drivers/isdn/hisax/arcofi.h
 delete mode 100644 drivers/isdn/hisax/asuscom.c
 delete mode 100644 drivers/isdn/hisax/avm_a1.c
 delete mode 100644 drivers/isdn/hisax/avm_a1p.c
 delete mode 100644 drivers/isdn/hisax/avm_pci.c
 delete mode 100644 drivers/isdn/hisax/avma1_cs.c
 delete mode 100644 drivers/isdn/hisax/bkm_a4t.c
 delete mode 100644 drivers/isdn/hisax/bkm_a8.c
 delete mode 100644 drivers/isdn/hisax/bkm_ax.h
 delete mode 100644 drivers/isdn/hisax/callc.c
 delete mode 100644 drivers/isdn/hisax/config.c
 delete mode 100644 drivers/isdn/hisax/diva.c
 delete mode 100644 drivers/isdn/hisax/elsa.c
 delete mode 100644 drivers/isdn/hisax/elsa_cs.c
 delete mode 100644 drivers/isdn/hisax/elsa_ser.c
 delete mode 100644 drivers/isdn/hisax/enternow_pci.c
 delete mode 100644 drivers/isdn/hisax/fsm.c
 delete mode 100644 drivers/isdn/hisax/fsm.h
 delete mode 100644 drivers/isdn/hisax/gazel.c
 delete mode 100644 drivers/isdn/hisax/hfc4s8s_l1.c
 delete mode 100644 drivers/isdn/hisax/hfc4s8s_l1.h
 delete mode 100644 drivers/isdn/hisax/hfc_2bds0.c
 delete mode 100644 drivers/isdn/hisax/hfc_2bds0.h
 delete mode 100644 drivers/isdn/hisax/hfc_2bs0.c
 delete mode 100644 drivers/isdn/hisax/hfc_2bs0.h
 delete mode 100644 drivers/isdn/hisax/hfc_pci.c
 delete mode 100644 drivers/isdn/hisax/hfc_pci.h
 delete mode 100644 drivers/isdn/hisax/hfc_sx.c
 delete mode 100644 drivers/isdn/hisax/hfc_sx.h
 delete mode 100644 drivers/isdn/hisax/hfc_usb.c
 delete mode 100644 drivers/isdn/hisax/hfc_usb.h
 delete mode 100644 drivers/isdn/hisax/hfcscard.c
 delete mode 100644 drivers/isdn/hisax/hisax.h
 delete mode 100644 drivers/isdn/hisax/hisax_cfg.h
 delete mode 100644 drivers/isdn/hisax/hisax_debug.h
 delete mode 100644 drivers/isdn/hisax/hisax_fcpcipnp.c
 delete mode 100644 drivers/isdn/hisax/hisax_fcpcipnp.h
 delete mode 100644 drivers/isdn/hisax/hisax_if.h
 delete mode 100644 drivers/isdn/hisax/hisax_isac.c
 delete mode 100644 drivers/isdn/hisax/hisax_isac.h
 delete mode 100644 drivers/isdn/hisax/hscx.c
 delete mode 100644 drivers/isdn/hisax/hscx.h
 delete mode 100644 drivers/isdn/hisax/hscx_irq.c
 delete mode 100644 drivers/isdn/hisax/icc.c
 delete mode 100644 drivers/isdn/hisax/icc.h
 delete mode 100644 drivers/isdn/hisax/ipac.h
 delete mode 100644 drivers/isdn/hisax/ipacx.c
 delete mode 100644 drivers/isdn/hisax/ipacx.h
 delete mode 100644 drivers/isdn/hisax/isac.c
 delete mode 100644 drivers/isdn/hisax/isac.h
 delete mode 100644 drivers/isdn/hisax/isar.c
 delete mode 100644 drivers/isdn/hisax/isar.h
 delete mode 100644 drivers/isdn/hisax/isdnl1.c
 delete mode 100644 drivers/isdn/hisax/isdnl1.h
 delete mode 100644 drivers/isdn/hisax/isdnl2.c
 delete mode 100644 drivers/isdn/hisax/isdnl2.h
 delete mode 100644 drivers/isdn/hisax/isdnl3.c
 delete mode 100644 drivers/isdn/hisax/isdnl3.h
 delete mode 100644 drivers/isdn/hisax/isurf.c
 delete mode 100644 drivers/isdn/hisax/ix1_micro.c
 delete mode 100644 drivers/isdn/hisax/jade.c
 delete mode 100644 drivers/isdn/hisax/jade.h
 delete mode 100644 drivers/isdn/hisax/jade_irq.c
 delete mode 100644 drivers/isdn/hisax/l3_1tr6.c
 delete mode 100644 drivers/isdn/hisax/l3_1tr6.h
 delete mode 100644 drivers/isdn/hisax/l3dss1.c
 delete mode 100644 drivers/isdn/hisax/l3dss1.h
 delete mode 100644 drivers/isdn/hisax/l3ni1.c
 delete mode 100644 drivers/isdn/hisax/l3ni1.h
 delete mode 100644 drivers/isdn/hisax/lmgr.c
 delete mode 100644 drivers/isdn/hisax/mic.c
 delete mode 100644 drivers/isdn/hisax/netjet.c
 delete mode 100644 drivers/isdn/hisax/netjet.h
 delete mode 100644 drivers/isdn/hisax/niccy.c
 delete mode 100644 drivers/isdn/hisax/nj_s.c
 delete mode 100644 drivers/isdn/hisax/nj_u.c
 delete mode 100644 drivers/isdn/hisax/q931.c
 delete mode 100644 drivers/isdn/hisax/s0box.c
 delete mode 100644 drivers/isdn/hisax/saphir.c
 delete mode 100644 drivers/isdn/hisax/sedlbauer.c
 delete mode 100644 drivers/isdn/hisax/sedlbauer_cs.c
 delete mode 100644 drivers/isdn/hisax/sportster.c
 delete mode 100644 drivers/isdn/hisax/st5481.h
 delete mode 100644 drivers/isdn/hisax/st5481_b.c
 delete mode 100644 drivers/isdn/hisax/st5481_d.c
 delete mode 100644 drivers/isdn/hisax/st5481_init.c
 delete mode 100644 drivers/isdn/hisax/st5481_usb.c
 delete mode 100644 drivers/isdn/hisax/tei.c
 delete mode 100644 drivers/isdn/hisax/teleint.c
 delete mode 100644 drivers/isdn/hisax/teles0.c
 delete mode 100644 drivers/isdn/hisax/teles3.c
 delete mode 100644 drivers/isdn/hisax/teles_cs.c
 delete mode 100644 drivers/isdn/hisax/telespci.c
 delete mode 100644 drivers/isdn/hisax/w6692.c
 delete mode 100644 drivers/isdn/hisax/w6692.h
 delete mode 100644 drivers/isdn/i4l/Kconfig
 delete mode 100644 drivers/isdn/i4l/Makefile
 delete mode 100644 drivers/isdn/i4l/isdn_audio.c
 delete mode 100644 drivers/isdn/i4l/isdn_audio.h
 delete mode 100644 drivers/isdn/i4l/isdn_bsdcomp.c
 delete mode 100644 drivers/isdn/i4l/isdn_common.c
 delete mode 100644 drivers/isdn/i4l/isdn_common.h
 delete mode 100644 drivers/isdn/i4l/isdn_concap.c
 delete mode 100644 drivers/isdn/i4l/isdn_concap.h
 delete mode 100644 drivers/isdn/i4l/isdn_net.c
 delete mode 100644 drivers/isdn/i4l/isdn_net.h
 delete mode 100644 drivers/isdn/i4l/isdn_ppp.c
 delete mode 100644 drivers/isdn/i4l/isdn_ppp.h
 delete mode 100644 drivers/isdn/i4l/isdn_tty.c
 delete mode 100644 drivers/isdn/i4l/isdn_tty.h
 delete mode 100644 drivers/isdn/i4l/isdn_ttyfax.c
 delete mode 100644 drivers/isdn/i4l/isdn_ttyfax.h
 delete mode 100644 drivers/isdn/i4l/isdn_v110.c
 delete mode 100644 drivers/isdn/i4l/isdn_v110.h
 delete mode 100644 drivers/isdn/i4l/isdn_x25iface.c
 delete mode 100644 drivers/isdn/i4l/isdn_x25iface.h
 delete mode 100644 drivers/isdn/isdnloop/Makefile
 delete mode 100644 drivers/isdn/isdnloop/isdnloop.c
 delete mode 100644 drivers/isdn/isdnloop/isdnloop.h
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/CREDITS (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/INTERFACE.CAPI (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.avmb1 (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.gigaset (91%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.hysdn (100%)
 create mode 100644 drivers/staging/isdn/Kconfig
 create mode 100644 drivers/staging/isdn/Makefile
 create mode 100644 drivers/staging/isdn/TODO
 rename drivers/{isdn/hardware => staging/isdn}/avm/Kconfig (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/Makefile (86%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/avm_cs.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/avmcard.h (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1dma.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1isa.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1pci.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1pcmcia.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/c4.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/t1isa.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/t1pci.c (100%)
 rename drivers/{ => staging}/isdn/capi/Kconfig (78%)
 rename drivers/{ => staging}/isdn/capi/Makefile (83%)
 rename drivers/{ => staging}/isdn/capi/capi.c (100%)
 rename drivers/{ => staging}/isdn/capi/capilib.c (100%)
 rename drivers/{ => staging}/isdn/capi/capiutil.c (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi.c (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi.h (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi_proc.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/Kconfig (72%)
 rename drivers/{ => staging}/isdn/gigaset/Makefile (62%)
 rename drivers/{ => staging}/isdn/gigaset/asyncdata.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/bas-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/capi.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/common.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/ev-layer.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/gigaset.h (100%)
 rename drivers/{ => staging}/isdn/gigaset/interface.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/isocdata.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/proc.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/ser-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/usb-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/Kconfig (100%)
 rename drivers/{ => staging}/isdn/hysdn/Makefile (79%)
 rename drivers/{ => staging}/isdn/hysdn/boardergo.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/boardergo.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hycapi.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_boot.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_defs.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_init.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_net.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_pof.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_procconf.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_proclog.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_sched.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/ince1pc.h (100%)
 rename {include/uapi => drivers/staging/isdn/include}/linux/b1lli.h (100%)
 rename {include/uapi => drivers/staging/isdn/include}/linux/gigaset_dev.h (100%)
 rename {include => drivers/staging/isdn/include}/linux/isdn/capilli.h (100%)
 rename {include => drivers/staging/isdn/include}/linux/isdn/capiutil.h (100%)
 rename {include => drivers/staging/isdn/include}/uapi/linux/isdn/capicmd.h (100%)
 delete mode 100644 include/linux/concap.h
 delete mode 100644 include/linux/isdn.h
 delete mode 100644 include/linux/isdn_divertif.h
 delete mode 100644 include/linux/isdn_ppp.h
 delete mode 100644 include/linux/isdnif.h
 delete mode 100644 include/linux/wanrouter.h
 delete mode 100644 include/uapi/linux/isdn.h
 delete mode 100644 include/uapi/linux/isdn_divertif.h
 delete mode 100644 include/uapi/linux/isdn_ppp.h
 delete mode 100644 include/uapi/linux/isdnif.h
 delete mode 100644 include/uapi/linux/wanrouter.h

-- 
2.20.0


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

* [PATCH 1/5] isdn: gigaset: remove i4l support
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
@ 2019-04-23 15:11 ` Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 2/5] isdn: remove hisax driver Arnd Bergmann
                   ` (13 subsequent siblings)
  14 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

isdn4linux is getting removed, and the gigaset driver can still
use the CAPI support, so this can all go away.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 Documentation/isdn/README.gigaset |  36 +-
 drivers/isdn/gigaset/Kconfig      |  22 +-
 drivers/isdn/gigaset/Makefile     |   5 +-
 drivers/isdn/gigaset/dummyll.c    |  77 ----
 drivers/isdn/gigaset/i4l.c        | 695 ------------------------------
 5 files changed, 10 insertions(+), 825 deletions(-)
 delete mode 100644 drivers/isdn/gigaset/dummyll.c
 delete mode 100644 drivers/isdn/gigaset/i4l.c

diff --git a/Documentation/isdn/README.gigaset b/Documentation/isdn/README.gigaset
index 9b1ce277ca3d..f6184b637182 100644
--- a/Documentation/isdn/README.gigaset
+++ b/Documentation/isdn/README.gigaset
@@ -48,9 +48,8 @@ GigaSet 307x Device Driver
 
 1.2. Software
      --------
-     The driver works with the Kernel CAPI subsystem as well as the old
-     ISDN4Linux subsystem, so it can be used with any software which is able
-     to use CAPI 2.0 or ISDN4Linux for ISDN connections (voice or data).
+     The driver works with the Kernel CAPI subsystem and can be used with any
+     software which is able to use CAPI 2.0 for ISDN connections (voice or data).
 
      There are some user space tools available at
      https://sourceforge.net/projects/gigaset307x/
@@ -92,7 +91,7 @@ GigaSet 307x Device Driver
 	gigaset	 	debug	   debug level (see section 3.2.)
 
 			startmode  initial operation mode (see section 2.5.):
-	bas_gigaset )		   1=ISDN4linux/CAPI (default), 0=Unimodem
+	bas_gigaset )		   1=CAPI (default), 0=Unimodem
 	ser_gigaset )
 	usb_gigaset )	cidmode    initial Call-ID mode setting (see section
 				   2.5.): 1=on (default), 0=off
@@ -154,18 +153,10 @@ GigaSet 307x Device Driver
 
 2.3. CAPI
      ----
-     If the driver is compiled with CAPI support (kernel configuration option
-     GIGASET_CAPI) the devices will show up as CAPI controllers as soon as the
-     corresponding driver module is loaded, and can then be used with CAPI 2.0
-     kernel and user space applications. For user space access, the module
-     capi.ko must be loaded.
-
-     Legacy ISDN4Linux applications are supported via the capidrv
-     compatibility driver. The kernel module capidrv.ko must be loaded
-     explicitly with the command
-        modprobe capidrv
-     if needed, and cannot be unloaded again without unloading the driver
-     first. (These are limitations of capidrv.)
+     The devices will show up as CAPI controllers as soon as the
+     corresponding driver module is loaded, and can then be used with
+     CAPI 2.0 kernel and user space applications. For user space access,
+     the module capi.ko must be loaded.
 
      Most distributions handle loading and unloading of the various CAPI
      modules automatically via the command capiinit(1) from the capi4k-utils
@@ -173,16 +164,6 @@ GigaSet 307x Device Driver
      Gigaset drivers because it doesn't support more than one module per
      driver.
 
-2.4. ISDN4Linux
-     ----------
-     If the driver is compiled without CAPI support (native ISDN4Linux
-     variant), it registers the device with the legacy ISDN4Linux subsystem
-     after loading the module. It can then be used with ISDN4Linux
-     applications only. Most distributions provide some configuration utility
-     for setting up that subsystem. Otherwise you can use some HOWTOs like
-         http://www.linuxhaven.de/dlhp/HOWTO/DE-ISDN-HOWTO-5.html
-
-
 2.5. Unimodem mode
      -------------
      In this mode the device works like a modem connected to a serial port
@@ -281,8 +262,7 @@ GigaSet 307x Device Driver
      number. Dialing "***" (three asterisks) calls all extensions
      simultaneously (global call).
 
-     This holds for both CAPI 2.0 and ISDN4Linux applications. Unimodem mode
-     does not support internal calls.
+     Unimodem mode does not support internal calls.
 
 2.8. Unregistered Wireless Devices (M101/M105)
      -----------------------------------------
diff --git a/drivers/isdn/gigaset/Kconfig b/drivers/isdn/gigaset/Kconfig
index 83f62b8d82b5..805b5d034feb 100644
--- a/drivers/isdn/gigaset/Kconfig
+++ b/drivers/isdn/gigaset/Kconfig
@@ -1,6 +1,7 @@
 menuconfig ISDN_DRV_GIGASET
 	tristate "Siemens Gigaset support"
 	depends on TTY
+	depends on ISDN_CAPI
 	select CRC_CCITT
 	select BITREVERSE
 	help
@@ -17,27 +18,6 @@ menuconfig ISDN_DRV_GIGASET
 
 if ISDN_DRV_GIGASET
 
-config GIGASET_CAPI
-	bool "Gigaset CAPI support"
-	depends on ISDN_CAPI='y'||(ISDN_CAPI='m'&&ISDN_DRV_GIGASET='m')
-	default 'y'
-	help
-	  Build the Gigaset driver as a CAPI 2.0 driver interfacing with
-	  the Kernel CAPI subsystem. To use it with the old ISDN4Linux
-	  subsystem you'll have to enable the capidrv glue driver.
-	  (select ISDN_CAPI_CAPIDRV.)
-	  Say N to build the old native ISDN4Linux variant.
-	  If unsure, say Y.
-
-config GIGASET_I4L
-	bool
-	depends on ISDN_I4L='y'||(ISDN_I4L='m'&&ISDN_DRV_GIGASET='m')
-	default !GIGASET_CAPI
-
-config GIGASET_DUMMYLL
-	bool
-	default !GIGASET_CAPI&&!GIGASET_I4L
-
 config GIGASET_BASE
 	tristate "Gigaset base station support"
 	depends on USB
diff --git a/drivers/isdn/gigaset/Makefile b/drivers/isdn/gigaset/Makefile
index ac45a2739f56..f8ba14735bf1 100644
--- a/drivers/isdn/gigaset/Makefile
+++ b/drivers/isdn/gigaset/Makefile
@@ -1,8 +1,5 @@
 # SPDX-License-Identifier: GPL-2.0
-gigaset-y := common.o interface.o proc.o ev-layer.o asyncdata.o
-gigaset-$(CONFIG_GIGASET_CAPI) += capi.o
-gigaset-$(CONFIG_GIGASET_I4L) += i4l.o
-gigaset-$(CONFIG_GIGASET_DUMMYLL) += dummyll.o
+gigaset-y := common.o interface.o proc.o ev-layer.o asyncdata.o capi.o
 usb_gigaset-y := usb-gigaset.o
 ser_gigaset-y := ser-gigaset.o
 bas_gigaset-y := bas-gigaset.o isocdata.o
diff --git a/drivers/isdn/gigaset/dummyll.c b/drivers/isdn/gigaset/dummyll.c
deleted file mode 100644
index 570c2d53b84e..000000000000
diff --git a/drivers/isdn/gigaset/i4l.c b/drivers/isdn/gigaset/i4l.c
deleted file mode 100644
index b5b389e95edd..000000000000
-- 
2.20.0


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

* [PATCH 2/5] isdn: remove hisax driver
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 1/5] isdn: gigaset: remove i4l support Arnd Bergmann
@ 2019-04-23 15:11 ` Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 3/5] isdn: remove isdn4linux Arnd Bergmann
                   ` (12 subsequent siblings)
  14 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

With the decline of ISDN, this seems to have become completely
obsolete, and even in the past years, all remaining users appear
to have used mISDN instead.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 Documentation/isdn/HiSax.cert       |   96 -
 Documentation/isdn/README.HiSax     |  659 ------
 drivers/isdn/Makefile               |    1 -
 drivers/isdn/hisax/Kconfig          |  422 ----
 drivers/isdn/hisax/Makefile         |   60 -
 drivers/isdn/hisax/amd7930_fn.c     |  794 -------
 drivers/isdn/hisax/amd7930_fn.h     |   37 -
 drivers/isdn/hisax/arcofi.c         |  131 --
 drivers/isdn/hisax/arcofi.h         |   27 -
 drivers/isdn/hisax/asuscom.c        |  423 ----
 drivers/isdn/hisax/avm_a1.c         |  307 ---
 drivers/isdn/hisax/avm_a1p.c        |  267 ---
 drivers/isdn/hisax/avm_pci.c        |  904 --------
 drivers/isdn/hisax/avma1_cs.c       |  162 --
 drivers/isdn/hisax/bkm_a4t.c        |  358 ---
 drivers/isdn/hisax/bkm_a8.c         |  433 ----
 drivers/isdn/hisax/bkm_ax.h         |  119 -
 drivers/isdn/hisax/callc.c          | 1792 ---------------
 drivers/isdn/hisax/config.c         | 1993 -----------------
 drivers/isdn/hisax/diva.c           | 1282 -----------
 drivers/isdn/hisax/elsa.c           | 1245 -----------
 drivers/isdn/hisax/elsa_cs.c        |  218 --
 drivers/isdn/hisax/elsa_ser.c       |  659 ------
 drivers/isdn/hisax/enternow_pci.c   |  420 ----
 drivers/isdn/hisax/fsm.c            |  161 --
 drivers/isdn/hisax/fsm.h            |   61 -
 drivers/isdn/hisax/gazel.c          |  691 ------
 drivers/isdn/hisax/hfc4s8s_l1.c     | 1584 -------------
 drivers/isdn/hisax/hfc4s8s_l1.h     |   89 -
 drivers/isdn/hisax/hfc_2bds0.c      | 1078 ---------
 drivers/isdn/hisax/hfc_2bds0.h      |  128 --
 drivers/isdn/hisax/hfc_2bs0.c       |  591 -----
 drivers/isdn/hisax/hfc_2bs0.h       |   60 -
 drivers/isdn/hisax/hfc_pci.c        | 1755 ---------------
 drivers/isdn/hisax/hfc_pci.h        |  235 --
 drivers/isdn/hisax/hfc_sx.c         | 1517 -------------
 drivers/isdn/hisax/hfc_sx.h         |  196 --
 drivers/isdn/hisax/hfc_usb.c        | 1608 -------------
 drivers/isdn/hisax/hfc_usb.h        |  208 --
 drivers/isdn/hisax/hfcscard.c       |  261 ---
 drivers/isdn/hisax/hisax.h          | 1352 -----------
 drivers/isdn/hisax/hisax_cfg.h      |   66 -
 drivers/isdn/hisax/hisax_debug.h    |   80 -
 drivers/isdn/hisax/hisax_fcpcipnp.c | 1024 ---------
 drivers/isdn/hisax/hisax_fcpcipnp.h |   58 -
 drivers/isdn/hisax/hisax_if.h       |   66 -
 drivers/isdn/hisax/hisax_isac.c     |  895 --------
 drivers/isdn/hisax/hisax_isac.h     |   46 -
 drivers/isdn/hisax/hscx.c           |  277 ---
 drivers/isdn/hisax/hscx.h           |   41 -
 drivers/isdn/hisax/hscx_irq.c       |  294 ---
 drivers/isdn/hisax/icc.c            |  680 ------
 drivers/isdn/hisax/icc.h            |   72 -
 drivers/isdn/hisax/ipac.h           |   29 -
 drivers/isdn/hisax/ipacx.c          |  913 --------
 drivers/isdn/hisax/ipacx.h          |  162 --
 drivers/isdn/hisax/isac.c           |  681 ------
 drivers/isdn/hisax/isac.h           |   70 -
 drivers/isdn/hisax/isar.c           | 1910 ----------------
 drivers/isdn/hisax/isar.h           |  222 --
 drivers/isdn/hisax/isdnl1.c         |  930 --------
 drivers/isdn/hisax/isdnl1.h         |   32 -
 drivers/isdn/hisax/isdnl2.c         | 1839 ---------------
 drivers/isdn/hisax/isdnl2.h         |   25 -
 drivers/isdn/hisax/isdnl3.c         |  594 -----
 drivers/isdn/hisax/isdnl3.h         |   42 -
 drivers/isdn/hisax/isurf.c          |  305 ---
 drivers/isdn/hisax/ix1_micro.c      |  316 ---
 drivers/isdn/hisax/jade.c           |  305 ---
 drivers/isdn/hisax/jade.h           |  134 --
 drivers/isdn/hisax/jade_irq.c       |  238 --
 drivers/isdn/hisax/l3_1tr6.c        |  932 --------
 drivers/isdn/hisax/l3_1tr6.h        |  164 --
 drivers/isdn/hisax/l3dss1.c         | 3227 ---------------------------
 drivers/isdn/hisax/l3dss1.h         |  124 -
 drivers/isdn/hisax/l3ni1.c          | 3182 --------------------------
 drivers/isdn/hisax/l3ni1.h          |  136 --
 drivers/isdn/hisax/lmgr.c           |   50 -
 drivers/isdn/hisax/mic.c            |  235 --
 drivers/isdn/hisax/netjet.c         |  985 --------
 drivers/isdn/hisax/netjet.h         |   69 -
 drivers/isdn/hisax/niccy.c          |  380 ----
 drivers/isdn/hisax/nj_s.c           |  294 ---
 drivers/isdn/hisax/nj_u.c           |  258 ---
 drivers/isdn/hisax/q931.c           | 1513 -------------
 drivers/isdn/hisax/s0box.c          |  260 ---
 drivers/isdn/hisax/saphir.c         |  296 ---
 drivers/isdn/hisax/sedlbauer.c      |  873 --------
 drivers/isdn/hisax/sedlbauer_cs.c   |  209 --
 drivers/isdn/hisax/sportster.c      |  267 ---
 drivers/isdn/hisax/st5481.h         |  529 -----
 drivers/isdn/hisax/st5481_b.c       |  380 ----
 drivers/isdn/hisax/st5481_d.c       |  780 -------
 drivers/isdn/hisax/st5481_init.c    |  221 --
 drivers/isdn/hisax/st5481_usb.c     |  659 ------
 drivers/isdn/hisax/tei.c            |  465 ----
 drivers/isdn/hisax/teleint.c        |  334 ---
 drivers/isdn/hisax/teles0.c         |  364 ---
 drivers/isdn/hisax/teles3.c         |  498 -----
 drivers/isdn/hisax/teles_cs.c       |  200 --
 drivers/isdn/hisax/telespci.c       |  349 ---
 drivers/isdn/hisax/w6692.c          | 1085 ---------
 drivers/isdn/hisax/w6692.h          |  184 --
 drivers/isdn/i4l/Kconfig            |    2 -
 104 files changed, 56234 deletions(-)
 delete mode 100644 Documentation/isdn/HiSax.cert
 delete mode 100644 Documentation/isdn/README.HiSax
 delete mode 100644 drivers/isdn/hisax/Kconfig
 delete mode 100644 drivers/isdn/hisax/Makefile
 delete mode 100644 drivers/isdn/hisax/amd7930_fn.c
 delete mode 100644 drivers/isdn/hisax/amd7930_fn.h
 delete mode 100644 drivers/isdn/hisax/arcofi.c
 delete mode 100644 drivers/isdn/hisax/arcofi.h
 delete mode 100644 drivers/isdn/hisax/asuscom.c
 delete mode 100644 drivers/isdn/hisax/avm_a1.c
 delete mode 100644 drivers/isdn/hisax/avm_a1p.c
 delete mode 100644 drivers/isdn/hisax/avm_pci.c
 delete mode 100644 drivers/isdn/hisax/avma1_cs.c
 delete mode 100644 drivers/isdn/hisax/bkm_a4t.c
 delete mode 100644 drivers/isdn/hisax/bkm_a8.c
 delete mode 100644 drivers/isdn/hisax/bkm_ax.h
 delete mode 100644 drivers/isdn/hisax/callc.c
 delete mode 100644 drivers/isdn/hisax/config.c
 delete mode 100644 drivers/isdn/hisax/diva.c
 delete mode 100644 drivers/isdn/hisax/elsa.c
 delete mode 100644 drivers/isdn/hisax/elsa_cs.c
 delete mode 100644 drivers/isdn/hisax/elsa_ser.c
 delete mode 100644 drivers/isdn/hisax/enternow_pci.c
 delete mode 100644 drivers/isdn/hisax/fsm.c
 delete mode 100644 drivers/isdn/hisax/fsm.h
 delete mode 100644 drivers/isdn/hisax/gazel.c
 delete mode 100644 drivers/isdn/hisax/hfc4s8s_l1.c
 delete mode 100644 drivers/isdn/hisax/hfc4s8s_l1.h
 delete mode 100644 drivers/isdn/hisax/hfc_2bds0.c
 delete mode 100644 drivers/isdn/hisax/hfc_2bds0.h
 delete mode 100644 drivers/isdn/hisax/hfc_2bs0.c
 delete mode 100644 drivers/isdn/hisax/hfc_2bs0.h
 delete mode 100644 drivers/isdn/hisax/hfc_pci.c
 delete mode 100644 drivers/isdn/hisax/hfc_pci.h
 delete mode 100644 drivers/isdn/hisax/hfc_sx.c
 delete mode 100644 drivers/isdn/hisax/hfc_sx.h
 delete mode 100644 drivers/isdn/hisax/hfc_usb.c
 delete mode 100644 drivers/isdn/hisax/hfc_usb.h
 delete mode 100644 drivers/isdn/hisax/hfcscard.c
 delete mode 100644 drivers/isdn/hisax/hisax.h
 delete mode 100644 drivers/isdn/hisax/hisax_cfg.h
 delete mode 100644 drivers/isdn/hisax/hisax_debug.h
 delete mode 100644 drivers/isdn/hisax/hisax_fcpcipnp.c
 delete mode 100644 drivers/isdn/hisax/hisax_fcpcipnp.h
 delete mode 100644 drivers/isdn/hisax/hisax_if.h
 delete mode 100644 drivers/isdn/hisax/hisax_isac.c
 delete mode 100644 drivers/isdn/hisax/hisax_isac.h
 delete mode 100644 drivers/isdn/hisax/hscx.c
 delete mode 100644 drivers/isdn/hisax/hscx.h
 delete mode 100644 drivers/isdn/hisax/hscx_irq.c
 delete mode 100644 drivers/isdn/hisax/icc.c
 delete mode 100644 drivers/isdn/hisax/icc.h
 delete mode 100644 drivers/isdn/hisax/ipac.h
 delete mode 100644 drivers/isdn/hisax/ipacx.c
 delete mode 100644 drivers/isdn/hisax/ipacx.h
 delete mode 100644 drivers/isdn/hisax/isac.c
 delete mode 100644 drivers/isdn/hisax/isac.h
 delete mode 100644 drivers/isdn/hisax/isar.c
 delete mode 100644 drivers/isdn/hisax/isar.h
 delete mode 100644 drivers/isdn/hisax/isdnl1.c
 delete mode 100644 drivers/isdn/hisax/isdnl1.h
 delete mode 100644 drivers/isdn/hisax/isdnl2.c
 delete mode 100644 drivers/isdn/hisax/isdnl2.h
 delete mode 100644 drivers/isdn/hisax/isdnl3.c
 delete mode 100644 drivers/isdn/hisax/isdnl3.h
 delete mode 100644 drivers/isdn/hisax/isurf.c
 delete mode 100644 drivers/isdn/hisax/ix1_micro.c
 delete mode 100644 drivers/isdn/hisax/jade.c
 delete mode 100644 drivers/isdn/hisax/jade.h
 delete mode 100644 drivers/isdn/hisax/jade_irq.c
 delete mode 100644 drivers/isdn/hisax/l3_1tr6.c
 delete mode 100644 drivers/isdn/hisax/l3_1tr6.h
 delete mode 100644 drivers/isdn/hisax/l3dss1.c
 delete mode 100644 drivers/isdn/hisax/l3dss1.h
 delete mode 100644 drivers/isdn/hisax/l3ni1.c
 delete mode 100644 drivers/isdn/hisax/l3ni1.h
 delete mode 100644 drivers/isdn/hisax/lmgr.c
 delete mode 100644 drivers/isdn/hisax/mic.c
 delete mode 100644 drivers/isdn/hisax/netjet.c
 delete mode 100644 drivers/isdn/hisax/netjet.h
 delete mode 100644 drivers/isdn/hisax/niccy.c
 delete mode 100644 drivers/isdn/hisax/nj_s.c
 delete mode 100644 drivers/isdn/hisax/nj_u.c
 delete mode 100644 drivers/isdn/hisax/q931.c
 delete mode 100644 drivers/isdn/hisax/s0box.c
 delete mode 100644 drivers/isdn/hisax/saphir.c
 delete mode 100644 drivers/isdn/hisax/sedlbauer.c
 delete mode 100644 drivers/isdn/hisax/sedlbauer_cs.c
 delete mode 100644 drivers/isdn/hisax/sportster.c
 delete mode 100644 drivers/isdn/hisax/st5481.h
 delete mode 100644 drivers/isdn/hisax/st5481_b.c
 delete mode 100644 drivers/isdn/hisax/st5481_d.c
 delete mode 100644 drivers/isdn/hisax/st5481_init.c
 delete mode 100644 drivers/isdn/hisax/st5481_usb.c
 delete mode 100644 drivers/isdn/hisax/tei.c
 delete mode 100644 drivers/isdn/hisax/teleint.c
 delete mode 100644 drivers/isdn/hisax/teles0.c
 delete mode 100644 drivers/isdn/hisax/teles3.c
 delete mode 100644 drivers/isdn/hisax/teles_cs.c
 delete mode 100644 drivers/isdn/hisax/telespci.c
 delete mode 100644 drivers/isdn/hisax/w6692.c
 delete mode 100644 drivers/isdn/hisax/w6692.h

diff --git a/Documentation/isdn/HiSax.cert b/Documentation/isdn/HiSax.cert
deleted file mode 100644
index f2a6fcb8efee..000000000000
diff --git a/Documentation/isdn/README.HiSax b/Documentation/isdn/README.HiSax
deleted file mode 100644
index b1a573cf4472..000000000000
diff --git a/drivers/isdn/Makefile b/drivers/isdn/Makefile
index e7d3d8f2ad5a..7487f0bbe855 100644
--- a/drivers/isdn/Makefile
+++ b/drivers/isdn/Makefile
@@ -8,7 +8,6 @@ obj-$(CONFIG_ISDN_CAPI)			+= capi/
 obj-$(CONFIG_MISDN)			+= mISDN/
 obj-$(CONFIG_ISDN)			+= hardware/
 obj-$(CONFIG_ISDN_DIVERSION)		+= divert/
-obj-$(CONFIG_ISDN_DRV_HISAX)		+= hisax/
 obj-$(CONFIG_ISDN_DRV_LOOP)		+= isdnloop/
 obj-$(CONFIG_HYSDN)			+= hysdn/
 obj-$(CONFIG_ISDN_DRV_GIGASET)		+= gigaset/
diff --git a/drivers/isdn/hisax/Kconfig b/drivers/isdn/hisax/Kconfig
deleted file mode 100644
index 38cfc8baae19..000000000000
diff --git a/drivers/isdn/hisax/Makefile b/drivers/isdn/hisax/Makefile
deleted file mode 100644
index 3eca9d23f1c2..000000000000
diff --git a/drivers/isdn/hisax/amd7930_fn.c b/drivers/isdn/hisax/amd7930_fn.c
deleted file mode 100644
index 6c336366128c..000000000000
diff --git a/drivers/isdn/hisax/amd7930_fn.h b/drivers/isdn/hisax/amd7930_fn.h
deleted file mode 100644
index 1f4d80c5e5a6..000000000000
diff --git a/drivers/isdn/hisax/arcofi.c b/drivers/isdn/hisax/arcofi.c
deleted file mode 100644
index 2f784f96d439..000000000000
diff --git a/drivers/isdn/hisax/arcofi.h b/drivers/isdn/hisax/arcofi.h
deleted file mode 100644
index b9c77529fabf..000000000000
diff --git a/drivers/isdn/hisax/asuscom.c b/drivers/isdn/hisax/asuscom.c
deleted file mode 100644
index 74c871495e81..000000000000
diff --git a/drivers/isdn/hisax/avm_a1.c b/drivers/isdn/hisax/avm_a1.c
deleted file mode 100644
index 7dd74087ad72..000000000000
diff --git a/drivers/isdn/hisax/avm_a1p.c b/drivers/isdn/hisax/avm_a1p.c
deleted file mode 100644
index bc52d54ff5e1..000000000000
diff --git a/drivers/isdn/hisax/avm_pci.c b/drivers/isdn/hisax/avm_pci.c
deleted file mode 100644
index b161456c942e..000000000000
diff --git a/drivers/isdn/hisax/avma1_cs.c b/drivers/isdn/hisax/avma1_cs.c
deleted file mode 100644
index baad94ec1f4a..000000000000
diff --git a/drivers/isdn/hisax/bkm_a4t.c b/drivers/isdn/hisax/bkm_a4t.c
deleted file mode 100644
index c360164bde1b..000000000000
diff --git a/drivers/isdn/hisax/bkm_a8.c b/drivers/isdn/hisax/bkm_a8.c
deleted file mode 100644
index dd663ea57ec6..000000000000
diff --git a/drivers/isdn/hisax/bkm_ax.h b/drivers/isdn/hisax/bkm_ax.h
deleted file mode 100644
index 27ff8a88679b..000000000000
diff --git a/drivers/isdn/hisax/callc.c b/drivers/isdn/hisax/callc.c
deleted file mode 100644
index 9ee06328784c..000000000000
diff --git a/drivers/isdn/hisax/config.c b/drivers/isdn/hisax/config.c
deleted file mode 100644
index b12e6cae26c2..000000000000
diff --git a/drivers/isdn/hisax/diva.c b/drivers/isdn/hisax/diva.c
deleted file mode 100644
index d23df7a7784d..000000000000
diff --git a/drivers/isdn/hisax/elsa.c b/drivers/isdn/hisax/elsa.c
deleted file mode 100644
index 0754c0743790..000000000000
diff --git a/drivers/isdn/hisax/elsa_cs.c b/drivers/isdn/hisax/elsa_cs.c
deleted file mode 100644
index 40f6fad79de3..000000000000
diff --git a/drivers/isdn/hisax/elsa_ser.c b/drivers/isdn/hisax/elsa_ser.c
deleted file mode 100644
index 999effd7a276..000000000000
diff --git a/drivers/isdn/hisax/enternow_pci.c b/drivers/isdn/hisax/enternow_pci.c
deleted file mode 100644
index e8d431a8302d..000000000000
diff --git a/drivers/isdn/hisax/fsm.c b/drivers/isdn/hisax/fsm.c
deleted file mode 100644
index 80ba82f77c63..000000000000
diff --git a/drivers/isdn/hisax/fsm.h b/drivers/isdn/hisax/fsm.h
deleted file mode 100644
index 8c7385619a46..000000000000
diff --git a/drivers/isdn/hisax/gazel.c b/drivers/isdn/hisax/gazel.c
deleted file mode 100644
index a6d8af02354a..000000000000
diff --git a/drivers/isdn/hisax/hfc4s8s_l1.c b/drivers/isdn/hisax/hfc4s8s_l1.c
deleted file mode 100644
index e9bb8fb67ad0..000000000000
diff --git a/drivers/isdn/hisax/hfc4s8s_l1.h b/drivers/isdn/hisax/hfc4s8s_l1.h
deleted file mode 100644
index 4665b9d5df16..000000000000
diff --git a/drivers/isdn/hisax/hfc_2bds0.c b/drivers/isdn/hisax/hfc_2bds0.c
deleted file mode 100644
index 3715fa0343db..000000000000
diff --git a/drivers/isdn/hisax/hfc_2bds0.h b/drivers/isdn/hisax/hfc_2bds0.h
deleted file mode 100644
index 8c7582a3c51e..000000000000
diff --git a/drivers/isdn/hisax/hfc_2bs0.c b/drivers/isdn/hisax/hfc_2bs0.c
deleted file mode 100644
index 34d59992839a..000000000000
diff --git a/drivers/isdn/hisax/hfc_2bs0.h b/drivers/isdn/hisax/hfc_2bs0.h
deleted file mode 100644
index 1510096363dc..000000000000
diff --git a/drivers/isdn/hisax/hfc_pci.c b/drivers/isdn/hisax/hfc_pci.c
deleted file mode 100644
index 71a8312592d6..000000000000
diff --git a/drivers/isdn/hisax/hfc_pci.h b/drivers/isdn/hisax/hfc_pci.h
deleted file mode 100644
index 4c3b3ba35726..000000000000
diff --git a/drivers/isdn/hisax/hfc_sx.c b/drivers/isdn/hisax/hfc_sx.c
deleted file mode 100644
index 12af628d9b2c..000000000000
diff --git a/drivers/isdn/hisax/hfc_sx.h b/drivers/isdn/hisax/hfc_sx.h
deleted file mode 100644
index eee85dbb0883..000000000000
diff --git a/drivers/isdn/hisax/hfc_usb.c b/drivers/isdn/hisax/hfc_usb.c
deleted file mode 100644
index 1d4cd01d4685..000000000000
diff --git a/drivers/isdn/hisax/hfc_usb.h b/drivers/isdn/hisax/hfc_usb.h
deleted file mode 100644
index 9a212330e8a8..000000000000
diff --git a/drivers/isdn/hisax/hfcscard.c b/drivers/isdn/hisax/hfcscard.c
deleted file mode 100644
index 91b5219499ca..000000000000
diff --git a/drivers/isdn/hisax/hisax.h b/drivers/isdn/hisax/hisax.h
deleted file mode 100644
index 40080e06421c..000000000000
diff --git a/drivers/isdn/hisax/hisax_cfg.h b/drivers/isdn/hisax/hisax_cfg.h
deleted file mode 100644
index 487dcfe9e718..000000000000
diff --git a/drivers/isdn/hisax/hisax_debug.h b/drivers/isdn/hisax/hisax_debug.h
deleted file mode 100644
index 7b3093d0856a..000000000000
diff --git a/drivers/isdn/hisax/hisax_fcpcipnp.c b/drivers/isdn/hisax/hisax_fcpcipnp.c
deleted file mode 100644
index 7a7137d8664b..000000000000
diff --git a/drivers/isdn/hisax/hisax_fcpcipnp.h b/drivers/isdn/hisax/hisax_fcpcipnp.h
deleted file mode 100644
index 1f64e9937aa1..000000000000
diff --git a/drivers/isdn/hisax/hisax_if.h b/drivers/isdn/hisax/hisax_if.h
deleted file mode 100644
index 7098d6bd5ff2..000000000000
diff --git a/drivers/isdn/hisax/hisax_isac.c b/drivers/isdn/hisax/hisax_isac.c
deleted file mode 100644
index 0f36375478c5..000000000000
diff --git a/drivers/isdn/hisax/hisax_isac.h b/drivers/isdn/hisax/hisax_isac.h
deleted file mode 100644
index d7301da97991..000000000000
diff --git a/drivers/isdn/hisax/hscx.c b/drivers/isdn/hisax/hscx.c
deleted file mode 100644
index 3e305fec0ed9..000000000000
diff --git a/drivers/isdn/hisax/hscx.h b/drivers/isdn/hisax/hscx.h
deleted file mode 100644
index 1148b4bbe711..000000000000
diff --git a/drivers/isdn/hisax/hscx_irq.c b/drivers/isdn/hisax/hscx_irq.c
deleted file mode 100644
index 0d7e783c8bef..000000000000
diff --git a/drivers/isdn/hisax/icc.c b/drivers/isdn/hisax/icc.c
deleted file mode 100644
index 831dd1bb81ef..000000000000
diff --git a/drivers/isdn/hisax/icc.h b/drivers/isdn/hisax/icc.h
deleted file mode 100644
index f367df5d3669..000000000000
diff --git a/drivers/isdn/hisax/ipac.h b/drivers/isdn/hisax/ipac.h
deleted file mode 100644
index 4f937f02ee34..000000000000
diff --git a/drivers/isdn/hisax/ipacx.c b/drivers/isdn/hisax/ipacx.c
deleted file mode 100644
index c7086c1534bd..000000000000
diff --git a/drivers/isdn/hisax/ipacx.h b/drivers/isdn/hisax/ipacx.h
deleted file mode 100644
index e8a22e8f34b6..000000000000
diff --git a/drivers/isdn/hisax/isac.c b/drivers/isdn/hisax/isac.c
deleted file mode 100644
index bd40e0671ded..000000000000
diff --git a/drivers/isdn/hisax/isac.h b/drivers/isdn/hisax/isac.h
deleted file mode 100644
index 04f16b91b822..000000000000
diff --git a/drivers/isdn/hisax/isar.c b/drivers/isdn/hisax/isar.c
deleted file mode 100644
index 82c1879f5664..000000000000
diff --git a/drivers/isdn/hisax/isar.h b/drivers/isdn/hisax/isar.h
deleted file mode 100644
index 0f4d101faf37..000000000000
diff --git a/drivers/isdn/hisax/isdnl1.c b/drivers/isdn/hisax/isdnl1.c
deleted file mode 100644
index a560842c0e48..000000000000
diff --git a/drivers/isdn/hisax/isdnl1.h b/drivers/isdn/hisax/isdnl1.h
deleted file mode 100644
index 66ddcab19bba..000000000000
diff --git a/drivers/isdn/hisax/isdnl2.c b/drivers/isdn/hisax/isdnl2.c
deleted file mode 100644
index 1a40ed04cb52..000000000000
diff --git a/drivers/isdn/hisax/isdnl2.h b/drivers/isdn/hisax/isdnl2.h
deleted file mode 100644
index 7e447fb8ed1d..000000000000
diff --git a/drivers/isdn/hisax/isdnl3.c b/drivers/isdn/hisax/isdnl3.c
deleted file mode 100644
index bb3f9ec62749..000000000000
diff --git a/drivers/isdn/hisax/isdnl3.h b/drivers/isdn/hisax/isdnl3.h
deleted file mode 100644
index 0edc99d40dc2..000000000000
diff --git a/drivers/isdn/hisax/isurf.c b/drivers/isdn/hisax/isurf.c
deleted file mode 100644
index 53e299be4304..000000000000
diff --git a/drivers/isdn/hisax/ix1_micro.c b/drivers/isdn/hisax/ix1_micro.c
deleted file mode 100644
index bfb79f3f0a49..000000000000
diff --git a/drivers/isdn/hisax/jade.c b/drivers/isdn/hisax/jade.c
deleted file mode 100644
index e2ae7871a209..000000000000
diff --git a/drivers/isdn/hisax/jade.h b/drivers/isdn/hisax/jade.h
deleted file mode 100644
index 4b98096a5858..000000000000
diff --git a/drivers/isdn/hisax/jade_irq.c b/drivers/isdn/hisax/jade_irq.c
deleted file mode 100644
index a89e2df911c5..000000000000
diff --git a/drivers/isdn/hisax/l3_1tr6.c b/drivers/isdn/hisax/l3_1tr6.c
deleted file mode 100644
index 98f60d1523f4..000000000000
diff --git a/drivers/isdn/hisax/l3_1tr6.h b/drivers/isdn/hisax/l3_1tr6.h
deleted file mode 100644
index 43215c00cada..000000000000
diff --git a/drivers/isdn/hisax/l3dss1.c b/drivers/isdn/hisax/l3dss1.c
deleted file mode 100644
index 368d152a8f1d..000000000000
diff --git a/drivers/isdn/hisax/l3dss1.h b/drivers/isdn/hisax/l3dss1.h
deleted file mode 100644
index a7807e8a94f1..000000000000
diff --git a/drivers/isdn/hisax/l3ni1.c b/drivers/isdn/hisax/l3ni1.c
deleted file mode 100644
index ea311e7df48e..000000000000
diff --git a/drivers/isdn/hisax/l3ni1.h b/drivers/isdn/hisax/l3ni1.h
deleted file mode 100644
index 99d37d2cea4f..000000000000
diff --git a/drivers/isdn/hisax/lmgr.c b/drivers/isdn/hisax/lmgr.c
deleted file mode 100644
index 5b63eb6601aa..000000000000
diff --git a/drivers/isdn/hisax/mic.c b/drivers/isdn/hisax/mic.c
deleted file mode 100644
index 93398676f78f..000000000000
diff --git a/drivers/isdn/hisax/netjet.c b/drivers/isdn/hisax/netjet.c
deleted file mode 100644
index d7b011c8d692..000000000000
diff --git a/drivers/isdn/hisax/netjet.h b/drivers/isdn/hisax/netjet.h
deleted file mode 100644
index 70590d5d5e64..000000000000
diff --git a/drivers/isdn/hisax/niccy.c b/drivers/isdn/hisax/niccy.c
deleted file mode 100644
index dfbcd2eaa81a..000000000000
diff --git a/drivers/isdn/hisax/nj_s.c b/drivers/isdn/hisax/nj_s.c
deleted file mode 100644
index 32b4bbd18eb9..000000000000
diff --git a/drivers/isdn/hisax/nj_u.c b/drivers/isdn/hisax/nj_u.c
deleted file mode 100644
index 4e8adbede361..000000000000
diff --git a/drivers/isdn/hisax/q931.c b/drivers/isdn/hisax/q931.c
deleted file mode 100644
index 6b8c3fbe3965..000000000000
diff --git a/drivers/isdn/hisax/s0box.c b/drivers/isdn/hisax/s0box.c
deleted file mode 100644
index 4e7d0aa227ad..000000000000
diff --git a/drivers/isdn/hisax/saphir.c b/drivers/isdn/hisax/saphir.c
deleted file mode 100644
index db906cb37a3f..000000000000
diff --git a/drivers/isdn/hisax/sedlbauer.c b/drivers/isdn/hisax/sedlbauer.c
deleted file mode 100644
index c0b97b893495..000000000000
diff --git a/drivers/isdn/hisax/sedlbauer_cs.c b/drivers/isdn/hisax/sedlbauer_cs.c
deleted file mode 100644
index 92ef62d4caf4..000000000000
diff --git a/drivers/isdn/hisax/sportster.c b/drivers/isdn/hisax/sportster.c
deleted file mode 100644
index 18cee6360d0a..000000000000
diff --git a/drivers/isdn/hisax/st5481.h b/drivers/isdn/hisax/st5481.h
deleted file mode 100644
index b421b86ca7da..000000000000
diff --git a/drivers/isdn/hisax/st5481_b.c b/drivers/isdn/hisax/st5481_b.c
deleted file mode 100644
index f64a36007800..000000000000
diff --git a/drivers/isdn/hisax/st5481_d.c b/drivers/isdn/hisax/st5481_d.c
deleted file mode 100644
index e88c5c71fca7..000000000000
diff --git a/drivers/isdn/hisax/st5481_init.c b/drivers/isdn/hisax/st5481_init.c
deleted file mode 100644
index 54ef9e4f8cbc..000000000000
diff --git a/drivers/isdn/hisax/st5481_usb.c b/drivers/isdn/hisax/st5481_usb.c
deleted file mode 100644
index f207fda691c7..000000000000
diff --git a/drivers/isdn/hisax/tei.c b/drivers/isdn/hisax/tei.c
deleted file mode 100644
index 9195f9fd628f..000000000000
diff --git a/drivers/isdn/hisax/teleint.c b/drivers/isdn/hisax/teleint.c
deleted file mode 100644
index 247aa33076b1..000000000000
diff --git a/drivers/isdn/hisax/teles0.c b/drivers/isdn/hisax/teles0.c
deleted file mode 100644
index ce9eabdd2f6e..000000000000
diff --git a/drivers/isdn/hisax/teles3.c b/drivers/isdn/hisax/teles3.c
deleted file mode 100644
index 1eef693f04f0..000000000000
diff --git a/drivers/isdn/hisax/teles_cs.c b/drivers/isdn/hisax/teles_cs.c
deleted file mode 100644
index b8dd14958757..000000000000
diff --git a/drivers/isdn/hisax/telespci.c b/drivers/isdn/hisax/telespci.c
deleted file mode 100644
index 33eeb4602c7e..000000000000
diff --git a/drivers/isdn/hisax/w6692.c b/drivers/isdn/hisax/w6692.c
deleted file mode 100644
index 36eefaa3a7d9..000000000000
diff --git a/drivers/isdn/hisax/w6692.h b/drivers/isdn/hisax/w6692.h
deleted file mode 100644
index 024b04d33e43..000000000000
diff --git a/drivers/isdn/i4l/Kconfig b/drivers/isdn/i4l/Kconfig
index 68e54d9f2f53..dc8ab12199e9 100644
--- a/drivers/isdn/i4l/Kconfig
+++ b/drivers/isdn/i4l/Kconfig
@@ -121,8 +121,6 @@ endmenu
 
 comment "ISDN4Linux hardware drivers"
 
-source "drivers/isdn/hisax/Kconfig"
-
 # end ISDN_I4L
 endif
 
-- 
2.20.0


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

* [PATCH 3/5] isdn: remove isdn4linux
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 1/5] isdn: gigaset: remove i4l support Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 2/5] isdn: remove hisax driver Arnd Bergmann
@ 2019-04-23 15:11 ` Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 4/5] isdn: hdlc: move into mISDN Arnd Bergmann
                   ` (11 subsequent siblings)
  14 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

With all isdn4linux hardware drivers gone, this is only a wrapper around
CAPI to support old user space. However, from looking at the mailing
list, it seems that the last time anyone asked about it was in 2014,
when the upgrade from a linux-2.4 installation failed, and mISDN was
suggested as a replacement.

The largest public ISDN network (Deutsche Telekom) was shut down 2018,
which must have drastically reduced the number of legacy installations,
if there were any that managed to get isdn4linux to work with a linux-4.x
kernel at all.

When we last discussed removing i4l in 2016, Karsten Keil suggested
revisiting this in 2018. I guess this is overdue.

Link: http://listserv.isdn4linux.de/pipermail/isdn4linux/2014-October/006165.html
Link: https://patchwork.kernel.org/patch/8484861/#17900371
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 Documentation/isdn/INTERFACE        |  759 ------
 Documentation/isdn/INTERFACE.fax    |  163 --
 Documentation/isdn/README           |  599 -----
 Documentation/isdn/README.FAQ       |   26 -
 Documentation/isdn/README.audio     |  138 -
 Documentation/isdn/README.concap    |  259 --
 Documentation/isdn/README.diversion |  127 -
 Documentation/isdn/README.fax       |   45 -
 Documentation/isdn/README.hfc-pci   |   41 -
 Documentation/isdn/README.syncppp   |   58 -
 Documentation/isdn/README.x25       |  184 --
 Documentation/isdn/syncPPP.FAQ      |  224 --
 Documentation/process/changes.rst   |   16 +-
 MAINTAINERS                         |    2 -
 drivers/isdn/Kconfig                |   26 -
 drivers/isdn/Makefile               |    2 -
 drivers/isdn/capi/Kconfig           |    9 -
 drivers/isdn/capi/capidrv.c         | 2525 ------------------
 drivers/isdn/capi/capidrv.h         |  140 -
 drivers/isdn/divert/Makefile        |    9 -
 drivers/isdn/divert/divert_init.c   |   82 -
 drivers/isdn/divert/divert_procfs.c |  336 ---
 drivers/isdn/divert/isdn_divert.c   |  846 ------
 drivers/isdn/divert/isdn_divert.h   |  132 -
 drivers/isdn/i4l/Kconfig            |  126 -
 drivers/isdn/i4l/Makefile           |   14 -
 drivers/isdn/i4l/isdn_audio.c       |  711 -----
 drivers/isdn/i4l/isdn_audio.h       |   44 -
 drivers/isdn/i4l/isdn_bsdcomp.c     |  930 -------
 drivers/isdn/i4l/isdn_common.c      | 2368 -----------------
 drivers/isdn/i4l/isdn_common.h      |   47 -
 drivers/isdn/i4l/isdn_concap.c      |   99 -
 drivers/isdn/i4l/isdn_concap.h      |   11 -
 drivers/isdn/i4l/isdn_net.c         | 3198 -----------------------
 drivers/isdn/i4l/isdn_net.h         |  151 --
 drivers/isdn/i4l/isdn_ppp.c         | 3053 ----------------------
 drivers/isdn/i4l/isdn_ppp.h         |   41 -
 drivers/isdn/i4l/isdn_tty.c         | 3756 ---------------------------
 drivers/isdn/i4l/isdn_tty.h         |  120 -
 drivers/isdn/i4l/isdn_ttyfax.c      | 1123 --------
 drivers/isdn/i4l/isdn_ttyfax.h      |   17 -
 drivers/isdn/i4l/isdn_v110.c        |  625 -----
 drivers/isdn/i4l/isdn_v110.h        |   29 -
 drivers/isdn/i4l/isdn_x25iface.c    |  332 ---
 drivers/isdn/i4l/isdn_x25iface.h    |   30 -
 drivers/isdn/isdnloop/Makefile      |    5 -
 drivers/isdn/isdnloop/isdnloop.c    | 1528 -----------
 drivers/isdn/isdnloop/isdnloop.h    |  112 -
 include/linux/concap.h              |  112 -
 include/linux/isdn.h                |  473 ----
 include/linux/isdn_divertif.h       |   35 -
 include/linux/isdn_ppp.h            |  194 --
 include/linux/isdnif.h              |  505 ----
 include/linux/wanrouter.h           |   11 -
 include/uapi/linux/isdn.h           |  144 -
 include/uapi/linux/isdn_divertif.h  |   31 -
 include/uapi/linux/isdn_ppp.h       |   68 -
 include/uapi/linux/isdnif.h         |   57 -
 include/uapi/linux/wanrouter.h      |   18 -
 59 files changed, 2 insertions(+), 26864 deletions(-)
 delete mode 100644 Documentation/isdn/INTERFACE
 delete mode 100644 Documentation/isdn/INTERFACE.fax
 delete mode 100644 Documentation/isdn/README
 delete mode 100644 Documentation/isdn/README.FAQ
 delete mode 100644 Documentation/isdn/README.audio
 delete mode 100644 Documentation/isdn/README.concap
 delete mode 100644 Documentation/isdn/README.diversion
 delete mode 100644 Documentation/isdn/README.fax
 delete mode 100644 Documentation/isdn/README.hfc-pci
 delete mode 100644 Documentation/isdn/README.syncppp
 delete mode 100644 Documentation/isdn/README.x25
 delete mode 100644 Documentation/isdn/syncPPP.FAQ
 delete mode 100644 drivers/isdn/capi/capidrv.c
 delete mode 100644 drivers/isdn/capi/capidrv.h
 delete mode 100644 drivers/isdn/divert/Makefile
 delete mode 100644 drivers/isdn/divert/divert_init.c
 delete mode 100644 drivers/isdn/divert/divert_procfs.c
 delete mode 100644 drivers/isdn/divert/isdn_divert.c
 delete mode 100644 drivers/isdn/divert/isdn_divert.h
 delete mode 100644 drivers/isdn/i4l/Kconfig
 delete mode 100644 drivers/isdn/i4l/isdn_audio.c
 delete mode 100644 drivers/isdn/i4l/isdn_audio.h
 delete mode 100644 drivers/isdn/i4l/isdn_bsdcomp.c
 delete mode 100644 drivers/isdn/i4l/isdn_common.c
 delete mode 100644 drivers/isdn/i4l/isdn_common.h
 delete mode 100644 drivers/isdn/i4l/isdn_concap.c
 delete mode 100644 drivers/isdn/i4l/isdn_concap.h
 delete mode 100644 drivers/isdn/i4l/isdn_net.c
 delete mode 100644 drivers/isdn/i4l/isdn_net.h
 delete mode 100644 drivers/isdn/i4l/isdn_ppp.c
 delete mode 100644 drivers/isdn/i4l/isdn_ppp.h
 delete mode 100644 drivers/isdn/i4l/isdn_tty.c
 delete mode 100644 drivers/isdn/i4l/isdn_tty.h
 delete mode 100644 drivers/isdn/i4l/isdn_ttyfax.c
 delete mode 100644 drivers/isdn/i4l/isdn_ttyfax.h
 delete mode 100644 drivers/isdn/i4l/isdn_v110.c
 delete mode 100644 drivers/isdn/i4l/isdn_v110.h
 delete mode 100644 drivers/isdn/i4l/isdn_x25iface.c
 delete mode 100644 drivers/isdn/i4l/isdn_x25iface.h
 delete mode 100644 drivers/isdn/isdnloop/Makefile
 delete mode 100644 drivers/isdn/isdnloop/isdnloop.c
 delete mode 100644 drivers/isdn/isdnloop/isdnloop.h
 delete mode 100644 include/linux/concap.h
 delete mode 100644 include/linux/isdn.h
 delete mode 100644 include/linux/isdn_divertif.h
 delete mode 100644 include/linux/isdn_ppp.h
 delete mode 100644 include/linux/isdnif.h
 delete mode 100644 include/linux/wanrouter.h
 delete mode 100644 include/uapi/linux/isdn.h
 delete mode 100644 include/uapi/linux/isdn_divertif.h
 delete mode 100644 include/uapi/linux/isdn_ppp.h
 delete mode 100644 include/uapi/linux/isdnif.h
 delete mode 100644 include/uapi/linux/wanrouter.h

diff --git a/Documentation/isdn/INTERFACE b/Documentation/isdn/INTERFACE
deleted file mode 100644
index 5df17e5b25c8..000000000000
diff --git a/Documentation/isdn/INTERFACE.fax b/Documentation/isdn/INTERFACE.fax
deleted file mode 100644
index 9c8c6d914ec7..000000000000
diff --git a/Documentation/isdn/README b/Documentation/isdn/README
deleted file mode 100644
index 74bd2bdb455b..000000000000
diff --git a/Documentation/isdn/README.FAQ b/Documentation/isdn/README.FAQ
deleted file mode 100644
index e5dd1addacdd..000000000000
diff --git a/Documentation/isdn/README.audio b/Documentation/isdn/README.audio
deleted file mode 100644
index 8ebca19290d9..000000000000
diff --git a/Documentation/isdn/README.concap b/Documentation/isdn/README.concap
deleted file mode 100644
index a76d74845a4c..000000000000
diff --git a/Documentation/isdn/README.diversion b/Documentation/isdn/README.diversion
deleted file mode 100644
index bddcd5fb86ff..000000000000
diff --git a/Documentation/isdn/README.fax b/Documentation/isdn/README.fax
deleted file mode 100644
index 5314958a8a6e..000000000000
diff --git a/Documentation/isdn/README.hfc-pci b/Documentation/isdn/README.hfc-pci
deleted file mode 100644
index e8a4ef0226e8..000000000000
diff --git a/Documentation/isdn/README.syncppp b/Documentation/isdn/README.syncppp
deleted file mode 100644
index 27d260095cce..000000000000
diff --git a/Documentation/isdn/README.x25 b/Documentation/isdn/README.x25
deleted file mode 100644
index e561a77c4e22..000000000000
diff --git a/Documentation/isdn/syncPPP.FAQ b/Documentation/isdn/syncPPP.FAQ
deleted file mode 100644
index 3257a4bc0786..000000000000
diff --git a/Documentation/process/changes.rst b/Documentation/process/changes.rst
index 18735dc460a0..111636ad1bad 100644
--- a/Documentation/process/changes.rst
+++ b/Documentation/process/changes.rst
@@ -23,8 +23,8 @@ running, the suggested command should tell you.
 
 Again, keep in mind that this list assumes you are already functionally
 running a Linux kernel.  Also, not all tools are necessary on all
-systems; obviously, if you don't have any ISDN hardware, for example,
-you probably needn't concern yourself with isdn4k-utils.
+systems; obviously, if you don't have any PC Card hardware, for example,
+you probably needn't concern yourself with pcmciautils.
 
 ====================== ===============  ========================================
         Program        Minimal version       Command to check the version
@@ -45,7 +45,6 @@ btrfs-progs            0.18             btrfsck
 pcmciautils            004              pccardctl -V
 quota-tools            3.09             quota -V
 PPP                    2.4.0            pppd --version
-isdn4k-utils           3.1pre1          isdnctrl 2>&1|grep version
 nfs-utils              1.0.5            showmount --version
 procps                 3.2.0            ps --version
 oprofile               0.9              oprofiled --version
@@ -279,12 +278,6 @@ which can be made by::
 
 as root.
 
-Isdn4k-utils
-------------
-
-Due to changes in the length of the phone number field, isdn4k-utils
-needs to be recompiled or (preferably) upgraded.
-
 NFS-utils
 ---------
 
@@ -448,11 +441,6 @@ PPP
 
 - <ftp://ftp.samba.org/pub/ppp/>
 
-Isdn4k-utils
-------------
-
-- <ftp://ftp.isdn4linux.de/pub/isdn4linux/utils/>
-
 NFS-utils
 ---------
 
diff --git a/MAINTAINERS b/MAINTAINERS
index 3671fdea5010..1e3a739f0145 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -8245,9 +8245,7 @@ T:	git git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/isdn-2.6.git
 S:	Maintained
 F:	Documentation/isdn/
 F:	drivers/isdn/
-F:	include/linux/isdn.h
 F:	include/linux/isdn/
-F:	include/uapi/linux/isdn.h
 F:	include/uapi/linux/isdn/
 
 IT87 HARDWARE MONITORING DRIVER
diff --git a/drivers/isdn/Kconfig b/drivers/isdn/Kconfig
index ef661acdda17..161f7527df70 100644
--- a/drivers/isdn/Kconfig
+++ b/drivers/isdn/Kconfig
@@ -20,27 +20,6 @@ menuconfig ISDN
 
 if ISDN
 
-menuconfig ISDN_I4L
-	tristate "Old ISDN4Linux (deprecated)"
-	depends on TTY
-	---help---
-	  This driver allows you to use an ISDN adapter for networking
-	  connections and as dialin/out device.  The isdn-tty's have a built
-	  in AT-compatible modem emulator.  Network devices support autodial,
-	  channel-bundling, callback and caller-authentication without having
-	  a daemon running.  A reduced T.70 protocol is supported with tty's
-	  suitable for German BTX.  On D-Channel, the protocols EDSS1
-	  (Euro-ISDN) and 1TR6 (German style) are supported.  See
-	  <file:Documentation/isdn/README> for more information.
-
-	  ISDN support in the linux kernel is moving towards a new API,
-	  called CAPI (Common ISDN Application Programming Interface).
-	  Therefore the old ISDN4Linux layer will eventually become obsolete.
-	  It is still available, though, for use with adapters that are not
-	  supported by the new CAPI subsystem yet.
-
-source "drivers/isdn/i4l/Kconfig"
-
 menuconfig ISDN_CAPI
 	tristate "CAPI 2.0 subsystem"
 	help
@@ -70,9 +49,4 @@ source "drivers/isdn/hysdn/Kconfig"
 
 source "drivers/isdn/mISDN/Kconfig"
 
-config ISDN_HDLC
-	tristate
-	select CRC_CCITT
-	select BITREVERSE
-
 endif # ISDN
diff --git a/drivers/isdn/Makefile b/drivers/isdn/Makefile
index 7487f0bbe855..379b4a03c321 100644
--- a/drivers/isdn/Makefile
+++ b/drivers/isdn/Makefile
@@ -7,7 +7,5 @@ obj-$(CONFIG_ISDN_I4L)			+= i4l/
 obj-$(CONFIG_ISDN_CAPI)			+= capi/
 obj-$(CONFIG_MISDN)			+= mISDN/
 obj-$(CONFIG_ISDN)			+= hardware/
-obj-$(CONFIG_ISDN_DIVERSION)		+= divert/
-obj-$(CONFIG_ISDN_DRV_LOOP)		+= isdnloop/
 obj-$(CONFIG_HYSDN)			+= hysdn/
 obj-$(CONFIG_ISDN_DRV_GIGASET)		+= gigaset/
diff --git a/drivers/isdn/capi/Kconfig b/drivers/isdn/capi/Kconfig
index 7641b3096ea6..fe4a265c2c6d 100644
--- a/drivers/isdn/capi/Kconfig
+++ b/drivers/isdn/capi/Kconfig
@@ -26,15 +26,6 @@ config ISDN_CAPI_MIDDLEWARE
 	  device.  If you want to use pppd with pppdcapiplugin to dial up to
 	  your ISP, say Y here.
 
-config ISDN_CAPI_CAPIDRV
-	tristate "CAPI2.0 capidrv interface support"
-	depends on 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
-	  supported by a CAPI driver, but still want to use old features like
-	  ippp interfaces or ttyI emulation, say Y/M here.
-
 config ISDN_CAPI_CAPIDRV_VERBOSE
 	bool "Verbose reason code reporting"
 	depends on ISDN_CAPI_CAPIDRV
diff --git a/drivers/isdn/capi/capidrv.c b/drivers/isdn/capi/capidrv.c
deleted file mode 100644
index e8949f3dcae1..000000000000
diff --git a/drivers/isdn/capi/capidrv.h b/drivers/isdn/capi/capidrv.h
deleted file mode 100644
index 4466b2e0176d..000000000000
diff --git a/drivers/isdn/divert/Makefile b/drivers/isdn/divert/Makefile
deleted file mode 100644
index dd4a202e0bc2..000000000000
diff --git a/drivers/isdn/divert/divert_init.c b/drivers/isdn/divert/divert_init.c
deleted file mode 100644
index 267dede13bfd..000000000000
diff --git a/drivers/isdn/divert/divert_procfs.c b/drivers/isdn/divert/divert_procfs.c
deleted file mode 100644
index 342585e04fd3..000000000000
diff --git a/drivers/isdn/divert/isdn_divert.c b/drivers/isdn/divert/isdn_divert.c
deleted file mode 100644
index 5620fd2c6009..000000000000
diff --git a/drivers/isdn/divert/isdn_divert.h b/drivers/isdn/divert/isdn_divert.h
deleted file mode 100644
index 55033dd872c0..000000000000
diff --git a/drivers/isdn/i4l/Kconfig b/drivers/isdn/i4l/Kconfig
deleted file mode 100644
index dc8ab12199e9..000000000000
diff --git a/drivers/isdn/i4l/Makefile b/drivers/isdn/i4l/Makefile
index be77500c9e86..11fe697739d5 100644
--- a/drivers/isdn/i4l/Makefile
+++ b/drivers/isdn/i4l/Makefile
@@ -3,18 +3,4 @@
 
 # Each configuration option enables a list of files.
 
-obj-$(CONFIG_ISDN_I4L)		+= isdn.o
-obj-$(CONFIG_ISDN_PPP_BSDCOMP)	+= isdn_bsdcomp.o
 obj-$(CONFIG_ISDN_HDLC)		+= isdnhdlc.o
-
-# Multipart objects.
-
-isdn-y				:= isdn_net.o isdn_tty.o isdn_v110.o isdn_common.o
-
-# Optional parts of multipart objects.
-
-isdn-$(CONFIG_ISDN_PPP)		+= isdn_ppp.o
-isdn-$(CONFIG_ISDN_X25)		+= isdn_concap.o isdn_x25iface.o
-isdn-$(CONFIG_ISDN_AUDIO)		+= isdn_audio.o
-isdn-$(CONFIG_ISDN_TTY_FAX)	+= isdn_ttyfax.o
-
diff --git a/drivers/isdn/i4l/isdn_audio.c b/drivers/isdn/i4l/isdn_audio.c
deleted file mode 100644
index b6bcd1eca128..000000000000
diff --git a/drivers/isdn/i4l/isdn_audio.h b/drivers/isdn/i4l/isdn_audio.h
deleted file mode 100644
index 013c3582e0d1..000000000000
diff --git a/drivers/isdn/i4l/isdn_bsdcomp.c b/drivers/isdn/i4l/isdn_bsdcomp.c
deleted file mode 100644
index 7f28b967ed19..000000000000
diff --git a/drivers/isdn/i4l/isdn_common.c b/drivers/isdn/i4l/isdn_common.c
deleted file mode 100644
index 74ee00f5b310..000000000000
diff --git a/drivers/isdn/i4l/isdn_common.h b/drivers/isdn/i4l/isdn_common.h
deleted file mode 100644
index 2260ef07ab9c..000000000000
diff --git a/drivers/isdn/i4l/isdn_concap.c b/drivers/isdn/i4l/isdn_concap.c
deleted file mode 100644
index 336523ec077c..000000000000
diff --git a/drivers/isdn/i4l/isdn_concap.h b/drivers/isdn/i4l/isdn_concap.h
deleted file mode 100644
index cd7e3ba74e25..000000000000
diff --git a/drivers/isdn/i4l/isdn_net.c b/drivers/isdn/i4l/isdn_net.c
deleted file mode 100644
index c138f66f2659..000000000000
diff --git a/drivers/isdn/i4l/isdn_net.h b/drivers/isdn/i4l/isdn_net.h
deleted file mode 100644
index cca6d68da171..000000000000
diff --git a/drivers/isdn/i4l/isdn_ppp.c b/drivers/isdn/i4l/isdn_ppp.c
deleted file mode 100644
index 1f17126c5fa4..000000000000
diff --git a/drivers/isdn/i4l/isdn_ppp.h b/drivers/isdn/i4l/isdn_ppp.h
deleted file mode 100644
index 34b8a2ce84f3..000000000000
diff --git a/drivers/isdn/i4l/isdn_tty.c b/drivers/isdn/i4l/isdn_tty.c
deleted file mode 100644
index 43700fc19a31..000000000000
diff --git a/drivers/isdn/i4l/isdn_tty.h b/drivers/isdn/i4l/isdn_tty.h
deleted file mode 100644
index a6f801d2263b..000000000000
diff --git a/drivers/isdn/i4l/isdn_ttyfax.c b/drivers/isdn/i4l/isdn_ttyfax.c
deleted file mode 100644
index 47aae4916730..000000000000
diff --git a/drivers/isdn/i4l/isdn_ttyfax.h b/drivers/isdn/i4l/isdn_ttyfax.h
deleted file mode 100644
index ccda4fcf8f7b..000000000000
diff --git a/drivers/isdn/i4l/isdn_v110.c b/drivers/isdn/i4l/isdn_v110.c
deleted file mode 100644
index d11fe76f138f..000000000000
diff --git a/drivers/isdn/i4l/isdn_v110.h b/drivers/isdn/i4l/isdn_v110.h
deleted file mode 100644
index de774ab598c9..000000000000
diff --git a/drivers/isdn/i4l/isdn_x25iface.c b/drivers/isdn/i4l/isdn_x25iface.c
deleted file mode 100644
index 48bfbcb4a09d..000000000000
diff --git a/drivers/isdn/i4l/isdn_x25iface.h b/drivers/isdn/i4l/isdn_x25iface.h
deleted file mode 100644
index ca08e082cf7c..000000000000
diff --git a/drivers/isdn/isdnloop/Makefile b/drivers/isdn/isdnloop/Makefile
deleted file mode 100644
index 317cd3c5b8ee..000000000000
diff --git a/drivers/isdn/isdnloop/isdnloop.c b/drivers/isdn/isdnloop/isdnloop.c
deleted file mode 100644
index 755c6bbc9553..000000000000
diff --git a/drivers/isdn/isdnloop/isdnloop.h b/drivers/isdn/isdnloop/isdnloop.h
deleted file mode 100644
index e9e035552bb4..000000000000
diff --git a/include/linux/concap.h b/include/linux/concap.h
deleted file mode 100644
index 977acb3d1fb2..000000000000
diff --git a/include/linux/isdn.h b/include/linux/isdn.h
deleted file mode 100644
index df97c8444f5d..000000000000
diff --git a/include/linux/isdn_divertif.h b/include/linux/isdn_divertif.h
deleted file mode 100644
index 19ab361f9f07..000000000000
diff --git a/include/linux/isdn_ppp.h b/include/linux/isdn_ppp.h
deleted file mode 100644
index a0070c6dfaf8..000000000000
diff --git a/include/linux/isdnif.h b/include/linux/isdnif.h
deleted file mode 100644
index 8d80fdc68647..000000000000
diff --git a/include/linux/wanrouter.h b/include/linux/wanrouter.h
deleted file mode 100644
index f6358558f9f5..000000000000
diff --git a/include/uapi/linux/isdn.h b/include/uapi/linux/isdn.h
deleted file mode 100644
index f371fd52ed75..000000000000
diff --git a/include/uapi/linux/isdn_divertif.h b/include/uapi/linux/isdn_divertif.h
deleted file mode 100644
index 0a17bb1bcb1b..000000000000
diff --git a/include/uapi/linux/isdn_ppp.h b/include/uapi/linux/isdn_ppp.h
deleted file mode 100644
index 0bdc4efaacb2..000000000000
diff --git a/include/uapi/linux/isdnif.h b/include/uapi/linux/isdnif.h
deleted file mode 100644
index 611a69196738..000000000000
diff --git a/include/uapi/linux/wanrouter.h b/include/uapi/linux/wanrouter.h
deleted file mode 100644
index 2f1216d00caa..000000000000
-- 
2.20.0


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

* [PATCH 4/5] isdn: hdlc: move into mISDN
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (2 preceding siblings ...)
  2019-04-23 15:11 ` [PATCH 3/5] isdn: remove isdn4linux Arnd Bergmann
@ 2019-04-23 15:11 ` Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 5/5] isdn: move capi drivers to staging Arnd Bergmann
                   ` (10 subsequent siblings)
  14 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

The last remnant of the isdn4linux interface is now the isdnhdlc
support, used by the netjet driver. Move it next to that driver.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/isdn/Makefile                                      | 1 -
 drivers/isdn/hardware/mISDN/Kconfig                        | 7 +++++--
 drivers/isdn/hardware/mISDN/Makefile                       | 2 ++
 drivers/isdn/{i4l => hardware/mISDN}/isdnhdlc.c            | 2 +-
 .../isdn/hdlc.h => drivers/isdn/hardware/mISDN/isdnhdlc.h  | 0
 drivers/isdn/hardware/mISDN/netjet.c                       | 2 +-
 drivers/isdn/i4l/Makefile                                  | 6 ------
 7 files changed, 9 insertions(+), 11 deletions(-)
 rename drivers/isdn/{i4l => hardware/mISDN}/isdnhdlc.c (99%)
 rename include/linux/isdn/hdlc.h => drivers/isdn/hardware/mISDN/isdnhdlc.h (100%)
 delete mode 100644 drivers/isdn/i4l/Makefile

diff --git a/drivers/isdn/Makefile b/drivers/isdn/Makefile
index 379b4a03c321..f2a529c5a511 100644
--- a/drivers/isdn/Makefile
+++ b/drivers/isdn/Makefile
@@ -3,7 +3,6 @@
 
 # Object files in subdirectories
 
-obj-$(CONFIG_ISDN_I4L)			+= i4l/
 obj-$(CONFIG_ISDN_CAPI)			+= capi/
 obj-$(CONFIG_MISDN)			+= mISDN/
 obj-$(CONFIG_ISDN)			+= hardware/
diff --git a/drivers/isdn/hardware/mISDN/Kconfig b/drivers/isdn/hardware/mISDN/Kconfig
index fda912b0833f..da30d85c9236 100644
--- a/drivers/isdn/hardware/mISDN/Kconfig
+++ b/drivers/isdn/hardware/mISDN/Kconfig
@@ -78,11 +78,14 @@ config MISDN_NETJET
 	depends on PCI
 	depends on TTY
 	select MISDN_IPAC
-	select ISDN_HDLC
-	select ISDN_I4L
+	select MISDN_HDLC
 	help
 	  Enable support for Traverse Technologies NETJet PCI cards.
 
+config MISDN_HDLC
+	tristate
+	select CRC_CCITT
+	select BITREVERSE
 
 config MISDN_IPAC
 	tristate
diff --git a/drivers/isdn/hardware/mISDN/Makefile b/drivers/isdn/hardware/mISDN/Makefile
index 422f9fd8ab9a..3f50f8c4753f 100644
--- a/drivers/isdn/hardware/mISDN/Makefile
+++ b/drivers/isdn/hardware/mISDN/Makefile
@@ -15,3 +15,5 @@ obj-$(CONFIG_MISDN_NETJET) += netjet.o
 # chip modules
 obj-$(CONFIG_MISDN_IPAC) += mISDNipac.o
 obj-$(CONFIG_MISDN_ISAR) += mISDNisar.o
+
+obj-$(CONFIG_MISDN_HDLC) += isdnhdlc.o
diff --git a/drivers/isdn/i4l/isdnhdlc.c b/drivers/isdn/hardware/mISDN/isdnhdlc.c
similarity index 99%
rename from drivers/isdn/i4l/isdnhdlc.c
rename to drivers/isdn/hardware/mISDN/isdnhdlc.c
index 027d1c590679..3a8b562e63b1 100644
--- a/drivers/isdn/i4l/isdnhdlc.c
+++ b/drivers/isdn/hardware/mISDN/isdnhdlc.c
@@ -25,8 +25,8 @@
 #include <linux/module.h>
 #include <linux/init.h>
 #include <linux/crc-ccitt.h>
-#include <linux/isdn/hdlc.h>
 #include <linux/bitrev.h>
+#include "isdnhdlc.h"
 
 /*-------------------------------------------------------------------*/
 
diff --git a/include/linux/isdn/hdlc.h b/drivers/isdn/hardware/mISDN/isdnhdlc.h
similarity index 100%
rename from include/linux/isdn/hdlc.h
rename to drivers/isdn/hardware/mISDN/isdnhdlc.h
diff --git a/drivers/isdn/hardware/mISDN/netjet.c b/drivers/isdn/hardware/mISDN/netjet.c
index 2b317cb63d06..93a2d361eda5 100644
--- a/drivers/isdn/hardware/mISDN/netjet.c
+++ b/drivers/isdn/hardware/mISDN/netjet.c
@@ -29,7 +29,7 @@
 #include "ipac.h"
 #include "iohelper.h"
 #include "netjet.h"
-#include <linux/isdn/hdlc.h>
+#include "isdnhdlc.h"
 
 #define NETJET_REV	"2.0"
 
diff --git a/drivers/isdn/i4l/Makefile b/drivers/isdn/i4l/Makefile
deleted file mode 100644
index 11fe697739d5..000000000000
-- 
2.20.0


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

* [PATCH 5/5] isdn: move capi drivers to staging
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (3 preceding siblings ...)
  2019-04-23 15:11 ` [PATCH 4/5] isdn: hdlc: move into mISDN Arnd Bergmann
@ 2019-04-23 15:11 ` Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (9 subsequent siblings)
  14 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

I tried to find any indication of whether the capi drivers are
still in use, and have not found anything  from a long time ago.

With public ISDN networks almost completely shut down over the past 12
months, there is very little you can actually do with this hardware. The
main remaining use case would be to connect ISDN voice phones to an
in-house installation with Asterisk or LCR, but anyone trying this in
turn seems to be using either the mISDN driver stack, or out-of-tree
drivers from the hardware vendors.

I may of course have missed something, so I would suggest moving
these into drivers/staging/ just in case someone still uses one
of the three remaining in-kernel drivers (avm, hysdn, gigaset).

If nobody complains, we can remove them entirely in six months,
or otherwise move the core code and any drivers that are still
needed back into drivers/isdn.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 MAINTAINERS                                   | 16 +++++++----
 drivers/isdn/Kconfig                          | 27 ------------------
 drivers/isdn/Makefile                         |  3 --
 drivers/isdn/hardware/Makefile                |  1 -
 drivers/staging/Kconfig                       |  2 ++
 drivers/staging/Makefile                      |  1 +
 .../staging/isdn/Documentation}/CREDITS       |  0
 .../isdn/Documentation}/INTERFACE.CAPI        |  0
 .../staging/isdn/Documentation}/README.avmb1  |  0
 .../isdn/Documentation}/README.gigaset        |  0
 .../staging/isdn/Documentation}/README.hysdn  |  0
 drivers/staging/isdn/Kconfig                  | 28 +++++++++++++++++++
 drivers/staging/isdn/Makefile                 |  9 ++++++
 drivers/staging/isdn/TODO                     | 22 +++++++++++++++
 .../hardware => staging/isdn}/avm/Kconfig     |  0
 .../hardware => staging/isdn}/avm/Makefile    |  2 ++
 .../hardware => staging/isdn}/avm/avm_cs.c    |  0
 .../hardware => staging/isdn}/avm/avmcard.h   |  0
 .../{isdn/hardware => staging/isdn}/avm/b1.c  |  0
 .../hardware => staging/isdn}/avm/b1dma.c     |  0
 .../hardware => staging/isdn}/avm/b1isa.c     |  0
 .../hardware => staging/isdn}/avm/b1pci.c     |  0
 .../hardware => staging/isdn}/avm/b1pcmcia.c  |  0
 .../{isdn/hardware => staging/isdn}/avm/c4.c  |  0
 .../hardware => staging/isdn}/avm/t1isa.c     |  0
 .../hardware => staging/isdn}/avm/t1pci.c     |  0
 drivers/{ => staging}/isdn/capi/Kconfig       |  0
 drivers/{ => staging}/isdn/capi/Makefile      |  2 ++
 drivers/{ => staging}/isdn/capi/capi.c        |  0
 drivers/{ => staging}/isdn/capi/capilib.c     |  0
 drivers/{ => staging}/isdn/capi/capiutil.c    |  0
 drivers/{ => staging}/isdn/capi/kcapi.c       |  0
 drivers/{ => staging}/isdn/capi/kcapi.h       |  0
 drivers/{ => staging}/isdn/capi/kcapi_proc.c  |  0
 drivers/{ => staging}/isdn/gigaset/Kconfig    |  0
 drivers/{ => staging}/isdn/gigaset/Makefile   |  2 ++
 .../{ => staging}/isdn/gigaset/asyncdata.c    |  0
 .../{ => staging}/isdn/gigaset/bas-gigaset.c  |  0
 drivers/{ => staging}/isdn/gigaset/capi.c     |  0
 drivers/{ => staging}/isdn/gigaset/common.c   |  0
 drivers/{ => staging}/isdn/gigaset/ev-layer.c |  0
 drivers/{ => staging}/isdn/gigaset/gigaset.h  |  0
 .../{ => staging}/isdn/gigaset/interface.c    |  0
 drivers/{ => staging}/isdn/gigaset/isocdata.c |  0
 drivers/{ => staging}/isdn/gigaset/proc.c     |  0
 .../{ => staging}/isdn/gigaset/ser-gigaset.c  |  0
 .../{ => staging}/isdn/gigaset/usb-gigaset.c  |  0
 drivers/{ => staging}/isdn/hysdn/Kconfig      |  0
 drivers/{ => staging}/isdn/hysdn/Makefile     |  2 ++
 drivers/{ => staging}/isdn/hysdn/boardergo.c  |  0
 drivers/{ => staging}/isdn/hysdn/boardergo.h  |  0
 drivers/{ => staging}/isdn/hysdn/hycapi.c     |  0
 drivers/{ => staging}/isdn/hysdn/hysdn_boot.c |  0
 drivers/{ => staging}/isdn/hysdn/hysdn_defs.h |  0
 drivers/{ => staging}/isdn/hysdn/hysdn_init.c |  0
 drivers/{ => staging}/isdn/hysdn/hysdn_net.c  |  0
 drivers/{ => staging}/isdn/hysdn/hysdn_pof.h  |  0
 .../{ => staging}/isdn/hysdn/hysdn_procconf.c |  0
 .../{ => staging}/isdn/hysdn/hysdn_proclog.c  |  0
 .../{ => staging}/isdn/hysdn/hysdn_sched.c    |  0
 drivers/{ => staging}/isdn/hysdn/ince1pc.h    |  0
 .../staging/isdn/include}/linux/b1lli.h       |  0
 .../staging/isdn/include}/linux/gigaset_dev.h |  0
 .../isdn/include}/linux/isdn/capilli.h        |  0
 .../isdn/include}/linux/isdn/capiutil.h       |  0
 .../isdn/include}/uapi/linux/isdn/capicmd.h   |  0
 66 files changed, 81 insertions(+), 36 deletions(-)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/CREDITS (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/INTERFACE.CAPI (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.avmb1 (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.gigaset (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.hysdn (100%)
 create mode 100644 drivers/staging/isdn/Kconfig
 create mode 100644 drivers/staging/isdn/Makefile
 create mode 100644 drivers/staging/isdn/TODO
 rename drivers/{isdn/hardware => staging/isdn}/avm/Kconfig (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/Makefile (86%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/avm_cs.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/avmcard.h (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1dma.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1isa.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1pci.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1pcmcia.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/c4.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/t1isa.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/t1pci.c (100%)
 rename drivers/{ => staging}/isdn/capi/Kconfig (100%)
 rename drivers/{ => staging}/isdn/capi/Makefile (83%)
 rename drivers/{ => staging}/isdn/capi/capi.c (100%)
 rename drivers/{ => staging}/isdn/capi/capilib.c (100%)
 rename drivers/{ => staging}/isdn/capi/capiutil.c (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi.c (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi.h (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi_proc.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/Kconfig (100%)
 rename drivers/{ => staging}/isdn/gigaset/Makefile (82%)
 rename drivers/{ => staging}/isdn/gigaset/asyncdata.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/bas-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/capi.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/common.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/ev-layer.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/gigaset.h (100%)
 rename drivers/{ => staging}/isdn/gigaset/interface.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/isocdata.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/proc.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/ser-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/usb-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/Kconfig (100%)
 rename drivers/{ => staging}/isdn/hysdn/Makefile (79%)
 rename drivers/{ => staging}/isdn/hysdn/boardergo.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/boardergo.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hycapi.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_boot.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_defs.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_init.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_net.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_pof.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_procconf.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_proclog.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_sched.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/ince1pc.h (100%)
 rename {include/uapi => drivers/staging/isdn/include}/linux/b1lli.h (100%)
 rename {include/uapi => drivers/staging/isdn/include}/linux/gigaset_dev.h (100%)
 rename {include => drivers/staging/isdn/include}/linux/isdn/capilli.h (100%)
 rename {include => drivers/staging/isdn/include}/linux/isdn/capiutil.h (100%)
 rename {include => drivers/staging/isdn/include}/uapi/linux/isdn/capicmd.h (100%)

diff --git a/MAINTAINERS b/MAINTAINERS
index 1e3a739f0145..c090207ab4fa 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -6556,9 +6556,7 @@ M:	Paul Bolle <pebolle@tiscali.nl>
 L:	gigaset307x-common@lists.sourceforge.net
 W:	http://gigaset307x.sourceforge.net/
 S:	Odd Fixes
-F:	Documentation/isdn/README.gigaset
-F:	drivers/isdn/gigaset/
-F:	include/uapi/linux/gigaset_dev.h
+F:	drivers/staging/isdn/gigaset/
 
 GNSS SUBSYSTEM
 M:	Johan Hovold <johan@kernel.org>
@@ -8236,18 +8234,26 @@ S:	Supported
 W:	http://www.linux-iscsi.org
 F:	drivers/infiniband/ulp/isert
 
-ISDN SUBSYSTEM
+ISDN/mISDN SUBSYSTEM
 M:	Karsten Keil <isdn@linux-pingi.de>
 L:	isdn4linux@listserv.isdn4linux.de (subscribers-only)
 L:	netdev@vger.kernel.org
 W:	http://www.isdn4linux.de
-T:	git git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/isdn-2.6.git
 S:	Maintained
 F:	Documentation/isdn/
+F:	drivers/staging/isdn/
 F:	drivers/isdn/
 F:	include/linux/isdn/
 F:	include/uapi/linux/isdn/
 
+ISDN/CAPI SUBSYSTEM
+M:	Karsten Keil <isdn@linux-pingi.de>
+L:	isdn4linux@listserv.isdn4linux.de (subscribers-only)
+L:	netdev@vger.kernel.org
+W:	http://www.isdn4linux.de
+S:	Odd Fixes
+F:	drivers/staging/isdn/
+
 IT87 HARDWARE MONITORING DRIVER
 M:	Jean Delvare <jdelvare@suse.com>
 L:	linux-hwmon@vger.kernel.org
diff --git a/drivers/isdn/Kconfig b/drivers/isdn/Kconfig
index 161f7527df70..7e21b5c4b9b0 100644
--- a/drivers/isdn/Kconfig
+++ b/drivers/isdn/Kconfig
@@ -20,33 +20,6 @@ menuconfig ISDN
 
 if ISDN
 
-menuconfig ISDN_CAPI
-	tristate "CAPI 2.0 subsystem"
-	help
-	  This provides CAPI (the Common ISDN Application Programming
-	  Interface) Version 2.0, a standard making it easy for programs to
-	  access ISDN hardware in a device independent way. (For details see
-	  <http://www.capi.org/>.)  CAPI supports making and accepting voice
-	  and data connections, controlling call options and protocols,
-	  as well as ISDN supplementary services like call forwarding or
-	  three-party conferences (if supported by the specific hardware
-	  driver).
-
-	  Select this option and the appropriate hardware driver below if
-	  you have an ISDN adapter supported by the CAPI subsystem.
-
-if ISDN_CAPI
-
-source "drivers/isdn/capi/Kconfig"
-
-source "drivers/isdn/hardware/Kconfig"
-
-endif # ISDN_CAPI
-
-source "drivers/isdn/gigaset/Kconfig"
-
-source "drivers/isdn/hysdn/Kconfig"
-
 source "drivers/isdn/mISDN/Kconfig"
 
 endif # ISDN
diff --git a/drivers/isdn/Makefile b/drivers/isdn/Makefile
index f2a529c5a511..0bdadffeb939 100644
--- a/drivers/isdn/Makefile
+++ b/drivers/isdn/Makefile
@@ -3,8 +3,5 @@
 
 # Object files in subdirectories
 
-obj-$(CONFIG_ISDN_CAPI)			+= capi/
 obj-$(CONFIG_MISDN)			+= mISDN/
 obj-$(CONFIG_ISDN)			+= hardware/
-obj-$(CONFIG_HYSDN)			+= hysdn/
-obj-$(CONFIG_ISDN_DRV_GIGASET)		+= gigaset/
diff --git a/drivers/isdn/hardware/Makefile b/drivers/isdn/hardware/Makefile
index e503032b05a0..da55c4a285f6 100644
--- a/drivers/isdn/hardware/Makefile
+++ b/drivers/isdn/hardware/Makefile
@@ -2,5 +2,4 @@
 
 # Object files in subdirectories
 
-obj-$(CONFIG_CAPI_AVM)		+= avm/
 obj-$(CONFIG_MISDN)		+= mISDN/
diff --git a/drivers/staging/Kconfig b/drivers/staging/Kconfig
index 62951e836cbc..53e748b90c2c 100644
--- a/drivers/staging/Kconfig
+++ b/drivers/staging/Kconfig
@@ -122,4 +122,6 @@ source "drivers/staging/axis-fifo/Kconfig"
 
 source "drivers/staging/erofs/Kconfig"
 
+source "drivers/staging/isdn/Kconfig"
+
 endif # STAGING
diff --git a/drivers/staging/Makefile b/drivers/staging/Makefile
index d1b17ddcd354..dab0be5ae2ec 100644
--- a/drivers/staging/Makefile
+++ b/drivers/staging/Makefile
@@ -51,3 +51,4 @@ obj-$(CONFIG_SOC_MT7621)	+= mt7621-dts/
 obj-$(CONFIG_STAGING_GASKET_FRAMEWORK)	+= gasket/
 obj-$(CONFIG_XIL_AXIS_FIFO)	+= axis-fifo/
 obj-$(CONFIG_EROFS_FS)		+= erofs/
+obj-$(CONFIG_ISDN_CAPI)		+= isdn/
diff --git a/Documentation/isdn/CREDITS b/drivers/staging/isdn/Documentation/CREDITS
similarity index 100%
rename from Documentation/isdn/CREDITS
rename to drivers/staging/isdn/Documentation/CREDITS
diff --git a/Documentation/isdn/INTERFACE.CAPI b/drivers/staging/isdn/Documentation/INTERFACE.CAPI
similarity index 100%
rename from Documentation/isdn/INTERFACE.CAPI
rename to drivers/staging/isdn/Documentation/INTERFACE.CAPI
diff --git a/Documentation/isdn/README.avmb1 b/drivers/staging/isdn/Documentation/README.avmb1
similarity index 100%
rename from Documentation/isdn/README.avmb1
rename to drivers/staging/isdn/Documentation/README.avmb1
diff --git a/Documentation/isdn/README.gigaset b/drivers/staging/isdn/Documentation/README.gigaset
similarity index 100%
rename from Documentation/isdn/README.gigaset
rename to drivers/staging/isdn/Documentation/README.gigaset
diff --git a/Documentation/isdn/README.hysdn b/drivers/staging/isdn/Documentation/README.hysdn
similarity index 100%
rename from Documentation/isdn/README.hysdn
rename to drivers/staging/isdn/Documentation/README.hysdn
diff --git a/drivers/staging/isdn/Kconfig b/drivers/staging/isdn/Kconfig
new file mode 100644
index 000000000000..77e1b80af716
--- /dev/null
+++ b/drivers/staging/isdn/Kconfig
@@ -0,0 +1,28 @@
+menuconfig ISDN_CAPI
+	tristate "CAPI 2.0 subsystem"
+	help
+	  This provides CAPI (the Common ISDN Application Programming
+	  Interface) Version 2.0, a standard making it easy for programs to
+	  access ISDN hardware in a device independent way. (For details see
+	  <http://www.capi.org/>.)  CAPI supports making and accepting voice
+	  and data connections, controlling call options and protocols,
+	  as well as ISDN supplementary services like call forwarding or
+	  three-party conferences (if supported by the specific hardware
+	  driver).
+
+	  Select this option and the appropriate hardware driver below if
+	  you have an ISDN adapter supported by the CAPI subsystem.
+
+if ISDN_CAPI
+
+source "drivers/staging/isdn/capi/Kconfig"
+
+source "drivers/staging/isdn/avm/Kconfig"
+
+source "drivers/staging/isdn/gigaset/Kconfig"
+
+source "drivers/staging/isdn/hysdn/Kconfig"
+
+
+endif # ISDN_CAPI
+
diff --git a/drivers/staging/isdn/Makefile b/drivers/staging/isdn/Makefile
new file mode 100644
index 000000000000..c5e8b8004f65
--- /dev/null
+++ b/drivers/staging/isdn/Makefile
@@ -0,0 +1,9 @@
+# SPDX-License-Identifier: GPL-2.0
+# Makefile for the kernel ISDN subsystem and device drivers.
+
+# Object files in subdirectories
+
+obj-$(CONFIG_ISDN_CAPI)			+= capi/
+obj-$(CONFIG_CAPI_AVM)			+= avm/
+obj-$(CONFIG_HYSDN)			+= hysdn/
+obj-$(CONFIG_ISDN_DRV_GIGASET)		+= gigaset/
diff --git a/drivers/staging/isdn/TODO b/drivers/staging/isdn/TODO
new file mode 100644
index 000000000000..9210d11eb68b
--- /dev/null
+++ b/drivers/staging/isdn/TODO
@@ -0,0 +1,22 @@
+TODO: Remove in late 2019 unless there are users
+
+
+I tried to find any indication of whether the capi drivers are
+still in use, and have not found anything  from a long time ago.
+
+With public ISDN networks almost completely shut down over the past 12
+months, there is very little you can actually do with this hardware. The
+main remaining use case would be to connect ISDN voice phones to an
+in-house installation with Asterisk or LCR, but anyone trying this in
+turn seems to be using either the mISDN driver stack, or out-of-tree
+drivers from the hardware vendors.
+
+I may of course have missed something, so I would suggest moving
+these into drivers/staging/ just in case someone still uses one
+of the three remaining in-kernel drivers (avm, hysdn, gigaset).
+
+If nobody complains, we can remove them entirely in six months,
+or otherwise move the core code and any drivers that are still
+needed back into drivers/isdn.
+
+  Arnd Bergmann <arnd@arndb.de>
diff --git a/drivers/isdn/hardware/avm/Kconfig b/drivers/staging/isdn/avm/Kconfig
similarity index 100%
rename from drivers/isdn/hardware/avm/Kconfig
rename to drivers/staging/isdn/avm/Kconfig
diff --git a/drivers/isdn/hardware/avm/Makefile b/drivers/staging/isdn/avm/Makefile
similarity index 86%
rename from drivers/isdn/hardware/avm/Makefile
rename to drivers/staging/isdn/avm/Makefile
index 3830a0573fcc..fa59f7e38e8a 100644
--- a/drivers/isdn/hardware/avm/Makefile
+++ b/drivers/staging/isdn/avm/Makefile
@@ -10,3 +10,5 @@ obj-$(CONFIG_ISDN_DRV_AVMB1_AVM_CS)	+= avm_cs.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_T1ISA)	+= t1isa.o b1.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_T1PCI)	+= t1pci.o b1.o b1dma.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_C4)		+= c4.o b1.o
+
+ccflags-y += -I$(srctree)/$(src)/../include -I$(srctree)/$(src)/../include/uapi
diff --git a/drivers/isdn/hardware/avm/avm_cs.c b/drivers/staging/isdn/avm/avm_cs.c
similarity index 100%
rename from drivers/isdn/hardware/avm/avm_cs.c
rename to drivers/staging/isdn/avm/avm_cs.c
diff --git a/drivers/isdn/hardware/avm/avmcard.h b/drivers/staging/isdn/avm/avmcard.h
similarity index 100%
rename from drivers/isdn/hardware/avm/avmcard.h
rename to drivers/staging/isdn/avm/avmcard.h
diff --git a/drivers/isdn/hardware/avm/b1.c b/drivers/staging/isdn/avm/b1.c
similarity index 100%
rename from drivers/isdn/hardware/avm/b1.c
rename to drivers/staging/isdn/avm/b1.c
diff --git a/drivers/isdn/hardware/avm/b1dma.c b/drivers/staging/isdn/avm/b1dma.c
similarity index 100%
rename from drivers/isdn/hardware/avm/b1dma.c
rename to drivers/staging/isdn/avm/b1dma.c
diff --git a/drivers/isdn/hardware/avm/b1isa.c b/drivers/staging/isdn/avm/b1isa.c
similarity index 100%
rename from drivers/isdn/hardware/avm/b1isa.c
rename to drivers/staging/isdn/avm/b1isa.c
diff --git a/drivers/isdn/hardware/avm/b1pci.c b/drivers/staging/isdn/avm/b1pci.c
similarity index 100%
rename from drivers/isdn/hardware/avm/b1pci.c
rename to drivers/staging/isdn/avm/b1pci.c
diff --git a/drivers/isdn/hardware/avm/b1pcmcia.c b/drivers/staging/isdn/avm/b1pcmcia.c
similarity index 100%
rename from drivers/isdn/hardware/avm/b1pcmcia.c
rename to drivers/staging/isdn/avm/b1pcmcia.c
diff --git a/drivers/isdn/hardware/avm/c4.c b/drivers/staging/isdn/avm/c4.c
similarity index 100%
rename from drivers/isdn/hardware/avm/c4.c
rename to drivers/staging/isdn/avm/c4.c
diff --git a/drivers/isdn/hardware/avm/t1isa.c b/drivers/staging/isdn/avm/t1isa.c
similarity index 100%
rename from drivers/isdn/hardware/avm/t1isa.c
rename to drivers/staging/isdn/avm/t1isa.c
diff --git a/drivers/isdn/hardware/avm/t1pci.c b/drivers/staging/isdn/avm/t1pci.c
similarity index 100%
rename from drivers/isdn/hardware/avm/t1pci.c
rename to drivers/staging/isdn/avm/t1pci.c
diff --git a/drivers/isdn/capi/Kconfig b/drivers/staging/isdn/capi/Kconfig
similarity index 100%
rename from drivers/isdn/capi/Kconfig
rename to drivers/staging/isdn/capi/Kconfig
diff --git a/drivers/isdn/capi/Makefile b/drivers/staging/isdn/capi/Makefile
similarity index 83%
rename from drivers/isdn/capi/Makefile
rename to drivers/staging/isdn/capi/Makefile
index 06da3ed2c40a..d299f3e75f89 100644
--- a/drivers/isdn/capi/Makefile
+++ b/drivers/staging/isdn/capi/Makefile
@@ -13,3 +13,5 @@ obj-$(CONFIG_ISDN_CAPI_CAPIDRV)		+= capidrv.o
 
 kernelcapi-y				:= kcapi.o capiutil.o capilib.o
 kernelcapi-$(CONFIG_PROC_FS)		+= kcapi_proc.o
+
+ccflags-y += -I$(srctree)/$(src)/../include -I$(srctree)/$(src)/../include/uapi
diff --git a/drivers/isdn/capi/capi.c b/drivers/staging/isdn/capi/capi.c
similarity index 100%
rename from drivers/isdn/capi/capi.c
rename to drivers/staging/isdn/capi/capi.c
diff --git a/drivers/isdn/capi/capilib.c b/drivers/staging/isdn/capi/capilib.c
similarity index 100%
rename from drivers/isdn/capi/capilib.c
rename to drivers/staging/isdn/capi/capilib.c
diff --git a/drivers/isdn/capi/capiutil.c b/drivers/staging/isdn/capi/capiutil.c
similarity index 100%
rename from drivers/isdn/capi/capiutil.c
rename to drivers/staging/isdn/capi/capiutil.c
diff --git a/drivers/isdn/capi/kcapi.c b/drivers/staging/isdn/capi/kcapi.c
similarity index 100%
rename from drivers/isdn/capi/kcapi.c
rename to drivers/staging/isdn/capi/kcapi.c
diff --git a/drivers/isdn/capi/kcapi.h b/drivers/staging/isdn/capi/kcapi.h
similarity index 100%
rename from drivers/isdn/capi/kcapi.h
rename to drivers/staging/isdn/capi/kcapi.h
diff --git a/drivers/isdn/capi/kcapi_proc.c b/drivers/staging/isdn/capi/kcapi_proc.c
similarity index 100%
rename from drivers/isdn/capi/kcapi_proc.c
rename to drivers/staging/isdn/capi/kcapi_proc.c
diff --git a/drivers/isdn/gigaset/Kconfig b/drivers/staging/isdn/gigaset/Kconfig
similarity index 100%
rename from drivers/isdn/gigaset/Kconfig
rename to drivers/staging/isdn/gigaset/Kconfig
diff --git a/drivers/isdn/gigaset/Makefile b/drivers/staging/isdn/gigaset/Makefile
similarity index 82%
rename from drivers/isdn/gigaset/Makefile
rename to drivers/staging/isdn/gigaset/Makefile
index f8ba14735bf1..bb180ca27fdb 100644
--- a/drivers/isdn/gigaset/Makefile
+++ b/drivers/staging/isdn/gigaset/Makefile
@@ -8,3 +8,5 @@ obj-$(CONFIG_ISDN_DRV_GIGASET) += gigaset.o
 obj-$(CONFIG_GIGASET_M105) += usb_gigaset.o
 obj-$(CONFIG_GIGASET_BASE) += bas_gigaset.o
 obj-$(CONFIG_GIGASET_M101) += ser_gigaset.o
+
+ccflags-y += -I$(srctree)/$(src)/../include -I$(srctree)/$(src)/../include/uapi
diff --git a/drivers/isdn/gigaset/asyncdata.c b/drivers/staging/isdn/gigaset/asyncdata.c
similarity index 100%
rename from drivers/isdn/gigaset/asyncdata.c
rename to drivers/staging/isdn/gigaset/asyncdata.c
diff --git a/drivers/isdn/gigaset/bas-gigaset.c b/drivers/staging/isdn/gigaset/bas-gigaset.c
similarity index 100%
rename from drivers/isdn/gigaset/bas-gigaset.c
rename to drivers/staging/isdn/gigaset/bas-gigaset.c
diff --git a/drivers/isdn/gigaset/capi.c b/drivers/staging/isdn/gigaset/capi.c
similarity index 100%
rename from drivers/isdn/gigaset/capi.c
rename to drivers/staging/isdn/gigaset/capi.c
diff --git a/drivers/isdn/gigaset/common.c b/drivers/staging/isdn/gigaset/common.c
similarity index 100%
rename from drivers/isdn/gigaset/common.c
rename to drivers/staging/isdn/gigaset/common.c
diff --git a/drivers/isdn/gigaset/ev-layer.c b/drivers/staging/isdn/gigaset/ev-layer.c
similarity index 100%
rename from drivers/isdn/gigaset/ev-layer.c
rename to drivers/staging/isdn/gigaset/ev-layer.c
diff --git a/drivers/isdn/gigaset/gigaset.h b/drivers/staging/isdn/gigaset/gigaset.h
similarity index 100%
rename from drivers/isdn/gigaset/gigaset.h
rename to drivers/staging/isdn/gigaset/gigaset.h
diff --git a/drivers/isdn/gigaset/interface.c b/drivers/staging/isdn/gigaset/interface.c
similarity index 100%
rename from drivers/isdn/gigaset/interface.c
rename to drivers/staging/isdn/gigaset/interface.c
diff --git a/drivers/isdn/gigaset/isocdata.c b/drivers/staging/isdn/gigaset/isocdata.c
similarity index 100%
rename from drivers/isdn/gigaset/isocdata.c
rename to drivers/staging/isdn/gigaset/isocdata.c
diff --git a/drivers/isdn/gigaset/proc.c b/drivers/staging/isdn/gigaset/proc.c
similarity index 100%
rename from drivers/isdn/gigaset/proc.c
rename to drivers/staging/isdn/gigaset/proc.c
diff --git a/drivers/isdn/gigaset/ser-gigaset.c b/drivers/staging/isdn/gigaset/ser-gigaset.c
similarity index 100%
rename from drivers/isdn/gigaset/ser-gigaset.c
rename to drivers/staging/isdn/gigaset/ser-gigaset.c
diff --git a/drivers/isdn/gigaset/usb-gigaset.c b/drivers/staging/isdn/gigaset/usb-gigaset.c
similarity index 100%
rename from drivers/isdn/gigaset/usb-gigaset.c
rename to drivers/staging/isdn/gigaset/usb-gigaset.c
diff --git a/drivers/isdn/hysdn/Kconfig b/drivers/staging/isdn/hysdn/Kconfig
similarity index 100%
rename from drivers/isdn/hysdn/Kconfig
rename to drivers/staging/isdn/hysdn/Kconfig
diff --git a/drivers/isdn/hysdn/Makefile b/drivers/staging/isdn/hysdn/Makefile
similarity index 79%
rename from drivers/isdn/hysdn/Makefile
rename to drivers/staging/isdn/hysdn/Makefile
index da63b636267d..23c6159513a8 100644
--- a/drivers/isdn/hysdn/Makefile
+++ b/drivers/staging/isdn/hysdn/Makefile
@@ -9,3 +9,5 @@ obj-$(CONFIG_HYSDN)		+= hysdn.o
 hysdn-y				:= hysdn_procconf.o hysdn_proclog.o boardergo.o \
 				   hysdn_boot.o hysdn_sched.o hysdn_net.o hysdn_init.o
 hysdn-$(CONFIG_HYSDN_CAPI)	+= hycapi.o
+
+ccflags-y += -I$(srctree)/$(src)/../include -I$(srctree)/$(src)/../include/uapi
diff --git a/drivers/isdn/hysdn/boardergo.c b/drivers/staging/isdn/hysdn/boardergo.c
similarity index 100%
rename from drivers/isdn/hysdn/boardergo.c
rename to drivers/staging/isdn/hysdn/boardergo.c
diff --git a/drivers/isdn/hysdn/boardergo.h b/drivers/staging/isdn/hysdn/boardergo.h
similarity index 100%
rename from drivers/isdn/hysdn/boardergo.h
rename to drivers/staging/isdn/hysdn/boardergo.h
diff --git a/drivers/isdn/hysdn/hycapi.c b/drivers/staging/isdn/hysdn/hycapi.c
similarity index 100%
rename from drivers/isdn/hysdn/hycapi.c
rename to drivers/staging/isdn/hysdn/hycapi.c
diff --git a/drivers/isdn/hysdn/hysdn_boot.c b/drivers/staging/isdn/hysdn/hysdn_boot.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_boot.c
rename to drivers/staging/isdn/hysdn/hysdn_boot.c
diff --git a/drivers/isdn/hysdn/hysdn_defs.h b/drivers/staging/isdn/hysdn/hysdn_defs.h
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_defs.h
rename to drivers/staging/isdn/hysdn/hysdn_defs.h
diff --git a/drivers/isdn/hysdn/hysdn_init.c b/drivers/staging/isdn/hysdn/hysdn_init.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_init.c
rename to drivers/staging/isdn/hysdn/hysdn_init.c
diff --git a/drivers/isdn/hysdn/hysdn_net.c b/drivers/staging/isdn/hysdn/hysdn_net.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_net.c
rename to drivers/staging/isdn/hysdn/hysdn_net.c
diff --git a/drivers/isdn/hysdn/hysdn_pof.h b/drivers/staging/isdn/hysdn/hysdn_pof.h
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_pof.h
rename to drivers/staging/isdn/hysdn/hysdn_pof.h
diff --git a/drivers/isdn/hysdn/hysdn_procconf.c b/drivers/staging/isdn/hysdn/hysdn_procconf.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_procconf.c
rename to drivers/staging/isdn/hysdn/hysdn_procconf.c
diff --git a/drivers/isdn/hysdn/hysdn_proclog.c b/drivers/staging/isdn/hysdn/hysdn_proclog.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_proclog.c
rename to drivers/staging/isdn/hysdn/hysdn_proclog.c
diff --git a/drivers/isdn/hysdn/hysdn_sched.c b/drivers/staging/isdn/hysdn/hysdn_sched.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_sched.c
rename to drivers/staging/isdn/hysdn/hysdn_sched.c
diff --git a/drivers/isdn/hysdn/ince1pc.h b/drivers/staging/isdn/hysdn/ince1pc.h
similarity index 100%
rename from drivers/isdn/hysdn/ince1pc.h
rename to drivers/staging/isdn/hysdn/ince1pc.h
diff --git a/include/uapi/linux/b1lli.h b/drivers/staging/isdn/include/linux/b1lli.h
similarity index 100%
rename from include/uapi/linux/b1lli.h
rename to drivers/staging/isdn/include/linux/b1lli.h
diff --git a/include/uapi/linux/gigaset_dev.h b/drivers/staging/isdn/include/linux/gigaset_dev.h
similarity index 100%
rename from include/uapi/linux/gigaset_dev.h
rename to drivers/staging/isdn/include/linux/gigaset_dev.h
diff --git a/include/linux/isdn/capilli.h b/drivers/staging/isdn/include/linux/isdn/capilli.h
similarity index 100%
rename from include/linux/isdn/capilli.h
rename to drivers/staging/isdn/include/linux/isdn/capilli.h
diff --git a/include/linux/isdn/capiutil.h b/drivers/staging/isdn/include/linux/isdn/capiutil.h
similarity index 100%
rename from include/linux/isdn/capiutil.h
rename to drivers/staging/isdn/include/linux/isdn/capiutil.h
diff --git a/include/uapi/linux/isdn/capicmd.h b/drivers/staging/isdn/include/uapi/linux/isdn/capicmd.h
similarity index 100%
rename from include/uapi/linux/isdn/capicmd.h
rename to drivers/staging/isdn/include/uapi/linux/isdn/capicmd.h
-- 
2.20.0


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

* [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (4 preceding siblings ...)
  2019-04-23 15:11 ` [PATCH 5/5] isdn: move capi drivers to staging Arnd Bergmann
@ 2019-04-23 15:11 ` Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 1/5] isdn: gigaset: remove i4l support Arnd Bergmann
                   ` (8 subsequent siblings)
  14 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

When isdn4linux came up in the context of another patch series, I
remembered that we had discussed removing it a while ago.

It turns out that the suggestion from Karsten Keil wa to remove I4L
in 2018 after the last public ISDN networks are shut down. This has
happened now (with a very small number of exceptions), so I guess it's
time to try again.

We currently have three ISDN stacks in the kernel: the original
isdn4linux, the newer CAPI, and finally mISDN stack.

As far as I can tell, anyone using ISDN with mainline kernel drivers in
the past few years uses mISDN, and this is typically used for voice-only
PBX installations that don't require a public network.

The older stacks support additional features for data networks, but those
typically make no sense any more if there is no network to connect to.

My proposal for this time is to kill off isdn4linux entirely, as it seems
to have been unusable for quite a while. This code has been abandoned
for many years and it does get in the way of maintenance.

CAPI in turn is not quite as obsolete, but as I have been unable to find
any users, I would suggest moving it to drivers/staging while we
figure out if anyone is using it. If not, it can then be removed
as well. If it turns out that there are users that are on 5.x kernels
or need to update to them, we can decide to leave parts of it for
longer, or move them back.

If anyone is still using isdn4linux and CAPI with modern kernels, please
speak up now.

      Arnd

[1] https://patchwork.kernel.org/patch/8484861/#17900371

Arnd Bergmann (5):
  isdn: gigaset: remove i4l support
  isdn: remove hisax driver
  isdn: remove isdn4linux
  isdn: hdlc: move into mISDN
  isdn: move capi drivers to staging

 Documentation/isdn/HiSax.cert                 |   96 -
 Documentation/isdn/INTERFACE                  |  759 ----
 Documentation/isdn/INTERFACE.fax              |  163 -
 Documentation/isdn/README                     |  599 ---
 Documentation/isdn/README.FAQ                 |   26 -
 Documentation/isdn/README.HiSax               |  659 ---
 Documentation/isdn/README.audio               |  138 -
 Documentation/isdn/README.concap              |  259 --
 Documentation/isdn/README.diversion           |  127 -
 Documentation/isdn/README.fax                 |   45 -
 Documentation/isdn/README.hfc-pci             |   41 -
 Documentation/isdn/README.syncppp             |   58 -
 Documentation/isdn/README.x25                 |  184 -
 Documentation/isdn/syncPPP.FAQ                |  224 -
 Documentation/process/changes.rst             |   16 +-
 MAINTAINERS                                   |   18 +-
 drivers/isdn/Kconfig                          |   53 -
 drivers/isdn/Makefile                         |    7 -
 drivers/isdn/capi/capidrv.c                   | 2525 -----------
 drivers/isdn/capi/capidrv.h                   |  140 -
 drivers/isdn/divert/Makefile                  |    9 -
 drivers/isdn/divert/divert_init.c             |   82 -
 drivers/isdn/divert/divert_procfs.c           |  336 --
 drivers/isdn/divert/isdn_divert.c             |  846 ----
 drivers/isdn/divert/isdn_divert.h             |  132 -
 drivers/isdn/gigaset/dummyll.c                |   77 -
 drivers/isdn/gigaset/i4l.c                    |  695 ---
 drivers/isdn/hardware/Makefile                |    1 -
 drivers/isdn/hardware/mISDN/Kconfig           |    7 +-
 drivers/isdn/hardware/mISDN/Makefile          |    2 +
 .../isdn/{i4l => hardware/mISDN}/isdnhdlc.c   |    2 +-
 .../isdn/hardware/mISDN/isdnhdlc.h            |    0
 drivers/isdn/hardware/mISDN/netjet.c          |    2 +-
 drivers/isdn/hisax/Kconfig                    |  422 --
 drivers/isdn/hisax/Makefile                   |   60 -
 drivers/isdn/hisax/amd7930_fn.c               |  794 ----
 drivers/isdn/hisax/amd7930_fn.h               |   37 -
 drivers/isdn/hisax/arcofi.c                   |  131 -
 drivers/isdn/hisax/arcofi.h                   |   27 -
 drivers/isdn/hisax/asuscom.c                  |  423 --
 drivers/isdn/hisax/avm_a1.c                   |  307 --
 drivers/isdn/hisax/avm_a1p.c                  |  267 --
 drivers/isdn/hisax/avm_pci.c                  |  904 ----
 drivers/isdn/hisax/avma1_cs.c                 |  162 -
 drivers/isdn/hisax/bkm_a4t.c                  |  358 --
 drivers/isdn/hisax/bkm_a8.c                   |  433 --
 drivers/isdn/hisax/bkm_ax.h                   |  119 -
 drivers/isdn/hisax/callc.c                    | 1792 --------
 drivers/isdn/hisax/config.c                   | 1993 ---------
 drivers/isdn/hisax/diva.c                     | 1282 ------
 drivers/isdn/hisax/elsa.c                     | 1245 ------
 drivers/isdn/hisax/elsa_cs.c                  |  218 -
 drivers/isdn/hisax/elsa_ser.c                 |  659 ---
 drivers/isdn/hisax/enternow_pci.c             |  420 --
 drivers/isdn/hisax/fsm.c                      |  161 -
 drivers/isdn/hisax/fsm.h                      |   61 -
 drivers/isdn/hisax/gazel.c                    |  691 ---
 drivers/isdn/hisax/hfc4s8s_l1.c               | 1584 -------
 drivers/isdn/hisax/hfc4s8s_l1.h               |   89 -
 drivers/isdn/hisax/hfc_2bds0.c                | 1078 -----
 drivers/isdn/hisax/hfc_2bds0.h                |  128 -
 drivers/isdn/hisax/hfc_2bs0.c                 |  591 ---
 drivers/isdn/hisax/hfc_2bs0.h                 |   60 -
 drivers/isdn/hisax/hfc_pci.c                  | 1755 --------
 drivers/isdn/hisax/hfc_pci.h                  |  235 --
 drivers/isdn/hisax/hfc_sx.c                   | 1517 -------
 drivers/isdn/hisax/hfc_sx.h                   |  196 -
 drivers/isdn/hisax/hfc_usb.c                  | 1608 -------
 drivers/isdn/hisax/hfc_usb.h                  |  208 -
 drivers/isdn/hisax/hfcscard.c                 |  261 --
 drivers/isdn/hisax/hisax.h                    | 1352 ------
 drivers/isdn/hisax/hisax_cfg.h                |   66 -
 drivers/isdn/hisax/hisax_debug.h              |   80 -
 drivers/isdn/hisax/hisax_fcpcipnp.c           | 1024 -----
 drivers/isdn/hisax/hisax_fcpcipnp.h           |   58 -
 drivers/isdn/hisax/hisax_if.h                 |   66 -
 drivers/isdn/hisax/hisax_isac.c               |  895 ----
 drivers/isdn/hisax/hisax_isac.h               |   46 -
 drivers/isdn/hisax/hscx.c                     |  277 --
 drivers/isdn/hisax/hscx.h                     |   41 -
 drivers/isdn/hisax/hscx_irq.c                 |  294 --
 drivers/isdn/hisax/icc.c                      |  680 ---
 drivers/isdn/hisax/icc.h                      |   72 -
 drivers/isdn/hisax/ipac.h                     |   29 -
 drivers/isdn/hisax/ipacx.c                    |  913 ----
 drivers/isdn/hisax/ipacx.h                    |  162 -
 drivers/isdn/hisax/isac.c                     |  681 ---
 drivers/isdn/hisax/isac.h                     |   70 -
 drivers/isdn/hisax/isar.c                     | 1910 ---------
 drivers/isdn/hisax/isar.h                     |  222 -
 drivers/isdn/hisax/isdnl1.c                   |  930 ----
 drivers/isdn/hisax/isdnl1.h                   |   32 -
 drivers/isdn/hisax/isdnl2.c                   | 1839 --------
 drivers/isdn/hisax/isdnl2.h                   |   25 -
 drivers/isdn/hisax/isdnl3.c                   |  594 ---
 drivers/isdn/hisax/isdnl3.h                   |   42 -
 drivers/isdn/hisax/isurf.c                    |  305 --
 drivers/isdn/hisax/ix1_micro.c                |  316 --
 drivers/isdn/hisax/jade.c                     |  305 --
 drivers/isdn/hisax/jade.h                     |  134 -
 drivers/isdn/hisax/jade_irq.c                 |  238 --
 drivers/isdn/hisax/l3_1tr6.c                  |  932 ----
 drivers/isdn/hisax/l3_1tr6.h                  |  164 -
 drivers/isdn/hisax/l3dss1.c                   | 3227 --------------
 drivers/isdn/hisax/l3dss1.h                   |  124 -
 drivers/isdn/hisax/l3ni1.c                    | 3182 --------------
 drivers/isdn/hisax/l3ni1.h                    |  136 -
 drivers/isdn/hisax/lmgr.c                     |   50 -
 drivers/isdn/hisax/mic.c                      |  235 --
 drivers/isdn/hisax/netjet.c                   |  985 -----
 drivers/isdn/hisax/netjet.h                   |   69 -
 drivers/isdn/hisax/niccy.c                    |  380 --
 drivers/isdn/hisax/nj_s.c                     |  294 --
 drivers/isdn/hisax/nj_u.c                     |  258 --
 drivers/isdn/hisax/q931.c                     | 1513 -------
 drivers/isdn/hisax/s0box.c                    |  260 --
 drivers/isdn/hisax/saphir.c                   |  296 --
 drivers/isdn/hisax/sedlbauer.c                |  873 ----
 drivers/isdn/hisax/sedlbauer_cs.c             |  209 -
 drivers/isdn/hisax/sportster.c                |  267 --
 drivers/isdn/hisax/st5481.h                   |  529 ---
 drivers/isdn/hisax/st5481_b.c                 |  380 --
 drivers/isdn/hisax/st5481_d.c                 |  780 ----
 drivers/isdn/hisax/st5481_init.c              |  221 -
 drivers/isdn/hisax/st5481_usb.c               |  659 ---
 drivers/isdn/hisax/tei.c                      |  465 --
 drivers/isdn/hisax/teleint.c                  |  334 --
 drivers/isdn/hisax/teles0.c                   |  364 --
 drivers/isdn/hisax/teles3.c                   |  498 ---
 drivers/isdn/hisax/teles_cs.c                 |  200 -
 drivers/isdn/hisax/telespci.c                 |  349 --
 drivers/isdn/hisax/w6692.c                    | 1085 -----
 drivers/isdn/hisax/w6692.h                    |  184 -
 drivers/isdn/i4l/Kconfig                      |  128 -
 drivers/isdn/i4l/Makefile                     |   20 -
 drivers/isdn/i4l/isdn_audio.c                 |  711 ----
 drivers/isdn/i4l/isdn_audio.h                 |   44 -
 drivers/isdn/i4l/isdn_bsdcomp.c               |  930 ----
 drivers/isdn/i4l/isdn_common.c                | 2368 -----------
 drivers/isdn/i4l/isdn_common.h                |   47 -
 drivers/isdn/i4l/isdn_concap.c                |   99 -
 drivers/isdn/i4l/isdn_concap.h                |   11 -
 drivers/isdn/i4l/isdn_net.c                   | 3198 --------------
 drivers/isdn/i4l/isdn_net.h                   |  151 -
 drivers/isdn/i4l/isdn_ppp.c                   | 3053 --------------
 drivers/isdn/i4l/isdn_ppp.h                   |   41 -
 drivers/isdn/i4l/isdn_tty.c                   | 3756 -----------------
 drivers/isdn/i4l/isdn_tty.h                   |  120 -
 drivers/isdn/i4l/isdn_ttyfax.c                | 1123 -----
 drivers/isdn/i4l/isdn_ttyfax.h                |   17 -
 drivers/isdn/i4l/isdn_v110.c                  |  625 ---
 drivers/isdn/i4l/isdn_v110.h                  |   29 -
 drivers/isdn/i4l/isdn_x25iface.c              |  332 --
 drivers/isdn/i4l/isdn_x25iface.h              |   30 -
 drivers/isdn/isdnloop/Makefile                |    5 -
 drivers/isdn/isdnloop/isdnloop.c              | 1528 -------
 drivers/isdn/isdnloop/isdnloop.h              |  112 -
 drivers/staging/Kconfig                       |    2 +
 drivers/staging/Makefile                      |    1 +
 .../staging/isdn/Documentation}/CREDITS       |    0
 .../isdn/Documentation}/INTERFACE.CAPI        |    0
 .../staging/isdn/Documentation}/README.avmb1  |    0
 .../isdn/Documentation}/README.gigaset        |   36 +-
 .../staging/isdn/Documentation}/README.hysdn  |    0
 drivers/staging/isdn/Kconfig                  |   28 +
 drivers/staging/isdn/Makefile                 |    9 +
 drivers/staging/isdn/TODO                     |   22 +
 .../hardware => staging/isdn}/avm/Kconfig     |    0
 .../hardware => staging/isdn}/avm/Makefile    |    2 +
 .../hardware => staging/isdn}/avm/avm_cs.c    |    0
 .../hardware => staging/isdn}/avm/avmcard.h   |    0
 .../{isdn/hardware => staging/isdn}/avm/b1.c  |    0
 .../hardware => staging/isdn}/avm/b1dma.c     |    0
 .../hardware => staging/isdn}/avm/b1isa.c     |    0
 .../hardware => staging/isdn}/avm/b1pci.c     |    0
 .../hardware => staging/isdn}/avm/b1pcmcia.c  |    0
 .../{isdn/hardware => staging/isdn}/avm/c4.c  |    0
 .../hardware => staging/isdn}/avm/t1isa.c     |    0
 .../hardware => staging/isdn}/avm/t1pci.c     |    0
 drivers/{ => staging}/isdn/capi/Kconfig       |    9 -
 drivers/{ => staging}/isdn/capi/Makefile      |    2 +
 drivers/{ => staging}/isdn/capi/capi.c        |    0
 drivers/{ => staging}/isdn/capi/capilib.c     |    0
 drivers/{ => staging}/isdn/capi/capiutil.c    |    0
 drivers/{ => staging}/isdn/capi/kcapi.c       |    0
 drivers/{ => staging}/isdn/capi/kcapi.h       |    0
 drivers/{ => staging}/isdn/capi/kcapi_proc.c  |    0
 drivers/{ => staging}/isdn/gigaset/Kconfig    |   22 +-
 drivers/{ => staging}/isdn/gigaset/Makefile   |    7 +-
 .../{ => staging}/isdn/gigaset/asyncdata.c    |    0
 .../{ => staging}/isdn/gigaset/bas-gigaset.c  |    0
 drivers/{ => staging}/isdn/gigaset/capi.c     |    0
 drivers/{ => staging}/isdn/gigaset/common.c   |    0
 drivers/{ => staging}/isdn/gigaset/ev-layer.c |    0
 drivers/{ => staging}/isdn/gigaset/gigaset.h  |    0
 .../{ => staging}/isdn/gigaset/interface.c    |    0
 drivers/{ => staging}/isdn/gigaset/isocdata.c |    0
 drivers/{ => staging}/isdn/gigaset/proc.c     |    0
 .../{ => staging}/isdn/gigaset/ser-gigaset.c  |    0
 .../{ => staging}/isdn/gigaset/usb-gigaset.c  |    0
 drivers/{ => staging}/isdn/hysdn/Kconfig      |    0
 drivers/{ => staging}/isdn/hysdn/Makefile     |    2 +
 drivers/{ => staging}/isdn/hysdn/boardergo.c  |    0
 drivers/{ => staging}/isdn/hysdn/boardergo.h  |    0
 drivers/{ => staging}/isdn/hysdn/hycapi.c     |    0
 drivers/{ => staging}/isdn/hysdn/hysdn_boot.c |    0
 drivers/{ => staging}/isdn/hysdn/hysdn_defs.h |    0
 drivers/{ => staging}/isdn/hysdn/hysdn_init.c |    0
 drivers/{ => staging}/isdn/hysdn/hysdn_net.c  |    0
 drivers/{ => staging}/isdn/hysdn/hysdn_pof.h  |    0
 .../{ => staging}/isdn/hysdn/hysdn_procconf.c |    0
 .../{ => staging}/isdn/hysdn/hysdn_proclog.c  |    0
 .../{ => staging}/isdn/hysdn/hysdn_sched.c    |    0
 drivers/{ => staging}/isdn/hysdn/ince1pc.h    |    0
 .../staging/isdn/include}/linux/b1lli.h       |    0
 .../staging/isdn/include}/linux/gigaset_dev.h |    0
 .../isdn/include}/linux/isdn/capilli.h        |    0
 .../isdn/include}/linux/isdn/capiutil.h       |    0
 .../isdn/include}/uapi/linux/isdn/capicmd.h   |    0
 include/linux/concap.h                        |  112 -
 include/linux/isdn.h                          |  473 ---
 include/linux/isdn_divertif.h                 |   35 -
 include/linux/isdn_ppp.h                      |  194 -
 include/linux/isdnif.h                        |  505 ---
 include/linux/wanrouter.h                     |   11 -
 include/uapi/linux/isdn.h                     |  144 -
 include/uapi/linux/isdn_divertif.h            |   31 -
 include/uapi/linux/isdn_ppp.h                 |   68 -
 include/uapi/linux/isdnif.h                   |   57 -
 include/uapi/linux/wanrouter.h                |   18 -
 230 files changed, 102 insertions(+), 83970 deletions(-)
 delete mode 100644 Documentation/isdn/HiSax.cert
 delete mode 100644 Documentation/isdn/INTERFACE
 delete mode 100644 Documentation/isdn/INTERFACE.fax
 delete mode 100644 Documentation/isdn/README
 delete mode 100644 Documentation/isdn/README.FAQ
 delete mode 100644 Documentation/isdn/README.HiSax
 delete mode 100644 Documentation/isdn/README.audio
 delete mode 100644 Documentation/isdn/README.concap
 delete mode 100644 Documentation/isdn/README.diversion
 delete mode 100644 Documentation/isdn/README.fax
 delete mode 100644 Documentation/isdn/README.hfc-pci
 delete mode 100644 Documentation/isdn/README.syncppp
 delete mode 100644 Documentation/isdn/README.x25
 delete mode 100644 Documentation/isdn/syncPPP.FAQ
 delete mode 100644 drivers/isdn/capi/capidrv.c
 delete mode 100644 drivers/isdn/capi/capidrv.h
 delete mode 100644 drivers/isdn/divert/Makefile
 delete mode 100644 drivers/isdn/divert/divert_init.c
 delete mode 100644 drivers/isdn/divert/divert_procfs.c
 delete mode 100644 drivers/isdn/divert/isdn_divert.c
 delete mode 100644 drivers/isdn/divert/isdn_divert.h
 delete mode 100644 drivers/isdn/gigaset/dummyll.c
 delete mode 100644 drivers/isdn/gigaset/i4l.c
 rename drivers/isdn/{i4l => hardware/mISDN}/isdnhdlc.c (99%)
 rename include/linux/isdn/hdlc.h => drivers/isdn/hardware/mISDN/isdnhdlc.h (100%)
 delete mode 100644 drivers/isdn/hisax/Kconfig
 delete mode 100644 drivers/isdn/hisax/Makefile
 delete mode 100644 drivers/isdn/hisax/amd7930_fn.c
 delete mode 100644 drivers/isdn/hisax/amd7930_fn.h
 delete mode 100644 drivers/isdn/hisax/arcofi.c
 delete mode 100644 drivers/isdn/hisax/arcofi.h
 delete mode 100644 drivers/isdn/hisax/asuscom.c
 delete mode 100644 drivers/isdn/hisax/avm_a1.c
 delete mode 100644 drivers/isdn/hisax/avm_a1p.c
 delete mode 100644 drivers/isdn/hisax/avm_pci.c
 delete mode 100644 drivers/isdn/hisax/avma1_cs.c
 delete mode 100644 drivers/isdn/hisax/bkm_a4t.c
 delete mode 100644 drivers/isdn/hisax/bkm_a8.c
 delete mode 100644 drivers/isdn/hisax/bkm_ax.h
 delete mode 100644 drivers/isdn/hisax/callc.c
 delete mode 100644 drivers/isdn/hisax/config.c
 delete mode 100644 drivers/isdn/hisax/diva.c
 delete mode 100644 drivers/isdn/hisax/elsa.c
 delete mode 100644 drivers/isdn/hisax/elsa_cs.c
 delete mode 100644 drivers/isdn/hisax/elsa_ser.c
 delete mode 100644 drivers/isdn/hisax/enternow_pci.c
 delete mode 100644 drivers/isdn/hisax/fsm.c
 delete mode 100644 drivers/isdn/hisax/fsm.h
 delete mode 100644 drivers/isdn/hisax/gazel.c
 delete mode 100644 drivers/isdn/hisax/hfc4s8s_l1.c
 delete mode 100644 drivers/isdn/hisax/hfc4s8s_l1.h
 delete mode 100644 drivers/isdn/hisax/hfc_2bds0.c
 delete mode 100644 drivers/isdn/hisax/hfc_2bds0.h
 delete mode 100644 drivers/isdn/hisax/hfc_2bs0.c
 delete mode 100644 drivers/isdn/hisax/hfc_2bs0.h
 delete mode 100644 drivers/isdn/hisax/hfc_pci.c
 delete mode 100644 drivers/isdn/hisax/hfc_pci.h
 delete mode 100644 drivers/isdn/hisax/hfc_sx.c
 delete mode 100644 drivers/isdn/hisax/hfc_sx.h
 delete mode 100644 drivers/isdn/hisax/hfc_usb.c
 delete mode 100644 drivers/isdn/hisax/hfc_usb.h
 delete mode 100644 drivers/isdn/hisax/hfcscard.c
 delete mode 100644 drivers/isdn/hisax/hisax.h
 delete mode 100644 drivers/isdn/hisax/hisax_cfg.h
 delete mode 100644 drivers/isdn/hisax/hisax_debug.h
 delete mode 100644 drivers/isdn/hisax/hisax_fcpcipnp.c
 delete mode 100644 drivers/isdn/hisax/hisax_fcpcipnp.h
 delete mode 100644 drivers/isdn/hisax/hisax_if.h
 delete mode 100644 drivers/isdn/hisax/hisax_isac.c
 delete mode 100644 drivers/isdn/hisax/hisax_isac.h
 delete mode 100644 drivers/isdn/hisax/hscx.c
 delete mode 100644 drivers/isdn/hisax/hscx.h
 delete mode 100644 drivers/isdn/hisax/hscx_irq.c
 delete mode 100644 drivers/isdn/hisax/icc.c
 delete mode 100644 drivers/isdn/hisax/icc.h
 delete mode 100644 drivers/isdn/hisax/ipac.h
 delete mode 100644 drivers/isdn/hisax/ipacx.c
 delete mode 100644 drivers/isdn/hisax/ipacx.h
 delete mode 100644 drivers/isdn/hisax/isac.c
 delete mode 100644 drivers/isdn/hisax/isac.h
 delete mode 100644 drivers/isdn/hisax/isar.c
 delete mode 100644 drivers/isdn/hisax/isar.h
 delete mode 100644 drivers/isdn/hisax/isdnl1.c
 delete mode 100644 drivers/isdn/hisax/isdnl1.h
 delete mode 100644 drivers/isdn/hisax/isdnl2.c
 delete mode 100644 drivers/isdn/hisax/isdnl2.h
 delete mode 100644 drivers/isdn/hisax/isdnl3.c
 delete mode 100644 drivers/isdn/hisax/isdnl3.h
 delete mode 100644 drivers/isdn/hisax/isurf.c
 delete mode 100644 drivers/isdn/hisax/ix1_micro.c
 delete mode 100644 drivers/isdn/hisax/jade.c
 delete mode 100644 drivers/isdn/hisax/jade.h
 delete mode 100644 drivers/isdn/hisax/jade_irq.c
 delete mode 100644 drivers/isdn/hisax/l3_1tr6.c
 delete mode 100644 drivers/isdn/hisax/l3_1tr6.h
 delete mode 100644 drivers/isdn/hisax/l3dss1.c
 delete mode 100644 drivers/isdn/hisax/l3dss1.h
 delete mode 100644 drivers/isdn/hisax/l3ni1.c
 delete mode 100644 drivers/isdn/hisax/l3ni1.h
 delete mode 100644 drivers/isdn/hisax/lmgr.c
 delete mode 100644 drivers/isdn/hisax/mic.c
 delete mode 100644 drivers/isdn/hisax/netjet.c
 delete mode 100644 drivers/isdn/hisax/netjet.h
 delete mode 100644 drivers/isdn/hisax/niccy.c
 delete mode 100644 drivers/isdn/hisax/nj_s.c
 delete mode 100644 drivers/isdn/hisax/nj_u.c
 delete mode 100644 drivers/isdn/hisax/q931.c
 delete mode 100644 drivers/isdn/hisax/s0box.c
 delete mode 100644 drivers/isdn/hisax/saphir.c
 delete mode 100644 drivers/isdn/hisax/sedlbauer.c
 delete mode 100644 drivers/isdn/hisax/sedlbauer_cs.c
 delete mode 100644 drivers/isdn/hisax/sportster.c
 delete mode 100644 drivers/isdn/hisax/st5481.h
 delete mode 100644 drivers/isdn/hisax/st5481_b.c
 delete mode 100644 drivers/isdn/hisax/st5481_d.c
 delete mode 100644 drivers/isdn/hisax/st5481_init.c
 delete mode 100644 drivers/isdn/hisax/st5481_usb.c
 delete mode 100644 drivers/isdn/hisax/tei.c
 delete mode 100644 drivers/isdn/hisax/teleint.c
 delete mode 100644 drivers/isdn/hisax/teles0.c
 delete mode 100644 drivers/isdn/hisax/teles3.c
 delete mode 100644 drivers/isdn/hisax/teles_cs.c
 delete mode 100644 drivers/isdn/hisax/telespci.c
 delete mode 100644 drivers/isdn/hisax/w6692.c
 delete mode 100644 drivers/isdn/hisax/w6692.h
 delete mode 100644 drivers/isdn/i4l/Kconfig
 delete mode 100644 drivers/isdn/i4l/Makefile
 delete mode 100644 drivers/isdn/i4l/isdn_audio.c
 delete mode 100644 drivers/isdn/i4l/isdn_audio.h
 delete mode 100644 drivers/isdn/i4l/isdn_bsdcomp.c
 delete mode 100644 drivers/isdn/i4l/isdn_common.c
 delete mode 100644 drivers/isdn/i4l/isdn_common.h
 delete mode 100644 drivers/isdn/i4l/isdn_concap.c
 delete mode 100644 drivers/isdn/i4l/isdn_concap.h
 delete mode 100644 drivers/isdn/i4l/isdn_net.c
 delete mode 100644 drivers/isdn/i4l/isdn_net.h
 delete mode 100644 drivers/isdn/i4l/isdn_ppp.c
 delete mode 100644 drivers/isdn/i4l/isdn_ppp.h
 delete mode 100644 drivers/isdn/i4l/isdn_tty.c
 delete mode 100644 drivers/isdn/i4l/isdn_tty.h
 delete mode 100644 drivers/isdn/i4l/isdn_ttyfax.c
 delete mode 100644 drivers/isdn/i4l/isdn_ttyfax.h
 delete mode 100644 drivers/isdn/i4l/isdn_v110.c
 delete mode 100644 drivers/isdn/i4l/isdn_v110.h
 delete mode 100644 drivers/isdn/i4l/isdn_x25iface.c
 delete mode 100644 drivers/isdn/i4l/isdn_x25iface.h
 delete mode 100644 drivers/isdn/isdnloop/Makefile
 delete mode 100644 drivers/isdn/isdnloop/isdnloop.c
 delete mode 100644 drivers/isdn/isdnloop/isdnloop.h
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/CREDITS (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/INTERFACE.CAPI (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.avmb1 (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.gigaset (91%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.hysdn (100%)
 create mode 100644 drivers/staging/isdn/Kconfig
 create mode 100644 drivers/staging/isdn/Makefile
 create mode 100644 drivers/staging/isdn/TODO
 rename drivers/{isdn/hardware => staging/isdn}/avm/Kconfig (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/Makefile (86%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/avm_cs.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/avmcard.h (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1dma.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1isa.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1pci.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1pcmcia.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/c4.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/t1isa.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/t1pci.c (100%)
 rename drivers/{ => staging}/isdn/capi/Kconfig (78%)
 rename drivers/{ => staging}/isdn/capi/Makefile (83%)
 rename drivers/{ => staging}/isdn/capi/capi.c (100%)
 rename drivers/{ => staging}/isdn/capi/capilib.c (100%)
 rename drivers/{ => staging}/isdn/capi/capiutil.c (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi.c (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi.h (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi_proc.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/Kconfig (72%)
 rename drivers/{ => staging}/isdn/gigaset/Makefile (62%)
 rename drivers/{ => staging}/isdn/gigaset/asyncdata.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/bas-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/capi.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/common.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/ev-layer.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/gigaset.h (100%)
 rename drivers/{ => staging}/isdn/gigaset/interface.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/isocdata.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/proc.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/ser-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/usb-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/Kconfig (100%)
 rename drivers/{ => staging}/isdn/hysdn/Makefile (79%)
 rename drivers/{ => staging}/isdn/hysdn/boardergo.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/boardergo.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hycapi.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_boot.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_defs.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_init.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_net.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_pof.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_procconf.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_proclog.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_sched.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/ince1pc.h (100%)
 rename {include/uapi => drivers/staging/isdn/include}/linux/b1lli.h (100%)
 rename {include/uapi => drivers/staging/isdn/include}/linux/gigaset_dev.h (100%)
 rename {include => drivers/staging/isdn/include}/linux/isdn/capilli.h (100%)
 rename {include => drivers/staging/isdn/include}/linux/isdn/capiutil.h (100%)
 rename {include => drivers/staging/isdn/include}/uapi/linux/isdn/capicmd.h (100%)
 delete mode 100644 include/linux/concap.h
 delete mode 100644 include/linux/isdn.h
 delete mode 100644 include/linux/isdn_divertif.h
 delete mode 100644 include/linux/isdn_ppp.h
 delete mode 100644 include/linux/isdnif.h
 delete mode 100644 include/linux/wanrouter.h
 delete mode 100644 include/uapi/linux/isdn.h
 delete mode 100644 include/uapi/linux/isdn_divertif.h
 delete mode 100644 include/uapi/linux/isdn_ppp.h
 delete mode 100644 include/uapi/linux/isdnif.h
 delete mode 100644 include/uapi/linux/wanrouter.h

-- 
2.20.0


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

* [PATCH 1/5] isdn: gigaset: remove i4l support
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (5 preceding siblings ...)
  2019-04-23 15:11 ` [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
@ 2019-04-23 15:11 ` Arnd Bergmann
  2019-04-24  8:53   ` Paul Bolle
  2019-04-23 15:11 ` [PATCH 2/5] isdn: remove hisax driver Arnd Bergmann
                   ` (7 subsequent siblings)
  14 siblings, 1 reply; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

isdn4linux is getting removed, and the gigaset driver can still
use the CAPI support, so this can all go away.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 Documentation/isdn/README.gigaset |  36 +-
 drivers/isdn/gigaset/Kconfig      |  22 +-
 drivers/isdn/gigaset/Makefile     |   5 +-
 drivers/isdn/gigaset/dummyll.c    |  77 ----
 drivers/isdn/gigaset/i4l.c        | 695 ------------------------------
 5 files changed, 10 insertions(+), 825 deletions(-)
 delete mode 100644 drivers/isdn/gigaset/dummyll.c
 delete mode 100644 drivers/isdn/gigaset/i4l.c

diff --git a/Documentation/isdn/README.gigaset b/Documentation/isdn/README.gigaset
index 9b1ce277ca3d..f6184b637182 100644
--- a/Documentation/isdn/README.gigaset
+++ b/Documentation/isdn/README.gigaset
@@ -48,9 +48,8 @@ GigaSet 307x Device Driver
 
 1.2. Software
      --------
-     The driver works with the Kernel CAPI subsystem as well as the old
-     ISDN4Linux subsystem, so it can be used with any software which is able
-     to use CAPI 2.0 or ISDN4Linux for ISDN connections (voice or data).
+     The driver works with the Kernel CAPI subsystem and can be used with any
+     software which is able to use CAPI 2.0 for ISDN connections (voice or data).
 
      There are some user space tools available at
      https://sourceforge.net/projects/gigaset307x/
@@ -92,7 +91,7 @@ GigaSet 307x Device Driver
 	gigaset	 	debug	   debug level (see section 3.2.)
 
 			startmode  initial operation mode (see section 2.5.):
-	bas_gigaset )		   1=ISDN4linux/CAPI (default), 0=Unimodem
+	bas_gigaset )		   1=CAPI (default), 0=Unimodem
 	ser_gigaset )
 	usb_gigaset )	cidmode    initial Call-ID mode setting (see section
 				   2.5.): 1=on (default), 0=off
@@ -154,18 +153,10 @@ GigaSet 307x Device Driver
 
 2.3. CAPI
      ----
-     If the driver is compiled with CAPI support (kernel configuration option
-     GIGASET_CAPI) the devices will show up as CAPI controllers as soon as the
-     corresponding driver module is loaded, and can then be used with CAPI 2.0
-     kernel and user space applications. For user space access, the module
-     capi.ko must be loaded.
-
-     Legacy ISDN4Linux applications are supported via the capidrv
-     compatibility driver. The kernel module capidrv.ko must be loaded
-     explicitly with the command
-        modprobe capidrv
-     if needed, and cannot be unloaded again without unloading the driver
-     first. (These are limitations of capidrv.)
+     The devices will show up as CAPI controllers as soon as the
+     corresponding driver module is loaded, and can then be used with
+     CAPI 2.0 kernel and user space applications. For user space access,
+     the module capi.ko must be loaded.
 
      Most distributions handle loading and unloading of the various CAPI
      modules automatically via the command capiinit(1) from the capi4k-utils
@@ -173,16 +164,6 @@ GigaSet 307x Device Driver
      Gigaset drivers because it doesn't support more than one module per
      driver.
 
-2.4. ISDN4Linux
-     ----------
-     If the driver is compiled without CAPI support (native ISDN4Linux
-     variant), it registers the device with the legacy ISDN4Linux subsystem
-     after loading the module. It can then be used with ISDN4Linux
-     applications only. Most distributions provide some configuration utility
-     for setting up that subsystem. Otherwise you can use some HOWTOs like
-         http://www.linuxhaven.de/dlhp/HOWTO/DE-ISDN-HOWTO-5.html
-
-
 2.5. Unimodem mode
      -------------
      In this mode the device works like a modem connected to a serial port
@@ -281,8 +262,7 @@ GigaSet 307x Device Driver
      number. Dialing "***" (three asterisks) calls all extensions
      simultaneously (global call).
 
-     This holds for both CAPI 2.0 and ISDN4Linux applications. Unimodem mode
-     does not support internal calls.
+     Unimodem mode does not support internal calls.
 
 2.8. Unregistered Wireless Devices (M101/M105)
      -----------------------------------------
diff --git a/drivers/isdn/gigaset/Kconfig b/drivers/isdn/gigaset/Kconfig
index 83f62b8d82b5..805b5d034feb 100644
--- a/drivers/isdn/gigaset/Kconfig
+++ b/drivers/isdn/gigaset/Kconfig
@@ -1,6 +1,7 @@
 menuconfig ISDN_DRV_GIGASET
 	tristate "Siemens Gigaset support"
 	depends on TTY
+	depends on ISDN_CAPI
 	select CRC_CCITT
 	select BITREVERSE
 	help
@@ -17,27 +18,6 @@ menuconfig ISDN_DRV_GIGASET
 
 if ISDN_DRV_GIGASET
 
-config GIGASET_CAPI
-	bool "Gigaset CAPI support"
-	depends on ISDN_CAPI='y'||(ISDN_CAPI='m'&&ISDN_DRV_GIGASET='m')
-	default 'y'
-	help
-	  Build the Gigaset driver as a CAPI 2.0 driver interfacing with
-	  the Kernel CAPI subsystem. To use it with the old ISDN4Linux
-	  subsystem you'll have to enable the capidrv glue driver.
-	  (select ISDN_CAPI_CAPIDRV.)
-	  Say N to build the old native ISDN4Linux variant.
-	  If unsure, say Y.
-
-config GIGASET_I4L
-	bool
-	depends on ISDN_I4L='y'||(ISDN_I4L='m'&&ISDN_DRV_GIGASET='m')
-	default !GIGASET_CAPI
-
-config GIGASET_DUMMYLL
-	bool
-	default !GIGASET_CAPI&&!GIGASET_I4L
-
 config GIGASET_BASE
 	tristate "Gigaset base station support"
 	depends on USB
diff --git a/drivers/isdn/gigaset/Makefile b/drivers/isdn/gigaset/Makefile
index ac45a2739f56..f8ba14735bf1 100644
--- a/drivers/isdn/gigaset/Makefile
+++ b/drivers/isdn/gigaset/Makefile
@@ -1,8 +1,5 @@
 # SPDX-License-Identifier: GPL-2.0
-gigaset-y := common.o interface.o proc.o ev-layer.o asyncdata.o
-gigaset-$(CONFIG_GIGASET_CAPI) += capi.o
-gigaset-$(CONFIG_GIGASET_I4L) += i4l.o
-gigaset-$(CONFIG_GIGASET_DUMMYLL) += dummyll.o
+gigaset-y := common.o interface.o proc.o ev-layer.o asyncdata.o capi.o
 usb_gigaset-y := usb-gigaset.o
 ser_gigaset-y := ser-gigaset.o
 bas_gigaset-y := bas-gigaset.o isocdata.o
diff --git a/drivers/isdn/gigaset/dummyll.c b/drivers/isdn/gigaset/dummyll.c
deleted file mode 100644
index 570c2d53b84e..000000000000
diff --git a/drivers/isdn/gigaset/i4l.c b/drivers/isdn/gigaset/i4l.c
deleted file mode 100644
index b5b389e95edd..000000000000
-- 
2.20.0


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

* [PATCH 2/5] isdn: remove hisax driver
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (6 preceding siblings ...)
  2019-04-23 15:11 ` [PATCH 1/5] isdn: gigaset: remove i4l support Arnd Bergmann
@ 2019-04-23 15:11 ` Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 3/5] isdn: remove isdn4linux Arnd Bergmann
                   ` (6 subsequent siblings)
  14 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

With the decline of ISDN, this seems to have become completely
obsolete, and even in the past years, all remaining users appear
to have used mISDN instead.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 Documentation/isdn/HiSax.cert       |   96 -
 Documentation/isdn/README.HiSax     |  659 ------
 drivers/isdn/Makefile               |    1 -
 drivers/isdn/hisax/Kconfig          |  422 ----
 drivers/isdn/hisax/Makefile         |   60 -
 drivers/isdn/hisax/amd7930_fn.c     |  794 -------
 drivers/isdn/hisax/amd7930_fn.h     |   37 -
 drivers/isdn/hisax/arcofi.c         |  131 --
 drivers/isdn/hisax/arcofi.h         |   27 -
 drivers/isdn/hisax/asuscom.c        |  423 ----
 drivers/isdn/hisax/avm_a1.c         |  307 ---
 drivers/isdn/hisax/avm_a1p.c        |  267 ---
 drivers/isdn/hisax/avm_pci.c        |  904 --------
 drivers/isdn/hisax/avma1_cs.c       |  162 --
 drivers/isdn/hisax/bkm_a4t.c        |  358 ---
 drivers/isdn/hisax/bkm_a8.c         |  433 ----
 drivers/isdn/hisax/bkm_ax.h         |  119 -
 drivers/isdn/hisax/callc.c          | 1792 ---------------
 drivers/isdn/hisax/config.c         | 1993 -----------------
 drivers/isdn/hisax/diva.c           | 1282 -----------
 drivers/isdn/hisax/elsa.c           | 1245 -----------
 drivers/isdn/hisax/elsa_cs.c        |  218 --
 drivers/isdn/hisax/elsa_ser.c       |  659 ------
 drivers/isdn/hisax/enternow_pci.c   |  420 ----
 drivers/isdn/hisax/fsm.c            |  161 --
 drivers/isdn/hisax/fsm.h            |   61 -
 drivers/isdn/hisax/gazel.c          |  691 ------
 drivers/isdn/hisax/hfc4s8s_l1.c     | 1584 -------------
 drivers/isdn/hisax/hfc4s8s_l1.h     |   89 -
 drivers/isdn/hisax/hfc_2bds0.c      | 1078 ---------
 drivers/isdn/hisax/hfc_2bds0.h      |  128 --
 drivers/isdn/hisax/hfc_2bs0.c       |  591 -----
 drivers/isdn/hisax/hfc_2bs0.h       |   60 -
 drivers/isdn/hisax/hfc_pci.c        | 1755 ---------------
 drivers/isdn/hisax/hfc_pci.h        |  235 --
 drivers/isdn/hisax/hfc_sx.c         | 1517 -------------
 drivers/isdn/hisax/hfc_sx.h         |  196 --
 drivers/isdn/hisax/hfc_usb.c        | 1608 -------------
 drivers/isdn/hisax/hfc_usb.h        |  208 --
 drivers/isdn/hisax/hfcscard.c       |  261 ---
 drivers/isdn/hisax/hisax.h          | 1352 -----------
 drivers/isdn/hisax/hisax_cfg.h      |   66 -
 drivers/isdn/hisax/hisax_debug.h    |   80 -
 drivers/isdn/hisax/hisax_fcpcipnp.c | 1024 ---------
 drivers/isdn/hisax/hisax_fcpcipnp.h |   58 -
 drivers/isdn/hisax/hisax_if.h       |   66 -
 drivers/isdn/hisax/hisax_isac.c     |  895 --------
 drivers/isdn/hisax/hisax_isac.h     |   46 -
 drivers/isdn/hisax/hscx.c           |  277 ---
 drivers/isdn/hisax/hscx.h           |   41 -
 drivers/isdn/hisax/hscx_irq.c       |  294 ---
 drivers/isdn/hisax/icc.c            |  680 ------
 drivers/isdn/hisax/icc.h            |   72 -
 drivers/isdn/hisax/ipac.h           |   29 -
 drivers/isdn/hisax/ipacx.c          |  913 --------
 drivers/isdn/hisax/ipacx.h          |  162 --
 drivers/isdn/hisax/isac.c           |  681 ------
 drivers/isdn/hisax/isac.h           |   70 -
 drivers/isdn/hisax/isar.c           | 1910 ----------------
 drivers/isdn/hisax/isar.h           |  222 --
 drivers/isdn/hisax/isdnl1.c         |  930 --------
 drivers/isdn/hisax/isdnl1.h         |   32 -
 drivers/isdn/hisax/isdnl2.c         | 1839 ---------------
 drivers/isdn/hisax/isdnl2.h         |   25 -
 drivers/isdn/hisax/isdnl3.c         |  594 -----
 drivers/isdn/hisax/isdnl3.h         |   42 -
 drivers/isdn/hisax/isurf.c          |  305 ---
 drivers/isdn/hisax/ix1_micro.c      |  316 ---
 drivers/isdn/hisax/jade.c           |  305 ---
 drivers/isdn/hisax/jade.h           |  134 --
 drivers/isdn/hisax/jade_irq.c       |  238 --
 drivers/isdn/hisax/l3_1tr6.c        |  932 --------
 drivers/isdn/hisax/l3_1tr6.h        |  164 --
 drivers/isdn/hisax/l3dss1.c         | 3227 ---------------------------
 drivers/isdn/hisax/l3dss1.h         |  124 -
 drivers/isdn/hisax/l3ni1.c          | 3182 --------------------------
 drivers/isdn/hisax/l3ni1.h          |  136 --
 drivers/isdn/hisax/lmgr.c           |   50 -
 drivers/isdn/hisax/mic.c            |  235 --
 drivers/isdn/hisax/netjet.c         |  985 --------
 drivers/isdn/hisax/netjet.h         |   69 -
 drivers/isdn/hisax/niccy.c          |  380 ----
 drivers/isdn/hisax/nj_s.c           |  294 ---
 drivers/isdn/hisax/nj_u.c           |  258 ---
 drivers/isdn/hisax/q931.c           | 1513 -------------
 drivers/isdn/hisax/s0box.c          |  260 ---
 drivers/isdn/hisax/saphir.c         |  296 ---
 drivers/isdn/hisax/sedlbauer.c      |  873 --------
 drivers/isdn/hisax/sedlbauer_cs.c   |  209 --
 drivers/isdn/hisax/sportster.c      |  267 ---
 drivers/isdn/hisax/st5481.h         |  529 -----
 drivers/isdn/hisax/st5481_b.c       |  380 ----
 drivers/isdn/hisax/st5481_d.c       |  780 -------
 drivers/isdn/hisax/st5481_init.c    |  221 --
 drivers/isdn/hisax/st5481_usb.c     |  659 ------
 drivers/isdn/hisax/tei.c            |  465 ----
 drivers/isdn/hisax/teleint.c        |  334 ---
 drivers/isdn/hisax/teles0.c         |  364 ---
 drivers/isdn/hisax/teles3.c         |  498 -----
 drivers/isdn/hisax/teles_cs.c       |  200 --
 drivers/isdn/hisax/telespci.c       |  349 ---
 drivers/isdn/hisax/w6692.c          | 1085 ---------
 drivers/isdn/hisax/w6692.h          |  184 --
 drivers/isdn/i4l/Kconfig            |    2 -
 104 files changed, 56234 deletions(-)
 delete mode 100644 Documentation/isdn/HiSax.cert
 delete mode 100644 Documentation/isdn/README.HiSax
 delete mode 100644 drivers/isdn/hisax/Kconfig
 delete mode 100644 drivers/isdn/hisax/Makefile
 delete mode 100644 drivers/isdn/hisax/amd7930_fn.c
 delete mode 100644 drivers/isdn/hisax/amd7930_fn.h
 delete mode 100644 drivers/isdn/hisax/arcofi.c
 delete mode 100644 drivers/isdn/hisax/arcofi.h
 delete mode 100644 drivers/isdn/hisax/asuscom.c
 delete mode 100644 drivers/isdn/hisax/avm_a1.c
 delete mode 100644 drivers/isdn/hisax/avm_a1p.c
 delete mode 100644 drivers/isdn/hisax/avm_pci.c
 delete mode 100644 drivers/isdn/hisax/avma1_cs.c
 delete mode 100644 drivers/isdn/hisax/bkm_a4t.c
 delete mode 100644 drivers/isdn/hisax/bkm_a8.c
 delete mode 100644 drivers/isdn/hisax/bkm_ax.h
 delete mode 100644 drivers/isdn/hisax/callc.c
 delete mode 100644 drivers/isdn/hisax/config.c
 delete mode 100644 drivers/isdn/hisax/diva.c
 delete mode 100644 drivers/isdn/hisax/elsa.c
 delete mode 100644 drivers/isdn/hisax/elsa_cs.c
 delete mode 100644 drivers/isdn/hisax/elsa_ser.c
 delete mode 100644 drivers/isdn/hisax/enternow_pci.c
 delete mode 100644 drivers/isdn/hisax/fsm.c
 delete mode 100644 drivers/isdn/hisax/fsm.h
 delete mode 100644 drivers/isdn/hisax/gazel.c
 delete mode 100644 drivers/isdn/hisax/hfc4s8s_l1.c
 delete mode 100644 drivers/isdn/hisax/hfc4s8s_l1.h
 delete mode 100644 drivers/isdn/hisax/hfc_2bds0.c
 delete mode 100644 drivers/isdn/hisax/hfc_2bds0.h
 delete mode 100644 drivers/isdn/hisax/hfc_2bs0.c
 delete mode 100644 drivers/isdn/hisax/hfc_2bs0.h
 delete mode 100644 drivers/isdn/hisax/hfc_pci.c
 delete mode 100644 drivers/isdn/hisax/hfc_pci.h
 delete mode 100644 drivers/isdn/hisax/hfc_sx.c
 delete mode 100644 drivers/isdn/hisax/hfc_sx.h
 delete mode 100644 drivers/isdn/hisax/hfc_usb.c
 delete mode 100644 drivers/isdn/hisax/hfc_usb.h
 delete mode 100644 drivers/isdn/hisax/hfcscard.c
 delete mode 100644 drivers/isdn/hisax/hisax.h
 delete mode 100644 drivers/isdn/hisax/hisax_cfg.h
 delete mode 100644 drivers/isdn/hisax/hisax_debug.h
 delete mode 100644 drivers/isdn/hisax/hisax_fcpcipnp.c
 delete mode 100644 drivers/isdn/hisax/hisax_fcpcipnp.h
 delete mode 100644 drivers/isdn/hisax/hisax_if.h
 delete mode 100644 drivers/isdn/hisax/hisax_isac.c
 delete mode 100644 drivers/isdn/hisax/hisax_isac.h
 delete mode 100644 drivers/isdn/hisax/hscx.c
 delete mode 100644 drivers/isdn/hisax/hscx.h
 delete mode 100644 drivers/isdn/hisax/hscx_irq.c
 delete mode 100644 drivers/isdn/hisax/icc.c
 delete mode 100644 drivers/isdn/hisax/icc.h
 delete mode 100644 drivers/isdn/hisax/ipac.h
 delete mode 100644 drivers/isdn/hisax/ipacx.c
 delete mode 100644 drivers/isdn/hisax/ipacx.h
 delete mode 100644 drivers/isdn/hisax/isac.c
 delete mode 100644 drivers/isdn/hisax/isac.h
 delete mode 100644 drivers/isdn/hisax/isar.c
 delete mode 100644 drivers/isdn/hisax/isar.h
 delete mode 100644 drivers/isdn/hisax/isdnl1.c
 delete mode 100644 drivers/isdn/hisax/isdnl1.h
 delete mode 100644 drivers/isdn/hisax/isdnl2.c
 delete mode 100644 drivers/isdn/hisax/isdnl2.h
 delete mode 100644 drivers/isdn/hisax/isdnl3.c
 delete mode 100644 drivers/isdn/hisax/isdnl3.h
 delete mode 100644 drivers/isdn/hisax/isurf.c
 delete mode 100644 drivers/isdn/hisax/ix1_micro.c
 delete mode 100644 drivers/isdn/hisax/jade.c
 delete mode 100644 drivers/isdn/hisax/jade.h
 delete mode 100644 drivers/isdn/hisax/jade_irq.c
 delete mode 100644 drivers/isdn/hisax/l3_1tr6.c
 delete mode 100644 drivers/isdn/hisax/l3_1tr6.h
 delete mode 100644 drivers/isdn/hisax/l3dss1.c
 delete mode 100644 drivers/isdn/hisax/l3dss1.h
 delete mode 100644 drivers/isdn/hisax/l3ni1.c
 delete mode 100644 drivers/isdn/hisax/l3ni1.h
 delete mode 100644 drivers/isdn/hisax/lmgr.c
 delete mode 100644 drivers/isdn/hisax/mic.c
 delete mode 100644 drivers/isdn/hisax/netjet.c
 delete mode 100644 drivers/isdn/hisax/netjet.h
 delete mode 100644 drivers/isdn/hisax/niccy.c
 delete mode 100644 drivers/isdn/hisax/nj_s.c
 delete mode 100644 drivers/isdn/hisax/nj_u.c
 delete mode 100644 drivers/isdn/hisax/q931.c
 delete mode 100644 drivers/isdn/hisax/s0box.c
 delete mode 100644 drivers/isdn/hisax/saphir.c
 delete mode 100644 drivers/isdn/hisax/sedlbauer.c
 delete mode 100644 drivers/isdn/hisax/sedlbauer_cs.c
 delete mode 100644 drivers/isdn/hisax/sportster.c
 delete mode 100644 drivers/isdn/hisax/st5481.h
 delete mode 100644 drivers/isdn/hisax/st5481_b.c
 delete mode 100644 drivers/isdn/hisax/st5481_d.c
 delete mode 100644 drivers/isdn/hisax/st5481_init.c
 delete mode 100644 drivers/isdn/hisax/st5481_usb.c
 delete mode 100644 drivers/isdn/hisax/tei.c
 delete mode 100644 drivers/isdn/hisax/teleint.c
 delete mode 100644 drivers/isdn/hisax/teles0.c
 delete mode 100644 drivers/isdn/hisax/teles3.c
 delete mode 100644 drivers/isdn/hisax/teles_cs.c
 delete mode 100644 drivers/isdn/hisax/telespci.c
 delete mode 100644 drivers/isdn/hisax/w6692.c
 delete mode 100644 drivers/isdn/hisax/w6692.h

diff --git a/Documentation/isdn/HiSax.cert b/Documentation/isdn/HiSax.cert
deleted file mode 100644
index f2a6fcb8efee..000000000000
diff --git a/Documentation/isdn/README.HiSax b/Documentation/isdn/README.HiSax
deleted file mode 100644
index b1a573cf4472..000000000000
diff --git a/drivers/isdn/Makefile b/drivers/isdn/Makefile
index e7d3d8f2ad5a..7487f0bbe855 100644
--- a/drivers/isdn/Makefile
+++ b/drivers/isdn/Makefile
@@ -8,7 +8,6 @@ obj-$(CONFIG_ISDN_CAPI)			+= capi/
 obj-$(CONFIG_MISDN)			+= mISDN/
 obj-$(CONFIG_ISDN)			+= hardware/
 obj-$(CONFIG_ISDN_DIVERSION)		+= divert/
-obj-$(CONFIG_ISDN_DRV_HISAX)		+= hisax/
 obj-$(CONFIG_ISDN_DRV_LOOP)		+= isdnloop/
 obj-$(CONFIG_HYSDN)			+= hysdn/
 obj-$(CONFIG_ISDN_DRV_GIGASET)		+= gigaset/
diff --git a/drivers/isdn/hisax/Kconfig b/drivers/isdn/hisax/Kconfig
deleted file mode 100644
index 38cfc8baae19..000000000000
diff --git a/drivers/isdn/hisax/Makefile b/drivers/isdn/hisax/Makefile
deleted file mode 100644
index 3eca9d23f1c2..000000000000
diff --git a/drivers/isdn/hisax/amd7930_fn.c b/drivers/isdn/hisax/amd7930_fn.c
deleted file mode 100644
index 6c336366128c..000000000000
diff --git a/drivers/isdn/hisax/amd7930_fn.h b/drivers/isdn/hisax/amd7930_fn.h
deleted file mode 100644
index 1f4d80c5e5a6..000000000000
diff --git a/drivers/isdn/hisax/arcofi.c b/drivers/isdn/hisax/arcofi.c
deleted file mode 100644
index 2f784f96d439..000000000000
diff --git a/drivers/isdn/hisax/arcofi.h b/drivers/isdn/hisax/arcofi.h
deleted file mode 100644
index b9c77529fabf..000000000000
diff --git a/drivers/isdn/hisax/asuscom.c b/drivers/isdn/hisax/asuscom.c
deleted file mode 100644
index 74c871495e81..000000000000
diff --git a/drivers/isdn/hisax/avm_a1.c b/drivers/isdn/hisax/avm_a1.c
deleted file mode 100644
index 7dd74087ad72..000000000000
diff --git a/drivers/isdn/hisax/avm_a1p.c b/drivers/isdn/hisax/avm_a1p.c
deleted file mode 100644
index bc52d54ff5e1..000000000000
diff --git a/drivers/isdn/hisax/avm_pci.c b/drivers/isdn/hisax/avm_pci.c
deleted file mode 100644
index b161456c942e..000000000000
diff --git a/drivers/isdn/hisax/avma1_cs.c b/drivers/isdn/hisax/avma1_cs.c
deleted file mode 100644
index baad94ec1f4a..000000000000
diff --git a/drivers/isdn/hisax/bkm_a4t.c b/drivers/isdn/hisax/bkm_a4t.c
deleted file mode 100644
index c360164bde1b..000000000000
diff --git a/drivers/isdn/hisax/bkm_a8.c b/drivers/isdn/hisax/bkm_a8.c
deleted file mode 100644
index dd663ea57ec6..000000000000
diff --git a/drivers/isdn/hisax/bkm_ax.h b/drivers/isdn/hisax/bkm_ax.h
deleted file mode 100644
index 27ff8a88679b..000000000000
diff --git a/drivers/isdn/hisax/callc.c b/drivers/isdn/hisax/callc.c
deleted file mode 100644
index 9ee06328784c..000000000000
diff --git a/drivers/isdn/hisax/config.c b/drivers/isdn/hisax/config.c
deleted file mode 100644
index b12e6cae26c2..000000000000
diff --git a/drivers/isdn/hisax/diva.c b/drivers/isdn/hisax/diva.c
deleted file mode 100644
index d23df7a7784d..000000000000
diff --git a/drivers/isdn/hisax/elsa.c b/drivers/isdn/hisax/elsa.c
deleted file mode 100644
index 0754c0743790..000000000000
diff --git a/drivers/isdn/hisax/elsa_cs.c b/drivers/isdn/hisax/elsa_cs.c
deleted file mode 100644
index 40f6fad79de3..000000000000
diff --git a/drivers/isdn/hisax/elsa_ser.c b/drivers/isdn/hisax/elsa_ser.c
deleted file mode 100644
index 999effd7a276..000000000000
diff --git a/drivers/isdn/hisax/enternow_pci.c b/drivers/isdn/hisax/enternow_pci.c
deleted file mode 100644
index e8d431a8302d..000000000000
diff --git a/drivers/isdn/hisax/fsm.c b/drivers/isdn/hisax/fsm.c
deleted file mode 100644
index 80ba82f77c63..000000000000
diff --git a/drivers/isdn/hisax/fsm.h b/drivers/isdn/hisax/fsm.h
deleted file mode 100644
index 8c7385619a46..000000000000
diff --git a/drivers/isdn/hisax/gazel.c b/drivers/isdn/hisax/gazel.c
deleted file mode 100644
index a6d8af02354a..000000000000
diff --git a/drivers/isdn/hisax/hfc4s8s_l1.c b/drivers/isdn/hisax/hfc4s8s_l1.c
deleted file mode 100644
index e9bb8fb67ad0..000000000000
diff --git a/drivers/isdn/hisax/hfc4s8s_l1.h b/drivers/isdn/hisax/hfc4s8s_l1.h
deleted file mode 100644
index 4665b9d5df16..000000000000
diff --git a/drivers/isdn/hisax/hfc_2bds0.c b/drivers/isdn/hisax/hfc_2bds0.c
deleted file mode 100644
index 3715fa0343db..000000000000
diff --git a/drivers/isdn/hisax/hfc_2bds0.h b/drivers/isdn/hisax/hfc_2bds0.h
deleted file mode 100644
index 8c7582a3c51e..000000000000
diff --git a/drivers/isdn/hisax/hfc_2bs0.c b/drivers/isdn/hisax/hfc_2bs0.c
deleted file mode 100644
index 34d59992839a..000000000000
diff --git a/drivers/isdn/hisax/hfc_2bs0.h b/drivers/isdn/hisax/hfc_2bs0.h
deleted file mode 100644
index 1510096363dc..000000000000
diff --git a/drivers/isdn/hisax/hfc_pci.c b/drivers/isdn/hisax/hfc_pci.c
deleted file mode 100644
index 71a8312592d6..000000000000
diff --git a/drivers/isdn/hisax/hfc_pci.h b/drivers/isdn/hisax/hfc_pci.h
deleted file mode 100644
index 4c3b3ba35726..000000000000
diff --git a/drivers/isdn/hisax/hfc_sx.c b/drivers/isdn/hisax/hfc_sx.c
deleted file mode 100644
index 12af628d9b2c..000000000000
diff --git a/drivers/isdn/hisax/hfc_sx.h b/drivers/isdn/hisax/hfc_sx.h
deleted file mode 100644
index eee85dbb0883..000000000000
diff --git a/drivers/isdn/hisax/hfc_usb.c b/drivers/isdn/hisax/hfc_usb.c
deleted file mode 100644
index 1d4cd01d4685..000000000000
diff --git a/drivers/isdn/hisax/hfc_usb.h b/drivers/isdn/hisax/hfc_usb.h
deleted file mode 100644
index 9a212330e8a8..000000000000
diff --git a/drivers/isdn/hisax/hfcscard.c b/drivers/isdn/hisax/hfcscard.c
deleted file mode 100644
index 91b5219499ca..000000000000
diff --git a/drivers/isdn/hisax/hisax.h b/drivers/isdn/hisax/hisax.h
deleted file mode 100644
index 40080e06421c..000000000000
diff --git a/drivers/isdn/hisax/hisax_cfg.h b/drivers/isdn/hisax/hisax_cfg.h
deleted file mode 100644
index 487dcfe9e718..000000000000
diff --git a/drivers/isdn/hisax/hisax_debug.h b/drivers/isdn/hisax/hisax_debug.h
deleted file mode 100644
index 7b3093d0856a..000000000000
diff --git a/drivers/isdn/hisax/hisax_fcpcipnp.c b/drivers/isdn/hisax/hisax_fcpcipnp.c
deleted file mode 100644
index 7a7137d8664b..000000000000
diff --git a/drivers/isdn/hisax/hisax_fcpcipnp.h b/drivers/isdn/hisax/hisax_fcpcipnp.h
deleted file mode 100644
index 1f64e9937aa1..000000000000
diff --git a/drivers/isdn/hisax/hisax_if.h b/drivers/isdn/hisax/hisax_if.h
deleted file mode 100644
index 7098d6bd5ff2..000000000000
diff --git a/drivers/isdn/hisax/hisax_isac.c b/drivers/isdn/hisax/hisax_isac.c
deleted file mode 100644
index 0f36375478c5..000000000000
diff --git a/drivers/isdn/hisax/hisax_isac.h b/drivers/isdn/hisax/hisax_isac.h
deleted file mode 100644
index d7301da97991..000000000000
diff --git a/drivers/isdn/hisax/hscx.c b/drivers/isdn/hisax/hscx.c
deleted file mode 100644
index 3e305fec0ed9..000000000000
diff --git a/drivers/isdn/hisax/hscx.h b/drivers/isdn/hisax/hscx.h
deleted file mode 100644
index 1148b4bbe711..000000000000
diff --git a/drivers/isdn/hisax/hscx_irq.c b/drivers/isdn/hisax/hscx_irq.c
deleted file mode 100644
index 0d7e783c8bef..000000000000
diff --git a/drivers/isdn/hisax/icc.c b/drivers/isdn/hisax/icc.c
deleted file mode 100644
index 831dd1bb81ef..000000000000
diff --git a/drivers/isdn/hisax/icc.h b/drivers/isdn/hisax/icc.h
deleted file mode 100644
index f367df5d3669..000000000000
diff --git a/drivers/isdn/hisax/ipac.h b/drivers/isdn/hisax/ipac.h
deleted file mode 100644
index 4f937f02ee34..000000000000
diff --git a/drivers/isdn/hisax/ipacx.c b/drivers/isdn/hisax/ipacx.c
deleted file mode 100644
index c7086c1534bd..000000000000
diff --git a/drivers/isdn/hisax/ipacx.h b/drivers/isdn/hisax/ipacx.h
deleted file mode 100644
index e8a22e8f34b6..000000000000
diff --git a/drivers/isdn/hisax/isac.c b/drivers/isdn/hisax/isac.c
deleted file mode 100644
index bd40e0671ded..000000000000
diff --git a/drivers/isdn/hisax/isac.h b/drivers/isdn/hisax/isac.h
deleted file mode 100644
index 04f16b91b822..000000000000
diff --git a/drivers/isdn/hisax/isar.c b/drivers/isdn/hisax/isar.c
deleted file mode 100644
index 82c1879f5664..000000000000
diff --git a/drivers/isdn/hisax/isar.h b/drivers/isdn/hisax/isar.h
deleted file mode 100644
index 0f4d101faf37..000000000000
diff --git a/drivers/isdn/hisax/isdnl1.c b/drivers/isdn/hisax/isdnl1.c
deleted file mode 100644
index a560842c0e48..000000000000
diff --git a/drivers/isdn/hisax/isdnl1.h b/drivers/isdn/hisax/isdnl1.h
deleted file mode 100644
index 66ddcab19bba..000000000000
diff --git a/drivers/isdn/hisax/isdnl2.c b/drivers/isdn/hisax/isdnl2.c
deleted file mode 100644
index 1a40ed04cb52..000000000000
diff --git a/drivers/isdn/hisax/isdnl2.h b/drivers/isdn/hisax/isdnl2.h
deleted file mode 100644
index 7e447fb8ed1d..000000000000
diff --git a/drivers/isdn/hisax/isdnl3.c b/drivers/isdn/hisax/isdnl3.c
deleted file mode 100644
index bb3f9ec62749..000000000000
diff --git a/drivers/isdn/hisax/isdnl3.h b/drivers/isdn/hisax/isdnl3.h
deleted file mode 100644
index 0edc99d40dc2..000000000000
diff --git a/drivers/isdn/hisax/isurf.c b/drivers/isdn/hisax/isurf.c
deleted file mode 100644
index 53e299be4304..000000000000
diff --git a/drivers/isdn/hisax/ix1_micro.c b/drivers/isdn/hisax/ix1_micro.c
deleted file mode 100644
index bfb79f3f0a49..000000000000
diff --git a/drivers/isdn/hisax/jade.c b/drivers/isdn/hisax/jade.c
deleted file mode 100644
index e2ae7871a209..000000000000
diff --git a/drivers/isdn/hisax/jade.h b/drivers/isdn/hisax/jade.h
deleted file mode 100644
index 4b98096a5858..000000000000
diff --git a/drivers/isdn/hisax/jade_irq.c b/drivers/isdn/hisax/jade_irq.c
deleted file mode 100644
index a89e2df911c5..000000000000
diff --git a/drivers/isdn/hisax/l3_1tr6.c b/drivers/isdn/hisax/l3_1tr6.c
deleted file mode 100644
index 98f60d1523f4..000000000000
diff --git a/drivers/isdn/hisax/l3_1tr6.h b/drivers/isdn/hisax/l3_1tr6.h
deleted file mode 100644
index 43215c00cada..000000000000
diff --git a/drivers/isdn/hisax/l3dss1.c b/drivers/isdn/hisax/l3dss1.c
deleted file mode 100644
index 368d152a8f1d..000000000000
diff --git a/drivers/isdn/hisax/l3dss1.h b/drivers/isdn/hisax/l3dss1.h
deleted file mode 100644
index a7807e8a94f1..000000000000
diff --git a/drivers/isdn/hisax/l3ni1.c b/drivers/isdn/hisax/l3ni1.c
deleted file mode 100644
index ea311e7df48e..000000000000
diff --git a/drivers/isdn/hisax/l3ni1.h b/drivers/isdn/hisax/l3ni1.h
deleted file mode 100644
index 99d37d2cea4f..000000000000
diff --git a/drivers/isdn/hisax/lmgr.c b/drivers/isdn/hisax/lmgr.c
deleted file mode 100644
index 5b63eb6601aa..000000000000
diff --git a/drivers/isdn/hisax/mic.c b/drivers/isdn/hisax/mic.c
deleted file mode 100644
index 93398676f78f..000000000000
diff --git a/drivers/isdn/hisax/netjet.c b/drivers/isdn/hisax/netjet.c
deleted file mode 100644
index d7b011c8d692..000000000000
diff --git a/drivers/isdn/hisax/netjet.h b/drivers/isdn/hisax/netjet.h
deleted file mode 100644
index 70590d5d5e64..000000000000
diff --git a/drivers/isdn/hisax/niccy.c b/drivers/isdn/hisax/niccy.c
deleted file mode 100644
index dfbcd2eaa81a..000000000000
diff --git a/drivers/isdn/hisax/nj_s.c b/drivers/isdn/hisax/nj_s.c
deleted file mode 100644
index 32b4bbd18eb9..000000000000
diff --git a/drivers/isdn/hisax/nj_u.c b/drivers/isdn/hisax/nj_u.c
deleted file mode 100644
index 4e8adbede361..000000000000
diff --git a/drivers/isdn/hisax/q931.c b/drivers/isdn/hisax/q931.c
deleted file mode 100644
index 6b8c3fbe3965..000000000000
diff --git a/drivers/isdn/hisax/s0box.c b/drivers/isdn/hisax/s0box.c
deleted file mode 100644
index 4e7d0aa227ad..000000000000
diff --git a/drivers/isdn/hisax/saphir.c b/drivers/isdn/hisax/saphir.c
deleted file mode 100644
index db906cb37a3f..000000000000
diff --git a/drivers/isdn/hisax/sedlbauer.c b/drivers/isdn/hisax/sedlbauer.c
deleted file mode 100644
index c0b97b893495..000000000000
diff --git a/drivers/isdn/hisax/sedlbauer_cs.c b/drivers/isdn/hisax/sedlbauer_cs.c
deleted file mode 100644
index 92ef62d4caf4..000000000000
diff --git a/drivers/isdn/hisax/sportster.c b/drivers/isdn/hisax/sportster.c
deleted file mode 100644
index 18cee6360d0a..000000000000
diff --git a/drivers/isdn/hisax/st5481.h b/drivers/isdn/hisax/st5481.h
deleted file mode 100644
index b421b86ca7da..000000000000
diff --git a/drivers/isdn/hisax/st5481_b.c b/drivers/isdn/hisax/st5481_b.c
deleted file mode 100644
index f64a36007800..000000000000
diff --git a/drivers/isdn/hisax/st5481_d.c b/drivers/isdn/hisax/st5481_d.c
deleted file mode 100644
index e88c5c71fca7..000000000000
diff --git a/drivers/isdn/hisax/st5481_init.c b/drivers/isdn/hisax/st5481_init.c
deleted file mode 100644
index 54ef9e4f8cbc..000000000000
diff --git a/drivers/isdn/hisax/st5481_usb.c b/drivers/isdn/hisax/st5481_usb.c
deleted file mode 100644
index f207fda691c7..000000000000
diff --git a/drivers/isdn/hisax/tei.c b/drivers/isdn/hisax/tei.c
deleted file mode 100644
index 9195f9fd628f..000000000000
diff --git a/drivers/isdn/hisax/teleint.c b/drivers/isdn/hisax/teleint.c
deleted file mode 100644
index 247aa33076b1..000000000000
diff --git a/drivers/isdn/hisax/teles0.c b/drivers/isdn/hisax/teles0.c
deleted file mode 100644
index ce9eabdd2f6e..000000000000
diff --git a/drivers/isdn/hisax/teles3.c b/drivers/isdn/hisax/teles3.c
deleted file mode 100644
index 1eef693f04f0..000000000000
diff --git a/drivers/isdn/hisax/teles_cs.c b/drivers/isdn/hisax/teles_cs.c
deleted file mode 100644
index b8dd14958757..000000000000
diff --git a/drivers/isdn/hisax/telespci.c b/drivers/isdn/hisax/telespci.c
deleted file mode 100644
index 33eeb4602c7e..000000000000
diff --git a/drivers/isdn/hisax/w6692.c b/drivers/isdn/hisax/w6692.c
deleted file mode 100644
index 36eefaa3a7d9..000000000000
diff --git a/drivers/isdn/hisax/w6692.h b/drivers/isdn/hisax/w6692.h
deleted file mode 100644
index 024b04d33e43..000000000000
diff --git a/drivers/isdn/i4l/Kconfig b/drivers/isdn/i4l/Kconfig
index 68e54d9f2f53..dc8ab12199e9 100644
--- a/drivers/isdn/i4l/Kconfig
+++ b/drivers/isdn/i4l/Kconfig
@@ -121,8 +121,6 @@ endmenu
 
 comment "ISDN4Linux hardware drivers"
 
-source "drivers/isdn/hisax/Kconfig"
-
 # end ISDN_I4L
 endif
 
-- 
2.20.0


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

* [PATCH 3/5] isdn: remove isdn4linux
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (7 preceding siblings ...)
  2019-04-23 15:11 ` [PATCH 2/5] isdn: remove hisax driver Arnd Bergmann
@ 2019-04-23 15:11 ` Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 4/5] isdn: hdlc: move into mISDN Arnd Bergmann
                   ` (5 subsequent siblings)
  14 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

With all isdn4linux hardware drivers gone, this is only a wrapper around
CAPI to support old user space. However, from looking at the mailing
list, it seems that the last time anyone asked about it was in 2014,
when the upgrade from a linux-2.4 installation failed, and mISDN was
suggested as a replacement.

The largest public ISDN network (Deutsche Telekom) was shut down 2018,
which must have drastically reduced the number of legacy installations,
if there were any that managed to get isdn4linux to work with a linux-4.x
kernel at all.

When we last discussed removing i4l in 2016, Karsten Keil suggested
revisiting this in 2018. I guess this is overdue.

Link: http://listserv.isdn4linux.de/pipermail/isdn4linux/2014-October/006165.html
Link: https://patchwork.kernel.org/patch/8484861/#17900371
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 Documentation/isdn/INTERFACE        |  759 ------
 Documentation/isdn/INTERFACE.fax    |  163 --
 Documentation/isdn/README           |  599 -----
 Documentation/isdn/README.FAQ       |   26 -
 Documentation/isdn/README.audio     |  138 -
 Documentation/isdn/README.concap    |  259 --
 Documentation/isdn/README.diversion |  127 -
 Documentation/isdn/README.fax       |   45 -
 Documentation/isdn/README.hfc-pci   |   41 -
 Documentation/isdn/README.syncppp   |   58 -
 Documentation/isdn/README.x25       |  184 --
 Documentation/isdn/syncPPP.FAQ      |  224 --
 Documentation/process/changes.rst   |   16 +-
 MAINTAINERS                         |    2 -
 drivers/isdn/Kconfig                |   26 -
 drivers/isdn/Makefile               |    2 -
 drivers/isdn/capi/Kconfig           |    9 -
 drivers/isdn/capi/capidrv.c         | 2525 ------------------
 drivers/isdn/capi/capidrv.h         |  140 -
 drivers/isdn/divert/Makefile        |    9 -
 drivers/isdn/divert/divert_init.c   |   82 -
 drivers/isdn/divert/divert_procfs.c |  336 ---
 drivers/isdn/divert/isdn_divert.c   |  846 ------
 drivers/isdn/divert/isdn_divert.h   |  132 -
 drivers/isdn/i4l/Kconfig            |  126 -
 drivers/isdn/i4l/Makefile           |   14 -
 drivers/isdn/i4l/isdn_audio.c       |  711 -----
 drivers/isdn/i4l/isdn_audio.h       |   44 -
 drivers/isdn/i4l/isdn_bsdcomp.c     |  930 -------
 drivers/isdn/i4l/isdn_common.c      | 2368 -----------------
 drivers/isdn/i4l/isdn_common.h      |   47 -
 drivers/isdn/i4l/isdn_concap.c      |   99 -
 drivers/isdn/i4l/isdn_concap.h      |   11 -
 drivers/isdn/i4l/isdn_net.c         | 3198 -----------------------
 drivers/isdn/i4l/isdn_net.h         |  151 --
 drivers/isdn/i4l/isdn_ppp.c         | 3053 ----------------------
 drivers/isdn/i4l/isdn_ppp.h         |   41 -
 drivers/isdn/i4l/isdn_tty.c         | 3756 ---------------------------
 drivers/isdn/i4l/isdn_tty.h         |  120 -
 drivers/isdn/i4l/isdn_ttyfax.c      | 1123 --------
 drivers/isdn/i4l/isdn_ttyfax.h      |   17 -
 drivers/isdn/i4l/isdn_v110.c        |  625 -----
 drivers/isdn/i4l/isdn_v110.h        |   29 -
 drivers/isdn/i4l/isdn_x25iface.c    |  332 ---
 drivers/isdn/i4l/isdn_x25iface.h    |   30 -
 drivers/isdn/isdnloop/Makefile      |    5 -
 drivers/isdn/isdnloop/isdnloop.c    | 1528 -----------
 drivers/isdn/isdnloop/isdnloop.h    |  112 -
 include/linux/concap.h              |  112 -
 include/linux/isdn.h                |  473 ----
 include/linux/isdn_divertif.h       |   35 -
 include/linux/isdn_ppp.h            |  194 --
 include/linux/isdnif.h              |  505 ----
 include/linux/wanrouter.h           |   11 -
 include/uapi/linux/isdn.h           |  144 -
 include/uapi/linux/isdn_divertif.h  |   31 -
 include/uapi/linux/isdn_ppp.h       |   68 -
 include/uapi/linux/isdnif.h         |   57 -
 include/uapi/linux/wanrouter.h      |   18 -
 59 files changed, 2 insertions(+), 26864 deletions(-)
 delete mode 100644 Documentation/isdn/INTERFACE
 delete mode 100644 Documentation/isdn/INTERFACE.fax
 delete mode 100644 Documentation/isdn/README
 delete mode 100644 Documentation/isdn/README.FAQ
 delete mode 100644 Documentation/isdn/README.audio
 delete mode 100644 Documentation/isdn/README.concap
 delete mode 100644 Documentation/isdn/README.diversion
 delete mode 100644 Documentation/isdn/README.fax
 delete mode 100644 Documentation/isdn/README.hfc-pci
 delete mode 100644 Documentation/isdn/README.syncppp
 delete mode 100644 Documentation/isdn/README.x25
 delete mode 100644 Documentation/isdn/syncPPP.FAQ
 delete mode 100644 drivers/isdn/capi/capidrv.c
 delete mode 100644 drivers/isdn/capi/capidrv.h
 delete mode 100644 drivers/isdn/divert/Makefile
 delete mode 100644 drivers/isdn/divert/divert_init.c
 delete mode 100644 drivers/isdn/divert/divert_procfs.c
 delete mode 100644 drivers/isdn/divert/isdn_divert.c
 delete mode 100644 drivers/isdn/divert/isdn_divert.h
 delete mode 100644 drivers/isdn/i4l/Kconfig
 delete mode 100644 drivers/isdn/i4l/isdn_audio.c
 delete mode 100644 drivers/isdn/i4l/isdn_audio.h
 delete mode 100644 drivers/isdn/i4l/isdn_bsdcomp.c
 delete mode 100644 drivers/isdn/i4l/isdn_common.c
 delete mode 100644 drivers/isdn/i4l/isdn_common.h
 delete mode 100644 drivers/isdn/i4l/isdn_concap.c
 delete mode 100644 drivers/isdn/i4l/isdn_concap.h
 delete mode 100644 drivers/isdn/i4l/isdn_net.c
 delete mode 100644 drivers/isdn/i4l/isdn_net.h
 delete mode 100644 drivers/isdn/i4l/isdn_ppp.c
 delete mode 100644 drivers/isdn/i4l/isdn_ppp.h
 delete mode 100644 drivers/isdn/i4l/isdn_tty.c
 delete mode 100644 drivers/isdn/i4l/isdn_tty.h
 delete mode 100644 drivers/isdn/i4l/isdn_ttyfax.c
 delete mode 100644 drivers/isdn/i4l/isdn_ttyfax.h
 delete mode 100644 drivers/isdn/i4l/isdn_v110.c
 delete mode 100644 drivers/isdn/i4l/isdn_v110.h
 delete mode 100644 drivers/isdn/i4l/isdn_x25iface.c
 delete mode 100644 drivers/isdn/i4l/isdn_x25iface.h
 delete mode 100644 drivers/isdn/isdnloop/Makefile
 delete mode 100644 drivers/isdn/isdnloop/isdnloop.c
 delete mode 100644 drivers/isdn/isdnloop/isdnloop.h
 delete mode 100644 include/linux/concap.h
 delete mode 100644 include/linux/isdn.h
 delete mode 100644 include/linux/isdn_divertif.h
 delete mode 100644 include/linux/isdn_ppp.h
 delete mode 100644 include/linux/isdnif.h
 delete mode 100644 include/linux/wanrouter.h
 delete mode 100644 include/uapi/linux/isdn.h
 delete mode 100644 include/uapi/linux/isdn_divertif.h
 delete mode 100644 include/uapi/linux/isdn_ppp.h
 delete mode 100644 include/uapi/linux/isdnif.h
 delete mode 100644 include/uapi/linux/wanrouter.h

diff --git a/Documentation/isdn/INTERFACE b/Documentation/isdn/INTERFACE
deleted file mode 100644
index 5df17e5b25c8..000000000000
diff --git a/Documentation/isdn/INTERFACE.fax b/Documentation/isdn/INTERFACE.fax
deleted file mode 100644
index 9c8c6d914ec7..000000000000
diff --git a/Documentation/isdn/README b/Documentation/isdn/README
deleted file mode 100644
index 74bd2bdb455b..000000000000
diff --git a/Documentation/isdn/README.FAQ b/Documentation/isdn/README.FAQ
deleted file mode 100644
index e5dd1addacdd..000000000000
diff --git a/Documentation/isdn/README.audio b/Documentation/isdn/README.audio
deleted file mode 100644
index 8ebca19290d9..000000000000
diff --git a/Documentation/isdn/README.concap b/Documentation/isdn/README.concap
deleted file mode 100644
index a76d74845a4c..000000000000
diff --git a/Documentation/isdn/README.diversion b/Documentation/isdn/README.diversion
deleted file mode 100644
index bddcd5fb86ff..000000000000
diff --git a/Documentation/isdn/README.fax b/Documentation/isdn/README.fax
deleted file mode 100644
index 5314958a8a6e..000000000000
diff --git a/Documentation/isdn/README.hfc-pci b/Documentation/isdn/README.hfc-pci
deleted file mode 100644
index e8a4ef0226e8..000000000000
diff --git a/Documentation/isdn/README.syncppp b/Documentation/isdn/README.syncppp
deleted file mode 100644
index 27d260095cce..000000000000
diff --git a/Documentation/isdn/README.x25 b/Documentation/isdn/README.x25
deleted file mode 100644
index e561a77c4e22..000000000000
diff --git a/Documentation/isdn/syncPPP.FAQ b/Documentation/isdn/syncPPP.FAQ
deleted file mode 100644
index 3257a4bc0786..000000000000
diff --git a/Documentation/process/changes.rst b/Documentation/process/changes.rst
index 18735dc460a0..111636ad1bad 100644
--- a/Documentation/process/changes.rst
+++ b/Documentation/process/changes.rst
@@ -23,8 +23,8 @@ running, the suggested command should tell you.
 
 Again, keep in mind that this list assumes you are already functionally
 running a Linux kernel.  Also, not all tools are necessary on all
-systems; obviously, if you don't have any ISDN hardware, for example,
-you probably needn't concern yourself with isdn4k-utils.
+systems; obviously, if you don't have any PC Card hardware, for example,
+you probably needn't concern yourself with pcmciautils.
 
 ====================== ===============  ========================================
         Program        Minimal version       Command to check the version
@@ -45,7 +45,6 @@ btrfs-progs            0.18             btrfsck
 pcmciautils            004              pccardctl -V
 quota-tools            3.09             quota -V
 PPP                    2.4.0            pppd --version
-isdn4k-utils           3.1pre1          isdnctrl 2>&1|grep version
 nfs-utils              1.0.5            showmount --version
 procps                 3.2.0            ps --version
 oprofile               0.9              oprofiled --version
@@ -279,12 +278,6 @@ which can be made by::
 
 as root.
 
-Isdn4k-utils
-------------
-
-Due to changes in the length of the phone number field, isdn4k-utils
-needs to be recompiled or (preferably) upgraded.
-
 NFS-utils
 ---------
 
@@ -448,11 +441,6 @@ PPP
 
 - <ftp://ftp.samba.org/pub/ppp/>
 
-Isdn4k-utils
-------------
-
-- <ftp://ftp.isdn4linux.de/pub/isdn4linux/utils/>
-
 NFS-utils
 ---------
 
diff --git a/MAINTAINERS b/MAINTAINERS
index 3671fdea5010..1e3a739f0145 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -8245,9 +8245,7 @@ T:	git git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/isdn-2.6.git
 S:	Maintained
 F:	Documentation/isdn/
 F:	drivers/isdn/
-F:	include/linux/isdn.h
 F:	include/linux/isdn/
-F:	include/uapi/linux/isdn.h
 F:	include/uapi/linux/isdn/
 
 IT87 HARDWARE MONITORING DRIVER
diff --git a/drivers/isdn/Kconfig b/drivers/isdn/Kconfig
index ef661acdda17..161f7527df70 100644
--- a/drivers/isdn/Kconfig
+++ b/drivers/isdn/Kconfig
@@ -20,27 +20,6 @@ menuconfig ISDN
 
 if ISDN
 
-menuconfig ISDN_I4L
-	tristate "Old ISDN4Linux (deprecated)"
-	depends on TTY
-	---help---
-	  This driver allows you to use an ISDN adapter for networking
-	  connections and as dialin/out device.  The isdn-tty's have a built
-	  in AT-compatible modem emulator.  Network devices support autodial,
-	  channel-bundling, callback and caller-authentication without having
-	  a daemon running.  A reduced T.70 protocol is supported with tty's
-	  suitable for German BTX.  On D-Channel, the protocols EDSS1
-	  (Euro-ISDN) and 1TR6 (German style) are supported.  See
-	  <file:Documentation/isdn/README> for more information.
-
-	  ISDN support in the linux kernel is moving towards a new API,
-	  called CAPI (Common ISDN Application Programming Interface).
-	  Therefore the old ISDN4Linux layer will eventually become obsolete.
-	  It is still available, though, for use with adapters that are not
-	  supported by the new CAPI subsystem yet.
-
-source "drivers/isdn/i4l/Kconfig"
-
 menuconfig ISDN_CAPI
 	tristate "CAPI 2.0 subsystem"
 	help
@@ -70,9 +49,4 @@ source "drivers/isdn/hysdn/Kconfig"
 
 source "drivers/isdn/mISDN/Kconfig"
 
-config ISDN_HDLC
-	tristate
-	select CRC_CCITT
-	select BITREVERSE
-
 endif # ISDN
diff --git a/drivers/isdn/Makefile b/drivers/isdn/Makefile
index 7487f0bbe855..379b4a03c321 100644
--- a/drivers/isdn/Makefile
+++ b/drivers/isdn/Makefile
@@ -7,7 +7,5 @@ obj-$(CONFIG_ISDN_I4L)			+= i4l/
 obj-$(CONFIG_ISDN_CAPI)			+= capi/
 obj-$(CONFIG_MISDN)			+= mISDN/
 obj-$(CONFIG_ISDN)			+= hardware/
-obj-$(CONFIG_ISDN_DIVERSION)		+= divert/
-obj-$(CONFIG_ISDN_DRV_LOOP)		+= isdnloop/
 obj-$(CONFIG_HYSDN)			+= hysdn/
 obj-$(CONFIG_ISDN_DRV_GIGASET)		+= gigaset/
diff --git a/drivers/isdn/capi/Kconfig b/drivers/isdn/capi/Kconfig
index 7641b3096ea6..fe4a265c2c6d 100644
--- a/drivers/isdn/capi/Kconfig
+++ b/drivers/isdn/capi/Kconfig
@@ -26,15 +26,6 @@ config ISDN_CAPI_MIDDLEWARE
 	  device.  If you want to use pppd with pppdcapiplugin to dial up to
 	  your ISP, say Y here.
 
-config ISDN_CAPI_CAPIDRV
-	tristate "CAPI2.0 capidrv interface support"
-	depends on 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
-	  supported by a CAPI driver, but still want to use old features like
-	  ippp interfaces or ttyI emulation, say Y/M here.
-
 config ISDN_CAPI_CAPIDRV_VERBOSE
 	bool "Verbose reason code reporting"
 	depends on ISDN_CAPI_CAPIDRV
diff --git a/drivers/isdn/capi/capidrv.c b/drivers/isdn/capi/capidrv.c
deleted file mode 100644
index e8949f3dcae1..000000000000
diff --git a/drivers/isdn/capi/capidrv.h b/drivers/isdn/capi/capidrv.h
deleted file mode 100644
index 4466b2e0176d..000000000000
diff --git a/drivers/isdn/divert/Makefile b/drivers/isdn/divert/Makefile
deleted file mode 100644
index dd4a202e0bc2..000000000000
diff --git a/drivers/isdn/divert/divert_init.c b/drivers/isdn/divert/divert_init.c
deleted file mode 100644
index 267dede13bfd..000000000000
diff --git a/drivers/isdn/divert/divert_procfs.c b/drivers/isdn/divert/divert_procfs.c
deleted file mode 100644
index 342585e04fd3..000000000000
diff --git a/drivers/isdn/divert/isdn_divert.c b/drivers/isdn/divert/isdn_divert.c
deleted file mode 100644
index 5620fd2c6009..000000000000
diff --git a/drivers/isdn/divert/isdn_divert.h b/drivers/isdn/divert/isdn_divert.h
deleted file mode 100644
index 55033dd872c0..000000000000
diff --git a/drivers/isdn/i4l/Kconfig b/drivers/isdn/i4l/Kconfig
deleted file mode 100644
index dc8ab12199e9..000000000000
diff --git a/drivers/isdn/i4l/Makefile b/drivers/isdn/i4l/Makefile
index be77500c9e86..11fe697739d5 100644
--- a/drivers/isdn/i4l/Makefile
+++ b/drivers/isdn/i4l/Makefile
@@ -3,18 +3,4 @@
 
 # Each configuration option enables a list of files.
 
-obj-$(CONFIG_ISDN_I4L)		+= isdn.o
-obj-$(CONFIG_ISDN_PPP_BSDCOMP)	+= isdn_bsdcomp.o
 obj-$(CONFIG_ISDN_HDLC)		+= isdnhdlc.o
-
-# Multipart objects.
-
-isdn-y				:= isdn_net.o isdn_tty.o isdn_v110.o isdn_common.o
-
-# Optional parts of multipart objects.
-
-isdn-$(CONFIG_ISDN_PPP)		+= isdn_ppp.o
-isdn-$(CONFIG_ISDN_X25)		+= isdn_concap.o isdn_x25iface.o
-isdn-$(CONFIG_ISDN_AUDIO)		+= isdn_audio.o
-isdn-$(CONFIG_ISDN_TTY_FAX)	+= isdn_ttyfax.o
-
diff --git a/drivers/isdn/i4l/isdn_audio.c b/drivers/isdn/i4l/isdn_audio.c
deleted file mode 100644
index b6bcd1eca128..000000000000
diff --git a/drivers/isdn/i4l/isdn_audio.h b/drivers/isdn/i4l/isdn_audio.h
deleted file mode 100644
index 013c3582e0d1..000000000000
diff --git a/drivers/isdn/i4l/isdn_bsdcomp.c b/drivers/isdn/i4l/isdn_bsdcomp.c
deleted file mode 100644
index 7f28b967ed19..000000000000
diff --git a/drivers/isdn/i4l/isdn_common.c b/drivers/isdn/i4l/isdn_common.c
deleted file mode 100644
index 74ee00f5b310..000000000000
diff --git a/drivers/isdn/i4l/isdn_common.h b/drivers/isdn/i4l/isdn_common.h
deleted file mode 100644
index 2260ef07ab9c..000000000000
diff --git a/drivers/isdn/i4l/isdn_concap.c b/drivers/isdn/i4l/isdn_concap.c
deleted file mode 100644
index 336523ec077c..000000000000
diff --git a/drivers/isdn/i4l/isdn_concap.h b/drivers/isdn/i4l/isdn_concap.h
deleted file mode 100644
index cd7e3ba74e25..000000000000
diff --git a/drivers/isdn/i4l/isdn_net.c b/drivers/isdn/i4l/isdn_net.c
deleted file mode 100644
index c138f66f2659..000000000000
diff --git a/drivers/isdn/i4l/isdn_net.h b/drivers/isdn/i4l/isdn_net.h
deleted file mode 100644
index cca6d68da171..000000000000
diff --git a/drivers/isdn/i4l/isdn_ppp.c b/drivers/isdn/i4l/isdn_ppp.c
deleted file mode 100644
index 1f17126c5fa4..000000000000
diff --git a/drivers/isdn/i4l/isdn_ppp.h b/drivers/isdn/i4l/isdn_ppp.h
deleted file mode 100644
index 34b8a2ce84f3..000000000000
diff --git a/drivers/isdn/i4l/isdn_tty.c b/drivers/isdn/i4l/isdn_tty.c
deleted file mode 100644
index 43700fc19a31..000000000000
diff --git a/drivers/isdn/i4l/isdn_tty.h b/drivers/isdn/i4l/isdn_tty.h
deleted file mode 100644
index a6f801d2263b..000000000000
diff --git a/drivers/isdn/i4l/isdn_ttyfax.c b/drivers/isdn/i4l/isdn_ttyfax.c
deleted file mode 100644
index 47aae4916730..000000000000
diff --git a/drivers/isdn/i4l/isdn_ttyfax.h b/drivers/isdn/i4l/isdn_ttyfax.h
deleted file mode 100644
index ccda4fcf8f7b..000000000000
diff --git a/drivers/isdn/i4l/isdn_v110.c b/drivers/isdn/i4l/isdn_v110.c
deleted file mode 100644
index d11fe76f138f..000000000000
diff --git a/drivers/isdn/i4l/isdn_v110.h b/drivers/isdn/i4l/isdn_v110.h
deleted file mode 100644
index de774ab598c9..000000000000
diff --git a/drivers/isdn/i4l/isdn_x25iface.c b/drivers/isdn/i4l/isdn_x25iface.c
deleted file mode 100644
index 48bfbcb4a09d..000000000000
diff --git a/drivers/isdn/i4l/isdn_x25iface.h b/drivers/isdn/i4l/isdn_x25iface.h
deleted file mode 100644
index ca08e082cf7c..000000000000
diff --git a/drivers/isdn/isdnloop/Makefile b/drivers/isdn/isdnloop/Makefile
deleted file mode 100644
index 317cd3c5b8ee..000000000000
diff --git a/drivers/isdn/isdnloop/isdnloop.c b/drivers/isdn/isdnloop/isdnloop.c
deleted file mode 100644
index 755c6bbc9553..000000000000
diff --git a/drivers/isdn/isdnloop/isdnloop.h b/drivers/isdn/isdnloop/isdnloop.h
deleted file mode 100644
index e9e035552bb4..000000000000
diff --git a/include/linux/concap.h b/include/linux/concap.h
deleted file mode 100644
index 977acb3d1fb2..000000000000
diff --git a/include/linux/isdn.h b/include/linux/isdn.h
deleted file mode 100644
index df97c8444f5d..000000000000
diff --git a/include/linux/isdn_divertif.h b/include/linux/isdn_divertif.h
deleted file mode 100644
index 19ab361f9f07..000000000000
diff --git a/include/linux/isdn_ppp.h b/include/linux/isdn_ppp.h
deleted file mode 100644
index a0070c6dfaf8..000000000000
diff --git a/include/linux/isdnif.h b/include/linux/isdnif.h
deleted file mode 100644
index 8d80fdc68647..000000000000
diff --git a/include/linux/wanrouter.h b/include/linux/wanrouter.h
deleted file mode 100644
index f6358558f9f5..000000000000
diff --git a/include/uapi/linux/isdn.h b/include/uapi/linux/isdn.h
deleted file mode 100644
index f371fd52ed75..000000000000
diff --git a/include/uapi/linux/isdn_divertif.h b/include/uapi/linux/isdn_divertif.h
deleted file mode 100644
index 0a17bb1bcb1b..000000000000
diff --git a/include/uapi/linux/isdn_ppp.h b/include/uapi/linux/isdn_ppp.h
deleted file mode 100644
index 0bdc4efaacb2..000000000000
diff --git a/include/uapi/linux/isdnif.h b/include/uapi/linux/isdnif.h
deleted file mode 100644
index 611a69196738..000000000000
diff --git a/include/uapi/linux/wanrouter.h b/include/uapi/linux/wanrouter.h
deleted file mode 100644
index 2f1216d00caa..000000000000
-- 
2.20.0


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

* [PATCH 4/5] isdn: hdlc: move into mISDN
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (8 preceding siblings ...)
  2019-04-23 15:11 ` [PATCH 3/5] isdn: remove isdn4linux Arnd Bergmann
@ 2019-04-23 15:11 ` Arnd Bergmann
  2019-04-23 15:11 ` [PATCH 5/5] isdn: move capi drivers to staging Arnd Bergmann
                   ` (4 subsequent siblings)
  14 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

The last remnant of the isdn4linux interface is now the isdnhdlc
support, used by the netjet driver. Move it next to that driver.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/isdn/Makefile                                      | 1 -
 drivers/isdn/hardware/mISDN/Kconfig                        | 7 +++++--
 drivers/isdn/hardware/mISDN/Makefile                       | 2 ++
 drivers/isdn/{i4l => hardware/mISDN}/isdnhdlc.c            | 2 +-
 .../isdn/hdlc.h => drivers/isdn/hardware/mISDN/isdnhdlc.h  | 0
 drivers/isdn/hardware/mISDN/netjet.c                       | 2 +-
 drivers/isdn/i4l/Makefile                                  | 6 ------
 7 files changed, 9 insertions(+), 11 deletions(-)
 rename drivers/isdn/{i4l => hardware/mISDN}/isdnhdlc.c (99%)
 rename include/linux/isdn/hdlc.h => drivers/isdn/hardware/mISDN/isdnhdlc.h (100%)
 delete mode 100644 drivers/isdn/i4l/Makefile

diff --git a/drivers/isdn/Makefile b/drivers/isdn/Makefile
index 379b4a03c321..f2a529c5a511 100644
--- a/drivers/isdn/Makefile
+++ b/drivers/isdn/Makefile
@@ -3,7 +3,6 @@
 
 # Object files in subdirectories
 
-obj-$(CONFIG_ISDN_I4L)			+= i4l/
 obj-$(CONFIG_ISDN_CAPI)			+= capi/
 obj-$(CONFIG_MISDN)			+= mISDN/
 obj-$(CONFIG_ISDN)			+= hardware/
diff --git a/drivers/isdn/hardware/mISDN/Kconfig b/drivers/isdn/hardware/mISDN/Kconfig
index fda912b0833f..da30d85c9236 100644
--- a/drivers/isdn/hardware/mISDN/Kconfig
+++ b/drivers/isdn/hardware/mISDN/Kconfig
@@ -78,11 +78,14 @@ config MISDN_NETJET
 	depends on PCI
 	depends on TTY
 	select MISDN_IPAC
-	select ISDN_HDLC
-	select ISDN_I4L
+	select MISDN_HDLC
 	help
 	  Enable support for Traverse Technologies NETJet PCI cards.
 
+config MISDN_HDLC
+	tristate
+	select CRC_CCITT
+	select BITREVERSE
 
 config MISDN_IPAC
 	tristate
diff --git a/drivers/isdn/hardware/mISDN/Makefile b/drivers/isdn/hardware/mISDN/Makefile
index 422f9fd8ab9a..3f50f8c4753f 100644
--- a/drivers/isdn/hardware/mISDN/Makefile
+++ b/drivers/isdn/hardware/mISDN/Makefile
@@ -15,3 +15,5 @@ obj-$(CONFIG_MISDN_NETJET) += netjet.o
 # chip modules
 obj-$(CONFIG_MISDN_IPAC) += mISDNipac.o
 obj-$(CONFIG_MISDN_ISAR) += mISDNisar.o
+
+obj-$(CONFIG_MISDN_HDLC) += isdnhdlc.o
diff --git a/drivers/isdn/i4l/isdnhdlc.c b/drivers/isdn/hardware/mISDN/isdnhdlc.c
similarity index 99%
rename from drivers/isdn/i4l/isdnhdlc.c
rename to drivers/isdn/hardware/mISDN/isdnhdlc.c
index 027d1c590679..3a8b562e63b1 100644
--- a/drivers/isdn/i4l/isdnhdlc.c
+++ b/drivers/isdn/hardware/mISDN/isdnhdlc.c
@@ -25,8 +25,8 @@
 #include <linux/module.h>
 #include <linux/init.h>
 #include <linux/crc-ccitt.h>
-#include <linux/isdn/hdlc.h>
 #include <linux/bitrev.h>
+#include "isdnhdlc.h"
 
 /*-------------------------------------------------------------------*/
 
diff --git a/include/linux/isdn/hdlc.h b/drivers/isdn/hardware/mISDN/isdnhdlc.h
similarity index 100%
rename from include/linux/isdn/hdlc.h
rename to drivers/isdn/hardware/mISDN/isdnhdlc.h
diff --git a/drivers/isdn/hardware/mISDN/netjet.c b/drivers/isdn/hardware/mISDN/netjet.c
index 2b317cb63d06..93a2d361eda5 100644
--- a/drivers/isdn/hardware/mISDN/netjet.c
+++ b/drivers/isdn/hardware/mISDN/netjet.c
@@ -29,7 +29,7 @@
 #include "ipac.h"
 #include "iohelper.h"
 #include "netjet.h"
-#include <linux/isdn/hdlc.h>
+#include "isdnhdlc.h"
 
 #define NETJET_REV	"2.0"
 
diff --git a/drivers/isdn/i4l/Makefile b/drivers/isdn/i4l/Makefile
deleted file mode 100644
index 11fe697739d5..000000000000
-- 
2.20.0


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

* [PATCH 5/5] isdn: move capi drivers to staging
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (9 preceding siblings ...)
  2019-04-23 15:11 ` [PATCH 4/5] isdn: hdlc: move into mISDN Arnd Bergmann
@ 2019-04-23 15:11 ` Arnd Bergmann
  2019-04-24  9:24   ` Thomas Jarosch
  2019-04-24  2:37 ` [PATCH 0/5] isdn: deprecate non-mISDN drivers David Miller
                   ` (3 subsequent siblings)
  14 siblings, 1 reply; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-23 15:11 UTC (permalink / raw)
  To: Karsten Keil, netdev
  Cc: isdn4linux, Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Arnd Bergmann

I tried to find any indication of whether the capi drivers are
still in use, and have not found anything  from a long time ago.

With public ISDN networks almost completely shut down over the past 12
months, there is very little you can actually do with this hardware. The
main remaining use case would be to connect ISDN voice phones to an
in-house installation with Asterisk or LCR, but anyone trying this in
turn seems to be using either the mISDN driver stack, or out-of-tree
drivers from the hardware vendors.

I may of course have missed something, so I would suggest moving
these into drivers/staging/ just in case someone still uses one
of the three remaining in-kernel drivers (avm, hysdn, gigaset).

If nobody complains, we can remove them entirely in six months,
or otherwise move the core code and any drivers that are still
needed back into drivers/isdn.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 MAINTAINERS                                   | 16 +++++++----
 drivers/isdn/Kconfig                          | 27 ------------------
 drivers/isdn/Makefile                         |  3 --
 drivers/isdn/hardware/Makefile                |  1 -
 drivers/staging/Kconfig                       |  2 ++
 drivers/staging/Makefile                      |  1 +
 .../staging/isdn/Documentation}/CREDITS       |  0
 .../isdn/Documentation}/INTERFACE.CAPI        |  0
 .../staging/isdn/Documentation}/README.avmb1  |  0
 .../isdn/Documentation}/README.gigaset        |  0
 .../staging/isdn/Documentation}/README.hysdn  |  0
 drivers/staging/isdn/Kconfig                  | 28 +++++++++++++++++++
 drivers/staging/isdn/Makefile                 |  9 ++++++
 drivers/staging/isdn/TODO                     | 22 +++++++++++++++
 .../hardware => staging/isdn}/avm/Kconfig     |  0
 .../hardware => staging/isdn}/avm/Makefile    |  2 ++
 .../hardware => staging/isdn}/avm/avm_cs.c    |  0
 .../hardware => staging/isdn}/avm/avmcard.h   |  0
 .../{isdn/hardware => staging/isdn}/avm/b1.c  |  0
 .../hardware => staging/isdn}/avm/b1dma.c     |  0
 .../hardware => staging/isdn}/avm/b1isa.c     |  0
 .../hardware => staging/isdn}/avm/b1pci.c     |  0
 .../hardware => staging/isdn}/avm/b1pcmcia.c  |  0
 .../{isdn/hardware => staging/isdn}/avm/c4.c  |  0
 .../hardware => staging/isdn}/avm/t1isa.c     |  0
 .../hardware => staging/isdn}/avm/t1pci.c     |  0
 drivers/{ => staging}/isdn/capi/Kconfig       |  0
 drivers/{ => staging}/isdn/capi/Makefile      |  2 ++
 drivers/{ => staging}/isdn/capi/capi.c        |  0
 drivers/{ => staging}/isdn/capi/capilib.c     |  0
 drivers/{ => staging}/isdn/capi/capiutil.c    |  0
 drivers/{ => staging}/isdn/capi/kcapi.c       |  0
 drivers/{ => staging}/isdn/capi/kcapi.h       |  0
 drivers/{ => staging}/isdn/capi/kcapi_proc.c  |  0
 drivers/{ => staging}/isdn/gigaset/Kconfig    |  0
 drivers/{ => staging}/isdn/gigaset/Makefile   |  2 ++
 .../{ => staging}/isdn/gigaset/asyncdata.c    |  0
 .../{ => staging}/isdn/gigaset/bas-gigaset.c  |  0
 drivers/{ => staging}/isdn/gigaset/capi.c     |  0
 drivers/{ => staging}/isdn/gigaset/common.c   |  0
 drivers/{ => staging}/isdn/gigaset/ev-layer.c |  0
 drivers/{ => staging}/isdn/gigaset/gigaset.h  |  0
 .../{ => staging}/isdn/gigaset/interface.c    |  0
 drivers/{ => staging}/isdn/gigaset/isocdata.c |  0
 drivers/{ => staging}/isdn/gigaset/proc.c     |  0
 .../{ => staging}/isdn/gigaset/ser-gigaset.c  |  0
 .../{ => staging}/isdn/gigaset/usb-gigaset.c  |  0
 drivers/{ => staging}/isdn/hysdn/Kconfig      |  0
 drivers/{ => staging}/isdn/hysdn/Makefile     |  2 ++
 drivers/{ => staging}/isdn/hysdn/boardergo.c  |  0
 drivers/{ => staging}/isdn/hysdn/boardergo.h  |  0
 drivers/{ => staging}/isdn/hysdn/hycapi.c     |  0
 drivers/{ => staging}/isdn/hysdn/hysdn_boot.c |  0
 drivers/{ => staging}/isdn/hysdn/hysdn_defs.h |  0
 drivers/{ => staging}/isdn/hysdn/hysdn_init.c |  0
 drivers/{ => staging}/isdn/hysdn/hysdn_net.c  |  0
 drivers/{ => staging}/isdn/hysdn/hysdn_pof.h  |  0
 .../{ => staging}/isdn/hysdn/hysdn_procconf.c |  0
 .../{ => staging}/isdn/hysdn/hysdn_proclog.c  |  0
 .../{ => staging}/isdn/hysdn/hysdn_sched.c    |  0
 drivers/{ => staging}/isdn/hysdn/ince1pc.h    |  0
 .../staging/isdn/include}/linux/b1lli.h       |  0
 .../staging/isdn/include}/linux/gigaset_dev.h |  0
 .../isdn/include}/linux/isdn/capilli.h        |  0
 .../isdn/include}/linux/isdn/capiutil.h       |  0
 .../isdn/include}/uapi/linux/isdn/capicmd.h   |  0
 66 files changed, 81 insertions(+), 36 deletions(-)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/CREDITS (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/INTERFACE.CAPI (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.avmb1 (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.gigaset (100%)
 rename {Documentation/isdn => drivers/staging/isdn/Documentation}/README.hysdn (100%)
 create mode 100644 drivers/staging/isdn/Kconfig
 create mode 100644 drivers/staging/isdn/Makefile
 create mode 100644 drivers/staging/isdn/TODO
 rename drivers/{isdn/hardware => staging/isdn}/avm/Kconfig (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/Makefile (86%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/avm_cs.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/avmcard.h (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1dma.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1isa.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1pci.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/b1pcmcia.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/c4.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/t1isa.c (100%)
 rename drivers/{isdn/hardware => staging/isdn}/avm/t1pci.c (100%)
 rename drivers/{ => staging}/isdn/capi/Kconfig (100%)
 rename drivers/{ => staging}/isdn/capi/Makefile (83%)
 rename drivers/{ => staging}/isdn/capi/capi.c (100%)
 rename drivers/{ => staging}/isdn/capi/capilib.c (100%)
 rename drivers/{ => staging}/isdn/capi/capiutil.c (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi.c (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi.h (100%)
 rename drivers/{ => staging}/isdn/capi/kcapi_proc.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/Kconfig (100%)
 rename drivers/{ => staging}/isdn/gigaset/Makefile (82%)
 rename drivers/{ => staging}/isdn/gigaset/asyncdata.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/bas-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/capi.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/common.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/ev-layer.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/gigaset.h (100%)
 rename drivers/{ => staging}/isdn/gigaset/interface.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/isocdata.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/proc.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/ser-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/gigaset/usb-gigaset.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/Kconfig (100%)
 rename drivers/{ => staging}/isdn/hysdn/Makefile (79%)
 rename drivers/{ => staging}/isdn/hysdn/boardergo.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/boardergo.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hycapi.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_boot.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_defs.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_init.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_net.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_pof.h (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_procconf.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_proclog.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/hysdn_sched.c (100%)
 rename drivers/{ => staging}/isdn/hysdn/ince1pc.h (100%)
 rename {include/uapi => drivers/staging/isdn/include}/linux/b1lli.h (100%)
 rename {include/uapi => drivers/staging/isdn/include}/linux/gigaset_dev.h (100%)
 rename {include => drivers/staging/isdn/include}/linux/isdn/capilli.h (100%)
 rename {include => drivers/staging/isdn/include}/linux/isdn/capiutil.h (100%)
 rename {include => drivers/staging/isdn/include}/uapi/linux/isdn/capicmd.h (100%)

diff --git a/MAINTAINERS b/MAINTAINERS
index 1e3a739f0145..c090207ab4fa 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -6556,9 +6556,7 @@ M:	Paul Bolle <pebolle@tiscali.nl>
 L:	gigaset307x-common@lists.sourceforge.net
 W:	http://gigaset307x.sourceforge.net/
 S:	Odd Fixes
-F:	Documentation/isdn/README.gigaset
-F:	drivers/isdn/gigaset/
-F:	include/uapi/linux/gigaset_dev.h
+F:	drivers/staging/isdn/gigaset/
 
 GNSS SUBSYSTEM
 M:	Johan Hovold <johan@kernel.org>
@@ -8236,18 +8234,26 @@ S:	Supported
 W:	http://www.linux-iscsi.org
 F:	drivers/infiniband/ulp/isert
 
-ISDN SUBSYSTEM
+ISDN/mISDN SUBSYSTEM
 M:	Karsten Keil <isdn@linux-pingi.de>
 L:	isdn4linux@listserv.isdn4linux.de (subscribers-only)
 L:	netdev@vger.kernel.org
 W:	http://www.isdn4linux.de
-T:	git git://git.kernel.org/pub/scm/linux/kernel/git/kkeil/isdn-2.6.git
 S:	Maintained
 F:	Documentation/isdn/
+F:	drivers/staging/isdn/
 F:	drivers/isdn/
 F:	include/linux/isdn/
 F:	include/uapi/linux/isdn/
 
+ISDN/CAPI SUBSYSTEM
+M:	Karsten Keil <isdn@linux-pingi.de>
+L:	isdn4linux@listserv.isdn4linux.de (subscribers-only)
+L:	netdev@vger.kernel.org
+W:	http://www.isdn4linux.de
+S:	Odd Fixes
+F:	drivers/staging/isdn/
+
 IT87 HARDWARE MONITORING DRIVER
 M:	Jean Delvare <jdelvare@suse.com>
 L:	linux-hwmon@vger.kernel.org
diff --git a/drivers/isdn/Kconfig b/drivers/isdn/Kconfig
index 161f7527df70..7e21b5c4b9b0 100644
--- a/drivers/isdn/Kconfig
+++ b/drivers/isdn/Kconfig
@@ -20,33 +20,6 @@ menuconfig ISDN
 
 if ISDN
 
-menuconfig ISDN_CAPI
-	tristate "CAPI 2.0 subsystem"
-	help
-	  This provides CAPI (the Common ISDN Application Programming
-	  Interface) Version 2.0, a standard making it easy for programs to
-	  access ISDN hardware in a device independent way. (For details see
-	  <http://www.capi.org/>.)  CAPI supports making and accepting voice
-	  and data connections, controlling call options and protocols,
-	  as well as ISDN supplementary services like call forwarding or
-	  three-party conferences (if supported by the specific hardware
-	  driver).
-
-	  Select this option and the appropriate hardware driver below if
-	  you have an ISDN adapter supported by the CAPI subsystem.
-
-if ISDN_CAPI
-
-source "drivers/isdn/capi/Kconfig"
-
-source "drivers/isdn/hardware/Kconfig"
-
-endif # ISDN_CAPI
-
-source "drivers/isdn/gigaset/Kconfig"
-
-source "drivers/isdn/hysdn/Kconfig"
-
 source "drivers/isdn/mISDN/Kconfig"
 
 endif # ISDN
diff --git a/drivers/isdn/Makefile b/drivers/isdn/Makefile
index f2a529c5a511..0bdadffeb939 100644
--- a/drivers/isdn/Makefile
+++ b/drivers/isdn/Makefile
@@ -3,8 +3,5 @@
 
 # Object files in subdirectories
 
-obj-$(CONFIG_ISDN_CAPI)			+= capi/
 obj-$(CONFIG_MISDN)			+= mISDN/
 obj-$(CONFIG_ISDN)			+= hardware/
-obj-$(CONFIG_HYSDN)			+= hysdn/
-obj-$(CONFIG_ISDN_DRV_GIGASET)		+= gigaset/
diff --git a/drivers/isdn/hardware/Makefile b/drivers/isdn/hardware/Makefile
index e503032b05a0..da55c4a285f6 100644
--- a/drivers/isdn/hardware/Makefile
+++ b/drivers/isdn/hardware/Makefile
@@ -2,5 +2,4 @@
 
 # Object files in subdirectories
 
-obj-$(CONFIG_CAPI_AVM)		+= avm/
 obj-$(CONFIG_MISDN)		+= mISDN/
diff --git a/drivers/staging/Kconfig b/drivers/staging/Kconfig
index 62951e836cbc..53e748b90c2c 100644
--- a/drivers/staging/Kconfig
+++ b/drivers/staging/Kconfig
@@ -122,4 +122,6 @@ source "drivers/staging/axis-fifo/Kconfig"
 
 source "drivers/staging/erofs/Kconfig"
 
+source "drivers/staging/isdn/Kconfig"
+
 endif # STAGING
diff --git a/drivers/staging/Makefile b/drivers/staging/Makefile
index d1b17ddcd354..dab0be5ae2ec 100644
--- a/drivers/staging/Makefile
+++ b/drivers/staging/Makefile
@@ -51,3 +51,4 @@ obj-$(CONFIG_SOC_MT7621)	+= mt7621-dts/
 obj-$(CONFIG_STAGING_GASKET_FRAMEWORK)	+= gasket/
 obj-$(CONFIG_XIL_AXIS_FIFO)	+= axis-fifo/
 obj-$(CONFIG_EROFS_FS)		+= erofs/
+obj-$(CONFIG_ISDN_CAPI)		+= isdn/
diff --git a/Documentation/isdn/CREDITS b/drivers/staging/isdn/Documentation/CREDITS
similarity index 100%
rename from Documentation/isdn/CREDITS
rename to drivers/staging/isdn/Documentation/CREDITS
diff --git a/Documentation/isdn/INTERFACE.CAPI b/drivers/staging/isdn/Documentation/INTERFACE.CAPI
similarity index 100%
rename from Documentation/isdn/INTERFACE.CAPI
rename to drivers/staging/isdn/Documentation/INTERFACE.CAPI
diff --git a/Documentation/isdn/README.avmb1 b/drivers/staging/isdn/Documentation/README.avmb1
similarity index 100%
rename from Documentation/isdn/README.avmb1
rename to drivers/staging/isdn/Documentation/README.avmb1
diff --git a/Documentation/isdn/README.gigaset b/drivers/staging/isdn/Documentation/README.gigaset
similarity index 100%
rename from Documentation/isdn/README.gigaset
rename to drivers/staging/isdn/Documentation/README.gigaset
diff --git a/Documentation/isdn/README.hysdn b/drivers/staging/isdn/Documentation/README.hysdn
similarity index 100%
rename from Documentation/isdn/README.hysdn
rename to drivers/staging/isdn/Documentation/README.hysdn
diff --git a/drivers/staging/isdn/Kconfig b/drivers/staging/isdn/Kconfig
new file mode 100644
index 000000000000..77e1b80af716
--- /dev/null
+++ b/drivers/staging/isdn/Kconfig
@@ -0,0 +1,28 @@
+menuconfig ISDN_CAPI
+	tristate "CAPI 2.0 subsystem"
+	help
+	  This provides CAPI (the Common ISDN Application Programming
+	  Interface) Version 2.0, a standard making it easy for programs to
+	  access ISDN hardware in a device independent way. (For details see
+	  <http://www.capi.org/>.)  CAPI supports making and accepting voice
+	  and data connections, controlling call options and protocols,
+	  as well as ISDN supplementary services like call forwarding or
+	  three-party conferences (if supported by the specific hardware
+	  driver).
+
+	  Select this option and the appropriate hardware driver below if
+	  you have an ISDN adapter supported by the CAPI subsystem.
+
+if ISDN_CAPI
+
+source "drivers/staging/isdn/capi/Kconfig"
+
+source "drivers/staging/isdn/avm/Kconfig"
+
+source "drivers/staging/isdn/gigaset/Kconfig"
+
+source "drivers/staging/isdn/hysdn/Kconfig"
+
+
+endif # ISDN_CAPI
+
diff --git a/drivers/staging/isdn/Makefile b/drivers/staging/isdn/Makefile
new file mode 100644
index 000000000000..c5e8b8004f65
--- /dev/null
+++ b/drivers/staging/isdn/Makefile
@@ -0,0 +1,9 @@
+# SPDX-License-Identifier: GPL-2.0
+# Makefile for the kernel ISDN subsystem and device drivers.
+
+# Object files in subdirectories
+
+obj-$(CONFIG_ISDN_CAPI)			+= capi/
+obj-$(CONFIG_CAPI_AVM)			+= avm/
+obj-$(CONFIG_HYSDN)			+= hysdn/
+obj-$(CONFIG_ISDN_DRV_GIGASET)		+= gigaset/
diff --git a/drivers/staging/isdn/TODO b/drivers/staging/isdn/TODO
new file mode 100644
index 000000000000..9210d11eb68b
--- /dev/null
+++ b/drivers/staging/isdn/TODO
@@ -0,0 +1,22 @@
+TODO: Remove in late 2019 unless there are users
+
+
+I tried to find any indication of whether the capi drivers are
+still in use, and have not found anything  from a long time ago.
+
+With public ISDN networks almost completely shut down over the past 12
+months, there is very little you can actually do with this hardware. The
+main remaining use case would be to connect ISDN voice phones to an
+in-house installation with Asterisk or LCR, but anyone trying this in
+turn seems to be using either the mISDN driver stack, or out-of-tree
+drivers from the hardware vendors.
+
+I may of course have missed something, so I would suggest moving
+these into drivers/staging/ just in case someone still uses one
+of the three remaining in-kernel drivers (avm, hysdn, gigaset).
+
+If nobody complains, we can remove them entirely in six months,
+or otherwise move the core code and any drivers that are still
+needed back into drivers/isdn.
+
+  Arnd Bergmann <arnd@arndb.de>
diff --git a/drivers/isdn/hardware/avm/Kconfig b/drivers/staging/isdn/avm/Kconfig
similarity index 100%
rename from drivers/isdn/hardware/avm/Kconfig
rename to drivers/staging/isdn/avm/Kconfig
diff --git a/drivers/isdn/hardware/avm/Makefile b/drivers/staging/isdn/avm/Makefile
similarity index 86%
rename from drivers/isdn/hardware/avm/Makefile
rename to drivers/staging/isdn/avm/Makefile
index 3830a0573fcc..fa59f7e38e8a 100644
--- a/drivers/isdn/hardware/avm/Makefile
+++ b/drivers/staging/isdn/avm/Makefile
@@ -10,3 +10,5 @@ obj-$(CONFIG_ISDN_DRV_AVMB1_AVM_CS)	+= avm_cs.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_T1ISA)	+= t1isa.o b1.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_T1PCI)	+= t1pci.o b1.o b1dma.o
 obj-$(CONFIG_ISDN_DRV_AVMB1_C4)		+= c4.o b1.o
+
+ccflags-y += -I$(srctree)/$(src)/../include -I$(srctree)/$(src)/../include/uapi
diff --git a/drivers/isdn/hardware/avm/avm_cs.c b/drivers/staging/isdn/avm/avm_cs.c
similarity index 100%
rename from drivers/isdn/hardware/avm/avm_cs.c
rename to drivers/staging/isdn/avm/avm_cs.c
diff --git a/drivers/isdn/hardware/avm/avmcard.h b/drivers/staging/isdn/avm/avmcard.h
similarity index 100%
rename from drivers/isdn/hardware/avm/avmcard.h
rename to drivers/staging/isdn/avm/avmcard.h
diff --git a/drivers/isdn/hardware/avm/b1.c b/drivers/staging/isdn/avm/b1.c
similarity index 100%
rename from drivers/isdn/hardware/avm/b1.c
rename to drivers/staging/isdn/avm/b1.c
diff --git a/drivers/isdn/hardware/avm/b1dma.c b/drivers/staging/isdn/avm/b1dma.c
similarity index 100%
rename from drivers/isdn/hardware/avm/b1dma.c
rename to drivers/staging/isdn/avm/b1dma.c
diff --git a/drivers/isdn/hardware/avm/b1isa.c b/drivers/staging/isdn/avm/b1isa.c
similarity index 100%
rename from drivers/isdn/hardware/avm/b1isa.c
rename to drivers/staging/isdn/avm/b1isa.c
diff --git a/drivers/isdn/hardware/avm/b1pci.c b/drivers/staging/isdn/avm/b1pci.c
similarity index 100%
rename from drivers/isdn/hardware/avm/b1pci.c
rename to drivers/staging/isdn/avm/b1pci.c
diff --git a/drivers/isdn/hardware/avm/b1pcmcia.c b/drivers/staging/isdn/avm/b1pcmcia.c
similarity index 100%
rename from drivers/isdn/hardware/avm/b1pcmcia.c
rename to drivers/staging/isdn/avm/b1pcmcia.c
diff --git a/drivers/isdn/hardware/avm/c4.c b/drivers/staging/isdn/avm/c4.c
similarity index 100%
rename from drivers/isdn/hardware/avm/c4.c
rename to drivers/staging/isdn/avm/c4.c
diff --git a/drivers/isdn/hardware/avm/t1isa.c b/drivers/staging/isdn/avm/t1isa.c
similarity index 100%
rename from drivers/isdn/hardware/avm/t1isa.c
rename to drivers/staging/isdn/avm/t1isa.c
diff --git a/drivers/isdn/hardware/avm/t1pci.c b/drivers/staging/isdn/avm/t1pci.c
similarity index 100%
rename from drivers/isdn/hardware/avm/t1pci.c
rename to drivers/staging/isdn/avm/t1pci.c
diff --git a/drivers/isdn/capi/Kconfig b/drivers/staging/isdn/capi/Kconfig
similarity index 100%
rename from drivers/isdn/capi/Kconfig
rename to drivers/staging/isdn/capi/Kconfig
diff --git a/drivers/isdn/capi/Makefile b/drivers/staging/isdn/capi/Makefile
similarity index 83%
rename from drivers/isdn/capi/Makefile
rename to drivers/staging/isdn/capi/Makefile
index 06da3ed2c40a..d299f3e75f89 100644
--- a/drivers/isdn/capi/Makefile
+++ b/drivers/staging/isdn/capi/Makefile
@@ -13,3 +13,5 @@ obj-$(CONFIG_ISDN_CAPI_CAPIDRV)		+= capidrv.o
 
 kernelcapi-y				:= kcapi.o capiutil.o capilib.o
 kernelcapi-$(CONFIG_PROC_FS)		+= kcapi_proc.o
+
+ccflags-y += -I$(srctree)/$(src)/../include -I$(srctree)/$(src)/../include/uapi
diff --git a/drivers/isdn/capi/capi.c b/drivers/staging/isdn/capi/capi.c
similarity index 100%
rename from drivers/isdn/capi/capi.c
rename to drivers/staging/isdn/capi/capi.c
diff --git a/drivers/isdn/capi/capilib.c b/drivers/staging/isdn/capi/capilib.c
similarity index 100%
rename from drivers/isdn/capi/capilib.c
rename to drivers/staging/isdn/capi/capilib.c
diff --git a/drivers/isdn/capi/capiutil.c b/drivers/staging/isdn/capi/capiutil.c
similarity index 100%
rename from drivers/isdn/capi/capiutil.c
rename to drivers/staging/isdn/capi/capiutil.c
diff --git a/drivers/isdn/capi/kcapi.c b/drivers/staging/isdn/capi/kcapi.c
similarity index 100%
rename from drivers/isdn/capi/kcapi.c
rename to drivers/staging/isdn/capi/kcapi.c
diff --git a/drivers/isdn/capi/kcapi.h b/drivers/staging/isdn/capi/kcapi.h
similarity index 100%
rename from drivers/isdn/capi/kcapi.h
rename to drivers/staging/isdn/capi/kcapi.h
diff --git a/drivers/isdn/capi/kcapi_proc.c b/drivers/staging/isdn/capi/kcapi_proc.c
similarity index 100%
rename from drivers/isdn/capi/kcapi_proc.c
rename to drivers/staging/isdn/capi/kcapi_proc.c
diff --git a/drivers/isdn/gigaset/Kconfig b/drivers/staging/isdn/gigaset/Kconfig
similarity index 100%
rename from drivers/isdn/gigaset/Kconfig
rename to drivers/staging/isdn/gigaset/Kconfig
diff --git a/drivers/isdn/gigaset/Makefile b/drivers/staging/isdn/gigaset/Makefile
similarity index 82%
rename from drivers/isdn/gigaset/Makefile
rename to drivers/staging/isdn/gigaset/Makefile
index f8ba14735bf1..bb180ca27fdb 100644
--- a/drivers/isdn/gigaset/Makefile
+++ b/drivers/staging/isdn/gigaset/Makefile
@@ -8,3 +8,5 @@ obj-$(CONFIG_ISDN_DRV_GIGASET) += gigaset.o
 obj-$(CONFIG_GIGASET_M105) += usb_gigaset.o
 obj-$(CONFIG_GIGASET_BASE) += bas_gigaset.o
 obj-$(CONFIG_GIGASET_M101) += ser_gigaset.o
+
+ccflags-y += -I$(srctree)/$(src)/../include -I$(srctree)/$(src)/../include/uapi
diff --git a/drivers/isdn/gigaset/asyncdata.c b/drivers/staging/isdn/gigaset/asyncdata.c
similarity index 100%
rename from drivers/isdn/gigaset/asyncdata.c
rename to drivers/staging/isdn/gigaset/asyncdata.c
diff --git a/drivers/isdn/gigaset/bas-gigaset.c b/drivers/staging/isdn/gigaset/bas-gigaset.c
similarity index 100%
rename from drivers/isdn/gigaset/bas-gigaset.c
rename to drivers/staging/isdn/gigaset/bas-gigaset.c
diff --git a/drivers/isdn/gigaset/capi.c b/drivers/staging/isdn/gigaset/capi.c
similarity index 100%
rename from drivers/isdn/gigaset/capi.c
rename to drivers/staging/isdn/gigaset/capi.c
diff --git a/drivers/isdn/gigaset/common.c b/drivers/staging/isdn/gigaset/common.c
similarity index 100%
rename from drivers/isdn/gigaset/common.c
rename to drivers/staging/isdn/gigaset/common.c
diff --git a/drivers/isdn/gigaset/ev-layer.c b/drivers/staging/isdn/gigaset/ev-layer.c
similarity index 100%
rename from drivers/isdn/gigaset/ev-layer.c
rename to drivers/staging/isdn/gigaset/ev-layer.c
diff --git a/drivers/isdn/gigaset/gigaset.h b/drivers/staging/isdn/gigaset/gigaset.h
similarity index 100%
rename from drivers/isdn/gigaset/gigaset.h
rename to drivers/staging/isdn/gigaset/gigaset.h
diff --git a/drivers/isdn/gigaset/interface.c b/drivers/staging/isdn/gigaset/interface.c
similarity index 100%
rename from drivers/isdn/gigaset/interface.c
rename to drivers/staging/isdn/gigaset/interface.c
diff --git a/drivers/isdn/gigaset/isocdata.c b/drivers/staging/isdn/gigaset/isocdata.c
similarity index 100%
rename from drivers/isdn/gigaset/isocdata.c
rename to drivers/staging/isdn/gigaset/isocdata.c
diff --git a/drivers/isdn/gigaset/proc.c b/drivers/staging/isdn/gigaset/proc.c
similarity index 100%
rename from drivers/isdn/gigaset/proc.c
rename to drivers/staging/isdn/gigaset/proc.c
diff --git a/drivers/isdn/gigaset/ser-gigaset.c b/drivers/staging/isdn/gigaset/ser-gigaset.c
similarity index 100%
rename from drivers/isdn/gigaset/ser-gigaset.c
rename to drivers/staging/isdn/gigaset/ser-gigaset.c
diff --git a/drivers/isdn/gigaset/usb-gigaset.c b/drivers/staging/isdn/gigaset/usb-gigaset.c
similarity index 100%
rename from drivers/isdn/gigaset/usb-gigaset.c
rename to drivers/staging/isdn/gigaset/usb-gigaset.c
diff --git a/drivers/isdn/hysdn/Kconfig b/drivers/staging/isdn/hysdn/Kconfig
similarity index 100%
rename from drivers/isdn/hysdn/Kconfig
rename to drivers/staging/isdn/hysdn/Kconfig
diff --git a/drivers/isdn/hysdn/Makefile b/drivers/staging/isdn/hysdn/Makefile
similarity index 79%
rename from drivers/isdn/hysdn/Makefile
rename to drivers/staging/isdn/hysdn/Makefile
index da63b636267d..23c6159513a8 100644
--- a/drivers/isdn/hysdn/Makefile
+++ b/drivers/staging/isdn/hysdn/Makefile
@@ -9,3 +9,5 @@ obj-$(CONFIG_HYSDN)		+= hysdn.o
 hysdn-y				:= hysdn_procconf.o hysdn_proclog.o boardergo.o \
 				   hysdn_boot.o hysdn_sched.o hysdn_net.o hysdn_init.o
 hysdn-$(CONFIG_HYSDN_CAPI)	+= hycapi.o
+
+ccflags-y += -I$(srctree)/$(src)/../include -I$(srctree)/$(src)/../include/uapi
diff --git a/drivers/isdn/hysdn/boardergo.c b/drivers/staging/isdn/hysdn/boardergo.c
similarity index 100%
rename from drivers/isdn/hysdn/boardergo.c
rename to drivers/staging/isdn/hysdn/boardergo.c
diff --git a/drivers/isdn/hysdn/boardergo.h b/drivers/staging/isdn/hysdn/boardergo.h
similarity index 100%
rename from drivers/isdn/hysdn/boardergo.h
rename to drivers/staging/isdn/hysdn/boardergo.h
diff --git a/drivers/isdn/hysdn/hycapi.c b/drivers/staging/isdn/hysdn/hycapi.c
similarity index 100%
rename from drivers/isdn/hysdn/hycapi.c
rename to drivers/staging/isdn/hysdn/hycapi.c
diff --git a/drivers/isdn/hysdn/hysdn_boot.c b/drivers/staging/isdn/hysdn/hysdn_boot.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_boot.c
rename to drivers/staging/isdn/hysdn/hysdn_boot.c
diff --git a/drivers/isdn/hysdn/hysdn_defs.h b/drivers/staging/isdn/hysdn/hysdn_defs.h
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_defs.h
rename to drivers/staging/isdn/hysdn/hysdn_defs.h
diff --git a/drivers/isdn/hysdn/hysdn_init.c b/drivers/staging/isdn/hysdn/hysdn_init.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_init.c
rename to drivers/staging/isdn/hysdn/hysdn_init.c
diff --git a/drivers/isdn/hysdn/hysdn_net.c b/drivers/staging/isdn/hysdn/hysdn_net.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_net.c
rename to drivers/staging/isdn/hysdn/hysdn_net.c
diff --git a/drivers/isdn/hysdn/hysdn_pof.h b/drivers/staging/isdn/hysdn/hysdn_pof.h
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_pof.h
rename to drivers/staging/isdn/hysdn/hysdn_pof.h
diff --git a/drivers/isdn/hysdn/hysdn_procconf.c b/drivers/staging/isdn/hysdn/hysdn_procconf.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_procconf.c
rename to drivers/staging/isdn/hysdn/hysdn_procconf.c
diff --git a/drivers/isdn/hysdn/hysdn_proclog.c b/drivers/staging/isdn/hysdn/hysdn_proclog.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_proclog.c
rename to drivers/staging/isdn/hysdn/hysdn_proclog.c
diff --git a/drivers/isdn/hysdn/hysdn_sched.c b/drivers/staging/isdn/hysdn/hysdn_sched.c
similarity index 100%
rename from drivers/isdn/hysdn/hysdn_sched.c
rename to drivers/staging/isdn/hysdn/hysdn_sched.c
diff --git a/drivers/isdn/hysdn/ince1pc.h b/drivers/staging/isdn/hysdn/ince1pc.h
similarity index 100%
rename from drivers/isdn/hysdn/ince1pc.h
rename to drivers/staging/isdn/hysdn/ince1pc.h
diff --git a/include/uapi/linux/b1lli.h b/drivers/staging/isdn/include/linux/b1lli.h
similarity index 100%
rename from include/uapi/linux/b1lli.h
rename to drivers/staging/isdn/include/linux/b1lli.h
diff --git a/include/uapi/linux/gigaset_dev.h b/drivers/staging/isdn/include/linux/gigaset_dev.h
similarity index 100%
rename from include/uapi/linux/gigaset_dev.h
rename to drivers/staging/isdn/include/linux/gigaset_dev.h
diff --git a/include/linux/isdn/capilli.h b/drivers/staging/isdn/include/linux/isdn/capilli.h
similarity index 100%
rename from include/linux/isdn/capilli.h
rename to drivers/staging/isdn/include/linux/isdn/capilli.h
diff --git a/include/linux/isdn/capiutil.h b/drivers/staging/isdn/include/linux/isdn/capiutil.h
similarity index 100%
rename from include/linux/isdn/capiutil.h
rename to drivers/staging/isdn/include/linux/isdn/capiutil.h
diff --git a/include/uapi/linux/isdn/capicmd.h b/drivers/staging/isdn/include/uapi/linux/isdn/capicmd.h
similarity index 100%
rename from include/uapi/linux/isdn/capicmd.h
rename to drivers/staging/isdn/include/uapi/linux/isdn/capicmd.h
-- 
2.20.0


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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (10 preceding siblings ...)
  2019-04-23 15:11 ` [PATCH 5/5] isdn: move capi drivers to staging Arnd Bergmann
@ 2019-04-24  2:37 ` David Miller
  2019-04-24  8:42   ` Arnd Bergmann
  2019-04-24  7:56 ` Simon Horman
                   ` (2 subsequent siblings)
  14 siblings, 1 reply; 34+ messages in thread
From: David Miller @ 2019-04-24  2:37 UTC (permalink / raw)
  To: arnd
  Cc: isdn, netdev, isdn4linux, pebolle, holgerschurig, tilman, viro,
	gigaset307x-common

From: Arnd Bergmann <arnd@arndb.de>
Date: Tue, 23 Apr 2019 17:11:32 +0200

> When isdn4linux came up in the context of another patch series, I
> remembered that we had discussed removing it a while ago.

This seems long overdue to me.

Could you please respin against net-next and I'll just apply this?

Thank you.

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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (11 preceding siblings ...)
  2019-04-24  2:37 ` [PATCH 0/5] isdn: deprecate non-mISDN drivers David Miller
@ 2019-04-24  7:56 ` Simon Horman
  2019-04-24  8:14   ` Arnd Bergmann
  2019-04-24  8:47 ` Paul Bolle
  2019-04-24 21:28 ` Christoph Biedl
  14 siblings, 1 reply; 34+ messages in thread
From: Simon Horman @ 2019-04-24  7:56 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Karsten Keil, netdev, isdn4linux, Paul Bolle, Holger Schurig,
	Tilman Schmidt, Al Viro, gigaset307x-common

Hi Arnd,

On Tue, Apr 23, 2019 at 05:11:32PM +0200, Arnd Bergmann wrote:
> When isdn4linux came up in the context of another patch series, I
> remembered that we had discussed removing it a while ago.
> 
> It turns out that the suggestion from Karsten Keil wa to remove I4L
> in 2018 after the last public ISDN networks are shut down. This has
> happened now (with a very small number of exceptions), so I guess it's
> time to try again.
> 
> We currently have three ISDN stacks in the kernel: the original
> isdn4linux, the newer CAPI, and finally mISDN stack.
> 
> As far as I can tell, anyone using ISDN with mainline kernel drivers in
> the past few years uses mISDN, and this is typically used for voice-only
> PBX installations that don't require a public network.
> 
> The older stacks support additional features for data networks, but those
> typically make no sense any more if there is no network to connect to.
> 
> My proposal for this time is to kill off isdn4linux entirely, as it seems
> to have been unusable for quite a while. This code has been abandoned
> for many years and it does get in the way of maintenance.

I think there is an editing error somewhere above. Perhaps it should read

... and it does not get anything in the way of maintenance.

> CAPI in turn is not quite as obsolete, but as I have been unable to find
> any users, I would suggest moving it to drivers/staging while we
> figure out if anyone is using it. If not, it can then be removed
> as well. If it turns out that there are users that are on 5.x kernels
> or need to update to them, we can decide to leave parts of it for
> longer, or move them back.
> 
> If anyone is still using isdn4linux and CAPI with modern kernels, please
> speak up now.
> 
>       Arnd
> 
> [1] https://patchwork.kernel.org/patch/8484861/#17900371

...

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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-24  7:56 ` Simon Horman
@ 2019-04-24  8:14   ` Arnd Bergmann
  2019-04-24  9:15     ` Simon Horman
  0 siblings, 1 reply; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-24  8:14 UTC (permalink / raw)
  To: Simon Horman
  Cc: Karsten Keil, Networking, isdn4linux, Paul Bolle, Holger Schurig,
	Tilman Schmidt, Al Viro, gigaset307x-common

On Wed, Apr 24, 2019 at 9:56 AM Simon Horman <horms@verge.net.au> wrote:
>
> Hi Arnd,
>
> On Tue, Apr 23, 2019 at 05:11:32PM +0200, Arnd Bergmann wrote:
> > When isdn4linux came up in the context of another patch series, I
> > remembered that we had discussed removing it a while ago.
> >
> > It turns out that the suggestion from Karsten Keil wa to remove I4L
> > in 2018 after the last public ISDN networks are shut down. This has
> > happened now (with a very small number of exceptions), so I guess it's
> > time to try again.
> >
> > We currently have three ISDN stacks in the kernel: the original
> > isdn4linux, the newer CAPI, and finally mISDN stack.
> >
> > As far as I can tell, anyone using ISDN with mainline kernel drivers in
> > the past few years uses mISDN, and this is typically used for voice-only
> > PBX installations that don't require a public network.
> >
> > The older stacks support additional features for data networks, but those
> > typically make no sense any more if there is no network to connect to.
> >
> > My proposal for this time is to kill off isdn4linux entirely, as it seems
> > to have been unusable for quite a while. This code has been abandoned
> > for many years and it does get in the way of maintenance.
>
> I think there is an editing error somewhere above. Perhaps it should read
>
> ... and it does not get anything in the way of maintenance.

This is certainly a true statement as well, but what I meant is that
the presence of isdn4linux in the kernel is causing extra work whenever
we want to do treewide changes. I'll rephrase to make that clearer.

Thanks for your review!

        Arnd

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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-24  2:37 ` [PATCH 0/5] isdn: deprecate non-mISDN drivers David Miller
@ 2019-04-24  8:42   ` Arnd Bergmann
  2019-04-24 10:24     ` Marcel Holtmann
  0 siblings, 1 reply; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-24  8:42 UTC (permalink / raw)
  To: David Miller
  Cc: Karsten Keil, Networking, isdn4linux, Paul Bolle, Holger Schurig,
	Tilman Schmidt, Al Viro, gigaset307x-common, Marcel Holtmann,
	Johan Hedberg, Bluez mailing list

On Wed, Apr 24, 2019 at 4:37 AM David Miller <davem@davemloft.net> wrote:
>
> From: Arnd Bergmann <arnd@arndb.de>
> Date: Tue, 23 Apr 2019 17:11:32 +0200
>
> > When isdn4linux came up in the context of another patch series, I
> > remembered that we had discussed removing it a while ago.
>
> This seems long overdue to me.
>
> Could you please respin against net-next and I'll just apply this?

Ok. I'll send a pull request then, which should make it easier to deal with
the file removals, as I'm never sure whether 'git format-patch -D' patches
make it across the list correctly, at least I had problems applying them
in the past.

I added a few fixups as in the diff below in the meantime, to deal
with build regressions from the last patch. In particular, the BT_CMTP
(CIP) code also needs to be moved into staging along with the CAPI
core. From what I can find, this was originally used for dial-up
internet connections with 'Bluefritz' ISDN hardware, but it stopped
working many years ago and is no longer useful with after the
public network shutdown either.

     Arnd


diff --git a/drivers/staging/isdn/Kconfig b/drivers/staging/isdn/Kconfig
index 77e1b80af716..29d13fcd9e2b 100644
--- a/drivers/staging/isdn/Kconfig
+++ b/drivers/staging/isdn/Kconfig
@@ -1,5 +1,6 @@
 menuconfig ISDN_CAPI
  tristate "CAPI 2.0 subsystem"
+ depends on NET && NETDEVICES
  help
    This provides CAPI (the Common ISDN Application Programming
    Interface) Version 2.0, a standard making it easy for programs to
@@ -23,6 +24,7 @@ source "drivers/staging/isdn/gigaset/Kconfig"

 source "drivers/staging/isdn/hysdn/Kconfig"

+source "drivers/staging/isdn/cmtp/Kconfig"

 endif # ISDN_CAPI

diff --git a/drivers/staging/isdn/Makefile b/drivers/staging/isdn/Makefile
index c5e8b8004f65..a74e9163f3c8 100644
--- a/drivers/staging/isdn/Makefile
+++ b/drivers/staging/isdn/Makefile
@@ -7,3 +7,4 @@ obj-$(CONFIG_ISDN_CAPI) += capi/
 obj-$(CONFIG_CAPI_AVM) += avm/
 obj-$(CONFIG_HYSDN) += hysdn/
 obj-$(CONFIG_ISDN_DRV_GIGASET) += gigaset/
+obj-$(CONFIG_BT_CMTP) += cmtp/
diff --git a/net/bluetooth/cmtp/Kconfig b/drivers/staging/isdn/cmtp/Kconfig
similarity index 88%
rename from net/bluetooth/cmtp/Kconfig
rename to drivers/staging/isdn/cmtp/Kconfig
index 939da0fbdd88..1772ca952720 100644
--- a/net/bluetooth/cmtp/Kconfig
+++ b/drivers/staging/isdn/cmtp/Kconfig
@@ -1,6 +1,6 @@
 config BT_CMTP
  tristate "CMTP protocol support"
- depends on BT_BREDR && ISDN_CAPI
+ depends on BT && BT_BREDR && ISDN_CAPI
  help
    CMTP (CAPI Message Transport Protocol) is a transport layer
    for CAPI messages.  CMTP is required for the Bluetooth Common
diff --git a/net/bluetooth/cmtp/Makefile b/drivers/staging/isdn/cmtp/Makefile
similarity index 59%
rename from net/bluetooth/cmtp/Makefile
rename to drivers/staging/isdn/cmtp/Makefile
index 890a9a5a6861..23258b46753c 100644
--- a/net/bluetooth/cmtp/Makefile
+++ b/drivers/staging/isdn/cmtp/Makefile
@@ -5,3 +5,5 @@
 obj-$(CONFIG_BT_CMTP) += cmtp.o

 cmtp-objs := core.o sock.o capi.o
+
+ccflags-y += -I$(srctree)/$(src)/../include -I$(srctree)/$(src)/../include/uapi
diff --git a/net/bluetooth/cmtp/capi.c b/drivers/staging/isdn/cmtp/capi.c
similarity index 100%
rename from net/bluetooth/cmtp/capi.c
rename to drivers/staging/isdn/cmtp/capi.c
diff --git a/net/bluetooth/cmtp/cmtp.h b/drivers/staging/isdn/cmtp/cmtp.h
similarity index 100%
rename from net/bluetooth/cmtp/cmtp.h
rename to drivers/staging/isdn/cmtp/cmtp.h
diff --git a/net/bluetooth/cmtp/core.c b/drivers/staging/isdn/cmtp/core.c
similarity index 100%
rename from net/bluetooth/cmtp/core.c
rename to drivers/staging/isdn/cmtp/core.c
diff --git a/net/bluetooth/cmtp/sock.c b/drivers/staging/isdn/cmtp/sock.c
similarity index 100%
rename from net/bluetooth/cmtp/sock.c
rename to drivers/staging/isdn/cmtp/sock.c
diff --git a/net/bluetooth/Kconfig b/net/bluetooth/Kconfig
index db82a40875e8..f3bfd9ec5e32 100644
--- a/net/bluetooth/Kconfig
+++ b/net/bluetooth/Kconfig
@@ -55,8 +55,6 @@ source "net/bluetooth/rfcomm/Kconfig"

 source "net/bluetooth/bnep/Kconfig"

-source "net/bluetooth/cmtp/Kconfig"
-
 source "net/bluetooth/hidp/Kconfig"

 config BT_HS
diff --git a/net/bluetooth/Makefile b/net/bluetooth/Makefile
index fda41c0b4781..7fdd758f0395 100644
--- a/net/bluetooth/Makefile
+++ b/net/bluetooth/Makefile
@@ -6,7 +6,6 @@
 obj-$(CONFIG_BT) += bluetooth.o
 obj-$(CONFIG_BT_RFCOMM) += rfcomm/
 obj-$(CONFIG_BT_BNEP) += bnep/
-obj-$(CONFIG_BT_CMTP) += cmtp/
 obj-$(CONFIG_BT_HIDP) += hidp/
 obj-$(CONFIG_BT_6LOWPAN) += bluetooth_6lowpan.o

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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (12 preceding siblings ...)
  2019-04-24  7:56 ` Simon Horman
@ 2019-04-24  8:47 ` Paul Bolle
  2019-04-24 11:48   ` Arnd Bergmann
  2019-04-24 21:28 ` Christoph Biedl
  14 siblings, 1 reply; 34+ messages in thread
From: Paul Bolle @ 2019-04-24  8:47 UTC (permalink / raw)
  To: Arnd Bergmann, Karsten Keil, netdev
  Cc: isdn4linux, Holger Schurig, Tilman Schmidt, Al Viro, gigaset307x-common

Arnd Bergmann schreef op di 23-04-2019 om 17:11 [+0200]:
> When isdn4linux came up in the context of another patch series, I
> remembered that we had discussed removing it a while ago.
> 
> It turns out that the suggestion from Karsten Keil wa to remove I4L
> in 2018 after the last public ISDN networks are shut down. This has
> happened now (with a very small number of exceptions), so I guess it's
> time to try again.

The Dutch consumer grade (voice and data) ISDN network will be shut down on
September 1st of this year. I'm not sure what other networks there still are,
worldwide. Does someone know of an overview somewhere?

> We currently have three ISDN stacks in the kernel: the original
> isdn4linux, the newer CAPI, and finally mISDN stack.
> 
> As far as I can tell, anyone using ISDN with mainline kernel drivers in
> the past few years uses mISDN, and this is typically used for voice-only
> PBX installations that don't require a public network.
> 
> The older stacks support additional features for data networks, but those
> typically make no sense any more if there is no network to connect to.
> 
> My proposal for this time is to kill off isdn4linux entirely, as it seems
> to have been unusable for quite a while. This code has been abandoned
> for many years and it does get in the way of maintenance.

Fine with me. I haven't bothered testing gigaset's i4l code in ages.

> CAPI in turn is not quite as obsolete, but as I have been unable to find
> any users, I would suggest moving it to drivers/staging while we
> figure out if anyone is using it. If not, it can then be removed
> as well. If it turns out that there are users that are on 5.x kernels
> or need to update to them, we can decide to leave parts of it for
> longer, or move them back.

(Has any driver ever returned to drivers proper after exile into
drivers/staging?)

> If anyone is still using isdn4linux and CAPI with modern kernels, please
> speak up now.

I'll try to test gigaset's drivers (in CAPI mode) until 5.2 is released (end
of July/early August). Whether that will be under staging or not is
unimportant. I have only very little evidence of people actually using the
code. That is unsurprising: for data ISDN is now expensive and really slow.
About the only things actually usable are "git fetch" and the like. So that's
what I test.

>       Arnd
> 
> [1] https://patchwork.kernel.org/patch/8484861/#17900371
> 
> Arnd Bergmann (5):
>   isdn: gigaset: remove i4l support
>   isdn: remove hisax driver
>   isdn: remove isdn4linux
>   isdn: hdlc: move into mISDN
>   isdn: move capi drivers to staging

For some reason 5/5 didn't hit my INBOX.

Thanks,


Paul Bolle


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

* Re: [PATCH 1/5] isdn: gigaset: remove i4l support
  2019-04-23 15:11 ` [PATCH 1/5] isdn: gigaset: remove i4l support Arnd Bergmann
@ 2019-04-24  8:53   ` Paul Bolle
  2019-04-24 12:33     ` Arnd Bergmann
  0 siblings, 1 reply; 34+ messages in thread
From: Paul Bolle @ 2019-04-24  8:53 UTC (permalink / raw)
  To: Arnd Bergmann, Karsten Keil, netdev
  Cc: isdn4linux, Holger Schurig, Tilman Schmidt, Al Viro, gigaset307x-common

Arnd Bergmann schreef op di 23-04-2019 om 17:11 [+0200]:
> --- a/drivers/isdn/gigaset/Kconfig
> +++ b/drivers/isdn/gigaset/Kconfig
> @@ -1,6 +1,7 @@
>  menuconfig ISDN_DRV_GIGASET
>  	tristate "Siemens Gigaset support"
>  	depends on TTY
> +	depends on ISDN_CAPI
>  	select CRC_CCITT
>  	select BITREVERSE
>  	help
> @@ -17,27 +18,6 @@ menuconfig ISDN_DRV_GIGASET
>  
>  if ISDN_DRV_GIGASET
>  
> -config GIGASET_CAPI
> -	bool "Gigaset CAPI support"
> -	depends on ISDN_CAPI='y'||(ISDN_CAPI='m'&&ISDN_DRV_GIGASET='m')
> -	default 'y'
> -	help
> -	  Build the Gigaset driver as a CAPI 2.0 driver interfacing with
> -	  the Kernel CAPI subsystem. To use it with the old ISDN4Linux
> -	  subsystem you'll have to enable the capidrv glue driver.
> -	  (select ISDN_CAPI_CAPIDRV.)
> -	  Say N to build the old native ISDN4Linux variant.
> -	  If unsure, say Y.
> -
> -config GIGASET_I4L
> -	bool
> -	depends on ISDN_I4L='y'||(ISDN_I4L='m'&&ISDN_DRV_GIGASET='m')
> -	default !GIGASET_CAPI
> -
> -config GIGASET_DUMMYLL
> -	bool
> -	default !GIGASET_CAPI&&!GIGASET_I4L
> -

The dummyll code allows people using gigaset hardware for voice only to fiddle
with its settings, retrieve call logs, etc. So in theory dropping i4l support
doesn't require dropping dummyll support.

>  config GIGASET_BASE
>  	tristate "Gigaset base station support"
>  	depends on USB

Thanks,


Paul Bolle


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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-24  8:14   ` Arnd Bergmann
@ 2019-04-24  9:15     ` Simon Horman
  0 siblings, 0 replies; 34+ messages in thread
From: Simon Horman @ 2019-04-24  9:15 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Karsten Keil, Networking, isdn4linux, Paul Bolle, Holger Schurig,
	Tilman Schmidt, Al Viro, gigaset307x-common

On Wed, Apr 24, 2019 at 10:14:55AM +0200, Arnd Bergmann wrote:
> On Wed, Apr 24, 2019 at 9:56 AM Simon Horman <horms@verge.net.au> wrote:
> >
> > Hi Arnd,
> >
> > On Tue, Apr 23, 2019 at 05:11:32PM +0200, Arnd Bergmann wrote:
> > > When isdn4linux came up in the context of another patch series, I
> > > remembered that we had discussed removing it a while ago.
> > >
> > > It turns out that the suggestion from Karsten Keil wa to remove I4L
> > > in 2018 after the last public ISDN networks are shut down. This has
> > > happened now (with a very small number of exceptions), so I guess it's
> > > time to try again.
> > >
> > > We currently have three ISDN stacks in the kernel: the original
> > > isdn4linux, the newer CAPI, and finally mISDN stack.
> > >
> > > As far as I can tell, anyone using ISDN with mainline kernel drivers in
> > > the past few years uses mISDN, and this is typically used for voice-only
> > > PBX installations that don't require a public network.
> > >
> > > The older stacks support additional features for data networks, but those
> > > typically make no sense any more if there is no network to connect to.
> > >
> > > My proposal for this time is to kill off isdn4linux entirely, as it seems
> > > to have been unusable for quite a while. This code has been abandoned
> > > for many years and it does get in the way of maintenance.
> >
> > I think there is an editing error somewhere above. Perhaps it should read
> >
> > ... and it does not get anything in the way of maintenance.
> 
> This is certainly a true statement as well, but what I meant is that
> the presence of isdn4linux in the kernel is causing extra work whenever
> we want to do treewide changes. I'll rephrase to make that clearer.

Thanks Arnd, much appreciated.

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

* Re: [PATCH 5/5] isdn: move capi drivers to staging
  2019-04-23 15:11 ` [PATCH 5/5] isdn: move capi drivers to staging Arnd Bergmann
@ 2019-04-24  9:24   ` Thomas Jarosch
  2019-04-24 12:29     ` Arnd Bergmann
  0 siblings, 1 reply; 34+ messages in thread
From: Thomas Jarosch @ 2019-04-24  9:24 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Karsten Keil, netdev, Tilman Schmidt, Paul Bolle,
	gigaset307x-common, isdn4linux, Al Viro, Holger Schurig

Hello Arnd,

You wrote on Tue, Apr 23, 2019 at 05:11:43PM +0200:
> I tried to find any indication of whether the capi drivers are
> still in use, and have not found anything  from a long time ago.
> 
> With public ISDN networks almost completely shut down over the past 12
> months, there is very little you can actually do with this hardware. The
> main remaining use case would be to connect ISDN voice phones to an
> in-house installation with Asterisk or LCR, but anyone trying this in
> turn seems to be using either the mISDN driver stack, or out-of-tree
> drivers from the hardware vendors.
> 
> I may of course have missed something, so I would suggest moving
> these into drivers/staging/ just in case someone still uses one
> of the three remaining in-kernel drivers (avm, hysdn, gigaset).
> 
> If nobody complains, we can remove them entirely in six months,
> or otherwise move the core code and any drivers that are still
> needed back into drivers/isdn.

thanks for your isdn4linux cleanup work!

AFAIK the base capi drivers are still needed for mISDN, too.
I quickly checked a machine that uses mISDNcapid for receiving fax
and the modules "capi" and "kernelcapi" are loaded.

# lsmod |grep capi
capi                   10751  2
kernelcapi             33675  1 capi

# capiinfo
Number of Controllers : 1
Controller 1:
Manufacturer: mISDN
CAPI Version: 2.0
Manufacturer Version: 0.1
Serial Number: 0000001
BChannels: 2
Global Options: 0x00000001
   internal controller supported
B1 protocols support: 0x00000013
   64 kbit/s with HDLC framing
   64 kbit/s bit-transparent operation
   T.30 modem for fax group 3
B2 protocols support: 0x00000013
   ISO 7776 (X.75 SLP)
   Transparent
   T.30 for fax group 3
B3 protocols support: 0x00000031
   Transparent
   T.30 for fax group 3
   T.30 for fax group 3 with extensions

  0100
  0200
  01000000
  13000000
  13000000
  31000000
  00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000

Supplementary services support: 0x00000000


-> I think the CAPI layer is still needed, but Karsten knows best.


The ISDN network of Deutsche Telekom in Germany is still
*in the process* of being shut down, business customers that use
"direct inward dialing" (DID / "Anlagenanschluß") often still use ISDN.
For example we use it here at the office, but preparations for
a SIP migration are being done.

Vodafone Germany guarantees business customers to support ISDN until 2022.

Quite a few people use a SIP -> ISDN converter like the Fritz!Box or LANCOM 
routers to keep their fax machines running. It's a bit crazy, but people seem
to love it. We deal with this on a weekly basis to support
our customers during the migration period.

Intra2net is currently in the process of upgrading to kernel 4.19.x
and Karsten recently did all the necessary adaptions for mISDN.
So the ISDN code is used with modern (LTS) kernels ^^

Best regards,
Thomas Jarosch

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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-24  8:42   ` Arnd Bergmann
@ 2019-04-24 10:24     ` Marcel Holtmann
  2019-04-24 12:59       ` Arnd Bergmann
  0 siblings, 1 reply; 34+ messages in thread
From: Marcel Holtmann @ 2019-04-24 10:24 UTC (permalink / raw)
  To: Arnd Bergmann, Greg KH, Linus Torvalds
  Cc: David S. Miller, Karsten Keil, Networking, isdn4linux,
	Paul Bolle, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Johan Hedberg, Bluez mailing list

Hi Arnd,

>>> When isdn4linux came up in the context of another patch series, I
>>> remembered that we had discussed removing it a while ago.
>> 
>> This seems long overdue to me.
>> 
>> Could you please respin against net-next and I'll just apply this?
> 
> Ok. I'll send a pull request then, which should make it easier to deal with
> the file removals, as I'm never sure whether 'git format-patch -D' patches
> make it across the list correctly, at least I had problems applying them
> in the past.
> 
> I added a few fixups as in the diff below in the meantime, to deal
> with build regressions from the last patch. In particular, the BT_CMTP
> (CIP) code also needs to be moved into staging along with the CAPI
> core. From what I can find, this was originally used for dial-up
> internet connections with 'Bluefritz' ISDN hardware, but it stopped
> working many years ago and is no longer useful with after the
> public network shutdown either.
> 
>     Arnd
> 
> 
> diff --git a/drivers/staging/isdn/Kconfig b/drivers/staging/isdn/Kconfig
> index 77e1b80af716..29d13fcd9e2b 100644
> --- a/drivers/staging/isdn/Kconfig
> +++ b/drivers/staging/isdn/Kconfig
> @@ -1,5 +1,6 @@
> menuconfig ISDN_CAPI
>  tristate "CAPI 2.0 subsystem"
> + depends on NET && NETDEVICES
>  help
>    This provides CAPI (the Common ISDN Application Programming
>    Interface) Version 2.0, a standard making it easy for programs to
> @@ -23,6 +24,7 @@ source "drivers/staging/isdn/gigaset/Kconfig"
> 
> source "drivers/staging/isdn/hysdn/Kconfig"
> 
> +source "drivers/staging/isdn/cmtp/Kconfig"
> 
> endif # ISDN_CAPI

NAK.

I do not care about isdn4linux, but this is a purely CAPI based driver. So removing (or moving to staging) CAPI support seems rather premature.

Maybe someone would have started talking to us before trying to move this into staging. It is a maintained driver. That it is rather simple and hasn’t seen patches in a long time, doesn’t mean it is not maintained and staging material. I see no reason to tell any user to enable staging tree to get CMTP support.

Regards

Marcel


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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-24  8:47 ` Paul Bolle
@ 2019-04-24 11:48   ` Arnd Bergmann
  0 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-24 11:48 UTC (permalink / raw)
  To: Paul Bolle
  Cc: Karsten Keil, Networking, isdn4linux, Holger Schurig,
	Tilman Schmidt, Al Viro, gigaset307x-common

On Wed, Apr 24, 2019 at 10:48 AM Paul Bolle <pebolle@tiscali.nl> wrote:
>
> Arnd Bergmann schreef op di 23-04-2019 om 17:11 [+0200]:
> > When isdn4linux came up in the context of another patch series, I
> > remembered that we had discussed removing it a while ago.
> >
> > It turns out that the suggestion from Karsten Keil wa to remove I4L
> > in 2018 after the last public ISDN networks are shut down. This has
> > happened now (with a very small number of exceptions), so I guess it's
> > time to try again.
>
> The Dutch consumer grade (voice and data) ISDN network will be shut down on
> September 1st of this year. I'm not sure what other networks there still are,
> worldwide. Does someone know of an overview somewhere?

I did some research when I created the series but could not find a
definite list. All provides that I /could/ find seem to list the end-of-life
date as either 2018 or 2019. Deutsche Telekom was by far the biggest
provider and tried to finally shut it down in 2018, but apparently there
are still a small number of households that are fighting the change
to IP-only connections.

[side rant: I do understand why -- when my parents were forced to
change, their DSL speed dropped from barely usable (1024kb/s)
to completely useless (256kb/s), and Deutsche Telekom refused
to let them use an LTE home connection instead even though that is
offered to half their neighbors in the same village and works fine
in their house. They now have to pay for a DSL connection they
can't use and an expensive handset LTE contract that is capped at
10GB per month]

In Germany, Vodafone still offers physical ISDN lines until 2022,
but only for business customers, and they try to get them to
switch as well.

> > CAPI in turn is not quite as obsolete, but as I have been unable to find
> > any users, I would suggest moving it to drivers/staging while we
> > figure out if anyone is using it. If not, it can then be removed
> > as well. If it turns out that there are users that are on 5.x kernels
> > or need to update to them, we can decide to leave parts of it for
> > longer, or move them back.
>
> (Has any driver ever returned to drivers proper after exile into
> drivers/staging?)

Greg would know. I assume not, but that would be just because
everyone who moved drivers into staging was guessing correctly
that there were actually no users.

> > If anyone is still using isdn4linux and CAPI with modern kernels, please
> > speak up now.
>
> I'll try to test gigaset's drivers (in CAPI mode) until 5.2 is released (end
> of July/early August). Whether that will be under staging or not is
> unimportant. I have only very little evidence of people actually using the
> code. That is unsurprising: for data ISDN is now expensive and really slow.
> About the only things actually usable are "git fetch" and the like. So that's
> what I test.

Sounds good, thanks!

> > [1] https://patchwork.kernel.org/patch/8484861/#17900371
> >
> > Arnd Bergmann (5):
> >   isdn: gigaset: remove i4l support
> >   isdn: remove hisax driver
> >   isdn: remove isdn4linux
> >   isdn: hdlc: move into mISDN
> >   isdn: move capi drivers to staging
>
> For some reason 5/5 didn't hit my INBOX.

I saw that some mails got rejected by your mail server.
https://lore.kernel.org/netdev/20190423151143.464992-12-arnd@arndb.de/
has the full mail.

        arnd

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

* Re: [PATCH 5/5] isdn: move capi drivers to staging
  2019-04-24  9:24   ` Thomas Jarosch
@ 2019-04-24 12:29     ` Arnd Bergmann
  2019-04-24 13:06       ` Thomas Jarosch
  0 siblings, 1 reply; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-24 12:29 UTC (permalink / raw)
  To: Thomas Jarosch
  Cc: Karsten Keil, Networking, Tilman Schmidt, Paul Bolle,
	gigaset307x-common, isdn4linux, Al Viro, Holger Schurig

On Wed, Apr 24, 2019 at 11:24 AM Thomas Jarosch
<thomas.jarosch@intra2net.com> wrote:
> You wrote on Tue, Apr 23, 2019 at 05:11:43PM +0200:
> > I tried to find any indication of whether the capi drivers are
> > still in use, and have not found anything  from a long time ago.
> >
> > With public ISDN networks almost completely shut down over the past 12
> > months, there is very little you can actually do with this hardware. The
> > main remaining use case would be to connect ISDN voice phones to an
> > in-house installation with Asterisk or LCR, but anyone trying this in
> > turn seems to be using either the mISDN driver stack, or out-of-tree
> > drivers from the hardware vendors.
> >
> > I may of course have missed something, so I would suggest moving
> > these into drivers/staging/ just in case someone still uses one
> > of the three remaining in-kernel drivers (avm, hysdn, gigaset).
> >
> > If nobody complains, we can remove them entirely in six months,
> > or otherwise move the core code and any drivers that are still
> > needed back into drivers/isdn.
>
> thanks for your isdn4linux cleanup work!
>
> AFAIK the base capi drivers are still needed for mISDN, too.
> I quickly checked a machine that uses mISDNcapid for receiving fax
> and the modules "capi" and "kernelcapi" are loaded.

Ok, interesting. My understanding was that mISDN CAPI support
was done purely in user space, on top of the mISDN interface.

I don't see any interfaction between the two in the kernel code,
but if the capi module is required for mISDN, we clearly have to
keep it. We could still move the avm/gigaset/hysdn/cmtp drivers
to staging though, if there are no users for those.

> # lsmod |grep capi
> capi                   10751  2
> kernelcapi             33675  1 capi
>
> # capiinfo
> Number of Controllers : 1
> Controller 1:
> Manufacturer: mISDN
> CAPI Version: 2.0
> Manufacturer Version: 0.1
> Serial Number: 0000001
> BChannels: 2
> Global Options: 0x00000001
>    internal controller supported
> B1 protocols support: 0x00000013
>    64 kbit/s with HDLC framing
>    64 kbit/s bit-transparent operation
>    T.30 modem for fax group 3
> B2 protocols support: 0x00000013
>    ISO 7776 (X.75 SLP)
>    Transparent
>    T.30 for fax group 3
> B3 protocols support: 0x00000031
>    Transparent
>    T.30 for fax group 3
>    T.30 for fax group 3 with extensions
>
>   0100
>   0200
>   01000000
>   13000000
>   13000000
>   31000000
>   00000000 00000000 00000000 00000000 00000000 00000000
>   00000000 00000000 00000000 00000000 00000000
>
> Supplementary services support: 0x00000000
>
>
> -> I think the CAPI layer is still needed, but Karsten knows best.
>
>
> The ISDN network of Deutsche Telekom in Germany is still
> *in the process* of being shut down, business customers that use
> "direct inward dialing" (DID / "Anlagenanschluß") often still use ISDN.
> For example we use it here at the office, but preparations for
> a SIP migration are being done.

Right, this is what I'm trying to find out here. I realize that there
are (very few) remaining users of ISDN voice services, but this only
matters if someone uses them

1. with a modern Linux kernel, and planning to upgrade beyond linux-5.3
2. with a device driver that ships with the kernel
3. using the CAPI subsystem

I suspect that all three of the above are true in isolation, but onless
at least one person needs all three combined, that doesn't stop us
from staging them out.

> Vodafone Germany guarantees business customers to support ISDN until 2022.
>
> Quite a few people use a SIP -> ISDN converter like the Fritz!Box or LANCOM
> routers to keep their fax machines running. It's a bit crazy, but people seem
> to love it. We deal with this on a weekly basis to support
> our customers during the migration period.

This is certainly fine as well, as long as neither the router nor the
fax machine depend on the CAPI drivers remaining in future Linux
kernels. My understanding is that Fritz!Box routers are usually
on ancient kernels and do not use the mainline driver stack for ISDN,
so that's fine. I don't know about LANCOM, but looking at their
firmware images indicates that they are using NetBSD and are not
affected by Linux kernel changes either.

That leaves the question of whether there is anyone rolling their
own routers and/or fax machines based on future kernels with the
avm/gigaset/hysdn/cmtp CAPI drivers, and which drivers in particular
that would be.

> Intra2net is currently in the process of upgrading to kernel 4.19.x
> and Karsten recently did all the necessary adaptions for mISDN.
> So the ISDN code is used with modern (LTS) kernels ^^

Ok. If you are on 4.19 (or moving to that now), I would assume that
you probably upgrade to a future kernel later. Even if you don't
plan to, it's the safe bet.

      Arnd

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

* Re: [PATCH 1/5] isdn: gigaset: remove i4l support
  2019-04-24  8:53   ` Paul Bolle
@ 2019-04-24 12:33     ` Arnd Bergmann
  0 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-24 12:33 UTC (permalink / raw)
  To: Paul Bolle
  Cc: Karsten Keil, Networking, isdn4linux, Holger Schurig,
	Tilman Schmidt, Al Viro, gigaset307x-common

On Wed, Apr 24, 2019 at 10:53 AM Paul Bolle <pebolle@tiscali.nl> wrote:
>
> Arnd Bergmann schreef op di 23-04-2019 om 17:11 [+0200]:
> > --- a/drivers/isdn/gigaset/Kconfig
> > +++ b/drivers/isdn/gigaset/Kconfig
> > @@ -1,6 +1,7 @@
> >  menuconfig ISDN_DRV_GIGASET
> >       tristate "Siemens Gigaset support"
> >       depends on TTY
> > +     depends on ISDN_CAPI
> >       select CRC_CCITT
> >       select BITREVERSE
> >       help
> > @@ -17,27 +18,6 @@ menuconfig ISDN_DRV_GIGASET
> >
> >  if ISDN_DRV_GIGASET
> >
> > -config GIGASET_CAPI
> > -     bool "Gigaset CAPI support"
> > -     depends on ISDN_CAPI='y'||(ISDN_CAPI='m'&&ISDN_DRV_GIGASET='m')
> > -     default 'y'
> > -     help
> > -       Build the Gigaset driver as a CAPI 2.0 driver interfacing with
> > -       the Kernel CAPI subsystem. To use it with the old ISDN4Linux
> > -       subsystem you'll have to enable the capidrv glue driver.
> > -       (select ISDN_CAPI_CAPIDRV.)
> > -       Say N to build the old native ISDN4Linux variant.
> > -       If unsure, say Y.
> > -
> > -config GIGASET_I4L
> > -     bool
> > -     depends on ISDN_I4L='y'||(ISDN_I4L='m'&&ISDN_DRV_GIGASET='m')
> > -     default !GIGASET_CAPI
> > -
> > -config GIGASET_DUMMYLL
> > -     bool
> > -     default !GIGASET_CAPI&&!GIGASET_I4L
> > -
>
> The dummyll code allows people using gigaset hardware for voice only to fiddle
> with its settings, retrieve call logs, etc. So in theory dropping i4l support
> doesn't require dropping dummyll support.

Ok, I'll rework that part, thanks for taking a look!

      Arnd

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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-24 10:24     ` Marcel Holtmann
@ 2019-04-24 12:59       ` Arnd Bergmann
  2019-04-24 14:30         ` Marcel Holtmann
  0 siblings, 1 reply; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-24 12:59 UTC (permalink / raw)
  To: Marcel Holtmann
  Cc: Greg KH, Linus Torvalds, David S. Miller, Karsten Keil,
	Networking, isdn4linux, Paul Bolle, Holger Schurig,
	Tilman Schmidt, Al Viro, gigaset307x-common, Johan Hedberg,
	Bluez mailing list

On Wed, Apr 24, 2019 at 12:24 PM Marcel Holtmann <marcel@holtmann.org> wrote:
> >>> When isdn4linux came up in the context of another patch series, I
> >>> remembered that we had discussed removing it a while ago.
>
> NAK.
>
> I do not care about isdn4linux, but this is a purely CAPI based driver. So removing (or moving to staging)
> CAPI support seems rather premature.
>
> Maybe someone would have started talking to us before trying to move this into staging. It is a
> maintained driver. That it is rather simple and hasn’t seen patches in a long time, doesn’t mean
> it is not maintained and staging material. I see no reason to tell any user to enable staging tree
> to get CMTP support.

I can definitely leave out the last patch from the series if we know
that there are
still users on CMTP. I searched around for a bit but could not find
any indication
what this is still used for, if anything.

What I found were a couple of references of the driver no longer working
about 10 years ago:

https://wiki.ubuntuusers.de/Archiv/Bluetooth/BlueFritz%21/
https://www.opensuse-forum.de/thread/2776-erledigt-suse-11-2-und-bluefritz/

Is anyone using cmtp for voice or fax services? The use cases from before 2009
that I could find were usually dial-up networking, but that seems pointless now
if the only way to get an ISDN connection is to have it routed over
the internet.

What am I missing?

     Arnd

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

* Re: [PATCH 5/5] isdn: move capi drivers to staging
  2019-04-24 12:29     ` Arnd Bergmann
@ 2019-04-24 13:06       ` Thomas Jarosch
  2019-04-25 11:24         ` Arnd Bergmann
  0 siblings, 1 reply; 34+ messages in thread
From: Thomas Jarosch @ 2019-04-24 13:06 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Karsten Keil, Networking, Tilman Schmidt, Paul Bolle,
	gigaset307x-common, isdn4linux, Al Viro, Holger Schurig

Hi Arnd,

> Ok, interesting. My understanding was that mISDN CAPI support
> was done purely in user space, on top of the mISDN interface.
>
> I don't see any interfaction between the two in the kernel code,
> but if the capi module is required for mISDN, we clearly have to
> keep it. We could still move the avm/gigaset/hysdn/cmtp drivers
> to staging though, if there are no users for those.

AVM Fritz!PCI cards are supported by the mISDN subsystem anyway,
the new driver is "avmfritz" and used by us in production.

> Right, this is what I'm trying to find out here. I realize that there
> are (very few) remaining users of ISDN voice services, but this only
> matters if someone uses them
> 
> 1. with a modern Linux kernel, and planning to upgrade beyond linux-5.3
> 2. with a device driver that ships with the kernel
> 3. using the CAPI subsystem
> 
> I suspect that all three of the above are true in isolation, but onless
> at least one person needs all three combined, that doesn't stop us
> from staging them out.

1. + 3. applies to us. The mISDN drivers are based on the kernel ones,
but maintained in an extra git tree on top of the kernel. The situation
is not ideal but that's what it currently is. git repo:
https://github.com/ISDN4Linux/mISDN

> That leaves the question of whether there is anyone rolling their
> own routers and/or fax machines based on future kernels with the
> avm/gigaset/hysdn/cmtp CAPI drivers, and which drivers in particular
> that would be.

I would guess that isdn4linux is mostly dead and the drivers
can be moved to staging. I didn't encounter cmtp (ISDN over Bluetooth)
in real life yet.

Intra2net uses mISDN v2 only and software fax support in mISDNcapid was 
developed because of us, so I guess we are the main user, too.

[funny side note: I use a 4 port Eicon diva card at home for my SIP
-> ISDN gateway. The eicon driver just got removed, too, but it still works
fine on Centos 7.x 3.10 kernels. Though this is an exotic use case and I would not
NAK the removal of the driver since the kernel maintenance costs
don't justify it. If it stops getting supported, I'll either set up
something based on mISDNv2 + LCR or get a used Fritz!Box for this task.]

> > Intra2net is currently in the process of upgrading to kernel 4.19.x
> > and Karsten recently did all the necessary adaptions for mISDN.
> > So the ISDN code is used with modern (LTS) kernels ^^
> 
> Ok. If you are on 4.19 (or moving to that now), I would assume that
> you probably upgrade to a future kernel later. Even if you don't
> plan to, it's the safe bet.

Correct. Intra2net usually moves to LTS kernels and skips a few versions since 
the migration work takes a few months to verify everything still works. We have 
an "avocado"[1] automated test framework for the whole distribution but there's 
always some userspace API compatibility issue, a small patch needed here or a 
crash there. For example my colleague tries to figure out right now why the 
Microsoft Hyper-V network driver hangs on module load with kernel 4.19.35
while downgrading to the previous kernel works instantly.
Sounds like git bisect "fun" for her...

[1] https://avocado-framework.github.io/
    https://github.com/intra2net/avocado-i2n


Best regards,
Thomas Jarosch

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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-24 12:59       ` Arnd Bergmann
@ 2019-04-24 14:30         ` Marcel Holtmann
  2019-04-25 11:08           ` Arnd Bergmann
  0 siblings, 1 reply; 34+ messages in thread
From: Marcel Holtmann @ 2019-04-24 14:30 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Greg KH, Linus Torvalds, David S. Miller, Karsten Keil,
	Networking, isdn4linux, Paul Bolle, Holger Schurig,
	Tilman Schmidt, Al Viro, gigaset307x-common, Johan Hedberg,
	Bluez mailing list

Hi Arnd,

>>>>> When isdn4linux came up in the context of another patch series, I
>>>>> remembered that we had discussed removing it a while ago.
>> 
>> NAK.
>> 
>> I do not care about isdn4linux, but this is a purely CAPI based driver. So removing (or moving to staging)
>> CAPI support seems rather premature.
>> 
>> Maybe someone would have started talking to us before trying to move this into staging. It is a
>> maintained driver. That it is rather simple and hasn’t seen patches in a long time, doesn’t mean
>> it is not maintained and staging material. I see no reason to tell any user to enable staging tree
>> to get CMTP support.
> 
> I can definitely leave out the last patch from the series if we know
> that there are
> still users on CMTP. I searched around for a bit but could not find
> any indication
> what this is still used for, if anything.

I would prefer if we leave CAPI support and with that CMTP mainstream and not move that to staging. For isdn4linux, I have no objections to move that to staging since mISDN was suppose to replace it anyway.

> What I found were a couple of references of the driver no longer working
> about 10 years ago:
> 
> https://wiki.ubuntuusers.de/Archiv/Bluetooth/BlueFritz%21/
> https://www.opensuse-forum.de/thread/2776-erledigt-suse-11-2-und-bluefritz/
> 
> Is anyone using cmtp for voice or fax services? The use cases from before 2009
> that I could find were usually dial-up networking, but that seems pointless now
> if the only way to get an ISDN connection is to have it routed over
> the internet.

I still have the hardware and last time I checked it worked just fine. However you need to set up a proper pairing with the hardware. However that has nothing to do with CMTP since that is just a CAPI message transport protocol.

You can use it for voice and fax service as long as you have the right codecs in place. At the end of the day CAPI is an API for ISDN. And CMTP just being a transport, all ISDN services are possible given the right software / application.

Regards

Marcel


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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
                   ` (13 preceding siblings ...)
  2019-04-24  8:47 ` Paul Bolle
@ 2019-04-24 21:28 ` Christoph Biedl
  14 siblings, 0 replies; 34+ messages in thread
From: Christoph Biedl @ 2019-04-24 21:28 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Karsten Keil, netdev, Tilman Schmidt, Paul Bolle,
	gigaset307x-common, isdn4linux, Al Viro, Holger Schurig

Arnd Bergmann wrote...

> If anyone is still using isdn4linux and CAPI with modern kernels, please
> speak up now.

Yeah, although I probably don't have much in defense. I am still using
it, mostly for isdnlog since I never got mISDN to work. I even wrote
the missing sysfs support for i4l some seven years but never had to guts
to submit it, mostly since it's not the best code and I never tested the
tty part of it. Some many ideas, so many plans, so little time.

But I do have to admit the great times of ISDN are in the past and will
not come back.

    Christoph, also happens to be maintainer for the i4l userland in Debian

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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-24 14:30         ` Marcel Holtmann
@ 2019-04-25 11:08           ` Arnd Bergmann
  2019-04-25 11:21             ` Marcel Holtmann
  2019-04-25 17:23             ` Paul Bolle
  0 siblings, 2 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-25 11:08 UTC (permalink / raw)
  To: Marcel Holtmann
  Cc: Greg KH, Linus Torvalds, David S. Miller, Karsten Keil,
	Networking, isdn4linux, Paul Bolle, Holger Schurig,
	Tilman Schmidt, Al Viro, gigaset307x-common, Johan Hedberg,
	Bluez mailing list

On Wed, Apr 24, 2019 at 4:30 PM Marcel Holtmann <marcel@holtmann.org> wrote:
>
> Hi Arnd,
>
> >>>>> When isdn4linux came up in the context of another patch series, I
> >>>>> remembered that we had discussed removing it a while ago.
> >>
> >> NAK.
> >>
> >> I do not care about isdn4linux, but this is a purely CAPI based driver. So removing (or moving to staging)
> >> CAPI support seems rather premature.
> >>
> >> Maybe someone would have started talking to us before trying to move this into staging. It is a
> >> maintained driver. That it is rather simple and hasn’t seen patches in a long time, doesn’t mean
> >> it is not maintained and staging material. I see no reason to tell any user to enable staging tree
> >> to get CMTP support.
> >
> > I can definitely leave out the last patch from the series if we know
> > that there are
> > still users on CMTP. I searched around for a bit but could not find
> > any indication
> > what this is still used for, if anything.
>
> I would prefer if we leave CAPI support and with that CMTP mainstream and not move
> that to staging. For isdn4linux, I have no objections to move that to staging since
> mISDN was suppose to replace it anyway.

Sure, I can rework the patch to leave the CAPI subsystem and only move the
other three drivers (avm, hysdn, gigaset) into staging to see if
anyone uses them.

> > What I found were a couple of references of the driver no longer working
> > about 10 years ago:
> >
> > https://wiki.ubuntuusers.de/Archiv/Bluetooth/BlueFritz%21/
> > https://www.opensuse-forum.de/thread/2776-erledigt-suse-11-2-und-bluefritz/
> >
> > Is anyone using cmtp for voice or fax services? The use cases from before 2009
> > that I could find were usually dial-up networking, but that seems pointless now
> > if the only way to get an ISDN connection is to have it routed over
> > the internet.
>
> I still have the hardware and last time I checked it worked just fine. However
> you need to set up a proper pairing with the hardware. However that has nothing
> to do with CMTP since that is just a CAPI message transport protocol.
>
> You can use it for voice and fax service as long as you have the right codecs in
> place. At the end of the day CAPI is an API for ISDN. And CMTP just being a
> transport, all ISDN services are possible given the right software / application.

That does not answer my question. It's clear that you can do all those things
with CAPI and CMTP, but what I was trying to find out is whether anyone still
does.

The gigaset driver is similar here, you can use it for any kind of wireless ISDN
communication, but apparently there is little use for that without a physical
ISDN connection.

      Arnd

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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-25 11:08           ` Arnd Bergmann
@ 2019-04-25 11:21             ` Marcel Holtmann
  2019-04-25 17:23             ` Paul Bolle
  1 sibling, 0 replies; 34+ messages in thread
From: Marcel Holtmann @ 2019-04-25 11:21 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Greg KH, Linus Torvalds, David S. Miller, Karsten Keil,
	Networking, isdn4linux, Paul Bolle, Holger Schurig,
	Tilman Schmidt, Al Viro, gigaset307x-common, Johan Hedberg,
	Bluez mailing list

Hi Arnd,

>>>>>>> When isdn4linux came up in the context of another patch series, I
>>>>>>> remembered that we had discussed removing it a while ago.
>>>> 
>>>> NAK.
>>>> 
>>>> I do not care about isdn4linux, but this is a purely CAPI based driver. So removing (or moving to staging)
>>>> CAPI support seems rather premature.
>>>> 
>>>> Maybe someone would have started talking to us before trying to move this into staging. It is a
>>>> maintained driver. That it is rather simple and hasn’t seen patches in a long time, doesn’t mean
>>>> it is not maintained and staging material. I see no reason to tell any user to enable staging tree
>>>> to get CMTP support.
>>> 
>>> I can definitely leave out the last patch from the series if we know
>>> that there are
>>> still users on CMTP. I searched around for a bit but could not find
>>> any indication
>>> what this is still used for, if anything.
>> 
>> I would prefer if we leave CAPI support and with that CMTP mainstream and not move
>> that to staging. For isdn4linux, I have no objections to move that to staging since
>> mISDN was suppose to replace it anyway.
> 
> Sure, I can rework the patch to leave the CAPI subsystem and only move the
> other three drivers (avm, hysdn, gigaset) into staging to see if
> anyone uses them.

awesome. Thanks.

>>> What I found were a couple of references of the driver no longer working
>>> about 10 years ago:
>>> 
>>> https://wiki.ubuntuusers.de/Archiv/Bluetooth/BlueFritz%21/
>>> https://www.opensuse-forum.de/thread/2776-erledigt-suse-11-2-und-bluefritz/
>>> 
>>> Is anyone using cmtp for voice or fax services? The use cases from before 2009
>>> that I could find were usually dial-up networking, but that seems pointless now
>>> if the only way to get an ISDN connection is to have it routed over
>>> the internet.
>> 
>> I still have the hardware and last time I checked it worked just fine. However
>> you need to set up a proper pairing with the hardware. However that has nothing
>> to do with CMTP since that is just a CAPI message transport protocol.
>> 
>> You can use it for voice and fax service as long as you have the right codecs in
>> place. At the end of the day CAPI is an API for ISDN. And CMTP just being a
>> transport, all ISDN services are possible given the right software / application.
> 
> That does not answer my question. It's clear that you can do all those things
> with CAPI and CMTP, but what I was trying to find out is whether anyone still
> does.
> 
> The gigaset driver is similar here, you can use it for any kind of wireless ISDN
> communication, but apparently there is little use for that without a physical
> ISDN connection.

You need a ISDN line or a telephone system that speaks ISDN via S0 bus. Consumer ISDN lines are pretty much extinct in Germany due to the movement towards all IP based DSL lines. However there are S0 busses on the Fritz!Boxes and you can just hang the CMTP capable gateways on the S0 bus. At least that is how I have this at home. If you asked me for what other people are still doing, I have no idea.

Regards

Marcel


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

* Re: [PATCH 5/5] isdn: move capi drivers to staging
  2019-04-24 13:06       ` Thomas Jarosch
@ 2019-04-25 11:24         ` Arnd Bergmann
  2019-04-29  9:58           ` Thomas Jarosch
  0 siblings, 1 reply; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-25 11:24 UTC (permalink / raw)
  To: Thomas Jarosch
  Cc: Karsten Keil, Networking, Tilman Schmidt, Paul Bolle,
	gigaset307x-common, isdn4linux, Al Viro, Holger Schurig

On Wed, Apr 24, 2019 at 3:06 PM Thomas Jarosch
<thomas.jarosch@intra2net.com> wrote:
>
> Hi Arnd,
>
> > Ok, interesting. My understanding was that mISDN CAPI support
> > was done purely in user space, on top of the mISDN interface.
> >
> > I don't see any interfaction between the two in the kernel code,
> > but if the capi module is required for mISDN, we clearly have to
> > keep it. We could still move the avm/gigaset/hysdn/cmtp drivers
> > to staging though, if there are no users for those.
>
> AVM Fritz!PCI cards are supported by the mISDN subsystem anyway,
> the new driver is "avmfritz" and used by us in production.
>
> > Right, this is what I'm trying to find out here. I realize that there
> > are (very few) remaining users of ISDN voice services, but this only
> > matters if someone uses them
> >
> > 1. with a modern Linux kernel, and planning to upgrade beyond linux-5.3
> > 2. with a device driver that ships with the kernel
> > 3. using the CAPI subsystem
> >
> > I suspect that all three of the above are true in isolation, but onless
> > at least one person needs all three combined, that doesn't stop us
> > from staging them out.
>
> 1. + 3. applies to us. The mISDN drivers are based on the kernel ones,
> but maintained in an extra git tree on top of the kernel. The situation
> is not ideal but that's what it currently is. git repo:
> https://github.com/ISDN4Linux/mISDN

I'm still confused by this: You say here that you use the CAPI
subsystem from the mainline kernel (i.e. /dev/capi20 rather
than mISDNcapid), but this does not appear to interact at all with
mISDN, neither the in-kernel variant nor the one you link to.

> > That leaves the question of whether there is anyone rolling their
> > own routers and/or fax machines based on future kernels with the
> > avm/gigaset/hysdn/cmtp CAPI drivers, and which drivers in particular
> > that would be.
>
> I would guess that isdn4linux is mostly dead and the drivers
> can be moved to staging.

I'd still prefer to remove isdn4linux+hisax completely and
only take CAPI+avm/gigaset/hysdn into staging.
My original suggestion was to move all of it to staging, but if we
keep cmtp in the tree, then at least the CAPI core has to stay
as well.

> I didn't encounter cmtp (ISDN over Bluetooth) in real life yet.
> Intra2net uses mISDN v2 only and software fax support in mISDNcapid was
> developed because of us, so I guess we are the main user, too.

> [funny side note: I use a 4 port Eicon diva card at home for my SIP
> -> ISDN gateway. The eicon driver just got removed, too, but it still works
> fine on Centos 7.x 3.10 kernels. Though this is an exotic use case and I would not
> NAK the removal of the driver since the kernel maintenance costs
> don't justify it. If it stops getting supported, I'll either set up
> something based on mISDNv2 + LCR or get a used Fritz!Box for this task.]

There seems to also be a third-party driver for the Divas:
https://www.dialogic.com/downloads/diva/diva%20sr%20linux

I think this is what most others that still have such hardware use,
and has been the case for a while.

        Arnd

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

* Re: [PATCH 0/5] isdn: deprecate non-mISDN drivers
  2019-04-25 11:08           ` Arnd Bergmann
  2019-04-25 11:21             ` Marcel Holtmann
@ 2019-04-25 17:23             ` Paul Bolle
  1 sibling, 0 replies; 34+ messages in thread
From: Paul Bolle @ 2019-04-25 17:23 UTC (permalink / raw)
  To: Arnd Bergmann, Marcel Holtmann
  Cc: Greg KH, Linus Torvalds, David S. Miller, Karsten Keil,
	Networking, isdn4linux, Holger Schurig, Tilman Schmidt, Al Viro,
	gigaset307x-common, Johan Hedberg, Bluez mailing list

Arnd Bergmann schreef op do 25-04-2019 om 13:08 [+0200]:
> The gigaset driver is similar here, you can use it for any kind of wireless ISDN
> communication,

Nit: the wireless part is strictly DECT (for the M101 and M105 hardware).

> but apparently there is little use for that without a physical
> ISDN connection.

Probably.

The main point is that once my ISDN line is canceled it would be nice to know
whether someone still cares about these drivers. (Do note that for day to day
data traffic I definitely do not really on ISDN. I'm not _that_ crazy.) Your
suggestion to exile them into drivers/staging is about the only policy we have
for finding that out.

Thanks,


Paul Bolle


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

* Re: [PATCH 5/5] isdn: move capi drivers to staging
  2019-04-25 11:24         ` Arnd Bergmann
@ 2019-04-29  9:58           ` Thomas Jarosch
  2019-04-29 11:57             ` Arnd Bergmann
  0 siblings, 1 reply; 34+ messages in thread
From: Thomas Jarosch @ 2019-04-29  9:58 UTC (permalink / raw)
  To: Arnd Bergmann
  Cc: Karsten Keil, Networking, Tilman Schmidt, Paul Bolle,
	gigaset307x-common, isdn4linux, Al Viro, Holger Schurig

Hi Arnd,

You wrote on Thu, Apr 25, 2019 at 01:24:09PM +0200:
> > > Right, this is what I'm trying to find out here. I realize that there
> > > are (very few) remaining users of ISDN voice services, but this only
> > > matters if someone uses them
> > >
> > > 1. with a modern Linux kernel, and planning to upgrade beyond linux-5.3
> > > 2. with a device driver that ships with the kernel
> > > 3. using the CAPI subsystem
> > >
> > > I suspect that all three of the above are true in isolation, but onless
> > > at least one person needs all three combined, that doesn't stop us
> > > from staging them out.
> >
> > 1. + 3. applies to us. The mISDN drivers are based on the kernel ones,
> > but maintained in an extra git tree on top of the kernel. The situation
> > is not ideal but that's what it currently is. git repo:
> > https://github.com/ISDN4Linux/mISDN
> 
> I'm still confused by this: You say here that you use the CAPI
> subsystem from the mainline kernel (i.e. /dev/capi20 rather
> than mISDNcapid), but this does not appear to interact at all with
> mISDN, neither the in-kernel variant nor the one you link to.

my working theory was that a userspace capi application
talks to mISDNcapid via the kernel's CAPI layer as a proxy.

Karsten's original announcement mentioned
mISDN v2 CAPI support is userspace only:
https://isdn4linux.listserv.isdn4linux.narkive.com/bRkOUkZG/announcement-misdn-fax-capi-2-0-support


I did some preliminary research by removing the /dev/capi20 device node
and checked if "capiinfo" still works via strace -> it does.

# strace -e open,connect capiinfo
open("/usr/lib/libcapi20.so.3", O_RDONLY|O_CLOEXEC) = 3
open("/dev/shm/sem.CAPI20_shared_sem.v01000010", O_RDWR|O_NOFOLLOW) = 3
open("/dev/shm/CAPI20_shared_memory.v01000010", O_RDWR|O_CREAT|O_NOFOLLOW|O_CLOEXEC, 0666) = 3
open("/usr/lib/capi/lib_capi_mod_misdn.so.2", O_RDONLY|O_CLOEXEC) = 5
open("/usr/lib/capi/lib_capi_mod_std.so.2", O_RDONLY|O_CLOEXEC) = 5
open("/root/.capi20rc", O_RDONLY)       = -1 ENOENT (No such file or directory)
open("/etc/capi20.conf", O_RDONLY)      = 4
open("/dev/capi20", O_RDWR)             = -1 ENOENT (No such file or directory)
open("/dev/isdn/capi20", O_RDWR)        = -1 ENOENT (No such file or directory)
connect(4, {sa_family=AF_UNIX, sun_path="/var/run/mISDNcapid/sock"}, 110) = 0
Number of Controllers : 1
connect(5, {sa_family=AF_UNIX, sun_path="/var/run/mISDNcapid/sock"}, 110) = 0
Controller 1:
Manufacturer: mISDN
CAPI Version: 2.0
Manufacturer Version: 0.1
Serial Number: 0000001
..

The trick is the lib_capi_mod_misdn.so library.
It's a plugin for the CAPI tools to directly talk to mISDNcapid.

I will do more thorough research next week if the CAPI userspace stuff runs with 
 the kernel CAPI layer disabled. It could be that the userspace tools like 
"capiinit" check for the presence of the kernel CAPI interface but don't really 
need it. We'll find out.

Intra2net officially supports AVM b1 and c4 cards for fax but we didn't
encounter these cards for years in customer support and I'm also 
willing to officially cancel support for those.

-> it's good to move the drivers to staging.

Best regards,
Thomas

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

* Re: [PATCH 5/5] isdn: move capi drivers to staging
  2019-04-29  9:58           ` Thomas Jarosch
@ 2019-04-29 11:57             ` Arnd Bergmann
  0 siblings, 0 replies; 34+ messages in thread
From: Arnd Bergmann @ 2019-04-29 11:57 UTC (permalink / raw)
  To: Thomas Jarosch
  Cc: Karsten Keil, Networking, Tilman Schmidt, Paul Bolle,
	gigaset307x-common, isdn4linux, Al Viro, Holger Schurig

On Mon, Apr 29, 2019 at 11:59 AM Thomas Jarosch
<thomas.jarosch@intra2net.com> wrote:
> You wrote on Thu, Apr 25, 2019 at 01:24:09PM +0200:
> > I'm still confused by this: You say here that you use the CAPI
> > subsystem from the mainline kernel (i.e. /dev/capi20 rather
> > than mISDNcapid), but this does not appear to interact at all with
> > mISDN, neither the in-kernel variant nor the one you link to.
>
> my working theory was that a userspace capi application
> talks to mISDNcapid via the kernel's CAPI layer as a proxy.
>
> Karsten's original announcement mentioned
> mISDN v2 CAPI support is userspace only:
> https://isdn4linux.listserv.isdn4linux.narkive.com/bRkOUkZG/announcement-misdn-fax-capi-2-0-support
>
>
> I did some preliminary research by removing the /dev/capi20 device node
> and checked if "capiinfo" still works via strace -> it does.
>
> # strace -e open,connect capiinfo
> open("/usr/lib/libcapi20.so.3", O_RDONLY|O_CLOEXEC) = 3
> open("/dev/shm/sem.CAPI20_shared_sem.v01000010", O_RDWR|O_NOFOLLOW) = 3
> open("/dev/shm/CAPI20_shared_memory.v01000010", O_RDWR|O_CREAT|O_NOFOLLOW|O_CLOEXEC, 0666) = 3
> open("/usr/lib/capi/lib_capi_mod_misdn.so.2", O_RDONLY|O_CLOEXEC) = 5
> open("/usr/lib/capi/lib_capi_mod_std.so.2", O_RDONLY|O_CLOEXEC) = 5
> open("/root/.capi20rc", O_RDONLY)       = -1 ENOENT (No such file or directory)
> open("/etc/capi20.conf", O_RDONLY)      = 4
> open("/dev/capi20", O_RDWR)             = -1 ENOENT (No such file or directory)
> open("/dev/isdn/capi20", O_RDWR)        = -1 ENOENT (No such file or directory)
> connect(4, {sa_family=AF_UNIX, sun_path="/var/run/mISDNcapid/sock"}, 110) = 0
> Number of Controllers : 1
> connect(5, {sa_family=AF_UNIX, sun_path="/var/run/mISDNcapid/sock"}, 110) = 0
> Controller 1:
> Manufacturer: mISDN
> CAPI Version: 2.0
> Manufacturer Version: 0.1
> Serial Number: 0000001
> ..
>
> The trick is the lib_capi_mod_misdn.so library.
> It's a plugin for the CAPI tools to directly talk to mISDNcapid.

Ok, that's also what I guessed from taking a brief look at the
library: it just tries all possible backends to find hardware, which
will open /dev/capi20 if it exists, but it still continues without it.

> Intra2net officially supports AVM b1 and c4 cards for fax but we didn't
> encounter these cards for years in customer support and I'm also
> willing to officially cancel support for those.
>
> -> it's good to move the drivers to staging.

Ok, thanks a lot for researching this! Since you are currently moving
to 4.19 which still has CAPI, you also don't have to cancel support
for those quite yet, and we may also have yet another stable release
(5.3 or 5.4?) that you can upgrade to before it gets thrown out of
staging.

       Arnd

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

end of thread, other threads:[~2019-04-29 11:57 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-23 15:11 [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
2019-04-23 15:11 ` [PATCH 1/5] isdn: gigaset: remove i4l support Arnd Bergmann
2019-04-23 15:11 ` [PATCH 2/5] isdn: remove hisax driver Arnd Bergmann
2019-04-23 15:11 ` [PATCH 3/5] isdn: remove isdn4linux Arnd Bergmann
2019-04-23 15:11 ` [PATCH 4/5] isdn: hdlc: move into mISDN Arnd Bergmann
2019-04-23 15:11 ` [PATCH 5/5] isdn: move capi drivers to staging Arnd Bergmann
2019-04-23 15:11 ` [PATCH 0/5] isdn: deprecate non-mISDN drivers Arnd Bergmann
2019-04-23 15:11 ` [PATCH 1/5] isdn: gigaset: remove i4l support Arnd Bergmann
2019-04-24  8:53   ` Paul Bolle
2019-04-24 12:33     ` Arnd Bergmann
2019-04-23 15:11 ` [PATCH 2/5] isdn: remove hisax driver Arnd Bergmann
2019-04-23 15:11 ` [PATCH 3/5] isdn: remove isdn4linux Arnd Bergmann
2019-04-23 15:11 ` [PATCH 4/5] isdn: hdlc: move into mISDN Arnd Bergmann
2019-04-23 15:11 ` [PATCH 5/5] isdn: move capi drivers to staging Arnd Bergmann
2019-04-24  9:24   ` Thomas Jarosch
2019-04-24 12:29     ` Arnd Bergmann
2019-04-24 13:06       ` Thomas Jarosch
2019-04-25 11:24         ` Arnd Bergmann
2019-04-29  9:58           ` Thomas Jarosch
2019-04-29 11:57             ` Arnd Bergmann
2019-04-24  2:37 ` [PATCH 0/5] isdn: deprecate non-mISDN drivers David Miller
2019-04-24  8:42   ` Arnd Bergmann
2019-04-24 10:24     ` Marcel Holtmann
2019-04-24 12:59       ` Arnd Bergmann
2019-04-24 14:30         ` Marcel Holtmann
2019-04-25 11:08           ` Arnd Bergmann
2019-04-25 11:21             ` Marcel Holtmann
2019-04-25 17:23             ` Paul Bolle
2019-04-24  7:56 ` Simon Horman
2019-04-24  8:14   ` Arnd Bergmann
2019-04-24  9:15     ` Simon Horman
2019-04-24  8:47 ` Paul Bolle
2019-04-24 11:48   ` Arnd Bergmann
2019-04-24 21:28 ` Christoph Biedl

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).