mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 23:22:31 +02:00
drm nouveau fix for 6.9-rc4
nouveau: - regression fix for GSP display enable. -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEEKbZHaGwW9KfbeusDHTzWXnEhr4FAmYUtbQACgkQDHTzWXnE hr6yng//YPGEzpYQ50Q1tKVFeLkB0TsZk+Hf874tbLu9kc2yQaez8/2s1iArSE6Y la0DgZvwpdRxW2UI36x6pjuXL5og2aLcYh7SPtKVZn7903EXSzqOytkc9PQwRzvp fAxXPQmj8xjZak05uhOHDG5XkPNrCzE37gRSygUn9TTlkRfnxWjEpBZMeeOEKZXq O/pYhc49VsTLChGJvjeT0tzu2Nzo3EcZIwftaYpQmcGIrl1I3mYnS1GYDs9yO9WF /4m+4z1haBQBr7cgo9ZbDH0DbdxZASVXukX50dq86Ppt6YevrROd92A8gd1k3Zol B/APJdhh3zZNP8sNK/Gczj+oI5wq1/ECwFYzI8XoIe2mPXIKFWkU6sZtiuy21yGG 0ZgphDVp7tEuuxW9RiMz2+rmbIkn+NoxBmHkPwsV8xVRANxF1PywI4TWdfZhGrrm 4METGkJ5BtQ5blwqW1O5igILB9wT8qq0QdtDE7/8tAcUEVnPXmmB73wifDMVaEq8 4yZVNMpmP1d0Wu2oamrEEh99D8jHYqHB+WgRVoBD2eGPxiWqxED0s0SS3Klc2JQ/ LX6qctiHKUifk7S7g5qgC/QVlqUGDk8/Q3EGhUSuEMAmd6tMpxXNwfeg855pVsP+ Us+fJE4cC7argU0D5C7Yw9jK2lcgeXJMYbMyL4SFssAAMMHTYAs= =pPLP -----END PGP SIGNATURE----- Merge tag 'drm-fixes-2024-04-09' of https://gitlab.freedesktop.org/drm/kernel Pull drm nouveau fix from Dave Airlie: "A previous fix to nouveau devinit on the GSP paths fixed the Turing but broke Ampere, I did some more digging and found the proper fix. Sending it early as I want to make sure it makes the next 6.8 stable kernels to fix the regression. Regular fixes will be at end of week as usual. nouveau: - regression fix for GSP display enable" * tag 'drm-fixes-2024-04-09' of https://gitlab.freedesktop.org/drm/kernel: nouveau: fix devinit paths to only handle display on GSP.
This commit is contained in:
commit
2c71fdf02a
|
|
@ -25,6 +25,7 @@
|
|||
|
||||
#include <subdev/bios.h>
|
||||
#include <subdev/bios/init.h>
|
||||
#include <subdev/gsp.h>
|
||||
|
||||
void
|
||||
gm107_devinit_disable(struct nvkm_devinit *init)
|
||||
|
|
@ -33,10 +34,13 @@ gm107_devinit_disable(struct nvkm_devinit *init)
|
|||
u32 r021c00 = nvkm_rd32(device, 0x021c00);
|
||||
u32 r021c04 = nvkm_rd32(device, 0x021c04);
|
||||
|
||||
if (r021c00 & 0x00000001)
|
||||
nvkm_subdev_disable(device, NVKM_ENGINE_CE, 0);
|
||||
if (r021c00 & 0x00000004)
|
||||
nvkm_subdev_disable(device, NVKM_ENGINE_CE, 2);
|
||||
/* gsp only wants to enable/disable display */
|
||||
if (!nvkm_gsp_rm(device->gsp)) {
|
||||
if (r021c00 & 0x00000001)
|
||||
nvkm_subdev_disable(device, NVKM_ENGINE_CE, 0);
|
||||
if (r021c00 & 0x00000004)
|
||||
nvkm_subdev_disable(device, NVKM_ENGINE_CE, 2);
|
||||
}
|
||||
if (r021c04 & 0x00000001)
|
||||
nvkm_subdev_disable(device, NVKM_ENGINE_DISP, 0);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -41,6 +41,7 @@ r535_devinit_new(const struct nvkm_devinit_func *hw,
|
|||
|
||||
rm->dtor = r535_devinit_dtor;
|
||||
rm->post = hw->post;
|
||||
rm->disable = hw->disable;
|
||||
|
||||
ret = nv50_devinit_new_(rm, device, type, inst, pdevinit);
|
||||
if (ret)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user