BSP-Yocto-Ampliphy-AM64x-PD24.1.0
This document highlights the key features and support included in the BSP-Yocto-Ampliphy-AM64x-PD24.1.0 software release for the phyCORE-AM64x SOM and development kit.
BSP Operating system |
Linux |
---|---|
Release Status |
RELEASED |
Release Date |
2024-09-27 |
Repository |
|
Binaries |
New in this Release
Yocto
Yocto Update: Update to 5.0 (Scarthgap).
OP-TEE 4.2: Trusted Execution Environment updated to version 4.2.
Kernel Recipe: Kernel metadata handling with .scc (Source Code Control) files, integrating Poky’s kernel recipe handling features.
Default Machine: phytec-container-image is now the default image for the phyCORE-AM64x.
Linux Kernel
Kernel Update: Update to Linux v6.6.
U-Boot Bootloader
Bootloader Update: Update to U-Boot v2024.04
OSPI Partitions in Device Tree: Defining OSPI flash partitions directly in the device tree.
Additional SOM Option: New support for a SOM option with 1GB DDR.
Issues Fixed
M4F/R5F Firmware Restart: Fixed issues with restarting the M4F firmware.
Trickle Charger: Enabled Trickle Charger to charge the external battery.
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.
Partup: Partup packages built with the ampliphy-rauc distro contain a faulty layout configuration. The filesystem of the config and app partitions is incorrectly set to null. The filesystem type for the config and app partitions has been corrected to ext4 in meta-phytec. This fix will be included in the next release. Partup packages built with the ampliphy and ampliphy-xwayland distros are not affected by this issue.
Software Versioning
The BSP-Yocto-Ampliphy-AM64x-PD24.1.0 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-phy2) |
|
U-Boot Bootloader |
v2024.04 (tag: v2024.04-10.00.08-phy2) |
|
Yocto |
5.0.3 Scarthgap (tag: BSP-Yocto-Ampliphy-AM64x-PD24.1.0) |
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-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-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-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 |
Unsupported |
|
Secure Key Storage |
Unsupported |
||
TEE |
Supported |
||
Cryptographic Acceleration |
Untested |
||
MCU |
GPIO |
Supported |
|
SPI |
Untested |
||
UART |
Untested |
||
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!