This is an automated email from the ASF dual-hosted git repository.

jerpelea pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git


The following commit(s) were added to refs/heads/master by this push:
     new 3fb78a8  drivers: move the generic upper-half motor driver from 
drivers/power to drivers/motor
3fb78a8 is described below

commit 3fb78a8299636f29f941c704223700dfb6362e77
Author: raiden00pl <[email protected]>
AuthorDate: Fri Apr 16 10:57:14 2021 +0200

    drivers: move the generic upper-half motor driver from drivers/power to 
drivers/motor
---
 drivers/motor/Kconfig                  |  50 ++++++++++++++++
 drivers/motor/Make.defs                |   6 ++
 drivers/{power => motor}/motor.c       | 104 ++++++++++++++++-----------------
 drivers/power/Kconfig                  |  50 ----------------
 drivers/power/Make.defs                |  12 ----
 include/nuttx/{power => motor}/motor.h |  66 ++++++++++-----------
 include/nuttx/motor/motor_ioctl.h      |   4 ++
 7 files changed, 145 insertions(+), 147 deletions(-)

diff --git a/drivers/motor/Kconfig b/drivers/motor/Kconfig
index a6a6f2f..7c22091 100644
--- a/drivers/motor/Kconfig
+++ b/drivers/motor/Kconfig
@@ -9,6 +9,56 @@ menuconfig MOTOR
 
 if MOTOR
 
+config MOTOR_UPPER
+       bool "Motor generic upper-half driver"
+       default n
+       ---help---
+               Enables building of a motor generic upper half driver.
+
+if MOTOR_UPPER
+
+config MOTOR_UPPER_HAVE_POSITION
+       bool "Have position control"
+       default n
+
+config MOTOR_UPPER_HAVE_DIRECTION
+       bool "Have direction control"
+       default n
+
+config MOTOR_UPPER_HAVE_SPEED
+       bool "Have speed control"
+       default n
+
+config MOTOR_UPPER_HAVE_TORQUE
+       bool "Have torque control (rotary motors)"
+       default n
+
+config MOTOR_UPPER_HAVE_FORCE
+       bool "Have force control (linear motors)"
+       default n
+
+config MOTOR_UPPER_HAVE_ACCELERATION
+       bool "Have acceleration control"
+       default n
+
+config MOTOR_UPPER_HAVE_DECELERATION
+       bool "Have deceleration control"
+       default n
+
+config MOTOR_UPPER_HAVE_INPUT_VOLTAGE
+       bool "Have input voltage protection"
+       default n
+
+config MOTOR_UPPER_HAVE_INPUT_CURRENT
+       bool "Have input current protection"
+       default n
+
+config MOTOR_UPPER_HAVE_INPUT_POWER
+       bool "Have input power protection"
+       default n
+
+endif
+
 source "drivers/motor/foc/Kconfig"
 
 endif # MOTOR
diff --git a/drivers/motor/Make.defs b/drivers/motor/Make.defs
index d369148..40080e5 100644
--- a/drivers/motor/Make.defs
+++ b/drivers/motor/Make.defs
@@ -24,6 +24,12 @@ ifeq ($(CONFIG_MOTOR_FOC),y)
 include motor$(DELIM)foc$(DELIM)Make.defs
 endif
 
+# Add generic upper-half motor driver
+
+ifeq ($(CONFIG_MOTOR_UPPER),y)
+CSRCS += motor.c
+endif
+
 # Include motor drivers in the build
 
 MOTOR_DEPPATH := --dep-path motor
diff --git a/drivers/power/motor.c b/drivers/motor/motor.c
similarity index 85%
rename from drivers/power/motor.c
rename to drivers/motor/motor.c
index fafba7f..5b18c8f 100644
--- a/drivers/power/motor.c
+++ b/drivers/motor/motor.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * drivers/power/motor.c
+ * drivers/motor/motor.c
  *
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -35,7 +35,7 @@
 
 #include <nuttx/arch.h>
 #include <nuttx/fs/fs.h>
-#include <nuttx/power/motor.h>
+#include <nuttx/motor/motor.h>
 
 #include <nuttx/irq.h>
 
@@ -214,7 +214,7 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
 
   switch (cmd)
     {
-      case PWRIOC_START:
+      case MTRIOC_START:
         {
           /* Allow motor start only when some limits available
            * and structure is locked.
@@ -222,30 +222,30 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
 
           if ((motor->limits.lock == false) ||
               (
-#ifdef CONFIG_MOTOR_HAVE_POSITION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_POSITION
                 motor->limits.position <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_SPEED
+#ifdef CONFIG_MOTOR_UPPER_HAVE_SPEED
                motor->limits.speed <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_TORQUE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_TORQUE
                motor->limits.torque <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_FORCE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_FORCE
                 motor->limits.force <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_VOLTAGE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_VOLTAGE
                motor->limits.v_in <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_CURRENT
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_CURRENT
                motor->limits.i_in <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_POWER
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_POWER
                motor->limits.p_in <= 0.0 &&
 #endif
                 1))
             {
-              pwrerr("ERROR: motor limits data must be set"
+              mtrerr("Motor limits data must be set"
                      " and locked before motor start\n");
 
               ret = -EPERM;
@@ -256,7 +256,7 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
 
           if (motor->opmode == MOTOR_OPMODE_INIT)
             {
-              pwrerr("ERROR: motor operation mode not specified\n");
+              mtrerr("Motor operation mode not specified\n");
 
               ret = -EPERM;
               goto errout;
@@ -269,43 +269,43 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
           ret = dev->ops->start(dev);
           if (ret != OK)
             {
-              pwrerr("ERROR: PWRIOC_START failed %d\n", ret);
+              mtrerr("MTRIOC_START failed %d\n", ret);
             }
           break;
         }
 
-      case PWRIOC_STOP:
+      case MTRIOC_STOP:
         {
           /* Call stop from lower-half driver */
 
           ret = dev->ops->stop(dev);
           if (ret != OK)
             {
-              pwrerr("ERROR: PWRIOC_STOP failed %d\n", ret);
+              mtrerr("MTRIOC_STOP failed %d\n", ret);
             }
           break;
         }
 
-      case PWRIOC_SET_MODE:
+      case MTRIOC_SET_MODE:
         {
           uint8_t mode = ((uint8_t)arg);
 
           ret = dev->ops->mode_set(dev, mode);
           if (ret != OK)
             {
-              pwrerr("ERROR: PWRIOC_SET_MODE failed %d\n", ret);
+              mtrerr("MTRIOC_SET_MODE failed %d\n", ret);
             }
           break;
         }
 
-      case PWRIOC_SET_LIMITS:
+      case MTRIOC_SET_LIMITS:
         {
           FAR struct motor_limits_s *limits =
             (FAR struct motor_limits_s *)((uintptr_t)arg);
 
           if (motor->limits.lock == true)
             {
-              pwrerr("ERROR: motor limits locked!\n");
+              mtrerr("Motor limits locked!\n");
 
               ret = -EPERM;
               goto errout;
@@ -316,12 +316,12 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
           ret = dev->ops->limits_set(dev, limits);
           if (ret != OK)
             {
-              pwrerr("ERROR: PWRIOC_SET_LIMITS failed %d\n", ret);
+              mtrerr("MTRIOC_SET_LIMITS failed %d\n", ret);
             }
           break;
         }
 
-      case PWRIOC_GET_STATE:
+      case MTRIOC_GET_STATE:
         {
           FAR struct motor_state_s *state =
             (FAR struct motor_state_s *)((uintptr_t)arg);
@@ -329,55 +329,55 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
           ret = dev->ops->state_get(dev, state);
           if (ret != OK)
             {
-              pwrerr("ERROR: PWRIOC_GET_STATE failed %d\n", ret);
+              mtrerr("MTRIOC_GET_STATE failed %d\n", ret);
             }
           break;
         }
 
-      case PWRIOC_SET_FAULT:
+      case MTRIOC_SET_FAULT:
         {
           uint8_t fault = ((uint8_t)arg);
 
           ret = dev->ops->fault_set(dev, fault);
           if (ret != OK)
             {
-              pwrerr("ERROR: PWRIOC_SET_FAULT failed %d\n", ret);
+              mtrerr("MTRIOC_SET_FAULT failed %d\n", ret);
             }
           break;
         }
 
-      case PWRIOC_GET_FAULT:
+      case MTRIOC_GET_FAULT:
         {
           FAR uint8_t *fault = ((FAR uint8_t *)arg);
 
           ret = dev->ops->fault_get(dev, fault);
           if (ret != OK)
             {
-              pwrerr("ERROR: PWRIOC_GET_FAULT failed %d\n", ret);
+              mtrerr("MTRIOC_GET_FAULT failed %d\n", ret);
             }
           break;
         }
 
-      case PWRIOC_CLEAN_FAULT:
+      case MTRIOC_CLEAR_FAULT:
         {
           uint8_t fault = ((uint8_t)arg);
 
-          ret = dev->ops->fault_clean(dev, fault);
+          ret = dev->ops->fault_clear(dev, fault);
           if (ret != OK)
             {
-              pwrerr("ERROR: PWRIOC_CLEAN_FAULT failed %d\n", ret);
+              mtrerr("MTRIOC_CLEAR_FAULT failed %d\n", ret);
             }
           break;
         }
 
-      case PWRIOC_SET_PARAMS:
+      case MTRIOC_SET_PARAMS:
         {
           FAR struct motor_params_s *params =
             (FAR struct motor_params_s *)((uintptr_t)arg);
 
           if (motor->param.lock == true)
             {
-              pwrerr("ERROR: motor params locked!\n");
+              mtrerr("Motor params locked!\n");
 
               ret = -EPERM;
               goto errout;
@@ -385,42 +385,42 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
 
           if ((motor->limits.lock == false) ||
               (
-#ifdef CONFIG_MOTOR_HAVE_POSITION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_POSITION
                 motor->limits.position <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_SPEED
+#ifdef CONFIG_MOTOR_UPPER_HAVE_SPEED
                 motor->limits.speed <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_TORQUE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_TORQUE
                 motor->limits.torque <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_FORCE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_FORCE
                 motor->limits.force <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_VOLTAGE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_VOLTAGE
                 motor->limits.v_in <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_CURRENT
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_CURRENT
                 motor->limits.i_in <= 0.0 &&
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_POWER
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_POWER
                 motor->limits.p_in <= 0.0 &&
 #endif
                 1))
             {
-              pwrerr("ERROR: limits must be set prior to params!\n");
+              mtrerr("Limits must be set prior to params!\n");
 
               ret = -EPERM;
               goto errout;
             }
 
-#ifdef CONFIG_MOTOR_HAVE_DIRECTION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_DIRECTION
           /* Check direction configuration */
 
           if (params->direction != MOTOR_DIR_CCW &&
               params->direction != MOTOR_DIR_CW)
             {
-              pwrerr("ERROR: invalid direction value %d\n",
+              mtrerr("Invalid direction value %d\n",
                      params->direction);
 
               ret = -EPERM;
@@ -428,13 +428,13 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
             }
 #endif
 
-#ifdef CONFIG_MOTOR_HAVE_POSITION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_POSITION
           /* Check position configuration */
 
           if (params->position < 0.0 ||
               params->position > motor->limits.position)
             {
-              pwrerr("ERROR: params->position > limits.position: "
+              mtrerr("params->position > limits.position: "
                      "%.2f > %.2f\n",
                      params->position, motor->limits.position);
 
@@ -443,13 +443,13 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
             }
 #endif
 
-#ifdef CONFIG_MOTOR_HAVE_SPEED
+#ifdef CONFIG_MOTOR_UPPER_HAVE_SPEED
           /* Check speed configuration */
 
           if (motor->limits.speed > 0.0 &&
               params->speed > motor->limits.speed)
             {
-              pwrerr("ERROR: params->speed > limits.speed: %.2f > %.2f\n",
+              mtrerr("params->speed > limits.speed: %.2f > %.2f\n",
                      params->speed, motor->limits.speed);
 
               ret = -EPERM;
@@ -457,13 +457,13 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
             }
 #endif
 
-#ifdef CONFIG_MOTOR_HAVE_TORQUE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_TORQUE
           /* Check torque configuration */
 
           if (motor->limits.torque > 0.0 &&
               params->torque > motor->limits.torque)
             {
-              pwrerr("ERROR: params->torque > limits.torque: %.2f > %.2f\n",
+              mtrerr("params->torque > limits.torque: %.2f > %.2f\n",
                      params->torque, motor->limits.torque);
 
               ret = -EPERM;
@@ -471,13 +471,13 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
             }
 #endif
 
-#ifdef CONFIG_MOTOR_HAVE_FORCE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_FORCE
           /* Check force configuration */
 
           if (motor->limits.force > 0.0 &&
               params->force > motor->limits.force)
             {
-              pwrerr("ERROR: params->force > limits.force: %.2f > %.2f\n",
+              mtrerr("params->force > limits.force: %.2f > %.2f\n",
                      params->force, motor->limits.force);
 
               ret = -EPERM;
@@ -488,14 +488,14 @@ static int motor_ioctl(FAR struct file *filep, int cmd, 
unsigned long arg)
           ret = dev->ops->params_set(dev, params);
           if (ret != OK)
             {
-              pwrerr("ERROR: PWRIOC_SET_PARAMS failed %d\n", ret);
+              mtrerr("MTRIOC_SET_PARAMS failed %d\n", ret);
             }
           break;
         }
 
       default:
         {
-          pwrinfo("Forwarding unrecognized cmd: %d arg: %ld\n", cmd, arg);
+          mtrinfo("Forwarding unrecognized cmd: %d arg: %ld\n", cmd, arg);
           ret = dev->ops->ioctl(dev, cmd, arg);
           break;
         }
@@ -537,7 +537,7 @@ int motor_register(FAR const char *path, FAR struct 
motor_dev_s *dev,
   DEBUGASSERT(dev->ops->fault_set != NULL);
   DEBUGASSERT(dev->ops->state_get != NULL);
   DEBUGASSERT(dev->ops->fault_get != NULL);
-  DEBUGASSERT(dev->ops->fault_clean != NULL);
+  DEBUGASSERT(dev->ops->fault_clear != NULL);
   DEBUGASSERT(dev->ops->ioctl != NULL);
 
   /* Initialize the motor device structure */
diff --git a/drivers/power/Kconfig b/drivers/power/Kconfig
index 5c3cf0d..38a1994 100644
--- a/drivers/power/Kconfig
+++ b/drivers/power/Kconfig
@@ -334,56 +334,6 @@ config SMPS_HAVE_EFFICIENCY
 
 endif
 
-config DRIVERS_MOTOR
-       bool "Motor driver"
-       default n
-       ---help---
-               Enables building of a motor upper half driver.
-
-if DRIVERS_MOTOR
-
-config MOTOR_HAVE_POSITION
-       bool "Have position control"
-       default n
-
-config MOTOR_HAVE_DIRECTION
-       bool "Have direction control"
-       default n
-
-config MOTOR_HAVE_SPEED
-       bool "Have speed control"
-       default n
-
-config MOTOR_HAVE_TORQUE
-       bool "Have torque control (rotary motors)"
-       default n
-
-config MOTOR_HAVE_FORCE
-       bool "Have force control (linear motors)"
-       default n
-
-config MOTOR_HAVE_ACCELERATION
-       bool "Have acceleration control"
-       default n
-
-config MOTOR_HAVE_DECELERATION
-       bool "Have deceleration control"
-       default n
-
-config MOTOR_HAVE_INPUT_VOLTAGE
-       bool "Have input voltage protection"
-       default n
-
-config MOTOR_HAVE_INPUT_CURRENT
-       bool "Have input current protection"
-       default n
-
-config MOTOR_HAVE_INPUT_POWER
-       bool "Have input power protection"
-       default n
-
-endif
-
 menuconfig POWER
        bool "Power Management Support"
        default n
diff --git a/drivers/power/Make.defs b/drivers/power/Make.defs
index 48f6aaa..ed7698f 100644
--- a/drivers/power/Make.defs
+++ b/drivers/power/Make.defs
@@ -71,18 +71,6 @@ POWER_CFLAGS := ${shell $(INCDIR) "$(CC)" 
$(TOPDIR)$(DELIM)drivers$(DELIM)power}
 
 endif
 
-# Add motor driver
-
-ifeq ($(CONFIG_DRIVERS_MOTOR),y)
-
-CSRCS += motor.c
-
-POWER_DEPPATH := --dep-path power
-POWER_VPATH := :power
-POWER_CFLAGS := ${shell $(INCDIR) "$(CC)" 
$(TOPDIR)$(DELIM)drivers$(DELIM)power}
-
-endif
-
 # Add battery charger drivers
 
 ifeq ($(CONFIG_BATTERY_CHARGER),y)
diff --git a/include/nuttx/power/motor.h b/include/nuttx/motor/motor.h
similarity index 87%
rename from include/nuttx/power/motor.h
rename to include/nuttx/motor/motor.h
index d267485..f1f5f5d 100644
--- a/include/nuttx/power/motor.h
+++ b/include/nuttx/motor/motor.h
@@ -1,5 +1,5 @@
 /****************************************************************************
- * include/nuttx/power/motor.h
+ * include/nuttx/motor/motor.h
  *
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -18,8 +18,8 @@
  *
  ****************************************************************************/
 
-#ifndef __INCLUDE_NUTTX_DRIVERS_POWER_MOTOR_H
-#define __INCLUDE_NUTTX_DRIVERS_POWER_MOTOR_H
+#ifndef __INCLUDE_NUTTX_DRIVERS_MOTOR_MOTOR_H
+#define __INCLUDE_NUTTX_DRIVERS_MOTOR_MOTOR_H
 
 /* The motor driver is split into two parts:
  *
@@ -42,10 +42,10 @@
 #include <nuttx/config.h>
 #include <nuttx/compiler.h>
 
-#include <nuttx/power/power_ioctl.h>
+#include <nuttx/motor/motor_ioctl.h>
 #include <nuttx/semaphore.h>
 
-#ifdef CONFIG_DRIVERS_MOTOR
+#ifdef CONFIG_MOTOR_UPPER
 
 /****************************************************************************
  * Pre-processor Definitions
@@ -103,25 +103,25 @@ enum motor_direction_e
 
 struct motor_feedback_s
 {
-#ifdef CONFIG_MOTOR_HAVE_POSITION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_POSITION
   float position;               /* Current motor position */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_SPEED
+#ifdef CONFIG_MOTOR_UPPER_HAVE_SPEED
   float speed;                  /* Current motor speed */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_TORQUE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_TORQUE
   float torque;                 /* Current motor torque (rotary motor) */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_FORCE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_FORCE
   float force;                  /* Current motor force (linear motor) */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_VOLTAGE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_VOLTAGE
   float v_in;                   /* Current input voltage */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_CURRENT
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_CURRENT
   float i_in;                   /* Current input current */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_POWER
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_POWER
   float p_in;                   /* Current input power */
 #endif
 };
@@ -145,31 +145,31 @@ struct motor_limits_s
   bool  lock;                        /* This bit must be set after
                                       * limits configuration.
                                       */
-#ifdef CONFIG_MOTOR_HAVE_POSITION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_POSITION
   float position;                    /* Maximum motor position */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_SPEED
+#ifdef CONFIG_MOTOR_UPPER_HAVE_SPEED
   float speed;                       /* Maximum motor speed */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_TORQUE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_TORQUE
   float torque;                      /* Maximum motor torque (rotary motor) */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_FORCE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_FORCE
   float force;                       /* Maximum motor force (linear motor) */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_ACCELERATION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_ACCELERATION
   float acceleration;                /* Maximum motor acceleration */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_DECELERATION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_DECELERATION
   float deceleration;                /* Maximum motor decelaration */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_VOLTAGE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_VOLTAGE
   float v_in;                        /* Maximum input voltage */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_CURRENT
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_CURRENT
   float i_in;                        /* Maximum input current */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_INPUT_POWER
+#ifdef CONFIG_MOTOR_UPPER_HAVE_INPUT_POWER
   float p_in;                        /* Maximum input power */
 #endif
 };
@@ -184,7 +184,7 @@ struct motor_params_s
                                       * if there is no need to change motor
                                       * parameter during run-time.
                                       */
-#ifdef CONFIG_MOTOR_HAVE_DIRECTION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_DIRECTION
   int8_t  direction;                 /* Motor movement direction. We do not
                                       * support negative values for parameters,
                                       * so this flag can be used to allow 
movement
@@ -192,22 +192,22 @@ struct motor_params_s
                                       * a given coordinate system.
                                       */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_POSITION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_POSITION
   float position;                    /* Motor position */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_SPEED
+#ifdef CONFIG_MOTOR_UPPER_HAVE_SPEED
   float speed;                       /* Motor speed */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_TORQUE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_TORQUE
   float torque;                      /* Motor torque (rotary motor) */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_FORCE
+#ifdef CONFIG_MOTOR_UPPER_HAVE_FORCE
   float force;                       /* Motor force (linear motor) */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_ACCELERATION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_ACCELERATION
   float acceleration;                /* Motor acceleration */
 #endif
-#ifdef CONFIG_MOTOR_HAVE_DECELERATION
+#ifdef CONFIG_MOTOR_UPPER_HAVE_DECELERATION
   float deceleration;                /* Motor deceleration */
 #endif
 };
@@ -268,15 +268,15 @@ struct motor_ops_s
   /* Get motor state  */
 
   CODE int (*state_get)(FAR struct motor_dev_s *dev,
-                         FAR struct motor_state_s *state);
+                        FAR struct motor_state_s *state);
 
   /* Get current fault state */
 
   CODE int (*fault_get)(FAR struct motor_dev_s *dev, FAR uint8_t *fault);
 
-  /* Clean fault state */
+  /* Clear fault state */
 
-  CODE int (*fault_clean)(FAR struct motor_dev_s *dev, uint8_t fault);
+  CODE int (*fault_clear)(FAR struct motor_dev_s *dev, uint8_t fault);
 
   /* Lower-half logic may support platform-specific ioctl commands */
 
@@ -331,5 +331,5 @@ int motor_register(FAR const char *path, FAR struct 
motor_dev_s *dev,
 }
 #endif
 
-#endif /* CONFIG_DRIVERS_MOTOR */
-#endif /* __INCLUDE_NUTTX_DRIVERS_POWER_MOTOR_H */
+#endif /* CONFIG_MOTOR_UPPER */
+#endif /* __INCLUDE_NUTTX_DRIVERS_MOTOR_MOTOR_H */
diff --git a/include/nuttx/motor/motor_ioctl.h 
b/include/nuttx/motor/motor_ioctl.h
index 725c51c..5122064 100644
--- a/include/nuttx/motor/motor_ioctl.h
+++ b/include/nuttx/motor/motor_ioctl.h
@@ -45,5 +45,9 @@
 #define MTRIOC_SET_PARAMS     _MTRIOC(5)
 #define MTRIOC_SET_CONFIG     _MTRIOC(6)
 #define MTRIOC_GET_INFO       _MTRIOC(7)
+#define MTRIOC_SET_MODE       _MTRIOC(8)
+#define MTRIOC_SET_LIMITS     _MTRIOC(9)
+#define MTRIOC_SET_FAULT      _MTRIOC(10)
+#define MTRIOC_GET_FAULT      _MTRIOC(11)
 
 #endif /* __INCLUDE_NUTTX_MOTOR_MOTOR_IOCTL_H */

Reply via email to