diff options
| author | Tom Rini <[email protected]> | 2023-09-02 09:08:54 -0400 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 2023-09-02 09:08:54 -0400 |
| commit | 8999257f219d1e371c2fd66f255b8782897944d9 (patch) | |
| tree | 9e49ed5e8b397b24b8dc0e343e798139538464ca | |
| parent | 0fe0395922d859730eb7ddfcff6ed8d3ac4b2937 (diff) | |
| parent | 44c5d7764bf458ef0a8093ddf3422dfebbf7b00c (diff) | |
Merge tag 'doc-2023-10-rc4-2' of https://source.denx.de/u-boot/custodians/u-boot-efi
Pull request doc-2023-10-rc4-2
* Man-page for gpt command
* Fix long text help of gpt command
* Add events to HTML documentation
* Update Toradex documentation
| -rw-r--r-- | cmd/gpt.c | 2 | ||||
| -rw-r--r-- | doc/api/event.rst | 9 | ||||
| -rw-r--r-- | doc/api/index.rst | 1 | ||||
| -rw-r--r-- | doc/board/toradex/apalis-imx8.rst | 22 | ||||
| -rw-r--r-- | doc/board/toradex/colibri-imx8x.rst | 31 | ||||
| -rw-r--r-- | doc/board/toradex/colibri_imx7.rst | 38 | ||||
| -rw-r--r-- | doc/board/toradex/verdin-am62.rst | 22 | ||||
| -rw-r--r-- | doc/board/toradex/verdin-imx8mm.rst | 9 | ||||
| -rw-r--r-- | doc/board/toradex/verdin-imx8mp.rst | 9 | ||||
| -rw-r--r-- | doc/usage/cmd/gpt.rst | 184 | ||||
| -rw-r--r-- | doc/usage/index.rst | 1 | ||||
| -rw-r--r-- | include/event.h | 97 | ||||
| -rw-r--r-- | include/video.h | 2 |
13 files changed, 372 insertions, 55 deletions
diff --git a/cmd/gpt.c b/cmd/gpt.c index 964056bd28b..fe9e06681ce 100644 --- a/cmd/gpt.c +++ b/cmd/gpt.c @@ -1060,8 +1060,6 @@ U_BOOT_CMD(gpt, CONFIG_SYS_MAXARGS, 1, do_gpt, " gpt_partition_name, gpt_partition_entry\n" " gpt enumerate mmc 0\n" " - store list of partitions to gpt_partition_list environment variable\n" - " read <interface> <dev>\n" - " - read GPT into a data structure for manipulation\n" " gpt guid <interface> <dev>\n" " - print disk GUID\n" " gpt guid <interface> <dev> <varname>\n" diff --git a/doc/api/event.rst b/doc/api/event.rst new file mode 100644 index 00000000000..8a57d438322 --- /dev/null +++ b/doc/api/event.rst @@ -0,0 +1,9 @@ +.. SPDX-License-Identifier: GPL-2.0+ + +Events +====== + +The concept of events is decribed :doc:`here <../develop/event>`. + +.. kernel-doc:: include/event.h + :internal: diff --git a/doc/api/index.rst b/doc/api/index.rst index 3a80ae0635a..2f0218c47a3 100644 --- a/doc/api/index.rst +++ b/doc/api/index.rst @@ -10,6 +10,7 @@ U-Boot API documentation dfu dm efi + event getopt linker_lists lmb diff --git a/doc/board/toradex/apalis-imx8.rst b/doc/board/toradex/apalis-imx8.rst index 849b1172bd4..ffc4c7d222a 100644 --- a/doc/board/toradex/apalis-imx8.rst +++ b/doc/board/toradex/apalis-imx8.rst @@ -1,7 +1,11 @@ -.. SPDX-License-Identifier: GPL-2.0+ +.. SPDX-License-Identifier: GPL-2.0-or-later +.. sectionauthor:: Marcel Ziswiler <[email protected]> -Apalis iMX8QM V1.0B Module -========================== +Apalis iMX8 Module +================== + +- SoM: https://www.toradex.com/computer-on-modules/apalis-arm-family/nxp-imx-8 +- Carrier board: https://www.toradex.com/products/carrier-board/apalis-evaluation-board Quick Start ----------- @@ -49,6 +53,7 @@ Copy the following firmware to the U-Boot folder: Build U-Boot ------------ + .. code-block:: bash $ make apalis-imx8_defconfig @@ -61,8 +66,8 @@ Get the latest version of the universal update utility (uuu) aka ``mfgtools 3.0` https://community.nxp.com/external-link.jspa?url=https%3A%2F%2Fgithub.com%2FNXPmicro%2Fmfgtools%2Freleases -Put the module into USB recovery aka serial downloader mode, connect USB device -to your host and execute uuu: +Put the module into USB recovery aka serial downloader mode, connect the USB +device to your host and execute ``uuu``: .. code-block:: bash @@ -80,3 +85,10 @@ partition and boot: setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200 mmc dev 0 1 mmc write ${loadaddr} 0x0 ${blkcnt} + +As a convenience, instead of the last three commands, one may also use the +update U-Boot wrapper: + +.. code-block:: bash + + > run update_uboot diff --git a/doc/board/toradex/colibri-imx8x.rst b/doc/board/toradex/colibri-imx8x.rst index 545568c844a..9e61d98c6b1 100644 --- a/doc/board/toradex/colibri-imx8x.rst +++ b/doc/board/toradex/colibri-imx8x.rst @@ -1,7 +1,11 @@ -.. SPDX-License-Identifier: GPL-2.0+ +.. SPDX-License-Identifier: GPL-2.0-or-later +.. sectionauthor:: Marcel Ziswiler <[email protected]> -Colibri iMX8QXP V1.0D Module -============================ +Colibri iMX8X Module +==================== + +- SoM: https://www.toradex.com/computer-on-modules/colibri-arm-family/nxp-imx-8x +- Carrier board: https://www.toradex.com/products/carrier-board/colibri-evaluation-board Quick Start ----------- @@ -23,18 +27,19 @@ Get and Build the ARM Trusted Firmware Get scfw_tcm.bin and ahab-container.img --------------------------------------- + .. code-block:: bash $ wget https://github.com/toradex/i.MX-System-Controller-Firmware/raw/master/src/scfw_export_mx8qx_b0/build_mx8qx_b0/mx8qx-colibri-scfw-tcm.bin - $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/imx-seco-3.7.4.bin - $ sh imx-seco-3.7.4.bin --auto-accept + $ wget https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/imx-seco-3.8.1.bin + $ sh imx-seco-3.8.1.bin --auto-accept Copy the following firmware to the U-Boot folder: .. code-block:: bash $ cp imx-atf/build/imx8qx/release/bl31.bin . - $ cp imx-seco-3.7.4/firmware/seco/mx8qxc0-ahab-container.img mx8qx-ahab-container.img + $ cp imx-seco-3.8.1/firmware/seco/mx8qxc0-ahab-container.img mx8qx-ahab-container.img Build U-Boot ------------ @@ -51,8 +56,8 @@ Get the latest version of the universal update utility (uuu) aka ``mfgtools 3.0` https://community.nxp.com/external-link.jspa?url=https%3A%2F%2Fgithub.com%2FNXPmicro%2Fmfgtools%2Freleases -Put the module into USB recovery aka serial downloader mode, connect USB device -to your host and execute ``uuu``: +Put the module into USB recovery aka serial downloader mode, connect the USB +device to your host and execute ``uuu``: .. code-block:: bash @@ -61,7 +66,8 @@ to your host and execute ``uuu``: Flash the U-Boot Binary into the eMMC ------------------------------------- -Burn the ``u-boot-dtb.imx`` binary to the primary eMMC hardware boot area partition: +Burn the ``u-boot-dtb.imx`` binary to the primary eMMC hardware boot area +partition and boot: .. code-block:: bash @@ -69,3 +75,10 @@ Burn the ``u-boot-dtb.imx`` binary to the primary eMMC hardware boot area partit setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200 mmc dev 0 1 mmc write ${loadaddr} 0x0 ${blkcnt} + +As a convenience, instead of the last three commands, one may also use the +update U-Boot wrapper: + +.. code-block:: bash + + > run update_uboot diff --git a/doc/board/toradex/colibri_imx7.rst b/doc/board/toradex/colibri_imx7.rst index a30e721379e..6532878932c 100644 --- a/doc/board/toradex/colibri_imx7.rst +++ b/doc/board/toradex/colibri_imx7.rst @@ -1,7 +1,11 @@ -.. SPDX-License-Identifier: GPL-2.0+ +.. SPDX-License-Identifier: GPL-2.0-or-later +.. sectionauthor:: Igor Opaniuk <[email protected]> -Colibri iMX7 -============ +Colibri iMX7 Modules +==================== + +- SoM: https://www.toradex.com/computer-on-modules/colibri-arm-family/nxp-freescale-imx7 +- Carrier board: https://www.toradex.com/products/carrier-board/colibri-evaluation-board Quick Start ----------- @@ -21,11 +25,11 @@ Build U-Boot $ make colibri_imx7_emmc_defconfig # For NAND: colibri_imx7_defconfig $ make -After build succeeds, you will obtain final ``u-boot-dtb.imx`` IMX specific -image, ready for flashing (but check next section for additional +After the build succeeds, you will obtain the final ``u-boot-dtb.imx`` IMX +specific image, ready for flashing (but check next section for additional adjustments). -Final IMX program image includes (section ``6.6.7`` from `IMX7DRM +The final IMX program image includes (section ``6.6.7`` from `IMX7DRM <https://www.nxp.com/webapp/Download?colCode=IMX7DRM>`_): * **Image vector table** (IVT) for BootROM @@ -34,21 +38,20 @@ Final IMX program image includes (section ``6.6.7`` from `IMX7DRM * **Device configuration data** * **User image**: U-Boot image (``u-boot-dtb.bin``) - IMX image adjustments prior to flashing --------------------------------------- 1. U-Boot for both Colibri iMX7 NAND and eMMC versions is built with HABv4 support (`AN4581.pdf <https://www.nxp.com/docs/en/application-note/AN4581.pdf>`_) -enabled by default, which requires to generate a proper +enabled by default, which requires generating a proper Command Sequence File (CSF) by srktool from NXP (not included in the U-Boot tree, check additional details in introduction_habv4.txt) and concatenate it to the final ``u-boot-dtb.imx``. -2. In case if you don't want to generate a proper ``CSF`` (for any reason), -you still need to pad the IMX image so i has the same size as specified in -in **Boot Data** section of IMX image. +2. In case you don't want to generate a proper ``CSF`` (for any reason), +you still need to pad the IMX image so it has the same size as specified in +the **Boot Data** section of the IMX image. To obtain this value, run: .. code-block:: bash @@ -78,11 +81,11 @@ and then pad the image: $ objcopy -I binary -O binary --pad-to 0xa7c60 --gap-fill=0x00 \ u-boot-dtb.imx u-boot-dtb.imx.zero-padded -3. Also, according to requirement from ``6.6.7.1``, the final image -should have ``0x400`` offset for initial IVT table. +3. Also, according to the requirement from ``6.6.7.1``, the final image +should have ``0x400`` offset for the initial IVT table. -For eMMC setup we handle this by flashing it to ``0x400``, howewer -for NAND setup we adjust the image prior to flashing, adding padding in the +For eMMC setup we handle this by flashing it to ``0x400``, however +for NAND setup we adjust the image prior to flashing, adding padding at the beginning of the image. .. code-block:: bash @@ -97,7 +100,6 @@ boot area partition: .. code-block:: bash - => load mmc 1:1 $loadaddr u-boot-dtb.imx.zero-padded => setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200 => mmc dev 0 1 @@ -117,8 +119,8 @@ Flash U-Boot IMX image to NAND Using update_uboot script ------------------------- -You can also usb U-Boot env update_uboot script, -which wraps all eMMC/NAND specific command invocation: +You can also use U-Boot env update_uboot script, +which wraps all eMMC/NAND specific command invocations: .. code-block:: bash diff --git a/doc/board/toradex/verdin-am62.rst b/doc/board/toradex/verdin-am62.rst index 36db149cda0..e8d90273288 100644 --- a/doc/board/toradex/verdin-am62.rst +++ b/doc/board/toradex/verdin-am62.rst @@ -24,12 +24,14 @@ For an overview of the TI AM62 SoC boot flow please head over to: Sources: -------- + .. include:: ../ti/k3.rst :start-after: .. k3_rst_include_start_boot_sources :end-before: .. k3_rst_include_end_boot_sources Build procedure: ---------------- + 0. Setup the environment variables: .. include:: ../ti/k3.rst @@ -50,7 +52,7 @@ Set the variables corresponding to this platform: $ export UBOOT_CFG_CORTEXR=verdin-am62_r5_defconfig $ export UBOOT_CFG_CORTEXA=verdin-am62_a53_defconfig $ export TFA_BOARD=lite - $ # we dont use any extra TFA parameters + $ # we don't use any extra TFA parameters $ unset TFA_EXTRA_ARGS $ export OPTEE_PLATFORM=k3-am62x $ export OPTEE_EXTRA_ARGS="CFG_WITH_SOFTWARE_PRNG=y" @@ -72,12 +74,24 @@ Flash to eMMC => fatload mmc 1 ${loadaddr} u-boot.img => mmc write ${loadaddr} 0x1400 0x2000 +As a convenience, instead of having to remember all those addresses and sizes, +one may also use the update U-Boot wrappers: + +.. code-block:: bash + + > tftpboot ${loadaddr} tiboot3-am62x-gp-verdin.bin + > run update_tiboot3 + + > tftpboot ${loadaddr} tispl.bin + > run update_tispl + + > tftpboot ${loadaddr} u-boot.img + > run update_uboot + Boot ---- -Output: - -.. code-block:: none +Output:: U-Boot SPL 2023.10-rc1-00210-gb678170a34c (Aug 03 2023 - 00:09:14 +0200) SYSFW ABI: 3.1 (firmware rev 0x0009 '9.0.1--v09.00.01 (Kool Koala)') diff --git a/doc/board/toradex/verdin-imx8mm.rst b/doc/board/toradex/verdin-imx8mm.rst index cc39030450f..6e150e9aec7 100644 --- a/doc/board/toradex/verdin-imx8mm.rst +++ b/doc/board/toradex/verdin-imx8mm.rst @@ -46,6 +46,7 @@ Get the DDR Firmware Build U-Boot ------------ + .. code-block:: bash $ export CROSS_COMPILE=aarch64-linux-gnu- @@ -61,7 +62,7 @@ Flash to eMMC > setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200 > mmc dev 0 1 && mmc write ${loadaddr} 0x2 ${blkcnt} -As a convenience, instead of the last two commands one may also use the update +As a convenience, instead of the last two commands, one may also use the update U-Boot wrapper: .. code-block:: bash @@ -71,16 +72,14 @@ U-Boot wrapper: Boot ---- -ATF, U-Boot proper and u-boot.dtb images are packed into FIT image, +ATF, U-Boot proper and u-boot.dtb images are packed into a FIT image, which is loaded and parsed by SPL. Boot sequence is: * SPL ---> ATF (TF-A) ---> U-Boot proper -Output: - -.. code-block:: none +Output:: U-Boot SPL 2021.10-rc2-00028-gee010ba1129 (Aug 23 2021 - 16:56:02 +0200) Normal Boot diff --git a/doc/board/toradex/verdin-imx8mp.rst b/doc/board/toradex/verdin-imx8mp.rst index bdc4d0c2cb5..9ee605f64d5 100644 --- a/doc/board/toradex/verdin-imx8mp.rst +++ b/doc/board/toradex/verdin-imx8mp.rst @@ -46,6 +46,7 @@ Get the DDR Firmware Build U-Boot ------------ + .. code-block:: bash $ export CROSS_COMPILE=aarch64-linux-gnu- @@ -61,7 +62,7 @@ Flash to eMMC > setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200 > mmc dev 2 1 && mmc write ${loadaddr} 0x0 ${blkcnt} -As a convenience, instead of the last two commands one may also use the update +As a convenience, instead of the last two commands, one may also use the update U-Boot wrapper: .. code-block:: bash @@ -71,16 +72,14 @@ U-Boot wrapper: Boot ---- -ATF, U-Boot proper and u-boot.dtb images are packed into FIT image, +ATF, U-Boot proper and u-boot.dtb images are packed into a FIT image, which is loaded and parsed by SPL. Boot sequence is: * SPL ---> ATF (TF-A) ---> U-Boot proper -Output: - -.. code-block:: none +Output:: U-Boot SPL 2022.04-rc1-00164-g21a0312611-dirty (Feb 07 2022 - 11:34:04 +0100) Quad die, dual rank failed, attempting dual die, single rank configuration. diff --git a/doc/usage/cmd/gpt.rst b/doc/usage/cmd/gpt.rst new file mode 100644 index 00000000000..6387c8116fe --- /dev/null +++ b/doc/usage/cmd/gpt.rst @@ -0,0 +1,184 @@ +.. SPDX-License-Identifier: GPL-2.0+ + +gpt command +=========== + +Synopsis +-------- + +:: + + gpt enumerate <interface> <dev> + gpt guid <interface> <dev> [<varname>] + gpt read <interface> <dev> [<varname>] + gpt rename <interface> <dev> <part> <name> + gpt repair <interface> <dev> + gpt setenv <interface> <dev> <partition name> + gpt swap <interface> <dev> <name1> <name2> + gpt verify <interface> <dev> [<partition string>] + gpt write <interface> <dev> <partition string> + +Description +----------- + +The gpt command lets users read, create, modify, or verify the GPT (GUID +Partition Table) partition layout. + +Common arguments: + +interface + interface for accessing the block device (mmc, sata, scsi, usb, ....) + +dev + device number + +partition string + Describes the GPT partition layout for a disk. The syntax is similar to + the one used by the :doc:`mbr command <mbr>` command. The string contains + one or more partition descriptors, each separated by a ";". Each descriptor + contains one or more fields, with each field separated by a ",". Fields are + either of the form "key=value" to set a specific value, or simple "flag" to + set a boolean flag + + The first descriptor can optionally be used to describe parameters for the + whole disk with the following fields: + + * uuid_disk=UUID - Set the UUID for the disk + + Partition descriptors can have the following fields: + + * name=<NAME> - The partition name, required + * start=<BYTES> - The partition start offset in bytes, required + * size=<BYTES> - The partition size in bytes or "-" to expand it to the whole free area + * bootable - Set the legacy bootable flag + * uuid=<UUID> - The partition UUID, optional if CONFIG_RANDOM_UUID=y is enabled + * type=<UUID> - The partition type GUID, requires CONFIG_PARTITION_TYPE_GUID=y + + + If 'uuid' is not specified, but CONFIG_RANDOM_UUID is enabled, a random UUID + will be generated for the partition + +gpt enumerate +~~~~~~~~~~~~~ + +Sets the variable 'gpt_partition_list' to be a list of all the partition names +on the device. + +gpt guid +~~~~~~~~ + +Report the GUID of a disk. If 'varname' is specified, the command will set the +variable to the GUID, otherwise it will be printed out. + +gpt read +~~~~~~~~ + +Prints the current state of the GPT partition table. If 'varname' is specified, +the variable will be filled with a partition string in the same format as a +'<partition string>', suitable for passing to other 'gpt' commands. If the +argument is omitted, a human readable description is printed out. +CONFIG_CMD_GPT_RENAME=y is required. + +gpt rename +~~~~~~~~~~ + +Renames all partitions named 'part' to be 'name'. CONFIG_CMD_GPT_RENAME=y is +required. + +gpt repair +~~~~~~~~~~ + +Repairs the GPT partition tables if it they become corrupted. + +gpt setenv +~~~~~~~~~~ + +The 'gpt setenv' command will set a series of environment variables with +information about the partition named '<partition name>'. The variables are: + +gpt_partition_addr + the starting offset of the partition in blocks as a hexadecimal number + +gpt_partition_size + the size of the partition in blocks as a hexadecimal number + +gpt_partition_name + the name of the partition + +gpt_partition_entry + the partition number in the table, e.g. 1, 2, 3, etc. + +gpt swap +~~~~~~~~ + +Changes the names of all partitions that are named 'name1' to be 'name2', and +all partitions named 'name2' to be 'name1'. CONFIG_CMD_GPT_RENAME=y is +required. + +gpt verify +~~~~~~~~~~ + +Sets return value $? to 0 (true) if the partition layout on the +specified disk matches the one in the provided partition string, and 1 (false) +if it does not match. If no partition string is specified, the command will +check if the disk is partitioned or not. + +gpt write +~~~~~~~~~ + +(Re)writes the partition table on the disk to match the provided +partition string. It returns 0 on success or 1 on failure. + +Configuration +------------- + +To use the 'gpt' command you must specify CONFIG_CMD_GPT=y. To enable 'gpt +read', 'gpt swap' and 'gpt rename', you must specify CONFIG_CMD_GPT_RENAME=y. + +Examples +~~~~~~~~ +Create 6 partitions on a disk:: + + => setenv gpt_parts 'uuid_disk=bec9fc2a-86c1-483d-8a0e-0109732277d7; + name=boot,start=4M,size=128M,bootable,type=ebd0a0a2-b9e5-4433-87c0-68b6b72699c7, + name=rootfs,size=3072M,type=0fc63daf-8483-4772-8e79-3d69d8477de4; + name=system-data,size=512M,type=0fc63daf-8483-4772-8e79-3d69d8477de4; + name=[ext],size=-,type=0fc63daf-8483-4772-8e79-3d69d8477de4; + name=user,size=-,type=0fc63daf-8483-4772-8e79-3d69d8477de4; + name=modules,size=100M,type=0fc63daf-8483-4772-8e79-3d69d8477de4; + name=ramdisk,size=8M,type=0fc63daf-8483-4772-8e79-3d69d8477de4 + => gpt write mmc 0 $gpt_parts + + +Verify that the device matches the partition layout described in the variable +$gpt_parts:: + + => gpt verify mmc 0 $gpt_parts + + +Get the information about the partition named 'rootfs':: + + => gpt setenv mmc 0 rootfs + => echo ${gpt_partition_addr} + 2000 + => echo ${gpt_partition_size} + 14a000 + => echo ${gpt_partition_name} + rootfs + => echo ${gpt_partition_entry} + 2 + +Get the list of partition names on the disk:: + + => gpt enumerate + => echo gpt_partition_list + boot rootfs system-data [ext] user modules ramdisk + + +Get the GUID for a disk:: + + => gpt guid mmc 0 + bec9fc2a-86c1-483d-8a0e-0109732277d7 + => gpt guid mmc gpt_disk_uuid + => echo ${gpt_disk_uuid} + bec9fc2a-86c1-483d-8a0e-0109732277d7 diff --git a/doc/usage/index.rst b/doc/usage/index.rst index f45a7f55024..fa702920faa 100644 --- a/doc/usage/index.rst +++ b/doc/usage/index.rst @@ -66,6 +66,7 @@ Shell commands cmd/for cmd/fwu_mdata cmd/gpio + cmd/gpt cmd/host cmd/imxtract cmd/load diff --git a/include/event.h b/include/event.h index bb38ba98e73..f5c5d30a645 100644 --- a/include/event.h +++ b/include/event.h @@ -19,29 +19,114 @@ * @EVT_DM_PRE_PROBE: Device is about to be probed */ enum event_t { - EVT_NONE, + /** + * @EVT_NONE: This zero value is not used for events. + */ + EVT_NONE = 0, + + /** + * @EVT_TEST: This event is used in unit tests. + */ EVT_TEST, - /* Events related to driver model */ + /** + * @EVT_DM_POST_INIT_F: + * This event is triggered after pre-relocation initialization of the + * driver model. Its parameter is NULL. + * A non-zero return code from the event handler let's the boot process + * fail. + */ EVT_DM_POST_INIT_F, + + /** + * @EVT_DM_POST_INIT_R: + * This event is triggered after post-relocation initialization of the + * driver model. Its parameter is NULL. + * A non-zero return code from the event handler let's the boot process + * fail. + */ EVT_DM_POST_INIT_R, + + /** + * @EVT_DM_PRE_PROBE: + * This event is triggered before probing a device. Its parameter is the + * device to be probed. + * A non-zero return code from the event handler lets the device not + * being probed. + */ EVT_DM_PRE_PROBE, + + /** + * @EVT_DM_POST_PROBE: + * This event is triggered after probing a device. Its parameter is the + * device that was probed. + * A non-zero return code from the event handler leaves the device in + * the unprobed state and therefore not usable. + */ EVT_DM_POST_PROBE, + + /** + * @EVT_DM_PRE_REMOVE: + * This event is triggered after removing a device. Its parameter is + * the device to be removed. + * A non-zero return code from the event handler stops the removal of + * the device before any changes. + */ EVT_DM_PRE_REMOVE, + + /** + * @EVT_DM_POST_REMOVE: + * This event is triggered before removing a device. Its parameter is + * the device that was removed. + * A non-zero return code stops from the event handler the removal of + * the device after all removal changes. The previous state is not + * restored. All children will be gone and the device may not be + * functional. + */ EVT_DM_POST_REMOVE, - /* Init hooks */ + /** + * @EVT_MISC_INIT_F: + * This event is triggered during the initialization sequence before + * relocation. Its parameter is NULL. + * A non-zero return code from the event handler let's the boot process + * fail. + */ EVT_MISC_INIT_F, - /* Fpga load hook */ + /** + * @EVT_FPGA_LOAD: + * The FPGA load hook is called after loading an FPGA with a new binary. + * Its parameter is of type struct event_fpga_load and contains + * information about the loaded image. + */ EVT_FPGA_LOAD, - /* Device tree fixups before booting */ + /** + * @EVT_FT_FIXUP: + * This event is triggered during device-tree fix up after all + * other device-tree fixups have been executed. + * Its parameter is of type struct event_ft_fixup which contains + * the address of the device-tree to fix up and the list of images to be + * booted. + * A non-zero return code from the event handler let's booting the + * images fail. + */ EVT_FT_FIXUP, - /* To be called once, before calling main_loop() */ + /** + * @EVT_MAIN_LOOP: + * This event is triggered immediately before calling main_loop() which + * is the entry point of the command line. Its parameter is NULL. + * A non-zero return value causes the boot to fail. + */ EVT_MAIN_LOOP, + /** + * @EVT_COUNT: + * This constants holds the maximum event number + 1 and is used when + * looping over all event classes. + */ EVT_COUNT }; diff --git a/include/video.h b/include/video.h index 269915160b4..16f7a83f8d5 100644 --- a/include/video.h +++ b/include/video.h @@ -260,7 +260,7 @@ int video_fill_part(struct udevice *dev, int xstart, int ystart, int xend, int video_sync(struct udevice *vid, bool force); /** - * video_sync_all() - Sync all devices' frame buffers with there hardware + * video_sync_all() - Sync all devices' frame buffers with their hardware * * This calls video_sync() on all active video devices. */ |
