summaryrefslogtreecommitdiff
path: root/kexec/arch/sh/kexec-sh.c
diff options
context:
space:
mode:
Diffstat (limited to 'kexec/arch/sh/kexec-sh.c')
-rw-r--r--kexec/arch/sh/kexec-sh.c34
1 files changed, 10 insertions, 24 deletions
diff --git a/kexec/arch/sh/kexec-sh.c b/kexec/arch/sh/kexec-sh.c
index 7050ccd..f0b5a76 100644
--- a/kexec/arch/sh/kexec-sh.c
+++ b/kexec/arch/sh/kexec-sh.c
@@ -14,7 +14,6 @@
#include <stdlib.h>
#include <string.h>
#include <getopt.h>
-#include <sys/utsname.h>
#include "../../kexec.h"
#include "../../kexec-syscall.h"
#include "kexec-sh.h"
@@ -99,31 +98,18 @@ int arch_process_options(int argc, char **argv)
return 0;
}
+const struct arch_map_entry arches[] = {
+ /* For compatibility with older patches
+ * use KEXEC_ARCH_DEFAULT instead of KEXEC_ARCH_SH here.
+ */
+ { "sh3", KEXEC_ARCH_DEFAULT },
+ { "sh4", KEXEC_ARCH_DEFAULT },
+ { "sh4a", KEXEC_ARCH_DEFAULT },
+ { 0 },
+};
+
int arch_compat_trampoline(struct kexec_info *info)
{
- int result;
- struct utsname utsname;
- result = uname(&utsname);
- if (result < 0) {
- fprintf(stderr, "uname failed: %s\n",
- strerror(errno));
- return -1;
- }
- if ( (strcmp(utsname.machine, "sh3") == 0) ||
- (strcmp(utsname.machine, "sh4") == 0) ||
- (strcmp(utsname.machine, "sh4a") == 0))
- {
- /*
- * For compatibility with older patches
- * use KEXEC_ARCH_DEFAULT instead of KEXEC_ARCH_SH here.
- */
- info->kexec_flags |= KEXEC_ARCH_DEFAULT;
- }
- else {
- fprintf(stderr, "Unsupported machine type: %s\n",
- utsname.machine);
- return -1;
- }
return 0;
}