Patch Set 9:

Patch Set 9:

If my hunch about ACPI is correct here, and we eventually want to keep PCI enumeration without resource allocation, we are looking at 99% revert of this commit to fix it. Cases where vendors (and/or original authors) return to their code and willingly accept reverts are unfortunately rare. I did not fix the previous regressions I caused related to hidden Intel PCI devices either, I believe ultimately Nico committed the fixes(?).

So, kyosti, were we to add this mandatory struct member to the device struct (pick a name if you don't like that one) and in the MINIMAL scanning case, have the loop skip those devices not marked
mandatory, is that approach one you would find workable?

There is my promise somewhere not to -2 the work you do here. Commits that I feel take us further from supporting memory resources in 64bit MMIO space will not receive my +2 either.

I was after a solution that involves _not_ modifying the devicetree.cb files at all. You would probe the PCI device ID, bind it to a PCI driver, and have the driver tell you the device is mandatory.

I'm fine with that assuming I understand you correctly.

For the q35 target, it would be 0 lines of sconfig change, 2 lines added to two devices, and 2 lines added to the scan bus. Would this be something that makes more sense?

I was after solution were you would not modify devicetree.cb files at all. For each PCI device that is bound to driver, you would need to take care callbacks that require assigned resources are skipped, so it is more code changes.

The net result (for non-blobbed PCI device init) may be that most on-board/integrated PCI devices end up being marked as mandatory. That's why I am trying to approach the problem from the other end and only leave the problematic large MMIO resources unassigned.

View Change

To view, visit change 36221. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I2073d9f8e9297c2b02530821ebb634ea2a5c758e
Gerrit-Change-Number: 36221
Gerrit-PatchSet: 9
Gerrit-Owner: ron minnich <rminnich@gmail.com>
Gerrit-Reviewer: Aaron Durbin <adurbin@chromium.org>
Gerrit-Reviewer: Furquan Shaikh <furquan@google.com>
Gerrit-Reviewer: Jeremy Soller <jeremy@system76.com>
Gerrit-Reviewer: Kyösti Mälkki <kyosti.malkki@gmail.com>
Gerrit-Reviewer: Lean Sheng Tan <lean.sheng.tan@intel.com>
Gerrit-Reviewer: Martin Roth <martinroth@google.com>
Gerrit-Reviewer: Nico Huber <nico.h@gmx.de>
Gerrit-Reviewer: Patrick Georgi <pgeorgi@google.com>
Gerrit-Reviewer: Philipp Deppenwiese <zaolin.daisuki@gmail.com>
Gerrit-Reviewer: Shelley Chen <shchen@google.com>
Gerrit-Reviewer: Subrata Banik <subrata.banik@intel.com>
Gerrit-Reviewer: build bot (Jenkins) <no-reply@coreboot.org>
Gerrit-Reviewer: ron minnich <rminnich@gmail.com>
Gerrit-CC: Paul Menzel <paulepanter@users.sourceforge.net>
Gerrit-Comment-Date: Sat, 26 Oct 2019 03:06:22 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
Gerrit-MessageType: comment