Loading Documentation/arm/Booting +29 −4 Original line number Original line Diff line number Diff line Loading @@ -65,13 +65,19 @@ looks at the connected hardware is beyond the scope of this document. The boot loader must ultimately be able to provide a MACH_TYPE_xxx The boot loader must ultimately be able to provide a MACH_TYPE_xxx value to the kernel. (see linux/arch/arm/tools/mach-types). value to the kernel. (see linux/arch/arm/tools/mach-types). 4. Setup boot data 4. Setup the kernel tagged list ------------------ ------------------------------- Existing boot loaders: OPTIONAL, HIGHLY RECOMMENDED Existing boot loaders: OPTIONAL, HIGHLY RECOMMENDED New boot loaders: MANDATORY New boot loaders: MANDATORY The boot loader must provide either a tagged list or a dtb image for passing configuration data to the kernel. The physical address of the boot data is passed to the kernel in register r2. 4a. Setup the kernel tagged list -------------------------------- The boot loader must create and initialise the kernel tagged list. The boot loader must create and initialise the kernel tagged list. A valid tagged list starts with ATAG_CORE and ends with ATAG_NONE. A valid tagged list starts with ATAG_CORE and ends with ATAG_NONE. The ATAG_CORE tag may or may not be empty. An empty ATAG_CORE tag The ATAG_CORE tag may or may not be empty. An empty ATAG_CORE tag Loading Loading @@ -101,6 +107,24 @@ The tagged list must be placed in a region of memory where neither the kernel decompressor nor initrd 'bootp' program will overwrite the kernel decompressor nor initrd 'bootp' program will overwrite it. The recommended placement is in the first 16KiB of RAM. it. The recommended placement is in the first 16KiB of RAM. 4b. Setup the device tree ------------------------- The boot loader must load a device tree image (dtb) into system ram at a 64bit aligned address and initialize it with the boot data. The dtb format is documented in Documentation/devicetree/booting-without-of.txt. The kernel will look for the dtb magic value of 0xd00dfeed at the dtb physical address to determine if a dtb has been passed instead of a tagged list. The boot loader must pass at a minimum the size and location of the system memory, and the root filesystem location. The dtb must be placed in a region of memory where the kernel decompressor will not overwrite it. The recommended placement is in the first 16KiB of RAM with the caveat that it may not be located at physical address 0 since the kernel interprets a value of 0 in r2 to mean neither a tagged list nor a dtb were passed. 5. Calling the kernel image 5. Calling the kernel image --------------------------- --------------------------- Loading @@ -125,7 +149,8 @@ In either case, the following conditions must be met: - CPU register settings - CPU register settings r0 = 0, r0 = 0, r1 = machine type number discovered in (3) above. r1 = machine type number discovered in (3) above. r2 = physical address of tagged list in system RAM. r2 = physical address of tagged list in system RAM, or physical address of device tree block (dtb) in system RAM - CPU mode - CPU mode All forms of interrupts must be disabled (IRQs and FIQs) All forms of interrupts must be disabled (IRQs and FIQs) Loading Documentation/powerpc/dts-bindings/fsl/sata.txt→Documentation/devicetree/bindings/ata/fsl-sata.txt +0 −0 File moved. View file Documentation/powerpc/dts-bindings/eeprom.txt→Documentation/devicetree/bindings/eeprom.txt +0 −0 File moved. View file Documentation/powerpc/dts-bindings/fsl/8xxx_gpio.txt→Documentation/devicetree/bindings/gpio/8xxx_gpio.txt +0 −0 File moved. View file Documentation/powerpc/dts-bindings/gpio/gpio.txt→Documentation/devicetree/bindings/gpio/gpio.txt +0 −0 File moved. View file Loading
Documentation/arm/Booting +29 −4 Original line number Original line Diff line number Diff line Loading @@ -65,13 +65,19 @@ looks at the connected hardware is beyond the scope of this document. The boot loader must ultimately be able to provide a MACH_TYPE_xxx The boot loader must ultimately be able to provide a MACH_TYPE_xxx value to the kernel. (see linux/arch/arm/tools/mach-types). value to the kernel. (see linux/arch/arm/tools/mach-types). 4. Setup boot data 4. Setup the kernel tagged list ------------------ ------------------------------- Existing boot loaders: OPTIONAL, HIGHLY RECOMMENDED Existing boot loaders: OPTIONAL, HIGHLY RECOMMENDED New boot loaders: MANDATORY New boot loaders: MANDATORY The boot loader must provide either a tagged list or a dtb image for passing configuration data to the kernel. The physical address of the boot data is passed to the kernel in register r2. 4a. Setup the kernel tagged list -------------------------------- The boot loader must create and initialise the kernel tagged list. The boot loader must create and initialise the kernel tagged list. A valid tagged list starts with ATAG_CORE and ends with ATAG_NONE. A valid tagged list starts with ATAG_CORE and ends with ATAG_NONE. The ATAG_CORE tag may or may not be empty. An empty ATAG_CORE tag The ATAG_CORE tag may or may not be empty. An empty ATAG_CORE tag Loading Loading @@ -101,6 +107,24 @@ The tagged list must be placed in a region of memory where neither the kernel decompressor nor initrd 'bootp' program will overwrite the kernel decompressor nor initrd 'bootp' program will overwrite it. The recommended placement is in the first 16KiB of RAM. it. The recommended placement is in the first 16KiB of RAM. 4b. Setup the device tree ------------------------- The boot loader must load a device tree image (dtb) into system ram at a 64bit aligned address and initialize it with the boot data. The dtb format is documented in Documentation/devicetree/booting-without-of.txt. The kernel will look for the dtb magic value of 0xd00dfeed at the dtb physical address to determine if a dtb has been passed instead of a tagged list. The boot loader must pass at a minimum the size and location of the system memory, and the root filesystem location. The dtb must be placed in a region of memory where the kernel decompressor will not overwrite it. The recommended placement is in the first 16KiB of RAM with the caveat that it may not be located at physical address 0 since the kernel interprets a value of 0 in r2 to mean neither a tagged list nor a dtb were passed. 5. Calling the kernel image 5. Calling the kernel image --------------------------- --------------------------- Loading @@ -125,7 +149,8 @@ In either case, the following conditions must be met: - CPU register settings - CPU register settings r0 = 0, r0 = 0, r1 = machine type number discovered in (3) above. r1 = machine type number discovered in (3) above. r2 = physical address of tagged list in system RAM. r2 = physical address of tagged list in system RAM, or physical address of device tree block (dtb) in system RAM - CPU mode - CPU mode All forms of interrupts must be disabled (IRQs and FIQs) All forms of interrupts must be disabled (IRQs and FIQs) Loading
Documentation/powerpc/dts-bindings/fsl/sata.txt→Documentation/devicetree/bindings/ata/fsl-sata.txt +0 −0 File moved. View file
Documentation/powerpc/dts-bindings/eeprom.txt→Documentation/devicetree/bindings/eeprom.txt +0 −0 File moved. View file
Documentation/powerpc/dts-bindings/fsl/8xxx_gpio.txt→Documentation/devicetree/bindings/gpio/8xxx_gpio.txt +0 −0 File moved. View file
Documentation/powerpc/dts-bindings/gpio/gpio.txt→Documentation/devicetree/bindings/gpio/gpio.txt +0 −0 File moved. View file