Git Product home page Git Product logo

ntfargo / kernel Goto Github PK

View Code? Open in Web Editor NEW

This project forked from googlestadia/kernel

0.0 0.0 0.0 1.67 GB

The Stadia instance kernel.

License: Other

Shell 0.29% C++ 0.03% Python 0.13% Perl 0.13% C 98.05% Clojure 0.01% Assembly 1.07% Awk 0.01% UnrealScript 0.01% Makefile 0.24% XS 0.01% Yacc 0.01% Lex 0.01% M4 0.01% Dockerfile 0.01% Roff 0.02% Gherkin 0.01% sed 0.01% SmPL 0.02% Raku 0.01%

kernel's Introduction

Stadia kernel

This repo contains the Stadia instance kernel and build system.

External modules

The Stadia kernel integrates an external version of the amdgpu kernel module. The module is imported as a submodule in external/amd-cloudgpu. The built-in amdgpu module is not compiled.

Configuring

Stadia uses a custom kernel configuration. To modify it, copy it to the repo root as .config and run make menuconfig. Once edits and testing are done, copy .config back to the kokoro directory and send a merge request with the changes.

Building

Stadia uses a build script that invokes the kernel's build system and performs additional post-build processing to yield a bootable VM disk image. The build is performed in a Docker container maintained on Google Cloud.

Prior to building for the first time, you will need to install Docker.

Before building, ensure that submodules have been updated with git submodule update --init --depth=1 or a similar command.

To build, run sudo ./kokoro/docker/glinux_launcher.sh. You can optionally pass a build directory as an argument.

amdgpu firmware

The Stadia boot image includes a custom initramfs which includes a squashfs filesystem (the "kernel root filesystem" or "krootfs") which includes the set of amdgpu firmware files required on Stadia. The build script downloads a set of firmware files from linux-firmware by default. To override the default firmware bundle, set the environment variables AMDGPU_FIRMWARE_URL to the download URL and AMDGPU_FIRMWARE_SHA256 to the sha256 checksum of a gzipped tar archive containing the firmware files. When using sudo, the environment variables have to be set as part of the command, otherwise they get filtered out.

sudo AMDGPU_FIRMWARE_URL=... AMDGPU_FIRMWARE_SHA256=... ./kokoro/docker/glinux_launcher.sh

Contributing

Direct contributions to this kernel are welcome in the form of Merge Requests. Alternatively, submit your patch to upstream Linux and then open an issue for the patch to be merged.

Linux kernel

There are several guides for kernel developers and users. These guides can be rendered in a number of formats, like HTML and PDF. Please read Documentation/admin-guide/README.rst first.

In order to build the documentation, use make htmldocs or make pdfdocs. The formatted documentation can also be read online at:

https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory, several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the requirements for building and running the kernel, and information about the problems which may result by upgrading your kernel.

kernel's People

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.