soc/imgtec/pistachio: Implement hard_reset()
[coreboot.git] / Documentation / submodules.txt
blob631e35130302e38f23987a38772210c72b7c648c
1 Use of git submodules in coreboot
2 =================================
3 coreboot uses git submodules to keep certain parts of the tree separate,
4 with two major use cases:
6 First, we use a vendor tool by NVIDIA for systems based on their SoC
7 and since they publish it through git, we can just import it into our
8 tree using submodules.
10 Second, lots of boards these days require binaries and we want to keep
11 them separate from coreboot proper to clearly delineate shiny Open Source
12 from ugly blobs.
13 Since we don't want to impose blobs on users who really don't need them,
14 that repository is only downloaded and checked out on explicit request.
16 Handling submodules
17 -------------------
18 For the most part, submodules should be automatically checked out on the
19 first execution of the coreboot Makefile.
21 To manually fetch all repositories (eg. when you want to prepare the tree
22 for archiving, or to use it without network access), run
24     $ git submodule update --init --checkout
26 This also checks out the binaries below `3rdparty/`
28 Mirroring coreboot
29 ------------------
30 When running a coreboot mirror to checkout from, for full operation, you
31 should also mirror the blobs and nvidia-cbootimage repository, and place
32 them in the same directory as the coreboot repository mirror.
34 That is, when residing in coreboot's repository, `cd ../blobs.git`
35 should move you to the blobs repository.
37 With that, no matter what the URL of your coreboot repository is, the
38 git client (of a sufficiently new version) is able to pick up the other
39 repositories transparently.
41 Minimum requirements
42 --------------------
43 git needs to be able to handle relative paths to submodule repositories,
44 and it needs to know about non-automatic submodules.
46 For these features, we require git version 1.7.6.1 or newer.