# 25 April 2022 Self Describing Blob Discussion

* Next meeting: 2022-05-09
* Meeting minutes Doc [1]


## Attendees:
Sheng, Jay Talbott, Martin Roth, Werner, Ron, Zhiguang, Dun.tan


## Minutes:

Continue discussion over New UPL (Universal Payload) document.  These
are a list of proposed fields and not so much a discussion about the
encoding right now.

Currently, the only thing being discussed is the format for passing data
from init firmware (coreboot/UEFI/U-Boot/ X) to a payload.  Not all
payloads will need all fields, and all fields are optional.  If a field
that a payload needs is not given, the expectation is that the receiver
will do its best to continue.  If a field is passed, it should be
treated as the

As mentioned in the last meeting, there are 2 levels in the definition:

* Key
    * Subkey

General Format for data structure - Maximum of two levels.

Example:
```
| Key     | Subkey | CBOR type | Native type  |
|---------|--------|-----------|--------------|
| Example |        | Integer   | Unsigned int |
```


CBOR requires a different field type for positive and negative
values, so all ints are explicitly signed.

The oreboot mailing list is suggesting something more coreboot-tables
like.
* The tables can have issues if not using the same compiler version.

CBOR is just a definition for serialized data - it should be read in by
the recipient once and copied to memory to put into a native structure.

With either CBOR or CBTables, the structure needs to be known by both
the sender and the receiver.

An open source library will be provided that may be used to
encode/decode the data into structures.

We need to try to get representatives from ARM, AMD, RISC-V present for
future discussions.  We need different viewpoints in this discussion so
that it isn't Intel & x86-centric.

Graphics has a number of fields to pass to the payload.  If these are
not present, the payload should assume that graphics has not been
initialized.

The Universal Payload spec will be released as a Google Doc shortly and
will be open for comments.
* The Spec needs definitions of all fields. Pointers to other documents
where they are defined are fine.

[1]: 
https://docs.google.com/document/d/1IDQqr4cv8dQHa9faSxBc29xHSeKuXNTiMP3a3bLJClQ/edit#heading=h.posv1oqvf14x
_______________________________________________
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org

Reply via email to