mbuf: remove rte_ctrlmbuf
[dpdk.git] / app / test / test_power.c
index 1d0169a..d9eb420 100644 (file)
@@ -1,13 +1,13 @@
 /*-
  *   BSD LICENSE
- * 
- *   Copyright(c) 2010-2013 Intel Corporation. All rights reserved.
+ *
+ *   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
  *   All rights reserved.
- * 
+ *
  *   Redistribution and use in source and binary forms, with or without
  *   modification, are permitted provided that the following conditions
  *   are met:
- * 
+ *
  *     * Redistributions of source code must retain the above copyright
  *       notice, this list of conditions and the following disclaimer.
  *     * Redistributions in binary form must reproduce the above copyright
@@ -17,7 +17,7 @@
  *     * Neither the name of Intel Corporation nor the names of its
  *       contributors may be used to endorse or promote products derived
  *       from this software without specific prior written permission.
- * 
+ *
  *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 #include <limits.h>
 #include <string.h>
 
-#include <cmdline_parse.h>
-
 #include "test.h"
 
-#ifdef RTE_LIBRTE_POWER
-
 #include <rte_power.h>
 
 #define TEST_POWER_LCORE_ID      2U
@@ -65,7 +61,7 @@ check_cur_freq(unsigned lcore_id, uint32_t idx)
        uint32_t cur_freq;
        int ret = -1;
 
-       if (rte_snprintf(fullpath, sizeof(fullpath),
+       if (snprintf(fullpath, sizeof(fullpath),
                TEST_POWER_SYSFILE_CUR_FREQ, lcore_id) < 0) {
                return 0;
        }
@@ -200,7 +196,7 @@ check_power_set_freq(void)
                                                TEST_POWER_LCORE_ID);
                return -1;
        }
-       ret = rte_power_set_freq(TEST_POWER_LCORE_ID, 3);
+       ret = rte_power_set_freq(TEST_POWER_LCORE_ID, total_freq_num - 1);
        if (ret < 0) {
                printf("Fail to set freq index on lcore %u\n",
                                        TEST_POWER_LCORE_ID);
@@ -208,7 +204,7 @@ check_power_set_freq(void)
        }
 
        /* Check the current frequency */
-       ret = check_cur_freq(TEST_POWER_LCORE_ID, 3);
+       ret = check_cur_freq(TEST_POWER_LCORE_ID, total_freq_num - 1);
        if (ret < 0)
                return -1;
 
@@ -381,7 +377,7 @@ check_power_freq_min(void)
        return 0;
 }
 
-int
+static int
 test_power(void)
 {
        int ret = -1;
@@ -416,6 +412,12 @@ test_power(void)
        if (ret < 0)
                goto fail_all;
 
+       if (total_freq_num < 2) {
+               rte_power_exit(TEST_POWER_LCORE_ID);
+               printf("Frequency can not be changed due to CPU itself\n");
+               return 0;
+       }
+
        ret = check_power_get_freq();
        if (ret < 0)
                goto fail_all;
@@ -473,14 +475,8 @@ fail_all:
        return -1;
 }
 
-#else /* RTE_LIBRTE_POWER */
-
-int
-test_power(void)
-{
-       printf("The power library is not included in this build\n");
-       return 0;
-}
-
-#endif /* RTE_LIBRTE_POWER */
-
+static struct test_command power_cmd = {
+       .command = "power_autotest",
+       .callback = test_power,
+};
+REGISTER_TEST_COMMAND(power_cmd);