treewide: basic ARM64 fixes

This introduces per-arch kernel configs, adds a basic ARM64 kconfig,
adds ttyAMA0 as a console as well as makes some smaller fixes needed for
basic ARM64 operation. This is not production-ready, but it boots
Monogon on ARM64.

Change-Id: Ifd1d8e33f3fe65883626b8ae7a766c98ea912121
Reviewed-on: https://review.monogon.dev/c/monogon/+/4247
Tested-by: Jenkins CI
Reviewed-by: Tim Windelschmidt <tim@monogon.tech>
diff --git a/osbase/kmod/modinfo.go b/osbase/kmod/modinfo.go
index b778317..42ef446 100644
--- a/osbase/kmod/modinfo.go
+++ b/osbase/kmod/modinfo.go
@@ -198,12 +198,5 @@
 	if currModule.Name() != "" {
 		out = append(out, currModule)
 	}
-	seenModNames := make(map[string]bool)
-	for _, m := range out {
-		if seenModNames[m.Name()] {
-			return nil, fmt.Errorf("duplicate/out-of-order module metadata for module %q", m)
-		}
-		seenModNames[m.Name()] = true
-	}
 	return out, nil
 }
diff --git a/osbase/test/ktest/BUILD.bazel b/osbase/test/ktest/BUILD.bazel
index e247ca1..654416e 100644
--- a/osbase/test/ktest/BUILD.bazel
+++ b/osbase/test/ktest/BUILD.bazel
@@ -22,7 +22,7 @@
 
 kconfig_patch(
     name = "testing-config",
-    src = "//third_party/linux:linux-metropolis.config",
+    src = "//third_party/linux:kconfig",
     out = "testing.config",
     override_configs = {
         # Unlock command line