diff --git a/configs/AM62DX/AM62DX_linux_toc.txt b/configs/AM62DX/AM62DX_linux_toc.txt index 2ebb80cf2..6a3c7f1d5 100644 --- a/configs/AM62DX/AM62DX_linux_toc.txt +++ b/configs/AM62DX/AM62DX_linux_toc.txt @@ -75,6 +75,8 @@ linux/Foundational_Components/Tools/Development_Tools linux/Foundational_Components/Tools/Pin_Mux_Tools linux/Foundational_Components/Tools/Flash_via_Fastboot linux/Foundational_Components_IPC62dx +linux/Foundational_Components_Virtualization +linux/Foundational_Components/Virtualization/Docker linux/Foundational_Components_ATF linux/Foundational_Components_OPTEE @@ -100,5 +102,6 @@ linux/How_to_Guides/Hardware_Setup_with_CCS/AM62Dx_EVM_Hardware_Setup linux/Demo_User_Guides/index_Demos linux/Demo_User_Guides/AM62D_Dsp_Offload_User_Guide linux/Demo_User_Guides/AM62D_2DFFT_User_Guide +linux/Demo_User_Guides/AM62D_Signal_Chain_User_Guide linux/Documentation_Tarball diff --git a/source/devices/AM62DX/index_RTOS.rst b/source/devices/AM62DX/index_RTOS.rst index b7daf83bf..03c50ff84 100644 --- a/source/devices/AM62DX/index_RTOS.rst +++ b/source/devices/AM62DX/index_RTOS.rst @@ -4,4 +4,4 @@ RTOS/NO-RTOS [MCU+ SDK] **For MCU+ SDK RTOS/NO-RTOS documentation, refer below links** -- `MCU+ SDK Documentation `__ +- `MCU+ SDK Documentation `__ 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 index 257ef772a..fecbb9168 100644 --- a/source/devices/AM62DX/linux/Overview/Download_and_Install_the_SDK.rst +++ b/source/devices/AM62DX/linux/Overview/Download_and_Install_the_SDK.rst @@ -85,8 +85,8 @@ by double clicking on it within your Linux host PC. .. note:: Processor SDK Linux AM62Dx has only the Linux specific source and application intended to run on A53 or Linux core. For R5F and RTOS or NO-RTOS side source and applications, refer - `MCU+SDK `__ package. + `MCU+SDK `__ package. **Instructions to set-up CCS** -- Refer MCU+SDK Installer `doc `__. +- Refer MCU+SDK Installer `doc `__. diff --git a/source/devices/AM62DX/linux/Release_Specific.rst b/source/devices/AM62DX/linux/Release_Specific.rst index 2c52f59fc..7e3d448de 100644 --- a/source/devices/AM62DX/linux/Release_Specific.rst +++ b/source/devices/AM62DX/linux/Release_Specific.rst @@ -10,5 +10,4 @@ Release Specific 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_Build_Sheet.rst b/source/devices/AM62DX/linux/Release_Specific_Build_Sheet.rst index 9dc520758..6d2cf8ae2 100644 --- a/source/devices/AM62DX/linux/Release_Specific_Build_Sheet.rst +++ b/source/devices/AM62DX/linux/Release_Specific_Build_Sheet.rst @@ -6,7 +6,7 @@ Software Build Sheet Build Sheet of supported features and modules for this |__SDK_FULL_NAME__| Release. The following table lists the supported features and modules with the support status -for Linux on A53. Please refer to `RTOS Build Sheet `__ +for Linux on A53. Please refer to `RTOS Build Sheet `__ for the supported features and modules on RTOS. The support status is indicated by the following codes: diff --git a/source/images/AM62D_Sigchain_Biquad_Demo.png b/source/images/AM62D_Sigchain_Biquad_Demo.png new file mode 100644 index 000000000..1ea9f6cba Binary files /dev/null and b/source/images/AM62D_Sigchain_Biquad_Demo.png differ diff --git a/source/images/AM62D_signal_chain_biquad_cascade.svg b/source/images/AM62D_signal_chain_biquad_cascade.svg new file mode 100644 index 000000000..7ec43c9c5 --- /dev/null +++ b/source/images/AM62D_signal_chain_biquad_cascade.svg @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Produced by OmniGraffle 7.18.1\n2025-12-01 02:30:57 +0000 + + TISP_11.2_examples_cascadeBiquad + + + Layer 1 + + + 8Ch + 64 samples + + + + + + + TypeConvert + int32_t -> float + + + + + + + Parametric + Equalizer + + + + + + + TypeConvert + float -> int32_t + + + + + + + + + + + + + + + + + 8Ch + 64 samples + + + + + diff --git a/source/images/AM62D_signal_chain_host_utility_snapshot.png b/source/images/AM62D_signal_chain_host_utility_snapshot.png new file mode 100644 index 000000000..20846a87a Binary files /dev/null and b/source/images/AM62D_signal_chain_host_utility_snapshot.png differ diff --git a/source/linux/Demo_User_Guides/AM62D_2DFFT_User_Guide.rst b/source/linux/Demo_User_Guides/AM62D_2DFFT_User_Guide.rst index 2ac56e756..b9735b12d 100644 --- a/source/linux/Demo_User_Guides/AM62D_2DFFT_User_Guide.rst +++ b/source/linux/Demo_User_Guides/AM62D_2DFFT_User_Guide.rst @@ -95,10 +95,10 @@ Software and tools - TI Processor SDK Linux RT (AM62Dx) - MCU+SDK for AM62Dx - `C7000-CGT `__ compiler -- `Code Composer Studio `__ +- `Code Composer Studio `__ - `TI Clang Compiler Toolchain `__ - CMake, GCC, make, git, scp, minicom -- `rpmsg-dma library `__ +- `rpmsg-dma library `__ ********* EVM setup @@ -113,6 +113,8 @@ EVM setup :height: 600 :width: 1000 + - Refer `Quick Start Guide for AM62D2-EVM `__ for more details. + #. Setup UART Terminal - First identify the UART port as enumerated on the host machine. @@ -206,11 +208,11 @@ Building the linux demo binary from sources =========================================== #. The source code for the 2D FFT DSP offload demo is available as part of - the `rpmsg-dma `__. + the `rpmsg-dma `__. .. code-block:: console - host# git clone https://github.com/TexasInstruments/rpmsg-dma.git -b scarthgap + host# git clone https://github.com/TexasInstruments/rpmsg-dma.git -b main #. Download and Install the AM62D Linux SDK from |__SDK_DOWNLOAD_URL__| following the steps mentioned at :ref:`Download and Install the SDK `. @@ -252,5 +254,5 @@ Building the linux demo binary from sources Building the C7 firmware from sources ===================================== -- Refer to the `MCU+ SDK Documentation `__ -- Refer to the `C7x TISP Linux 2D FFT Offload Example `__ +- Refer to the `MCU+ SDK Documentation `__ +- Refer to the `C7x TISP Linux 2D FFT Offload Example `__ diff --git a/source/linux/Demo_User_Guides/AM62D_Dsp_Offload_User_Guide.rst b/source/linux/Demo_User_Guides/AM62D_Dsp_Offload_User_Guide.rst index 94a7c0142..87e08c3c5 100644 --- a/source/linux/Demo_User_Guides/AM62D_Dsp_Offload_User_Guide.rst +++ b/source/linux/Demo_User_Guides/AM62D_Dsp_Offload_User_Guide.rst @@ -105,13 +105,13 @@ Software and Tools - `C7000-CGT `__ compiler -- `Code Composer Studio `__ +- `Code Composer Studio `__ - `TI Clang Compiler Toolchain `__ - CMake, GCC, make, git, scp, minicom, Python3 -- `rpmsg-dma library `__ +- `rpmsg-dma library `__ ********* EVM Setup @@ -127,6 +127,8 @@ EVM Setup :height: 600 :width: 1000 + - Refer `Quick Start Guide for AM62D2-EVM `__ for more details. + #. Setup UART Terminal - First identify the UART port as enumerated on the host machine. @@ -160,7 +162,7 @@ Steps to validate audio DSP offload demo #. Connect the USB-C cable from the power adapter to one of the two USB-C ports on the EVM. -#. Download Host Utility `audmon.py `__. +#. Download Host Utility `audmon.py `__. #. The EVM should boot and the booting progress should display in the serial port console. At the end of booting, the Arago login prompt will appear. Just enter "root" to log in. @@ -214,7 +216,7 @@ Steps to validate audio DSP offload demo - Summary labels for min/max/avg stats per run - - For more information refer: `README `_. + - For more information refer: `README `_. .. note:: @@ -226,7 +228,7 @@ Below is sample snapshot: :height: 600 :width: 1200 -- For more information on demo application and configuration, refer: `DSP Offload Example `__. +- For more information on demo application and configuration, refer: `DSP Offload Example `__. *********************************** How to build audio DSP offload demo @@ -240,11 +242,11 @@ Building audio DSP offload image from Yocto Building the Linux demo binary from sources =========================================== -#. The source code for Audio DSP offload demo is available as part of the `rpmsg-dma `__. +#. The source code for Audio DSP offload demo is available as part of the `rpmsg-dma `__. .. code-block:: console - host# git clone https://github.com/TexasInstruments/rpmsg-dma.git -b scarthgap + host# git clone https://github.com/TexasInstruments/rpmsg-dma.git -b main #. Download and Install the AM62D Linux SDK from |__SDK_DOWNLOAD_URL__| following the steps mentioned at :ref:`Download and Install the SDK `. @@ -289,5 +291,5 @@ Building the Linux demo binary from sources Building the c7 firmware from sources ===================================== -- Refer to the `MCU+ SDK Documentation `__ -- Refer to the `C7 Demo Firmware `__ +- Refer to the `MCU+ SDK Documentation `__ +- Refer to the `C7 Demo Firmware `__ diff --git a/source/linux/Demo_User_Guides/AM62D_Signal_Chain_User_Guide.rst b/source/linux/Demo_User_Guides/AM62D_Signal_Chain_User_Guide.rst new file mode 100644 index 000000000..f0e162914 --- /dev/null +++ b/source/linux/Demo_User_Guides/AM62D_Signal_Chain_User_Guide.rst @@ -0,0 +1,353 @@ +.. _AM62D-signal-chain-from-linux-user-guide: + +############################# +AM62D Signal Chain from Linux +############################# + +******** +Overview +******** + +This guide describes how to set up, build, and run the real-time signal chain parametric equalizer example by using the Texas Instruments AM62D audio evaluation module (EVM). +This demo example demonstrates real-time 3-stage parametric equalizer (biquad cascade) processing on C7x DSP with live audio input/output. The system processes continuous 8-channel audio streams at 48kHz sample rate through dedicated audio codecs, enabling real-time audio effects processing. +Below figure shows how this demo works: + +.. figure:: /images/AM62D_Sigchain_Biquad_Demo.png + :height: 500 + :width: 1200 + +**Initialization Sequence:** + +- Step 1: CMA buffer setup request + - A53 Linux application sends RPMsg request to C7x DSP with CMA buffer address for shared memory communication. + +- Step 2: RPMsg communication and initialization + - C7x DSP receives RPMsg message containing shared memory buffer information via IPC framework. + - Signal chain biquad application validates and configures the shared memory buffer for control/status communication. + - C7x DSP sends acknowledgment message back to A53 Linux confirming successful setup completion. + - Bidirectional RPMsg communication channel is established between A53 Linux and C7x DSP. + - Shared memory communication is configured using the CMA buffer for real-time control and monitoring data exchange. + - A53 Linux application receives setup confirmation indicating both RPMsg and shared memory are ready. + - Linux application proceeds to initialize audio codecs and start demo with full communication established. + +**Runtime Audio Processing:** + +- Step 3: Data coming from PCM6240 + - Audio input data flows from **PCM6240 ADC → McASP → C7x L2 SRAM** + - Audio data bypasses A53 Linux completely for optimal real-time performance. + +- Step 4: Signal chain processing + - Audio data is processed within the C7x DSP and sent to L2 SRAM + - Parallel control and monitoring operates simultaneously with audio processing + + **Signal Chain Processing:** + + .. figure:: /images/AM62D_signal_chain_biquad_cascade.svg + :height: 80 + :width: 800 + + - Type Conversion (int32 → float): Converts multi-channel input data from int32_t to float format for processing. + - Cascade Biquad Parametric EQ: 3-stage cascade biquad filter implementing parametric equalization using Direct Form I (DF1) biquad implementation. + - Type Conversion (float → int32): Converts processed multi-channel output from float back to int32_t format. + +- Step 5: Audio output through TAD5212 + - Processed audio data flows from **C7x L2 SRAM → McASP → TAD5212 DAC** + - Audio output is delivered to speakers/headphones via the TAD5212 digital-to-analog converter. + +**Parallel Control and Monitoring:** + +- **Linux to C7x Control**: A53 Linux sends control commands (start/stop, coefficient updates) to C7x via shared memory buffers. + +- **C7x to Linux Monitoring**: C7x DSP continuously updates performance metrics (DSP load, cycle count, throughput) in shared memory buffers. + +- **C7x Control Processing**: C7x DSP reads control data from shared memory and applies configuration changes without interrupting audio processing. + +- **GUI Monitoring Interface**: Host PC GUI utility connects to A53 Linux via Ethernet, retrieves monitoring data from shared memory, and displays real-time performance metrics and control interface. + +********************** +Hardware Prerequisites +********************** + +- `AM62D-EVM `__ + +- Audio device with input/output capability and 3.5mm audio jack and TRS compatible. + +- SD card (minimum 16GB) + +- USB Type-C 20W power supply (make sure to use type-C to type-C cable). + +- USB-to-UART cable for console access + +- PC (Windows or Linux) to flash image onto an SD Card + +- Ethernet cable for signal chain examples host utility + +- The ethernet expansion board `DP83867-EVM-AM `__ + +- Host PC Requirements: + + - operating system: + + - Windows: |__WINDOWS_SUPPORTED_LONG__| + + - Ubuntu: |__LINUX_UBUNTU_VERSION_LONG__| + + - Memory: Minimum 4GB RAM (8GB or more recommended) + + - Storage: At least 10GB of free space + +****************** +Software and Tools +****************** + +- TI Processor SDK Linux RT (AM62Dx) + +- MCU+ SDK for AM62Dx + +- `C7000-CGT `__ compiler + +- `Code Composer Studio `__ + +- `TI Clang Compiler Toolchain `__ + +- CMake, GCC, make, git, scp, minicom, Python3 + +- `rpmsg-dma library `__ + +- Python 3 with tkinter, matplotlib, numpy for PC GUI utility + +********* +EVM Setup +********* + +#. Cable Connections + + - The figure below shows some important cable connections, ports and switches. + + - Take note of the location of the "BOOTMODE" switch for SD card boot mode. + + .. figure:: /images/AM62D_evm_setup.png + :height: 600 + :width: 1000 + + - Refer `Quick Start Guide for AM62D2-EVM `__ for more details. + +#. Setup UART Terminal + + - First identify the UART port as enumerated on the host machine. + + - Make sure that the EVM and UART cable connected to UART to USB port as shown in Cable Connections + + - In windows, you can use the "Device Manager" to see the detected UART ports + - Search "Device Manager" in Windows Search Box in the Windows taskbar. + + - If you do not see any USB serial ports listed in "Device Manager" under "Ports (COM & LPT)", then make sure you have installed the UART to USB driver from `FTDI `__. + + - For A53 Linux console select UART boot port (ex: COM34 in below screenshot), keep other options to default and set 115200 baud rate. + +#. Setup SD card Boot Mode + + - EVM SD card boot mode setting: + + - BOOTMODE [ 8 : 15 ] (SW3) = 0100 0000 + + - BOOTMODE [ 0 : 7 ] (SW2) = 1100 0010 + +#. Audio Connections + + - Connect audio input source to EVM's MCASP input through connectors J1 and J2 (PCM6240 ADC). + + - Connect audio output to speakers/headphones via EVM's MCASP output through connectors J3 and J4 (TAD5212 DAC). + +*********************************************** +Steps to run real-time signal chain biquad demo +*********************************************** + +#. Flash an SD card with the :file:`tisdk-default-image-rt-am62dxx-evm.rootfs.wic.xz` image and follow the instructions provided at :ref:`Create SD Card ` guide. + +#. Insert the flashed SD card to `AUDIO-AM62D-EVM `__, connect the audio input/output, Ethernet Cable and power on TI AUDIO-AM62D-EVM. + +#. Make sure the EVM boot mode switches position set for SD card boot as described earlier + +#. Connect the USB-C cable from the power adapter to one of the two USB-C ports on the EVM. + +#. Download Host Utility `rpmsg_sigchain_biquad_example_gui.py `__. + +#. The EVM should boot and the booting progress should display in the serial port console. Stop at u-boot prompt and enter following commands to apply :file:`k3-am62d2-evm-dsp-controlled-audio.dtbo` overlay. This device tree overlay disables Linux ALSA control of McASP2 and the audio codecs (PCM6240/TAD5212), allowing the C7x DSP to take direct hardware control of the audio interfaces. + + .. code-block:: console + + MMC: mmc@fa10000: 0, mmc@fa00000: 1 + Loading Environment from nowhere... OK + In: serial@2800000 + Out: serial@2800000 + Err: serial@2800000 + Net: eth0: ethernet@8000000port@1Could not get PHY for mdio@f00: addr 3 + Hit any key to stop autoboot: 0 + => setenv name_overlays ti/k3-am62d2-evm-dsp-controlled-audio.dtbo + => boot + +#. At the end of booting, the Arago login prompt will appear. Just enter "root" to log in. + +#. Get the EVM IP address + + .. code-block:: console + + root@am62dxx-evm:~# ifconfig + +.. note:: + + EVM IP address required for host utility to connect to demo application + +#. Run signal chain biquad demo application from console + + There are two modes of operation: + + **GUI Mode (Network Server):** + + .. code-block:: console + + root@am62dxx-evm:~# rpmsg_sigchain_biquad_example + + **Command-Line Mode:** + + .. code-block:: console + + root@am62dxx-evm:~# rpmsg_sigchain_biquad_example start sleep:10 stop + +#. For GUI Mode, on host machine launch the :file:`rpmsg_sigchain_biquad_example_gui.py` utility + + .. code-block:: console + + # python3 rpmsg_sigchain_biquad_example_gui.py + Ex: # python3 rpmsg_sigchain_biquad_example_gui.py 192.168.0.101 + +#. The GUI utility automatically connects to the demo application and provides the following features: + + - Real-time visualization of: + + - C7x DSP load monitoring + + - Cycle count and throughput metrics + + - Processing status + + - Real-time biquad coefficient control + + - Demo start/stop control + + - Multi-port TCP communication: + + - Port 8888: Log messages from board to PC + + - Port 8889: Commands from PC to board (START/STOP) + + - Port 8890: Real-time C7x statistics streaming (JSON format) + +#. For Command-Line Mode, the application provides: + + Available commands: + + - **start**: Start audio (auto-init codecs + start demo + display metrics) + + - **stop**: Stop audio (stop demo + auto-shutdown codecs + display final metrics) + + - **sleep:N**: Sleep for N seconds (with real-time performance monitoring) + + - **help**: Show usage information + + Examples: + + .. code-block:: console + + root@am62dxx-evm:~# rpmsg_sigchain_biquad_example start sleep:10 stop + root@am62dxx-evm:~# rpmsg_sigchain_biquad_example start sleep:5 stop + + Return codes: + + - 0 = All commands executed successfully (PASSED) + + - 1 = Command sequence failed (FAILED) + +.. note:: + + Command-line mode provides automatic codec initialization/shutdown and real-time C7x performance metrics display during execution. + +Below is sample snapshot of the GUI utility: + +.. figure:: /images/AM62D_signal_chain_host_utility_snapshot.png + :height: 800 + :width: 1200 + +- For more information on demo application and configuration, refer: `Signal Chain Biquad Example `__. + +************************************* +How to build signal chain biquad demo +************************************* + +Building signal chain biquad image from Yocto +============================================= + +- To build the Signal Chain Biquad image, refer :ref:`Processor SDK - Building the SDK with Yocto ` + +Building the Linux demo binary from sources +=========================================== + +#. The source code for Signal Chain Biquad demo is available as part of the `rpmsg-dma `__. + + .. code-block:: console + + host# git clone https://github.com/TexasInstruments/rpmsg-dma.git -b main + +#. Download and Install the AM62D Linux SDK from |__SDK_DOWNLOAD_URL__| following the steps mentioned at :ref:`Download and Install the SDK `. + +#. Prepare the environment for cross compilation. + + .. code-block:: console + + host# source /linux-devkit/environment-setup + +#. Compile the source + + .. code-block:: console + + [linux-devkit]:> cd + [linux-devkit]:> cmake -S . -B build; cmake --build build + + - This will build: + + - The example application :file:`rpmsg_sigchain_biquad_example` + + - Transfer the generated files to SD card: + + - The example binary :file:`rpmsg_sigchain_biquad_example` to :file:`/usr/bin` + + - The C7 DSP firmware file :file:`sigchain_biquad_cascade.c75ss0-0.release.strip.out` to :file:`/lib/firmware/` + + - Optional: + + - To build only the signal chain biquad example, use: + + .. code-block:: console + + cmake -S . -B build -DBUILD_SIGCHAIN_BIQUAD_EXAMPLE=ON + +Building the C7x firmware from sources +====================================== + +#. Build the DSP Firmware using CCS projects or makefiles: + + **When using CCS projects to build**, import the CCS project from: + :file:`examples/tisp/sigchain_dsp_rt/sigchain_biquad_cascade/am62dx-evm/c75ss0-0_freertos_linux/ti-c7000/` + + **When using makefiles to build**, build using make command: + + .. code-block:: console + + cd examples/tisp/sigchain_dsp_rt/sigchain_biquad_cascade/am62dx-evm/c75ss0-0_freertos_linux/ti-c7000/ + make clean && make + +#. This generates :file:`sigchain_biquad_cascade.c75ss0-0.release.strip.out` firmware file + +- Refer to the `MCU+ SDK Documentation `__ +- Refer to the `TISP Signal Chain Biquad Example `__ diff --git a/source/linux/Demo_User_Guides/index_Demos.rst b/source/linux/Demo_User_Guides/index_Demos.rst index c7251c05e..8af778c79 100644 --- a/source/linux/Demo_User_Guides/index_Demos.rst +++ b/source/linux/Demo_User_Guides/index_Demos.rst @@ -20,6 +20,7 @@ The SDK supports the following Out-Of-Box demo-applications GUI_Frameworks_User_Guide AM62D_Dsp_Offload_User_Guide.rst AM62D_2DFFT_User_Guide.rst + AM62D_Signal_Chain_User_Guide.rst EV_charging_Demo_User_Guide.rst .. ifconfig:: CONFIG_sdk in ('j7_foundational') diff --git a/source/linux/Foundational_Components/Kernel/Kernel_Drivers/Audio.rst b/source/linux/Foundational_Components/Kernel/Kernel_Drivers/Audio.rst index 12e4593d3..9c8de3505 100644 --- a/source/linux/Foundational_Components/Kernel/Kernel_Drivers/Audio.rst +++ b/source/linux/Foundational_Components/Kernel/Kernel_Drivers/Audio.rst @@ -1172,7 +1172,7 @@ Board-specific instructions The board uses four **TAD52512 DAC** and two **PCM6240 ADC** connected through **McASP2 [AXR0,1,3 and 4 for playback, AXR14 for Capture]** for audio. The board features eight TRS 3.5mm jack, that can be used for - simultaneous 8 channel playback and 4 channel recording. + simultaneous 8 channel playback and 8 channel recording. The AM62D2-EVM audio subsystem provides comprehensive playback and recording capabilities through dedicated DACs and ADCs. Use the following command to list @@ -1242,36 +1242,116 @@ Board-specific instructions -> CODEC drivers -> Texas Instruments PCM6240 Family Audio chips based on I2C (SND_SOC_PCM6240 [=m]) - Choose active device between two PCM6240 ADC devices: + Choose active recording profile from the available PCM6240 ADC profiles: .. code-block:: text - Device 0: PCM6240 at I2C address 0x48 (Connector-J2) - Device 1: PCM6240 at I2C address 0x49 (Connector-J1) + Profile 0: 8ch Interleaved - All 8 channels from both ADCs in interleaved format + Profile 1: 8ch Non-Interleaved - All 8 channels from both ADCs in non-interleaved format + Profile 2: J2A Stereo - Stereo recording from J2A connector (I2C 0x48) + Profile 3: J2B Stereo - Stereo recording from J2B connector (I2C 0x48) + Profile 4: J1A Stereo - Stereo recording from J1A connector (I2C 0x49) + Profile 5: J1B Stereo - Stereo recording from J1B connector (I2C 0x49) + Profile 6: J2A,J2B 4ch Non-Interleaved - 4-channel non-interleaved from J2 connectors + Profile 7: J2A,J2B 4ch Interleaved - 4-channel interleaved from J2 connectors + Profile 8: J1A,J1B 4ch Non-Interleaved - 4-channel non-interleaved from J1 connectors + Profile 9: J1A,J1B 4ch Interleaved - 4-channel interleaved from J1 connectors - To select Device 0 (I2C address 0x48) as an active device: + To select Profile 0 (8ch Interleaved - default profile): .. code-block:: console root@am62dxx-evm:~# amixer cset name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' 0 numid=17,iface=MIXER,name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' - type=INTEGER,access=rw------,values=1,min=0,max=3,step=0 + type=INTEGER,access=rw------,values=1,min=0,max=9,step=0 values=0 - To select Device 1 (I2C address 0x49) as an active device: + To select Profile 1 (8ch Non-Interleaved): .. code-block:: console root@am62dxx-evm:~# amixer cset name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' 1 numid=17,iface=MIXER,name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' - type=INTEGER,access=rw------,values=1,min=0,max=3,step=0 + type=INTEGER,access=rw------,values=1,min=0,max=9,step=0 values=1 - To record 4-channel audio at 48kHz sample rate with 32-bit depth: + To select Profile 2 (J2A Stereo): .. code-block:: console - root@am62dxx-evm:~# arecord -c 4 -r 48000 -f S32_LE test.wav + root@am62dxx-evm:~# amixer cset name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' 2 + numid=17,iface=MIXER,name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' + type=INTEGER,access=rw------,values=1,min=0,max=9,step=0 + values=2 + + To select Profile 3 (J2B Stereo): + + .. code-block:: console + + root@am62dxx-evm:~# amixer cset name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' 3 + numid=17,iface=MIXER,name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' + type=INTEGER,access=rw------,values=1,min=0,max=9,step=0 + values=3 + + To select Profile 4 (J1A Stereo): + + .. code-block:: console + + root@am62dxx-evm:~# amixer cset name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' 4 + numid=17,iface=MIXER,name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' + type=INTEGER,access=rw------,values=1,min=0,max=9,step=0 + values=4 + + To select Profile 5 (J1B Stereo): + + .. code-block:: console + + root@am62dxx-evm:~# amixer cset name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' 5 + numid=17,iface=MIXER,name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' + type=INTEGER,access=rw------,values=1,min=0,max=9,step=0 + values=5 + + To select Profile 6 (J2A,J2B 4ch Non-Interleaved): + + .. code-block:: console + + root@am62dxx-evm:~# amixer cset name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' 6 + numid=17,iface=MIXER,name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' + type=INTEGER,access=rw------,values=1,min=0,max=9,step=0 + values=6 + + To select Profile 7 (J2A,J2B 4ch Interleaved): + + .. code-block:: console + + root@am62dxx-evm:~# amixer cset name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' 7 + numid=17,iface=MIXER,name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' + type=INTEGER,access=rw------,values=1,min=0,max=9,step=0 + values=7 + + To select Profile 8 (J1A,J1B 4ch Non-Interleaved): + + .. code-block:: console + + root@am62dxx-evm:~# amixer cset name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' 8 + numid=17,iface=MIXER,name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' + type=INTEGER,access=rw------,values=1,min=0,max=9,step=0 + values=8 + + To select Profile 9 (J1A,J1B 4ch Interleaved): + + .. code-block:: console + + root@am62dxx-evm:~# amixer cset name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' 9 + numid=17,iface=MIXER,name='pcm6240-2dev-reg PCM6240 i2c1 Profile id' + type=INTEGER,access=rw------,values=1,min=0,max=9,step=0 + values=9 + + To record 8-channel audio at 48kHz sample rate with 32-bit depth: + + .. code-block:: console + + root@am62dxx-evm:~# arecord -c 8 -r 48000 -f S32_LE test.wav Potential issues ^^^^^^^^^^^^^^^^ @@ -1435,4 +1515,4 @@ Additional Information :name: additional-information-mcasp-docs #. `McASP Hardware Design Guide - `__ \ No newline at end of file + `__ diff --git a/source/linux/Foundational_Components/_Processor_SDK_Linux_Filesystem.rst b/source/linux/Foundational_Components/_Processor_SDK_Linux_Filesystem.rst index d36ec7c83..dddbf4d40 100644 --- a/source/linux/Foundational_Components/_Processor_SDK_Linux_Filesystem.rst +++ b/source/linux/Foundational_Components/_Processor_SDK_Linux_Filesystem.rst @@ -32,7 +32,7 @@ There are different filesystem tarballs provided in the SDK. You'll find them at This is the complete filesystem image, that contains standard Linux commands and features. This also contains the TI component libraries, -binaries and :ref:`TI Apps Launcher OOB Demo ` +binaries and :ref:`OOB Demos ` .. only:: _comment @@ -56,16 +56,16 @@ Following is a list of all filesystem images provided by TI which can be built v Common targets are: From meta-arago[recommended]: - tisdk-bootstrap-base-image: Arago TI SDK bootstrap base image for initramfs - tisdk-jailhouse-image: Arago TI SDK image for Jailhouse Hypervisor - tisdk-bootstrap-image: Arago TI SDK bootstrap image usable for board bringup - tisdk-tiny-initramfs: Arago TI SDK super minimal base image for initramfs - tisdk-core-bundle: Installer package for TI SDK - NOT for direct use on target - tisdk-base-image: Arago TI SDK base image with test tools - tisdk-thinlinux-image: Arago TI SDK Thin Linux image - tisdk-jailhouse-inmate: Arago TI SDK super minimal base image for jailhouse linux demo - tisdk-default-image: Arago TI SDK full filesystem image - tisdk-tiny-image: Arago TI SDK super minimal base image for initramfs + arago-bootstrap-base-image: Arago TI SDK bootstrap base image for initramfs + arago-jailhouse-image: Arago TI SDK image for Jailhouse Hypervisor (Supported platforms - AM62x SK, AM62x LP SK, AM62L EVM, AM62Px EVM) + arago-bootstrap-image: Arago TI SDK bootstrap image usable for board bringup + arago-tiny-initramfs: Arago TI SDK super minimal base image for initramfs + arago-core-bundle: Installer package for TI SDK - NOT for direct use on target + arago-base-image: Arago TI SDK base image with test tools + arago-thinlinux-image: Arago TI SDK Thin Linux image + arago-jailhouse-inmate: Arago TI SDK super minimal base image for jailhouse linux demo (Supported platforms - AM62x SK, AM62x LP SK, AM62L EVM, AM62Px EVM) + arago-default-image: Arago TI SDK full filesystem image + arago-tiny-image: Arago TI SDK super minimal base image for initramfs From meta-tisdk: tisdk-display-cluster-image: Arago TI SDK full filesystem image showcasing display sharing in AM62P diff --git a/source/linux/Foundational_Components_IPC62dx.rst b/source/linux/Foundational_Components_IPC62dx.rst index 85cf74de1..64b8e3def 100644 --- a/source/linux/Foundational_Components_IPC62dx.rst +++ b/source/linux/Foundational_Components_IPC62dx.rst @@ -24,7 +24,7 @@ Software Dependencies to Get Started Prerequisites - Processor SDK Linux for AM62Dx |__SDK_DOWNLOAD_URL__|. -- Processor SDK MCU+ for AM62D refer `doc `__ +- Processor SDK MCU+ for AM62D refer `doc `__ .. note::