Discussion:
[PATCH] [m68k/virt]: Add flavour for QEMU M68K Virtual Machine
(too old to reply)
Laurent Vivier
2023-06-12 15:00:02 UTC
Permalink
These changes to the linux package are needed to create kernel .debs
and .udebs with all the needed modules for the QEMU m68k virt machine.

These is also needed to create the debian-installer that will be usable
with the virt machine.

Signed-off-by: Laurent Vivier <***@vivier.eu>
---
debian/config/m68k/config.virt | 333 ++++++++++++++++++
debian/config/m68k/defines | 4 +
debian/installer/kernel-versions | 1 +
.../installer/modules/m68k-virt/affs-modules | 1 +
.../installer/modules/m68k-virt/btrfs-modules | 1 +
.../modules/m68k-virt/cdrom-core-modules | 1 +
.../installer/modules/m68k-virt/crc-modules | 1 +
.../modules/m68k-virt/crypto-modules | 1 +
.../installer/modules/m68k-virt/ext4-modules | 1 +
.../installer/modules/m68k-virt/fat-modules | 1 +
debian/installer/modules/m68k-virt/fb-modules | 2 +
.../installer/modules/m68k-virt/fuse-modules | 1 +
.../installer/modules/m68k-virt/hfs-modules | 1 +
.../installer/modules/m68k-virt/input-modules | 2 +
.../installer/modules/m68k-virt/isofs-modules | 1 +
.../installer/modules/m68k-virt/kernel-image | 1 +
.../installer/modules/m68k-virt/loop-modules | 1 +
debian/installer/modules/m68k-virt/md-modules | 1 +
.../installer/modules/m68k-virt/nbd-modules | 1 +
.../installer/modules/m68k-virt/nic-modules | 1 +
.../modules/m68k-virt/nic-shared-modules | 1 +
.../installer/modules/m68k-virt/ppp-modules | 1 +
.../modules/m68k-virt/scsi-core-modules | 1 +
.../installer/modules/m68k-virt/scsi-modules | 4 +
.../modules/m68k-virt/squashfs-modules | 1 +
.../installer/modules/m68k-virt/udf-modules | 1 +
26 files changed, 366 insertions(+)
create mode 100644 debian/config/m68k/config.virt
create mode 100644 debian/installer/modules/m68k-virt/affs-modules
create mode 100644 debian/installer/modules/m68k-virt/btrfs-modules
create mode 100644 debian/installer/modules/m68k-virt/cdrom-core-modules
create mode 100644 debian/installer/modules/m68k-virt/crc-modules
create mode 100644 debian/installer/modules/m68k-virt/crypto-modules
create mode 100644 debian/installer/modules/m68k-virt/ext4-modules
create mode 100644 debian/installer/modules/m68k-virt/fat-modules
create mode 100644 debian/installer/modules/m68k-virt/fb-modules
create mode 100644 debian/installer/modules/m68k-virt/fuse-modules
create mode 100644 debian/installer/modules/m68k-virt/hfs-modules
create mode 100644 debian/installer/modules/m68k-virt/input-modules
create mode 100644 debian/installer/modules/m68k-virt/isofs-modules
create mode 100644 debian/installer/modules/m68k-virt/kernel-image
create mode 100644 debian/installer/modules/m68k-virt/loop-modules
create mode 100644 debian/installer/modules/m68k-virt/md-modules
create mode 100644 debian/installer/modules/m68k-virt/nbd-modules
create mode 100644 debian/installer/modules/m68k-virt/nic-modules
create mode 100644 debian/installer/modules/m68k-virt/nic-shared-modules
create mode 100644 debian/installer/modules/m68k-virt/ppp-modules
create mode 100644 debian/installer/modules/m68k-virt/scsi-core-modules
create mode 100644 debian/installer/modules/m68k-virt/scsi-modules
create mode 100644 debian/installer/modules/m68k-virt/squashfs-modules
create mode 100644 debian/installer/modules/m68k-virt/udf-modules

diff --git a/debian/config/m68k/config.virt b/debian/config/m68k/config.virt
new file mode 100644
index 000000000000..68fa09ec0e37
--- /dev/null
+++ b/debian/config/m68k/config.virt
@@ -0,0 +1,333 @@
+##
+## file: arch/m68k/Kconfig
+##
+# CONFIG_PM is not set
+
+##
+## file: arch/m68k/Kconfig.cpu
+##
+CONFIG_M68040=y
+
+##
+## file: arch/m68k/Kconfig.debug
+##
+CONFIG_EARLY_PRINTK=y
+
+##
+## file: arch/m68k/Kconfig.devices
+##
+CONFIG_HEARTBEAT=y
+CONFIG_PROC_HARDWARE=y
+CONFIG_SERIAL_CONSOLE=y
+
+##
+## file: arch/m68k/Kconfig.machine
+##
+CONFIG_VIRT=y
+
+##
+## file: block/Kconfig
+##
+# CONFIG_BLK_DEV_INTEGRITY is not set
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_PARTITION_ADVANCED=y
+CONFIG_AMIGA_PARTITION=y
+CONFIG_ATARI_PARTITION=y
+CONFIG_MAC_PARTITION=y
+CONFIG_MSDOS_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+CONFIG_MINIX_SUBPARTITION=y
+CONFIG_SOLARIS_X86_PARTITION=y
+CONFIG_UNIXWARE_DISKLABEL=y
+CONFIG_LDM_PARTITION=y
+CONFIG_LDM_DEBUG=y
+CONFIG_SUN_PARTITION=y
+# CONFIG_KARMA_PARTITION is not set
+CONFIG_SYSV68_PARTITION=y
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+
+##
+## file: crypto/asymmetric_keys/Kconfig
+##
+# CONFIG_ASYMMETRIC_KEY_TYPE is not set
+
+##
+## file: drivers/accessibility/Kconfig
+##
+# CONFIG_ACCESSIBILITY is not set
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_BLK_DEV_FD=m
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_VIRTIO_BLK=m
+# CONFIG_BLK_DEV_RBD is not set
+
+##
+## file: drivers/block/drbd/Kconfig
+##
+# CONFIG_BLK_DEV_DRBD is not set
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_PRINTER=m
+CONFIG_VIRTIO_CONSOLE=m
+# CONFIG_LP_CONSOLE is not set
+# CONFIG_PPDEV is not set
+
+##
+## file drivers/char/hw_random/Kconfig
+##
+CONFIG_HW_RANDOM_VIRTIO=m
+
+##
+## file: drivers/connector/Kconfig
+##
+CONFIG_CONNECTOR=m
+
+##
+## file: drivers/crypto/Kconfig
+##
+# CONFIG_CRYPTO_HW is not set
+
+##
+## file: drivers/firewire/Kconfig
+##
+# CONFIG_FIREWIRE is not set
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+# CONFIG_DRM is not set
+CONFIG_DRM=m
+CONFIG_DRM_VIRTIO_GPU=m
+CONFIG_FB=m
+
+##
+## file: drivers/input/Kconfig
+##
+CONFIG_INPUT_MOUSEDEV=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_UINPUT=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+
+##
+## file: drivers/input/tablet/Kconfig
+##
+CONFIG_INPUT_TABLET=y
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_GENERIC=y
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI=y
+CONFIG_SCSI_VIRTIO=m
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+# CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_N_GSM is not set
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+# CONFIG_FIRMWARE_EDID is not set
+CONFIG_FB_FOREIGN_ENDIAN=y
+## choice: Choice endianness support
+CONFIG_FB_BOTH_ENDIAN=y
+## end choice
+# CONFIG_FB_MODE_HELPERS is not set
+# CONFIG_FB_TILEBLITTING is not set
+
+##
+## file: drivers/virtio/Kconfig
+##
+CONFIG_VIRTIO_INPUT=m
+
+##
+## file: drivers/virt/Kconfig
+##
+CONFIG_VIRT_DRIVERS=m
+
+##
+## file: fs/Kconfig.binfmt
+##
+CONFIG_BINFMT_ELF=y
+CONFIG_BINFMT_MISC=m
+
+##
+## file: fs/adfs/Kconfig
+##
+# CONFIG_ADFS_FS is not set
+
+##
+## file: fs/afs/Kconfig
+##
+# CONFIG_AFS_FS is not set
+
+##
+## file: fs/befs/Kconfig
+##
+# CONFIG_BEFS_FS is not set
+
+##
+## file: fs/bfs/Kconfig
+##
+# CONFIG_BFS_FS is not set
+
+##
+## file: fs/ceph/Kconfig
+##
+# CONFIG_CEPH_FS is not set
+
+##
+## file: fs/dlm/Kconfig
+##
+# CONFIG_DLM is not set
+
+##
+## file: fs/efs/Kconfig
+##
+# CONFIG_EFS_FS is not set
+
+##
+## file: fs/f2fs/Kconfig
+##
+# CONFIG_F2FS_FS is not set
+
+##
+## file: fs/freevxfs/Kconfig
+##
+# CONFIG_VXFS_FS is not set
+
+##
+## file: fs/gfs2/Kconfig
+##
+# CONFIG_GFS2_FS is not set
+
+##
+## file: fs/jfs/Kconfig
+##
+# CONFIG_JFS_FS is not set
+
+##
+## file: fs/ocfs2/Kconfig
+##
+# CONFIG_OCFS2_FS is not set
+
+##
+## file: fs/omfs/Kconfig
+##
+# CONFIG_OMFS_FS is not set
+
+##
+## file: fs/qnx4/Kconfig
+##
+# CONFIG_QNX4FS_FS is not set
+
+##
+## file: fs/reiserfs/Kconfig
+##
+# CONFIG_REISERFS_FS_SECURITY is not set
+
+##
+## file: fs/ubifs/Kconfig
+##
+# CONFIG_UBIFS_FS is not set
+
+##
+## file: init/Kconfig
+##
+CONFIG_USELIB=y
+# CONFIG_AUDIT is not set
+# CONFIG_IKCONFIG is not set
+CONFIG_LOG_BUF_SHIFT=16
+# CONFIG_SCHED_AUTOGROUP is not set
+## choice: Compiler optimization level
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+## end choice
+CONFIG_SGETMASK_SYSCALL=y
+CONFIG_SYSFS_SYSCALL=y
+
+##
+## file: kernel/module/Kconfig
+##
+# CONFIG_MODULE_SIG is not set
+
+##
+## file: kernel/time/Kconfig
+##
+## choice: Timer tick handling
+CONFIG_HZ_PERIODIC=y
+# CONFIG_NO_HZ_IDLE is not set
+# CONFIG_NO_HZ_FULL is not set
+## end choice
+# CONFIG_NO_HZ is not set
+# CONFIG_HIGH_RES_TIMERS is not set
+
+##
+## file: lib/Kconfig.debug
+##
+# CONFIG_FRAME_POINTER is not set
+# CONFIG_DEBUG_FS is not set
+# CONFIG_SCHED_DEBUG is not set
+
+##
+## file: lib/fonts/Kconfig
+##
+CONFIG_FONT_6x11=y
+CONFIG_FONT_PEARL_8x8=y
+# CONFIG_FONT_TER16x32 is not set
+
+##
+## file: mm/Kconfig
+##
+CONFIG_COMPAT_BRK=y
+# CONFIG_COMPACTION is not set
+# CONFIG_MIGRATION is not set
+# CONFIG_KSM is not set
+
+##
+## file: net/9p/Kconfig
+##
+CONFIG_NET_9P=m
+CONFIG_NET_9P_VIRTIO=m
+
+##
+## file: net/ipv6/Kconfig
+##
+CONFIG_IPV6=m
+
+##
+## sound/virtio/Kconfig
+##
+CONFIG_SND_VIRTIO=m
diff --git a/debian/config/m68k/defines b/debian/config/m68k/defines
index 2f32891751c3..078df2d8bb15 100644
--- a/debian/config/m68k/defines
+++ b/debian/config/m68k/defines
@@ -2,6 +2,7 @@
cflags: -ffreestanding
flavours:
m68k
+ virt
default-flavour: m68k
kernel-arch: m68k

@@ -14,3 +15,6 @@ install-stem: vmlinux

[m68k_description]
hardware: Motorola MC68020+ family
+
+[virt_description]
+hardware: QEMU Virtual M68K Machine
diff --git a/debian/installer/kernel-versions b/debian/installer/kernel-versions
index 95dcc03035a3..69a99838bd45 100644
--- a/debian/installer/kernel-versions
+++ b/debian/installer/kernel-versions
@@ -10,6 +10,7 @@ i386 - 686 - - -
i386 - 686-pae - - -
ia64 - itanium - - -
m68k - m68k - y -
+m68k - virt - y -
mips - 4kc-malta - y -
mips - mips32r2eb - y -
mips - octeon - y -
diff --git a/debian/installer/modules/m68k-virt/affs-modules b/debian/installer/modules/m68k-virt/affs-modules
new file mode 100644
index 000000000000..21d616a1cc94
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/affs-modules
@@ -0,0 +1 @@
+#include <affs-modules>
diff --git a/debian/installer/modules/m68k-virt/btrfs-modules b/debian/installer/modules/m68k-virt/btrfs-modules
new file mode 100644
index 000000000000..e261e1388380
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/m68k-virt/cdrom-core-modules b/debian/installer/modules/m68k-virt/cdrom-core-modules
new file mode 100644
index 000000000000..3ff69b48f4fc
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/cdrom-core-modules
@@ -0,0 +1 @@
+#include <cdrom-core-modules>
diff --git a/debian/installer/modules/m68k-virt/crc-modules b/debian/installer/modules/m68k-virt/crc-modules
new file mode 100644
index 000000000000..7e00de705e41
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/m68k-virt/crypto-modules b/debian/installer/modules/m68k-virt/crypto-modules
new file mode 100644
index 000000000000..3a1e862b4cc9
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/m68k-virt/ext4-modules b/debian/installer/modules/m68k-virt/ext4-modules
new file mode 100644
index 000000000000..394c577ce40d
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/m68k-virt/fat-modules b/debian/installer/modules/m68k-virt/fat-modules
new file mode 100644
index 000000000000..274584eb65fb
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/m68k-virt/fb-modules b/debian/installer/modules/m68k-virt/fb-modules
new file mode 100644
index 000000000000..b896f4429edb
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/fb-modules
@@ -0,0 +1,2 @@
+#include <fb-modules>
+virtio_gpu
diff --git a/debian/installer/modules/m68k-virt/fuse-modules b/debian/installer/modules/m68k-virt/fuse-modules
new file mode 100644
index 000000000000..0b6ba0c8c8fe
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/m68k-virt/hfs-modules b/debian/installer/modules/m68k-virt/hfs-modules
new file mode 100644
index 000000000000..57d12f64921c
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/hfs-modules
@@ -0,0 +1 @@
+#include <hfs-modules>
diff --git a/debian/installer/modules/m68k-virt/input-modules b/debian/installer/modules/m68k-virt/input-modules
new file mode 100644
index 000000000000..b14c62442b0a
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/input-modules
@@ -0,0 +1,2 @@
+virtio_console
+virtio_input
diff --git a/debian/installer/modules/m68k-virt/isofs-modules b/debian/installer/modules/m68k-virt/isofs-modules
new file mode 100644
index 000000000000..da4fa9a3c77d
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/m68k-virt/kernel-image b/debian/installer/modules/m68k-virt/kernel-image
new file mode 100644
index 000000000000..1d11b1921dae
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/m68k-virt/loop-modules b/debian/installer/modules/m68k-virt/loop-modules
new file mode 100644
index 000000000000..c1c948fa3316
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/m68k-virt/md-modules b/debian/installer/modules/m68k-virt/md-modules
new file mode 100644
index 000000000000..26115e10b800
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/m68k-virt/nbd-modules b/debian/installer/modules/m68k-virt/nbd-modules
new file mode 100644
index 000000000000..3c9b3e5d426d
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/m68k-virt/nic-modules b/debian/installer/modules/m68k-virt/nic-modules
new file mode 100644
index 000000000000..2512e83950dd
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/nic-modules
@@ -0,0 +1 @@
+#include <nic-modules>
diff --git a/debian/installer/modules/m68k-virt/nic-shared-modules b/debian/installer/modules/m68k-virt/nic-shared-modules
new file mode 100644
index 000000000000..cc84b14dcd10
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/m68k-virt/ppp-modules b/debian/installer/modules/m68k-virt/ppp-modules
new file mode 100644
index 000000000000..1f26aa1ee60e
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/m68k-virt/scsi-core-modules b/debian/installer/modules/m68k-virt/scsi-core-modules
new file mode 100644
index 000000000000..dd65d661433d
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/m68k-virt/scsi-modules b/debian/installer/modules/m68k-virt/scsi-modules
new file mode 100644
index 000000000000..16c5cb13e3cf
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/scsi-modules
@@ -0,0 +1,4 @@
+sg
+
+virtio_scsi
+virtio_blk
diff --git a/debian/installer/modules/m68k-virt/squashfs-modules b/debian/installer/modules/m68k-virt/squashfs-modules
new file mode 100644
index 000000000000..42d77887ad3d
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/m68k-virt/udf-modules b/debian/installer/modules/m68k-virt/udf-modules
new file mode 100644
index 000000000000..b90d7ee9b52e
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
--
2.40.1
John Paul Adrian Glaubitz
2023-06-12 15:20:01 UTC
Permalink
Hi Laurent!

Thanks for the patch!
Post by Laurent Vivier
diff --git a/debian/config/m68k/config.virt b/debian/config/m68k/config.virt
new file mode 100644
index 000000000000..68fa09ec0e37
--- /dev/null
+++ b/debian/config/m68k/config.virt
@@ -0,0 +1,333 @@
+##
+## file: arch/m68k/Kconfig
+##
+# CONFIG_PM is not set
+
+##
+## file: arch/m68k/Kconfig.cpu
+##
+CONFIG_M68040=y
+
+##
+## file: arch/m68k/Kconfig.debug
+##
+CONFIG_EARLY_PRINTK=y
+
+##
+## file: arch/m68k/Kconfig.devices
+##
+CONFIG_HEARTBEAT=y
+CONFIG_PROC_HARDWARE=y
+CONFIG_SERIAL_CONSOLE=y
+
+##
+## file: arch/m68k/Kconfig.machine
+##
+CONFIG_VIRT=y
+
+##
+## file: block/Kconfig
+##
+# CONFIG_BLK_DEV_INTEGRITY is not set
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_PARTITION_ADVANCED=y
+CONFIG_AMIGA_PARTITION=y
+CONFIG_ATARI_PARTITION=y
+CONFIG_MAC_PARTITION=y
+CONFIG_MSDOS_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+CONFIG_MINIX_SUBPARTITION=y
+CONFIG_SOLARIS_X86_PARTITION=y
+CONFIG_UNIXWARE_DISKLABEL=y
+CONFIG_LDM_PARTITION=y
+CONFIG_LDM_DEBUG=y
+CONFIG_SUN_PARTITION=y
+# CONFIG_KARMA_PARTITION is not set
+CONFIG_SYSV68_PARTITION=y
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+
+##
+## file: crypto/asymmetric_keys/Kconfig
+##
+# CONFIG_ASYMMETRIC_KEY_TYPE is not set
+
+##
+## file: drivers/accessibility/Kconfig
+##
+# CONFIG_ACCESSIBILITY is not set
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_BLK_DEV_FD=m
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_VIRTIO_BLK=m
+# CONFIG_BLK_DEV_RBD is not set
+
+##
+## file: drivers/block/drbd/Kconfig
+##
+# CONFIG_BLK_DEV_DRBD is not set
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_PRINTER=m
+CONFIG_VIRTIO_CONSOLE=m
+# CONFIG_LP_CONSOLE is not set
+# CONFIG_PPDEV is not set
+
+##
+## file drivers/char/hw_random/Kconfig
+##
+CONFIG_HW_RANDOM_VIRTIO=m
+
+##
+## file: drivers/connector/Kconfig
+##
+CONFIG_CONNECTOR=m
+
+##
+## file: drivers/crypto/Kconfig
+##
+# CONFIG_CRYPTO_HW is not set
+
+##
+## file: drivers/firewire/Kconfig
+##
+# CONFIG_FIREWIRE is not set
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+# CONFIG_DRM is not set
+CONFIG_DRM=m
+CONFIG_DRM_VIRTIO_GPU=m
+CONFIG_FB=m
+
+##
+## file: drivers/input/Kconfig
+##
+CONFIG_INPUT_MOUSEDEV=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_UINPUT=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+
+##
+## file: drivers/input/tablet/Kconfig
+##
+CONFIG_INPUT_TABLET=y
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_GENERIC=y
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI=y
+CONFIG_SCSI_VIRTIO=m
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+# CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_N_GSM is not set
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+# CONFIG_FIRMWARE_EDID is not set
+CONFIG_FB_FOREIGN_ENDIAN=y
+## choice: Choice endianness support
+CONFIG_FB_BOTH_ENDIAN=y
+## end choice
+# CONFIG_FB_MODE_HELPERS is not set
+# CONFIG_FB_TILEBLITTING is not set
+
+##
+## file: drivers/virtio/Kconfig
+##
+CONFIG_VIRTIO_INPUT=m
+
+##
+## file: drivers/virt/Kconfig
+##
+CONFIG_VIRT_DRIVERS=m
+
+##
+## file: fs/Kconfig.binfmt
+##
+CONFIG_BINFMT_ELF=y
+CONFIG_BINFMT_MISC=m
+
+##
+## file: fs/adfs/Kconfig
+##
+# CONFIG_ADFS_FS is not set
+
+##
+## file: fs/afs/Kconfig
+##
+# CONFIG_AFS_FS is not set
+
+##
+## file: fs/befs/Kconfig
+##
+# CONFIG_BEFS_FS is not set
+
+##
+## file: fs/bfs/Kconfig
+##
+# CONFIG_BFS_FS is not set
+
+##
+## file: fs/ceph/Kconfig
+##
+# CONFIG_CEPH_FS is not set
+
+##
+## file: fs/dlm/Kconfig
+##
+# CONFIG_DLM is not set
+
+##
+## file: fs/efs/Kconfig
+##
+# CONFIG_EFS_FS is not set
+
+##
+## file: fs/f2fs/Kconfig
+##
+# CONFIG_F2FS_FS is not set
+
+##
+## file: fs/freevxfs/Kconfig
+##
+# CONFIG_VXFS_FS is not set
+
+##
+## file: fs/gfs2/Kconfig
+##
+# CONFIG_GFS2_FS is not set
+
+##
+## file: fs/jfs/Kconfig
+##
+# CONFIG_JFS_FS is not set
+
+##
+## file: fs/ocfs2/Kconfig
+##
+# CONFIG_OCFS2_FS is not set
+
+##
+## file: fs/omfs/Kconfig
+##
+# CONFIG_OMFS_FS is not set
+
+##
+## file: fs/qnx4/Kconfig
+##
+# CONFIG_QNX4FS_FS is not set
+
+##
+## file: fs/reiserfs/Kconfig
+##
+# CONFIG_REISERFS_FS_SECURITY is not set
+
+##
+## file: fs/ubifs/Kconfig
+##
+# CONFIG_UBIFS_FS is not set
+
+##
+## file: init/Kconfig
+##
+CONFIG_USELIB=y
+# CONFIG_AUDIT is not set
+# CONFIG_IKCONFIG is not set
+CONFIG_LOG_BUF_SHIFT=16
+# CONFIG_SCHED_AUTOGROUP is not set
+## choice: Compiler optimization level
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+## end choice
+CONFIG_SGETMASK_SYSCALL=y
+CONFIG_SYSFS_SYSCALL=y
+
+##
+## file: kernel/module/Kconfig
+##
+# CONFIG_MODULE_SIG is not set
+
+##
+## file: kernel/time/Kconfig
+##
+## choice: Timer tick handling
+CONFIG_HZ_PERIODIC=y
+# CONFIG_NO_HZ_IDLE is not set
+# CONFIG_NO_HZ_FULL is not set
+## end choice
+# CONFIG_NO_HZ is not set
+# CONFIG_HIGH_RES_TIMERS is not set
+
+##
+## file: lib/Kconfig.debug
+##
+# CONFIG_FRAME_POINTER is not set
+# CONFIG_DEBUG_FS is not set
+# CONFIG_SCHED_DEBUG is not set
+
+##
+## file: lib/fonts/Kconfig
+##
+CONFIG_FONT_6x11=y
+CONFIG_FONT_PEARL_8x8=y
+# CONFIG_FONT_TER16x32 is not set
+
+##
+## file: mm/Kconfig
+##
+CONFIG_COMPAT_BRK=y
+# CONFIG_COMPACTION is not set
+# CONFIG_MIGRATION is not set
+# CONFIG_KSM is not set
+
+##
+## file: net/9p/Kconfig
+##
+CONFIG_NET_9P=m
+CONFIG_NET_9P_VIRTIO=m
+
+##
+## file: net/ipv6/Kconfig
+##
+CONFIG_IPV6=m
+
+##
+## sound/virtio/Kconfig
+##
+CONFIG_SND_VIRTIO=m
I think it should be enough to provide a partial configuration only
which overrides the CONFIG defines from the generic kernel.
Post by Laurent Vivier
https://salsa.debian.org/kernel-team/linux/-/tree/master/debian/config/kernelarch-sparc
diff --git a/debian/config/m68k/defines b/debian/config/m68k/defines
index 2f32891751c3..078df2d8bb15 100644
--- a/debian/config/m68k/defines
+++ b/debian/config/m68k/defines
@@ -2,6 +2,7 @@
cflags: -ffreestanding
m68k
+ virt
This should be "m68k-virt".
Post by Laurent Vivier
default-flavour: m68k
kernel-arch: m68k
@@ -14,3 +15,6 @@ install-stem: vmlinux
[m68k_description]
hardware: Motorola MC68020+ family
+
+[virt_description]
And this "m68k-virt_description".

Without the additional "m68k-" prefix, the resulting kernel package would be
called "linux-image-virt" which would be not unambiguous enough.
Post by Laurent Vivier
+hardware: QEMU Virtual M68K Machine
diff --git a/debian/installer/kernel-versions b/debian/installer/kernel-versions
index 95dcc03035a3..69a99838bd45 100644
--- a/debian/installer/kernel-versions
+++ b/debian/installer/kernel-versions
@@ -10,6 +10,7 @@ i386 - 686 - - -
i386 - 686-pae - - -
ia64 - itanium - - -
m68k - m68k - y -
+m68k - virt - y -
Same here, "m68k-virt".
Post by Laurent Vivier
mips - 4kc-malta - y -
mips - mips32r2eb - y -
mips - octeon - y -
diff --git a/debian/installer/modules/m68k-virt/affs-modules b/debian/installer/modules/m68k-virt/affs-modules
new file mode 100644
index 000000000000..21d616a1cc94
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/affs-modules
@@ -0,0 +1 @@
+#include <affs-modules>
diff --git a/debian/installer/modules/m68k-virt/btrfs-modules b/debian/installer/modules/m68k-virt/btrfs-modules
new file mode 100644
index 000000000000..e261e1388380
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/m68k-virt/cdrom-core-modules b/debian/installer/modules/m68k-virt/cdrom-core-modules
new file mode 100644
index 000000000000..3ff69b48f4fc
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/cdrom-core-modules
@@ -0,0 +1 @@
+#include <cdrom-core-modules>
diff --git a/debian/installer/modules/m68k-virt/crc-modules b/debian/installer/modules/m68k-virt/crc-modules
new file mode 100644
index 000000000000..7e00de705e41
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/m68k-virt/crypto-modules b/debian/installer/modules/m68k-virt/crypto-modules
new file mode 100644
index 000000000000..3a1e862b4cc9
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/m68k-virt/ext4-modules b/debian/installer/modules/m68k-virt/ext4-modules
new file mode 100644
index 000000000000..394c577ce40d
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/m68k-virt/fat-modules b/debian/installer/modules/m68k-virt/fat-modules
new file mode 100644
index 000000000000..274584eb65fb
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/m68k-virt/fb-modules b/debian/installer/modules/m68k-virt/fb-modules
new file mode 100644
index 000000000000..b896f4429edb
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/fb-modules
@@ -0,0 +1,2 @@
+#include <fb-modules>
+virtio_gpu
diff --git a/debian/installer/modules/m68k-virt/fuse-modules b/debian/installer/modules/m68k-virt/fuse-modules
new file mode 100644
index 000000000000..0b6ba0c8c8fe
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/m68k-virt/hfs-modules b/debian/installer/modules/m68k-virt/hfs-modules
new file mode 100644
index 000000000000..57d12f64921c
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/hfs-modules
@@ -0,0 +1 @@
+#include <hfs-modules>
diff --git a/debian/installer/modules/m68k-virt/input-modules b/debian/installer/modules/m68k-virt/input-modules
new file mode 100644
index 000000000000..b14c62442b0a
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/input-modules
@@ -0,0 +1,2 @@
+virtio_console
+virtio_input
diff --git a/debian/installer/modules/m68k-virt/isofs-modules b/debian/installer/modules/m68k-virt/isofs-modules
new file mode 100644
index 000000000000..da4fa9a3c77d
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/m68k-virt/kernel-image b/debian/installer/modules/m68k-virt/kernel-image
new file mode 100644
index 000000000000..1d11b1921dae
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/m68k-virt/loop-modules b/debian/installer/modules/m68k-virt/loop-modules
new file mode 100644
index 000000000000..c1c948fa3316
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/m68k-virt/md-modules b/debian/installer/modules/m68k-virt/md-modules
new file mode 100644
index 000000000000..26115e10b800
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/m68k-virt/nbd-modules b/debian/installer/modules/m68k-virt/nbd-modules
new file mode 100644
index 000000000000..3c9b3e5d426d
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/m68k-virt/nic-modules b/debian/installer/modules/m68k-virt/nic-modules
new file mode 100644
index 000000000000..2512e83950dd
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/nic-modules
@@ -0,0 +1 @@
+#include <nic-modules>
diff --git a/debian/installer/modules/m68k-virt/nic-shared-modules b/debian/installer/modules/m68k-virt/nic-shared-modules
new file mode 100644
index 000000000000..cc84b14dcd10
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/m68k-virt/ppp-modules b/debian/installer/modules/m68k-virt/ppp-modules
new file mode 100644
index 000000000000..1f26aa1ee60e
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/m68k-virt/scsi-core-modules b/debian/installer/modules/m68k-virt/scsi-core-modules
new file mode 100644
index 000000000000..dd65d661433d
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/m68k-virt/scsi-modules b/debian/installer/modules/m68k-virt/scsi-modules
new file mode 100644
index 000000000000..16c5cb13e3cf
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/scsi-modules
@@ -0,0 +1,4 @@
+sg
+
+virtio_scsi
+virtio_blk
diff --git a/debian/installer/modules/m68k-virt/squashfs-modules b/debian/installer/modules/m68k-virt/squashfs-modules
new file mode 100644
index 000000000000..42d77887ad3d
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/m68k-virt/udf-modules b/debian/installer/modules/m68k-virt/udf-modules
new file mode 100644
index 000000000000..b90d7ee9b52e
--- /dev/null
+++ b/debian/installer/modules/m68k-virt/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
I think we might not need this separate folder for d-i if we use the "kernelarch" approach
that arm, mips, powerpc and sparc uses. See the "kernelarch-$ARCH" folders.

Adrian
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
John Paul Adrian Glaubitz
2023-07-24 09:30:02 UTC
Permalink
Hi Laurent!
Post by Laurent Vivier
These changes to the linux package are needed to create kernel .debs
and .udebs with all the needed modules for the QEMU m68k virt machine.
These is also needed to create the debian-installer that will be usable
with the virt machine.
I played around with the Debian kernel configuration a bit yesterday and
we actually only need a simple kernel configuration file for the -virt
flavor:

***@nofan:..linux/linux-6.4.4> cat debian/config/m68k/config.virt
##
## file: arch/m68k/Kconfig.machine
##
CONFIG_VIRT=y
***@nofan:..linux/linux-6.4.4>

We should actually align the m68k kernel configuration with the one for Alpha
which has one common config file as well as separate configuration files for
both a generic kernel and the smp kernel [1].

We should have the following files in the end:

- config
- config.m68k-generic
- config.m68k-virt

For editing the configuration, it's normally recommended to follow this guide [2]
and check the configuration with the kconfigeditor2 script [3].

However, in our case it should be enough to split the configuration items specific
to Amiga, Atari and Mac to the config.m68k-generic configuration file, leave the
rest in config and just add CONFIG_VIRT=y to config.m68k-virt as show above.

Adrian
Post by Laurent Vivier
[1] https://salsa.debian.org/kernel-team/linux/-/tree/master/debian/config/alpha
[2] https://kernel-team.pages.debian.net/kernel-handbook/ch-common-tasks.html#id-1.6.6.4
[3] https://salsa.debian.org/kernel-team/kernel-team/-/tree/master/utils/kconfigeditor2
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
Loading...