Skip to content

EBBR Notes 2018.04.19

Grant Likely edited this page May 10, 2018 · 1 revision

19 April 2018

Attendees:

  • Alex Graf (SUSE)
  • Ryan Harkin (Linaro)
  • Rob Herring (Linaro)
  • Udit Kumar (NXP)
  • Grant Likely (Arm)
  • Leif Lindholm (Linaro)
  • Bill Mills (TI)
  • Tom Rini
  • Peter Robinson (Redhat)
  • Michal Simek (Xilinx)
  • Daniel Thompson (Linaro)
  • Dong Wei (Arm)

Agenda:

  • Action item review
    • [Grant] publish GitHub repo with EBBR text in reStructuredText markup
    • [Dong] Get Arm legal approval to relicense and publish EBBR
  • Other business
    • HW IP Sharing

Action Items

12-Apr-2018 [Grant & Dong] Get Arm legal approval to relicense and publish EBBR

  • 19/04/2018: Approval in process, hope to have answer by next week

12-Apr-2018 [Grant] Publish GitHub repo with EBBR text in reStructuredText markup

  • 19/04/2018: Repo is created, but cannot publish yet

19-Apr-2018 new [Bill] Write recommended policy for sharing HW between firmware and OS

19-Apr-2018 new [Leif] Document specification text for platforms which do not support persistent variables, or do not support runtime {Get,Set}Variable()

Notes

Action item review

  • Relicensing of EBBR by ARM
    • Internal support is there, Grant is writing draft of legal texts
    • "Should be done by next week" - ;-)
  • Github repo with current EBBR text in reStructuredText
    • 50% complete
    • Repo is created and ready to roll but won't hit github until it is approved by Arm legal
    • Expect to use github wiki, issue tracker, etc. At least for the short term.

AOB

  • HW IP Sharing of peripherals between OS and firmware
    • eMMC is a good example, I2C can be another in some cases
    • Can EBBR help solve this issue?
    • Grant: One answer could be: For any of these platforms a piece of hardware should have only one master. If it is described in DT then OS has implicit permission to use and abuse it.
    • Grant: EBBR should not dictate having anything resident in the same exception level as the OS.
    • Udit: Seeking agreement that there are some devices that need to be shared. EFI runtime variables is an especially important case for EBBR
    • Bill: Base case is to agree with Grant… but… firmware can expose services to allow a virtual device in Linux to access features
    • Peter: Raspberry Pi has GPIO and ??? that is managed by the video controller, accessed from kernel by a mailbox mechanism
    • Peter: Arm has just released a new h/ware standard/recommendation to try and solve some of these problems
    • Grant: What is scope of EBBR? Allows distros to support embedded boards without cute embedded nonsense hacks. General device sharing is not in scope.
    • Daniel: Agree with above… except for EFI runtime variables which we would (or may) like EBBR to be able to rely on.
    • Grant: Try to solve this in a wider space (UEFI forum) and then EBBR can inherit the solution.
    • Bill: EFI runtime variables are easy if you have specific hardware that is uniquely owned by firmware (NOR flash, etc).
    • What are actions arising from this?
      • Ok not to have general solution
      • Action Bill Mills: Document "something" about EFI variables for EBBR spec
      • Leif (reluctantly) will look after take this to EFI forum (but not ready to go to forum yet)
  • Device tree overlays
    • No common method of handling device tree overlays
    • Peter: Alex G. and I discussed heavily at connect. Some interest in solving this within grub since no need to push things down into TianoCore/EDK2 and u-boot.
    • Alex: Have logic in firmware that can enumerate "Hat"s and create EFI object for them. These objects could then be backed by DTBOs
  • either by grabbing them from the device (EEPROM) or by a stored blob in firmware. Grub for example could then also be taught about these objects and DTBO support, so an OS could store its own overlays. EDK2 has the hat logic support today and already does create objects.
    • Bill: FIT handles this problem today… but also bundles in lots of other features. Not clear how distros feel about this.
    • Tom: Let's focus on what EBBR dictates first!
    • Grant: Would like DT update to be part of EBBR but its not clear whether overlay should be in scope at all.
  • Q: Where do we look to find out what UEFI features u-boot supports today (Bill)
    • Alex: No exhaustive list of present or absent features is available. To find what is missing "all" we need to is run the SCT (self certification test) but u-boot isn't quite capable of running that quite yet (uefi shell, a prereq, is nearly there)
    • Grant: What is list of platforms that are "good" for playing with EFI features. RPi?
    • Alex: qemu is in good condition but many other choices
  • Runtime variables
    • Daniel: If EBBR recommends no runtime variable then EBBR must recommend a protocol for distros to adopt
    • Grant: EBBR will never recommend no runtime variables… but it might allow it
    • Daniel: Agree… but even allowing forces EBBR to recommend alternative
    • Action (Leif, also reluctantly): Make this a bug and provide a recommendation
Clone this wiki locally