Difference between revisions of "STM32MP15 distribution for Android release note"

[quality revision] [quality revision]
m
 

This article describes the content of STM32MPU distribution for Android software release v1.1.0 version st-android-109.0.0-20202019-0209-2127 (tag), which is part of STM32MP15 ecosystem release note - v1.21.0.

1 Intended audience[edit]

The targeted audience is STM32MP15 customers or partners.

2 Delivery scope and purpose[edit]

The STM32MPU distribution for Android provides all the necessary components required for running, developing and/or making your own platform based on Android framework. It runs on the Arm® Cortex®-A7 processors, and is a fundamental part of the STM32MPU Embedded Software distribution for Android.

It is compatible with Android 109.0.0 (Pie).

It is provided as an example. The Android certifications are not guaranteedinsured.


This delivery of STM32MP15 distribution for Android™ v1.10.0 is part of STM32MP15-Ecosystem-v1.21.0 (see the STM32MP15 ecosystem release note - v1.21.0).

3 Licensing[edit]

This software package is licensed under a SOFTWARE LICENSE AGREEMENT (SLA). Customers may not use this package except in compliance with the software license agreement (SLA).

All of the packages use the same source components. All components and their respective licenses are listed here.

4 Supported hardware[edit]

This software delivery is compatible with the following boards:

5 Delivered features[edit]

5.1 Main software components[edit]

  • Android version v10v9.0.0 (AOSP android-109.0.0_r22 r46 tag)
  • Kernel version v4.19.94 49 (AOSP common kernel) + updates for STM32MP1 and associated boards (waiting upstream finalization)
  • TF-A version v2.0 + updates for STM32MP1 and associated boards (waiting upstream finalization)
  • U-Boot version v2018.11 + updates for STM32MP1 and associated boards (waiting upstream finalization)
  • OP-TEE version v3.3.0 + updates for STM32MP1 and associated boards (waiting upstream finalization)
  • STM32CubeMP1 FW v1.21.0
  • GCC version v8.2
  • openOCD version v0.10.0
  • GCnano version v6.2.4

5.2 Detailed features[edit]

5.2.1 BSP features[edit]

The STM32MP15 distribution for Android™ v1.10.0 is based on the OpenSTLinux BSP v1.21.0 described in the following chapters:

5.2.2 Android features[edit]

Domain Feature STM32MP15
Evaluation board
Comment
Boot Fastboot Yes This mode can be entered by connecting an Entering this mode through connect ST-Link console to the UART interface (uart) or by hardware HW control .
Verified boot No
A/B mechanism No Boot A and /B images are available (but boot from on A is selected by default ).
Recovery No
Multimedia Audio speaker Yes Audio audio speaker output can be used only to connect a headset .
Audio headset Yes Not not selected by default (no headset detection)
Audio built-in digital micro Yes Limited limited to one microphone (mono) .
Audio USB No
Camera Yes
Camera USB No
Video SW decode Yes Maximum 480p30 max. without audio .
Security SELinux Yes
Runtime verification No
Disk encryption YesNo
Trusted environment Yes OP-TEE
Keystore No Only only software backup is used .
Gatekeeper No
Network and connectivity Ethernet Yes
Wifi Yes Using TP-LINK dongle (TL-WN722N) is used for test purposes. purpose
Wifi hotspot Yes TP-LINK dongle (TL-WN722N) is used for test purposes. No
BT / BLE No
USB Yes Mass storage / MTP / PTP .
Systems Boot control Partially Available but not enabled. enable
Power control Yes
Thermal control Yes Only one temperature is managed for CPU/GPU (others are stubbed) .
Update engine No
Sensors Accelerometer No
Gyroscope No
Magnetometer No
Proximity No
Pressure No
Temperature No
Hub No
Debug ADB (USB) Yes
ADB (Ethernet) Yes
ADEB Yes Only for SELinux trace .
Perfetto Yes
Metrics Yes Boot time.
Several limitations with Android 9.0.0
SYSTRACE Yes
Metrics No
Storage USB Key Yes
microSD card Yes
eMMC Yes
Others Lights Yes
Touchscreen Yes

6 Recommendations for use[edit]

6.1 Safe use[edit]

  • Flash-load and boot from a all supported Flash devicedevices: SDCard or and eMMC Flash memories
  • Develop Android™ applications, libraries and , kernel modules...
  • Prototype applications based on ST boards
  • Develop your own board based on an STM32MP15x

6.2 Non-recommended use[edit]

  • None

7 Main restrictions list[edit]

7.1 BSP restrictions list[edit]

  • STM32CubeMX CubeMX configuration panels propose a few some internal peripheral modes that are not supported by the TF-A or OP-TEE drivers running in Arm Cortex-A7 secure context.
  • The following table lists all the known restrictions.
IP Information/Restriction usage in Cortex-A7 secure context
I2C4/I2C6 The proposed SMBus-two-wire-Interface mode proposed is not supported for Arm Cortex-A7 secure context (TF-A , OP-TEE) as no use case foreseen .
PWR TF-A and OP-TEE implementation do not support wakeup wake-up events for secure IPs assigned to Arm Cortex-A7 secure context .
RCC The proposed master clock output1 and et 2 as well as , Audio clock input modes proposed are not applicable to Arm for Cortex-A7 secure context (TF-A, OP-TEE)
SPI6 The SPI software SW driver is not available in OP-TEE implementation for Arm Cortex-A7 secure context .
TAMP OP-TEE implementation does not support TAMP_IN inputs and TAMP_OUT outputs in Arm Cortex-A7 secure context .
USART1 OP-TEE implementation does not support USART Synchronous synchronous mode in Arm Cortex-A7 secure context .

7.2 Android restrictions list[edit]

STM32P15 distribution for Android™ is provided as example.

In this context:

  • Android 9.0.0 with Linux Kernel 4.19 is not an association officially supported by the frameworks (several limitations to be expected)
  • Compliance tests (VTS/CTS) are not ensured insured (but they are executed and treated as much as possible).
  • Security HAL (Keystore, Gatekeeper, Oemlock) are not available (removed from manifest) or stubbed.
  • Verified boot Boot and A/B boot mechanism are not available (or are partially available.
The following functions are available
  • )

Available on STM32MP15 Evaluation board Board but are not integrated in STM32P15 distribution for Android™:

  • Audio headset detection is not available (its usage has to be forced).need to force the usage)
  • Audio RCA is not available (SPDIF input / SPDIF output).
  • Audio digital microphone is limited to mono mode (record usage) without any gain.
  • Joystick is not available.

8 Minor release updates[edit]

STMicroelectronics can deliver delivers corrections on purpose through github® components.

9 How to get started with st-android-109.0.0-20202019-0209-2127[edit]

Refer to How to download get the software and start with this release.

10 Associated tools[edit]

Refer to the Referenced tools release notes .

11 Demonstration Demo applications[edit]

The STM32MP15 distribution for Android™ is delivered with several applications provided as example.

11.1 STLauncher[edit]

Simple launcher application example.

11.2 STCopro M4Echo application[edit]

Example of application using the proprietary coprocessor service . It allows a (allow direct interaction with the firmware launched started on the embedded Arm® Cortex®M4 core).

The firmware just returns the received character via on the open opened serial port.

The associated application project is available on github® (compatible with Android Studio IDE): STCoproM4Echo application.

11.32 STCopro M4Example application[edit]

Example of application using the proprietary coprocessor service . It allows (allow direct interaction with the firmware started on the embedded Arm® Cortex®M4 core).

The firmware generates a signal on the DAC and gets get back a signal from the ADC. A wire can be added to loop back the DAC on the ADC. The firmware shows also shows a simple usage of several blocks available on Arm® Cortex®M4 side.

The associated application project is available on github® (compatible with Android Studio IDE): STCoproM4Example application.

The associated firmware project is available on github® (compatible with System Workbench IDE): STCoproM4Example firmware.

11.43 STCamera[edit]

Simple camera Camera application (preview) showing used to show a way to manage the built-in camera. It is , only compatible only with the MB1379 camera extension board. An external storage configured as portable device must shall be available to allow taking pictures.

11.5 STAudio[edit]

Simple audio application demonstrating how to play and record audio data. The audio files must be stored in the Music directory on an external storage device (such as a USB key) or anywhere on a primary storage (such as an SD card in case of eMMC configuration)a picture.

11.64 STVideo[edit]

Simple video Video application illustrating how to used to show a way to play a video. The video files must shall be stored in the directory Movies directory on of an external storage (such as a ex: USB key) or anywhere on a primary storage (such as an SD card in case of eMMC configuration)configured as portable device.

11.75 STPerf[edit]

Performance overlay application used to demonstrate show in foreground the device performance performances (CPU usage, GPU usage, frame rate). The application can be configured and stopped via a notification settings and stop commands are available on notifications system interface.

Limitation: this application is available only in debug build.

12 Main changes compared to v1.0.012 Change log / Main changes[edit]

The main differences between v1.1.0 and previous delivery v1.0.0 (see STM32MP15 distribution for Android release note - v1.0.0):

  • Switch from Android 9.0.0 (android-9.0.0_r49) to Android 10.0.0 (android-10.0.0_r22)
  • Switch from Linux kernel 4.19.49 to 4.19.94
  • Switch from STM32MP1 OpenSTLinux BSP V1.1.0 to V1.2.0
  • Added CPU@800MHz capability

Initial version.

13 Detailed delivery content[edit]

13.1 Detailed description of STMicroelectronics modules[edit]

13.1.1 BSP modules[edit]

Module name Path of module Description
stm32mp1-bootloader device/stm/
stm32mp1-bootloader
Primary (Trusted Firmware-A) and secondary (Universal bootloader Boot Loader for embedded devices) bootloaders for STM32MP
Name Version License
tf-a-stm32mp1 2.0 BSD-3-Clause
Name Version License
u-boot-stm32mp1 2018.11 GPLv2+
stm32mp1-kernel device/stm/
stm32mp1-kernel
Linux STM32MP Kernel
Name Version License
linux-stm32mp1 4.19 GPLv2
stm32mp1-tee device/stm/
stm32mp1-tee
OPTEE OS for STM32MP
Name Version License
optee_os-stm32mp1 3.3.0 BSD-2-Clause & BSD-3-Clause
stm32mp1-openocd device/stm/
stm32mp1-openocd
Free and open on-chip debugging, in-system programming and boundary-scan testing Open On-Chip Debugging, In-System Programming and Boundary-Scan Testing
Name Version License
stm32mp1-openocd 0.10.0 GPLv2

13.1.2 Common and peripherals modules[edit]

Module name Path of module Description
stm32mp1 device/stm/
stm32mp1
Configuration of the STM32MP1 distribution for Android
Name Version License
stm32mp1 NA Apache v2.0
allocator device/stm/stm32mp1/
peripheral/allocator
STMicroelectronics allocator HAL public header files useful for composer
Name Version License
allocator NA Apache v2.0
audio device/stm/stm32mp1/
peripheral/audio
STMicroelectronics Audio HAL source code
Name Version License
audio NA Apache v2.0
bootctrl device/stm/stm32mp1/
peripheral/bootctrl
STMicroelectronics Boot Control HAL source code and the dedicated misc partition image generator
Name Version License
bootctrl NA Apache v2.0
camera device/stm/stm32mp1/
peripheral/camera
STMicroelectronics Camera HAL source code
Name Version License
camera NA Apache v2.0
composer device/stm/stm32mp1/
peripheral/composer
STMicroelectronics composer HAL source code
Name Version License
composer NA Apache v2.0
copro device/stm/stm32mp1/
peripheral/copro
STMicroelectronics Copro HAL source code
Name Version License
copro NA Apache v2.0
health device/stm/stm32mp1/
peripheral/health
STMicroelectronics Health hardware service source code
Name Version License
health NA Apache v2.0
lights device/stm/stm32mp1/
peripheral/lights
STMicroelectronics Lights HAL source code
Name Version License
lights NA Apache v2.0
memtrack device/stm/stm32mp1/
peripheral/memtrack
STMicroelectronics Memtrack HAL source code
Name Version License
memtrack NA Apache v2.0
oemlock device/stm/stm32mp1/
peripheral/oemlock
STMicroelectronics OemLock HAL source code (stub version)
Name Version License
oemlock NA Apache v2.0
thermal device/stm/stm32mp1/
peripheral/thermal
STMicroelectronics Thermal hardware service source code
Name Version License
thermal NA Apache v2.0
usb device/stm/stm32mp1/
peripheral/usb
STMicroelectronics Usb hardware service source code
Name Version License
usb NA Apache v2.0
wifi device/stm/stm32mp1/
peripheral/wifi
STMicroelectronics libwifi HAL source code
Name Version License
wifi NA Apache v2.0

13.1.3 Board modules[edit]

Module name Path of module Description
eval device/stm/stm32mp1/
eval
STMicroelectronics configuration for Android used to generate images adapted to the STM32MP15 Evaluation boards
Name Version License
eval NA Apache v2.0

13.1.4 Coprocessor service module[edit]

Module name Path of module Description
CoproService packages/apps/
CoproService
STMicroelectronics coprocessor service
Name Version License
CoproService NA Apache v2.0

13.1.5 ST application modules[edit]

Module name Path of module Description
app vendor/stm/app STMicroelectronics applications that can be associated , if need be, required to their respective coprocessor firmware
Name Version License
app NA Apache v2.0


14 Archives Archive box.png[edit]

STM32MP15 release Distribution for Android release note
STM32MP15-Ecosystem-v1.1.0 STM32MP15 distribution for Android release note - v1.0.0

No archive yet.


{{:STM32MP15 distribution for Android release note - v1.10.0}}

==Archives [[File:Archive_box.png|25px|link=]]=={| class="st-table"
! STM32MP15 release !! Distribution for Android release note
|-
| STM32MP15-Ecosystem-v1.1.0 || [[STM32MP15 distribution for Android release note - v1.0.0]]
|}
No archive yet.
<noinclude>

[[Category:Release notes]]
[[Category:Android distribution]]
[[Category:Android]]
{{UpdateNeededForNewRelease|
* Copy the link to the current version in the "Archives" chapter
* Transclude the new release note article
}}</noinclude>
Line 1: Line 1:
{{:STM32MP15 distribution for Android release note - v1.0.0}}
+
{{:STM32MP15 distribution for Android release note - v1.1.0}}
   
 
==Archives [[File:Archive_box.png|25px|link=]]==
 
==Archives [[File:Archive_box.png|25px|link=]]==
No archive yet.
+
{| class="st-table"
  +
! STM32MP15 release !! Distribution for Android release note
  +
|-
  +
| STM32MP15-Ecosystem-v1.1.0 || [[STM32MP15 distribution for Android release note - v1.0.0]]
  +
|}
   
 
<noinclude>
 
<noinclude>

Attachments

Discussions