dahdi-linux/drivers/dahdi
Shaun Ruffell a6824019fb dahdi: Expose dahdi devices in sysfs.
This exposes dahdi devices in sysfs and also exposes attributes that
will allow user space to control the registration order in spans. This
facilitates loading drivers out of order yet keeping consistent
span/channel numbering, which in turn will eventually allow the
blacklist for DAHDI drivers to be removed. The default behavior,
controlled with the auto_register module parameter on dahdi is to number
the spans / channels in order like is currently done. So this change
does not introduce any new behavior by default.

 * Writing (anything) to this attribute returns the span to its
   unassigned state
 * Fix dahdi_chan_unreg() echocan refcount
 * Add safeguard against duplicate unassignment to _dahdi_unregister_span()
 * Remove the span from device_node list, only in dahdi_unregister_device()
   and not in dahdi_unregister_span()
 * Free allocated span->span_device in span_sysfs_remove()
   [is it safe?, didn't cause problem so far...]

Signed-off-by: Shaun Ruffell <sruffell@digium.com>
Signed-off-by: Oron Peled <oron.peled@xorcom.com>
Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com>

dahdi: Add "hardware_id" dahdi_device attribute.

- The "hardware_id" does not change with device location (e.g: when a PCI
  card is moved from one slot to another).
- Not all devices have this attribute. It is legal for it to be NULL (that
  is the default for all low-level drivers that do not set it explicitly).
- When "hardware_id" is NULL, the sysfs attribute value is "\n"

Signed-off-by: Oron Peled <oron.peled@xorcom.com>
Acked-by: Shaun Ruffell <sruffell@digium.com>

git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@10275 a0bf4364-ded3-4de4-8d8a-66a801d63aff
2011-10-26 18:59:20 +00:00
..
datamods wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
firmware wcte12xp, wctdm24xxp: Update VPMOCT032 firmware to 1.11.0. 2011-08-30 20:58:06 +00:00
hpec dahdi_echocan_hpec: Update the HPEC wrapper to use the new name interface 2010-12-09 21:52:34 +00:00
oct612x oct612x: Increase the size of some of the instance variables. 2011-07-20 17:24:27 +00:00
voicebus dahdi: Register devices instead of individual spans. 2011-10-26 18:58:14 +00:00
vpmadt032_loader Update copyright on changed files since 2011-01-01. 2011-01-03 14:55:24 +00:00
wcb4xxp dahdi: Register devices instead of individual spans. 2011-10-26 18:58:14 +00:00
wct4xxp dahdi: Register devices instead of individual spans. 2011-10-26 18:58:14 +00:00
wctc4xxp dahdi: Move WARN_ON_ONCE from wctc4xxp driver to include/dahdi/kernel.h 2011-10-21 19:32:25 +00:00
wctdm24xxp dahdi: Register devices instead of individual spans. 2011-10-26 18:58:14 +00:00
wcte12xp dahdi: Expose dahdi devices in sysfs. 2011-10-26 18:59:20 +00:00
xpp dahdi: Expose dahdi devices in sysfs. 2011-10-26 18:59:20 +00:00
adt_lec.c wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
adt_lec.h wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
arith.h wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
biquad.h wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
dahdi_dummy.c 'dahdi_copy_string()' -> 'strlcpy()' 2011-01-03 18:26:29 +00:00
dahdi_dynamic_eth.c 'dahdi_copy_string()' -> 'strlcpy()' 2011-01-03 18:26:29 +00:00
dahdi_dynamic_ethmf.c 'dahdi_copy_string()' -> 'strlcpy()' 2011-01-03 18:26:29 +00:00
dahdi_dynamic_loc.c dahdi: Allow spans to advertise if they can provide any timing. 2011-01-03 18:26:08 +00:00
dahdi_dynamic.c dahdi: Register devices instead of individual spans. 2011-10-26 18:58:14 +00:00
dahdi_echocan_jpah.c dahdi-base, dahdi_echocan_*, wcb4xxp, wct4xxp, wctdm24xxp, wcte12xp, kernel: Allow name of EC factory to vary based on channel 2010-12-09 20:19:26 +00:00
dahdi_echocan_kb1.c dahdi-base, dahdi_echocan_*, wcb4xxp, wct4xxp, wctdm24xxp, wcte12xp, kernel: Allow name of EC factory to vary based on channel 2010-12-09 20:19:26 +00:00
dahdi_echocan_mg2.c dahdi-base, dahdi_echocan_*, wcb4xxp, wct4xxp, wctdm24xxp, wcte12xp, kernel: Allow name of EC factory to vary based on channel 2010-12-09 20:19:26 +00:00
dahdi_echocan_oslec.c dahdi-base, dahdi_echocan_*, wcb4xxp, wct4xxp, wctdm24xxp, wcte12xp, kernel: Allow name of EC factory to vary based on channel 2010-12-09 20:19:26 +00:00
dahdi_echocan_sec2.c dahdi-base, dahdi_echocan_*, wcb4xxp, wct4xxp, wctdm24xxp, wcte12xp, kernel: Allow name of EC factory to vary based on channel 2010-12-09 20:19:26 +00:00
dahdi_echocan_sec.c dahdi-base, dahdi_echocan_*, wcb4xxp, wct4xxp, wctdm24xxp, wcte12xp, kernel: Allow name of EC factory to vary based on channel 2010-12-09 20:19:26 +00:00
dahdi_transcode.c 'dahdi_copy_string()' -> 'strlcpy()' 2011-01-03 18:26:29 +00:00
dahdi-base.c dahdi: Expose dahdi devices in sysfs. 2011-10-26 18:59:20 +00:00
dahdi-sysfs.c dahdi: Expose dahdi devices in sysfs. 2011-10-26 18:59:20 +00:00
dahdi-version.c dahdi: Do not rebuild dahdi-base.c when only updating the version. 2011-02-28 14:19:09 +00:00
dahdi.h dahdi: Expose dahdi devices in sysfs. 2011-10-26 18:59:20 +00:00
ecdis.h wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
fir.h wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
fxo_modes.h wctdm24xxp, wctdm: Reduce memory used by fxo_modes array. 2011-04-04 16:26:00 +00:00
Kbuild dahdi: Do not rebuild dahdi-base.c when only updating the version. 2011-02-28 14:19:09 +00:00
Kconfig wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
Makefile wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
makefw.c wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
pciradio.c dahdi: Register devices instead of individual spans. 2011-10-26 18:58:14 +00:00
pciradio.rbt wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
proslic.h wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
tor2-hw.h "struct pci_device_id[]" -> "DEFINE_PCI_DEVICE_TABLE" 2011-01-03 18:26:24 +00:00
tor2.c dahdi: Register devices instead of individual spans. 2011-10-26 18:58:14 +00:00
tormenta2.rbt wct4xxp: Moving the transmit short detection behind debug module param. 2010-08-27 21:59:27 +00:00
wcfxo.c dahdi: Register devices instead of individual spans. 2011-10-26 18:58:14 +00:00
wct1xxp.c dahdi: Register devices instead of individual spans. 2011-10-26 18:58:14 +00:00
wctdm.c dahdi: Register devices instead of individual spans. 2011-10-26 18:58:14 +00:00
wcte11xp.c dahdi: Register devices instead of individual spans. 2011-10-26 18:58:14 +00:00