{"id":25692380,"url":"https://github.com/embetrix/meta-stm32mp15x","last_synced_at":"2026-03-03T00:32:30.163Z","repository":{"id":53141398,"uuid":"483286791","full_name":"embetrix/meta-stm32mp15x","owner":"embetrix","description":"OpenEmbedded/Yocto BSP layer for STM32MP15x based MPUs","archived":false,"fork":false,"pushed_at":"2025-02-24T10:23:41.000Z","size":170,"stargazers_count":17,"open_issues_count":1,"forks_count":5,"subscribers_count":1,"default_branch":"scarthgap","last_synced_at":"2025-11-18T00:05:14.120Z","etag":null,"topics":["arm-trusted-firmware","bsp","industrial","lvgl","openembedded-layer","optee","real-time","rt-preempt","secure-boot","security","stm32mp1","stm32mp157c-dk2","stm32mp157f-dk2","stm32mp15x","yocto-layer"],"latest_commit_sha":null,"homepage":"","language":"BitBake","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/embetrix.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING.MIT","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-04-19T14:43:20.000Z","updated_at":"2025-08-17T08:59:21.000Z","dependencies_parsed_at":"2023-12-27T09:26:23.263Z","dependency_job_id":"26fd814d-92cc-47b8-8d00-efb119fda5ce","html_url":"https://github.com/embetrix/meta-stm32mp15x","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/embetrix/meta-stm32mp15x","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/embetrix%2Fmeta-stm32mp15x","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/embetrix%2Fmeta-stm32mp15x/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/embetrix%2Fmeta-stm32mp15x/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/embetrix%2Fmeta-stm32mp15x/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/embetrix","download_url":"https://codeload.github.com/embetrix/meta-stm32mp15x/tar.gz/refs/heads/scarthgap","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/embetrix%2Fmeta-stm32mp15x/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30027033,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-03T00:31:48.536Z","status":"ssl_error","status_checked_at":"2026-03-03T00:30:56.176Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arm-trusted-firmware","bsp","industrial","lvgl","openembedded-layer","optee","real-time","rt-preempt","secure-boot","security","stm32mp1","stm32mp157c-dk2","stm32mp157f-dk2","stm32mp15x","yocto-layer"],"created_at":"2025-02-24T23:09:02.843Z","updated_at":"2026-03-03T00:32:30.132Z","avatar_url":"https://github.com/embetrix.png","language":"BitBake","funding_links":[],"categories":[],"sub_categories":[],"readme":"# meta-stm32mp15x\n\n## Summary\n\n**meta-stm32mp15x** is a yocto layer containing BSP support for the [stm32mp15x](https://wiki.st.com/stm32mpu/wiki/Category:STM32MP15x) based devices.\n\nThis layer relies on OpenEmbedded/Yocto build system and depends on:\n\n```\n[OECORE]\nURI: https://git.yoctoproject.org/git/poky.git\nlayers: meta\nbranch: same dedicated branch as meta-stm32mp15x\n```\nand\n\n```\n[OE]\nURI: https://github.com/openembedded/meta-openembedded.git\nlayers: meta-oe\nbranch: same dedicated branch as meta-stm32mp15x\n```\n\n## Build\n\nThis layer can be integrated in your layers or built standalone using [kas-tool](https://github.com/siemens/kas):\n\n```\nKAS_MACHINE=stm32mp157f-dk2 kas build kas-stm32mp15x.yml\n```\n\nor using kas docker container:\n\n```\nKAS_MACHINE=stm32mp157f-dk2 kas-container build kas-stm32mp15x.yml\n```\n\n## Flash SD Card\n\nFlash image on a SD Card using [bmap-tools](https://github.com/intel/bmap-tools):\n\n\n```\nsudo bmaptool copy \\\n    build/tmp/deploy/images/stm32mp157f-dk2/stm32mp15x-demo-image-stm32mp157f-dk2.wic.gz \\\n    /dev/mmcblk0\n```\n\n## Run\n\nInsert your SD Card into the compatible device and you should see in your serial console:\n\n```\nNOTICE:  CPU: STM32MP157FAC Rev.Z\nNOTICE:  Model: STMicroelectronics STM32MP157F-DK2 Discovery Board\nNOTICE:  Board: MB1272 Var4.0 Rev.C-02\nNOTICE:  Bootrom authentication succeeded\nNOTICE:  BL2: v2.8-stm32mp1-r1.1(release):v2.8-stm32mp-r1.1-3-g61924c04c-dirty(61924c04)\nNOTICE:  BL2: Built : 13:07:51, Oct 18 2023\nNOTICE:  TRUSTED_BOARD_BOOT support enabled\nNOTICE:  BL2: Booting BL32\noptee optee: OP-TEE: revision 3.19 (d0159bbf)\n\n\nU-Boot 2022.10-stm32mp-r1.1 (Sep 18 2023 - 11:38:19 +0000)\n\nCPU: STM32MP157FAC Rev.Z\nModel: STMicroelectronics STM32MP157F-DK2 Discovery Board\nBoard: stm32mp1 in trusted mode (st,stm32mp157f-dk2)\nBoard: MB1272 Var4.0 Rev.C-02\nDRAM:  512 MiB\noptee optee: OP-TEE: revision 3.19 (d0159bbf)\nClocks:\n- MPU : 800 MHz\n- MCU : 208.878 MHz\n- AXI : 266.500 MHz\n- PER : 24 MHz\n- DDR : 533 MHz\nCore:  368 devices, 44 uclasses, devicetree: board\nWDT:   Started watchdog with servicing (32s timeout)\nNAND:  0 MiB\nMMC:   STM32 SD/MMC: 0, STM32 SD/MMC: 1\nLoading Environment from MMC... OK\nIn:    serial\nOut:   serial\nErr:   serial\nNet:   eth0: ethernet@5800a000\nHit any key to stop autoboot:  0 \n7826746 bytes read in 446 ms (16.7 MiB/s)\n## Loading kernel from FIT Image at c8000000 ...\n   Using 'conf-stm32mp157f-dk2.dtb' configuration\n   Verifying Hash Integrity ... sha256,rsa2048:ubootfit+ OK\n   Trying 'kernel-1' kernel subimage\n     Description:  Linux kernel\n     Created:      2023-10-02  11:43:32 UTC\n     Type:         Kernel Image\n     Compression:  uncompressed\n     Data Start:   0xc80000ec\n     Data Size:    7737408 Bytes = 7.4 MiB\n     Architecture: ARM\n     OS:           Linux\n     Load Address: 0xc2000000\n     Entry Point:  0xc2000000\n     Hash algo:    sha256\n     Hash value:   8c088804a963b023d427504e2fc36f98899aba7ba3efe583bb42b2e5db839854\n   Verifying Hash Integrity ... sha256+ OK\n## Loading fdt from FIT Image at c8000000 ...\n   Using 'conf-stm32mp157f-dk2.dtb' configuration\n   Verifying Hash Integrity ... sha256,rsa2048:ubootfit+ OK\n   Trying 'fdt-stm32mp157f-dk2.dtb' fdt subimage\n     Description:  Flattened Device Tree blob\n     Created:      2023-10-02  11:43:32 UTC\n     Type:         Flat Device Tree\n     Compression:  uncompressed\n     Data Start:   0xc876123c\n     Data Size:    87138 Bytes = 85.1 KiB\n     Architecture: ARM\n     Load Address: 0xc4000000\n     Hash algo:    sha256\n     Hash value:   4acc0143bd2cc251ab55e9576e51b60ba9e5f767a734dac308aee309b7bf4d08\n   Verifying Hash Integrity ... sha256+ OK\n   Loading fdt from 0xc876123c to 0xc4000000\n   Booting using the fdt blob at 0xc4000000\n   Loading Kernel Image\n   Loading Device Tree to cffe7000, end cffff461 ... OK\nBootstage space exhasuted\n\nStarting kernel ...\n\n\nPoky (Yocto Project Reference Distro) 5.0 stm32mp157f-dk2 ttySTM0\n\nstm32mp157f-dk2 login: root\nroot@stm32mp157f-dk2:~# \n```\n\n## Secure Boot:\n\nSecure Boot Signing of **tf-a** an **fip** binaries is enabled by default using a development key \n\nwe recommend that you generate your own key using: \n\n```\nopenssl ecparam -name prime256v1 -genkey -out /path/to/secure-boot-mykey.pem\n```\n\nSet the new Key path in a Bitbake Variable put in your local.conf:\n\n```\nSECBOOT_SIGN_KEY = \"/path/to/secure-boot-mykey.pem\"\n```\n\nThe hashes of public key are automatically generated under:\n\n```\nbuild/tmp/deploy/images/stm32mp157f-dk2/secureboot-pubkey-hash.bin\n```\n\nThe corresponding u-boot fuse prog commands are also generated and can be fused using:\n\n```\nbuild/tmp/deploy/images/stm32mp157f-dk2/u-boot-fuse-prog.txt\n```\n\n\u003e **Note**\n\nWe provide services to integrate HSM signing to secure boot, extend it to the applications\nand improve the overall security of your product.\n\n\n## Wireless LAN\n\nto enable Wifi Manually you should set */etc/wpa_supplicant.conf* file e.g:\n\n```\nnetwork={\n        ssid=\"embetrix-2.4\"\n        psk=315089e3db2ce18ad94caba8a3b71f35947487d1c7913a44130e7ec2f91905040\n}\n```\n\nand start wpa_supplicant:\n\n```\nwpa_supplicant -c /etc/wpa_supplicant.conf -i wlan0 -B\n```\n\nyou can then acquire an IP address using for example:\n\n```\nudhcpc -i wlan0\n```\n\n## List of tested boards:\n\n* [stm32mp157c-dk2](https://www.st.com/en/evaluation-tools/stm32mp157c-dk2.html)\n* [stm32mp157f-dk2](https://www.st.com/en/evaluation-tools/stm32mp157f-dk2.html)\n\n## Contributing\n\nIf you want to contribute changes, you can send Github pull requests at:\nhttps://github.com/embetrix/meta-stm32mp15x/pulls\n\n\n## Maintainers\n\n - Ayoub Zaki \u003cinfo@embetrix.com\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fembetrix%2Fmeta-stm32mp15x","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fembetrix%2Fmeta-stm32mp15x","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fembetrix%2Fmeta-stm32mp15x/lists"}