[boot-wrapper PATCH v2 2/9] Add standard headers
Andre Przywara
andre.przywara at arm.com
Wed Dec 22 10:16:00 PST 2021
So far we were relying on some standard C headers to be provided by the
toolchain. This applies for instance to stddef.h and stdint.h.
As a "bare-metal" application, we should not rely on external headers,
or even on a toolchain providing them in the first place.
Define our own version of stddef.h and stdint.h, containing just the
types that we actually need.
Signed-off-by: Andre Przywara <andre.przywara at arm.com>
---
arch/aarch32/include/stdint.h | 19 +++++++++++++++++++
arch/aarch64/include/stdint.h | 19 +++++++++++++++++++
include/stddef.h | 15 +++++++++++++++
3 files changed, 53 insertions(+)
create mode 100644 arch/aarch32/include/stdint.h
create mode 100644 arch/aarch64/include/stdint.h
create mode 100644 include/stddef.h
diff --git a/arch/aarch32/include/stdint.h b/arch/aarch32/include/stdint.h
new file mode 100644
index 0000000..77546f0
--- /dev/null
+++ b/arch/aarch32/include/stdint.h
@@ -0,0 +1,19 @@
+/*
+ * arch/aarch32/include/stdint.h
+ *
+ * Copyright (C) 2021 ARM Limited. All rights reserved.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE.txt file.
+ */
+#ifndef STDINT_H__
+#define STDINT_H__
+
+typedef unsigned char uint8_t;
+typedef unsigned short int uint16_t;
+typedef unsigned int uint32_t;
+typedef unsigned long long int uint64_t;
+
+typedef unsigned int uintptr_t;
+
+#endif
diff --git a/arch/aarch64/include/stdint.h b/arch/aarch64/include/stdint.h
new file mode 100644
index 0000000..92c2603
--- /dev/null
+++ b/arch/aarch64/include/stdint.h
@@ -0,0 +1,19 @@
+/*
+ * arch/aarch64/include/stdint.h
+ *
+ * Copyright (C) 2021 ARM Limited. All rights reserved.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE.txt file.
+ */
+#ifndef STDINT_H__
+#define STDINT_H__
+
+typedef unsigned char uint8_t;
+typedef unsigned short int uint16_t;
+typedef unsigned int uint32_t;
+typedef unsigned long int uint64_t;
+
+typedef unsigned long int uintptr_t;
+
+#endif
diff --git a/include/stddef.h b/include/stddef.h
new file mode 100644
index 0000000..3208b10
--- /dev/null
+++ b/include/stddef.h
@@ -0,0 +1,15 @@
+/*
+ * include/stddef.h - standard data type definitions
+ *
+ * Copyright (C) 2021 ARM Limited. All rights reserved.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE.txt file.
+ */
+#ifndef STDDEF_H__
+#define STDDEF_H__
+
+typedef unsigned long int size_t;
+typedef signed long int ssize_t;
+
+#endif
--
2.25.1
More information about the linux-arm-kernel
mailing list