BSP-Yocto-Ampliphy-AM64x-PD24.1.1
This document highlights the key features and support included in the BSP-Yocto-Ampliphy-AM64x-PD24.1.1 software release for the phyCORE-AM64x SOM and development kit.
BSP Operating system |
Linux |
---|---|
Release Status |
RELEASED |
Release Date |
2024-12-19 |
Repository |
|
Binaries |
New in this Release
Yocto
Secure Boot: Secure Boot is now officially supported. A new machine, phyboard-electra-am64xx-3, has been introduced to automatically sign all bootloader images for Secure Boot enforced devices. All images supported by phyboard-electra-am64xx-2 are compatible with this new machine. Additionally, the phytec-securiphy-image is now available with the securiphy distribution, providing a full chain-of-trust Secure Boot implementation from BOOTROM to Linux. This distribution also enables additional security features.
Linux Mainline: A new distribution, ampliphy-linux-mainline, has been added. This distribution selects the latest Linux mainline kernel, allowing users to experience the most recent Linux version on the phyCORE-AM64x.
Linux Kernel
U-Boot Bootloader
Remoteproc:The remoteproc interface is now enabled in U-Boot. This allows co-processors to be started and firmware to be loaded directly from U-Boot. Additionally, Code Composer Studio can now be used with U-Boot insead of Linux to debug firmware via JTAG.
Issues Fixed
Partup Layout Configuration: Corrected a faulty layout configuration in Partup packages built with the ampliphy-rauc distro. The filesystem type for the config and app partitions is now properly set to ext4, ensuring functionality and compatibility.
GPIO Sysfs: The missing GPIO directory in the Linux sysfs has been restored.
LEDs: LED functionality has been resolved and is now operational.
Fan Hysteresis: The GPIO fan hysteresis issue has been fixed. Hysteresis is now enabled, preventing the fan from toggling on and off continuously.
PRU Ethernet Performance: Enhanced Ethernet performance for PRU_ICSSG-based interfaces, now achieving over 850 Mbit/s.
Known Issues
Linux RT Latency: Real-time Linux can have worst-case latencies up to 600 microseconds under heavy memory load.
Flashcp Command Failures: Occasional failures during verification in flashcp.
Remoteproc Driver: The remoteproc driver might hang when re-starting an R5F core.
PRU Ethernet Crashes: PRU_ICSSG-based Ethernet interfaces may experience crashes when operating at 10 Mbit/s. This issue has been resolved in the Linux mainline and will be integrated into a future PHYTEC release.
Software Versioning
The BSP-Yocto-Ampliphy-AM64x-PD24.1.1 software release is largely based off of Texas Instruments’s v10.00.08 Processor SDK Linux release and shares much of the same components and features.
Tested Build Environment |
Ubuntu 20.04 |
|
---|---|---|
Linux Kernel |
v6.6.32-10.00.08 (tag: v6.6.32-10.00.08-phy3) |
|
U-Boot Bootloader |
v2024.04 (tag: v2024.04-10.00.08-phy5) |
|
Yocto |
5.0.5 Scarthgap (tag: BSP-Yocto-Ampliphy-AM64x-PD24.1.1) |
Part Number Summary
Part Number |
Hardware Description |
Configuration Details (SOC / Features / DDR4 / eMMC / NOR / Ethernet PHY / RTC / Temperature) |
PCB Version |
---|---|---|---|
PCM-072-42F2DE11I.A0 |
phyCORE-AM64x SOM (HS-FS silicon) |
AM6442 / Features F / 2GB / 32GB eMMC / 64MB OSPI NOR / Yes / Yes / Industrial |
1565.1 |
PCM-072-42F2DE01I.A0 |
phyCORE-AM64x SOM (HS-FS silicon) |
AM6442 / Features F / 2GB / 32GB eMMC / 64MB OSPI NOR / No / Yes / Industrial |
1565.1 |
PCM-072-42F2BX11I.A0 |
phyCORE-AM64x SOM (HS-FS silicon) |
AM6442 / Features F / 2GB / 8GB eMMC / no NOR / Yes / Yes / Industrial |
1565.1 |
PCM-072.A2 |
phyCORE-AM64x SOM (HS-FS silicon) |
AM6442 / Features F / 2GB / 32GB eMMC / 64MB OSPI NOR / Yes / Yes / Industrial |
1565.1 |
PCM-072.A1 |
phyCORE-AM64x SOM (GP silicon) |
AM6442 / Features F / 2GB / 32GB eMMC / 64MB OSPI NOR / Yes / Yes / Industrial |
1565.1 |
PBA-C-25.A1 |
phyCORE-AM64x Carrier Board |
1566.1 |
Part Number |
Yocto MACHINE |
Hardware Description |
---|---|---|
KPB-07124-002.A0 |
phyboard-electra-am64xx-3 |
PCM-072-42F2DE11I.A0 + PBA-C-25.A1 / Secure Boot enforced with certificates burned into the device. |
KPB-07124-002.A0 |
phyboard-electra-am64xx-2 |
PCM-072-42F2DE11I.A0 + PBA-C-25.A1 (Default Kit) |
KPB-07225-001.A0 |
phyboard-electra-am64xx-1 |
PCM-072.A2 + PBA-C-25.A1 (Deprecated) |
Supported Builds
This release supports multiple builds for different kits, Yocto images and distribution. The follow table lists all supported builds. See Part Number Summary for an detailed explanation of Yocto Machines and associated hardware.
Yocto MACHINE |
Yocto Image |
Yocto Distro |
Description |
---|---|---|---|
phyboard-electra-am64xx-3 |
phytec-headless-image |
ampliphy |
Headless image with PHYTEC’s ampliPHY distribution for the KPB-07124-002.A0 kit. |
phyboard-electra-am64xx-3 |
phytec-securiphy-image |
securiphy |
Securiphy image with PHYTEC’s securiPHY distribution for the KPB-07124-002.A0 kit. This distro has Secure Boot activated and includes further security improvements. |
phyboard-electra-am64xx-3 |
phytec-securiphy-bundle |
securiphy |
Securiphy bundle with PHYTEC’s securiPHY distribution for the KPB-07124-002.A0 kit. Includes a raucb file to update a RAUC partition. |
phyboard-electra-am64xx-2 |
phytec-headless-image |
ampliphy |
Headless image with PHYTEC’s ampliPHY distribution for the KPB-07124-002.A0 kit. |
phyboard-electra-am64xx-2 |
phytec-headless-image -c populated_sdk |
ampliphy |
Headless image with PHYTEC’s ampliPHY distribution for the KPB-07124-002.A0 kit. |
phyboard-electra-am64xx-2 |
phytec-container-image |
ampliphy |
Container image with PHYTEC’s ampliPHY distribution for the KPB-07124-002.A0 kit. This build includes virtualization. |
phyboard-electra-am64xx-2 |
phytec-container-image |
ampliphy-linux-mainline |
Container image with PHYTEC’s ampliPHY distribution for the KPB-07124-002.A0 kit. This build includes virtualization and is based on the latest Linux mainline tag, providing an experience aligned with the upstream version. |
phyboard-electra-am64xx-2 |
phytec-initramfs-image |
ampliphy |
initramfs image with PHYTEC’s ampliPHY distribution for the KPB-07124-002.A0 kit. Contains an initramfs to boot Linux from OSPI. |
phyboard-electra-am64xx-2 |
phytec-headless-image |
ampliphy-rauc |
Headless image with PHYTEC’s ampliPHY RAUC distribution for the KPB-07124-002.A0 kit. Enables RAUC and includes a partup image for updates. |
phyboard-electra-am64xx-2 |
phytec-headless-bundle |
ampliphy-rauc |
Headless bundle with PHYTEC’s ampliPHY RAUC distribution for the KPB-07124-002.A0 kit. Includes a raucb file to update a RAUC partition. |
phyboard-electra-am64xx-2 |
phytec-headless-image |
ampliphy-rt |
Headless image with PHYTEC’s ampliPHY RT distribution for the KPB-07124-002.A0 kit. Enables to the Linux RT branch. |
phyboard-electra-am64xx-1 |
phytec-headless-image |
ampliphy |
Headless image with PHYTEC’s ampliPHY distribution for the KPB-07124-002.A0 kit. |
Linux Device Tree Summary
This is a summary of how the device tree source files (.dts) and the various include files (.dtsi) are broken down in the kernel. These files describe the hardware in a hierarchical and modular way to the kernel, connecting device drivers to the interfaces brought out by the carrier board.
Hardware Target |
Device Tree File Descriptions |
Filename |
---|---|---|
KPB-07124-002.A0 (Default Kit) |
Default Device Tree (includes the other .dtsi files below) |
k3-am642-phyboard-electra-rdk.dts |
Processor .dtsi - This file adds general support for the AM642x Processor from Texas Instruments |
k3-am642.dtsi |
|
SOM .dtsi- This file adds support for your specific SOM’s population options |
k3-am64-phycore-som.dtsi |
|
PCIe Overlay |
k3-am642-phyboard-electra-pcie-usb2.dtbo |
|
GPIO Fan Overlay |
k3-am642-phyboard-electra-gpio-fan.dts |
|
SPI1 and UART3 Overlay |
k3-am64-phyboard-electra-x27-uart3-spi1.dts |
|
Disable OSPI NOR Overlay |
k3-am6xx-phycore-disable-spi-nor.dts |
|
Disable RTC Overlay |
k3-am6xx-phycore-disable-rtc.dts |
|
Disable SOM Ethernet PHY Overlay |
k3-am6xx-phycore-disable-eth-phy.dts |
|
Switch from OSPI to QSPI SPI NOR Flash |
k3-am6xx-phycore-qspi-nor.dts |
If designing your own custom carrier board around the phyCORE-AM64x SOM, you will eventually define a custom device tree for your board that includes the .dtsi file for the SOM, which PHYTEC has provided for you. All the BSP changes custom for your application should eventually be consolidated into its own Meta Layer.
Supported Boot Sources
The phyCORE-AM64x allows to load a bootloader from different kind of sources.
Boot Source |
Status |
Notes |
---|---|---|
SD-Card |
Supported |
|
eMMC |
Supported |
|
QSPI/OSPI-Nor Flash |
Supported |
|
Ethernet |
Unsupported |
|
USB/DFU |
Unsupported |
phyBOARD-Electra has a USB Hub connected to the USB interface. |
UART |
Supported |
Debug UART (X49) - Can’t boot Linux via UART. |
Supported Features
The following table contains all supported phyCORE-AM64x features.
Feature |
Sub-Feature |
Status |
Notes |
---|---|---|---|
SoC |
AM6442 |
Supported |
|
AM6441 |
Untested |
||
AM6422 |
Untested |
||
AM6421 |
Untested |
||
AM6412 |
Untested |
||
AM6411 |
Untested |
||
AM243x |
Unsupported |
||
DDR4 |
512 MB |
Unsupported |
|
1 GB |
Supported |
||
2 GB |
Supported |
||
Inline ECC |
Supported |
||
eMMC |
Supported |
||
SPI-NOR Flash |
OSPI |
Supported |
|
QSPI |
Supported |
||
Power Management |
PMIC |
Supported |
|
Suspend to RAM |
Unsupported |
||
MCU Only Low Power Mode |
Unsupported |
||
Watchdog |
Supported |
||
SD-Card |
Supported |
||
RTC |
Supported |
||
GPIO |
Supported |
||
UART |
Supported |
||
I2C |
Supported |
||
SPI |
Supported |
||
ePWM |
Untested |
||
eQEP |
Untested |
||
ADC |
Supported |
||
CAN |
Supported |
||
CAN FD |
Supported |
||
USB 2.0 |
Supported |
||
USB 3.0 |
Supported |
||
Ethernet |
Supported |
||
TSN Support |
Supported |
||
PCIe |
Supported |
||
TPM |
Supported |
||
Security |
Secure Boot |
Supported |
|
Image Encryption |
Unsupported |
||
Secure Key Storage |
Unsupported |
||
TEE |
Supported |
||
Cryptographic Acceleration |
Supported |
||
MCU |
GPIO |
Supported |
|
SPI |
Untested |
||
UART |
Supported |
||
CAN |
Untested |
||
I2C |
Untested |
||
PRU Subsystem |
Ethercat |
Untested |
|
Profibus |
Untested |
||
GPIO |
Untested |
||
UART |
Untested |
||
I2C |
Untested |
||
Virtualization |
Podman |
Supported |
Only available in phytec-container-image |
Interface Overview
The following table contains all interfaces connected to the phyCORE-AM64x’s connectors and each status.
Note
For simplicity reasons interfaces located in the MCU and WAKEUP domains have a prefix. Interfaces located in the MAIN domain might have a main_ prefix but it was not added here.
Interface |
Detail |
Status |
Notes |
---|---|---|---|
ADC |
adc0 |
Supported |
|
CAN |
mcan0 |
Supported |
|
mcan1 |
Supported |
||
ECAP |
ecap0 |
disabled |
|
ecap1 |
disabled |
||
ecap2 |
disabled |
||
Ethernet |
eth0 (cpsw ethernet) |
Supported |
DP83867IRRGZ SOM PHY |
eth1 (pri-icssg0 ethernet) |
Supported |
DP83867IRRGZ CB PHY |
|
eth2 (pri-icssg0 ethernet) |
Supported |
DP83867IRRGZ CB PHY |
|
EPWM |
epwm0 |
Supported |
Enabled via Device Tree Overlay |
epwm1 |
disabled |
||
epwm2 |
disabled |
||
EQEP |
eqep0 |
disabled |
|
eqep1 |
disabled |
||
eqep2 |
disabled |
||
FSI |
fsi0 |
disabled |
|
fsi1 |
disabled |
||
fsi2 |
disabled |
||
fsi3 |
disabled |
||
fsi4 |
disabled |
||
fsi5 |
disabled |
||
GPIO |
gpio0 |
Supported |
|
gpio1 |
Supported |
||
mcu_gpio0 |
disabled |
||
GPMC |
gpmc0 |
disabled |
|
I2C |
i2c0 |
Supported |
|
i2c1 |
Supported |
||
i2c2 |
disabled |
||
i2c3 |
disabled |
||
mcu_i2c0 |
disabled |
||
wkup_i2c0 |
disabled |
||
MMC |
mmc0 |
Supported |
eMMC Flash Memory on the SOM |
mmc1 |
Supported |
SD Card Slot on Dev Kit Carrier Board |
|
mPCIe |
serdes0 |
Supported |
mPCIe at the X31 connector - Enabled with device tree overlay - serdes0 signals muxed between USB HUB and mPCIe |
OSPI |
ospi0 |
Supported |
NOR Serial Flash on SOM |
PRUSS |
pr0_pru0 |
disabled |
|
pr0_pru1 |
disabled |
||
SPI |
spi0 |
Supported |
Enabled with spidev driver via Device Tree Overlay |
spi1 |
disabled |
||
spi2 |
disabled |
||
spi3 |
disabled |
||
spi4 |
disabled |
||
mcu_spi0 |
disabled |
||
mcu_spi1 |
disabled |
||
UART |
uart0 |
Supported |
Default serial console - Connected to UART-to-USB FTDI IC |
uart1 |
Supported |
UART1 may be used by TIFS firmware |
|
uart2 |
disabled |
||
uart3 |
disabled |
||
uart4 |
disabled |
||
uart5 |
disabled |
||
uart6 |
disabled |
||
mcu_uart0 |
Supported |
Default stdout for M4F co-processor |
|
mcu_uart1 |
disabled |
||
USB |
usb0 |
Supported |
Connected to USB 3.0 HUB - USB super speed signals (serdes0) muxed between USB HUB and mPCIe with device tree overlay - USB2.0 speeds still supported when mPCIe enabled |
Note
For technical support, please visit PHYTEC’s Support Portal!