项目

Linaro 与其成员一起致力于 Arm 开源项目。 这些项目的范围和涉及的垂直领域可能有所不同,但都旨在实现以下一个(或多个)目标:

旨在解决生态系统质量问题的项目主要侧重于测试。 在这里,利益相关者共同资助关键配置的持续连续测试,以使上游成为质量参考。 这些项目之一的示例是 Linux Kernel Quality

专注于上游支持的项目专注于回归测试,通过添加更多功能和提高整个生态系统的安全性来改进技术。 通过这些项目,成员公司可以接触到维护者,这些维护者对上游的内容有发言权。 这些项目之一的示例是 上游维护者

Linaro 最初成立是为了解决 Arm 软件生态系统中的碎片化问题,这也是我们今天在新市场出现时仍在做的事情。 解决碎片化问题的项目侧重于跨多个开源项目将所有必要的技术上游化,以便所有生态系统参与者从一个共同的参考中工作。 这些项目之一的示例是 Trusted Substrate,旨在为边缘设备固件带来标准化。

在某些情况下,成员会向 Linaro 捐赠一个项目,使我们能够利用内部开发的代码库来实现更广泛的生态系统目标。 Linaro 提供了一个中立的平台,可以使用我们的工具和流程建立协作。 一旦项目启动并运行,它可以继续从 Linaro 工程协作中受益,或者可选择演变为 Linaro 社区项目,这是一个具有独立治理的项目。 迄今为止,共有三个 Linaro 社区项目 - MCUbootOpenAMP 和 [Trusted Firmware](https ://www.trustedfirmware.org/)。

有兴趣在 Arm 开源项目上与 Linaro 和其他行业领导者合作吗? 在此处了解有关 membership 以及如何参与的更多信息。

软件定义的功能不再局限于云网络,而是有望扩展到边缘。

自主 AI 驱动的功能正被部署到网关甚至传感器等信任领域。推动向软件定义汽车发展的Zonal Architecture革命只是行业已转向软件优先方法的一个指标。推动这些场景的技术在不断发展,但都存在一个共同点-缺少开源软件标准化。

毫无疑问,Arm 芯片可以通过高效的功耗、快速的性能和全天的电池寿命提供卓越的用户体验。

但要使Arm 技术上运行的设备能真正利用这些功能,操作系统 (OS) 需要确保使用该操作系统的开源工具和应用程序能够在 Arm 上本地运行。 这是一项不小的任务,也是 Google 和 Microsoft 与 Linaro、其会员和开源社区合作的原因。 Linaro 推动了创建强大的Android 和 Windows on Arm生态系统所需要的工作。 这些生态系统在为消费者提供卓越的用户体验方面发挥着至关重要的作用。

过去几年,Arm在服务器领域正被越来越多地采用,包括世界上最快的超级计算机—富士通的Fugaku—就是在Arm CPU 上运行。

众所周知,Arm 芯片主导了移动市场。 Arm 为设备制造商提供了灵活性,他们可以设计 Arm 芯片来满足特定的需求让它成为一个有吸引力的选择。 但要使 Arm 服务器芯片继续满足需要更多存储和更多数据的企业的需求,就需要有一个软件生态系统来帮助推动功能启用、测试和错误修复。 Linaro 与其成员公司合作,加强 Arm 服务器的软件生态系统。

组建 Linaro 的主要目标之一是巩固 Arm 代码库。

多家公司和个人试图将本质上相同的代码上传到 kernel.org 所产生的代码搅动导致了碎片化,并减缓了产品的创新和交付。 Linaro 的工作,尤其是在内核方面的工作,提供了协作的焦点,并且到 2012 年情况明显改善,这是 Linus Torvalds 认识到的。 自 Linux 内核 3.10 版以来,Linaro 一直被列为对Linux内核做出贡献的全球前十名公司之一。 我们在 GCC 和 LLVM 等工具链上所做的工作也得到了广泛认可。 除了我们在 Linux 内核和工具链方面的工作外,我们还以通过 OP-TEE、LAVA 和 LKFT 等项目在安全和测试方面的专业知识而闻名。

The Client PC project aims to investigate and develop firmware and kernel solutions for enabling fully functional client PCs for Arm-based hardware.

The project's initial focus will be to prototype and develop UEFI+ACPI firmware for a reference platform that can boot major client operating systems like Linux and Windows out of the box with full driver support, power and performance management capabilities, etc.

Future phases of the project will focus on other open-source solutions needed for the client PC market, such as firmware-based trusted platform modules.

The current scope of project is platform bring-up (NXP I.MX8M) and power and performance management firmware prototype(FVP)

Project Homepage

https://linaro.atlassian.net/wiki/spaces/CLIENTPC/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LWG SC.

Visit the Linaro Membership page for more information.

Development of GNU Toolchain:

  • GCC compiler
    • We improve Link-Time Optimizations (LTO), SVE auto-vectorization optimizations, and microarchitecture-specific optimizations for popular Arm cores.
    • We improve performance and scalability of Libgomp (GNU OpenMP runtime)
    • We support compiler sanitizers (ASAN, TSAN, etc.) in GCC. Sanitizers are developed under LLVM Toolchain project, and sanitizer changes are then merged into GCC to have both LLVM and GNU toolchains provide sanitizer features.
  • GDB debugger
    • We develop support for new ARMv8.x architectural features and improve debugging experience.
  • Glibc C Library
    • We implement both target-specific and generic optimizations in Glibc. We then aim to propagate all relevant Glibc improvements to Newlib and Bionic C libraries.
  • GNU Binutils assembler, BFD and Gold linkers
    • In Binutils we implement ELF section-level optimizations, as well as workarounds for hardware errata.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/GNU/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

Development of LLVM Toolchain:

  • Clang compiler
    • We implement new and improve existing code-size and code-speed optimizations for AArch64 and ARM targets.
  • LLDB debugger
    • We develop support for new ARMv8.x architectural features and improve debugging experience.
  • Compiler-RT runtime libraries
    • We port and improve compiler sanitizers (ASAN, TSAN, etc.) to AArch64 and ARM architectures. Sanitizer changes are then merged into GCC to have both LLVM and GNU toolchains provide sanitizer features.
  • LLD linker
    • In LLD linker we implement ELF section-level optimizations, as well as workarounds for hardware errata.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/LLVM/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

Collaborate with the OpenEuler community on kernel testing with focus 64bit on Arm and embedded platforms.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/EULR/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

Blueprints goal is to showcase the usage of Arm technologies by providing segment specific reference for seeding the ecosystem. Accelerate customer solution TTM by providing open-source reference blueprint and enable scale by creating a rich ecosystem of system integration partners to scale Arm tech and act as an integration point for Arm and eco-system partners to integrate open-source technology components to enhance the value of Arm tech.

We are actively engaged in the Automotive blueprints to support the industry’s efforts in building a Scalable Open Architecture for Embedded Edge (SOAFEE).

Project Homepage

https://linaro.atlassian.net/wiki/spaces/BP/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LEDGE SC.

Visit the Linaro Membership page for more information.

The aim of this project is to make AArch64 a first class citizen in the Big Data, Analytics and Data Science community (e.g., Hadoop, Spark, etc.). Big Data and Data Science technologies are vital and have become mature with various production implementations. Linaro drives engineering activities and ARMv8 builds. for Apache Ambari, BigTop, Spark and Hadoop.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/BDDS/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LDCG SC.

Visit the Linaro Membership page for more information.

An end-to-end proof-of-concept demonstrating modern security best practices for Armv8-M, based on open source software and open standards, with AI/ML as a use case.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/CA/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LITE SC.

Visit the Linaro Membership page for more information.

Expanding various tools (especially QEMU) to emulate new ARM architectural features so open source projects can rapidly adopt the latest technology. We also continually improve ARMs hardware virtualization aiming for feature parity with other popular enterprise architectures.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/QEMU/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

The goal is to remove the gaps with x86 by collaborating together in the Arm server ecosystem, so that we can provide competitive and leading storage solutions with Arm servers.

Deliverables are focused around:

  • Participate in the upstream communities of Ceph/Lustre/BeeGFS/etc for ARM64 support, setup CI testing on Arm servers, and drive the official ARM64 releases;
  • Performance optimizations by leveraging key ARM64 architecture features (storage related benchmark testing can be done for the profiling);
  • Drive community promotion by members/partners together for storage solutions on Arm servers to help customer adoptions;

Project Homepage

https://linaro.atlassian.net/wiki/spaces/STOR/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LDCG SC.

Visit the Linaro Membership page for more information.

The HPP project works on technologies for use between different CPU types or different OS types. Current technologies include:

  • Remoteproc & Rpmsg
  • Virtio between two cores that do not share a hypervisor
  • System Devicetree
  • QEMU as a development platform for these systems
HPP is a Linaro project but is also closely associated with the OpenAMP community project (also hosted at Linaro).

Project Homepage

https://linaro.atlassian.net/wiki/spaces/HPP/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LEDGE SC.

Visit the Linaro Membership page for more information.

LAVA stand for Linaro Automated Validation Architecture.

LAVA is a continuous integration system for deploying operating systems onto physical and virtual hardware for running tests.

LAVA is also used to managed and share boards among teams.

Project Homepage

https://www.lavasoftware.org/

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

OP-TEE is an open source Trusted Execution Enviroment (TEE) implementing the Arm TrustZone technology. Linaro is a key contributor both in terms of pushing new features as well as doing roadmap planning, maintenance, release work, vulnerability assessment and mitigation of security issues. We employ several core maintainers for the OP-TEE project as well as maintainers for the TEE framework in the Linux kernel and U-Boot.

In 2019, OP-TEE was donated to Trusted Firmware, a Linaro Community Project.  Linaro is still responsible for driving the roadmap for OP-TEE in sync with the members of Linaro as well as with the TrustedFirmware.org project.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/LOC/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

The Ecosystem Landscape Dashboard Project is to create and support a public platform to house a unified ecosystem landscape of open source projects. This platform (a web site) will include a dashboard for each project with resources to educate a developer as to the status about the project. The vision for the site is as a unified communication hub and connection point to the latest community resources. Project will enable contributions from communities to assist in growing the platform dataset.

When successful, it will provide a one-stop resource, which can help everyone find necessary software project information and resources about Arm support through this platform whether it’s the first or the 500th time the user needs community data for development on Arm.

This project is *not* limited to one segment and is intended to cover the arm ecosystem.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/AELTS/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LDCG SC.

Visit the Linaro Membership page for more information.

Ensure and improve ongoing quality for 6 years Linux LTS releases, linux-next, and Linux mainline on the Arm architecture

Project Homepage

https://linaro.atlassian.net/wiki/spaces/LKQ

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

Lead the evolution of the definition of the CMSIS-Pack specification. Backed by documentation and training material and CLI tools for major host platforms

Project Homepage

https://linaro.atlassian.net/wiki/spaces/CMSIS/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LITE SC.

Visit the Linaro Membership page for more information.

The performance scaling with SCMI project will extend support for the SCMI perf-domain protocol in the Linux kernel and in the firmware.

Today, the current support in the Linux kernel for the SCMI perf-domain protocol, is limited to be used for CPU frequency scaling, through the cpufreq subsystem. However, the SCMI perf-domain protocol isn't really limited to CPUs, but fits well for other generic peripheral devices too. Extended support avoids the need for SoC specific protocols/interfaces, while scaling performance for non-CPU devices.

The Linux kernel already has generic support for DVFS (Dynamic Voltage Frequency Scaling), through a mixture of subsystems/libraries. Without going into details, it should be possible to tap into the existing infrastructures, to add support for the SCMI perf-protocol. In this way, the support would be generic and nicely abstracted from lower layer drivers/subsystems.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/PERFSCMI/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

SQUAD is a Software Quality Dashboard written in Python 3. It uses Django.

See the documentation folder for more documentation, or go browse the documentation online

Project Homepage

https://github.com/linaro/squad

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

There is a growing trend towards virtualization in areas other than the tradition server environment. The server enviroment is uniform in nature but as we move towards a richer echosystem in automotive, medical and general mobile and the IoT spaces, the rich array of hypervisors and SoCs become a problem.

Project Stratos is working towards developing hypervisor agnostic Virtio interfaces and standards.
The four key areas of interest are

  • High performance Virtio interfaces
  • Virtual Machine Monitors with a safety island
  • Boot Orchestration
  • Written Standards for the hypercalls

Project Homepage

https://linaro.atlassian.net/wiki/spaces/STR/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

System Control and Management Interface (SCMI) has been designed to standardize the interface between a power coprocessor and other parts of a SoC. That includes the application processor (AP) on which we can have both rich OS like Linux but also a TEE like OP-TEE.
Each client of the power coprocessor has its own access point with specific control permissions on the power resources. But on some “medium/small” systems, the power coprocessor may not be present or doesn’t provide enough access points. In such a case, the AP itself has to control and filter the access to the power resources.
For security reason, the TEE must have the control of shared resources and populate the authorized resources to the non secure world. The TEE acts as a power coprocessor from Linux PoV and we can keep the SCMI interface.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/SCMI/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

Primarily focused on Server Standardisation. Examples to include SBSA, xBBR to enable simplified adoption of mainline builds on new server hardware.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/SRCPC/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LDCG SC.

Visit the Linaro Membership page for more information.

Linaro's hosted activities to improve and support the Google TensorFlow project

Project Homepage

https://linaro.atlassian.net/wiki/spaces/TENS/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LDCG SC.

Visit the Linaro Membership page for more information.

The thermal framework in the Linux kernel is designed to protect the silicon and exports the
thermal zone information to userspace. That includes the temperature but
also the different notifications telling about the cooling device state
changes as well as the temperature trip point crossed the way up or down.

Even though the thermal framework works well, some features are missing
and some parts can be improved to prevent overshoots leading to a
performance drop action.

These changes are found in out of tree kernels and needs to be carried
into the upstream kernel conforming to the Linux coding, design and
implementation standards.

Some issues with the current implementation have also been found and need to be fixed to allow the thermal daemons to act correctly and in time to mitigate the thermal situation on different devices.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/TE/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

Trusted Substrate project ambition is to upstream all necessary technologies in multiple projects to enable SystemReady compliance. Projects can be Trusted Firmware, OP-TEE, U-Boot, SCP, Linux kernel (EFI stub) and others.

Trusted Substrate is a BIOS that brings standards based secure booting and over-the-air (OTA) updates to the most trust demanding embedded computing projects such as automotive and robotics. OTA is a key value of Trusted Substrate as it allows any firmware components to be updated with anti-bricking and anti-roll back protections, and will allow transactional updates in asymmetric computing, Cortex-A + Cortex-M solutions.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/TS/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LEDGE SC.

Visit the Linaro Membership page for more information.

TuxSuite™ delivers on-demand APIs and tools for building Linux kernels in parallel and at scale.

Project Homepage

https://tuxsuite.com/

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

Linaro's engineers are actively participating in upstream engineering communities. As a result, as maintainers, they become responsible for keeping their code upstream in sync with the overall development of respective upstream projects.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/UM/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by TSC.

Visit the Linaro Membership page for more information.

This project aims to create a Windows on Arm perf tool with the same command line interface as the Linux perf tool so that you can do deep performance analysis(equivalent to Intel vtune tool).

Currently we support the *counting model*, for obtaining aggregate counts of occurrences of special events, and

  • Currently under development.
  • Will be developed and improved in short-term.
  • Less complex then sampling model.
In the future we will support the *sampling model*, for determining the frequencies of event occurrences produced by program locations at the function, basic block, and/or instruction levels.

Project Homepage

https://linaro.atlassian.net/wiki/spaces/WPERF/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LWG SC.

Visit the Linaro Membership page for more information.

Adding support for Windows on Arm into open source projects requires official builds in CI, a long-term commitment to maintainership, and a solid, trusted relationship with the upstream project maintainers.

For each tool, language or framework

  • Determine if the package can be built for WoA - upstream fixes
  • Set up CI and testing in package maintainers CI system, or support upstream CI via Linaro surfaceProX pool
  • Migrate WoA CI towards WOA servers as they become available.
  • Coordinate with each vendor to analyse and fix regressions (Triage)
  • Establish trusted relationships with each project maintainer
  • Help the community establish WoA as a supported platform

Project Homepage

https://linaro.atlassian.net/wiki/spaces/WOAR/overview

How to participate

Participation in this project can be achieved through Linaro Membership. The project is managed by LWG SC.

Visit the Linaro Membership page for more information.