https://github.com/openSIL/openSIL Skip to content Toggle navigation Sign up * Product + Actions Automate any workflow + Packages Host and manage packages + Security Find and fix vulnerabilities + Codespaces Instant dev environments + Copilot Write better code with AI + Code review Manage code changes + Issues Plan and track work + Discussions Collaborate outside of code Explore + All features + Documentation + GitHub Skills + Blog * Solutions For + Enterprise + Teams + Startups + Education By Solution + CI/CD & Automation + DevOps + DevSecOps Case Studies + Customer Stories + Resources * Open Source + GitHub Sponsors Fund open source developers + The ReadME Project GitHub community articles Repositories + Topics + Trending + Collections * Pricing [ ] * # In this repository All GitHub | Jump to | * No suggested jump to results * # In this repository All GitHub | Jump to | * # In this organization All GitHub | Jump to | * # In this repository All GitHub | Jump to | Sign in Sign up You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. {{ message }} openSIL / openSIL Public * Notifications * Fork 2 * Star 47 47 stars 2 forks Star Notifications * Code * Issues 1 * Pull requests 0 * Projects 0 * Security * Insights More * Code * Issues * Pull requests * Projects * Security * Insights openSIL/openSIL This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. main Switch branches/tags [ ] Branches Tags Could not load branches Nothing to show {{ refName }} default View all branches Could not load tags Nothing to show {{ refName }} default View all tags Name already in use A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch? Cancel Create 1 branch 0 tags Code * Local * Codespaces * Clone HTTPS GitHub CLI [https://github.com/o] Use Git or checkout with SVN using the web URL. [gh repo clone openSI] Work fast with our official CLI. Learn more about the CLI. * Open with GitHub Desktop * Download ZIP Sign In Required Please sign in to use Codespaces. Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Launching GitHub Desktop If nothing happens, download GitHub Desktop and try again. Launching Xcode If nothing happens, download Xcode and try again. Launching Visual Studio Code Your codespace will open once ready. There was a problem preparing your codespace, please try again. Latest commit @pbgrimes pbgrimes Update README info on tool chain ... d7e33b8 Jun 14, 2023 Update README info on tool chain Added note that support for meson build is forthcoming. d7e33b8 Git stats * 7 commits Files Permalink Failed to load latest commit information. Type Name Latest commit message Commit time Documentation Initial commit. June 14, 2023 08:35 Include Initial commit. June 14, 2023 08:35 LICENSE Initial commit. June 14, 2023 08:35 configs Initial commit. June 14, 2023 08:35 util Initial commit. June 14, 2023 08:35 xPRF Initial commit. June 14, 2023 08:35 xSIM Initial commit. June 14, 2023 08:35 xUSL Initial commit. June 14, 2023 08:35 .gitattributes Initial commit. June 14, 2023 08:35 .gitignore Update .gitignore June 14, 2023 14:25 CODEOWNERS Initial commit. June 14, 2023 08:35 Kconfig Initial commit. June 14, 2023 08:35 Kconfig.IP Initial commit. June 14, 2023 08:35 Kconfig.Plat Initial commit. June 14, 2023 08:35 Kconfig.Skt Initial commit. June 14, 2023 08:35 Kconfig.SoC Initial commit. June 14, 2023 08:35 README.md Update README info on tool chain June 14, 2023 16:44 amd-checkers.txt Initial commit. June 14, 2023 08:35 cert-c-all.config Initial commit. June 14, 2023 08:35 flist-opensil_config.txt Initial commit. June 14, 2023 08:35 json.sh Initial commit. June 14, 2023 08:35 meson.build Initial commit. June 14, 2023 08:35 meson_options.txt Initial commit. June 14, 2023 08:35 View code [ ] AMD openSIL: Proof-of-Concept (POC) About the project: AMD openSIL open-source projected roadmap: Evaluation Only Phases (no support for production implementations): Production Phase: Getting Started: Forthcoming items: License: README.md AMD openSIL: Proof-of-Concept (POC) About the project: The AMD open Silicon Initialization Library (openSIL) is a collection of C libraries which can be integrated into an x86 host firmware, by directly compiling source or by linking with static libraries. AMD openSIL consists of three statically linked libraries; xSIM (x86 Silicon Initialization Libraries), xPRF (x86 Platform Reference Library), and xUSL (x86 Utilities & Services Library). These libraries can be statically linked to a host firmware during compile/ link time. Source for the libraries resides under xSIM, xPRF, and xUSL. Formal documentation is in final review and will be uploaded to the GitHub project page when available. The AMD blog "Empowering The Industry with Open System Firmware - AMD openSIL" provides a starting point to grasp the openSIL design goals. AMD openSIL open-source projected roadmap: Evaluation Only Phases (no support for production implementations): 1. Phase I - Internal POC (complete). 2. Phase II - AMD openSIL POC open-sourced for evaluation on AMD 4th Gen EPYC(tm) based CRB (complete: this source). 3. Phase III - POC openSIL POC open-sourced, trending Q4 2024. Production Phase: 4. Phase IV: - AMD openSIL POR with UEFI Host FW trending 2026. Getting Started: 1. Clone Repository: 1. Establish your GitHub user account and your SSH keys (details are beyond this doc) 2. Open a command/terminal window 3. Run git to obtain the project: > git clone git@github.com:openSIL/openSIL.git 2. Establish the project environment variables. + You will find a shell/cmd file (SetSilEnv) in the 'util' directory for this purpose. 3. Configure your project + This release of the AMD openSIL libraries supports AMD 4th Gen EPYC(tm) on the Onyx CRB only. + The openSIL project uses the python version of the Kconfig tool for this purpose. (See GitHub Kconfiglib). + Run the interactive configuration UI: > python %PYTHONPATH%\ menuconfig.py Kconfig 4. Build openSIL Libraries: + The AMD openSIL library build is performed using 'Meson build', an open source python tool (see GitHub). Several targets allow a focused build for xUSL, xSIM, xPRF or openSIL (xUSL + xSIM + XPRF) static libraries. AMD openSIL specific Meson build documentation is not yet available. + The project can be built for 32bit and/or 64bit compilation and static libraries. + The project supports both the GNU/GCC or LLVM/clang tool chain and the Microsoft Visual C tool chain. Generally it is recommended to use the latest versions of these tool chains. Specific versions being used today (June 2023) are: o GCC - v10.2.0 o llvm/clang - v10.0 o MSVC v19.00.24210 (Visual Studio 2019) 5. Integrate with Host Firmware: + AMD has a separate repository ("opensil-uefi-interface" ) for helping customers integrate openSIL with previous UEFI-AGESA installations. Please contact your AMD representative for more information. 6. Test Host Firmware on reference platform + All AMD openSIL testing has been performed on AMD an AMD reference platform (Onyx CRB). + Present list of supported reference platforms is shown in the following table. Market AMD Processor Firmware Reference Platform Segment Family Model Name Server F19M10 UEFI Onyx Forthcoming items: * Formal documentation to be published to this repository. * Continuous integration (CI) tools will be implemented as a pre-requisite to merging pull requests. * Fix for meson build errors (current version tested with Visual Studio 2019). License: The MIT License (MIT): https://opensource.org/license/mit/ About No description, website, or topics provided. Resources Readme Stars 47 stars Watchers 6 watching Forks 2 forks Report repository Releases No releases published Packages 0 No packages published Contributors 3 * @pbgrimes pbgrimes Paul Grimes * @heatd heatd Pedro Falcato * @jgualari jgualari Languages * C 83.3% * Python 14.4% * Assembly 1.0% * Meson 0.8% * Shell 0.3% * Batchfile 0.2% Footer (c) 2023 GitHub, Inc. Footer navigation * Terms * Privacy * Security * Status * Docs * Contact GitHub * Pricing * API * Training * Blog * About You can't perform that action at this time.