blob: 3db1c2d6f40b796e7e799ee105a27a3f370bc74a [file] [log] [blame]
/dts-v1/;
/ {
model = "Google Peach Kirby";
config {
hwid = "KIRBY TEST A-A 9382";
};
chromeos-config {
gbb-flag-disable-fw-rollback-check;
};
flash@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "chromeos,flashmap";
reg = <0x00000000 0x00400000>;
/* ---- Section: Read-only ---- */
wp-ro {
label = "wp-ro";
reg = <0x00000000 0x00200000>;
read-only;
};
ro-section {
label = "ro-section";
reg = <0x00000000 0x00200000>;
read-only;
};
ro-boot {
label = "coreboot";
size = <0x00100000>;
read-only;
type = "blob coreboot";
required;
};
ro-fmap {
label = "fmap";
/* We encourage to align FMAP partition in as large
* block as possible so that flashrom can find it soon.
* For example, aligning to 512KB is better than to
* 256KB. */
reg = <0x00100000 0x00001000>;
read-only;
type = "fmap";
ver-major = <1>;
ver-minor = <0>;
};
ro-gbb {
label = "gbb";
/* GBB offset must be aligned to 4K bytes */
reg = <0x00101000 0x000eef00>;
read-only;
type = "blob gbb";
};
ro-firmware-id {
label = "ro-frid";
reg = <0x001eff00 0x00000100>;
read-only;
type = "blobstring fwid";
};
/* ---- Section: Vital-product data (VPD) ---- */
ro-vpd {
label = "ro-vpd";
/* VPD offset must be aligned to 4K bytes */
reg = <0x001f0000 0x00010000>;
read-only;
type = "wiped";
wipe-value = [ff];
};
/* ---- Section: Rewritable slot A ---- */
rw-a {
label = "rw-section-a";
/* Alignment: 4k (for updating) */
reg = <0x00200000 0x000f0000>;
};
rw-a-vblock {
label = "vblock-a";
/*
* Alignment: 4k (for updating) and must be in start of
* each RW_SECTION.
*/
reg = <0x00200000 0x00002000>;
type = "keyblock boot,ecrwhash";
with_index;
keyblock = "firmware.keyblock";
signprivate = "firmware_data_key.vbprivk";
version = <1>;
kernelkey = "kernel_subkey.vbpubk";
preamble-flags = <1>;
};
rw-a-boot {
/* Alignment: no requirement (yet). */
label = "fw-main-a";
reg = <0x00202000 0x000ce000>;
type = "blob boot,ecrwhash";
with_index;
};
rw-a-ec-boot {
label = "ec-main-a";
type = "blob ecbin";
reg = <0x002d0000 0x0001ff00>;
with_index;
};
rw-a-firmware-id {
/* Alignment: no requirement. */
label = "rw-fwid-a";
reg = <0x002eff00 0x00000100>;
read-only;
type = "blobstring fwid";
};
/* ---- Section: Rewritable slot B ---- */
rw-b {
label = "rw-section-b";
/* Alignment: 4k (for updating) */
reg = <0x00300000 0x000f0000>;
};
rw-b-vblock {
label = "vblock-b";
/*
* Alignment: 4k (for updating) and must be in start of
* each RW_SECTION.
*/
reg = <0x00300000 0x00002000>;
type = "keyblock boot,ecrwhash";
with_index;
keyblock = "firmware.keyblock";
signprivate = "firmware_data_key.vbprivk";
version = <1>;
kernelkey = "kernel_subkey.vbpubk";
preamble-flags = <1>;
};
rw-b-boot {
label = "fw-main-b";
/* Alignment: no requirement (yet). */
reg = <0x00302000 0x000ce000>;
type = "blob boot,ecrwhash";
with_index;
};
rw-b-ec-boot {
label = "ec-main-b";
type = "blob ecbin";
reg = <0x003d0000 0x0001ff00>;
with_index;
};
rw-b-firmware-id {
label = "rw-fwid-b";
/* Alignment: no requirement. */
reg = <0x003eff00 0x00000100>;
read-only;
type = "blobstring fwid";
};
/* ---- Section: Rewritable VPD 32 KB ---- */
rw-vpd {
label = "rw-vpd";
/* Alignment: 4k (for updating) */
reg = <0x003f0000 0x00008000>;
type = "wiped";
wipe-value = [ff];
};
/* ---- Section: Rewritable shared 16 KB---- */
shared-section {
/*
* Alignment: 4k (for updating).
* Anything in this range may be updated in recovery.
*/
label = "rw-shared";
reg = <0x003f8000 0x00004000>;
};
shared-data {
label = "shared-data";
/*
* Alignment: 4k (for random read/write).
* RW firmware can put calibration data here.
*/
reg = <0x003f8000 0x00004000>;
type = "wiped";
wipe-value = [00];
};
/*
* This space is currently unused and reserved for future
* extensions. cros_bundle_firmware dislikes holes in the
* FMAP, so we cover all empty space here.
*/
rw-unused {
label = "rw-unused";
reg = <0x003fc000 0x00004000>;
type = "wiped";
wipe-value = [ff];
};
};
};