From 71c67c38e75eeb05e61b651db2a1d10a55046d89 Mon Sep 17 00:00:00 2001 From: Telukula Jeevan Kumar Sahu Date: Fri, 3 Jan 2025 17:18:19 +0530 Subject: [PATCH] fix: AM335x/AM437x/AM57x: Update Directory Structure and ARM architectural references Signed-off-by: Telukula Jeevan Kumar Sahu --- .../Kernel/_Users_Guide.rst | 38 +++++++++-- ...rocessor_SDK_Linux_Directory_Structure.rst | 66 ++++++++++++++----- 2 files changed, 79 insertions(+), 25 deletions(-) diff --git a/source/linux/Foundational_Components/Kernel/_Users_Guide.rst b/source/linux/Foundational_Components/Kernel/_Users_Guide.rst index 2b33d0870..a76873ebc 100644 --- a/source/linux/Foundational_Components/Kernel/_Users_Guide.rst +++ b/source/linux/Foundational_Components/Kernel/_Users_Guide.rst @@ -483,10 +483,19 @@ But developers may want to deploy and test new Kernel and DTB without going through the standard build system. For the specific purpose, board specific fitImage.its will be present in the prebuilt-images directory. -Pre-requisites ( Already part of SDK installations ): +.. ifconfig:: CONFIG_part_family in ('General_family', 'AM335X_family', 'AM437X_family') + + Pre-requisites ( Already part of SDK installations ): + + - Uboot build directory for ARMV7 + - Linux Image and DTB + +.. ifconfig:: CONFIG_part_family not in ('General_family', 'AM335X_family', 'AM437X_family') -- Uboot build directory for ARMV8 -- Linux Image and DTB + Pre-requisites ( Already part of SDK installations ): + + - Uboot build directory for ARMV8 + - Linux Image and DTB .. note:: @@ -626,9 +635,17 @@ Generating the fitImage This step will embed the public key in the u-boot.dtb file that was already built during the initial u-boot build. -.. code-block:: console +.. ifconfig:: CONFIG_part_family in ('General_family', 'AM335X_family', 'AM437X_family') - mkimage -r -f fitImage.its -k $UBOOT_PATH/arch/arm/mach-k3/keys -K $UBOOT_PATH/build/$ARMV8/dts/dt.dtb fitImage + .. code-block:: console + + mkimage -r -f fitImage.its -k $UBOOT_PATH/board/ti/keys -K $UBOOT_PATH/build/$ARMV7/dts/dt.dtb fitImage + +.. ifconfig:: CONFIG_part_family not in ('General_family', 'AM335X_family', 'AM437X_family') + + .. code-block:: console + + mkimage -r -f fitImage.its -k $UBOOT_PATH/arch/arm/mach-k3/keys -K $UBOOT_PATH/build/$ARMV8/dts/dt.dtb fitImage .. note:: @@ -639,8 +656,15 @@ built during the initial u-boot build. Build uboot again ^^^^^^^^^^^^^^^^^ -The updated u-boot.dtb needs to be packed in u-boot.img for authentication -so rebuild uboot ARMV8 without changing any parameters. +.. ifconfig:: CONFIG_part_family in ('General_family', 'AM335X_family', 'AM437X_family') + + The updated u-boot.dtb needs to be packed in u-boot.img for authentication + so rebuild uboot ARMV7 without changing any parameters. + +.. ifconfig:: CONFIG_part_family not in ('General_family', 'AM335X_family', 'AM437X_family') + + The updated u-boot.dtb needs to be packed in u-boot.img for authentication + so rebuild uboot ARMV8 without changing any parameters. Refer to :ref:`top-level-makefile` diff --git a/source/linux/Overview/_Processor_SDK_Linux_Directory_Structure.rst b/source/linux/Overview/_Processor_SDK_Linux_Directory_Structure.rst index ba2c8bf70..560422117 100644 --- a/source/linux/Overview/_Processor_SDK_Linux_Directory_Structure.rst +++ b/source/linux/Overview/_Processor_SDK_Linux_Directory_Structure.rst @@ -9,21 +9,41 @@ directories and files .. ifconfig:: CONFIG_sdk in ('SITARA') - .. code-block:: console + .. ifconfig:: CONFIG_part_variant in ('AM335X', 'AM437X', 'AM57X') - ./ - ├── bin/ - ├── board-support/ - ├── example-applications/ - ├── filesystem/ - ├── k3r5-devkit/ - ├── licenses/ - ├── linux-devkit/ - ├── Makefile - ├── makerules/ - ├── manifest/ - ├── Rules.make - └── setup.sh* + .. code-block:: console + + ./ + ├── bin/ + ├── board-support/ + ├── example-applications/ + ├── external-toolchain-dir/ + ├── filesystem/ + ├── licenses/ + ├── linux-devkit/ + ├── Makefile + ├── makerules/ + ├── manifest/ + ├── Rules.make + └── setup.sh* + + .. ifconfig:: CONFIG_part_variant not in ('AM335X', 'AM437X', 'AM57X') + + .. code-block:: console + + ./ + ├── bin/ + ├── board-support/ + ├── example-applications/ + ├── filesystem/ + ├── k3r5-devkit/ + ├── licenses/ + ├── linux-devkit/ + ├── Makefile + ├── makerules/ + ├── manifest/ + ├── Rules.make + └── setup.sh* .. ifconfig:: CONFIG_sdk in ('JACINTO','j7_foundational') @@ -61,10 +81,20 @@ Processor SDK devices. - **filesystem** - Contains the reference file systems. These include the smaller base file system as well as the full-featured SDK file system. -- **linux-devkit** - Contains the tools and libraries to speed - development for the target device for the ARMV8 architechture -- **k3r5-devkit** - Contains the tools and libraries to speed - development for the target device for the ARMV7 architechture +.. ifconfig:: CONFIG_part_variant in ('AM335X', 'AM437X', 'AM57X') + + - **linux-devkit** - Contains the tools and libraries to speed + development for the target device for the ARMV7 architechture + - **external-toolchain-dir** - Contains the external ARM GNU toolchain + to speed development for the target device for the ARMV7 architechture + +.. ifconfig:: CONFIG_part_variant not in ('AM335X', 'AM437X', 'AM57X') + + - **linux-devkit** - Contains the tools and libraries to speed + development for the target device for the ARMV8 architechture + - **k3r5-devkit** - Contains the tools and libraries to speed + development for the target device for the ARMV7 architechture + - **Makefile** - Provides build targets for many of the SDK components from the top-level of the SDK. - **makerules** - Make rules for all the topLevel Makefile build targets