update docs/maintain as per audit 1
Signed-off-by: Leah Rowe <info@minifree.org>master
parent
66a363ef77
commit
2898b5b8f6
|
@ -120,12 +120,6 @@ The files under `bin/` are provided in regular Canoeboot releases.
|
||||||
**These** are the ROM images that you should flash. Do *not* flash the ROM
|
**These** are the ROM images that you should flash. Do *not* flash the ROM
|
||||||
images contained under `elf/`!
|
images contained under `elf/`!
|
||||||
|
|
||||||
cbutils/
|
|
||||||
---------------
|
|
||||||
|
|
||||||
The build system compiles `cbfstool` and `ifdtool`, from coreboot, and then
|
|
||||||
places the executables here for use on coreboot ROM images.
|
|
||||||
|
|
||||||
elf/
|
elf/
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
|
@ -149,6 +143,10 @@ cbmk in your own custom coreboot ROM (that you didn't build with cbmk).
|
||||||
This is only used by the build system, but these images are *not* provided in
|
This is only used by the build system, but these images are *not* provided in
|
||||||
releases (only the images under `bin/` are provided).
|
releases (only the images under `bin/` are provided).
|
||||||
|
|
||||||
|
As of Canoeboot 20240612, the `elf/` directory must be used by default for all
|
||||||
|
builds, in an effort to make exclusive use of *out-of-source builds*. As such,
|
||||||
|
the `cbutils` directory is no longer used.
|
||||||
|
|
||||||
release/
|
release/
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
|
@ -461,6 +459,7 @@ as:
|
||||||
* `release="n"` (example entry)
|
* `release="n"` (example entry)
|
||||||
* `xtree="default"` (example entry)
|
* `xtree="default"` (example entry)
|
||||||
* `tree_depend="default"` (example entry)
|
* `tree_depend="default"` (example entry)
|
||||||
|
* `grubtree="nvme"` (example entry)
|
||||||
|
|
||||||
The `tree` value refers to `config/coreboot/TREE`; in other words, a given
|
The `tree` value refers to `config/coreboot/TREE`; in other words, a given
|
||||||
target could specify a name other than its own as the tree; it would then
|
target could specify a name other than its own as the tree; it would then
|
||||||
|
@ -524,6 +523,9 @@ a given board; two trees may use the same crossgcc as each other.
|
||||||
The `tree_depend` option means that a given tree needs another tree, defined
|
The `tree_depend` option means that a given tree needs another tree, defined
|
||||||
by this variable, to also be present.
|
by this variable, to also be present.
|
||||||
|
|
||||||
|
The `grubtree` option specifies which GRUB tree to use. If unset, it defers to
|
||||||
|
the `default` GRUB tree.
|
||||||
|
|
||||||
### config/coreboot/BOARDNAME/config/
|
### config/coreboot/BOARDNAME/config/
|
||||||
|
|
||||||
Files in this directory are *coreboot* configuration files.
|
Files in this directory are *coreboot* configuration files.
|
||||||
|
@ -630,18 +632,18 @@ of their own; for example, `config/grub/` exists.
|
||||||
Multiple files exist here, and they are *concatenated* in a temporary file by
|
Multiple files exist here, and they are *concatenated* in a temporary file by
|
||||||
cbmk, which is then scanned to find information about projects.
|
cbmk, which is then scanned to find information about projects.
|
||||||
|
|
||||||
config/grub/
|
GRUB config
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
### config/grub/background
|
### config/data/grub/background
|
||||||
|
|
||||||
Splash screen images applied duing startup when using the GRUB payload.
|
Splash screen images applied duing startup when using the GRUB payload.
|
||||||
|
|
||||||
### config/grub/background/background1024x768.png
|
### config/data/grub/background/background1024x768.png
|
||||||
|
|
||||||
Used on ThinkPad X60 and T60.
|
Used on ThinkPad X60 and T60.
|
||||||
|
|
||||||
### config/grub/background/background1280x800.png
|
### config/data/grub/background/background1280x800.png
|
||||||
|
|
||||||
Used on all other machines, besides X60 and T60 thinkpads.
|
Used on all other machines, besides X60 and T60 thinkpads.
|
||||||
|
|
||||||
|
@ -651,23 +653,15 @@ example, `config/coreboot/x60/target.cfg` specifies this:
|
||||||
|
|
||||||
grub_background="background1024x768.png"
|
grub_background="background1024x768.png"
|
||||||
|
|
||||||
### config/grub/background/COPYING
|
### config/data/grub/background/COPYING
|
||||||
|
|
||||||
Licensing info for GRUB bootsplash images.
|
Licensing info for GRUB bootsplash images.
|
||||||
|
|
||||||
### config/grub/config/
|
### config/grub/TREE/config/
|
||||||
|
|
||||||
GRUB configuration files.
|
GRUB configuration files.
|
||||||
|
|
||||||
### config/grub/config/AUTHORS
|
### config/grub/TREE/config/grub.cfg
|
||||||
|
|
||||||
Author info for GRUB configuration files.
|
|
||||||
|
|
||||||
### config/grub/config/COPYING
|
|
||||||
|
|
||||||
Licensing info for GRUB configuration files.
|
|
||||||
|
|
||||||
### config/grub/config/grub.cfg
|
|
||||||
|
|
||||||
This is a configuration file. It is used to program GRUB's shell.
|
This is a configuration file. It is used to program GRUB's shell.
|
||||||
|
|
||||||
|
@ -681,7 +675,7 @@ A `grubtest.cfg` can be inserted into CBFS, but it will not override the
|
||||||
default `grub.cfg` (either in CBFS or on memdisk); however, the one in memdisk
|
default `grub.cfg` (either in CBFS or on memdisk); however, the one in memdisk
|
||||||
will provide a menuentry for switching to this, if available.
|
will provide a menuentry for switching to this, if available.
|
||||||
|
|
||||||
### config/grub/config/grub\_memdisk.cfg
|
### config/data/grub/memdisk.cfg
|
||||||
|
|
||||||
This GRUB configuration checks whether `grub.cfg` exists in CBFS and switches
|
This GRUB configuration checks whether `grub.cfg` exists in CBFS and switches
|
||||||
to that first (not provided by default) or, if one is not available in CBFS,
|
to that first (not provided by default) or, if one is not available in CBFS,
|
||||||
|
@ -691,12 +685,12 @@ The GRUB memdisk is a file system within `grub.elf`, itself stored within the
|
||||||
coreboot file system named *CBFS*, which is part of the coreboot ROM image on
|
coreboot file system named *CBFS*, which is part of the coreboot ROM image on
|
||||||
every coreboot target.
|
every coreboot target.
|
||||||
|
|
||||||
### config/grub/keymap/
|
### config/data/grub/keymap/
|
||||||
|
|
||||||
Keymap files used by GRUB. They can alter the character set corresponding to
|
Keymap files used by GRUB. They can alter the character set corresponding to
|
||||||
inputted scancodes.
|
inputted scancodes.
|
||||||
|
|
||||||
### config/grub/keymap/\*.gkb
|
### config/data/grub/keymap/\*.gkb
|
||||||
|
|
||||||
The keymap files themselves. These are inserted into the GRUB memdisk, and
|
The keymap files themselves. These are inserted into the GRUB memdisk, and
|
||||||
the `grub.cfg` file can specify which one is to be used.
|
the `grub.cfg` file can specify which one is to be used.
|
||||||
|
@ -705,7 +699,7 @@ These files are binary-encoded, defining which characters correspond to which
|
||||||
scancodes. It is handled by `grub-core/commands/keylayouts.c` in the GRUB source
|
scancodes. It is handled by `grub-core/commands/keylayouts.c` in the GRUB source
|
||||||
code.
|
code.
|
||||||
|
|
||||||
### config/grub/modules.list
|
### config/data/grub/modules/TREE
|
||||||
|
|
||||||
This defines which modules are inserted into `grub.elf`. These modules can be
|
This defines which modules are inserted into `grub.elf`. These modules can be
|
||||||
anything from file systems, small applications/utilities, launchers (e.g.
|
anything from file systems, small applications/utilities, launchers (e.g.
|
||||||
|
@ -871,6 +865,56 @@ Another interesting config option is `CONFIG_POSITION_INDEPENDENT` for ARM
|
||||||
boards, which has been so far enabled in the ones `cbmk` supports, just to be
|
boards, which has been so far enabled in the ones `cbmk` supports, just to be
|
||||||
safe.
|
safe.
|
||||||
|
|
||||||
|
config/submodule
|
||||||
|
----------------
|
||||||
|
|
||||||
|
In here you can find submodule configurations for projects. It works for both
|
||||||
|
single- and multi-tree projects. Use the existing examples as reference.
|
||||||
|
|
||||||
|
Files, in each directory:
|
||||||
|
|
||||||
|
* `module.list` lists paths (files and directories) for given modules, which
|
||||||
|
can be files(via URL) or Git repositories, or both.
|
||||||
|
* NAME/module.cfg
|
||||||
|
|
||||||
|
NAME is the file/directory name for the module, with everything up to the
|
||||||
|
final forward slash removed. E.g. foo/bar/thing.zip would be thing.zip as
|
||||||
|
NAME.
|
||||||
|
|
||||||
|
In `module.cfg` there can be either, file:
|
||||||
|
|
||||||
|
```
|
||||||
|
subfile="url"
|
||||||
|
subfile_bkup="url"
|
||||||
|
subhash="sha512sum for file"
|
||||||
|
```
|
||||||
|
|
||||||
|
or, git repository:
|
||||||
|
|
||||||
|
```
|
||||||
|
subrepo="url"
|
||||||
|
subrepo_bkup="url"
|
||||||
|
subhash="sha1 git commit id"
|
||||||
|
```
|
||||||
|
|
||||||
|
You must only use `subfile` or `subrepo`, not both, and there must be a backup
|
||||||
|
URL. The build system intentionally *avoids* using Git's actual submodules
|
||||||
|
feature, instead opting to download such repositories manually, because the
|
||||||
|
official submodules feature doesn't have very good redundancy.
|
||||||
|
|
||||||
|
Additionally, a `patches` directory can be included alongside `module.cfg`,
|
||||||
|
which can be used to patch the submodule (only supported for Git repositories
|
||||||
|
because files are not extracted, only placed at their configured destination).
|
||||||
|
|
||||||
|
The destination path in `module.list` is relative to the location of the main
|
||||||
|
Git repository under which it is placed.
|
||||||
|
|
||||||
|
config/data/PROJECT
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
Random configuration data provided on a per-project basis. Complements
|
||||||
|
the `config/PROJECT` directory.
|
||||||
|
|
||||||
U-Boot build system
|
U-Boot build system
|
||||||
-------------------
|
-------------------
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue