{"id":19094578,"url":"https://github.com/coreboot/chrome-ec","last_synced_at":"2025-04-04T08:04:39.468Z","repository":{"id":37762053,"uuid":"50835018","full_name":"coreboot/chrome-ec","owner":"coreboot","description":"Mirror of https://chromium.googlesource.com/chromiumos/platform/ec","archived":false,"fork":false,"pushed_at":"2024-10-29T21:18:55.000Z","size":181515,"stargazers_count":76,"open_issues_count":0,"forks_count":60,"subscribers_count":18,"default_branch":"main","last_synced_at":"2024-10-29T21:32:05.939Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/coreboot.png","metadata":{"files":{"readme":"README.fmap","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-02-01T11:25:56.000Z","updated_at":"2024-10-29T21:19:00.000Z","dependencies_parsed_at":"2024-11-06T10:41:35.389Z","dependency_job_id":null,"html_url":"https://github.com/coreboot/chrome-ec","commit_stats":null,"previous_names":[],"tags_count":35,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coreboot%2Fchrome-ec","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coreboot%2Fchrome-ec/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coreboot%2Fchrome-ec/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coreboot%2Fchrome-ec/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/coreboot","download_url":"https://codeload.github.com/coreboot/chrome-ec/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247137573,"owners_count":20889898,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T03:30:16.492Z","updated_at":"2025-04-04T08:04:35.825Z","avatar_url":"https://github.com/coreboot.png","language":"C","readme":"In the most general case, the flash layout looks something like this:\n\n  +---------------------+\n  | Reserved for EC use |\n  +---------------------+\n\n  +---------------------+\n  |     Vblock B        |\n  +---------------------+\n  |  RW firmware B      |\n  +---------------------+\n\n  +---------------------+\n  |     Vblock A        |\n  +---------------------+\n  |  RW firmware A      |\n  +---------------------+\n\n  +---------------------+\n  |       FMAP          |\n  +---------------------+\n  |   Public root key   |\n  +---------------------+\n  |  Read-only firmware |\n  +---------------------+\n\n\nBIOS firmware (and kernel) put the vblock info at the start of each image\nwhere it's easy to find. The Blizzard EC expects the firmware vector table\nto come first, so we have to put the vblock at the end. This means we have\nto know where to look for it, but that's built into the FMAP and the RO\nfirmware anyway, so that's not an issue.\n\nThe RO firmware doesn't need a vblock of course, but it does need some\nreserved space for vboot-related things.\n\nUsing SHA256/RSA4096, the vblock is 2468 bytes (0x9a4), while the public\nroot key is 1064 bytes (0x428) and the current FMAP is 644 bytes (0x284). If\nwe reserve 4K at the top of each FW image, that should give us plenty of\nroom for vboot-related stuff.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoreboot%2Fchrome-ec","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcoreboot%2Fchrome-ec","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoreboot%2Fchrome-ec/lists"}