xpds13: xen in oss based in–vehicle infotainment systems - artem mygaiev, globallogic

Post on 20-Aug-2015

2.246 Views

Category:

Automotive

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

©2013 GlobalLogic Inc.

Xen in OSS based In-Vehicle

Infotainment Systems

Xen Project Developer Summit

October 25, 2013

2 CONFIDENTIAL

Artem Mygaiev

Leading of Embedded Practice in GlobalLogic-Ukraine

Embedded SW

Linux kernel

Wireless networking

E-mail: artem.mygaiev@globallogic.com

Skype: rosenkrantzguildenstern

3 CONFIDENTIAL

About GlobalLogic

− Technology services company

− Headquartered in Silicon Valley

− Design studios in the US and UK

− Engineering centers in the US, Ukraine,

India, Argentina, China

− 1000+ product releases

− 200 active clients

− 6,600 people

www.globallogic.com

4 CONFIDENTIAL

Case Study

Creating a single platform that would leverage AGA , GENIVI Linux, and Xen to allow quick implementation of end-to-end IVI products.

Creating and maintaining Automotive-Grade Android (AGA) distribution.

Nautilus Platform Goals

Xen is key component of the solution

6

Why virtualize?

“Ford Sync software today contains 10,000,000+ lines of code”

- John Ellis, Ford @ GENIVI All members meeting

New business models: overcome disconnect

between mobile and automotive industry

• Short time to market cycle

• Connected car concept

• 3rd party applications

• Cost reduction

D’OH, REBOOT!

When my phone software freezes

When my car software freezes

So what is critical, what is not?

Vehicle software

• Powered by highly reliable OS like QNX or Autosar (or Automotive Grade Linux?)

• Mission critical tasks – Interface to the vehicle systems

(CAN/MOST)

– Climate control, vehicle services, sensors

– Diagnostic, calibration, configuration

– Emergency services

– Driver assistance

– Cameras (driver, rear view, front view, etc.)

Infotainment software

• May be powered by not so reliable OS like Android or Windows

• User interface including speech recognition and TTS

• Connectivity services – Phone connection, Bluetooth

– Wireless display sink (Miracast, AirPlay, MirrorLink)

– Wireless hotspot

• Navigation

• Cloud applications

• Multimedia services – uPnP/DLNA

– A/V playback

– Radio (SXM, DAB, FM/AM)

11

Virtualization on ARM

User Mode

(Non-privileged)

Supervisor Mode

(Privileged)

Hyp Mode

(More Privileged)

Guest Operating System1

App2 App1

Guest Operating System2

App2 App1

Virtual Machine Monitor / Hypervisor

TrustZone Secure Monitor (Highest Privilege)

Secure Apps

Secure OS

Non-secure State Secure State

• Guest OS same kernel/user privilege structure

• HYP mode higher privilege than OS kernel level

• VMM controls wide range of OS accesses • 2 stage VMM

• Virtual Interrupt Controller

• System MMU

• Hardware maintains TZ security (4th privilege)

Why Xen?

• Type 1 Hypervisor

• Flexible Virtualization Modes

• Driver disaggregation

• ARM support

• Open Source

Why TI OMAP5/Jacinto6?

• Dual Cortex A15 SoC

• Rich interfaces and peripherals

• Mobile-world multimedia capabilities

• Ability to re-use Android solution from mobile

• GlobalLogic is a TI Platinum Partner

15

Made in GlobalLogic

Dual-domain System

(Android + Linux)

HVM with

SMMU-enabled

driver domain

SMC-firewalled

SoC controls

(MMUs, PM, …)

Xen in Nautilus: Key Principles

DOMU

IPC

System Services

UI with TTS and speech recognition

Phone BT NAV Cloud

Apps

Wireless

Display

sync

DLNA Multi

media Radio

DOM0

IPC

System Services

Vehicle Service

Climate Control,

Sensors, etc.

Diagnostics/

Calibration/

Configuration

Emergency

Services

Android

Xen

Linux

Infotainment Software Vehicle Software

18

.

− Dual M4 cores run SW accelerators

(boot animation, camera, AV codecs,

etc.)

− Most of interfaces (UART, I2C) can be

DMAed trough EDMA though

accessible trough SMMU

− PCI express is accessible trough

SMMU

− Some interfaces (USB, SATA, etc.)

have internal DMAs and must be

paravirtualized

− MPU, GFX, BB2D, IPUs, DSPs, EVEs

have own MMUs and can be

configured to work with driver domain

19

.

Xen tools

Vehicle SW

HMI

Android FWs

PM/TM logic

MMU controls GIC/GT/Mem

SMC SW

TrustZone DomU Dom0

Hyp

Peripherals

20

.

− Forked hypervisor from Xen 4.3 release

− OMAP5 is taken as a reference − Dom0 - OMAP LK 3.8 (stable)

− DomU - OMAP Android LK 3.4 (stable), Xen parameters delivered with

custom ATAGs, backported number of Xen support patches

− Peripherals are directly-accessed by DomU trough memory

mapping, which is completely insecure

− OMAP runtime pm disabled

− SMP is works for Dom0

− No kernel changes needed on Android side so far

− Full system integrated (IPU+Uboot+Xen+Linux+Android)

Implementation highlights

21

.

− Switch to the latest Xen 4.4-unstable − SWIOTLB

− SMMU (and other MMUs)

− Port to DRA7xx (Jacinto6) on HW availability − Switch Dom0 to OMAP LK 3.11

− Switch DomU to OMAP Android LK 3.8 (and enable SMP)

− Virtualize OMAP runtime pm − Probably move OMAP cpufreq to hypervisor?

− Drop 1:1 memory mapping for DomU − Fix virtual block device and implement other virtual devices (USB)

− Configure MMUs from hypervisor

− Configure SMC firewalls

Further steps

22

.

− Continue work on PM/TM making it more “generic”

− Review hypervisor and tools addressing boot time

− Use hard real-time scheduler (sEDF?)

− Test performance impact on Jacinto6

− Upstream…

− Certification

Open issues

23

Nautilus Case Study

24

Boot Timeline

display off static

image

time in

seconds

animation UI

transition

main UI view

Apps

start RVC ready IVI ready event

display

state

0.0 0.5 1.5 7.0

Rear View Camera

reverse gear foward gear selection

8.0

Roadmap

• Nautilus demo will be shown on CES 2014

running on TI J6

• Upstream Xen changes – until end of 2013

• Invite community to contribute Nautilus

plaform – next year

Bottomline

©2013 GlobalLogic Inc.

Artem Mygaiev

AVP – Delivery Management

artem.mygaiev@globallogic.com

www.globallogic.com

Thank you

top related