summaryrefslogtreecommitdiff
path: root/src/commonlib
diff options
context:
space:
mode:
authorKapil Porwal <kapilporwal@google.com>2024-06-05 15:52:30 +0000
committerJulius Werner <jwerner@chromium.org>2024-06-11 21:06:59 +0000
commit829b94dc988861179f09f56b6693c84fda02acd1 (patch)
tree9cea156f42cd66f3ea602d8e80ea05c30d65aa98 /src/commonlib
parent3da78299588f34332b1e7d4291437b182c711258 (diff)
treewide: Move skip_atoi function to commonlib
BUG=none TEST=Build and verify on Screebo TEST=make unit-tests ``` $ make tests/commonlib/bsd/string-test [==========] tests_commonlib_bsd_string-test(tests): Running 1 test(s). [ RUN ] test_skip_atoi [ OK ] test_skip_atoi [==========] tests_commonlib_bsd_string-test(tests): 1 test(s) run. [ PASSED ] 1 test(s). ``` Change-Id: Ifaaa80d0c696a625592ce301f9e3eefb2b4dcd98 Signed-off-by: Maximilian Brune <maximilian.brune@9elements.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/82910 Reviewed-by: Jakub Czapiga <czapiga@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Subrata Banik <subratabanik@google.com>
Diffstat (limited to 'src/commonlib')
-rw-r--r--src/commonlib/Makefile.mk4
-rw-r--r--src/commonlib/bsd/include/commonlib/bsd/string.h10
-rw-r--r--src/commonlib/bsd/string.c15
3 files changed, 29 insertions, 0 deletions
diff --git a/src/commonlib/Makefile.mk b/src/commonlib/Makefile.mk
index 30aaddf2cc..00f3629c1e 100644
--- a/src/commonlib/Makefile.mk
+++ b/src/commonlib/Makefile.mk
@@ -65,3 +65,7 @@ decompressor-y += bsd/gcd.c
all-y += bsd/gcd.c
all-y += bsd/ipchksum.c
+
+decompressor-y += bsd/string.c
+smm-y += bsd/string.c
+all-y += bsd/string.c
diff --git a/src/commonlib/bsd/include/commonlib/bsd/string.h b/src/commonlib/bsd/include/commonlib/bsd/string.h
new file mode 100644
index 0000000000..bbd4754800
--- /dev/null
+++ b/src/commonlib/bsd/include/commonlib/bsd/string.h
@@ -0,0 +1,10 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+
+#ifndef _COMMONLIB_BSD_STRING_H_
+#define _COMMONLIB_BSD_STRING_H_
+
+#include <stdint.h>
+
+unsigned int skip_atoi(char **ptr);
+
+#endif /* _COMMONLIB_BSD_STRING_H_ */
diff --git a/src/commonlib/bsd/string.c b/src/commonlib/bsd/string.c
new file mode 100644
index 0000000000..3286d41b1c
--- /dev/null
+++ b/src/commonlib/bsd/string.c
@@ -0,0 +1,15 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+
+#include <commonlib/bsd/string.h>
+#include <ctype.h>
+
+unsigned int skip_atoi(char **ptr)
+{
+ unsigned int result = 0;
+ char *str;
+
+ for (str = *ptr; isdigit(str[0]); str++)
+ result = result * 10 + (str[0] - '0');
+ *ptr = str;
+ return result;
+}