[PATCH 0/10] Add support for VUMFAT filesystem
From: Adrian McMenamin
Date: Fri Apr 10 2026 - 10:13:00 EST
The Visual Memory Unit (VMU) for a Sega Dreamcast includes a small slab
of flash memory which is formatted with a file allocation table (FAT)
based file system. This patch adds support for that file system in a
hardware independent way (ie you can build and mount a VMUFAT filesystem
on other systems than a Dreamcast).
The code supports the Dreamcast factory settings and other volume sizes.
It is neither mtd nor Dreamcast/SH dependent.
The patch set includes new documentation, modifications to Kconfig, the filesystem code (in inode.c and super.c and the vmufat.h) and adds a new 'magic number' based on the VMUFAT format.
The code has been tested on a Dreamcast (and built with a 32 bit
compiler) and on x86_64.
Tools to format a filesystem are available here: https://github.com/mcmenaminadrian/mkfs.vmufat
Signed-off-by: Adrian McMenamin <adrianmcmenamin@xxxxxxxxx>
---
Documentation/filesystems/index.rst | 1 +
Documentation/filesystems/vmufat.rst | 127 ++++
fs/Kconfig | 1 +
fs/Makefile | 1 +
fs/vmufat/Kconfig | 14 +
fs/vmufat/Makefile | 7 +
fs/vmufat/inode.c | 1017 ++++++++++++++++++++++++++
fs/vmufat/super.c | 581 +++++++++++++++
fs/vmufat/vmufat.h | 126 ++++
include/uapi/linux/magic.h | 1 +
10 files changed, 1876 insertions(+)
create mode 100644 Documentation/filesystems/vmufat.rst
create mode 100644 fs/vmufat/Kconfig
create mode 100644 fs/vmufat/Makefile
create mode 100644 fs/vmufat/inode.c
create mode 100644 fs/vmufat/super.c
create mode 100644 fs/vmufat/vmufat.h