Hi Benjamin,

On 05.01.20 19:30, Benjamin Doron wrote:
>> Is this laptop using Nvidia Optimus? If so, the displays are only connected
>> to the integrated GPU.
>
> I'm not sure, but the datasheet seems to suggest so, displaying exactly what 
> your conclusion was, that the display is connected only to the SoC. If more 
> proof is needed, where might I find it and what do I do practically?

well, you can boot with the vendor firmware, enable the discrete GPU
and check in your OS (xrandr, for instance, I guess) where the display
is connected.

> Is this ONBOARD_VGA_IS_PRIMARY or is "PrimaryDisplay" "Display_iGFX?" Or is 
> there something else?

*If* it's Optimus:

o You'll have to enabled both integrated and discrete GPUs.

o You'll always use the integrated one to handle displays.
  PrimaryDisplay = Display_iGFX

o Select ONBOARD_VGA_IS_PRIMARY if you ever want to use open-source gfx
  init or an Option ROM (for the iGPU). (This is the generic coreboot
  switch, redundant with the PrimaryDisplay option of FSP. Better keep
  these settings synchronized.)

o You'll most likely have to figure out how to toggle power to the dGPU.
  This is mainboard specific, can be a GPIO, for instance. So I suggest
  to boot with the vendor firmware, dump GPIOs, toggle the dGPU, and
  dump again. With some luck you'll find a GPIO that changes respec-
  tively. You can find an example of similar code in src/drivers/lenovo/
  hybrid_graphics/.

o You'll have to load the nvidia firmware (extracted from vendor image)
  in coreboot and make it available to the OS via ACPI. Older devices
  had Option ROMs (to be run by legacy BIOS) for this, I'm not sure if
  those are still available on newer devices.
  - If you have an Option ROM: Add it to CBFS as `pciVVVV,DDDD.rom`
    where VVVV and DDDD are the vendor and device IDs of your dGPU
    in hex. coreboot should pick it up and do the rest.
  - If not: I'd suggest to dig into your vendor firmware's DSDT (and
    SSDTs) and the Linux kernel driver for your dGPU to figure out what
    is provided to the OS and how. Please document your findings first,
    if you go this way, then we can discuss integration into coreboot.

Nico
_______________________________________________
coreboot mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to