SFBProvenance Struct Reference

An SFBProvenance provides information that describes a sketch as a physical artifact. More...

#include <SFBProvenance.h>


Data Fields

u32 branchInstruction
 A single ARM instruction that jumps over the provenance block, making the block "executable" so it can appear in code flow.
u32 checksum0
 Filled in by the bootloader.
u32 checksum1
 See checksum0.
int sourceOwnerId
 Filled in by the bootloader.
int sourceBoardId
 Filled in by the bootloader.
u32 magic
 A "magic value" (equal to SFB_PROVENANCE_MAGIC) identifying the beginning of the checksummed portion of a valid sketch.
u16 flags
 Room for miscellaneous flags, as yet undefined.
u8 rsrvd1
 Reserved for future use; value should be zero; value should not be read.
u8 architecture
 The architecture code for the machine this code runs on.
int creatorId
 The sketch creator id, or 0 if none; must not be -1.
int programId
 The sketch program id, or 0 if none; must not be -1.
int buildDate
 Filled in by the sketch build system.
int buildTime
 Filled in by the sketch build system.
int programLength
 The size of the sketch, in bytes, including this entire header block.
u32 copyrightNotice
 A pointer to zstring in program area, or null if unspecified.
u32 cigam
 A "backwards" magic value (equal to SFB_PROVENANCE_CIGAM) helping to identify a valid SFBProvenance block.


Detailed Description

An SFBProvenance provides information that describes a sketch as a physical artifact.

It provides spatial information such as the sketch program length and a "checksum" describing the sketch content, temporal information such as when the sketch was built, and a few bits about the origin or "provenance" of the sketch, information such as a "sketch id", who created it, and where we got it.

An SBFProvenance block is automatically generated by the sketch build system, and placed just before the sketch itself in program memory, so the effective program starting address immediately follows the provenance block. (In addition, a "program footer" is placed after the sketch in program memory, to provide an additional consistency check.)


Field Documentation

A single ARM instruction that jumps over the provenance block, making the block "executable" so it can appear in code flow.

Filled in by the sketch build system.

The UTC time zone date this was compiled. Interpreted as 0xYYYYMMDD.

Filled in by the sketch build system.

The UTC time zone time this was compiled. Interpreted as 0xHHMMSS with 0..24 for HH.

Filled in by the bootloader.

(Half of the) Checksum of all bytes starting at the magic and running for programLength-12]]

A "backwards" magic value (equal to SFB_PROVENANCE_CIGAM) helping to identify a valid SFBProvenance block.

A pointer to zstring in program area, or null if unspecified.

Represented as a u32 because this is always a 32 bit pointer (either on the actual h/w, or as an offset into a memory image), regardless of the native pointer size.

A "magic value" (equal to SFB_PROVENANCE_MAGIC) identifying the beginning of the checksummed portion of a valid sketch.

The size of the sketch, in bytes, including this entire header block.

Reserved for future use; value should be zero; value should not be read.

Filled in by the bootloader.

The provided board id of the board or other source that fed this sketch to us.

Filled in by the bootloader.

The provided owner id of the board or other source that fed this sketch to us.


The documentation for this struct was generated from the following file:

Generated on Fri Apr 22 06:57:22 2011 for SFB by doxygen 1.5.9