Safeguard
Supply Chain•

How do you keep a forked chip vendor SDK patched?

Most hardware startups fork their chip vendor's SDK. Here is how to track upstream fixes, record your edits and know when your fork is falling behind.

Safeguard Security Team
4 min read

To keep a forked vendor SDK patched, store the vendor's pristine drop in your repo, keep your edits as a separate patch series, record the vendor version in your SBOM, and subscribe to the vendor's advisories. Review upstream releases on a fixed schedule and merge the ones that touch code you ship.

Why forks fall behind

A chip vendor ships a board support package or SDK. You edit it to fix a driver, add your board, or trim size. A year later the vendor releases a security fix. Your tree no longer matches theirs, so the fix does not apply cleanly, and nobody has time. That is how a known issue stays in shipped devices.

Under the Cyber Resilience Act recitals, manufacturers should check whether a component receives regular security updates and whether it is free from known vulnerabilities (Recital 34). A heavily edited fork is a component whose updates you now have to carry yourself.

A structure that survives staff changes

  1. Pristine drop first. Commit the vendor's release, unmodified, with the version in the commit message.
  2. Patches on top. Keep each of your changes as a small, named patch with a reason. Do not mix formatting changes with fixes.
  3. A change log table.
File areaWhy we changed itUpstream equivalent?Owner
Radio driverPower fix on our boardNoFirmware lead
Bootloader glueOur flash layoutNoFirmware lead
TLS configDisabled old protocolPartlySecurity owner
  1. Version in the SBOM. Record the vendor name, version and your patch level. A scanner cannot see this, so add it by hand.
  2. Advisory intake. Subscribe to the vendor's security notices. Put one named person in charge of reading them.

A review rhythm for a small team

Check for new vendor releases monthly. For each release, ask three questions: does it fix a security issue, does it touch code we ship, does it conflict with our patches? If the answer to the first two is yes, schedule the merge. If a merge is too large, write down why you decided to carry a local fix instead.

Decide when to stop forking

Some edits are worth upstreaming to the vendor. Others are signs the SDK does not fit your product. If most of your tree is patches, consider reducing the footprint by moving to a more actively maintained base, which is a build decision with real cost and should be made deliberately.

Where Safeguard fits

Safeguard's dependency scanning and reachability analysis work on the package ecosystems in your app and backend repositories, helping you separate vulnerabilities in code that is actually called from noise. For vendor SDK source copied into a firmware tree, keep the hand-written record described above.

Try it yourself

Click through it at your own pace, or open it full screen. Look at how calls into a vulnerable function change the priority.

Quick check

Should we rebase our fork onto every vendor release?

Not necessarily. Merge releases that fix issues in code you ship, and record the ones you skip with a reason.

Who owns a CVE in code the vendor wrote but we shipped?

In practice, you are the one who has to get the fix onto your devices. The vendor fixes their code, but your customers run your product. Ask your counsel about formal responsibility.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.