[Xenomai-git] Philippe Gerum : cobalt/rtdm: device: allow switching device class back to default
Module: xenomai-3 Branch: master Commit: 118db7bca9151b12fd737ee40ff3485109336eaf URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=118db7bca9151b12fd737ee40ff3485109336eaf Author: Philippe Gerum Date: Wed Nov 9 12:48:27 2016 +0100 cobalt/rtdm: device: allow switching device class back to default Passing NULL to rtdm_drv_set_sysclass() is now allowed, to switch a driver back to creating devices into the default "rtdm" class. --- kernel/cobalt/rtdm/device.c |7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/kernel/cobalt/rtdm/device.c b/kernel/cobalt/rtdm/device.c index d0df7fa..b174c1b 100644 --- a/kernel/cobalt/rtdm/device.c +++ b/kernel/cobalt/rtdm/device.c @@ -575,7 +575,9 @@ EXPORT_SYMBOL_GPL(rtdm_dev_unregister); * * @param[in] drv Address of the RTDM driver descriptor. * - * @param[in] cls Pointer to the kernel device class. + * @param[in] cls Pointer to the kernel device class. NULL is allowed + * to clear a previous setting, switching back to the default "rtdm" + * device class. * * @return 0 on success, otherwise: * @@ -592,7 +594,8 @@ EXPORT_SYMBOL_GPL(rtdm_dev_unregister); */ int rtdm_drv_set_sysclass(struct rtdm_driver *drv, struct class *cls) { - if (drv->profile_info.kdev_class || atomic_read(&drv->refcount)) + if ((cls && drv->profile_info.kdev_class) || + atomic_read(&drv->refcount)) return -EBUSY; drv->profile_info.kdev_class = cls; ___ Xenomai-git mailing list Xenomai-git@xenomai.org https://xenomai.org/mailman/listinfo/xenomai-git
[Xenomai-git] Philippe Gerum : cobalt/rtdm: device: allow switching device class back to default
Module: xenomai-3 Branch: wip/drivers Commit: 118db7bca9151b12fd737ee40ff3485109336eaf URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=118db7bca9151b12fd737ee40ff3485109336eaf Author: Philippe Gerum Date: Wed Nov 9 12:48:27 2016 +0100 cobalt/rtdm: device: allow switching device class back to default Passing NULL to rtdm_drv_set_sysclass() is now allowed, to switch a driver back to creating devices into the default "rtdm" class. --- kernel/cobalt/rtdm/device.c |7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/kernel/cobalt/rtdm/device.c b/kernel/cobalt/rtdm/device.c index d0df7fa..b174c1b 100644 --- a/kernel/cobalt/rtdm/device.c +++ b/kernel/cobalt/rtdm/device.c @@ -575,7 +575,9 @@ EXPORT_SYMBOL_GPL(rtdm_dev_unregister); * * @param[in] drv Address of the RTDM driver descriptor. * - * @param[in] cls Pointer to the kernel device class. + * @param[in] cls Pointer to the kernel device class. NULL is allowed + * to clear a previous setting, switching back to the default "rtdm" + * device class. * * @return 0 on success, otherwise: * @@ -592,7 +594,8 @@ EXPORT_SYMBOL_GPL(rtdm_dev_unregister); */ int rtdm_drv_set_sysclass(struct rtdm_driver *drv, struct class *cls) { - if (drv->profile_info.kdev_class || atomic_read(&drv->refcount)) + if ((cls && drv->profile_info.kdev_class) || + atomic_read(&drv->refcount)) return -EBUSY; drv->profile_info.kdev_class = cls; ___ Xenomai-git mailing list Xenomai-git@xenomai.org https://xenomai.org/mailman/listinfo/xenomai-git
[Xenomai-git] Philippe Gerum : cobalt/rtdm: device: allow switching device class back to default
Module: xenomai-3 Branch: next Commit: 118db7bca9151b12fd737ee40ff3485109336eaf URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=118db7bca9151b12fd737ee40ff3485109336eaf Author: Philippe Gerum Date: Wed Nov 9 12:48:27 2016 +0100 cobalt/rtdm: device: allow switching device class back to default Passing NULL to rtdm_drv_set_sysclass() is now allowed, to switch a driver back to creating devices into the default "rtdm" class. --- kernel/cobalt/rtdm/device.c |7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/kernel/cobalt/rtdm/device.c b/kernel/cobalt/rtdm/device.c index d0df7fa..b174c1b 100644 --- a/kernel/cobalt/rtdm/device.c +++ b/kernel/cobalt/rtdm/device.c @@ -575,7 +575,9 @@ EXPORT_SYMBOL_GPL(rtdm_dev_unregister); * * @param[in] drv Address of the RTDM driver descriptor. * - * @param[in] cls Pointer to the kernel device class. + * @param[in] cls Pointer to the kernel device class. NULL is allowed + * to clear a previous setting, switching back to the default "rtdm" + * device class. * * @return 0 on success, otherwise: * @@ -592,7 +594,8 @@ EXPORT_SYMBOL_GPL(rtdm_dev_unregister); */ int rtdm_drv_set_sysclass(struct rtdm_driver *drv, struct class *cls) { - if (drv->profile_info.kdev_class || atomic_read(&drv->refcount)) + if ((cls && drv->profile_info.kdev_class) || + atomic_read(&drv->refcount)) return -EBUSY; drv->profile_info.kdev_class = cls; ___ Xenomai-git mailing list Xenomai-git@xenomai.org https://xenomai.org/mailman/listinfo/xenomai-git
[Xenomai-git] Philippe Gerum : cobalt/rtdm: device: allow switching device class back to default
Module: xenomai-3 Branch: stable-3.0.x Commit: 118db7bca9151b12fd737ee40ff3485109336eaf URL: http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=118db7bca9151b12fd737ee40ff3485109336eaf Author: Philippe Gerum Date: Wed Nov 9 12:48:27 2016 +0100 cobalt/rtdm: device: allow switching device class back to default Passing NULL to rtdm_drv_set_sysclass() is now allowed, to switch a driver back to creating devices into the default "rtdm" class. --- kernel/cobalt/rtdm/device.c |7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/kernel/cobalt/rtdm/device.c b/kernel/cobalt/rtdm/device.c index d0df7fa..b174c1b 100644 --- a/kernel/cobalt/rtdm/device.c +++ b/kernel/cobalt/rtdm/device.c @@ -575,7 +575,9 @@ EXPORT_SYMBOL_GPL(rtdm_dev_unregister); * * @param[in] drv Address of the RTDM driver descriptor. * - * @param[in] cls Pointer to the kernel device class. + * @param[in] cls Pointer to the kernel device class. NULL is allowed + * to clear a previous setting, switching back to the default "rtdm" + * device class. * * @return 0 on success, otherwise: * @@ -592,7 +594,8 @@ EXPORT_SYMBOL_GPL(rtdm_dev_unregister); */ int rtdm_drv_set_sysclass(struct rtdm_driver *drv, struct class *cls) { - if (drv->profile_info.kdev_class || atomic_read(&drv->refcount)) + if ((cls && drv->profile_info.kdev_class) || + atomic_read(&drv->refcount)) return -EBUSY; drv->profile_info.kdev_class = cls; ___ Xenomai-git mailing list Xenomai-git@xenomai.org https://xenomai.org/mailman/listinfo/xenomai-git