Skip to content

Complete Tasks

Nate DeSimone edited this page Feb 21, 2022 · 10 revisions

These tasks have already been completed and are examples of successful projects from prior years.

Table of Contents

Previously Complete Projects

GSoC 2021

ext4 driver

Develop a read-only ext2 filesystem driver. http://en.wikipedia.org/wiki/Ext2

More information: Tasks-ext2 file-system driver

Enable Clang/LLVM Build for Microsoft Windows

LLVM support in EDK II is currently limited to Linux builds. Getting LLVM running on Windows would enable the TianoCore project to support Clang and the LLVM toolchain more robustly. Microsoft Windows 10 should be the primary target.

Terminal driver improvements

Optimize cursor motion sequences; support Linux/UNIX standard (xterm/konsole/gnome-terminal/etc.) key codes and line-drawing characters (currently one must set their terminal emulator to use code page 437 for correct line drawing.)

More information: Tasks-Terminal-driver-improvements

GSoC 2012

USB-to-serial driver

Develop a USB driver for a common USB-to-serial adapter.

More information: Tasks-USB Serial Adapter driver

Other Completed Projects

Shell editor improvements

Various improvements for the Shell editor

More information: Tasks-Text Editor

Optimize OVMF for Xen HVM domains

Add Xen specific support in OVMF to improve boot & runtime performance. http://www.xen.org/

Port EmulatorPkg to Windows

Port EmulatorPkg to Microsoft Windows (32/64 bit), as a replacement for NT32.

  • Difficulty: Medium
  • Language: C
  • Mentor:
  • Suggested by: @ajfish
More information: Tasks-EmulatorPkg for Windows

Add Visual Studio 2017 Support

Microsoft Visual Studio will be released March 7, 2017. Add VS2017 build support to EDK II.

Port Intel Firmware Engine SDK Extensions to OVMF

Intel Firmware Engine adds UserExtensions in the SDK to describe connections between modules and module parameters (as "Patchable In Binary" PCDs). This enables binary distribution of configurable firmware components. Porting these extensions to a branch of OVMF would allow development and testing of these concepts on a virtual platform.

  • Status: This application has EOL'd as of Aug 2019
  • Languages: C, Python
  • Mentor: @jcarsey

Enable Xen Support in OVMF

Get Xen to boot UEFI with OVMF.

  • Difficulty: Hard (depending on tasks taken on)
  • Language: C
  • Mentor: andreiwarkentin, @jljusten
  • Suggested by: andreiwarkentin
  • Status: Available in main edk2 tree

Multiprocessor support in UefiCpuPkg/CpuDxe

Enable multiprocessor support for IA32 & X64 within UefiCpuPkg/CpuDxe. (Implement MdePkg/Include/Protocol/MpService.h)

  • Difficulty: Medium
  • Language: Assembly, C
  • Mentor:
  • Suggested by: @jljusten
  • Status: Available in EDK II tree
More information: Tasks-UefiCpuPkg-CpuDxe MP support

Enable Link-time Code Optimization for Linux builds

Enable Link-time Code Optimization on Linux for either GCC or LLVM/CLANG. http://gcc.gnu.org/wiki/LinkTimeOptimization

This feature hopefully would significantly reduce code generation size for Linux based builds.

  • Difficulty: Medium
  • Language: C
  • Mentor:
  • Suggested by: @ajfish, @jljusten
  • Status: Available in GCC5 & CLANG38 toolchains

See Also

Clone this wiki locally