{"id":15562407,"url":"https://github.com/longsleep/arm-trusted-firmware-pine64","last_synced_at":"2026-02-28T06:18:41.557Z","repository":{"id":73623467,"uuid":"50733972","full_name":"longsleep/arm-trusted-firmware-pine64","owner":"longsleep","description":"ATF for Pine64 (historical project, use https://github.com/longsleep/arm-trusted-firmware instead)","archived":false,"fork":false,"pushed_at":"2016-02-21T22:34:39.000Z","size":2660,"stargazers_count":7,"open_issues_count":0,"forks_count":5,"subscribers_count":3,"default_branch":"lichee-dev-1.0-fix-compile","last_synced_at":"2025-04-23T23:11:59.479Z","etag":null,"topics":["arm64","pine64"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/longsleep.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":"contributing.md","funding":null,"license":"license.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-01-30T16:47:28.000Z","updated_at":"2023-03-19T02:54:58.000Z","dependencies_parsed_at":"2023-05-06T03:16:41.526Z","dependency_job_id":null,"html_url":"https://github.com/longsleep/arm-trusted-firmware-pine64","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/longsleep%2Farm-trusted-firmware-pine64","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/longsleep%2Farm-trusted-firmware-pine64/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/longsleep%2Farm-trusted-firmware-pine64/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/longsleep%2Farm-trusted-firmware-pine64/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/longsleep","download_url":"https://codeload.github.com/longsleep/arm-trusted-firmware-pine64/tar.gz/refs/heads/lichee-dev-1.0-fix-compile","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250528872,"owners_count":21445518,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["arm64","pine64"],"created_at":"2024-10-02T16:14:12.005Z","updated_at":"2026-02-28T06:18:36.525Z","avatar_url":"https://github.com/longsleep.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"ARM Trusted Firmware - version 1.0\n==================================\n\nARM Trusted Firmware provides a reference implementation of secure world\nsoftware for [ARMv8-A], including Exception Level 3 (EL3) software. This\nrelease provides initial support for the [Juno ARM Development Platform] [Juno],\ncomplementing the existing support for the Base and Foundation\n[Fixed Virtual Platforms (FVPs)] [FVP] from ARM.\n\nThe intent is to provide a reference implementation of various ARM interface\nstandards, such as the Power State Coordination Interface ([PSCI]), Trusted\nBoard Boot Requirements (TBBR) and [Secure Monitor] [TEE-SMC] code. As far as\npossible the code is designed for reuse or porting to other ARMv8-A model and\nhardware platforms.\n\nARM will continue development in collaboration with interested parties to\nprovide a full reference implementation of PSCI, TBBR and Secure Monitor code\nto the benefit of all developers working with ARMv8-A TrustZone technology.\n\n\nLicense\n-------\n\nThe software is provided under a BSD 3-Clause [license]. Certain source files\nare derived from FreeBSD code: the original license is included in these\nsource files.\n\n\nThis Release\n------------\n\nThis release is a limited functionality implementation of the Trusted Firmware.\nIt provides a suitable starting point for productization. Future versions will\ncontain new features, optimizations and quality improvements.\n\n### Functionality\n\n*   Initial implementation of a subset of the Trusted Board Boot Requirements\n    Platform Design Document (PDD). This includes packaging the various firmware\n    images into a Firmware Image Package (FIP) to be loaded from non-volatile\n    storage.\n\n*   Initializes the secure world (for example, exception vectors, control\n    registers, GIC and interrupts for the platform), before transitioning into\n    the normal world.\n\n*   Supports both GICv2 and GICv3 initialization for use by normal world\n    software.\n\n*   Starts the normal world at the Exception Level and Register Width provided\n    by the platform port. Typically this is AArch64 EL2 if available.\n\n*   Handles SMCs (Secure Monitor Calls) conforming to the [SMC Calling\n    Convention PDD] [SMCCC] using an EL3 runtime services framework.\n\n*   Handles SMCs relating to the [Power State Coordination Interface PDD] [PSCI]\n    for the Secondary CPU Boot, CPU Hotplug, CPU Idle and System Shutdown/Reset\n    use-cases.\n\n*   A Test Secure-EL1 Payload and Dispatcher to demonstrate Secure Monitor\n    functionality such as world switching, EL1 context management and interrupt\n    routing. This also demonstrates Secure-EL1 interaction with PSCI. Some of\n    this functionality is provided in library form for re-use by other\n    Secure-EL1 Payload Dispatchers.\n\n*   Support for alternative Trusted Boot Firmware. Some platforms have their own\n    Trusted Boot implementation and only require the Secure Monitor\n    functionality provided by ARM Trusted Firmware.\n\n*   Isolation of memory accessible by the secure world from the normal world\n    through programming of a TrustZone controller.\n\n*   Support for CPU specific reset sequences, power down sequences and register\n    dumping during crash reporting. The CPU specific reset sequences include\n    support for errata workarounds.\n\nFor a full description of functionality and implementation details, please\nsee the [Firmware Design] and supporting documentation. The [Change Log]\nprovides details of changes made since the last release.\n\n### Platforms\n\nThis release of the Trusted Firmware has been tested on Revision B of the\n[Juno ARM Development Platform] [Juno] with Version r0p0-00rel7 of the\n[ARM SCP Firmware] [SCP download].\n\nThe Trusted Firmware has also been tested on the 64-bit Linux versions of the\nfollowing ARM [FVP]s:\n\n*   `Foundation_v8` (Version 2.1, Build 9.0.24)\n*   `FVP_Base_AEMv8A-AEMv8A` (Version 5.8, Build 0.8.5802)\n*   `FVP_Base_Cortex-A57x4-A53x4` (Version 5.8, Build 0.8.5802)\n*   `FVP_Base_Cortex-A57x1-A53x1` (Version 5.8, Build 0.8.5802)\n*   `FVP_Base_Cortex-A57x2-A53x4` (Version 5.8, Build 0.8.5802)\n\nThe Foundation FVP can be downloaded free of charge. The Base FVPs can be\nlicensed from ARM: see [www.arm.com/fvp] [FVP].\n\n### Still to Come\n\n*   Complete Trusted Boot implementation.\n\n*   Complete implementation of the [PSCI] specification.\n\n*   Support for alternative types of Secure-EL1 Payloads.\n\n*   Completing the currently experimental GICv3 support.\n\n*   Support for new System IP devices.\n\nFor a full list of detailed issues in the current code, please see the [Change\nLog] and the [GitHub issue tracker].\n\n\nGetting Started\n---------------\n\nGet the Trusted Firmware source code from\n[GitHub](https://www.github.com/ARM-software/arm-trusted-firmware).\n\nSee the [User Guide] for instructions on how to install, build and use\nthe Trusted Firmware with the ARM [FVP]s.\n\nSee the [Firmware Design] for information on how the ARM Trusted Firmware works.\n\nSee the [Porting Guide] as well for information about how to use this\nsoftware on another ARMv8-A platform.\n\nSee the [Contributing Guidelines] for information on how to contribute to this\nproject and the [Acknowledgments] file for a list of contributors to the\nproject.\n\n### Feedback and support\n\nARM welcomes any feedback on the Trusted Firmware. Please send feedback using\nthe [GitHub issue tracker].\n\nARM licensees may contact ARM directly via their partner managers.\n\n\n- - - - - - - - - - - - - - - - - - - - - - - - - -\n\n_Copyright (c) 2013-2014, ARM Limited and Contributors. All rights reserved._\n\n\n[License]:                  ./license.md \"BSD license for ARM Trusted Firmware\"\n[Contributing Guidelines]:  ./contributing.md \"Guidelines for contributors\"\n[Acknowledgments]:          ./acknowledgements.md \"Contributor acknowledgments\"\n[Change Log]:               ./docs/change-log.md\n[User Guide]:               ./docs/user-guide.md\n[Firmware Design]:          ./docs/firmware-design.md\n[Porting Guide]:            ./docs/porting-guide.md\n\n[ARMv8-A]:               http://www.arm.com/products/processors/armv8-architecture.php \"ARMv8-A Architecture\"\n[FVP]:                   http://www.arm.com/fvp \"ARM's Fixed Virtual Platforms\"\n[Juno]:                  http://www.arm.com/products/tools/development-boards/versatile-express/juno-arm-development-platform.php \"Juno ARM Development Platform\"\n[SCP download]:          https://silver.arm.com/download/download.tm?pv=1764630\n[PSCI]:                  http://infocenter.arm.com/help/topic/com.arm.doc.den0022b/index.html \"Power State Coordination Interface PDD (ARM DEN 0022B.b)\"\n[SMCCC]:                 http://infocenter.arm.com/help/topic/com.arm.doc.den0028a/index.html \"SMC Calling Convention PDD (ARM DEN 0028A)\"\n[TEE-SMC]:               http://www.arm.com/products/processors/technologies/trustzone/tee-smc.php \"Secure Monitor and TEEs\"\n[GitHub issue tracker]:  https://github.com/ARM-software/tf-issues/issues\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flongsleep%2Farm-trusted-firmware-pine64","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flongsleep%2Farm-trusted-firmware-pine64","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flongsleep%2Farm-trusted-firmware-pine64/lists"}