introduction to automotive grade linux · 31 jan-simon moeller linux foundation 31 kazumasa...

55
Introduction to Automotive Grade Linux Automotive Linux Summit June 20, 2018 Walt Miner ( @VStarWalt ) Community Manager, AGL , The Linux Foundation

Upload: dokhue

Post on 14-Mar-2019

236 views

Category:

Documents


0 download

TRANSCRIPT

IntroductiontoAutomotiveGradeLinux

AutomotiveLinuxSummitJune20,2018WaltMiner(@VStarWalt)CommunityManager,AGL,TheLinuxFoundation

AutomotiveGradeLinux

Collaboratingtobuildthecarofthefuturethroughrapidinnovation

http://AutomotiveLinux.org

Slide2

WhatisAGL?

●  Non-profit●  OpensourceLinux-basedcollaborativeproject●  HostedatLinuxFoundation●  Focusedonrapidinnovationofvehiclesoftware

Slide3

GoalsofAGL

•  Buildasinglesoftwareplatformfortheentireindustry•  Develop70-80%ofthestartingpointforaproductionproject•  Reducefragmentationbycombiningthebestofopensource•  Developanecosystemofdevelopers,suppliers,expertise

allusingasingleplatform

Slide4

AGLMembers-Totalof127companies!BronzePlatinum

Gold

Silver

19NewAGLMembersin2018

*Onestealthstartupnotshown

Autonomous Driving

Advanced Driver Assistance Systems

(ADAS)

Functional Safety

Heads-upDisplay(HUD)

Infotainment Instrument Cluster

Telematics/ Connectivity

theonlyorganizationaddressing

allsoftwareinthecar

AGLisCODEFIRST

AGLisa“CodeFirst”organization!Specificationsleadtofragmentation!

Slide8

Thanksforallthefish…•  AGLReleases:

AA–AgileAlbacore–Jan2016BB–BrilliantBlowfish–July2016CC–CharmingChinook–Dec2016DD–DaringDab–July2017EE–ElectricEel–Jan2018FF–FunkyFlounder–July2018GG–GrumpyGuppy–Jan2019

Slide9

Top25GitCommittersin2018Commits Name Company

141 JoseBollo IoT.bzh76 MattRanostay Konsulko71 ChanghyeokBae LG68 RomainForlot IoT.bzh67 KhangNguyen Renesas51 RonanLeMartret IoT.bzh39 ThuyTran Renesas31 Jan-SimonMoeller LinuxFoundation31 KazumasaMitsunari Witz28 JonathanAillet IoT.bzh18 ThaoNguyen Renesas15 KevinHilman BayLibre15 LoicCollignon Iot.bzh

Slide10

Commits Name Company13 SebastienDouheret IoT.bzh11 MartinKelly Xevo11 MattPorter Konsulko9 HarunobuKurokawa Renesas9 KotaroHashimoto MitsubishiElectric7 LoysOllivier BayLibre7 StephaneDesneux IoT.bzh7 TadaoTanikawa Panasonic7 TobiasJahnke Microchip7 TomRini Konsulko5 ChristianGromm Microchip5 ScottMurray Konsulko5 ThierryBultel IoT.bzh

•  01Jan2018–14June2018•  Commitstomaster

796TotalCommits47Committers19Companies

CommitsbyCompanyin2018Company Commits

IoT.bzh 329Renesas 140Konsulko 106LG 71Witz 33LinuxFoundation 31BayLibre 25Microchip 12MitsubishiElectric 11

Slide11

•  01Jan2018–14June2018•  Commitstomaster

Company Commits

Xevo 11Panasonic 7Intel 5FiberDyne 4Individual 3QtCompany 3Nexty 2AisinAW 1CogentEmbedded 1VirtualOpenSystems 1

796TotalCommits47Committers19Companies

OtherNumbers•  137commitstoeelreleasebranchin2018•  5commitstodabreleasebranchin2018•  101uniqueindividualsand36uniquecompanieshavecontributedtoAGLsincethestartoftheproject•  11Newcommittersin2018

•  11individualsnotaffiliatedwithamembercompanyhavecontributed

•  192Jiraissuesclosedduring2018•  1082issuesclosedsincestartofproject

Slide12

2018AGLScheduleJan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

Slide13

ElectricEel

5.0.0 5.0.25.0.1 5.0.3 5.0.4

FunkyFlounder

FeatureDevelopment

GrumpyGuppy

RC1 RC3 7.0.0RC2FeatureDevelopment

Asof15June2018

RC1 RC36.0.0 6.0.3

6.0.1 6.0.2

6.0.4

RC2

Seehttps://wiki.automotivelinux.org/schedule#latest_scheduleforlatestscheduleinformation

AGLArchitecture

Slide14

Platform • Base BSP • Security • AGL transport

• Micro Services based • Middleware and App Binding / Binder Model

• Downloaded on platform • Multi-ECU • Car to Cloud • Car to Car

AGLBinder/Binding

Slide15

Binder • Container process • Transport • Security • Standardized Async API structure

• Binding • Library called from a binder • Implements feature • Multi thread support • Standardized integration • Reference example provided

http://docs.automotivelinux.org/docs/apis_services/en/dev/#application-framework-binder

SDKforAppDevelopers•  Dockerimagetoeliminatehostdependencyissues

•  Availableforreferenceboardswithpublishedimagesthatincludegraphicsdrivers

•  EnablesrapidAGLapplicationdevelopmentSupportforQt(HTML5coming!)

•  NoYoctoknowledgeisneededorassumedforSDKusers

Slide16

http://docs.automotivelinux.org/docs/devguides/en/dev/#development-kit-build-agl-application

Visionfor2018•  MajorContentProvidersDevelopAGLApps•  OEMsPortLegacyAppstoAGL•  Releases

•  FunkyFlounder-July2018•  GrumpyGuppy-January2019

Slide17

Visionfor2018•  AGLAppFrameworkEvolution

•  UserManagement•  PowerManagement•  MemoryandCPUmanagement

•  HomeScreenandWindowManagerServicesComplete

•  ChromiumbasedHTML5Apps

Slide18

Visionfor2018•  ProductionReadyAudioSolution•  VideoPlayerReferenceApp•  VehicletoCloudServices•  SpeechandTexttoSpeechServices•  ExpandedAGLAutomatedTestSuite

Slide19

DEVELOPERRESOURCES

Slide20

AGLDocumentation•  GettingStartedhttps://wiki.automotivelinux.org/start/getting-started

•  AGLdocumentationsitehttp://docs.automotivelinux.org/

•  AGLWikihttps://wiki.automotivelinux.org/

•  AGLJirahttps://jira.automotivelinux.org/

Slide21

GetTheCode•  Pre-builtbinariesandsourcetarballsavailable

•  https://www.automotivelinux.org/software/download

•  LatestSourceCodeandBuildInstructions•  https://wiki.automotivelinux.org/agl-distro/source-code

•  ReleaseNoteshttps://wiki.automotivelinux.org/agl-distro/

release-notes

Slide22

AGLCode•  AGLgerrit

http://gerrit.automotivelinux.org/•  AGLgit

https://git.automotivelinux.org/•  WeeklyDeveloperCall-Tuesdayshttps://wiki.automotivelinux.org/dev-call-info

Slide23

2018F2FWorkshops•  Feb19-21–AGLAMM– Tokyo•  Apr12–13–Karlsruhe,Germany(Microchip)•  June5–8– Lorient,France(IoT.bzh)•  June19–DaybeforeAutomotiveLinuxSummit-Tokyo

•  EarlySep?–SantaClara(LGOffice)•  October15–18-FallAMM–Dresden,Germany•  Nov6-8–CESIntegrationSession–Yokohama•  Dec4-6–CESIntegrationSession-Yokohama

Slide24

GETTINGINVOLVED–EXPERTGROUPS

Slide25

EXPERTGROUPUPDATE

Slide26

ActiveExpertGroups•  ApplicationFrameworkandSecurity•  Connectivity•  ContinuousIntegrationandAutomatedTest•  GraphicsandUI•  Navigation•  Virtualization•  ReferenceHardwareSystemArchitecture•  Speech•  VehicletoCloud

Slide27

AppFrameworkandSecurityEG•  Applicationlifecycle(install,run,remove,applications)•  SDKandapplicationdeveloperexperiencebothinsecurityandAPIs

•  Securityframework,policies,andstrategyforthedistribution

•  NetworkandvehiclefirewallsinconjunctionwiththeConnectivityEG

•  SoftwareUpdateandsecureupdate•  Diagnosticlogandtrace•  Secureboot

Slide28

https://wiki.automotivelinux.org/eg-app-fw

AppFrameworkAccomplishments•  AGLAppFrameworkAvailable•  AGLReferenceAppsavailableforbothQt5•  APIsavailableasAppFWServiceBinders•  SDKwithXDSAvailable

•  AppTemplatesanddeveloperguide•  Widgetcreation•  ServiceBinderswithdeveloperguide

Slide29

AppFrameworkAccomplishments•  SecurityBlueprintRevisionPublished•  APIV3

•  DynamicAPIcreation•  ServiceBinderDiscovery

Slide30

AppFrameworkTasks•  Changetorunasnon-root/Multi-user•  Improveddebugcapabilities•  SpeechEnablement•  HTML5AppManagement

•  XDGLauncher•  AppUpdates•  PrivacyandSecurity

•  SecurityworkflowforDeviceandAppdevelopers

Slide31

ConnectivityEG•  VehicleConnectivity(CAN,MOST,LIN)•  Networkandvehiclefirewalls•  Bluetooth,Wifi,NFC•  SmartDeviceLink(SDL)

Slide32

https://wiki.automotivelinux.org/eg-connectivity

ConnectivityAccomplishments•  Bluetooth

•  Existingbindersrefactoredforimprovedstabilityandresponsiveness

•  PBABbinderavailable•  Wifibinderrefactored•  Telephonybindernewfeatures•  Vehiclemessaging

•  Signalcomposerstabilizationandimprovements•  APItodefinenewvirtualmessagesatrun-time

Slide33

ConnectivityTaskList•  Networkmanagementbinding

•  Connmanimprovementsorreplacement•  IPv4/v6configuration•  NetworkBridging,Tethering,QOSandswitching•  Userprofilestoallowauthorizeduserstoconfigureinterfacing

•  Supportmultiplelow-levelinterfacebindingbackendsincludingEthernet,WiFi,BTPAN,andWWAN

Slide34

ConnectivityTaskList•  Signalcomposerstabilizationandimprovements•  ReadytoExtendbeyondCAN•  FactoryprogrammingofCANmessagesetbasedonfinalvehicleconfiguration

Slide35

ConnectivityTaskList•  Wifibinder

•  APMode•  AdditionalWifihardwaresupport

•  Telephonybinder•  Extendtohardwiredtelephoneusecase

•  NFCbinderandNFCforuseridentification

Slide36

CIandAutomatedTestEG•  BuildandsmoketestofGerritsubmissionsonallhardware

•  Dailysnapshotbuildandtesting•  Devicetestsonrealhardware•  TestenvironmentssuchasJTAandLava•  TestsuitessuchasLTP

Slide37

https://wiki.automotivelinux.org/eg-ciat

UIandGraphicsEG•  AGLCompositor,LayerManager,WindowManagerandGPUinterface

•  Multimediavideomanager(includingmulti-displayanddisplaysharing)andaudiomanager,andmediamanager/player.

•  BrowserEngine

Slide38

https://wiki.automotivelinux.org/eg-ui-graphics

GraphicsandUIAccomplishments•  UpdatetoWayland2.0•  RefactoredHomeScreenincludingsplittingoutWindowManager

•  XDGLauncherstarted•  Internodedisplayprotocol

•  ControlICdisplayoutputfromnavirunningonIVIsystem

•  Waltham•  SupportforChromiumbrowserengine

Slide39

GraphicsandUIAccomplishments•  ImprovedAudiomanagementconfigurationandpolicies•  HighLevelaudioAPI•  AGLAdvancedAudioAgent(AAAA)•  UNICENSbinder•  HALsavailableforUNICENS,USBaudio,RenesasandIntelon-boardaudio

Slide40

GraphicsandUITasks•  FinishWindowManagerandHomescreenwork•  Pop-upsupportandinteractiveuserresponse•  Focusmanagementforoutoffocusapps•  Improvedsecondarydisplaysupport•  TransitionAnimation•  Hardwareplanemanagement

•  Productionreadyaudioimplementation

Slide41

NavigationEG•  NavigationAPI•  LocationBasedServicesAPI•  ReferenceNavigationandPOIapps•  Speechrecognitionintegration

Slide42

https://wiki.automotivelinux.org/eg-navi

NavigationAccomplishments•  NavigationandPOIreferenceApps•  GPS,Geofencebinderavailable

Slide43

NavigationTaskList•  NavigationAPI1.0fullyimplemented•  GPSbinderavailable•  Mapcreationprocess•  NewNaviappfromComtech

Slide44

VirtualizationEG•  Hypervisor/LXC•  LookingatXen,Jailhouse,andothers

Slide45

https://wiki.automotivelinux.org/eg-virt

VirtualizationAccomplishments•  AutomotiveVirtualizationWhitePaperCompleted

•  SeveralCESdemosraninvirtualizedenvironments(Panasonic,Denso,EB,etc.)

Slide46

VirtualizationTaskList•  StandardProtocolforcommunicationsbetweenVMs

•  Resourcesharing(e.g.GPU)betweenVMs•  ExtendKVMsupportbeyondRenesas•  Additionalopensourcehypervisors

Slide47

ReferenceHardwareSystemArch•  CreatesystemarchitecturetobeusedacrossAGLprofiles

Slide48

SpeechEG•  Members:Amazon,Nuance,VoiceBoxTechnologies•  CreateastandardizedsetofspeechrecognitionAPIsthatappdeveloperscanuseregardlessofunderlyingspeechengine•  Naturallanguageorgrammartreebased•  Onboardorcloudbasedspeech

•  TexttoSpeechAPI•  AmazonandNuancehaveopenAPIsthatcouldbeusedasastartingpoint•  NuancestartedonaSpeechAPIBindingthatisbeingreviewedbytheteam

Slide49

SpeechEG•  Signalprocessingfornoisereductionandechocancellation

•  Grammardevelopmenttools

Slide50

SystemArchitectureTeam•  OverallSystemArchitecture•  Yocto•  BuildsystemandDeviceProfiles•  CrossEGcoordination

Slide51

V2CExpertGroup-Objectives

•  RefineV2CUseCases•  Telematics•  Personalization•  Authentication&Authorization•  Etc.

•  DefineReferenceArchitecture•  Identifyexisting,missingorreusablecomponents

•  Identifyreferenceapplication(s)52

Q&A

Q&A•  Thisisthesegmentwhere

•  Youaskintelligent,wellthoughtoutquestions•  Iramblepointlesslyandunintelligently

•  And/Or•  Youask“dumb”questions•  Irespondwithconcise,insightful,andwell-reasonedanswers

THANKYOU