On this Rock I will build my System Why Open-Source Firmware matters - - PowerPoint PPT Presentation

on this rock i will build my system why open source
SMART_READER_LITE
LIVE PREVIEW

On this Rock I will build my System Why Open-Source Firmware matters - - PowerPoint PPT Presentation

On this Rock I will build my System Why Open-Source Firmware matters Lucas Stach l.stach@pengutronix.de https://www.pengutronix.de About me Member of Pengutronix graphics and kernel team Low-level infrastructure guy Working on


slide-1
SLIDE 1

https://www.pengutronix.de

On this Rock I will build my System Why Open-Source Firmware matters

Lucas Stach – l.stach@pengutronix.de

slide-2
SLIDE 2

2/18

About me

Member of Pengutronix graphics and kernel team

Low-level infrastructure guy

Working on projects with long maintenance times

slide-3
SLIDE 3

3/18

Where do we come from?

Minimalistic Firmware

Even got used to call them „bootloaders“

Usually no run-time interaction with kernel

slide-4
SLIDE 4

4/18

Old model – the good

Full control over system operation in Linux kernel

Helps when debugging complex interactions

Easy update story

slide-5
SLIDE 5

5/18

Old model – the bad

High complexity in Linux kernel

As bad as it sounds? Likely not…

Some features hard to implement in a generic kernel

Things start to look difgerent when virtualization is added

slide-6
SLIDE 6

6/18

Enter PSCI

Power State Coordination Interface

Moves system global and CPU power state into abstract interface

Trap based (like syscall)

Bare-metal and virtualized kernel see same thing

slide-7
SLIDE 7

7/18

Enter PSCI

VM Kernel Bare-metal Kernel (KVM) Secure Monitor Firmware SMC (trapped) SMC

slide-8
SLIDE 8

8/18

Trusted Firmware

Help vendors in implementing PSCI and other basic platform functions in a standard compliant way

Started by ARM, now a Linaro project

BSD licensed

slide-9
SLIDE 9

9/18

PSCI – collision with reality

Real-world Hardware struggles: shared Registers

CPU0 power control CPU1 power control Device0 power control Device1 power control ...

slide-10
SLIDE 10

10/18

PSCI – collision with reality

Real-world Hardware struggles: shared Interfaces

SoC PMIC VDDx VDDy I2C

slide-11
SLIDE 11

11/18

PSCI – collision with reality

Lots of hardware not designed to provide the separation required by PSCI

May not even be possible entirely

slide-12
SLIDE 12

12/18

Down the rabbit hole: SCMI

System Control and Management Interface

Move lots more functionality to SCMI provider

Device power/performance states

Clocks

Sensors

System control

slide-13
SLIDE 13

13/18

Down the rabbit hole: SCMI

Linux kernel implementation gets easy

Firmware get much more complex

Lots of runtime interactions between OS and FW

Sometimes hard to reason about

slide-14
SLIDE 14

14/18

Complex Firmware

Can I decide to just don‘t care? Maybe...

slide-15
SLIDE 15

15/18

Complex Firmware

Can I decide to just don‘t care? Probably not!

slide-16
SLIDE 16

16/18

Asymetric SoCs

Application Processor Minion Core RT Core Shared System Resources

slide-17
SLIDE 17

17/18

Asymetric SoCs

Application Processor Minion Core RT Core Clock UART SPI System Control Processor

slide-18
SLIDE 18

18/18

T akeaways

Firmware taking over more functionality is here to stay

Incentive for chip vendors to open-source not as high as with Linux kernel

Real risk of loosing some control