From d21e0c03cb9343547bf49a76949a47c7bd4d8614 Mon Sep 17 00:00:00 2001 From: sadik Date: Tue, 1 Jul 2025 13:38:44 +0530 Subject: [PATCH] feat(linux): add initial doc support for am62d. Update the configs/ and source/ files for am62d platform. Signed-off-by: sadik --- configs/AM62DX/AM62DX_linux_config.txt | 43 +++ configs/AM62DX/AM62DX_linux_tags.py | 9 + configs/AM62DX/AM62DX_linux_toc.txt | 78 ++++++ source/devices/AM62DX/index.rst | 45 ++++ .../AM62DX/linux/Linux_Performance_Guide.rst | 16 ++ source/devices/AM62DX/linux/Overview.rst | 21 ++ .../Overview/Build_and_Run_the_Demos.rst | 7 + .../Overview/Download_and_Install_the_SDK.rst | 92 +++++++ .../linux/Overview/Run_Setup_Scripts.rst | 251 ++++++++++++++++++ .../linux/Overview_Getting_Started_Guide.rst | 15 ++ .../linux/RT_Linux_Performance_Guide.rst | 14 + .../devices/AM62DX/linux/Release_Specific.rst | 12 + ...ease_Specific_Kernel_Performance_Guide.rst | 9 + .../Release_Specific_Migration_Guide.rst | 8 + ...cific_Supported_Platforms_and_Versions.rst | 29 ++ ...ase_Specific_Yocto_layer_Configuration.rst | 22 ++ .../AM62DX/linux/_Release_Specific_QSG.rst | 82 ++++++ source/devices/AM62DX/linux/version.txt | 1 + 18 files changed, 754 insertions(+) create mode 100644 configs/AM62DX/AM62DX_linux_config.txt create mode 100644 configs/AM62DX/AM62DX_linux_tags.py create mode 100644 configs/AM62DX/AM62DX_linux_toc.txt create mode 100644 source/devices/AM62DX/index.rst create mode 100644 source/devices/AM62DX/linux/Linux_Performance_Guide.rst create mode 100644 source/devices/AM62DX/linux/Overview.rst create mode 100644 source/devices/AM62DX/linux/Overview/Build_and_Run_the_Demos.rst create mode 100644 source/devices/AM62DX/linux/Overview/Download_and_Install_the_SDK.rst create mode 100644 source/devices/AM62DX/linux/Overview/Run_Setup_Scripts.rst create mode 100644 source/devices/AM62DX/linux/Overview_Getting_Started_Guide.rst create mode 100644 source/devices/AM62DX/linux/RT_Linux_Performance_Guide.rst create mode 100644 source/devices/AM62DX/linux/Release_Specific.rst create mode 100644 source/devices/AM62DX/linux/Release_Specific_Kernel_Performance_Guide.rst create mode 100644 source/devices/AM62DX/linux/Release_Specific_Migration_Guide.rst create mode 100644 source/devices/AM62DX/linux/Release_Specific_Supported_Platforms_and_Versions.rst create mode 100644 source/devices/AM62DX/linux/Release_Specific_Yocto_layer_Configuration.rst create mode 100644 source/devices/AM62DX/linux/_Release_Specific_QSG.rst create mode 100644 source/devices/AM62DX/linux/version.txt diff --git a/configs/AM62DX/AM62DX_linux_config.txt b/configs/AM62DX/AM62DX_linux_config.txt new file mode 100644 index 000000000..4a4f5f2d3 --- /dev/null +++ b/configs/AM62DX/AM62DX_linux_config.txt @@ -0,0 +1,43 @@ +# General family replacement variables and configuration values for Linux build + +# This file is processed by Python scripts to define both replacement +# variable and configuration values for a device family build. +# For replacement variables, all variables should be listed on a single +# line, and all the variables should be listed on consecutive lines +# (i.e. no additional blank lines between the replacement variables). +# Similarly, all the configuration values should be listed on individual, +# consecutive lines (with no blank linues between the configuration values). +# +# Note that neither replacement variables nor configuration values may contain +# a colon (i.e. ":") in their name. However, values may contain colons. + +Replacement Variables +--------------------- +'__PART_FAMILY_NAME__' : 'AM62DX' +'__PART_FAMILY_DEVICE_NAMES__' : 'AM62DX' +'__PRODUCT_LINE_NAME__' : 'Sitara MPU' +'__SDK_BUILD_MACHINE__' : 'am62dxx-evm' +'__SDK_FULL_NAME__' : 'AM62D-Linux-SDK' +'__SDK_SHORT_NAME__' : 'PSDK' +'__SDK_INSTALL_FILE__' : 'ti-processor-sdk-linux-am62dxx-evm--Linux-x86-Install.bin' +'__SDK_INSTALL_DIR__' : 'ti-processor-sdk-linux-am62dxx-evm-' +'__SDK_DOWNLOAD_URL__' : '`AM62D-SDK-Download-page `__' +'__LINUX_UBUNTU_VERSION_LONG__' : '22.04 (64-bit)' +'__LINUX_UBUNTU_VERSION_SHORT__' : '22.04' +'__OPTEE_PLATFORM_FLAVOR__' : 'am62dxx' +'__RTOS_UBUNTU_VERSION_LONG__' : '22.04 (64-bit), 16.04 (64-bit)' +'__FAMILY_NAME__' : 'am62dxx' +'__WINDOWS_SUPPORTED_LONG__' : '10 (64-bit)' +'__FEATURINGMATRIX__' : \ +'__SYSFW_CORE_NAME__' : 'TIFS' +'__IMAGE_TYPE__' : 'default' + +Configuration Values +-------------------- +'CONFIG_part_family' : 'AM62DX_family' +'CONFIG_part_variant' : 'AM62DX' +'CONFIG_sdk' : 'SITARA' +'CONFIG_image_type' : 'default' +'CONFIG_icss_support' : 'yes' +'CONFIG_rt_linux_support' : 'yes' +'CONFIG_crypto' : 'DTHEv2' diff --git a/configs/AM62DX/AM62DX_linux_tags.py b/configs/AM62DX/AM62DX_linux_tags.py new file mode 100644 index 000000000..143d00097 --- /dev/null +++ b/configs/AM62DX/AM62DX_linux_tags.py @@ -0,0 +1,9 @@ +# Device Family name +fam_name = 'AM62D' + +# Project name and HTML title +project = u'Linux SDK for AM62D' +html_title = 'Linux SDK for AM62D Documentation' + +# The master toctree document. +master_doc = 'devices/AM62DX/index' diff --git a/configs/AM62DX/AM62DX_linux_toc.txt b/configs/AM62DX/AM62DX_linux_toc.txt new file mode 100644 index 000000000..ea904fd7e --- /dev/null +++ b/configs/AM62DX/AM62DX_linux_toc.txt @@ -0,0 +1,78 @@ +devices/AM62DX/index +devices/AM62DX/linux/Overview +devices/AM62DX/linux/Overview_Getting_Started_Guide +devices/AM62DX/linux/Overview/Download_and_Install_the_SDK +linux/Overview/Run_Setup_Scripts +devices/AM62DX/linux/Release_Specific +devices/AM62DX/linux/Release_Specific_Release_Notes +devices/AM62DX/linux/Release_Specific_Yocto_layer_Configuration +devices/AM62DX/linux/Release_Specific_Migration_Guide +devices/AM62DX/linux/Release_Specific_Kernel_Performance_Guide +devices/AM62DX/linux/Linux_Performance_Guide +devices/AM62DX/linux/RT_Linux_Performance_Guide +devices/AM62DX/linux/Release_Specific_Workarounds +devices/AM62DX/linux/Release_Specific_Supported_Platforms_and_Versions + +linux/Overview_Building_the_SDK +linux/Overview/Top_Level_Makefile +linux/Overview_Directory_Structure_Overview +linux/Overview_Technical_Support +linux/Overview_GPLv3_Disclaimer +linux/Overview/GCC_ToolChain +linux/Overview/Processor_SDK_Linux_create_SD_card + +linux/Foundational_Components +linux/Foundational_Components_U-Boot +linux/Foundational_Components/U-Boot/Users-Guide +linux/Foundational_Components/U-Boot/UG-General-Info +linux/Foundational_Components/U-Boot/UG-DFU +linux/Foundational_Components/U-Boot/UG-Memory-K3 +linux/Foundational_Components/U-Boot/UG-SPI +linux/Foundational_Components/U-Boot/UG-QSPI +linux/Foundational_Components/U-Boot/UG-UART + +linux/Foundational_Components/U-Boot/Applications +linux/Foundational_Components/U-Boot/Apps-SPL-Debug-OpenOCD + +linux/Foundational_Components_Kernel +linux/Foundational_Components_Kernel_Drivers +linux/Foundational_Components/Kernel/Kernel_Drivers/Audio +linux/Foundational_Components/Kernel/Kernel_Drivers/EQEP +linux/Foundational_Components/Kernel/Kernel_Drivers/GPIO +linux/Foundational_Components/Kernel/Kernel_Drivers/I2C +linux/Foundational_Components/Kernel/Kernel_Drivers/MCAN +linux/Foundational_Components/Kernel/Kernel_Drivers/Network/CPSW-Ethernet +linux/Foundational_Components/Kernel/Kernel_Drivers/PWM +linux/Foundational_Components/Kernel/Kernel_Drivers/SPI +linux/Foundational_Components/Kernel/Kernel_Drivers/QSPI +linux/Foundational_Components/Kernel/Kernel_Drivers/Storage/MMC-SD +linux/Foundational_Components/Kernel/Kernel_Drivers/Storage/NAND +linux/Foundational_Components/Kernel/Kernel_Drivers/UART +linux/Foundational_Components/Kernel/Kernel_Drivers/UBIFS +linux/Foundational_Components/Kernel/Kernel_Drivers/VTM +linux/Foundational_Components/Kernel/Kernel_Drivers/Watchdog + +linux/Foundational_Components_Power_Management + +linux/Foundational_Components_Kernel_Users_Guide +linux/Foundational_Components_Kernel_LTP-DDT_Validation +linux/Foundational_Components_Security +linux/Foundational_Components_Filesystem +linux/Foundational_Components_Tools +linux/Foundational_Components/Tools/Development_Tools +linux/Foundational_Components/Tools/Pin_Mux_Tools +linux/Foundational_Components_ATF + +linux/How_to_Guides +linux/How_to_Guides_Developer_Notes +linux/How_to_Guides/Host/SYSFW_Trace_Parser +linux/How_to_Guides/Target/How_to_enable_DT_overlays_in_linux +linux/How_to_Guides/Target/How_to_emmc_boot +linux/How_to_Guides/Target/How_to_mmcsd_boot_emmc_uda +linux/How_to_Guides/Target/Runtime_debug_unlock_on_secure_device +linux/How_to_Guides/FAQ/How_to_Check_Device_Tree_Info +linux/How_to_Guides/FAQ/How_to_Integrate_Open_Source_Software +linux/How_to_Guides_Hardware_Setup_with_CCS +linux/How_to_Guides/Hardware_Setup_with_CCS/AM62DX_EVM_Hardware_Setup + +linux/Documentation_Tarball diff --git a/source/devices/AM62DX/index.rst b/source/devices/AM62DX/index.rst new file mode 100644 index 000000000..421a01afe --- /dev/null +++ b/source/devices/AM62DX/index.rst @@ -0,0 +1,45 @@ +.. _linux-index: + +************************************ +Linux SDK Software Developer's Guide +************************************ + +.. rubric:: Welcome to the Linux SDK Software Developer's Guide for AM62D + +.. include:: /linux/Overview/_Processor_SDK_Linux_Software_Developers_Guide.rst + +.. toctree:: + :maxdepth: 5 + :hidden: + :numbered: + + /devices/AM62DX/linux/Overview + /devices/AM62DX/linux/Release_Specific + /linux/Foundational_Components + /linux/How_to_Guides + /linux/Demo_User_Guides/index_Demos + /linux/Documentation_Tarball + +| + +.. rubric:: Software Build Sheet + +The build sheet of supported features for this SDK is available at the following link: + +.. raw:: html + + AM62DX Software Build Sheet + +.. include:: /devices/AM62DX/linux/_Release_Specific_QSG.rst + +.. rubric:: Feedback + +If you have feedback, suggestions, or ideas on how to improve the SDK, +it is very appreciated. Please post your ideas to the Linux +forum listed at :ref:`Technical Support `. + + ++--------------------------------+---------------------------------------------------------------------------------------------------+ +| .. Image:: /images/E2e.jpg | For technical support post your questions at `https://e2e.ti.com `__. | ++--------------------------------+---------------------------------------------------------------------------------------------------+ + diff --git a/source/devices/AM62DX/linux/Linux_Performance_Guide.rst b/source/devices/AM62DX/linux/Linux_Performance_Guide.rst new file mode 100644 index 000000000..2f9b718ee --- /dev/null +++ b/source/devices/AM62DX/linux/Linux_Performance_Guide.rst @@ -0,0 +1,16 @@ + +==================================== + Linux 11.01.00.00 Performance Guide +==================================== + +.. rubric:: **Read This First** + :name: read-this-first-kernel-perf-guide + +**All performance numbers provided in this document are gathered using +following Evaluation Modules unless otherwise specified.** + ++----------------+----------------------------------------------------------------------------------------------------------------+ +| Name | Description | ++================+================================================================================================================+ +| AM62Dx EVM | | ++----------------+----------------------------------------------------------------------------------------------------------------+ diff --git a/source/devices/AM62DX/linux/Overview.rst b/source/devices/AM62DX/linux/Overview.rst new file mode 100644 index 000000000..dc94becb8 --- /dev/null +++ b/source/devices/AM62DX/linux/Overview.rst @@ -0,0 +1,21 @@ +######## +Overview +######## + +The **Processor Software Development Kit (Processor SDK)** is a unified software platform for TI embedded processors +providing easy setup and fast out of box access to benchmarks and demos. All releases of Processor SDK are +consistent across TI`s broad portfolio, allowing developers to seamlessly reuse and develop software across devices. +Developing a scalable platform solutions has never been easier than with the Processor SDK and TI`s embedded processor +solutions. + +.. toctree:: + :maxdepth: 5 + + Overview_Getting_Started_Guide + /linux/Overview_Building_the_SDK + /linux/Overview_Directory_Structure_Overview + /linux/Overview_Software_Stack + /linux/Overview_Technical_Support + /linux/Overview_Training + /linux/Overview_GPLv3_Disclaimer + diff --git a/source/devices/AM62DX/linux/Overview/Build_and_Run_the_Demos.rst b/source/devices/AM62DX/linux/Overview/Build_and_Run_the_Demos.rst new file mode 100644 index 000000000..96231a6a6 --- /dev/null +++ b/source/devices/AM62DX/linux/Overview/Build_and_Run_the_Demos.rst @@ -0,0 +1,7 @@ +Build and Run the Demos +======================= + +**Build Instructions** + +Processor SDK AM62D support GNU make based build system. + diff --git a/source/devices/AM62DX/linux/Overview/Download_and_Install_the_SDK.rst b/source/devices/AM62DX/linux/Overview/Download_and_Install_the_SDK.rst new file mode 100644 index 000000000..02aaec809 --- /dev/null +++ b/source/devices/AM62DX/linux/Overview/Download_and_Install_the_SDK.rst @@ -0,0 +1,92 @@ +.. _download-and-install-sdk: + +Download and Install the SDK +============================ + +The |__SDK_FULL_NAME__| Installer will install the necessary components +to start Linux development on the TI microprocessor. + +**The** |__SDK_FULL_NAME__| **Release supports installer only for Linux machine.** + ++----------------------------------------------+----------------------------------------------------------------------+ +| **Installer Details** | **Installers Name** | ++----------------------------------------------+----------------------------------------------------------------------+ +| AM62D Linux SDK Installer (Linux version) | ti-processor-sdk-linux-am62dxx-evm--Linux-x86-Install.bin | ++----------------------------------------------+----------------------------------------------------------------------+ + +Use Linux installer for complete source package, tools, prebuilt-image, filesystems, +etc for product development. + +From a windows machine, you can only flash a SD card. This can be done without +installing the SDK. Use balenaEtcher to flash SD card from windows machine. + +The |__SDK_FULL_NAME__| includes the ARM GCC toolchain. +The |__SDK_FULL_NAME__| was built and tested against a specific Linux +Distribution name and version, Ubuntu |__LINUX_UBUNTU_VERSION_SHORT__|. +Note that this **does not** prevent the user from installing the SDK on other Linux +distributions. + +Download & Install the SDK Installer Inside a Container +------------------------------------------------------- + +TI provides a Ubuntu 22.04 based docker image with all the packages that are required to install the SDK Installer. + +The Docker image is hosted on `ghcr.io/texasinstruments `__. + +Refer `Steps to Run SDK Installer inside a Container `__ for a comprehensive guide. + +.. note:: + + Before starting the container, ensure that you have completed all the Pre-Requisites as mentioned `here `__. + +Download & Install the SDK Installer on Host +-------------------------------------------- + +You can download the latest |__SDK_FULL_NAME__| installer from the +|__SDK_DOWNLOAD_URL__|. + +.. rubric:: Required Host Packages to Install the SDK Installer in Linux + :name: required-host-packages-to-install-the-sdk-installer-linux + +Please run the following command to install all packages required to Install the SDK Installer on Ubuntu |__LINUX_UBUNTU_VERSION_SHORT__|. + +.. code-block:: console + + host# sudo apt-get install file fdisk dosfstools + +.. rubric:: How to Run the SDK Installer in Linux + :name: how-to-run-the-sdk-installer-linux + +Make sure that the execute permissions are set. Open the terminal +window and change directories to where installation program is located +(probably the Downloads directory) and run the following commands: + +.. parsed-literal:: + + # For AM62D (am62dxx-evm) Installer + chmod +x ./ti-processor-sdk-linux-am62dxx-evm--Linux-x86-Install.bin + ./ti-processor-sdk-linux-am62dxx-evm--Linux-x86-Install.bin + +Alternatively, you can give execute permissions and run the SDK Installer +by double clicking on it within your Linux host PC. + +.. note:: + As a part of the installation, installation program will run a script to configure + your environment and extract the Linux devkit. This will cause the installation to + continue for roughly a minute even after it shows that it has reached 100%. + +.. note:: + If nothing seems to happen, your computer may be running a 32-bit version of + its operating system. The installation program is 64-bit, and will not execute properly. + + +**MCU+ SDK for RTOS/NO-RTOS** + +.. note:: + AM62D Linux SDK contains only the Linux specific source and application intended + to run on A53/Linux core. For A53 based FreeRTOS side source and applications, refer **MCU+ SDK** + + +**Instructions to set-up CCS** + + diff --git a/source/devices/AM62DX/linux/Overview/Run_Setup_Scripts.rst b/source/devices/AM62DX/linux/Overview/Run_Setup_Scripts.rst new file mode 100644 index 000000000..59ae23898 --- /dev/null +++ b/source/devices/AM62DX/linux/Overview/Run_Setup_Scripts.rst @@ -0,0 +1,251 @@ +.. _run-setup-scripts: + +Run Setup Scripts +================= + +.. rubric:: Overview + :name: processor-sdk-linux-setup-script-overview + +After installation of the SDK on the Linux host, the setup script +should be run to prepare the host for software development. Some of +the tasks require administrator privileges. The script will prompt you +when these administrator privileges are required. The setup script +does the following things: + +- Verification that the Linux host is the recommended Ubuntu LTS + version +- Installation of required host packages +- Target FileSystem installation +- NFS setup +- TFTP setup +- Minicom setup +- uboot setup +- Load uboot script + +.. note:: + The host setup is common to all TI platforms. + +.. Image:: /images/Linux_Host_Development_System.png + + +.. rubric:: How to run the setup script + :name: how-to-run-the-setup-script + +The Setup Script (**setup.sh**) is located in the |__SDK_FULL_NAME__| installation +directory. By default, this directory has a name that has the form +|__SDK_INSTALL_DIR__|. + + +Change to that ti-processor-sdk-linux install directory. +Then run the script: + +**./setup.sh** + +.. note:: + The Setup Script will first check to see if the user is running the + recommended Ubuntu Long Term Support (LTS) distribution, if not it will + exit. If the user is running on a different Ubuntu version or another + Linux distribution, they are encouraged to modify the environment setup + script to match their distribution. The 22.04 version of Ubuntu is + currently supported. + +.. rubric:: Detailed step by step description through the setup script + :name: detailed-step-by-step-description-through-the-setup-script + +The following sections describe in more detail how to run the script and +what it is doing. + +.. rubric:: Installation of Required Host Packages + :name: installation-of-required-host-packages + +This section will check to make sure you have the proper host support +packages to allow you do the following tasks: + +- telnet +- open menuconfig, the kernel configuration tool +- mounting filesystem via nfs +- tftp +- open minicom +- rebuild u-boot + +If your host lacks any of the needed packages, they will automatically +be installed in this step. + +.. note:: + This command requires you to have administrator priviliges (sudo access) + on your host. + +The command below is an example of what this script is doing. The actual +packages may vary for different releases: + +**sudo apt-get install xinetd tftpd nfs-kernel-server minicom build-essential libncurses5-dev autoconf automake dos2unix screen lrzsz lzop u-boot-tools** + +.. rubric:: Add to Dialout Group + :name: add-to-dialout-group + +.. note:: + This part requires you to have administrator priviliges (sudo access). + +This step is required for users using Ubuntu 12.04+. By default the +user does not have the proper permissions to access a serial device ( ex +ttyS0, ttyUSB0, etc...). A user must be apart of a "dialout" group to +access these serial device without root privileges. + +During this step the script will check if the current Linux user is +apart of the dialout group. If not the current Linux user will +automatically be added to the dialout group. The Linux user will still +be required to use sudo when accessing the serial device until the user +logs out and then logs back in. + +.. rubric:: Target FileSystem Installation + :name: target-filesystem-installation + +This step will extract the target filesystem. + +.. note:: + This part requires you to have administrator priviliges (sudo access). + +The default location is: +/home/user/|__SDK_INSTALL_DIR__|/targetNFS + +.. ifconfig:: CONFIG_sdk in ('SITARA') + + .. code-block:: text + + In which directory do you want to install the target filesystem?(if this directory does not exist it will be created) + [ /home/user/ti-processor-sdk-linux-am62lxx-evm-/targetNFS ] + +You can override the default location by typing in another location or +by hitting you can accept the default location. This can take a +little time to extract and unzip the filesytem. + +If you have run this script more than once and the filesystem already +exists, you will be asked to either: + +- rename the filesystem +- overwrite the filesystem +- skip filesystem extraction + +.. rubric:: NFS Setup + :name: nfs-setup + +This step will allow you to export your filesystem which was extracted +in the previous step. + +.. note:: + This command requires you to have administrator priviliges (sudo + access). + +- This step adds the path to root filesystem from the previous step to + the file /etc/exports on your host. +- The NFS kernel daemon is then stopped and then restarted to make sure + the exported file system is recognized. + +.. rubric:: TFTP Setup + :name: tftp-setup + +This section will setup tftp access on your host. + +.. note:: + This command requires you to have administrator priviliges (sudo access) + on your host. + +.. code-block:: text + + Which directory do you want to be your tftp root directory?(if this directory does not exist it will be created for you) + [ /tftpboot ] + +The default location is /tftpboot which is off of the root directory on +your linux host and requires administrator privileges. You can hit + to select the default location or type in another path to +override the default. Then the following task occur: + +- A tftp config file is created for you on your host at + /etc/xinetd.d/tftp +- The tftp server is stopped and then restarted to insure the changes + are picked up. + +If you have run this script more than once or the filename already +exists, you will be asked to select one of the following options. + +- rename the filesystem +- overwrite the filesystem +- skip filesystem extraction + +Repeat this for any additional prompts about /tftpboot files. + +.. rubric:: Minicom Setup + :name: minicom-setup + +This step will set up minicom (serial communication application) for SDK +development. + +.. code-block:: text + + Which serial port do you want to use with minicom? + [ /dev/ttyUSB0 ] + +For most boards, the default /dev/ttyUSB0 should be selected. + +.. note:: + If you are using a USB-to-Serial converter, your port should be + configured for /dev/ttyUSBx. + +.. ifconfig:: CONFIG_sdk in ('SITARA') + + .. rubric:: uboot Setup + :name: uboot-setup + + This section will create the necessary u-boot commands to boot up your + board. + + The script will detect your ip address and display it. You can override + the detected value by entering an alternate value. + + :: + + This step will set up the u-boot variables for booting the EVM. + Autodetected the following ip address of your host, correct it if necessary + [ xxx.xxx.xxx.xxx ] + + Next, you will be prompted where you prefer your kernel and file system + to be located. + + - Kernel location + + - TFTP - located on your Host in your designated /tftpboot directory + - SD card - located in the 1st partition named "boot" of your SD + card + + - Filesystem location + + - NFS - located on your Host. The location is where the file system + was extracted in an earlier step. + - SD card - located on the 2nd partition named "rootfs" of your SD + card. + + + Next if you have selected TFTP, you will be prompted which uImage you + want to boot using TFTP. You will be given a list of existing uImage's + and you can type one in from the list or hit to select the + default option. The default option will be the uImage corresponding to + the SDK installation. This will be used in the next step to create the + necessary u-boot options to boot up your device. + + .. rubric:: Load uboot Script + :name: load-uboot-script + + This section creates a minicom script or a uEnv.txt file which will be + used by u-boot to provide the necessary commands to boot up in the + preferred configuration. + + - For boards like AM62Px SK with a USB-to-Serial configuration, then a + uEnv.txt script is created and placed in the /boot partition of the + SD card. + + .. note:: + For devices which create a uEnv.txt, the device must already be booted + up with the USB-to-Serial connector attached to the Host. Further the + Host must recognize the boot and START\_HERE partitions. + +| diff --git a/source/devices/AM62DX/linux/Overview_Getting_Started_Guide.rst b/source/devices/AM62DX/linux/Overview_Getting_Started_Guide.rst new file mode 100644 index 000000000..058de8835 --- /dev/null +++ b/source/devices/AM62DX/linux/Overview_Getting_Started_Guide.rst @@ -0,0 +1,15 @@ + +.. _overview-getting-started: + +********************* +Getting Started Guide +********************* + +.. toctree:: + :maxdepth: 5 + + Overview/Download_and_Install_the_SDK + /linux/Overview/Processor_SDK_Linux_create_SD_card + /linux/Overview/Run_Setup_Scripts + /linux/Overview/Top_Level_Makefile + /linux/Overview/GCC_ToolChain diff --git a/source/devices/AM62DX/linux/RT_Linux_Performance_Guide.rst b/source/devices/AM62DX/linux/RT_Linux_Performance_Guide.rst new file mode 100644 index 000000000..3256ba301 --- /dev/null +++ b/source/devices/AM62DX/linux/RT_Linux_Performance_Guide.rst @@ -0,0 +1,14 @@ +======================================= + RT-linux 11.01.00.00 Performance Guide +======================================= + +.. rubric:: **Read This First** + +**All performance numbers in this document are gathered using +Evaluation Modules unless otherwise specified.** + ++----------------+--------------------------------------------------------------------------------------------------------+ +| Name | Description | ++================+========================================================================================================+ +| AM62D EVM | | ++----------------+--------------------------------------------------------------------------------------------------------+ diff --git a/source/devices/AM62DX/linux/Release_Specific.rst b/source/devices/AM62DX/linux/Release_Specific.rst new file mode 100644 index 000000000..caabf894d --- /dev/null +++ b/source/devices/AM62DX/linux/Release_Specific.rst @@ -0,0 +1,12 @@ +################ +Release Specific +################ + +.. toctree:: + :maxdepth: 5 + + Release_Specific_Yocto_layer_Configuration + Release_Specific_Migration_Guide + Release_Specific_Kernel_Performance_Guide + Release_Specific_Workarounds + Release_Specific_Supported_Platforms_and_Versions diff --git a/source/devices/AM62DX/linux/Release_Specific_Kernel_Performance_Guide.rst b/source/devices/AM62DX/linux/Release_Specific_Kernel_Performance_Guide.rst new file mode 100644 index 000000000..510e1c41b --- /dev/null +++ b/source/devices/AM62DX/linux/Release_Specific_Kernel_Performance_Guide.rst @@ -0,0 +1,9 @@ +######################## +Kernel Performance Guide +######################## + +.. toctree:: + :maxdepth: 4 + + RT_Linux_Performance_Guide + Linux_Performance_Guide diff --git a/source/devices/AM62DX/linux/Release_Specific_Migration_Guide.rst b/source/devices/AM62DX/linux/Release_Specific_Migration_Guide.rst new file mode 100644 index 000000000..56fca9d03 --- /dev/null +++ b/source/devices/AM62DX/linux/Release_Specific_Migration_Guide.rst @@ -0,0 +1,8 @@ +############### +Migration Guide +############### + +.. rubric:: Overview + +This page covers migration information for applications built on top +of the AM62D Linux SDK. diff --git a/source/devices/AM62DX/linux/Release_Specific_Supported_Platforms_and_Versions.rst b/source/devices/AM62DX/linux/Release_Specific_Supported_Platforms_and_Versions.rst new file mode 100644 index 000000000..b019afd8e --- /dev/null +++ b/source/devices/AM62DX/linux/Release_Specific_Supported_Platforms_and_Versions.rst @@ -0,0 +1,29 @@ +.. _release-specific-supported-platforms-and-versions: + +################################ +Supported Platforms and Versions +################################ + +.. rubric:: Supported Host Operating Systems + +The following operating systems have been validated to work with our +Linux SDK. + ++---------------------------+----------------------------------+ +| **Operating System** | **Version** | ++---------------------------+----------------------------------+ +| Ubuntu | |__LINUX_UBUNTU_VERSION_LONG__| | ++---------------------------+----------------------------------+ + +.. rubric:: Supported Platforms and EVMs + +The following platforms and EVMs are supported with Processor SDK. + ++--------------+-----------+-----------+-----------------------+-------------------+------------------+------------------+ +| **Platform** | **EVM** | **Tested | **Document** | **Processor SDK | **Processor SDK | **Processor SDK | +| | | Version** | | Linux** | RT Linux** | RTOS** | ++--------------+-----------+-----------+-----------------------+-------------------+------------------+------------------+ +| AM62D-EVM | AM62D-EVM | E1 | Hardware User's Guide | Y | Y | Y | ++--------------+-----------+-----------+-----------------------+-------------------+------------------+------------------+ + + diff --git a/source/devices/AM62DX/linux/Release_Specific_Yocto_layer_Configuration.rst b/source/devices/AM62DX/linux/Release_Specific_Yocto_layer_Configuration.rst new file mode 100644 index 000000000..47c372282 --- /dev/null +++ b/source/devices/AM62DX/linux/Release_Specific_Yocto_layer_Configuration.rst @@ -0,0 +1,22 @@ +.. _yocto-layer-configuration: + +************************* +Yocto Layer Configuration +************************* + +Processor SDK uses the following oe-layersetup configs to configure the +meta layers. These are the used in the command: + +.. code-block:: console + + $ ./oe-layertool-setup.sh -f + +The following config files are located in the ``configs/processor-sdk`` +directory of the `oe-layersetup git repo `_. + ++---------------------------------------------------------------+-----------------------------------+-------------------------------+ +| Config File | Description | Supported machines/platforms | ++===============================================================+===================================+===============================+ +| processor-sdk-11.01.00.00-am62dxx-config.txt | Processor SDK 11.01.00.00 Release | am62dxx-evm | ++---------------------------------------------------------------+-----------------------------------+-------------------------------+ + diff --git a/source/devices/AM62DX/linux/_Release_Specific_QSG.rst b/source/devices/AM62DX/linux/_Release_Specific_QSG.rst new file mode 100644 index 000000000..aa12e58a1 --- /dev/null +++ b/source/devices/AM62DX/linux/_Release_Specific_QSG.rst @@ -0,0 +1,82 @@ +.. rubric:: Quick Start Guide + +Thanks for your interest in |__SDK_FULL_NAME__|. +In this section, we describe the basic steps needed to start development using the SDK. + +For more detailed documentation, refer to :ref:`overview-getting-started` + +.. rubric:: Steps for SDK installation + +Refer to section :ref:`download-and-install-sdk` +for instructions on running the SDK installer. + +.. rubric:: Setting up host environment + +Once the installer is run, you can setup your host environment with a few steps. +Run the following scripts to achieve this: + +* :file:`setup.sh` to install all host packages needed for development. + +Detailed steps are described at :ref:`run-setup-scripts` + +.. rubric:: Hardware EVM setup + +The AM62D EVM is a software kit that combines the AM62D +SOC and other important platform specific hardware like PMIC, DDR memory, +etc, on a single board. + +Detailed instructions for EVM setup with image illustration can be found at +:ref:`hardware-evm-setup`. +Refer to this to setup your EVM as well as for instructions for booting with the default card. + +The preferred way for starting SDK development is SD card boot. The section referenced above +describes pin settings to set the EVM in SD boot mode. + +.. rubric:: Running out of the box demo + +By default, the SD card comes with pre-built Linux SDK binaries flashed. This will allow +you to quickly verify the EVM functionality with just a monitor with an HDMI port. + +Insert the SD card with pre-built binaries and boot the EVM. After successful bootup, +you should see a welcome message on the display wallpaper. + +.. rubric:: Flashing release binaries + :name: qsg-flashing-release-binaries + +The SDK Installer packages latest pre-built binaries and filesystem for the target. +For detailed steps on flashing these binaries on the SD card, refer to the section +format your SD card and flash all the pre-built binaries from the SDK release, +:ref:`processor-sdk-linux-create-sd-card`. + +You should be able to verify the same out of box demo after flashing the SD card. +This step should be used only when you want to completely overwrite the card with +release binaries. + +.. rubric:: Illustration for simple kernel build and install to target + +For most users, an important step in development is the ability to customize +baseport software components like bootloader, Linux kernel, hypervisor, etc. +This SDK allows you to build these components and install the built binaries +for target EVM. This step allows you to verify that your host environment +is configured correctly, and you can build and install these components. + +For detailed instructions on building BSP components, refer to the section +:ref:`top-level-makefile`. +You should run the following commands in the installer directory: + +* Build all components using :code:`make all` +* Follow the section **Installing to SD card rootfs** +* Follow the section **Installing boot binaries** + +After you build and copy all the binaries to your SD card, you can boot the +EVM with binaries built on your host. Upon successful bootup, you should see +a different wallpaper on the display. This should confirm that your updates +are copied correctly in the SD card. Also, you can run the following command +on the target to verify that you are using the newly-built Linux kernel. + +.. code-block:: console + + root@:~# cat /proc/version + +The output should indicate the build date, host PC name, etc. This verifies +that your SDK has been setup correctly, enabling you to start development. diff --git a/source/devices/AM62DX/linux/version.txt b/source/devices/AM62DX/linux/version.txt new file mode 100644 index 000000000..8b7f1ecdb --- /dev/null +++ b/source/devices/AM62DX/linux/version.txt @@ -0,0 +1 @@ +11_01_00_00