diff --git a/README.md b/README.md index 25217f1bb..cf0a20dd0 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,7 @@ of directories listed under `configs/`. For example: * "AM62X" (representing AM62X family) * "AM62AX" (representing AM62AX family) * "AM62PX" (representing AM62PX family) + * "AM62L" (representing AM62L family) * "AM65X" (representing AM65X family) * "DRA821A" (representing DRA821A) * "J721E" (representing Jacinto 7 ES) diff --git a/configs/AM335X/AM335X_linux_tags.py b/configs/AM335X/AM335X_linux_tags.py index a23920663..f6970e5d5 100644 --- a/configs/AM335X/AM335X_linux_tags.py +++ b/configs/AM335X/AM335X_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X/rtos', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X/rtos', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM437X/AM437X_linux_tags.py b/configs/AM437X/AM437X_linux_tags.py index 512b63061..c7fc3032a 100644 --- a/configs/AM437X/AM437X_linux_tags.py +++ b/configs/AM437X/AM437X_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM437X/rtos', 'devices/AM335X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM437X/rtos', 'devices/AM335X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM57X/AM57X_linux_tags.py b/configs/AM57X/AM57X_linux_tags.py index 4bde696ff..dd54528a5 100644 --- a/configs/AM57X/AM57X_linux_tags.py +++ b/configs/AM57X/AM57X_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM57X/rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM57X/rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM62AX/AM62AX_linux_tags.py b/configs/AM62AX/AM62AX_linux_tags.py index 57a6640b1..138fe4488 100644 --- a/configs/AM62AX/AM62AX_linux_tags.py +++ b/configs/AM62AX/AM62AX_linux_tags.py @@ -15,7 +15,7 @@ # AM62Ax RTOS docs are not in this project, rather referenced externally, # so exclude 'rtos' folder along with others. -exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62PX'] +exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM62LX/AM62LX_buildroot_config.txt b/configs/AM62LX/AM62LX_buildroot_config.txt new file mode 100644 index 000000000..bb7e595be --- /dev/null +++ b/configs/AM62LX/AM62LX_buildroot_config.txt @@ -0,0 +1,30 @@ +# General family replacement variables and configuration values for Buildroot 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__' : 'AM62L' +'__PART_FAMILY_DEVICE_NAMES__' : 'AM62L' +'__PRODUCT_LINE_NAME__' : 'Sitara MPU' +'__SDK_BUILD_MACHINE__' : 'am62lxx-evm' +'__SDK_FULL_NAME__' : 'Buildroot for AM62L' +'__SDK_SHORT_NAME__' : 'Buildroot' +'__SDK_DOWNLOAD_URL__' : '`AM62L-SDK-Download-page `__' +'__LINUX_UBUNTU_VERSION_LONG__' : '22.04 (64-bit)' +'__LINUX_UBUNTU_VERSION_SHORT__' : '22.04' + +Configuration Values +-------------------- +'CONFIG_part_family' : 'AM62L_family' +'CONFIG_part_variant' : 'AM62L' +'CONFIG_sdk' : 'BuildrootSDK' diff --git a/configs/AM62LX/AM62LX_buildroot_tags.py b/configs/AM62LX/AM62LX_buildroot_tags.py new file mode 100644 index 000000000..19bc48878 --- /dev/null +++ b/configs/AM62LX/AM62LX_buildroot_tags.py @@ -0,0 +1,23 @@ +# Device Family name +fam_name = 'AM62L' + +# Project name and HTML title +sdk_product = 'null' #todo: remove after the new structure is used for all device families + +project = u'Buildroot for AM62L' +html_title = 'Buildroot AM62L Documentation' + +# The master toctree document. +master_doc = 'devices/AM62LX/buildroot/index' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. + +# AM62x RTOS docs are not in this project, rather referenced externally, +# so exclude 'rtos' folder along with others. +exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM62PX', 'devices/AM65X', 'devices/J7_Family', 'devices/J721E', 'devices/J7200', 'devices/J721S2', 'devices/J784S4', 'devices/DRA821A', 'devices/AM62AX', 'linux', 'debian'] + +# OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs +sdk_os = 'buildroot' + + diff --git a/configs/AM62LX/AM62LX_buildroot_toc.txt b/configs/AM62LX/AM62LX_buildroot_toc.txt new file mode 100644 index 000000000..1d9de2564 --- /dev/null +++ b/configs/AM62LX/AM62LX_buildroot_toc.txt @@ -0,0 +1,6 @@ +devices/AM62LX/buildroot/index +devices/AM62LX/buildroot/Getting_Started_Guide + +buildroot/Overview +buildroot/Building_Buildroot_Image +buildroot/Building_Buildroot_Packages diff --git a/configs/AM62LX/AM62LX_linux_config.txt b/configs/AM62LX/AM62LX_linux_config.txt new file mode 100644 index 000000000..be04c0361 --- /dev/null +++ b/configs/AM62LX/AM62LX_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__' : 'AM62L' +'__PART_FAMILY_DEVICE_NAMES__' : 'AM62L' +'__PRODUCT_LINE_NAME__' : 'Sitara MPU' +'__SDK_BUILD_MACHINE__' : 'am62lxx-evm' +'__SDK_FULL_NAME__' : 'AM62L-Linux-SDK' +'__SDK_SHORT_NAME__' : 'PSDK' +'__SDK_INSTALL_FILE__' : 'ti-processor-sdk-linux-am62lxx-evm--Linux-x86-Install.bin' +'__SDK_INSTALL_DIR__' : 'ti-processor-sdk-linux-am62lxx-evm-' +'__SDK_DOWNLOAD_URL__' : '`AM62L-SDK-Download-page `__' +'__LINUX_UBUNTU_VERSION_LONG__' : '22.04 (64-bit)' +'__LINUX_UBUNTU_VERSION_SHORT__' : '22.04' +'__OPTEE_PLATFORM_FLAVOR__' : 'am62lxx' +'__RTOS_UBUNTU_VERSION_LONG__' : '22.04 (64-bit), 16.04 (64-bit)' +'__FAMILY_NAME__' : 'am62lxx' +'__WINDOWS_SUPPORTED_LONG__' : '10 (64-bit)' +'__FEATURINGMATRIX__' : \ +'__SYSFW_CORE_NAME__' : 'TIFS' +'__IMAGE_TYPE__' : 'default' + +Configuration Values +-------------------- +'CONFIG_part_family' : 'AM62L_family' +'CONFIG_part_variant' : 'AM62L' +'CONFIG_sdk' : 'SITARA' +'CONFIG_image_type' : 'default' +'CONFIG_icss_support' : 'yes' +'CONFIG_rt_linux_support' : 'yes' +'CONFIG_crypto' : 'DTHEv2' diff --git a/configs/AM62LX/AM62LX_linux_tags.py b/configs/AM62LX/AM62LX_linux_tags.py new file mode 100644 index 000000000..0f2f9125f --- /dev/null +++ b/configs/AM62LX/AM62LX_linux_tags.py @@ -0,0 +1,23 @@ +# Device Family name +fam_name = 'AM62L' + +# Project name and HTML title +sdk_product = 'null' #todo: remove after the new structure is used for all device families + +project = u'Linux SDK for AM62L' +html_title = 'Linux SDK for AM62L Documentation' + +# The master toctree document. +master_doc = 'devices/AM62LX/index' + +# List of patterns, relative to source directory, that match files and +# directories to ignore when looking for source files. + +# AM62x RTOS docs are not in this project, rather referenced externally, +# so exclude 'rtos' folder along with others. +exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62AX','devices/AM62PX'] + +# OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs +sdk_os = 'linux' + + diff --git a/configs/AM62LX/AM62LX_linux_toc.txt b/configs/AM62LX/AM62LX_linux_toc.txt new file mode 100644 index 000000000..73cbfc5e6 --- /dev/null +++ b/configs/AM62LX/AM62LX_linux_toc.txt @@ -0,0 +1,125 @@ +devices/AM62LX/index +devices/AM62LX/index_RTOS +devices/AM62LX/index_Applications +devices/AM62LX/linux/Overview +devices/AM62LX/linux/Overview_Getting_Started_Guide +devices/AM62LX/linux/Overview/Download_and_Install_the_SDK +linux/Overview/Run_Setup_Scripts +devices/AM62LX/linux/Release_Specific +devices/AM62LX/linux/Release_Specific_Release_Notes +devices/AM62LX/linux/Release_Specific_Yocto_layer_Configuration +devices/AM62LX/linux/Release_Specific_Migration_Guide +devices/AM62LX/linux/Release_Specific_Kernel_Performance_Guide +devices/AM62LX/linux/Linux_Performance_Guide +devices/AM62LX/linux/RT_Linux_Performance_Guide +devices/AM62LX/linux/Release_Specific_Workarounds +devices/AM62LX/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/UG-DDRSS +linux/Foundational_Components/U-Boot/UG-RemoteProc + +linux/Foundational_Components/U-Boot/Applications +linux/Foundational_Components/U-Boot/Apps-SPL-Debug +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/Camera/CSI2RX +linux/Foundational_Components/Kernel/Kernel_Drivers/Crypto +linux/Foundational_Components/Kernel/Kernel_Drivers/Display/DSS7 +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/Network/CPSW3g +linux/Foundational_Components/Kernel/Kernel_Drivers/Network/CPSW-TSN +linux/Foundational_Components/Kernel/Kernel_Drivers/Network/CPSW-PTP +linux/Foundational_Components/Kernel/Kernel_Drivers/Network/CPSW-EST +linux/Foundational_Components/Kernel/Kernel_Drivers/Network/CPSW-CBS +linux/Foundational_Components/Kernel/Kernel_Drivers/Network/CPSW-IET +linux/Foundational_Components/Kernel/Kernel_Drivers/Network/CPSW-TSN-Tuning +linux/Foundational_Components/Kernel/Kernel_Drivers/Network/NETCONF-YANG +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/USB/AM62_DWC3 +linux/Foundational_Components/Kernel/Kernel_Drivers/VTM +linux/Foundational_Components/Kernel/Kernel_Drivers/Watchdog + +linux/Foundational_Components_Power_Management +linux/Foundational_Components/Power_Management/pm_overview +linux/Foundational_Components/Power_Management/pm_dfs +linux/Foundational_Components/Power_Management/pm_cpuidle +linux/Foundational_Components/Power_Management/pm_runtime_pm +linux/Foundational_Components/Power_Management/pm_low_power_modes +linux/Foundational_Components/Power_Management/pm_wakeup_sources +linux/Foundational_Components/Power_Management/pm_sw_arch +linux/Foundational_Components/Power_Management/pm_debug + +linux/Foundational_Components/System_Security/SELinux + +linux/Foundational_Components_Kernel_Users_Guide +linux/Foundational_Components_Kernel_LTP-DDT_Validation +linux/Foundational_Components_Kernel_FAQs +linux/Foundational_Components_Security +linux/Foundational_Components_Migration_Guide +linux/Foundational_Components_Filesystem +linux/Foundational_Components_Tools +linux/Foundational_Components/Tools/Development_Tools +linux/Foundational_Components/Tools/Pin_Mux_Tools +linux/Foundational_Components/Tools/Flash_via_Fastboot +linux/Foundational_Components/Tools/Flash_via_Ethernet +linux/Foundational_Components/Tools/Flash_via_UART +linux/Foundational_Components/Tools/GPIO_Tools +linux/Foundational_Components_IPC62l +linux/Foundational_Components_OPTEE +linux/Foundational_Components_ATF +linux/Foundational_Components_Multimedia_wave5 +linux/Foundational_Components_Virtualization +linux/Foundational_Components/Virtualization/Docker +linux/Foundational_Components_Hypervisor +linux/Foundational_Components/Hypervisor/Jailhouse + +linux/How_to_Guides +linux/How_to_Guides_Developer_Notes +linux/How_to_Guides/Host/K3_Resource_Partitioning_Tool +linux/How_to_Guides/Host/How_to_Setup_and_Debug_using_Lauterbach +linux/How_to_Guides/Host/SYSFW_Trace_Parser +linux/How_to_Guides/Target/Processor_SDK_Linux_File_System_Optimization_Customization +linux/How_to_Guides/Target/How_to_test_MCAN_on_AM62x +linux/How_to_Guides/Target/How_to_enable_DT_overlays_in_linux +linux/How_to_Guides/Target/How_to_playback_audio_over_HDMI +linux/How_to_Guides/Target/How_to_enable_display_sharing_between_remotecore_and_Linux +linux/How_to_Guides/Target/How_to_boot_quickly +linux/How_to_Guides/Target/How_To_Enable_M2CC3301_in_linux +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/AM62L_EVM_Hardware_Setup + + +linux/Documentation_Tarball diff --git a/configs/AM62PX/AM62PX_linux_tags.py b/configs/AM62PX/AM62PX_linux_tags.py index 7f44952c9..9f79ac2a4 100644 --- a/configs/AM62PX/AM62PX_linux_tags.py +++ b/configs/AM62PX/AM62PX_linux_tags.py @@ -15,7 +15,7 @@ # AM62x RTOS docs are not in this project, rather referenced externally, # so exclude 'rtos' folder along with others. -exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62AX'] +exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62AX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM62X/AM62X_linux_tags.py b/configs/AM62X/AM62X_linux_tags.py index 2e91f3c02..4ea9835a3 100644 --- a/configs/AM62X/AM62X_linux_tags.py +++ b/configs/AM62X/AM62X_linux_tags.py @@ -15,7 +15,7 @@ # AM62x RTOS docs are not in this project, rather referenced externally, # so exclude 'rtos' folder along with others. -exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM64X/AM64X_linux_tags.py b/configs/AM64X/AM64X_linux_tags.py index df4354830..f7ebcb526 100644 --- a/configs/AM64X/AM64X_linux_tags.py +++ b/configs/AM64X/AM64X_linux_tags.py @@ -1,4 +1,4 @@ -# Device Family name +# Device Family name fam_name = 'AM64X' # Project name and HTML title @@ -15,7 +15,7 @@ # AM64x RTOS docs are not in this project, rather referenced externally, # so exclude 'rtos' folder along with others. -exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A' , 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM65X', 'devices/J7_Family', 'devices/DRA821A' , 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM65X/AM65X_linux_tags.py b/configs/AM65X/AM65X_linux_tags.py index edc684c22..e5a19a4f1 100644 --- a/configs/AM65X/AM65X_linux_tags.py +++ b/configs/AM65X/AM65X_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/J7_Family', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM67/AM67_linux_tags.py b/configs/AM67/AM67_linux_tags.py index 83a065dc5..0b80926eb 100644 --- a/configs/AM67/AM67_linux_tags.py +++ b/configs/AM67/AM67_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM67A/AM67A_linux_tags.py b/configs/AM67A/AM67A_linux_tags.py index 2a99565dc..56e492063 100644 --- a/configs/AM67A/AM67A_linux_tags.py +++ b/configs/AM67A/AM67A_linux_tags.py @@ -15,7 +15,7 @@ # J722S RTOS docs are not in this project, rather referenced externally, # so exclude 'rtos' folder along with others. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7200', 'devices/J721E', 'devices/J784S4', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7200', 'devices/J721E', 'devices/J784S4', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM68/AM68_linux_tags.py b/configs/AM68/AM68_linux_tags.py index 10fce875f..aefcb9c3e 100644 --- a/configs/AM68/AM68_linux_tags.py +++ b/configs/AM68/AM68_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM68A/AM68A_linux_tags.py b/configs/AM68A/AM68A_linux_tags.py index 232fc257d..b1ab6e555 100644 --- a/configs/AM68A/AM68A_linux_tags.py +++ b/configs/AM68A/AM68A_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7200', 'devices/J721E', 'devices/J784S4', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7200', 'devices/J721E', 'devices/J784S4', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM69/AM69_linux_tags.py b/configs/AM69/AM69_linux_tags.py index 41f8d170c..9b6df0e12 100644 --- a/configs/AM69/AM69_linux_tags.py +++ b/configs/AM69/AM69_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/AM69A/AM69A_linux_tags.py b/configs/AM69A/AM69A_linux_tags.py index 7fee80b4d..740ee81b7 100644 --- a/configs/AM69A/AM69A_linux_tags.py +++ b/configs/AM69A/AM69A_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7200', 'devices/J721S2', 'devices/J721E', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7200', 'devices/J721S2', 'devices/J721E', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/DRA821A/DRA821A_linux_tags.py b/configs/DRA821A/DRA821A_linux_tags.py index 866bea576..2bd1ce345 100644 --- a/configs/DRA821A/DRA821A_linux_tags.py +++ b/configs/DRA821A/DRA821A_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7_Family', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/J7200/J7200_linux_tags.py b/configs/J7200/J7200_linux_tags.py index 10915e3db..c580620cd 100644 --- a/configs/J7200/J7200_linux_tags.py +++ b/configs/J7200/J7200_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/J721E/J721E_linux_tags.py b/configs/J721E/J721E_linux_tags.py index 52d07f47b..9044fbee0 100644 --- a/configs/J721E/J721E_linux_tags.py +++ b/configs/J721E/J721E_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/J721S2/J721S2_linux_tags.py b/configs/J721S2/J721S2_linux_tags.py index 070587060..c237f287c 100644 --- a/configs/J721S2/J721S2_linux_tags.py +++ b/configs/J721S2/J721S2_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/J722S/J722S_linux_tags.py b/configs/J722S/J722S_linux_tags.py index b807380d2..3985765ad 100644 --- a/configs/J722S/J722S_linux_tags.py +++ b/configs/J722S/J722S_linux_tags.py @@ -15,7 +15,7 @@ # J722S RTOS docs are not in this project, rather referenced externally, # so exclude 'rtos' folder along with others. -exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['android', 'example_code', 'files', 'rtos', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/J742S2/J742S2_linux_tags.py b/configs/J742S2/J742S2_linux_tags.py index 2964705d2..bd61126e6 100644 --- a/configs/J742S2/J742S2_linux_tags.py +++ b/configs/J742S2/J742S2_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/J784S4/J784S4_linux_tags.py b/configs/J784S4/J784S4_linux_tags.py index 5a940a8e6..e683c1e0f 100644 --- a/configs/J784S4/J784S4_linux_tags.py +++ b/configs/J784S4/J784S4_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62PX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/configs/TDA4VM/TDA4VM_linux_tags.py b/configs/TDA4VM/TDA4VM_linux_tags.py index 0aeada838..3254dcb0e 100644 --- a/configs/TDA4VM/TDA4VM_linux_tags.py +++ b/configs/TDA4VM/TDA4VM_linux_tags.py @@ -11,7 +11,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. -exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7200', 'devices/J721S2', 'devices/J784S4', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX'] +exclude_patterns = ['rtos', 'android', 'linux/index.rst', 'devices/AM335X', 'devices/AM437X', 'devices/AM64X', 'devices/AM65X', 'devices/J7200', 'devices/J721S2', 'devices/J784S4', 'devices/DRA821A', 'devices/AM62X', 'devices/AM62AX', 'devices/AM62LX'] # OS for the build. Sphinx uses source/{sdk_os} when looking for doc inputs sdk_os = 'linux' diff --git a/source/devices/AM62LX/index.rst b/source/devices/AM62LX/index.rst new file mode 100644 index 000000000..77b0e2aec --- /dev/null +++ b/source/devices/AM62LX/index.rst @@ -0,0 +1,37 @@ +.. _linux-index: + +************************************ +Linux SDK Software Developer's Guide +************************************ + +.. rubric:: Welcome to the Linux SDK Software Developer's Guide for AM62L + +.. include:: /linux/Overview/_Processor_SDK_Linux_Software_Developers_Guide.rst + +.. toctree:: + :maxdepth: 5 + :hidden: + :numbered: + + /devices/AM62LX/linux/Overview + /devices/AM62LX/linux/Release_Specific + /linux/Foundational_Components + /linux/How_to_Guides + /devices/AM62LX/index_Applications + /linux/Documentation_Tarball + +| + +.. include:: /devices/AM62LX/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 please post your questions at `https://e2e.ti.com `__. | ++--------------------------------+---------------------------------------------------------------------------------------------------+ + diff --git a/source/devices/AM62LX/index_Applications.rst b/source/devices/AM62LX/index_Applications.rst new file mode 100644 index 000000000..adf3ece3f --- /dev/null +++ b/source/devices/AM62LX/index_Applications.rst @@ -0,0 +1,8 @@ +############ +Applications +############ + +.. toctree:: + :maxdepth: 1 + + diff --git a/source/devices/AM62LX/linux/Linux_Performance_Guide.rst b/source/devices/AM62LX/linux/Linux_Performance_Guide.rst new file mode 100644 index 000000000..bc6bb742c --- /dev/null +++ b/source/devices/AM62LX/linux/Linux_Performance_Guide.rst @@ -0,0 +1,33 @@ + +==================================== + Linux 11.00.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 | ++================+================================================================================================================+ +| AM62L EVM | AM62L EVM rev E1-1 with ARM running at 400 MHz, DDR data rate 1100 MT/S | ++----------------+----------------------------------------------------------------------------------------------------------------+ + +Table: Evaluation Modules + +.. rubric:: About This Manual + :name: about-this-manual-kernel-perf-guide + +This document provides performance data for each of the device drivers +which are part of the Linux SDK package. This document should be +used in conjunction with release notes and user guides provided with the +Linux SDK package for information on specific issues present +with drivers included in a particular release. + +.. rubric:: If You Need Assistance + :name: if-you-need-assistance-kernel-perf-guide + +For further information or to report any problems, contact +https://e2e.ti.com/ or https://support.ti.com/ diff --git a/source/devices/AM62LX/linux/Overview.rst b/source/devices/AM62LX/linux/Overview.rst new file mode 100644 index 000000000..b9cda10f8 --- /dev/null +++ b/source/devices/AM62LX/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-the-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/AM62LX/linux/Overview/Build_and_Run_the_Demos.rst b/source/devices/AM62LX/linux/Overview/Build_and_Run_the_Demos.rst new file mode 100644 index 000000000..ae5c5991e --- /dev/null +++ b/source/devices/AM62LX/linux/Overview/Build_and_Run_the_Demos.rst @@ -0,0 +1,7 @@ +Build and Run the Demos +======================= + +**Build Instructions** + +Processor SDK AM62L support GNU make based build system. + diff --git a/source/devices/AM62LX/linux/Overview/Download_and_Install_the_SDK.rst b/source/devices/AM62LX/linux/Overview/Download_and_Install_the_SDK.rst new file mode 100644 index 000000000..7318332e2 --- /dev/null +++ b/source/devices/AM62LX/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** | ++----------------------------------------------+----------------------------------------------------------------------+ +| AM62L Linux SDK Installer (Linux version) | ti-processor-sdk-linux-am62lxx-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. Bring up a terminal +window and change directories to where the installer is located +(probably the Downloads directory) and run the following commands: + +.. parsed-literal:: + + # For AM62L (am62lxx-evm) Installer + chmod +x ./ti-processor-sdk-linux-am62lxx-evm--Linux-x86-Install.bin + ./ti-processor-sdk-linux-am62lxx-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, the installer 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 installer is 64-bit, and will not execute properly. + + +**MCU+ SDK for RTOS/NO-RTOS** + +.. note:: + AM62L 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** + package + +**Instructions to set-up CCS** + +- Refer diff --git a/source/devices/AM62LX/linux/Overview/Run_Setup_Scripts.rst b/source/devices/AM62LX/linux/Overview/Run_Setup_Scripts.rst new file mode 100644 index 000000000..559dc739e --- /dev/null +++ b/source/devices/AM62LX/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 +- bring up menuconfig, the kernel configuration tool +- mounting filesystem via nfs +- tftp +- bring up 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 untar 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/AM62LX/linux/Overview_Getting_Started_Guide.rst b/source/devices/AM62LX/linux/Overview_Getting_Started_Guide.rst new file mode 100644 index 000000000..058de8835 --- /dev/null +++ b/source/devices/AM62LX/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/AM62LX/linux/RT_Linux_Performance_Guide.rst b/source/devices/AM62LX/linux/RT_Linux_Performance_Guide.rst new file mode 100644 index 000000000..ad4995d72 --- /dev/null +++ b/source/devices/AM62LX/linux/RT_Linux_Performance_Guide.rst @@ -0,0 +1,60 @@ +======================================= + RT-linux 11.00.00.00 Performance Guide +======================================= + +.. rubric:: **Read This First** + +**All performance numbers provided in this document are gathered using +following Evaluation Modules unless otherwise specified.** + ++----------------+--------------------------------------------------------------------------------------------------------+ +| Name | Description | ++================+========================================================================================================+ +| AM62L EVM | AM62L Starter Kit / Evaluation Module rev E1-1 with ARM running at 400MHz, LPDDR4 data rate 1100 MT/S | ++----------------+--------------------------------------------------------------------------------------------------------+ + +Table: Evaluation Modules + +| + +.. rubric:: About This Manual + +This document provides performance data for each of the device drivers +which are part of the Process SDK Linux package. This document should be +used in conjunction with release notes and user guides provided with the +Process SDK Linux package for information on specific issues present +with drivers included in a particular release. + +.. rubric:: If You Need Assistance + +For further information or to report any problems, contact +https://e2e.ti.com/ or https://support.ti.com/ + +| + +System Benchmarks +----------------- + +Stress-ng and Cyclic Test + +.. _RT-linux-performance: + +stress-ng (next-generation) will stress test a embedded platform in various selectable ways. +It was designed to exercise various physical subsystems as well as the various +operating system kernel interfaces. stress-ng can also measure test throughput rates; +this can be useful to observe performance changes across different operating system or types of hardware. + +Cyclictest is most commonly used for benchmarking RT systems. +It is one of the most frequently used tools for evaluating the relative performance of real-time systems. +Some performance tests which use Cyclictest are System benchmarking, Latency debugging with tracing and +approximating application performance. + +Test commands used for running stress-ng and cyclictest together + +.. code:: console + + stress-ng --cpu-method=all -c 4 & + cyclictest -m -Sp80 -D6h -h400 -i200 -M -q + +The latencies observed with this SDK are summarized below: + diff --git a/source/devices/AM62LX/linux/Release_Specific.rst b/source/devices/AM62LX/linux/Release_Specific.rst new file mode 100644 index 000000000..e0d6db08b --- /dev/null +++ b/source/devices/AM62LX/linux/Release_Specific.rst @@ -0,0 +1,11 @@ +################ +Release Specific +################ + +.. toctree:: + :maxdepth: 5 + + Release_Specific_Release_Notes + Release_Specific_Yocto_layer_Configuration + Release_Specific_Migration_Guide + Release_Specific_Kernel_Performance_Guide diff --git a/source/devices/AM62LX/linux/Release_Specific_Kernel_Performance_Guide.rst b/source/devices/AM62LX/linux/Release_Specific_Kernel_Performance_Guide.rst new file mode 100644 index 000000000..510e1c41b --- /dev/null +++ b/source/devices/AM62LX/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/AM62LX/linux/Release_Specific_Migration_Guide.rst b/source/devices/AM62LX/linux/Release_Specific_Migration_Guide.rst new file mode 100644 index 000000000..7bcbdf1ee --- /dev/null +++ b/source/devices/AM62LX/linux/Release_Specific_Migration_Guide.rst @@ -0,0 +1,11 @@ +.. _release-specific-migration-guide: + +############### +Migration Guide +############### + +.. rubric:: Overview + +This page covers migration information for applications built on top +of the AM62L Linux SDK. + diff --git a/source/devices/AM62LX/linux/Release_Specific_Release_Notes.rst b/source/devices/AM62LX/linux/Release_Specific_Release_Notes.rst new file mode 100644 index 000000000..304d3ac3c --- /dev/null +++ b/source/devices/AM62LX/linux/Release_Specific_Release_Notes.rst @@ -0,0 +1,37 @@ +.. _Release-note-label: + +############# +Release Notes +############# + +Overview +======== + +The **Processor Software Development Kit (Processor SDK)** is a unified software platform for TI embedded processors +providing easy setup and fast out-of-the-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. + +To simplify the end user experience, Processor SDK Linux AM62L installer provides everything needed as discussed below +to create the embedded system from “scratch” : + +- Platform/board-support software and configuration files for Linux +- U-Boot and Kernel sources and configuration files +- An ARM cross-compiling toolchain as well as other host binaries and components +- A Yocto/OE compliant filesystem and sources for example applications +- A variety of scripts and Makefiles to automate certain tasks +- Other components needed to build an embedded system that don’t fit neatly into one of the above buckets +- Reference Examples, benchmarks + +This release supports High Security - Field Securable (HS-FS) devices. + +Licensing +========= + +Please refer to the software manifests, which outlines the licensing +status for all packages included in this release. The manifest can be +found on the SDK download page or in the installed directory as indicated below. + +- Linux Manifest: :file:`/docs/software_manifest.html` + diff --git a/source/devices/AM62LX/linux/Release_Specific_Supported_Platforms_and_Versions.rst b/source/devices/AM62LX/linux/Release_Specific_Supported_Platforms_and_Versions.rst new file mode 100644 index 000000000..a5b88e258 --- /dev/null +++ b/source/devices/AM62LX/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** | ++--------------+-----------+-----------+-----------------------+-------------------+------------------+------------------+ +| AM62L-EVM | AM62L-EVM | E1-1 | Hardware User's Guide | Y | Y | Y | ++--------------+-----------+-----------+-----------------------+-------------------+------------------+------------------+ + + diff --git a/source/devices/AM62LX/linux/Release_Specific_Yocto_layer_Configuration.rst b/source/devices/AM62LX/linux/Release_Specific_Yocto_layer_Configuration.rst new file mode 100644 index 000000000..6f27596eb --- /dev/null +++ b/source/devices/AM62LX/linux/Release_Specific_Yocto_layer_Configuration.rst @@ -0,0 +1,23 @@ +.. _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 | ++===============================================================+===================================+===============================+ +| | | am62lxx-evm | ++---------------------------------------------------------------+-----------------------------------+-------------------------------+ + + diff --git a/source/devices/AM62LX/linux/_Release_Specific_QSG.rst b/source/devices/AM62LX/linux/_Release_Specific_QSG.rst new file mode 100644 index 000000000..bec7e5c46 --- /dev/null +++ b/source/devices/AM62LX/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 AM62L EVM is a software kit that combines the AM62L +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/AM62LX/linux/version.txt b/source/devices/AM62LX/linux/version.txt new file mode 100644 index 000000000..d6b44aae2 --- /dev/null +++ b/source/devices/AM62LX/linux/version.txt @@ -0,0 +1 @@ +11_00_00_00 diff --git a/source/linux/Overview/_Processor_SDK_Linux_Software_Developers_Guide.rst b/source/linux/Overview/_Processor_SDK_Linux_Software_Developers_Guide.rst index 06595c138..619dbfa6a 100644 --- a/source/linux/Overview/_Processor_SDK_Linux_Software_Developers_Guide.rst +++ b/source/linux/Overview/_Processor_SDK_Linux_Software_Developers_Guide.rst @@ -11,26 +11,26 @@ suggestions at `E2E `__. +------------------------------------------------------------------------+-------------------------------------------------------------------------------+ | **Processor SDK Linux** | +========================================================================+===============================================================================+ - | |__Getting Started Guide__| <-- **Start Here** | |__How To Guides__| | + | |___Getting Started Guide___| <-- **Start Here** | |___How To Guides___| | +------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | |__Supported Platforms and Versions__| | |__Building the SDK__| | + | |___Supported Platforms and Versions___| | |___Building the SDK___| | +------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | |__Directory Structure Overview__| | |__GPLv3 Disclaimer__| | + | |___Directory Structure Overview___| | |___GPLv3 Disclaimer___| | +------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | |__Release Notes__| | |__Migration Guide__| | + | |___Release Notes___| | |___Migration Guide___| | +------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - | |__Technical Support__| | `Training `__ | + | |___Technical Support___| | `Training `__ | +------------------------------------------------------------------------+-------------------------------------------------------------------------------+ - .. |__Getting Started Guide__| replace:: :ref:`Getting Started Guide ` - .. |__Directory Structure Overview__| replace:: :ref:`Directory Structure Overview ` - .. |__Building the SDK__| replace:: :ref:`Building the SDK with Yocto ` - .. |__GPLv3 Disclaimer__| replace:: :ref:`GPLv3 Disclaimer ` - .. |__Technical Support__| replace:: :ref:`Technical Support ` - .. |__Supported Platforms and Versions__| replace:: :ref:`Supported Platforms and Versions ` - .. |__Migration Guide__| replace:: :ref:`Migration Guide ` - .. |__How To Guides__| replace:: :ref:`How To Guides ` - .. |__Release Notes__| replace:: :ref:`Release Notes ` + .. |___Getting Started Guide___| replace:: :ref:`Getting Started Guide ` + .. |___Directory Structure Overview___| replace:: :ref:`Directory Structure Overview ` + .. |___Building the SDK___| replace:: :ref:`Building the SDK with Yocto ` + .. |___GPLv3 Disclaimer___| replace:: :ref:`GPLv3 Disclaimer ` + .. |___Technical Support___| replace:: :ref:`Technical Support ` + .. |___Supported Platforms and Versions___| replace:: :ref:`Supported Platforms and Versions ` + .. |___Migration Guide___| replace:: :ref:`Migration Guide ` + .. |___How To Guides___| replace:: :ref:`How To Guides ` + .. |___Release Notes___| replace:: :ref:`Release Notes ` .. ifconfig:: CONFIG_sdk in ('JACINTO','j7_foundational') @@ -111,7 +111,7 @@ suggestions at `E2E `__. .. ifconfig:: CONFIG_sdk in ('SITARA') - .. ifconfig:: CONFIG_part_variant not in ('AM62X', 'AM62AX', 'AM62PX', 'AM335X', 'AM437X', 'AM65X') + .. ifconfig:: CONFIG_part_variant not in ('AM62L', 'AM62X', 'AM62AX', 'AM62PX', 'AM335X', 'AM437X', 'AM65X') +-----------------+------------------------+------------------+-----------------------------------+ | **PRU-ICSS / PRU_ICSSG Protocols** (more information on each piece of the distribution) |