Embedded and Automotive/Archived/PV Drivers/Roadmap: Difference between revisions

From Xen
Jump to navigationJump to search
No edit summary
 
(21 intermediate revisions by 3 users not shown)
Line 1: Line 1:
'''Initial contribution by GlobalLogic'''
{{InfoLeft|Note that this roadmap is out-of-date. Some of the work has been superseded and others has happened.}}
* Automotive SoCs support
** TI Jacinto 6 support - done
** Renesas R-Car gen 2 support - done
** Renesas R-Car gen 3 support - done
* QNX IPL and drivers - abandoned, as interest has shifted from QNX to [https://www.automotivelinux.org/ AGL], for which there is an upstream. The risk of having to maintain an unnecessary Xen port was considered too high at this stage
* Initial cpufreq implementation in XEN
* Initial PV drivers APIs implementation (tty, RTC, audio, event, rpmsg)
'''Xen 4.9 release'''
* major PV drivers APIs: sound, display, input - done
** frontend and backend implementations available on GitHub
'''Xen 4.10 release'''
* "Non-shared" IOMMU support - done
** VMSA-compatible IOMMU in Renesas R-Car gen3 driver - done
* generic co-processor (GPU, DSP, FPGA, TPU, ...) virtualization support
** vcoproc design documentation created
** initial implementation in progress
** drivers to be implemented as deprivileged applications
* integration with ARM TrustZone based on [https://github.com/OP-TEE OP-TEE]
** SMC/HVC bridge in Xen
** OP-TEE driver as a deprivileged app
** changes in OP-TEE itself: dynamic memory management, multiple domains support
* deprivileged applications in Xen on ARM
** initial stubdom support for ARM done
** initial EL0 deprivilege support done
** will be use for non-upstreamable drivers (GPU, TEE, etc.)
** may be also used for PL011 emulation required by Linaro spec
'''Future'''
* power management implementation
* hard real time scheduling integration, [[RTDS-Based-Scheduler]]
* yocto-based build management integrations (see [http://git.yoctoproject.org/cgit/cgit.cgi/meta-virtualization meta-virtualization] layer on Yocto Project git) (also see [[Xen_on_ARM_and_Yocto]])
* heterogeneous computing support (big.LITTLE, etc.)
* dom0 RTOS support ([http://www.freertos.org/ FreeRTOS]? [http://www.arccore.com/ Arctic Core] – Open Source [http://www.autosar.org/ Autosar]?)
* IEC 61508 safety certification - see similar OSADL [http://www.osadl.org/SIL2LinuxMP.sil2-linux-project.0.html Sil2LinuxMP] project for Linux


[[Category:Embedded and Automotive]]
== Project Infrastructure and Initial GlobalLogic Contribution ==
[[Category:Embedded and Automotive/Archived/PV Drivers]]
* Set up Project infrastructure (code repos and mailing list) – {{Tick}}
[[Category:Yocto]]
** {{Tick}} mailing list
[[Category:Drivers]]
** {{NotDone}} code repos were not needed, see below
[[Category:Archived]
* Initial code contribution of QNX drivers by GlobalLogic {{NotDone}} as interest has shifted to AGL, for which there is an upstream, and there is a risk of having to maintain an unnecessary Xen port
* Add Wiki pages (instruction to get SW build for TI J6 EVM)

== Planned Code Contributions ==
* Xen Project Hypervisor changes: some for 4.4 - {{Tick}} see [[Xen Project 4.4 Feature List]]
* Xen Project Hypervisor changes: some for 4.5 - {{Tick}} see [[Xen Project 4.5 Feature List]]
* Xen Project Hypervisor changes: some for 4.6 - {{Tick}} see [[Xen Project 4.6 Feature List]]
* [http://www.qnx.com/ QNX] & [https://www.tizen.org/ Tizen] baseports to run as Xen Project guests {{NotDone}} Interest has shifted to AGL
* Upstream RT Scheduler performance improvements to Hypervisor - {{Tick}} See [[RTDS-Based-Scheduler]] in Xen 4.5 - additional work ongoing and planned for Xen 4.7
* GPU virtualization PV drivers using OpenGL {{NotDone}} this was prototyped - an alternative approach exists out-of-tree at this stage
* Adding support for Renesas R-Car M2/H2 hardware – {{Tick}} Initial support in Xen 4.6, some support planned for later
* Thin Dom0 (only containing kernel with Xen tools on Dom 0 - and no drivers or other functionality - for disaggregated architecture)
* ISO 26262 certification - ongoing

== Project Wish list (unplanned at this stage) ==
* Power Management Improvements
* [http://www.arccore.com/ Arctic Core] – Open Source [http://www.autosar.org/ Autosar]
* Better support for SMMU

[[Category:Embedded and Automotive PV Drivers]]

Latest revision as of 17:21, 14 May 2019

Initial contribution by GlobalLogic

  • Automotive SoCs support
    • TI Jacinto 6 support - done
    • Renesas R-Car gen 2 support - done
    • Renesas R-Car gen 3 support - done
  • QNX IPL and drivers - abandoned, as interest has shifted from QNX to AGL, for which there is an upstream. The risk of having to maintain an unnecessary Xen port was considered too high at this stage
  • Initial cpufreq implementation in XEN
  • Initial PV drivers APIs implementation (tty, RTC, audio, event, rpmsg)

Xen 4.9 release

  • major PV drivers APIs: sound, display, input - done
    • frontend and backend implementations available on GitHub

Xen 4.10 release

  • "Non-shared" IOMMU support - done
    • VMSA-compatible IOMMU in Renesas R-Car gen3 driver - done
  • generic co-processor (GPU, DSP, FPGA, TPU, ...) virtualization support
    • vcoproc design documentation created
    • initial implementation in progress
    • drivers to be implemented as deprivileged applications
  • integration with ARM TrustZone based on OP-TEE
    • SMC/HVC bridge in Xen
    • OP-TEE driver as a deprivileged app
    • changes in OP-TEE itself: dynamic memory management, multiple domains support
  • deprivileged applications in Xen on ARM
    • initial stubdom support for ARM done
    • initial EL0 deprivilege support done
    • will be use for non-upstreamable drivers (GPU, TEE, etc.)
    • may be also used for PL011 emulation required by Linaro spec

Future

[[Category:Archived]