[PATCH] acpi: allow non-optimus setups to load vbios from acpi

Claas Lorenz cllorenz at uni-potsdam.de
Sat Apr 5 04:53:28 PDT 2014


Hi, same for me. The screen does not freeze anymore and the boot
succeeds. But now I have this kernel message during boot (for the second
card):

[   24.382045] pci_pm_runtime_suspend():
nouveau_pmops_runtime_suspend+0x0/0xe0 [nouveau] returns -22

Do you want to have the complete dmesg log? I think this is a new bug.
Your patch works for the previous one, so you can close it.

Yours,
Claas


On 27.03.2014 11:54, Patrick Clara wrote:
> I have tested this patch. I can confirm that now nouveau loads
> correctly without errors.
> Thank you
>
> 2014-03-27 0:37 GMT+01:00 Ilia Mirkin <imirkin at alum.mit.edu>:
>> There appear to be a crop of new hardware where the vbios is not
>> available from PROM/PRAMIN, but there is a valid _ROM method in ACPI.
>> The data read from PCIROM almost invariably contains invalid
>> instructions (still has the x86 opcodes), which makes this a low-risk
>> way to try to obtain a valid vbios image.
>>
>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76475
>> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
>> Cc: <stable at vger.kernel.org> # v2.6.35+
>> ---
>>
>> Not sure if the stable CC is warranted... it's technically not a
>> regression. But it's a simple change that enables hardware to work.
>>
>> Patrick/Claas -- please test this out (if you're applying this to a linux
>> tree, you'll have to do it manually, but it should be fairly obvious where
>> this should apply).
>>
>>  drm/nouveau_acpi.c | 3 ---
>>  1 file changed, 3 deletions(-)
>>
>> diff --git a/drm/nouveau_acpi.c b/drm/nouveau_acpi.c
>> index 83face3..2792069 100644
>> --- a/drm/nouveau_acpi.c
>> +++ b/drm/nouveau_acpi.c
>> @@ -389,9 +389,6 @@ bool nouveau_acpi_rom_supported(struct pci_dev *pdev)
>>         acpi_status status;
>>         acpi_handle dhandle, rom_handle;
>>
>> -       if (!nouveau_dsm_priv.dsm_detected && !nouveau_dsm_priv.optimus_detected)
>> -               return false;
>> -
>>         dhandle = ACPI_HANDLE(&pdev->dev);
>>         if (!dhandle)
>>                 return false;
>> --
>> 1.8.3.2
>>



More information about the dri-devel mailing list