dahdi: add "tools_rootdir" module parameter
* Passed to udev as DAHDI_TOOLS_ROOTDIR environment variable * Default is "/" * Deprecates the parameter initdir: - Defaults to $DAHDI_TOOLS_ROOTDIR/usr/share/dahdi - If specified: taken relative to $DAHDI_TOOLS_ROOTDIR - Setting both parameters explicitly is prohibited. Signed-off-by: Tzafrir Cohen <tzafrir.cohen@xorcom.com> Acked-by: Russ Meyerriecks <rmeyerriecks@digium.com>
This commit is contained in:
parent
1ab5723b85
commit
7b578b83b9
11
README
11
README
@ -534,10 +534,19 @@ DAHDI hardware. However if you have such systems, automatic
|
|||||||
registration can cause the order of spans to be unpredictable.
|
registration can cause the order of spans to be unpredictable.
|
||||||
The standard startup scripts use 'dahdi_registration on' instead of this.
|
The standard startup scripts use 'dahdi_registration on' instead of this.
|
||||||
|
|
||||||
|
==== tools_rootdir
|
||||||
|
(xpp)
|
||||||
|
|
||||||
|
Defaults to /. Passed (as the variable DAHDI_TOOLS_ROOTDIR) to generated
|
||||||
|
events (which can be used in udev hooks). Also serves as the base of
|
||||||
|
the variable DAHDI_INIT_DIR (by default: $DAHDI_TOOLS_DIR/usr/share/dahdi).
|
||||||
|
|
||||||
==== initdir
|
==== initdir
|
||||||
(xpp)
|
(xpp)
|
||||||
|
|
||||||
This is the directory containing the initialization scripts.
|
Deprecated. Setting both initdir and tools_rootdir will generate an error.
|
||||||
|
|
||||||
|
A directory under tools_rootdir containing the initialization scripts.
|
||||||
The default is /usr/share/dahdi .
|
The default is /usr/share/dahdi .
|
||||||
Setting this value could be useful if that location is inconvenient for you.
|
Setting this value could be useful if that location is inconvenient for you.
|
||||||
|
|
||||||
|
@ -32,8 +32,15 @@
|
|||||||
#include "dahdi-sysfs.h"
|
#include "dahdi-sysfs.h"
|
||||||
|
|
||||||
|
|
||||||
static char *initdir = "/usr/share/dahdi";
|
static char *initdir;
|
||||||
module_param(initdir, charp, 0644);
|
module_param(initdir, charp, 0444);
|
||||||
|
MODULE_PARM_DESC(initdir,
|
||||||
|
"deprecated, should use <tools_rootdir>/usr/share/dahdi");
|
||||||
|
|
||||||
|
static char *tools_rootdir;
|
||||||
|
module_param(tools_rootdir, charp, 0444);
|
||||||
|
MODULE_PARM_DESC(tools_rootdir,
|
||||||
|
"root directory of all tools paths (default /)");
|
||||||
|
|
||||||
static int span_match(struct device *dev, struct device_driver *driver)
|
static int span_match(struct device *dev, struct device_driver *driver)
|
||||||
{
|
{
|
||||||
@ -47,7 +54,9 @@ static inline struct dahdi_span *dev_to_span(struct device *dev)
|
|||||||
|
|
||||||
#define SPAN_VAR_BLOCK \
|
#define SPAN_VAR_BLOCK \
|
||||||
do { \
|
do { \
|
||||||
DAHDI_ADD_UEVENT_VAR("DAHDI_INIT_DIR=%s", initdir); \
|
DAHDI_ADD_UEVENT_VAR("DAHDI_TOOLS_ROOTDIR=%s", tools_rootdir); \
|
||||||
|
DAHDI_ADD_UEVENT_VAR("DAHDI_INIT_DIR=%s/%s", tools_rootdir, \
|
||||||
|
initdir); \
|
||||||
DAHDI_ADD_UEVENT_VAR("SPAN_NUM=%d", span->spanno); \
|
DAHDI_ADD_UEVENT_VAR("SPAN_NUM=%d", span->spanno); \
|
||||||
DAHDI_ADD_UEVENT_VAR("SPAN_NAME=%s", span->name); \
|
DAHDI_ADD_UEVENT_VAR("SPAN_NAME=%s", span->name); \
|
||||||
} while (0)
|
} while (0)
|
||||||
@ -650,6 +659,19 @@ int __init dahdi_sysfs_init(const struct file_operations *dahdi_fops)
|
|||||||
int res = 0;
|
int res = 0;
|
||||||
|
|
||||||
dahdi_dbg(DEVICES, "Registering DAHDI device bus\n");
|
dahdi_dbg(DEVICES, "Registering DAHDI device bus\n");
|
||||||
|
|
||||||
|
/* Handle dahdi-tools paths (for udev environment) */
|
||||||
|
if (tools_rootdir && initdir) {
|
||||||
|
dahdi_err("Cannot use tools-rootdir and initdir parameters simultaneously\n");
|
||||||
|
return -EINVAL;
|
||||||
|
}
|
||||||
|
if (initdir)
|
||||||
|
pr_notice("dahdi: initdir is depracated -- prefer using \"tools_rootdir\" parameter\n");
|
||||||
|
else
|
||||||
|
initdir = "/usr/share/dahdi";
|
||||||
|
if (!tools_rootdir)
|
||||||
|
tools_rootdir = "";
|
||||||
|
|
||||||
res = bus_register(&dahdi_device_bus);
|
res = bus_register(&dahdi_device_bus);
|
||||||
if (res)
|
if (res)
|
||||||
return res;
|
return res;
|
||||||
|
Loading…
Reference in New Issue
Block a user