SlideShare ist ein Scribd-Unternehmen logo
1 von 28
Downloaden Sie, um offline zu lesen
BKK16-­‐309B	
  Enterprise	
  Firmware	
  -­‐	
  The	
  
gold	
  standard	
  and	
  how	
  to	
  get	
  there	
  
Jeff	
  Underhill	
  
Why	
  We	
  Need	
  Server	
  Standards?	
  
	
  	
  	
  1.	
  Installing	
  Linux	
  in	
  27	
  Easy	
  Steps	
  
	
  	
  2.	
  OS	
  /	
  PlaOorm	
  Support	
  Matrix	
  
	
  	
  3.	
  UEFI	
  +	
  ACPI	
  Appendix	
  	
  4.	
  U-­‐Boot	
  Appendix	
  5.	
  Who	
  to	
  call	
  when	
  it	
  sWll	
  doesn’t	
  boot?	
  
Why	
  We	
  Need	
  Server	
  Standards?	
  
	
  	
  	
  1.	
  Installing	
  Linux	
  in	
  27	
  Easy	
  Steps	
  
	
  	
  2.	
  OS	
  /	
  PlaOorm	
  Support	
  Matrix	
  
	
  	
  3.	
  UEFI	
  +	
  ACPI	
  Appendix	
  	
  4.	
  U-­‐Boot	
  Appendix	
  5.	
  Who	
  to	
  call	
  when	
  it	
  sWll	
  doesn’t	
  boot?	
  
The	
  Bar	
  Has	
  Been	
  Set	
  
…and	
  jeez	
  these	
  machines	
  
are	
  proving	
  difficult	
  to	
  use.	
  
-­‐	
  Seasoned	
  engineer	
  at	
  large	
  enterprise	
  so_ware	
  company	
  
Why	
  are	
  you	
  exposing	
  
us	
  to	
  all	
  this	
  $h*t…	
  
-­‐	
  So_ware	
  architect	
  at	
  large	
  
enterprise	
  so_ware	
  company	
  
Even	
  
Greenfield	
  
InstallaWons…	
  
…aren’t!	
  
Heterogeneous	
  Datacenters	
  	
  
PlaOorm	
  Deployment	
  
Standards	
  –	
  ARM	
  and	
  x86	
  
need	
  to	
  be	
  the	
  Same	
  	
  
ACPI,	
  UEFI	
  Bootloader	
  –	
  standard	
  
server	
  OS	
  images	
  	
  
PXE,	
  HTTPS	
  –	
  standard	
  remote	
  boot	
  
opWons 	
  	
  
DMI	
  –	
  PlaOorm	
  inventory	
  
IPMI	
  –	
  Remote	
  ID	
  and	
  control	
  
SpecificaWons	
  to	
  explicitly	
  
define	
  plaOorm	
  hardware	
  
and	
  firmware	
  standards	
  
Server	
  Base	
  System	
  Architecture	
  
(SBSA)	
  Spec.	
  –	
  PlaOorm	
  SOC	
  
requirements	
  
Server	
  Base	
  Boot	
  Requirements	
  
(SBBR)	
  Spec.	
  –	
  PlaOorm	
  Firmware	
  
requirements	
  	
  
SBSA	
  and	
  SBBR	
  enable	
  standard	
  
server	
  OS	
  support	
  
Forums	
  enabling	
  
organizaWons	
  to	
  
collaborate	
  on	
  standards	
  
ARM	
  Server	
  Advisory	
  Comminee	
  
spans	
  all	
  ecosystem	
  partners	
  for	
  
standards	
  content	
  review	
  
Linaro	
  providing	
  Linux	
  kernel	
  for	
  
ARM	
  standard	
  deployment	
  and	
  
UEFI	
  Firmware	
  Test	
  Suite	
  for	
  
compliance	
  verificaWon	
  
3rd	
  Party	
  Firmware	
  providers	
  
aligned	
  Phoenix,	
  AMI,	
  Insyde	
  
Requirement:	
  Homogeneous	
  PlaOorm	
  Management	
  and	
  OS	
  Deployment	
  
	
  
Industry	
  Standard	
  	
  
Server	
  Specs	
  
ARM	
  Standard	
  Server	
  
Specs	
  
OS	
  Specific	
  Design	
  
Requirements	
  
PLATFORM	
  DESIGN	
  
REQUIREMENTS	
  
Upstream	
  Linux	
  Kernel	
  
Support	
  
Firmware	
  Compliance	
  
ValidaWon/Test	
  Suite	
  
Firmware	
  Standard	
  
Reference	
  Code	
  
SoC	
  Specific	
  Firmware	
  
Reference	
  Code	
  
PLATFORM	
  
ENABLEMENT	
  	
  
PLATFORM	
  IMPLEMENTATION	
  
&	
  VALIDATION	
  	
  OEM/ODM	
  Server	
  
Compliance	
  TesWng	
  
OEM/ODM	
  Server	
  
Development	
  
OEM/ODM	
  OS	
  PlaOorm	
  
CerWficaWon	
  TesWng	
  
Standards	
  Framework	
  
Requirement:	
  Homogeneous	
  PlaOorm	
  
Management	
  and	
  OS	
  Deployment	
  
Overarching	
  goals:	
  
	
  
1)  PlaOorms	
  ‘just	
  work’	
  as	
  received	
  –	
  good	
  QE	
  /	
  QA	
  
1)  Remote	
  management	
  minimum:	
  On,	
  Off,	
  Reset	
  &	
  Boot	
  order	
  
2)  InstallaWon	
  of	
  alternate	
  OS	
  is	
  simple	
  and	
  ‘just	
  works’	
  
1)  PXE	
  &	
  USB	
  boot	
  present	
  and	
  funcWonal	
  
2)  Don’t	
  have	
  to	
  ask	
  which	
  OS	
  works	
  on	
  which	
  plaOorm	
  –	
  single	
  image	
  
3)  PlaOorms	
  integrate	
  seamlessly	
  with	
  exisWng	
  environment	
  
1)  SMBIOS	
  present	
  &	
  populated	
  
2)  No	
  re-­‐write	
  of	
  installaWon	
  scripts	
  (No	
  “IF	
  ARM	
  THEN…”)	
  
Do	
  You	
  Want	
  to	
  Build	
  a	
  Snowman?	
  
BKK16-­‐309A	
  Enterprise	
  Firmware	
  –	
  
Open	
  PlaOorm	
  support	
  with	
  UEFI	
  
Leif	
  Lindholm	
  
Remember	
  last	
  Connect?	
  
I	
  held	
  a	
  presentaWon	
  at	
  SFO15,	
  explaining	
  in	
  detail	
  everything	
  ARM	
  had	
  done	
  
wrong	
  about	
  UEFI	
  since	
  we	
  started	
  our	
  involvement.	
  
	
  
So	
  they	
  made	
  ARM’s	
  UEFI	
  strategy	
  my	
  responsibility.	
  
	
  
This	
  is	
  my	
  plan	
  for	
  how	
  to	
  improve	
  things.	
  
What	
  has	
  ARM	
  ever	
  done	
  for	
  you?	
  
So…	
  
•  ARM	
  worked	
  within	
  the	
  UEFI	
  forum	
  to	
  define	
  the	
  bindings	
  for	
  AArch32	
  and	
  
AArch64	
  in	
  the	
  UEFI	
  specificaWon,	
  guaranteeing	
  interoperability	
  across	
  
plaOorms	
  from	
  different	
  vendors	
  (and	
  architectural	
  licensees).	
  
•  ARM	
  provided	
  the	
  support	
  in	
  TianoCore	
  EDK2	
  for	
  the	
  ARM	
  architectures.	
  
	
  
But…	
  
•  ARM	
  didn’t	
  provide	
  reference	
  plaOorm	
  ports,	
  and	
  did	
  not	
  put	
  in	
  the	
  effort	
  
required	
  to	
  help	
  exisWng	
  partners	
  migrate	
  to	
  a	
  new	
  firmware	
  architecture,	
  
or	
  enable	
  new	
  partners	
  to	
  migrate	
  to	
  ARM.	
  	
  
History	
  repeaWng	
  itself	
  
We’ve	
  been	
  providing	
  ports	
  implemented	
  with	
  mostly	
  hard-­‐wired	
  ARM-­‐specific	
  
plaOorm	
  drivers.	
  
	
  
Sound	
  familiar?	
  
	
  
Basically,	
  we	
  are	
  in	
  the	
  same	
  situaWon	
  as	
  the	
  ARM	
  Linux	
  ecosystem	
  before	
  the	
  
creaWon	
  of	
  Linaro.	
  And	
  we	
  need	
  the	
  same	
  kind	
  of	
  effort,	
  to	
  enable	
  sensible	
  
code	
  reuse	
  in	
  UEFI	
  firmware.	
  
	
  
Only	
  in	
  many	
  cases	
  we	
  do	
  not	
  even	
  have	
  the	
  exisWng	
  code	
  to	
  refactor.	
  	
  
Show	
  us	
  the	
  code	
  
In	
  order	
  to	
  reduce	
  the	
  amount	
  of	
  duplicaWon	
  between	
  plaOorms,	
  and	
  reduce	
  
the	
  number	
  of	
  different	
  types	
  of	
  wheels	
  in	
  use,	
  we	
  need	
  to	
  have	
  access	
  to	
  real	
  
plaOorm	
  support	
  code.	
  
	
  
Historically,	
  EDK2	
  has	
  never	
  had	
  any	
  concept	
  of	
  containing	
  full	
  plaOorm	
  
support,	
  apart	
  from	
  a	
  few	
  so_ware	
  models.	
  The	
  tradiWonal	
  workflow	
  was:	
  
•  BIOS	
  vendor/team	
  gets	
  tasked	
  with	
  providing	
  firmware	
  for	
  a	
  system	
  
•  They	
  grab	
  a	
  version	
  of	
  EDK2	
  they	
  find	
  suitable	
  as	
  a	
  starWng	
  point	
  
•  They	
  add	
  exisWng	
  in-­‐house	
  components	
  for	
  non-­‐upstream	
  features	
  as	
  well	
  
as	
  a	
  customized	
  GUI	
  
•  They	
  add	
  support	
  for	
  processor	
  and	
  other	
  on-­‐board	
  components	
  –	
  generally	
  
in	
  the	
  form	
  of	
  .zip	
  files	
  extracted	
  in	
  the	
  top-­‐level	
  directory	
  
Moving	
  a	
  planet	
  
The	
  TianoCore	
  project	
  does	
  not	
  have	
  a	
  head	
  maintainer.	
  It	
  has	
  a	
  bunch	
  of	
  
people	
  acWng	
  as	
  maintainers	
  for	
  individual	
  packages	
  within	
  EDK2.	
  And	
  
potenWally	
  for	
  different	
  repositories	
  owned	
  by	
  TianoCore.	
  
	
  
So	
  historically,	
  making	
  changes	
  to	
  the	
  TianoCore	
  project	
  (as	
  opposed	
  to	
  the	
  
code)	
  has	
  been	
  nigh-­‐on	
  impossible.	
  It	
  has	
  been	
  either:	
  
•  Driven	
  by	
  consensus	
  (with	
  no	
  one	
  to	
  tell	
  when	
  consensus	
  has	
  been	
  reached)	
  
•  Changed	
  by	
  maintainers	
  making	
  the	
  call	
  that	
  it	
  is	
  bener	
  to	
  ask	
  forgiveness	
  
than	
  permission	
  
•  Decided	
  internally	
  by	
  Intel	
  with	
  linle	
  external	
  discussion	
  
A	
  new	
  hope	
  
…	
  but	
  recently,	
  things	
  have	
  been	
  changing.	
  
	
  
In	
  the	
  beginning	
  of	
  this	
  year,	
  EDK2	
  finally	
  migrated	
  from	
  SVN	
  to	
  git.	
  This	
  had	
  
been	
  coming	
  for	
  a	
  long	
  Wme,	
  but	
  greatly	
  hindered	
  by	
  the	
  lack	
  of	
  anyone	
  to	
  
actually	
  make	
  the	
  call	
  on	
  when	
  the	
  migraWon	
  plan	
  was	
  complete.	
  
	
  
A	
  TianoCore	
  community	
  manager	
  (Tony	
  Mangefeste)	
  has	
  been	
  appointed	
  (by	
  
Intel,	
  unilaterally,	
  but	
  this	
  is	
  sWll	
  a	
  good	
  thing).	
  
	
  
Further	
  posiWve	
  changes	
  are	
  coming.	
  With	
  a	
  bit	
  of	
  luck	
  I’ll	
  have	
  something	
  
more	
  to	
  share	
  before	
  the	
  end	
  of	
  this	
  week.	
  
A	
  way	
  forward	
  
What	
  we	
  want	
  is	
  more	
  open	
  plaOorm	
  code	
  in	
  TianoCore,	
  but	
  gezng	
  that	
  in	
  
any	
  sensible	
  form	
  is	
  a	
  longer	
  play.	
  
	
  
In	
  the	
  meanWme,	
  I	
  have	
  set	
  up	
  my	
  own	
  separate	
  plaOorms	
  tree	
  to	
  use	
  for	
  
reducing	
  duplicaWon	
  of	
  plaOorm	
  bringup	
  boilerplate	
  and	
  provide	
  example	
  code	
  
of	
  best	
  pracWces.	
  We’re	
  not	
  there	
  yet	
  –	
  don’t	
  assume	
  this	
  is	
  a	
  showcase!	
  
	
  
We	
  have	
  now	
  migrated	
  all	
  of	
  the	
  ARM	
  Ltd.	
  PlaOorm	
  configuraWons	
  there	
  –	
  only	
  
ArmVirtPkg	
  remains	
  in	
  the	
  EDK2	
  tree.	
  ArmPlaOormPkg	
  sWll	
  exists	
  in	
  EDK2,	
  
holding	
  plaOorm	
  drivers	
  and	
  ARM	
  PrimeCell	
  drivers.	
  Long-­‐term,	
  expect	
  this	
  to	
  
disappear.	
  
OpenPlaOormPkg	
  
OpenPlaOormPkg	
  is	
  just	
  a	
  git	
  repository	
  to	
  hold	
  plaOorm	
  code	
  unWl	
  there	
  is	
  a	
  
way	
  to	
  resolve	
  this	
  in	
  TianoCore.	
  
	
  
It	
  is	
  really	
  not	
  a	
  power	
  play,	
  trying	
  to	
  take	
  things	
  over	
  from	
  TianoCore.	
  And	
  I	
  
have	
  a	
  reasonable	
  level	
  of	
  confidence	
  that	
  this	
  can	
  feed	
  directly	
  into	
  a	
  future	
  
soluWon	
  for	
  all	
  of	
  TianoCore.	
  
	
  
On	
  the	
  pracWcal	
  level,	
  it	
  is	
  simply	
  a	
  tree	
  holding	
  device	
  drivers,	
  plaOorm	
  
support	
  code,	
  component	
  support	
  code,	
  and	
  plaOorm	
  build	
  configuraWon	
  files.	
  
To	
  maximize	
  the	
  number	
  of	
  plaOorms	
  I	
  can	
  get	
  access	
  to	
  ports	
  for,	
  I	
  have	
  
compromised	
  and	
  permined	
  binary-­‐only	
  modules	
  to	
  form	
  a	
  non-­‐majority	
  part	
  
of	
  a	
  port.	
  
Reference	
  plaOorm	
  
OK,	
  so	
  that	
  is	
  the	
  ability	
  to	
  share	
  code	
  between	
  plaOorms	
  sorted(ish)	
  –	
  but	
  
what	
  about	
  this	
  gold	
  standard	
  thing?	
  
	
  
We	
  need	
  to	
  improve	
  the	
  quality	
  of	
  the	
  code	
  available	
  in	
  this	
  tree.	
  
	
  
One	
  way	
  to	
  drive	
  this	
  is	
  by	
  providing	
  a	
  fully	
  open-­‐source	
  plaOorm	
  port	
  that	
  we	
  
acWvely	
  clean	
  up	
  to	
  the	
  point	
  where	
  we	
  can	
  direct	
  people	
  to	
  it	
  and	
  tell	
  them	
  to	
  
use	
  this	
  as	
  a	
  reference.	
  
	
  
But	
  what	
  plaOorm	
  would	
  we	
  base	
  this	
  on?	
  
Enterprise	
  so_ware	
  model	
  
Over	
  the	
  past	
  few	
  years,	
  a	
  lot	
  of	
  good	
  work	
  has	
  gone	
  into	
  creaWng/improving	
  
QEMU	
  support	
  for	
  the	
  “virt”	
  plaOorm.	
  But	
  the	
  virt	
  plaOorm	
  is	
  really	
  about	
  
running	
  so_ware	
  on	
  AArch64	
  –	
  not	
  providing	
  an	
  emulated	
  version	
  of	
  a	
  realisWc	
  
server	
  system.	
  
	
  
What	
  would	
  be	
  really	
  useful	
  to	
  have	
  is	
  a	
  so_ware	
  model	
  looking	
  like	
  a	
  real	
  
system	
  –	
  enabling	
  a	
  full	
  reference	
  firmware/so_ware	
  implementaWon	
  available	
  
to	
  anyone	
  without	
  having	
  to	
  wait	
  for	
  a	
  physical	
  system	
  to	
  be	
  delivered:	
  
•  ARM	
  Trusted	
  Firmware	
  
•  UEFI	
  
	
  
Whilst	
  looking	
  more	
  like	
  a	
  real	
  server	
  than	
  many	
  of	
  the	
  more	
  available	
  
development	
  boards.	
  
What	
  I	
  think	
  that	
  should	
  be	
  
QEMU	
  
•  Making	
  use	
  of	
  the	
  improved	
  EL3	
  emulaWon	
  support	
  to	
  provide	
  an	
  ARM	
  
Trusted	
  Firmware	
  port	
  
•  Improving	
  on	
  non-­‐upstream	
  EL2	
  support,	
  to	
  enable	
  verificaWon	
  of	
  
virtualizaWon	
  support	
  
•  ImplemenWng	
  a	
  plaOorm	
  that	
  
•  Always	
  tracks	
  latest	
  upstream	
  available	
  ARMv8-­‐A	
  server	
  processor	
  
•  Emulates	
  a	
  PCI	
  controller	
  (rather	
  than	
  virWo-­‐pci)	
  controlling	
  
•  NVMe	
  device(s)	
  
•  AHCI	
  disk(s)	
  
•  A	
  standard	
  Ethernet	
  controller	
  
•  Keyboard/video/mouse	
  
And	
  what	
  will	
  we	
  do	
  
ExisWng	
  ARM	
  plaOorm	
  ports,	
  and	
  drivers	
  for	
  those,	
  have	
  way	
  to	
  many	
  global	
  
predefines.	
  Things	
  like	
  hard-­‐coded	
  base	
  addresses	
  for	
  devices.	
  (What	
  do	
  you	
  
do	
  when	
  your	
  system	
  has	
  more	
  than	
  one?)	
  These	
  need	
  to	
  be	
  converted	
  into	
  
the	
  UEFI	
  driver	
  model.	
  
	
  
Some	
  bits	
  reappear	
  implemented	
  (differently)	
  in	
  many	
  new	
  plaOorm	
  ports.	
  
Non-­‐discoverable	
  buses	
  
The	
  scourge	
  of	
  the	
  SoC.	
  
	
  
UEFI	
  was	
  defined	
  in	
  a	
  world	
  where	
  this	
  simply	
  wasn’t	
  an	
  issue	
  –	
  core	
  plaOorm	
  
components	
  were	
  compaWble	
  between	
  vendors	
  and	
  “everything”	
  else	
  was	
  
discoverable,	
  and	
  on	
  PCI.	
  
	
  
As	
  a	
  result,	
  many	
  core	
  bits	
  of	
  EDK2	
  completely	
  expects	
  the	
  world	
  to	
  look	
  like	
  
this.	
  And	
  because	
  of	
  this,	
  we	
  see	
  many	
  new	
  plaOorm	
  ports	
  implemented	
  with	
  
some	
  form	
  of	
  PCI-­‐emulaWon	
  for	
  pure	
  MMIO	
  peripherals.	
  
	
  
There	
  are	
  plans	
  underway	
  to	
  implement	
  a	
  Fake	
  Peripheral	
  Interconnect	
  to	
  
resolve	
  this	
  in	
  one	
  place	
  for	
  all	
  plaOorms.	
  
OpWon	
  ROMs	
  
One	
  of	
  the	
  more	
  powerful	
  aspects	
  of	
  UEFI	
  is	
  the	
  ability	
  to	
  add	
  peripherals	
  via	
  
plug-­‐in	
  cards	
  and	
  have	
  them	
  automaWcally	
  supported	
  to	
  use	
  for	
  booWng	
  via	
  a	
  
driver	
  provided	
  in	
  flash	
  on	
  the	
  card	
  itself.	
  
	
  
Part	
  of	
  the	
  PCI	
  specificaWon(s),	
  and	
  supports	
  providing	
  drivers	
  for	
  mulWple	
  
architectures.	
  But,	
  the	
  hw	
  vendors	
  want	
  to	
  keep	
  the	
  board	
  cost	
  down	
  as	
  much	
  
as	
  possible	
  –	
  so	
  in	
  pracWce	
  they	
  will	
  only	
  provide	
  cards	
  supplied	
  with	
  the	
  X64	
  
version.	
  
	
  
UEFI	
  defines	
  a	
  portable	
  bytecode	
  executable	
  format	
  called	
  EBC.	
  The	
  majority	
  of	
  
the	
  interpreter	
  code	
  is	
  plaOorm	
  independent,	
  but	
  the	
  ARM	
  architectures	
  do	
  
not	
  yet	
  have	
  their	
  bit	
  implemented.	
  
Resources	
  
hnps://git.linaro.org/uefi/OpenPlaOormPkg.git	
  
	
  
hnps://wiki.linaro.org/LEG/Engineering/Kernel/UEFI/build	
  
	
  
hnps://wiki.linaro.org/LEG/Engineering/Kernel/UEFI/CommonPlaOormTree	
  

Weitere ähnliche Inhalte

Was ist angesagt?

LAS16-200: SCMI - System Management and Control Interface
LAS16-200:  SCMI - System Management and Control InterfaceLAS16-200:  SCMI - System Management and Control Interface
LAS16-200: SCMI - System Management and Control InterfaceLinaro
 
BKK16-400A LuvOS and ACPI Compliance Testing
BKK16-400A LuvOS and ACPI Compliance TestingBKK16-400A LuvOS and ACPI Compliance Testing
BKK16-400A LuvOS and ACPI Compliance TestingLinaro
 
BKK16-312 Integrating and controlling embedded devices in LAVA
BKK16-312 Integrating and controlling embedded devices in LAVABKK16-312 Integrating and controlling embedded devices in LAVA
BKK16-312 Integrating and controlling embedded devices in LAVALinaro
 
BKK16-301A Expanding the Enterprise Landscape in Centos
BKK16-301A Expanding the Enterprise Landscape in CentosBKK16-301A Expanding the Enterprise Landscape in Centos
BKK16-301A Expanding the Enterprise Landscape in CentosLinaro
 
BKK16-212: What's broken on ARM64?
BKK16-212: What's broken on ARM64?BKK16-212: What's broken on ARM64?
BKK16-212: What's broken on ARM64?Linaro
 
LAS16-500: The Rise and Fall of Assembler and the VGIC from Hell
LAS16-500: The Rise and Fall of Assembler and the VGIC from HellLAS16-500: The Rise and Fall of Assembler and the VGIC from Hell
LAS16-500: The Rise and Fall of Assembler and the VGIC from HellLinaro
 
BKK16-100K1 George Grey, Linaro CEO Opening Keynote
BKK16-100K1 George Grey, Linaro CEO Opening KeynoteBKK16-100K1 George Grey, Linaro CEO Opening Keynote
BKK16-100K1 George Grey, Linaro CEO Opening KeynoteLinaro
 
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...Linaro
 
Introduction to Optee (26 may 2016)
Introduction to Optee (26 may 2016)Introduction to Optee (26 may 2016)
Introduction to Optee (26 may 2016)Yannick Gicquel
 
BKK16-210 Migrating to the new dispatcher
BKK16-210 Migrating to the new dispatcherBKK16-210 Migrating to the new dispatcher
BKK16-210 Migrating to the new dispatcherLinaro
 
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120Linaro
 
BKK16-502 Suspend to Idle
BKK16-502 Suspend to IdleBKK16-502 Suspend to Idle
BKK16-502 Suspend to IdleLinaro
 
BUD17-104: Scripting Languages in IoT: Challenges and Approaches
BUD17-104: Scripting Languages in IoT: Challenges and ApproachesBUD17-104: Scripting Languages in IoT: Challenges and Approaches
BUD17-104: Scripting Languages in IoT: Challenges and ApproachesLinaro
 
TEE - kernel support is now upstream. What this means for open source security
TEE - kernel support is now upstream. What this means for open source securityTEE - kernel support is now upstream. What this means for open source security
TEE - kernel support is now upstream. What this means for open source securityLinaro
 
LAS16-200: Firmware summit - Tianocore Progress and Status
LAS16-200:  Firmware summit - Tianocore Progress and StatusLAS16-200:  Firmware summit - Tianocore Progress and Status
LAS16-200: Firmware summit - Tianocore Progress and StatusLinaro
 
LAS16-310: Introducing the first 96Boards TV Platform: Poplar by Hisilicon
LAS16-310: Introducing the first 96Boards TV Platform: Poplar by HisiliconLAS16-310: Introducing the first 96Boards TV Platform: Poplar by Hisilicon
LAS16-310: Introducing the first 96Boards TV Platform: Poplar by HisiliconLinaro
 
LAS16-100K1: Welcome Keynote
LAS16-100K1: Welcome KeynoteLAS16-100K1: Welcome Keynote
LAS16-100K1: Welcome KeynoteLinaro
 
MOVED: RDK/WPE Port on DB410C - SFO17-206
MOVED: RDK/WPE Port on DB410C - SFO17-206MOVED: RDK/WPE Port on DB410C - SFO17-206
MOVED: RDK/WPE Port on DB410C - SFO17-206Linaro
 
LAS16-210: Hardware Assisted Tracing on ARM with CoreSight and OpenCSD
LAS16-210: Hardware Assisted Tracing on ARM with CoreSight and OpenCSDLAS16-210: Hardware Assisted Tracing on ARM with CoreSight and OpenCSD
LAS16-210: Hardware Assisted Tracing on ARM with CoreSight and OpenCSDLinaro
 
LAS16-TR06: Remoteproc & rpmsg development
LAS16-TR06: Remoteproc & rpmsg developmentLAS16-TR06: Remoteproc & rpmsg development
LAS16-TR06: Remoteproc & rpmsg developmentLinaro
 

Was ist angesagt? (20)

LAS16-200: SCMI - System Management and Control Interface
LAS16-200:  SCMI - System Management and Control InterfaceLAS16-200:  SCMI - System Management and Control Interface
LAS16-200: SCMI - System Management and Control Interface
 
BKK16-400A LuvOS and ACPI Compliance Testing
BKK16-400A LuvOS and ACPI Compliance TestingBKK16-400A LuvOS and ACPI Compliance Testing
BKK16-400A LuvOS and ACPI Compliance Testing
 
BKK16-312 Integrating and controlling embedded devices in LAVA
BKK16-312 Integrating and controlling embedded devices in LAVABKK16-312 Integrating and controlling embedded devices in LAVA
BKK16-312 Integrating and controlling embedded devices in LAVA
 
BKK16-301A Expanding the Enterprise Landscape in Centos
BKK16-301A Expanding the Enterprise Landscape in CentosBKK16-301A Expanding the Enterprise Landscape in Centos
BKK16-301A Expanding the Enterprise Landscape in Centos
 
BKK16-212: What's broken on ARM64?
BKK16-212: What's broken on ARM64?BKK16-212: What's broken on ARM64?
BKK16-212: What's broken on ARM64?
 
LAS16-500: The Rise and Fall of Assembler and the VGIC from Hell
LAS16-500: The Rise and Fall of Assembler and the VGIC from HellLAS16-500: The Rise and Fall of Assembler and the VGIC from Hell
LAS16-500: The Rise and Fall of Assembler and the VGIC from Hell
 
BKK16-100K1 George Grey, Linaro CEO Opening Keynote
BKK16-100K1 George Grey, Linaro CEO Opening KeynoteBKK16-100K1 George Grey, Linaro CEO Opening Keynote
BKK16-100K1 George Grey, Linaro CEO Opening Keynote
 
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...
Secure Boot on ARM systems – Building a complete Chain of Trust upon existing...
 
Introduction to Optee (26 may 2016)
Introduction to Optee (26 may 2016)Introduction to Optee (26 may 2016)
Introduction to Optee (26 may 2016)
 
BKK16-210 Migrating to the new dispatcher
BKK16-210 Migrating to the new dispatcherBKK16-210 Migrating to the new dispatcher
BKK16-210 Migrating to the new dispatcher
 
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
Linux-wpan: IEEE 802.15.4 and 6LoWPAN in the Linux Kernel - BUD17-120
 
BKK16-502 Suspend to Idle
BKK16-502 Suspend to IdleBKK16-502 Suspend to Idle
BKK16-502 Suspend to Idle
 
BUD17-104: Scripting Languages in IoT: Challenges and Approaches
BUD17-104: Scripting Languages in IoT: Challenges and ApproachesBUD17-104: Scripting Languages in IoT: Challenges and Approaches
BUD17-104: Scripting Languages in IoT: Challenges and Approaches
 
TEE - kernel support is now upstream. What this means for open source security
TEE - kernel support is now upstream. What this means for open source securityTEE - kernel support is now upstream. What this means for open source security
TEE - kernel support is now upstream. What this means for open source security
 
LAS16-200: Firmware summit - Tianocore Progress and Status
LAS16-200:  Firmware summit - Tianocore Progress and StatusLAS16-200:  Firmware summit - Tianocore Progress and Status
LAS16-200: Firmware summit - Tianocore Progress and Status
 
LAS16-310: Introducing the first 96Boards TV Platform: Poplar by Hisilicon
LAS16-310: Introducing the first 96Boards TV Platform: Poplar by HisiliconLAS16-310: Introducing the first 96Boards TV Platform: Poplar by Hisilicon
LAS16-310: Introducing the first 96Boards TV Platform: Poplar by Hisilicon
 
LAS16-100K1: Welcome Keynote
LAS16-100K1: Welcome KeynoteLAS16-100K1: Welcome Keynote
LAS16-100K1: Welcome Keynote
 
MOVED: RDK/WPE Port on DB410C - SFO17-206
MOVED: RDK/WPE Port on DB410C - SFO17-206MOVED: RDK/WPE Port on DB410C - SFO17-206
MOVED: RDK/WPE Port on DB410C - SFO17-206
 
LAS16-210: Hardware Assisted Tracing on ARM with CoreSight and OpenCSD
LAS16-210: Hardware Assisted Tracing on ARM with CoreSight and OpenCSDLAS16-210: Hardware Assisted Tracing on ARM with CoreSight and OpenCSD
LAS16-210: Hardware Assisted Tracing on ARM with CoreSight and OpenCSD
 
LAS16-TR06: Remoteproc & rpmsg development
LAS16-TR06: Remoteproc & rpmsg developmentLAS16-TR06: Remoteproc & rpmsg development
LAS16-TR06: Remoteproc & rpmsg development
 

Andere mochten auch

BKK16-211 Internet of Tiny Linux (io tl)- Status and Progress
BKK16-211 Internet of Tiny Linux (io tl)- Status and ProgressBKK16-211 Internet of Tiny Linux (io tl)- Status and Progress
BKK16-211 Internet of Tiny Linux (io tl)- Status and ProgressLinaro
 
LAS16-306: Exploring the Open Trusted Protocol
LAS16-306: Exploring the Open Trusted ProtocolLAS16-306: Exploring the Open Trusted Protocol
LAS16-306: Exploring the Open Trusted ProtocolLinaro
 
SFO15-200: Linux kernel generic TEE driver
SFO15-200: Linux kernel generic TEE driverSFO15-200: Linux kernel generic TEE driver
SFO15-200: Linux kernel generic TEE driverLinaro
 
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1Linaro
 
HKG15-505: Power Management interactions with OP-TEE and Trusted Firmware
HKG15-505: Power Management interactions with OP-TEE and Trusted FirmwareHKG15-505: Power Management interactions with OP-TEE and Trusted Firmware
HKG15-505: Power Management interactions with OP-TEE and Trusted FirmwareLinaro
 
BKK16-200 Designing Security into low cost IO T Systems
BKK16-200 Designing Security into low cost IO T SystemsBKK16-200 Designing Security into low cost IO T Systems
BKK16-200 Designing Security into low cost IO T SystemsLinaro
 
LAS16-504: Secure Storage updates in OP-TEE
LAS16-504: Secure Storage updates in OP-TEELAS16-504: Secure Storage updates in OP-TEE
LAS16-504: Secure Storage updates in OP-TEELinaro
 
SFO15-503: Secure storage in OP-TEE
SFO15-503: Secure storage in OP-TEESFO15-503: Secure storage in OP-TEE
SFO15-503: Secure storage in OP-TEELinaro
 
LCU14 500 ARM Trusted Firmware
LCU14 500 ARM Trusted FirmwareLCU14 500 ARM Trusted Firmware
LCU14 500 ARM Trusted FirmwareLinaro
 
LAS16-203: Platform security architecture for embedded devices
LAS16-203: Platform security architecture for embedded devicesLAS16-203: Platform security architecture for embedded devices
LAS16-203: Platform security architecture for embedded devicesLinaro
 
LCU14-103: How to create and run Trusted Applications on OP-TEE
LCU14-103: How to create and run Trusted Applications on OP-TEELCU14-103: How to create and run Trusted Applications on OP-TEE
LCU14-103: How to create and run Trusted Applications on OP-TEELinaro
 
HKG15-311: OP-TEE for Beginners and Porting Review
HKG15-311: OP-TEE for Beginners and Porting ReviewHKG15-311: OP-TEE for Beginners and Porting Review
HKG15-311: OP-TEE for Beginners and Porting ReviewLinaro
 
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3Linaro
 
HKG15-505: Power Management interactions with OP-TEE and Trusted Firmware
HKG15-505: Power Management interactions with OP-TEE and Trusted FirmwareHKG15-505: Power Management interactions with OP-TEE and Trusted Firmware
HKG15-505: Power Management interactions with OP-TEE and Trusted FirmwareLinaro
 
BUD17-400: Secure Data Path with OPTEE
BUD17-400: Secure Data Path with OPTEE BUD17-400: Secure Data Path with OPTEE
BUD17-400: Secure Data Path with OPTEE Linaro
 
BUD17-DF15 - Optimized Android N MR1 + 4.9 Kernel
BUD17-DF15 - Optimized Android N MR1 + 4.9 KernelBUD17-DF15 - Optimized Android N MR1 + 4.9 Kernel
BUD17-DF15 - Optimized Android N MR1 + 4.9 KernelLinaro
 

Andere mochten auch (16)

BKK16-211 Internet of Tiny Linux (io tl)- Status and Progress
BKK16-211 Internet of Tiny Linux (io tl)- Status and ProgressBKK16-211 Internet of Tiny Linux (io tl)- Status and Progress
BKK16-211 Internet of Tiny Linux (io tl)- Status and Progress
 
LAS16-306: Exploring the Open Trusted Protocol
LAS16-306: Exploring the Open Trusted ProtocolLAS16-306: Exploring the Open Trusted Protocol
LAS16-306: Exploring the Open Trusted Protocol
 
SFO15-200: Linux kernel generic TEE driver
SFO15-200: Linux kernel generic TEE driverSFO15-200: Linux kernel generic TEE driver
SFO15-200: Linux kernel generic TEE driver
 
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1
 
HKG15-505: Power Management interactions with OP-TEE and Trusted Firmware
HKG15-505: Power Management interactions with OP-TEE and Trusted FirmwareHKG15-505: Power Management interactions with OP-TEE and Trusted Firmware
HKG15-505: Power Management interactions with OP-TEE and Trusted Firmware
 
BKK16-200 Designing Security into low cost IO T Systems
BKK16-200 Designing Security into low cost IO T SystemsBKK16-200 Designing Security into low cost IO T Systems
BKK16-200 Designing Security into low cost IO T Systems
 
LAS16-504: Secure Storage updates in OP-TEE
LAS16-504: Secure Storage updates in OP-TEELAS16-504: Secure Storage updates in OP-TEE
LAS16-504: Secure Storage updates in OP-TEE
 
SFO15-503: Secure storage in OP-TEE
SFO15-503: Secure storage in OP-TEESFO15-503: Secure storage in OP-TEE
SFO15-503: Secure storage in OP-TEE
 
LCU14 500 ARM Trusted Firmware
LCU14 500 ARM Trusted FirmwareLCU14 500 ARM Trusted Firmware
LCU14 500 ARM Trusted Firmware
 
LAS16-203: Platform security architecture for embedded devices
LAS16-203: Platform security architecture for embedded devicesLAS16-203: Platform security architecture for embedded devices
LAS16-203: Platform security architecture for embedded devices
 
LCU14-103: How to create and run Trusted Applications on OP-TEE
LCU14-103: How to create and run Trusted Applications on OP-TEELCU14-103: How to create and run Trusted Applications on OP-TEE
LCU14-103: How to create and run Trusted Applications on OP-TEE
 
HKG15-311: OP-TEE for Beginners and Porting Review
HKG15-311: OP-TEE for Beginners and Porting ReviewHKG15-311: OP-TEE for Beginners and Porting Review
HKG15-311: OP-TEE for Beginners and Porting Review
 
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3
LAS16-111: Easing Access to ARM TrustZone – OP-TEE and Raspberry Pi 3
 
HKG15-505: Power Management interactions with OP-TEE and Trusted Firmware
HKG15-505: Power Management interactions with OP-TEE and Trusted FirmwareHKG15-505: Power Management interactions with OP-TEE and Trusted Firmware
HKG15-505: Power Management interactions with OP-TEE and Trusted Firmware
 
BUD17-400: Secure Data Path with OPTEE
BUD17-400: Secure Data Path with OPTEE BUD17-400: Secure Data Path with OPTEE
BUD17-400: Secure Data Path with OPTEE
 
BUD17-DF15 - Optimized Android N MR1 + 4.9 Kernel
BUD17-DF15 - Optimized Android N MR1 + 4.9 KernelBUD17-DF15 - Optimized Android N MR1 + 4.9 Kernel
BUD17-DF15 - Optimized Android N MR1 + 4.9 Kernel
 

Ähnlich wie BKK16-309A Open Platform support in UEFI

LCA14: LCA14-502: The way to a generic TrustZone® solution
LCA14: LCA14-502: The way to a generic TrustZone® solutionLCA14: LCA14-502: The way to a generic TrustZone® solution
LCA14: LCA14-502: The way to a generic TrustZone® solutionLinaro
 
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...The Linux Foundation
 
ELC-E 2016 Neil Armstrong - No, it's never too late to upstream your legacy l...
ELC-E 2016 Neil Armstrong - No, it's never too late to upstream your legacy l...ELC-E 2016 Neil Armstrong - No, it's never too late to upstream your legacy l...
ELC-E 2016 Neil Armstrong - No, it's never too late to upstream your legacy l...Neil Armstrong
 
OSDC 2014 ONIE by Nat Morris
OSDC 2014 ONIE by Nat MorrisOSDC 2014 ONIE by Nat Morris
OSDC 2014 ONIE by Nat MorrisCumulus Networks
 
OSDC 2014: Nat Morris - Open Network Install Environment
OSDC 2014: Nat Morris - Open Network Install EnvironmentOSDC 2014: Nat Morris - Open Network Install Environment
OSDC 2014: Nat Morris - Open Network Install EnvironmentNETWAYS
 
Building PoC ready ODM Platforms with Arm SystemReady v5.2.pdf
Building PoC ready ODM Platforms with Arm SystemReady v5.2.pdfBuilding PoC ready ODM Platforms with Arm SystemReady v5.2.pdf
Building PoC ready ODM Platforms with Arm SystemReady v5.2.pdfPaul Yang
 
Porting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_GriffinPorting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_GriffinPeter Griffin
 
ONIE: Open Network Install Environment @ OSDC 2014 Netways, Berlin
ONIE: Open Network Install Environment @ OSDC 2014 Netways, BerlinONIE: Open Network Install Environment @ OSDC 2014 Netways, Berlin
ONIE: Open Network Install Environment @ OSDC 2014 Netways, BerlinNat Morris
 
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream ProjectsITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream ProjectsITCamp
 
Ceph Day Beijing - SPDK in Ceph
Ceph Day Beijing - SPDK in CephCeph Day Beijing - SPDK in Ceph
Ceph Day Beijing - SPDK in CephCeph Community
 
Ceph Day Beijing - SPDK for Ceph
Ceph Day Beijing - SPDK for CephCeph Day Beijing - SPDK for Ceph
Ceph Day Beijing - SPDK for CephDanielle Womboldt
 
Implementing a UEFI BIOS into an Embedded System
Implementing a UEFI BIOS into an Embedded SystemImplementing a UEFI BIOS into an Embedded System
Implementing a UEFI BIOS into an Embedded Systeminsydesoftware
 
Visão geral do hardware do servidor System z e Linux on z - Concurso Mainframe
Visão geral do hardware do servidor System z e Linux on z - Concurso MainframeVisão geral do hardware do servidor System z e Linux on z - Concurso Mainframe
Visão geral do hardware do servidor System z e Linux on z - Concurso MainframeAnderson Bassani
 
Buildin a small linux kernel
Buildin a small linux kernelBuildin a small linux kernel
Buildin a small linux kerneltrx2001
 
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM SystemsXPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM SystemsThe Linux Foundation
 
SFO15-202: Towards Multi-Threaded Tiny Code Generator (TCG) in QEMU
SFO15-202: Towards Multi-Threaded Tiny Code Generator (TCG) in QEMUSFO15-202: Towards Multi-Threaded Tiny Code Generator (TCG) in QEMU
SFO15-202: Towards Multi-Threaded Tiny Code Generator (TCG) in QEMULinaro
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...NETWAYS
 
XPDS14 - Xen in EFI World - Daniel Kiper, Oracle
XPDS14 - Xen in EFI World - Daniel Kiper, OracleXPDS14 - Xen in EFI World - Daniel Kiper, Oracle
XPDS14 - Xen in EFI World - Daniel Kiper, OracleThe Linux Foundation
 

Ähnlich wie BKK16-309A Open Platform support in UEFI (20)

LCA14: LCA14-502: The way to a generic TrustZone® solution
LCA14: LCA14-502: The way to a generic TrustZone® solutionLCA14: LCA14-502: The way to a generic TrustZone® solution
LCA14: LCA14-502: The way to a generic TrustZone® solution
 
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...
 
ELC-E 2016 Neil Armstrong - No, it's never too late to upstream your legacy l...
ELC-E 2016 Neil Armstrong - No, it's never too late to upstream your legacy l...ELC-E 2016 Neil Armstrong - No, it's never too late to upstream your legacy l...
ELC-E 2016 Neil Armstrong - No, it's never too late to upstream your legacy l...
 
OSDC 2014 ONIE by Nat Morris
OSDC 2014 ONIE by Nat MorrisOSDC 2014 ONIE by Nat Morris
OSDC 2014 ONIE by Nat Morris
 
Slimline Open Firmware
Slimline Open FirmwareSlimline Open Firmware
Slimline Open Firmware
 
UEFI presentation
UEFI presentationUEFI presentation
UEFI presentation
 
OSDC 2014: Nat Morris - Open Network Install Environment
OSDC 2014: Nat Morris - Open Network Install EnvironmentOSDC 2014: Nat Morris - Open Network Install Environment
OSDC 2014: Nat Morris - Open Network Install Environment
 
Building PoC ready ODM Platforms with Arm SystemReady v5.2.pdf
Building PoC ready ODM Platforms with Arm SystemReady v5.2.pdfBuilding PoC ready ODM Platforms with Arm SystemReady v5.2.pdf
Building PoC ready ODM Platforms with Arm SystemReady v5.2.pdf
 
Porting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_GriffinPorting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_Griffin
 
ONIE: Open Network Install Environment @ OSDC 2014 Netways, Berlin
ONIE: Open Network Install Environment @ OSDC 2014 Netways, BerlinONIE: Open Network Install Environment @ OSDC 2014 Netways, Berlin
ONIE: Open Network Install Environment @ OSDC 2014 Netways, Berlin
 
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream ProjectsITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
ITCamp 2017 - Raffaele Rialdi - Adopting .NET Core in Mainstream Projects
 
Ceph Day Beijing - SPDK in Ceph
Ceph Day Beijing - SPDK in CephCeph Day Beijing - SPDK in Ceph
Ceph Day Beijing - SPDK in Ceph
 
Ceph Day Beijing - SPDK for Ceph
Ceph Day Beijing - SPDK for CephCeph Day Beijing - SPDK for Ceph
Ceph Day Beijing - SPDK for Ceph
 
Implementing a UEFI BIOS into an Embedded System
Implementing a UEFI BIOS into an Embedded SystemImplementing a UEFI BIOS into an Embedded System
Implementing a UEFI BIOS into an Embedded System
 
Visão geral do hardware do servidor System z e Linux on z - Concurso Mainframe
Visão geral do hardware do servidor System z e Linux on z - Concurso MainframeVisão geral do hardware do servidor System z e Linux on z - Concurso Mainframe
Visão geral do hardware do servidor System z e Linux on z - Concurso Mainframe
 
Buildin a small linux kernel
Buildin a small linux kernelBuildin a small linux kernel
Buildin a small linux kernel
 
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM SystemsXPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
XPDDS18: CPUFreq in Xen on ARM - Oleksandr Tyshchenko, EPAM Systems
 
SFO15-202: Towards Multi-Threaded Tiny Code Generator (TCG) in QEMU
SFO15-202: Towards Multi-Threaded Tiny Code Generator (TCG) in QEMUSFO15-202: Towards Multi-Threaded Tiny Code Generator (TCG) in QEMU
SFO15-202: Towards Multi-Threaded Tiny Code Generator (TCG) in QEMU
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
 
XPDS14 - Xen in EFI World - Daniel Kiper, Oracle
XPDS14 - Xen in EFI World - Daniel Kiper, OracleXPDS14 - Xen in EFI World - Daniel Kiper, Oracle
XPDS14 - Xen in EFI World - Daniel Kiper, Oracle
 

Mehr von Linaro

Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea GalloDeep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea GalloLinaro
 
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta VekariaArm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta VekariaLinaro
 
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua MoraHuawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua MoraLinaro
 
Bud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qaBud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qaLinaro
 
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018Linaro
 
HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018Linaro
 
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...Linaro
 
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...Linaro
 
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...Linaro
 
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...Linaro
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineLinaro
 
HKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening KeynoteHKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening KeynoteLinaro
 
HKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP WorkshopHKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP WorkshopLinaro
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineLinaro
 
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and allHKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and allLinaro
 
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse HypervisorHKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse HypervisorLinaro
 
HKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMUHKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMULinaro
 
HKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8MHKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8MLinaro
 
HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation Linaro
 
HKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted bootHKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted bootLinaro
 

Mehr von Linaro (20)

Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea GalloDeep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
 
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta VekariaArm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
Arm Architecture HPC Workshop Santa Clara 2018 - Kanta Vekaria
 
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua MoraHuawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
Huawei’s requirements for the ARM based HPC solution readiness - Joshua Mora
 
Bud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qaBud17 113: distribution ci using qemu and open qa
Bud17 113: distribution ci using qemu and open qa
 
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
OpenHPC Automation with Ansible - Renato Golin - Linaro Arm HPC Workshop 2018
 
HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018HPC network stack on ARM - Linaro HPC Workshop 2018
HPC network stack on ARM - Linaro HPC Workshop 2018
 
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
It just keeps getting better - SUSE enablement for Arm - Linaro HPC Workshop ...
 
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
Intelligent Interconnect Architecture to Enable Next Generation HPC - Linaro ...
 
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
Yutaka Ishikawa - Post-K and Arm HPC Ecosystem - Linaro Arm HPC Workshop Sant...
 
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
Andrew J Younge - Vanguard Astra - Petascale Arm Platform for U.S. DOE/ASC Su...
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
 
HKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening KeynoteHKG18-100K1 - George Grey: Opening Keynote
HKG18-100K1 - George Grey: Opening Keynote
 
HKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP WorkshopHKG18-318 - OpenAMP Workshop
HKG18-318 - OpenAMP Workshop
 
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainlineHKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
HKG18-501 - EAS on Common Kernel 4.14 and getting (much) closer to mainline
 
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and allHKG18-315 - Why the ecosystem is a wonderful thing, warts and all
HKG18-315 - Why the ecosystem is a wonderful thing, warts and all
 
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse HypervisorHKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
HKG18- 115 - Partitioning ARM Systems with the Jailhouse Hypervisor
 
HKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMUHKG18-TR08 - Upstreaming SVE in QEMU
HKG18-TR08 - Upstreaming SVE in QEMU
 
HKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8MHKG18-113- Secure Data Path work with i.MX8M
HKG18-113- Secure Data Path work with i.MX8M
 
HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation HKG18-120 - Devicetree Schema Documentation and Validation
HKG18-120 - Devicetree Schema Documentation and Validation
 
HKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted bootHKG18-223 - Trusted FirmwareM: Trusted boot
HKG18-223 - Trusted FirmwareM: Trusted boot
 

Kürzlich hochgeladen

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 

Kürzlich hochgeladen (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

BKK16-309A Open Platform support in UEFI

  • 1. BKK16-­‐309B  Enterprise  Firmware  -­‐  The   gold  standard  and  how  to  get  there   Jeff  Underhill  
  • 2. Why  We  Need  Server  Standards?        1.  Installing  Linux  in  27  Easy  Steps      2.  OS  /  PlaOorm  Support  Matrix      3.  UEFI  +  ACPI  Appendix    4.  U-­‐Boot  Appendix  5.  Who  to  call  when  it  sWll  doesn’t  boot?  
  • 3. Why  We  Need  Server  Standards?        1.  Installing  Linux  in  27  Easy  Steps      2.  OS  /  PlaOorm  Support  Matrix      3.  UEFI  +  ACPI  Appendix    4.  U-­‐Boot  Appendix  5.  Who  to  call  when  it  sWll  doesn’t  boot?  
  • 4. The  Bar  Has  Been  Set   …and  jeez  these  machines   are  proving  difficult  to  use.   -­‐  Seasoned  engineer  at  large  enterprise  so_ware  company   Why  are  you  exposing   us  to  all  this  $h*t…   -­‐  So_ware  architect  at  large   enterprise  so_ware  company  
  • 7.
  • 8. Heterogeneous  Datacenters     PlaOorm  Deployment   Standards  –  ARM  and  x86   need  to  be  the  Same     ACPI,  UEFI  Bootloader  –  standard   server  OS  images     PXE,  HTTPS  –  standard  remote  boot   opWons     DMI  –  PlaOorm  inventory   IPMI  –  Remote  ID  and  control   SpecificaWons  to  explicitly   define  plaOorm  hardware   and  firmware  standards   Server  Base  System  Architecture   (SBSA)  Spec.  –  PlaOorm  SOC   requirements   Server  Base  Boot  Requirements   (SBBR)  Spec.  –  PlaOorm  Firmware   requirements     SBSA  and  SBBR  enable  standard   server  OS  support   Forums  enabling   organizaWons  to   collaborate  on  standards   ARM  Server  Advisory  Comminee   spans  all  ecosystem  partners  for   standards  content  review   Linaro  providing  Linux  kernel  for   ARM  standard  deployment  and   UEFI  Firmware  Test  Suite  for   compliance  verificaWon   3rd  Party  Firmware  providers   aligned  Phoenix,  AMI,  Insyde   Requirement:  Homogeneous  PlaOorm  Management  and  OS  Deployment    
  • 9.
  • 10. Industry  Standard     Server  Specs   ARM  Standard  Server   Specs   OS  Specific  Design   Requirements   PLATFORM  DESIGN   REQUIREMENTS   Upstream  Linux  Kernel   Support   Firmware  Compliance   ValidaWon/Test  Suite   Firmware  Standard   Reference  Code   SoC  Specific  Firmware   Reference  Code   PLATFORM   ENABLEMENT     PLATFORM  IMPLEMENTATION   &  VALIDATION    OEM/ODM  Server   Compliance  TesWng   OEM/ODM  Server   Development   OEM/ODM  OS  PlaOorm   CerWficaWon  TesWng   Standards  Framework  
  • 11. Requirement:  Homogeneous  PlaOorm   Management  and  OS  Deployment   Overarching  goals:     1)  PlaOorms  ‘just  work’  as  received  –  good  QE  /  QA   1)  Remote  management  minimum:  On,  Off,  Reset  &  Boot  order   2)  InstallaWon  of  alternate  OS  is  simple  and  ‘just  works’   1)  PXE  &  USB  boot  present  and  funcWonal   2)  Don’t  have  to  ask  which  OS  works  on  which  plaOorm  –  single  image   3)  PlaOorms  integrate  seamlessly  with  exisWng  environment   1)  SMBIOS  present  &  populated   2)  No  re-­‐write  of  installaWon  scripts  (No  “IF  ARM  THEN…”)  
  • 12. Do  You  Want  to  Build  a  Snowman?  
  • 13. BKK16-­‐309A  Enterprise  Firmware  –   Open  PlaOorm  support  with  UEFI   Leif  Lindholm  
  • 14. Remember  last  Connect?   I  held  a  presentaWon  at  SFO15,  explaining  in  detail  everything  ARM  had  done   wrong  about  UEFI  since  we  started  our  involvement.     So  they  made  ARM’s  UEFI  strategy  my  responsibility.     This  is  my  plan  for  how  to  improve  things.  
  • 15. What  has  ARM  ever  done  for  you?   So…   •  ARM  worked  within  the  UEFI  forum  to  define  the  bindings  for  AArch32  and   AArch64  in  the  UEFI  specificaWon,  guaranteeing  interoperability  across   plaOorms  from  different  vendors  (and  architectural  licensees).   •  ARM  provided  the  support  in  TianoCore  EDK2  for  the  ARM  architectures.     But…   •  ARM  didn’t  provide  reference  plaOorm  ports,  and  did  not  put  in  the  effort   required  to  help  exisWng  partners  migrate  to  a  new  firmware  architecture,   or  enable  new  partners  to  migrate  to  ARM.    
  • 16. History  repeaWng  itself   We’ve  been  providing  ports  implemented  with  mostly  hard-­‐wired  ARM-­‐specific   plaOorm  drivers.     Sound  familiar?     Basically,  we  are  in  the  same  situaWon  as  the  ARM  Linux  ecosystem  before  the   creaWon  of  Linaro.  And  we  need  the  same  kind  of  effort,  to  enable  sensible   code  reuse  in  UEFI  firmware.     Only  in  many  cases  we  do  not  even  have  the  exisWng  code  to  refactor.    
  • 17. Show  us  the  code   In  order  to  reduce  the  amount  of  duplicaWon  between  plaOorms,  and  reduce   the  number  of  different  types  of  wheels  in  use,  we  need  to  have  access  to  real   plaOorm  support  code.     Historically,  EDK2  has  never  had  any  concept  of  containing  full  plaOorm   support,  apart  from  a  few  so_ware  models.  The  tradiWonal  workflow  was:   •  BIOS  vendor/team  gets  tasked  with  providing  firmware  for  a  system   •  They  grab  a  version  of  EDK2  they  find  suitable  as  a  starWng  point   •  They  add  exisWng  in-­‐house  components  for  non-­‐upstream  features  as  well   as  a  customized  GUI   •  They  add  support  for  processor  and  other  on-­‐board  components  –  generally   in  the  form  of  .zip  files  extracted  in  the  top-­‐level  directory  
  • 18. Moving  a  planet   The  TianoCore  project  does  not  have  a  head  maintainer.  It  has  a  bunch  of   people  acWng  as  maintainers  for  individual  packages  within  EDK2.  And   potenWally  for  different  repositories  owned  by  TianoCore.     So  historically,  making  changes  to  the  TianoCore  project  (as  opposed  to  the   code)  has  been  nigh-­‐on  impossible.  It  has  been  either:   •  Driven  by  consensus  (with  no  one  to  tell  when  consensus  has  been  reached)   •  Changed  by  maintainers  making  the  call  that  it  is  bener  to  ask  forgiveness   than  permission   •  Decided  internally  by  Intel  with  linle  external  discussion  
  • 19. A  new  hope   …  but  recently,  things  have  been  changing.     In  the  beginning  of  this  year,  EDK2  finally  migrated  from  SVN  to  git.  This  had   been  coming  for  a  long  Wme,  but  greatly  hindered  by  the  lack  of  anyone  to   actually  make  the  call  on  when  the  migraWon  plan  was  complete.     A  TianoCore  community  manager  (Tony  Mangefeste)  has  been  appointed  (by   Intel,  unilaterally,  but  this  is  sWll  a  good  thing).     Further  posiWve  changes  are  coming.  With  a  bit  of  luck  I’ll  have  something   more  to  share  before  the  end  of  this  week.  
  • 20. A  way  forward   What  we  want  is  more  open  plaOorm  code  in  TianoCore,  but  gezng  that  in   any  sensible  form  is  a  longer  play.     In  the  meanWme,  I  have  set  up  my  own  separate  plaOorms  tree  to  use  for   reducing  duplicaWon  of  plaOorm  bringup  boilerplate  and  provide  example  code   of  best  pracWces.  We’re  not  there  yet  –  don’t  assume  this  is  a  showcase!     We  have  now  migrated  all  of  the  ARM  Ltd.  PlaOorm  configuraWons  there  –  only   ArmVirtPkg  remains  in  the  EDK2  tree.  ArmPlaOormPkg  sWll  exists  in  EDK2,   holding  plaOorm  drivers  and  ARM  PrimeCell  drivers.  Long-­‐term,  expect  this  to   disappear.  
  • 21. OpenPlaOormPkg   OpenPlaOormPkg  is  just  a  git  repository  to  hold  plaOorm  code  unWl  there  is  a   way  to  resolve  this  in  TianoCore.     It  is  really  not  a  power  play,  trying  to  take  things  over  from  TianoCore.  And  I   have  a  reasonable  level  of  confidence  that  this  can  feed  directly  into  a  future   soluWon  for  all  of  TianoCore.     On  the  pracWcal  level,  it  is  simply  a  tree  holding  device  drivers,  plaOorm   support  code,  component  support  code,  and  plaOorm  build  configuraWon  files.   To  maximize  the  number  of  plaOorms  I  can  get  access  to  ports  for,  I  have   compromised  and  permined  binary-­‐only  modules  to  form  a  non-­‐majority  part   of  a  port.  
  • 22. Reference  plaOorm   OK,  so  that  is  the  ability  to  share  code  between  plaOorms  sorted(ish)  –  but   what  about  this  gold  standard  thing?     We  need  to  improve  the  quality  of  the  code  available  in  this  tree.     One  way  to  drive  this  is  by  providing  a  fully  open-­‐source  plaOorm  port  that  we   acWvely  clean  up  to  the  point  where  we  can  direct  people  to  it  and  tell  them  to   use  this  as  a  reference.     But  what  plaOorm  would  we  base  this  on?  
  • 23. Enterprise  so_ware  model   Over  the  past  few  years,  a  lot  of  good  work  has  gone  into  creaWng/improving   QEMU  support  for  the  “virt”  plaOorm.  But  the  virt  plaOorm  is  really  about   running  so_ware  on  AArch64  –  not  providing  an  emulated  version  of  a  realisWc   server  system.     What  would  be  really  useful  to  have  is  a  so_ware  model  looking  like  a  real   system  –  enabling  a  full  reference  firmware/so_ware  implementaWon  available   to  anyone  without  having  to  wait  for  a  physical  system  to  be  delivered:   •  ARM  Trusted  Firmware   •  UEFI     Whilst  looking  more  like  a  real  server  than  many  of  the  more  available   development  boards.  
  • 24. What  I  think  that  should  be   QEMU   •  Making  use  of  the  improved  EL3  emulaWon  support  to  provide  an  ARM   Trusted  Firmware  port   •  Improving  on  non-­‐upstream  EL2  support,  to  enable  verificaWon  of   virtualizaWon  support   •  ImplemenWng  a  plaOorm  that   •  Always  tracks  latest  upstream  available  ARMv8-­‐A  server  processor   •  Emulates  a  PCI  controller  (rather  than  virWo-­‐pci)  controlling   •  NVMe  device(s)   •  AHCI  disk(s)   •  A  standard  Ethernet  controller   •  Keyboard/video/mouse  
  • 25. And  what  will  we  do   ExisWng  ARM  plaOorm  ports,  and  drivers  for  those,  have  way  to  many  global   predefines.  Things  like  hard-­‐coded  base  addresses  for  devices.  (What  do  you   do  when  your  system  has  more  than  one?)  These  need  to  be  converted  into   the  UEFI  driver  model.     Some  bits  reappear  implemented  (differently)  in  many  new  plaOorm  ports.  
  • 26. Non-­‐discoverable  buses   The  scourge  of  the  SoC.     UEFI  was  defined  in  a  world  where  this  simply  wasn’t  an  issue  –  core  plaOorm   components  were  compaWble  between  vendors  and  “everything”  else  was   discoverable,  and  on  PCI.     As  a  result,  many  core  bits  of  EDK2  completely  expects  the  world  to  look  like   this.  And  because  of  this,  we  see  many  new  plaOorm  ports  implemented  with   some  form  of  PCI-­‐emulaWon  for  pure  MMIO  peripherals.     There  are  plans  underway  to  implement  a  Fake  Peripheral  Interconnect  to   resolve  this  in  one  place  for  all  plaOorms.  
  • 27. OpWon  ROMs   One  of  the  more  powerful  aspects  of  UEFI  is  the  ability  to  add  peripherals  via   plug-­‐in  cards  and  have  them  automaWcally  supported  to  use  for  booWng  via  a   driver  provided  in  flash  on  the  card  itself.     Part  of  the  PCI  specificaWon(s),  and  supports  providing  drivers  for  mulWple   architectures.  But,  the  hw  vendors  want  to  keep  the  board  cost  down  as  much   as  possible  –  so  in  pracWce  they  will  only  provide  cards  supplied  with  the  X64   version.     UEFI  defines  a  portable  bytecode  executable  format  called  EBC.  The  majority  of   the  interpreter  code  is  plaOorm  independent,  but  the  ARM  architectures  do   not  yet  have  their  bit  implemented.  
  • 28. Resources   hnps://git.linaro.org/uefi/OpenPlaOormPkg.git     hnps://wiki.linaro.org/LEG/Engineering/Kernel/UEFI/build     hnps://wiki.linaro.org/LEG/Engineering/Kernel/UEFI/CommonPlaOormTree