anaconda/anaconda-riscv64.patch

90 lines
3.3 KiB
Diff

diff --git a/data/dbus/anaconda-bus.conf b/data/dbus/anaconda-bus.conf
index 75e0835..58de286 100644
--- a/data/dbus/anaconda-bus.conf
+++ b/data/dbus/anaconda-bus.conf
@@ -112,9 +112,9 @@
<limit name="max_message_size">1000000000</limit>
<!-- We do not override max_message_unix_fds here since the in-kernel
limit is also relatively low -->
- <limit name="service_start_timeout">600000</limit>
- <limit name="auth_timeout">240000</limit>
- <limit name="pending_fd_timeout">150000</limit>
+ <limit name="service_start_timeout">6000000</limit>
+ <limit name="auth_timeout">2400000</limit>
+ <limit name="pending_fd_timeout">1500000</limit>
<limit name="max_completed_connections">100000</limit>
<limit name="max_incomplete_connections">10000</limit>
<limit name="max_connections_per_user">100000</limit>
diff --git a/pyanaconda/modules/storage/bootloader/efi.py b/pyanaconda/modules/storage/bootloader/efi.py
index 1b47e24..507df96 100644
--- a/pyanaconda/modules/storage/bootloader/efi.py
+++ b/pyanaconda/modules/storage/bootloader/efi.py
@@ -28,7 +28,7 @@ from pyanaconda.product import productName
from pyanaconda.anaconda_loggers import get_module_logger
log = get_module_logger(__name__)
-__all__ = ["EFIBase", "EFIGRUB", "Aarch64EFIGRUB", "ArmEFIGRUB", "MacEFIGRUB"]
+__all__ = ["EFIBase", "EFIGRUB", "Aarch64EFIGRUB", "ArmEFIGRUB", "MacEFIGRUB", "RISCV64EFIGRUB"]
class EFIBase(object):
@@ -214,6 +214,15 @@ class ArmEFIGRUB(EFIGRUB):
self._is_32bit_firmware = True
+class RISCV64EFIGRUB(EFIGRUB):
+ _serial_consoles = ["ttyS"]
+ _efi_binary = "\\grubriscv64.efi"
+
+ def __init__(self):
+ super().__init__()
+ self._packages64 = ["grub2-efi-riscv64"]
+
+
class MacEFIGRUB(EFIGRUB):
def __init__(self):
super().__init__()
diff --git a/pyanaconda/modules/storage/bootloader/factory.py b/pyanaconda/modules/storage/bootloader/factory.py
index 8aa3afb..835ab2e 100644
--- a/pyanaconda/modules/storage/bootloader/factory.py
+++ b/pyanaconda/modules/storage/bootloader/factory.py
@@ -142,6 +142,10 @@ class BootLoaderFactory(object):
from pyanaconda.modules.storage.bootloader.extlinux import EXTLINUX
return EXTLINUX
+ if platform_class is platform.RISCV64EFI:
+ from pyanaconda.modules.storage.bootloader.efi import RISCV64EFIGRUB
+ return RISCV64EFIGRUB
+
if platform_class is platform.ArmEFI:
from pyanaconda.modules.storage.bootloader.efi import ArmEFIGRUB
return ArmEFIGRUB
diff --git a/pyanaconda/modules/storage/platform.py b/pyanaconda/modules/storage/platform.py
index d0aa7ca..d9ddcae 100644
--- a/pyanaconda/modules/storage/platform.py
+++ b/pyanaconda/modules/storage/platform.py
@@ -295,6 +295,14 @@ class ArmEFI(EFI):
return ["vfat", "ntfs"]
+class RISCV64EFI(EFI):
+
+ @property
+ def non_linux_format_types(self):
+ """Format types of devices with non-linux operating systems."""
+ return ["vfat", "ntfs"]
+
+
class PPC(Platform):
@property
@@ -484,6 +492,8 @@ def get_platform():
return MacEFI()
elif arch.is_aarch64():
return Aarch64EFI()
+ elif arch.is_riscv64():
+ return RISCV64EFI()
elif arch.is_arm():
return ArmEFI()
else: