linuxboot / linuxboot/heads

Set hybrid igpu dgpu by default on boards including dgpu blobs?

Open
#1,197 12 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Makefile
Stars
1.6k
Forks
211
Avg merge
4d 21h
Merged PRs (30d)
6

Description

t430/t530/w530 opened relevant (add others)

The problem/feature is that currently deployed coreboot configs are setting both STATIC_OPTION_TABLE and USE_OPTION_TABLE.

USE_OPTION_TABLE instructs coreboot to read CMOS settings from file if not existing in memory, while STATIC_OPTION_TABLE instructs coreboot to overwrite settings in memory with the content of cbfs content on each boot, whatever is set in memory, not letting the user change settings but by flashing changes back into rom.

See https://github.com/coreboot/coreboot/blob/master/src/Kconfig

By removing STATIC_OPTION_TABLE, we could add either nvramtool or another GUI tool under heads rom that can manipulate directly CMOS settings, which would be kept in CMOS memory, and survive firmware upgrades.

The ROM would come with defaults from coreboot, populate cmos if not existing, but otherwise customizations would live until CMOS battery is disconnected.

The danger of removing STATIC_OPTION_TABLE and providing nvramtool is that if the user sets a setting that causes problem, CMOS battery would need disconnection to rollback to what is stored into compiled ROM cmos_layout.txt

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the coreboot settings described in src/Kconfig and the configurations for t430, t530, and w530. Review how STATIC_OPTION_TABLE, USE_OPTION_TABLE, nvramtool, and cmos_layout.txt interact before deciding on the change. Done should include a defined default for hybrid iGPU/dGPU boards and a safe, persistent CMOS customization path.

Written by the indexing model from the issue text.

Assessment

Domain
operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.