[Patch v3 0/3] Ext4Pkg: Add Ext4Pkg
Pedro Falcato
This patch-set adds Ext4Pkg, a package designed to hold various drivers and
utilities related to the EXT4 filesystem. Right now, it holds a single read-only UEFI EXT4 driver (Ext4Dxe), which consumes the DISK_IO, BLOCK_IO and DISK_IO2 protocols and produce EFI_FILE_PROTOCOL and EFI_SIMPLE_FILE_SYSTEM_PROTOCOL; this driver allows the mounting of EXT4 partitions and the reading of their contents. A relevant RFC discussion, which includes a more in-depth walkthrough of EXT4 internals and driver limitations is available at https://edk2.groups.io/g/devel/topic/84368561. This patch set is version 3 and attempts to address issues raised by the community in v2's code review. Cc: Leif Lindholm <leif@nuviainc.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Bret Barkelew <Bret.Barkelew@microsoft.com> Pedro Falcato (3): Ext4Pkg: Add Ext4Pkg.dec and Ext4Pkg.uni. Ext4Pkg: Add Ext4Dxe driver. Ext4Pkg: Add .DSC file. Features/Ext4Pkg/Ext4Dxe/BlockGroup.c | 228 ++++++ Features/Ext4Pkg/Ext4Dxe/Collation.c | 173 +++++ Features/Ext4Pkg/Ext4Dxe/Crc16.c | 75 ++ Features/Ext4Pkg/Ext4Dxe/Crc32c.c | 84 ++ Features/Ext4Pkg/Ext4Dxe/Directory.c | 498 ++++++++++++ Features/Ext4Pkg/Ext4Dxe/DiskUtil.c | 113 +++ Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h | 453 +++++++++++ Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.c | 808 +++++++++++++++++++ Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h | 1038 +++++++++++++++++++++++++ Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.inf | 149 ++++ Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.uni | 15 + Features/Ext4Pkg/Ext4Dxe/Extents.c | 595 ++++++++++++++ Features/Ext4Pkg/Ext4Dxe/File.c | 787 +++++++++++++++++++ Features/Ext4Pkg/Ext4Dxe/Inode.c | 465 +++++++++++ Features/Ext4Pkg/Ext4Dxe/Partition.c | 125 +++ Features/Ext4Pkg/Ext4Dxe/Superblock.c | 297 +++++++ Features/Ext4Pkg/Ext4Pkg.dec | 17 + Features/Ext4Pkg/Ext4Pkg.dsc | 68 ++ Features/Ext4Pkg/Ext4Pkg.uni | 14 + 19 files changed, 6002 insertions(+) create mode 100644 Features/Ext4Pkg/Ext4Dxe/BlockGroup.c create mode 100644 Features/Ext4Pkg/Ext4Dxe/Collation.c create mode 100644 Features/Ext4Pkg/Ext4Dxe/Crc16.c create mode 100644 Features/Ext4Pkg/Ext4Dxe/Crc32c.c create mode 100644 Features/Ext4Pkg/Ext4Dxe/Directory.c create mode 100644 Features/Ext4Pkg/Ext4Dxe/DiskUtil.c create mode 100644 Features/Ext4Pkg/Ext4Dxe/Ext4Disk.h create mode 100644 Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.c create mode 100644 Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.h create mode 100644 Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.inf create mode 100644 Features/Ext4Pkg/Ext4Dxe/Ext4Dxe.uni create mode 100644 Features/Ext4Pkg/Ext4Dxe/Extents.c create mode 100644 Features/Ext4Pkg/Ext4Dxe/File.c create mode 100644 Features/Ext4Pkg/Ext4Dxe/Inode.c create mode 100644 Features/Ext4Pkg/Ext4Dxe/Partition.c create mode 100644 Features/Ext4Pkg/Ext4Dxe/Superblock.c create mode 100644 Features/Ext4Pkg/Ext4Pkg.dec create mode 100644 Features/Ext4Pkg/Ext4Pkg.dsc create mode 100644 Features/Ext4Pkg/Ext4Pkg.uni -- 2.32.0
|
|