readlink: uClibc supports automatic allocation too now
[oweals/busybox.git] / libbb / speed_table.c
index a4b22ef98ccfae281944c06641dad63ee7432ab1..45159f1f3b8e347c33f31a0aa2fdae972f85217b 100644 (file)
@@ -4,10 +4,9 @@
  *
  * Copyright (C) 2003  Manuel Novoa III  <mjn3@codepoet.org>
  *
- * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
+ * Licensed under GPLv2 or later, see file LICENSE in this source tree.
  */
 
-#include <termios.h>
 #include "libbb.h"
 
 struct speed_map {
@@ -30,12 +29,12 @@ static const struct speed_map speeds[] = {
        {B2400, 2400},
        {B4800, 4800},
        {B9600, 9600},
-#ifdef B19200
+#ifdef B19200
        {B19200, 19200},
 #elif defined(EXTA)
        {EXTA, 19200},
 #endif
-#ifdef B38400
+#ifdef B38400
        {B38400, 38400/256 + 0x8000U},
 #elif defined(EXTB)
        {EXTB, 38400/256 + 0x8000U},
@@ -52,11 +51,14 @@ static const struct speed_map speeds[] = {
 #ifdef B460800
        {B460800, 460800/256 + 0x8000U},
 #endif
+#ifdef B921600
+       {B921600, 921600/256 + 0x8000U},
+#endif
 };
 
-enum { NUM_SPEEDS = (sizeof(speeds) / sizeof(struct speed_map)) };
+enum { NUM_SPEEDS = ARRAY_SIZE(speeds) };
 
-unsigned long tty_baud_to_value(speed_t speed)
+unsigned FAST_FUNC tty_baud_to_value(speed_t speed)
 {
        int i = 0;
 
@@ -72,7 +74,7 @@ unsigned long tty_baud_to_value(speed_t speed)
        return 0;
 }
 
-speed_t tty_value_to_baud(unsigned long value)
+speed_t FAST_FUNC tty_value_to_baud(unsigned int value)
 {
        int i = 0;
 
@@ -94,7 +96,7 @@ int main(void)
        unsigned long v;
        speed_t s;
 
-       for (v = 0 ; v < 500000 ; v++) {
+       for (v = 0 ; v < 1000000; v++) {
                s = tty_value_to_baud(v);
                if (s == (speed_t) -1) {
                        continue;
@@ -104,7 +106,7 @@ int main(void)
 
        printf("-------------------------------\n");
 
-       for (s = 0 ; s < 010017+1 ; s++) {
+       for (s = 0 ; s < 010017+1; s++) {
                v = tty_baud_to_value(s);
                if (!v) {
                        continue;