Loading...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 | # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) # Copyright 2021 Google LLC %YAML 1.2 --- $id: http://devicetree.org/schemas/options/u-boot.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: U-Boot configuration node maintainers: - Simon Glass <sjg@chromium.org> description: | The u-boot,config node provides basic configuration information to U-Boot, for use during its execution. It can be used to control U-Boot's behaviour in various ways. properties: $nodename: const: u-boot compatible: const: u-boot,config bootcmd: $ref: /schemas/types.yaml#/definitions/string description: | Allows overwriting of the boot command used by U-Boot on startup. If present, U-Boot uses this command instead. Note that this feature can work even if loading the environment is disabled, e.g. for security reasons. See also bootsecure. bootdelay-sec: description: | Allows selecting of the U-Boot bootdelay, to control whether U-Boot waits on boot or for how long. This allows this option to be configured by the build system or by a previous-stage binary. For example, if the images is being packed for testing or a user holds down a button, it may allow a delay, but disable it for production. If this property is not present, a default value is used instead. Note that this uses the 'sec' property unit, even though it allows a negative value. Values: -1: no bootdelay and the user cannot interrupt boot 0: no bootdelay but use user can still interrupt boot by holding down a key, if enabled >= 1: delay for this many seconds bootsecure: $ref: /schemas/types.yaml#/definitions/uint32 default: 0 maximum: 2 description: | Controls the execution of the boot command in U-Boot, e.g. selecting between using a special function to run commands, or the normal CLI. This can be used in production images, to restrict the amount of parsing done or the options available, to cut back on the available surface for security attacks. Values: 0: normal boot using CLI (default if not present) 1: use secure boot mechanism instead to parse and run commands other values are reserved for future use 2: use simplified command line (e.g. avoid hush) 3... reserved bootscr-address: $ref: /schemas/types.yaml#/definitions/uint64 default: 0x0 description: Holds the full address of the boot script file. It helps in making automated flow easier by fetching the 64bit address directly from DT. Value should be automatically copied to the U-Boot 'scriptaddr' variable. When it is defined, bootscr-ram-offset property should be ignored. Actually only one of them should be present in the DT. bootscr-ram-offset: $ref: /schemas/types.yaml#/definitions/uint64 default: 0x0 description: Holds the boot script file offset from the start of the ram base address. Platforms with run-time RAM-detection algorithms should use this property because it is not clear exactly where the script address should be placed. Using it will provide the option to specify boot script offset from detected RAM start. The U-Boot 'scriptaddr' variable should be composed as detected RAM start plus value of bootscr-ram-offset property. It should be used only when bootscr-address is not defined. silent-console: $ref: /schemas/types.yaml#/definitions/uint32 default: 0 maximum: 2 description: | This allows the console to be silenced by default on boot. This can allow easy disabling of console output on a production build, for example. When suppressed, the console is still active. This feature only suppresses the console output itself, on all output devices. Values: 0: console output appears as normal (default) 1: console output is suppressed but console recording still operates (if enabled) 2: console output is suppressed and not recorded required: - compatible if: required: - bootscr-address then: properties: bootscr-ram-offset: false additionalProperties: false examples: - | options { u-boot { compatible = "u-boot,config"; bootcmd = "vboot go auto"; bootdelay-sec = <(-1)>; bootsecure = <1>; bootscr-address = /bits/ 64 <0x1000>; silent-console = <1>; }; }; |