From fd426b31066ba61ee1ff96a2b56c919251ffdd9e Mon Sep 17 00:00:00 2001 From: Damien Le Moal Date: Tue, 1 Mar 2022 10:35:39 +0000 Subject: k210: use the board vendor name rather than the marketing name "kendryte" is the marketing name for the K210 RISC-V SoC produced by Canaan Inc. Rather than "kendryte,k210", use the usual "canaan,k210" vendor,SoC compatibility string format in the device tree files and use the SoC name for file names. With these changes, the device tree files are more in sync with the Linux kernel DTS and drivers, making uboot device tree usable by the kernel. Signed-off-by: Damien Le Moal Signed-off-by: Niklas Cassel Reviewed-by: Leo Yu-Chi Liang --- doc/board/sipeed/maix.rst | 20 ++-- .../mfd/canaan,k210-sysctl.txt | 33 +++++++ .../mfd/kendryte,k210-sysctl.txt | 33 ------- .../pinctrl/canaan,k210-fpioa.txt | 102 +++++++++++++++++++++ .../pinctrl/kendryte,k210-fpioa.txt | 102 --------------------- doc/device-tree-bindings/spi/snps,dw-apb-ssi.txt | 4 +- 6 files changed, 147 insertions(+), 147 deletions(-) create mode 100644 doc/device-tree-bindings/mfd/canaan,k210-sysctl.txt delete mode 100644 doc/device-tree-bindings/mfd/kendryte,k210-sysctl.txt create mode 100644 doc/device-tree-bindings/pinctrl/canaan,k210-fpioa.txt delete mode 100644 doc/device-tree-bindings/pinctrl/kendryte,k210-fpioa.txt (limited to 'doc') diff --git a/doc/board/sipeed/maix.rst b/doc/board/sipeed/maix.rst index ef79297ef0..903f8831d7 100644 --- a/doc/board/sipeed/maix.rst +++ b/doc/board/sipeed/maix.rst @@ -4,16 +4,16 @@ MAIX ==== -Several of the Sipeed Maix series of boards cotain the Kendryte K210 processor, -a 64-bit RISC-V CPU. This processor contains several peripherals to accelerate -neural network processing and other "ai" tasks. This includes a "KPU" neural -network processor, an audio processor supporting beamforming reception, and a -digital video port supporting capture and output at VGA resolution. Other -peripherals include 8M of SRAM (accessible with and without caching); remappable -pins, including 40 GPIOs; AES, FFT, and SHA256 accelerators; a DMA controller; -and I2C, I2S, and SPI controllers. Maix peripherals vary, but include spi flash; -on-board usb-serial bridges; ports for cameras, displays, and sd cards; and -ESP32 chips. +Several of the Sipeed Maix series of boards contain the Kendryte K210 processor, +a 64-bit RISC-V CPU produced by Canaan Inc. This processor contains several +peripherals to accelerate neural network processing and other "ai" tasks. This +includes a "KPU" neural network processor, an audio processor supporting +beamforming reception, and a digital video port supporting capture and output at +VGA resolution. Other peripherals include 8M of SRAM (accessible with and +without caching); remappable pins, including 40 GPIOs; AES, FFT, and SHA256 +accelerators; a DMA controller; and I2C, I2S, and SPI controllers. Maix +peripherals vary, but include spi flash; on-board usb-serial bridges; ports for +cameras, displays, and sd cards; and ESP32 chips. Currently, only the Sipeed MAIX BiT V2.0 (bitm) and Sipeed MAIXDUINO are supported, but the boards are fairly similar. diff --git a/doc/device-tree-bindings/mfd/canaan,k210-sysctl.txt b/doc/device-tree-bindings/mfd/canaan,k210-sysctl.txt new file mode 100644 index 0000000000..e48b164fc0 --- /dev/null +++ b/doc/device-tree-bindings/mfd/canaan,k210-sysctl.txt @@ -0,0 +1,33 @@ +Kendryte K210 Sysctl + +This binding describes the K210 sysctl device, which contains many miscellaneous +registers controlling system functionality. This node is a register map and can +be reference by other bindings which need a phandle to the K210 sysctl regmap. + +Required properties: +- compatible: should be + "canaan,k210-sysctl", "syscon", "simple-mfd" +- reg: address and length of the sysctl registers +- reg-io-width: must be <4> + +Clock sub-node + +This node is a binding for the clock tree driver + +Required properties: +- compatible: should be "canaan,k210-clk" +- clocks: phandle to the "in0" external oscillator +- #clock-cells: must be <1> + +Example: +sysctl: syscon@50440000 { + compatible = "canaan,k210-sysctl", "syscon", "simple-mfd"; + reg = <0x50440000 0x100>; + reg-io-width = <4>; + + sysclk: clock-controller { + compatible = "canaan,k210-clk"; + clocks = <&in0>; + #clock-cells = <1>; + }; +}; diff --git a/doc/device-tree-bindings/mfd/kendryte,k210-sysctl.txt b/doc/device-tree-bindings/mfd/kendryte,k210-sysctl.txt deleted file mode 100644 index 5b24abcb62..0000000000 --- a/doc/device-tree-bindings/mfd/kendryte,k210-sysctl.txt +++ /dev/null @@ -1,33 +0,0 @@ -Kendryte K210 Sysctl - -This binding describes the K210 sysctl device, which contains many miscellaneous -registers controlling system functionality. This node is a register map and can -be reference by other bindings which need a phandle to the K210 sysctl regmap. - -Required properties: -- compatible: should be - "kendryte,k210-sysctl", "syscon", "simple-mfd" -- reg: address and length of the sysctl registers -- reg-io-width: must be <4> - -Clock sub-node - -This node is a binding for the clock tree driver - -Required properties: -- compatible: should be "kendryte,k210-clk" -- clocks: phandle to the "in0" external oscillator -- #clock-cells: must be <1> - -Example: -sysctl: syscon@50440000 { - compatible = "kendryte,k210-sysctl", "syscon", "simple-mfd"; - reg = <0x50440000 0x100>; - reg-io-width = <4>; - - sysclk: clock-controller { - compatible = "kendryte,k210-clk"; - clocks = <&in0>; - #clock-cells = <1>; - }; -}; diff --git a/doc/device-tree-bindings/pinctrl/canaan,k210-fpioa.txt b/doc/device-tree-bindings/pinctrl/canaan,k210-fpioa.txt new file mode 100644 index 0000000000..deca0cfab7 --- /dev/null +++ b/doc/device-tree-bindings/pinctrl/canaan,k210-fpioa.txt @@ -0,0 +1,102 @@ +Kendryte K210 FPIOA + +This binding describes the Fully-Programmable Input/Output Array (FPIOA) found +in Kendryte K210 SoCs. Any of the 256 functions can be mapped to any of the 48 +pins. + +Required properties: +- compatible: should be "canaan,k210-fpioa" +- reg: address and length of the FPIOA registers +- canaan,sysctl: phandle to the "sysctl" register map node +- canaan,k210-power-offset: offset in the register map of the power bank control + register (in bytes) + +Configuration nodes + +Pin configuration nodes are documented in pinctrl-bindings.txt + +Required properties for pin-configuration nodes or sub-nodes are: +- groups: list of power groups to which the configuration applies. Valid groups + are: + A0, A1, A2, B3, B4, B5, C6, C7 + (either this or "pinmux" must be specified) +- pinmux: integer array representing pin multiplexing configuration. In addition + to the 256 standard functions, each pin can also output the direction + indicator (DO) of any function. This signal is high whenever the function + would normally drive the output. Helper macros to ease assembling the "pinmux" + arguments from the pin and function are provided by the FPIOA header file at: + + Integer values in the "pinmux" argument list are assembled as: + ((PIN << 16) | (DO << 8) | (FUNC)) + Valid values for PIN are numbers 0 through 47. + Valid values for DO are 0 or 1. + Valid values for FUNC are numbers 0 through 255. For a complete list of + acceptable functions, consult the FPIOA header file. + (either this or "groups" must be specified) + +Optional properties for "pinmux" nodes are: + bias-disable, bias-pull-down, bias-pull-up, drive-strength, + drive-strength-ua, input-enable, input-disable, input-schmitt-enable, + input-schmitt-disable, output-low, output-high, output-enable, + output-disable, slew-rate, output-polarity-invert, input-polarity-invert + +Optional properties for "groups" nodes are: + power-source + +Notes on specific properties include: +- bias-pull-up, -down, and -pin-default: The pull strength cannot be configured. +- drive-strength: There are 8 drive strength settings between 11 and 50 mA. +- input- and output-polarity-invert: Invert the polarity of either the input or + the output, respectively. +- power-source: Controls the output voltage of a bank of pins. Either + K210_PC_POWER_1V8 or K210_PC_POWER_3V3 may be specified. +- slew-rate: Specifying this property reduces the slew rate. + +Example: +fpioa: pinmux@502B0000 { + compatible = "canaan,k210-fpioa"; + reg = <0x502B0000 0x100>; + canaan,k210-sysctl = <&sysctl>; + canaan,k210-power-offset = ; + + /* JTAG running at 3.3V and driven at 11 mA */ + fpioa_jtag: jtag { + voltage { + group = "A0"; + power-source = ; + }; + + jtag { + pinmux = , + , + , + ; + drive-strength = <11>; + } + }; + + /* I2C configured for use with a TCA9800 level shifter */ + fpioa_i2c: i2c { + i2c { + pinmux = , + ; + }; + + direction { + pinmux = ; + output-polarity-invert; + }; + }; + + /* UART with an active-high TX status LED */ + fpioa_uart1: uart1 { + uart { + pinmux = , + ; + }; + + status { + pinmux = ; + }; + }; +}; diff --git a/doc/device-tree-bindings/pinctrl/kendryte,k210-fpioa.txt b/doc/device-tree-bindings/pinctrl/kendryte,k210-fpioa.txt deleted file mode 100644 index 73871f5930..0000000000 --- a/doc/device-tree-bindings/pinctrl/kendryte,k210-fpioa.txt +++ /dev/null @@ -1,102 +0,0 @@ -Kendryte K210 FPIOA - -This binding describes the Fully-Programmable Input/Output Array (FPIOA) found -in Kendryte K210 SoCs. Any of the 256 functions can be mapped to any of the 48 -pins. - -Required properties: -- compatible: should be "kendryte,k210-fpioa" -- reg: address and length of the FPIOA registers -- kendryte,sysctl: phandle to the "sysctl" register map node -- kendryte,power-offset: offset in the register map of the power bank control - register (in bytes) - -Configuration nodes - -Pin configuration nodes are documented in pinctrl-bindings.txt - -Required properties for pin-configuration nodes or sub-nodes are: -- groups: list of power groups to which the configuration applies. Valid groups - are: - A0, A1, A2, B3, B4, B5, C6, C7 - (either this or "pinmux" must be specified) -- pinmux: integer array representing pin multiplexing configuration. In addition - to the 256 standard functions, each pin can also output the direction - indicator (DO) of any function. This signal is high whenever the function - would normally drive the output. Helper macros to ease assembling the "pinmux" - arguments from the pin and function are provided by the FPIOA header file at: - - Integer values in the "pinmux" argument list are assembled as: - ((PIN << 16) | (DO << 8) | (FUNC)) - Valid values for PIN are numbers 0 through 47. - Valid values for DO are 0 or 1. - Valid values for FUNC are numbers 0 through 255. For a complete list of - acceptable functions, consult the FPIOA header file. - (either this or "groups" must be specified) - -Optional properties for "pinmux" nodes are: - bias-disable, bias-pull-down, bias-pull-up, drive-strength, - drive-strength-ua, input-enable, input-disable, input-schmitt-enable, - input-schmitt-disable, output-low, output-high, output-enable, - output-disable, slew-rate, output-polarity-invert, input-polarity-invert - -Optional properties for "groups" nodes are: - power-source - -Notes on specific properties include: -- bias-pull-up, -down, and -pin-default: The pull strength cannot be configured. -- drive-strength: There are 8 drive strength settings between 11 and 50 mA. -- input- and output-polarity-invert: Invert the polarity of either the input or - the output, respectively. -- power-source: Controls the output voltage of a bank of pins. Either - K210_PC_POWER_1V8 or K210_PC_POWER_3V3 may be specified. -- slew-rate: Specifying this property reduces the slew rate. - -Example: -fpioa: pinmux@502B0000 { - compatible = "kendryte,k210-fpioa"; - reg = <0x502B0000 0x100>; - kendryte,sysctl = <&sysctl>; - kendryte,power-offset = ; - - /* JTAG running at 3.3V and driven at 11 mA */ - fpioa_jtag: jtag { - voltage { - group = "A0"; - power-source = ; - }; - - jtag { - pinmux = , - , - , - ; - drive-strength = <11>; - } - }; - - /* I2C configured for use with a TCA9800 level shifter */ - fpioa_i2c: i2c { - i2c { - pinmux = , - ; - }; - - direction { - pinmux = ; - output-polarity-invert; - }; - }; - - /* UART with an active-high TX status LED */ - fpioa_uart1: uart1 { - uart { - pinmux = , - ; - }; - - status { - pinmux = ; - }; - }; -}; diff --git a/doc/device-tree-bindings/spi/snps,dw-apb-ssi.txt b/doc/device-tree-bindings/spi/snps,dw-apb-ssi.txt index 8d2888fbe3..7a0f11c53b 100644 --- a/doc/device-tree-bindings/spi/snps,dw-apb-ssi.txt +++ b/doc/device-tree-bindings/spi/snps,dw-apb-ssi.txt @@ -5,8 +5,8 @@ Required properties: - compatible : One of "altr,socfpga-spi", "altr,socfpga-arria10-spi", - "canaan,kendryte-k210-spi", - "canaan,kendryte-k210-ssi", + "canaan,k210-spi", + "canaan,k210-ssi", "intel,stratix10-spi", "intel,agilex-spi", "mscc,ocelot-spi", -- cgit v1.2.3 From 6d36e92d28c9d009c786e29623c9558b7652ceda Mon Sep 17 00:00:00 2001 From: "Marty E. Plummer" Date: Fri, 24 Dec 2021 16:43:46 +0300 Subject: rockchip: rk3399: Add support for chromebook_kevin Add support for Kevin, an RK3399-based convertible chromebook that is very similar to Bob. This patch is mostly based on existing support for Bob, with only minor changes for Kevin-specific things. Unlike other Gru boards, coreboot sets Kevin's center logic to 925 mV, so adjust it here in the dts as well. The rk3399-gru-kevin devicetree has an unknown event code reference which has to be defined, set it to the Linux counterpart. The new defconfig is copied from Bob with the diffconfig: DEFAULT_DEVICE_TREE "rk3399-gru-bob" -> "rk3399-gru-kevin" DEFAULT_FDT_FILE "rockchip/rk3399-gru-bob.dtb" -> "rockchip/rk3399-gru-kevin.dtb" VIDEO_ROCKCHIP_MAX_XRES 1280 -> 2400 VIDEO_ROCKCHIP_MAX_YRES 800 -> 1600 +TARGET_CHROMEBOOK_KEVIN y With this Kevin can boot from SPI flash to a usable U-Boot prompt on the display with the keyboard working, but cannot boot into Linux for unknown reasons. eMMC starts in a working state but fails to re-init, microSD card works but at a lower-than-expected speed, USB works but causes a hang on de-init. There are known workarounds to solve eMMC and USB issues. Cc: Marty E. Plummer Cc: Simon Glass [Alper: commit message, resync config with Bob, update MAINTAINERS, add to Rockchip doc, add Kconfig help message, set regulator] Co-developed-by: Alper Nebi Yasak Signed-off-by: Alper Nebi Yasak Reviewed-by: Kever Yang Reviewed-by: Simon Glass Tested-by: Simon Glass --- doc/board/rockchip/rockchip.rst | 1 + 1 file changed, 1 insertion(+) (limited to 'doc') diff --git a/doc/board/rockchip/rockchip.rst b/doc/board/rockchip/rockchip.rst index 144cb98ef9..a75e60b9fa 100644 --- a/doc/board/rockchip/rockchip.rst +++ b/doc/board/rockchip/rockchip.rst @@ -66,6 +66,7 @@ List of mainline supported Rockchip boards: - FriendlyElec NanoPi M4B (nanopi-m4b-rk3399) - FriendlyARM NanoPi NEO4 (nanopi-neo4-rk3399) - Google Bob (chromebook_bob) + - Google Kevin (chromebook_kevin) - Khadas Edge (khadas-edge-rk3399) - Khadas Edge-Captain (khadas-edge-captain-rk3399) - Khadas Edge-V (hadas-edge-v-rk3399) -- cgit v1.2.3 From 23f20ef77cb9f9777d05ddc88800d1d38d05202c Mon Sep 17 00:00:00 2001 From: Neil Armstrong Date: Wed, 2 Mar 2022 10:42:21 +0100 Subject: doc: board: amlogic-p20x: fix FIP generation doc The doc used GXL instructions, which couldn't work on GXBB SoCs. Signed-off-by: Neil Armstrong --- doc/board/amlogic/p200.rst | 57 +++++++++++++++++++++------------------------- doc/board/amlogic/p201.rst | 57 +++++++++++++++++++++------------------------- 2 files changed, 52 insertions(+), 62 deletions(-) (limited to 'doc') diff --git a/doc/board/amlogic/p200.rst b/doc/board/amlogic/p200.rst index c3d6441fd3..1c84f1c9d0 100644 --- a/doc/board/amlogic/p200.rst +++ b/doc/board/amlogic/p200.rst @@ -54,44 +54,39 @@ Go back to mainline U-boot source tree then : $ mkdir fip - $ cp $FIPDIR/gxl/bl2.bin fip/ - $ cp $FIPDIR/gxl/acs.bin fip/ - $ cp $FIPDIR/gxl/bl21.bin fip/ - $ cp $FIPDIR/gxl/bl30.bin fip/ - $ cp $FIPDIR/gxl/bl301.bin fip/ - $ cp $FIPDIR/gxl/bl31.img fip/ + $ cp $FIPDIR/gxb/bl2.bin fip/ + $ cp $FIPDIR/gxb/acs.bin fip/ + $ cp $FIPDIR/gxb/bl21.bin fip/ + $ cp $FIPDIR/gxb/bl30.bin fip/ + $ cp $FIPDIR/gxb/bl301.bin fip/ + $ cp $FIPDIR/gxb/bl31.img fip/ $ cp u-boot.bin fip/bl33.bin $ $FIPDIR/blx_fix.sh \ fip/bl30.bin \ - fip/zero_tmp \ - fip/bl30_zero.bin \ - fip/bl301.bin \ - fip/bl301_zero.bin \ - fip/bl30_new.bin \ - bl30 + fip/zero_tmp \ + fip/bl30_zero.bin \ + fip/bl301.bin \ + fip/bl301_zero.bin \ + fip/bl30_new.bin \ + bl30 - $ $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0 + $ python $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0 $ $FIPDIR/blx_fix.sh \ - fip/bl2_acs.bin \ - fip/zero_tmp \ - fip/bl2_zero.bin \ - fip/bl21.bin \ - fip/bl21_zero.bin \ - fip/bl2_new.bin \ - bl2 - - $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin - $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img - $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin - $ $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig - $ $FIPDIR/gxl/aml_encrypt_gxl --bootmk \ - --output fip/u-boot.bin \ - --bl2 fip/bl2.n.bin.sig \ - --bl30 fip/bl30_new.bin.enc \ - --bl31 fip/bl31.img.enc \ - --bl33 fip/bl33.bin.enc + fip/bl2_acs.bin \ + fip/zero_tmp \ + fip/bl2_zero.bin \ + fip/bl21.bin \ + fip/bl21_zero.bin \ + fip/bl2_new.bin \ + bl2 + + $ $FIPDIR/fip_create --bl30 fip/bl30_new.bin --bl31 fip/bl31.img --bl33 fip/bl33.bin fip/fip.bin + + $ cat fip/bl2_new.bin fip/fip.bin >fip/boot_new.bin + + $ $FIPDIR/gxb/aml_encrypt_gxb --bootsig --input fip/boot_new.bin --output fip/u-boot.bin and then write the image to SD with: diff --git a/doc/board/amlogic/p201.rst b/doc/board/amlogic/p201.rst index 06da933a2a..a3d451c6e6 100644 --- a/doc/board/amlogic/p201.rst +++ b/doc/board/amlogic/p201.rst @@ -54,44 +54,39 @@ Go back to mainline U-boot source tree then : $ mkdir fip - $ cp $FIPDIR/gxl/bl2.bin fip/ - $ cp $FIPDIR/gxl/acs.bin fip/ - $ cp $FIPDIR/gxl/bl21.bin fip/ - $ cp $FIPDIR/gxl/bl30.bin fip/ - $ cp $FIPDIR/gxl/bl301.bin fip/ - $ cp $FIPDIR/gxl/bl31.img fip/ + $ cp $FIPDIR/gxb/bl2.bin fip/ + $ cp $FIPDIR/gxb/acs.bin fip/ + $ cp $FIPDIR/gxb/bl21.bin fip/ + $ cp $FIPDIR/gxb/bl30.bin fip/ + $ cp $FIPDIR/gxb/bl301.bin fip/ + $ cp $FIPDIR/gxb/bl31.img fip/ $ cp u-boot.bin fip/bl33.bin $ $FIPDIR/blx_fix.sh \ fip/bl30.bin \ - fip/zero_tmp \ - fip/bl30_zero.bin \ - fip/bl301.bin \ - fip/bl301_zero.bin \ - fip/bl30_new.bin \ - bl30 + fip/zero_tmp \ + fip/bl30_zero.bin \ + fip/bl301.bin \ + fip/bl301_zero.bin \ + fip/bl30_new.bin \ + bl30 - $ $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0 + $ python $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0 $ $FIPDIR/blx_fix.sh \ - fip/bl2_acs.bin \ - fip/zero_tmp \ - fip/bl2_zero.bin \ - fip/bl21.bin \ - fip/bl21_zero.bin \ - fip/bl2_new.bin \ - bl2 - - $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin - $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img - $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin - $ $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig - $ $FIPDIR/gxl/aml_encrypt_gxl --bootmk \ - --output fip/u-boot.bin \ - --bl2 fip/bl2.n.bin.sig \ - --bl30 fip/bl30_new.bin.enc \ - --bl31 fip/bl31.img.enc \ - --bl33 fip/bl33.bin.enc + fip/bl2_acs.bin \ + fip/zero_tmp \ + fip/bl2_zero.bin \ + fip/bl21.bin \ + fip/bl21_zero.bin \ + fip/bl2_new.bin \ + bl2 + + $ $FIPDIR/fip_create --bl30 fip/bl30_new.bin --bl31 fip/bl31.img --bl33 fip/bl33.bin fip/fip.bin + + $ cat fip/bl2_new.bin fip/fip.bin >fip/boot_new.bin + + $ $FIPDIR/gxb/aml_encrypt_gxb --bootsig --input fip/boot_new.bin --output fip/u-boot.bin and then write the image to SD with: -- cgit v1.2.3 From 4c60512ad961d4d8d3193d1156f6d86fa8bc3e48 Mon Sep 17 00:00:00 2001 From: Neil Armstrong Date: Wed, 2 Mar 2022 10:42:22 +0100 Subject: doc: boards: amlogic: Add documentation on pre-generated FIP files It add documentation on licencing & provides links to the amlogic-boot-fip pre-built files collections. Signed-off-by: Neil Armstrong --- doc/board/amlogic/beelink-gtking.rst | 2 + doc/board/amlogic/beelink-gtkingpro.rst | 2 + doc/board/amlogic/index.rst | 8 +++ doc/board/amlogic/jethub-j100.rst | 2 + doc/board/amlogic/jethub-j80.rst | 2 + doc/board/amlogic/khadas-vim.rst | 2 + doc/board/amlogic/khadas-vim2.rst | 2 + doc/board/amlogic/khadas-vim3.rst | 2 + doc/board/amlogic/khadas-vim3l.rst | 2 + doc/board/amlogic/libretech-ac.rst | 2 + doc/board/amlogic/libretech-cc.rst | 2 + doc/board/amlogic/nanopi-k2.rst | 2 + doc/board/amlogic/odroid-c2.rst | 2 + doc/board/amlogic/odroid-c4.rst | 2 + doc/board/amlogic/odroid-n2.rst | 2 + doc/board/amlogic/p200.rst | 2 + doc/board/amlogic/p201.rst | 2 + doc/board/amlogic/p212.rst | 2 + doc/board/amlogic/pre-generated-fip.rst | 93 +++++++++++++++++++++++++++++++++ doc/board/amlogic/radxa-zero.rst | 2 + doc/board/amlogic/s400.rst | 2 + doc/board/amlogic/sei510.rst | 2 + doc/board/amlogic/sei610.rst | 2 + doc/board/amlogic/u200.rst | 2 + doc/board/amlogic/wetek-core2.rst | 2 + 25 files changed, 147 insertions(+) create mode 100644 doc/board/amlogic/pre-generated-fip.rst (limited to 'doc') diff --git a/doc/board/amlogic/beelink-gtking.rst b/doc/board/amlogic/beelink-gtking.rst index 56ce2cb273..2fb50c5f7b 100644 --- a/doc/board/amlogic/beelink-gtking.rst +++ b/doc/board/amlogic/beelink-gtking.rst @@ -44,6 +44,8 @@ https://github.com/LibreELEC/amlogic-boot-fip/tree/master/beelink-s922x NB: Beelink use a common board config for GT-King, GT-King Pro and the GS-King-X model, hence the "beelink-s922x" name. +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `beelink-s922x` + .. code-block:: bash $ wget https://github.com/LibreELEC/amlogic-boot-fip/archive/master.zip diff --git a/doc/board/amlogic/beelink-gtkingpro.rst b/doc/board/amlogic/beelink-gtkingpro.rst index d750351361..07bb04bb36 100644 --- a/doc/board/amlogic/beelink-gtkingpro.rst +++ b/doc/board/amlogic/beelink-gtkingpro.rst @@ -45,6 +45,8 @@ https://github.com/LibreELEC/amlogic-boot-fip/tree/master/beelink-s922x NB: Beelink use a common board config for GT-King, GT-King Pro and the GS-King-X model, hence the "beelink-s922x" name. +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `beelink-s922x` + .. code-block:: bash $ wget https://github.com/LibreELEC/amlogic-boot-fip/archive/master.zip diff --git a/doc/board/amlogic/index.rst b/doc/board/amlogic/index.rst index 189b1efe2b..9ef1440433 100644 --- a/doc/board/amlogic/index.rst +++ b/doc/board/amlogic/index.rst @@ -74,6 +74,14 @@ This matrix concerns the actual source code version. | PCIe (+NVMe) | *N/A* | *N/A* | *N/A* | **Yes** | **Yes** | **Yes** | **Yes** | +-------------------------------+-----------+-----------------+--------------+-------------+------------+-------------+--------------+ +Boot Documentation +------------------ + +.. toctree:: + :maxdepth: 1 + + pre-generated-fip + Board Documentation ------------------- diff --git a/doc/board/amlogic/jethub-j100.rst b/doc/board/amlogic/jethub-j100.rst index 58602787d3..d54519aaef 100644 --- a/doc/board/amlogic/jethub-j100.rst +++ b/doc/board/amlogic/jethub-j100.rst @@ -37,6 +37,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `jethub-j100` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain binaries from the git tree published by the board vendor: diff --git a/doc/board/amlogic/jethub-j80.rst b/doc/board/amlogic/jethub-j80.rst index 6b7bdc78b1..f669a0118d 100644 --- a/doc/board/amlogic/jethub-j80.rst +++ b/doc/board/amlogic/jethub-j80.rst @@ -33,6 +33,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `jethub-j80` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain binaries from the git tree published by the board vendor: diff --git a/doc/board/amlogic/khadas-vim.rst b/doc/board/amlogic/khadas-vim.rst index bbb61c29ef..04025d737c 100644 --- a/doc/board/amlogic/khadas-vim.rst +++ b/doc/board/amlogic/khadas-vim.rst @@ -30,6 +30,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `khadas-vim` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/khadas-vim2.rst b/doc/board/amlogic/khadas-vim2.rst index c57d96d8b0..7ac3bdcbaf 100644 --- a/doc/board/amlogic/khadas-vim2.rst +++ b/doc/board/amlogic/khadas-vim2.rst @@ -31,6 +31,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `khadas-vim2` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/khadas-vim3.rst b/doc/board/amlogic/khadas-vim3.rst index 8b7196d988..73dc32b79b 100644 --- a/doc/board/amlogic/khadas-vim3.rst +++ b/doc/board/amlogic/khadas-vim3.rst @@ -57,6 +57,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `khadas-vim3` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/khadas-vim3l.rst b/doc/board/amlogic/khadas-vim3l.rst index aed8955391..692ab3d21d 100644 --- a/doc/board/amlogic/khadas-vim3l.rst +++ b/doc/board/amlogic/khadas-vim3l.rst @@ -57,6 +57,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `khadas-vim3l` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/libretech-ac.rst b/doc/board/amlogic/libretech-ac.rst index 39bae86d32..7a915f9f26 100644 --- a/doc/board/amlogic/libretech-ac.rst +++ b/doc/board/amlogic/libretech-ac.rst @@ -30,6 +30,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `lafrite` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/libretech-cc.rst b/doc/board/amlogic/libretech-cc.rst index 94c74c5a8b..596ce45dc4 100644 --- a/doc/board/amlogic/libretech-cc.rst +++ b/doc/board/amlogic/libretech-cc.rst @@ -54,6 +54,8 @@ These binaries and the tools required below have been collected and prebuilt for convenience at . These apply to both v1 and v2. +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `lepotato` + Download and extract the libretech-cc release from there, and set FIPDIR to point to the `fip` subdirectory. diff --git a/doc/board/amlogic/nanopi-k2.rst b/doc/board/amlogic/nanopi-k2.rst index 1222ee4e85..76ff874434 100644 --- a/doc/board/amlogic/nanopi-k2.rst +++ b/doc/board/amlogic/nanopi-k2.rst @@ -30,6 +30,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `nanopi-k2` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/odroid-c2.rst b/doc/board/amlogic/odroid-c2.rst index 966c18b36e..8a1be4bf55 100644 --- a/doc/board/amlogic/odroid-c2.rst +++ b/doc/board/amlogic/odroid-c2.rst @@ -30,6 +30,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `odroid-c2` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/odroid-c4.rst b/doc/board/amlogic/odroid-c4.rst index f66d60a54d..b512c6a3d8 100644 --- a/doc/board/amlogic/odroid-c4.rst +++ b/doc/board/amlogic/odroid-c4.rst @@ -34,6 +34,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `odroid-c4` or `odroid-hc4` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/odroid-n2.rst b/doc/board/amlogic/odroid-n2.rst index fe63113230..7aad36e003 100644 --- a/doc/board/amlogic/odroid-n2.rst +++ b/doc/board/amlogic/odroid-n2.rst @@ -29,6 +29,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `odroid-n2` or `odroid-n2-plus` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/p200.rst b/doc/board/amlogic/p200.rst index 1c84f1c9d0..5e7c6b0276 100644 --- a/doc/board/amlogic/p200.rst +++ b/doc/board/amlogic/p200.rst @@ -31,6 +31,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `p200` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/p201.rst b/doc/board/amlogic/p201.rst index a3d451c6e6..2cd236582a 100644 --- a/doc/board/amlogic/p201.rst +++ b/doc/board/amlogic/p201.rst @@ -31,6 +31,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `p201` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/p212.rst b/doc/board/amlogic/p212.rst index e2f3fe313b..c1b73e83b1 100644 --- a/doc/board/amlogic/p212.rst +++ b/doc/board/amlogic/p212.rst @@ -31,6 +31,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `p212` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/pre-generated-fip.rst b/doc/board/amlogic/pre-generated-fip.rst new file mode 100644 index 0000000000..c63ea616b8 --- /dev/null +++ b/doc/board/amlogic/pre-generated-fip.rst @@ -0,0 +1,93 @@ +.. SPDX-License-Identifier: GPL-2.0+ + +Pre-Generated FIP file set +========================== + +The Amlogic ARMv8 based SoCs uses a vendor variant of the Trusted Firmware-A +boot architecture. + +You can find documentation on the Trusted Firmware-A architecture on: https://www.trustedfirmware.org/projects/tf-a/ + +The Trusted Firmware-A uses the following boot elements (simplified): + +- BL1: First boot step, implemented in ROM on Amlogic SoCs +- BL2: Second boot step, used to initialize the SoC main clocks & DDR interface. The BL21 and ACS board-specific binaries are "inserted" in the BL32 binary before signing/packaging in order to be flashed on the platform. +- BL30: Amlogic Secure Co-Processor (SCP) firmware used to handle all the system management operations (DVFS, suspend/resume, ...) +- BL301: Amlogic Secure Co-Processor (SCP) board-specific firmware "plug-in" to handle custom DVFS & suspend-resume parameters +- BL31: Initializes the interrupt controller and the system management interface (PSCI) +- BL32 (Optional): Is the Trusted Environment Execution (TEE) Operating System to run secure Trusted Apps, e.g. OP-TEE +- BL33: Is the last non-secure step, usually U-Boot which loads Linux + +Amlogic provides in binary form: + +- bl2.bin +- bl30.bin +- bl30.bin +- bl31.img +- bl32.bin + +And for lastest SoCs, Amlogic also provides the DDR drivers used by the BL2 binary. + +The licence of these files wasn't clear until recently, the currently Amlogic distribution licence +is the following: + +.. code-block:: C + + // Copyright (C) 2018 Amlogic, Inc. All rights reserved. + // + // All information contained herein is Amlogic confidential. + // + // This software is provided to you pursuant to Software License + // Agreement (SLA) with Amlogic Inc ("Amlogic"). This software may be + // used only in accordance with the terms of this agreement. + // + // Redistribution and use in source and binary forms, with or without + // modification is strictly prohibited without prior written permission + // from Amlogic. + // + // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +The following files are generated from the Amlogic U-Boot fork: + +- acs.bin: contains the PLL & DDR parameters for the board +- bl301.bin: contains the DVFS & suspend-resume handling code for the board +- bl33.bin: U-boot binary image + +The acs.bin & bl301.bin uses the U-Boot GPL-2.0+ headers & build systems, thus those +are considered issued from GPL-2.0+ source code. + +The tools used to sign & package those binary files are delivered in binary format +for Intel x86-64 and Python 2.x only. + +A collection of pre-built with the corresponding Amlogic binaries for the common +commercially available boards were collected in the https://github.com/LibreELEC/amlogic-boot-fip +repository. + +Using this collection for a commercially available board is very easy. + +Here considering the Libre Computer AML-S905X-CC, which codename is `lepotato`: + +.. code-block:: bash + + $ git clone https://github.com/LibreELEC/amlogic-boot-fip --depth=1 + $ cd amlogic-boot-fip + $ mkdir my-output-dir + $ ./build-fip.sh lepotato /path/to/u-boot/u-boot.bin my-output-dir + +and then write the image to SD with: + +.. code-block:: bash + + $ DEV=/dev/your_sd_device + $ dd if=my-output-dir/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1 + $ dd if=my-output-dir/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444 diff --git a/doc/board/amlogic/radxa-zero.rst b/doc/board/amlogic/radxa-zero.rst index 423403f3c7..f5611f52ec 100644 --- a/doc/board/amlogic/radxa-zero.rst +++ b/doc/board/amlogic/radxa-zero.rst @@ -34,6 +34,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `radxa-zero` + Amlogic does not provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from git trees published by the board vendor: diff --git a/doc/board/amlogic/s400.rst b/doc/board/amlogic/s400.rst index 52c7b27332..c92817b421 100644 --- a/doc/board/amlogic/s400.rst +++ b/doc/board/amlogic/s400.rst @@ -31,6 +31,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `s400` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/sei510.rst b/doc/board/amlogic/sei510.rst index 2d296b1c3c..c55e778494 100644 --- a/doc/board/amlogic/sei510.rst +++ b/doc/board/amlogic/sei510.rst @@ -27,6 +27,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `sei510` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/sei610.rst b/doc/board/amlogic/sei610.rst index 9434e6f023..2d754497cc 100644 --- a/doc/board/amlogic/sei610.rst +++ b/doc/board/amlogic/sei610.rst @@ -29,6 +29,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `sei610` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/u200.rst b/doc/board/amlogic/u200.rst index 5aa3936c28..53213fdb68 100644 --- a/doc/board/amlogic/u200.rst +++ b/doc/board/amlogic/u200.rst @@ -32,6 +32,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `u200` + Amlogic doesn't provide sources for the firmware and for tools needed to create the bootloader image, so it is necessary to obtain them from the git tree published by the board vendor: diff --git a/doc/board/amlogic/wetek-core2.rst b/doc/board/amlogic/wetek-core2.rst index 1012079ded..0147d5fbe2 100644 --- a/doc/board/amlogic/wetek-core2.rst +++ b/doc/board/amlogic/wetek-core2.rst @@ -29,6 +29,8 @@ U-Boot compilation Image creation -------------- +For simplified usage, pleaser refer to :doc:`pre-generated-fip` with codename `wetek-core2` + Amlogic does not provide sources for the firmware or the tools needed to create the bootloader image, and WeTek has not publicly shared the precompiled FIP binaries. However the public Khadas VIM2 sources also -- cgit v1.2.3 From aac01df4f589f31746265fd2b6399ed0a338d51d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Tue, 8 Mar 2022 18:59:56 +0100 Subject: Nokia RX-51: Update documentation about QEMU MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add section how to run U-Boot in n900 qemu machine. Signed-off-by: Pali Rohár Signed-off-by: Heinrich Schuchardt --- doc/board/nokia/rx51.rst | 57 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) (limited to 'doc') diff --git a/doc/board/nokia/rx51.rst b/doc/board/nokia/rx51.rst index 941f78e777..061fe7677e 100644 --- a/doc/board/nokia/rx51.rst +++ b/doc/board/nokia/rx51.rst @@ -160,3 +160,60 @@ UBIFS support add following lines into file ``configs/nokia_rx51_defconfig``:: CONFIG_CMD_UBIFS=y CONFIG_MTD_UBI_FASTMAP=y CONFIG_MTD_UBI_FASTMAP_AUTOCONVERT=1 + +Run in QEMU +----------- + +Download and compile Linaro version of qemu which contains ``n900`` qemu +machine. Source code is available in qemu-linaro git repository and the +last working version is at commit 8f8d8e0796efe1a6f34cdd83fb798f3c41217ec1. + +Use following commands to compile ``qemu-system-arm`` binary with ``n900`` +qemu machine support: + +.. code-block:: bash + + git clone https://git.linaro.org/qemu/qemu-linaro.git + cd qemu-linaro + git checkout 8f8d8e0796efe1a6f34cdd83fb798f3c41217ec1 + ./configure --enable-system --target-list=arm-softmmu --disable-werror + make -j4 + cd .. + ln -s qemu-linaro/arm-softmmu/qemu-system-arm . + +Using ``n900`` qemu machine requires proprietary Nokia qemu ``qflasher`` tool +(in reality it is just generator of qemu MTD images) with first stage images +(``xloader-qemu.bin`` and ``secondary-qemu.bin``), similar what is required +on the real HW. License of flasher and images allows non-commercial +redistribution and it is available at maemo.org website: + +.. code-block:: bash + + wget -c http://repository.maemo.org/qemu-n900/qemu-n900.tar.gz + tar -xf qemu-n900.tar.gz + +To generate qemu bootable MTD image ``mtd.img`` from U-Boot binary +``u-boot.bin`` and unpacked first stage images, run following command: + +.. code-block:: bash + + ./qflasher -v -x xloader-qemu.bin -s secondary-qemu.bin -k u-boot.bin -m rx51 -o mtd.img + +Instead of ``u-boot.bin`` binary it is possible to also used combined +U-Boot + kernel binary ``combined.bin``. + +Finally, to boot ``mtd.img`` with graphics display and keyboard with optional +serial console on current terminal, run: + +.. code-block:: bash + + ./qemu-system-arm -M n900 -mtdblock mtd.img -serial /dev/tty + +Additionally it is possible to emulate also eMMC and uSD card by appending +qemu ``-sd`` arguments: + +.. code-block:: bash + + ./qemu-system-arm -M n900 -mtdblock mtd.img -sd emmc.img -sd sd.img -serial /dev/tty + +For more examples, look into the ``test/nokia_rx51_test.sh`` CI testing script. -- cgit v1.2.3 From 2899296e5cbbf7e28f5e43025eda74382f44f4ca Mon Sep 17 00:00:00 2001 From: Jan Kiszka Date: Wed, 16 Mar 2022 12:12:16 +0100 Subject: doc: uefi: Fix reference to CONFIG_EFI_SECURE_BOOT There is no CONFIG_UEFI_SECURE_BOOT, and there was never any. Signed-off-by: Jan Kiszka Reviewed-by: Heinrich Schuchardt --- doc/develop/uefi/uefi.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/develop/uefi/uefi.rst b/doc/develop/uefi/uefi.rst index b7bf135627..fe337c88bd 100644 --- a/doc/develop/uefi/uefi.rst +++ b/doc/develop/uefi/uefi.rst @@ -105,7 +105,7 @@ The UEFI specification[1] defines a secure way of executing UEFI images by verifying a signature (or message digest) of image with certificates. This feature on U-Boot is enabled with:: - CONFIG_UEFI_SECURE_BOOT=y + CONFIG_EFI_SECURE_BOOT=y To make the boot sequence safe, you need to establish a chain of trust; In UEFI secure boot the chain trust is defined by the following UEFI variables -- cgit v1.2.3 From bfffb9f84fdacca12b65048697383d27273d47cb Mon Sep 17 00:00:00 2001 From: Matthias Brugger Date: Mon, 14 Mar 2022 12:03:54 +0100 Subject: doc: board: raspberrypi: Add documentation Add documentation about the different configuration files for the RaspberryPi board family. Signed-off-by: Matthias Brugger Reviewed-by: Simon Glass Reviewed-by: Heinrich Schuchardt --- doc/board/broadcom/index.rst | 10 +++++++ doc/board/broadcom/raspberrypi.rst | 54 ++++++++++++++++++++++++++++++++++++++ doc/board/index.rst | 1 + 3 files changed, 65 insertions(+) create mode 100644 doc/board/broadcom/index.rst create mode 100644 doc/board/broadcom/raspberrypi.rst (limited to 'doc') diff --git a/doc/board/broadcom/index.rst b/doc/board/broadcom/index.rst new file mode 100644 index 0000000000..4f0e825fef --- /dev/null +++ b/doc/board/broadcom/index.rst @@ -0,0 +1,10 @@ +.. SPDX-License-Identifier: GPL-2.0+ +.. Copyright (C) 2022 Matthias Brugger + +Broadcom +======== + +.. toctree:: + :maxdepth: 2 + + raspberrypi diff --git a/doc/board/broadcom/raspberrypi.rst b/doc/board/broadcom/raspberrypi.rst new file mode 100644 index 0000000000..1d00b38bb2 --- /dev/null +++ b/doc/board/broadcom/raspberrypi.rst @@ -0,0 +1,54 @@ +.. SPDX-License-Identifier: GPL-2.0+ +.. Copyright (C) 2022 Matthias Brugger + +Raspberry Pi +============ + +About this +---------- + +This document describes the information about Raspberry Pi boards +and it's usage steps. + +Raspberry Pi boards +------------------- + +List of the supported Rasbperry Pi boards and the corresponding defconfig files: + +32 bit +^^^^^^ + +* rpi_defconfig + - Raspberry Pi +* rpi_0_w_defconfig + - Raspberry Pi 1 + - Raspberry Pi zero +* rpi_2_defconfig + - Raspberry Pi 2 +* rpi_3_32b_defconfig + - Raspberry Pi 3b +* rpi_4_32b_defconfig + - Raspberry Pi 4b + +64 bit +^^^^^^ + +* rpi_3_defconfig + - Raspberry Pi 3b +* rpi_3_b_plus_defconfig + - Raspberry Pi 3b+ +* rpi_4_defconfig + - Raspberry Pi 4b +* rpi_arm64_defconfig + - Raspberry Pi 3b + - Raspberry Pi 3b+ + - Raspberry Pi 4b + - Raspberry Pi 400 + - Raspberry Pi CM 3 + - Raspberry Pi CM 3+ + - Raspberry Pi CM 4 + - Raspberry Pi zero 2 w + +rpi_arm64_defconfig uses the device-tree provided by the firmware instead of +the embedded one. It allows to use the same U-Boot binary to boot different +boards. diff --git a/doc/board/index.rst b/doc/board/index.rst index be9ba4de4d..f7bfc441f7 100644 --- a/doc/board/index.rst +++ b/doc/board/index.rst @@ -14,6 +14,7 @@ Board-specific doc apple/index armltd/index atmel/index + broadcom/index congatec/index coreboot/index emulation/index -- cgit v1.2.3 From fc1383ae2b5ca69e51bee68e4047589a5ee7b386 Mon Sep 17 00:00:00 2001 From: Michael Opdenacker Date: Wed, 2 Mar 2022 16:56:02 +0100 Subject: bootcount: clarify documentation - Grammar fixes - Clarify explanations Signed-off-by: Michael Opdenacker Reviewed-by: Heiko Schocher --- doc/README.bootcount | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) (limited to 'doc') diff --git a/doc/README.bootcount b/doc/README.bootcount index b1c22905c6..f6c5f82f98 100644 --- a/doc/README.bootcount +++ b/doc/README.bootcount @@ -3,14 +3,16 @@ Boot Count Limit ================ +This is enabled by CONFIG_BOOTCOUNT_LIMIT. + This allows to detect multiple failed attempts to boot Linux. -After a power-on reset, "bootcount" variable will be initialized with 1, and +After a power-on reset, the "bootcount" variable will be initialized to 1, and each reboot will increment the value by 1. If, after a reboot, the new value of "bootcount" exceeds the value of "bootlimit", then instead of the standard boot action (executing the contents of -"bootcmd") an alternate boot action will be performed, and the contents of +"bootcmd"), an alternate boot action will be performed, and the contents of "altbootcmd" will be executed. If the variable "bootlimit" is not defined in the environment, the Boot Count @@ -18,18 +20,18 @@ Limit feature is disabled. If it is enabled, but "altbootcmd" is not defined, then U-Boot will drop into interactive mode and remain there. It is the responsibility of some application code (typically a Linux -application) to reset the variable "bootcount", thus allowing for more boot -cycles. +application) to reset the variable "bootcount" to 0 when the system booted +successfully, thus allowing for more boot cycles. -BOOTCOUNT_EXT -------------- +CONFIG_BOOTCOUNT_EXT +-------------------- This adds support for maintaining boot count in a file on an EXT filesystem. -The file to use is define by: +The file to use is defined by: -SYS_BOOTCOUNT_EXT_INTERFACE -SYS_BOOTCOUNT_EXT_DEVPART -SYS_BOOTCOUNT_EXT_NAME +CONFIG_SYS_BOOTCOUNT_EXT_INTERFACE +CONFIG_SYS_BOOTCOUNT_EXT_DEVPART +CONFIG_SYS_BOOTCOUNT_EXT_NAME The format of the file is: @@ -42,10 +44,10 @@ u8 bootcount u8 upgrade_available ==== ================= -To prevent unattended usage of "altbootcmd" the "upgrade_available" variable is +To prevent unattended usage of "altbootcmd", the "upgrade_available" variable is used. -If "upgrade_available" is 0, "bootcount" is not saved, if "upgrade_available" is -1 "bootcount" is save. -So the Userspace Application must set the "upgrade_available" and "bootcount" -variables to 0, if a boot was successfully. -This also prevents writes on all reboots. +If "upgrade_available" is 0, "bootcount" is not saved. +If "upgrade_available" is 1, "bootcount" is saved. +So a userspace application should take care of setting the "upgrade_available" +and "bootcount" variables to 0, if the system boots successfully. +This also avoids writing the "bootcount" information on all reboots. -- cgit v1.2.3 From cbc05bba8cb7da62eae65f41e1b0ddbcadc06bba Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Fri, 25 Mar 2022 13:40:54 +0100 Subject: doc: update doc/sphinx/requirements.txt Pin all dependencies as reported by 'pip freeze'. Signed-off-by: Heinrich Schuchardt --- doc/sphinx/requirements.txt | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) (limited to 'doc') diff --git a/doc/sphinx/requirements.txt b/doc/sphinx/requirements.txt index 44c187880d..5baec4d93e 100644 --- a/doc/sphinx/requirements.txt +++ b/doc/sphinx/requirements.txt @@ -1,4 +1,25 @@ +alabaster==0.7.12 +Babel==2.9.1 +certifi==2021.10.8 +charset-normalizer==2.0.12 docutils==0.16 -sphinx==3.4.3 -sphinx_rtd_theme==1.0.0 +idna==3.3 +imagesize==1.3.0 +Jinja2==3.0.3 +MarkupSafe==2.1.1 +packaging==21.3 +Pygments==2.11.2 +pyparsing==3.0.7 +pytz==2022.1 +requests==2.27.1 six==1.16.0 +snowballstemmer==2.2.0 +Sphinx==3.4.3 +sphinx-rtd-theme==1.0.0 +sphinxcontrib-applehelp==1.0.2 +sphinxcontrib-devhelp==1.0.2 +sphinxcontrib-htmlhelp==2.0.0 +sphinxcontrib-jsmath==1.0.1 +sphinxcontrib-qthelp==1.0.3 +sphinxcontrib-serializinghtml==1.1.5 +urllib3==1.26.9 -- cgit v1.2.3 From 814a7eea80f6183cede88a7568f8e382c1523a74 Mon Sep 17 00:00:00 2001 From: Heinrich Schuchardt Date: Fri, 25 Mar 2022 07:01:59 +0100 Subject: doc: man-page for the wdt command Describe the wdt command. Signed-off-by: Heinrich Schuchardt --- doc/usage/index.rst | 1 + doc/usage/wdt.rst | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 doc/usage/wdt.rst (limited to 'doc') diff --git a/doc/usage/index.rst b/doc/usage/index.rst index 0aacf531b2..630a6cb28a 100644 --- a/doc/usage/index.rst +++ b/doc/usage/index.rst @@ -52,3 +52,4 @@ Shell commands size true ums + wdt diff --git a/doc/usage/wdt.rst b/doc/usage/wdt.rst new file mode 100644 index 0000000000..8d80433c1f --- /dev/null +++ b/doc/usage/wdt.rst @@ -0,0 +1,77 @@ +.. SPDX-License-Identifier: GPL-2.0+: + +wdt command +============ + +Synopsis +-------- + +:: + + wdt list + wdt dev [] + wdt start [flags] + wdt stop + wdt reset + wdt expirer [flags] + +Description +----------- + +The wdt command is used to control watchdog timers. + +The 'wdt list' command shows a list of all watchdog devices. + +The 'wdt dev' command called without argument shows the current watchdog device. +The current device is set when passing the name of the device as argument. + +The 'wdt start' command starts the current watchdog timer. + +The 'wdt stop' command stops the current watchdog timer. + +The 'wdt reset' command resets the current watchdog timer without stopping it. + +The 'wdt expire' command let's the current watchdog timer expire immediately. +This will lead to a reset. + +name + name of the watchdog device + +timeout_ms + timeout interval in milliseconds + +flags + unsigned long value passed to the driver. The usage is driver specific. + The value is ignored by most drivers. + +Example +------- + +:: + + => wdt dev + No watchdog timer device set! + => wdt list + watchdog@1c20ca0 (sunxi_wdt) + => wdt dev watchdog@1c20ca0 + => wdt dev + dev: watchdog@1c20ca0 + => wdt start 3000 + => wdt reset + => wdt stop + => wdt expire + + U-Boot SPL 2022.04-rc3 (Mar 25 2022 - 13:48:33 +0000) + + In the example above '(sunxi_wdt)' refers to the driver for the watchdog + device. + +Configuration +------------- + +The command is only available if CONFIG_CMD_WDT=y. + +Return value +------------ + +The return value $? is 0 if the command succeeds, 1 upon failure. -- cgit v1.2.3 From d66b0f5dd7a9662f8c9c3d11e6ad351acc1ce630 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pali=20Roh=C3=A1r?= Date: Fri, 25 Mar 2022 10:51:46 +0100 Subject: Fix URLs to old freescale git repos MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Freescale git repos are now on source.codeaurora.org. Signed-off-by: Pali Rohár --- doc/README.mpc85xx-sd-spi-boot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/README.mpc85xx-sd-spi-boot b/doc/README.mpc85xx-sd-spi-boot index e3f580446a..329de4e6c4 100644 --- a/doc/README.mpc85xx-sd-spi-boot +++ b/doc/README.mpc85xx-sd-spi-boot @@ -14,7 +14,7 @@ Where to get boot_format: ======================== you can browse it online at: -http://git.freescale.com/git/cgit.cgi/ppc/sdk/boot-format.git/ +https://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/boot-format Building ======== -- cgit v1.2.3